logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://hacktivis.me/git/pleroma.git
commit: 3e7642b123929593a3f414f63d1708ead11f47b0
parent 6e7963cca1afbd0cc32dd9910f617b1b3b648a5b
Author: Mark Felder <feld@FreeBSD.org>
Date:   Wed, 18 Nov 2020 14:42:16 -0600

Update AdminFE build to pleroma/admin-fe@c18f167a124c31ab2e1dfbf432ac482b17c01cbd

Diffstat:

Apriv/static/adminfe/app.61bb0915.css2++
Dpriv/static/adminfe/app.6fb984d1.css2--
Apriv/static/adminfe/chunk-0171.82f5a48b.css2++
Dpriv/static/adminfe/chunk-03c5.f59788cf.css2--
Rpriv/static/adminfe/chunk-176e.a3c8376d.css -> priv/static/adminfe/chunk-176e.4d21033f.css0
Apriv/static/adminfe/chunk-2d97.7053ff89.css2++
Dpriv/static/adminfe/chunk-3365.201aa8e6.css2--
Dpriv/static/adminfe/chunk-342d.e342722b.css2--
Apriv/static/adminfe/chunk-40a4.2fe71f6c.css2++
Dpriv/static/adminfe/chunk-521f.b745ee5d.css2--
Dpriv/static/adminfe/chunk-546f.692d1ab2.css2--
Apriv/static/adminfe/chunk-565e.aed36fe0.css2++
Apriv/static/adminfe/chunk-60a9.a80ec218.css2++
Rpriv/static/adminfe/chunk-654d.94689c39.css -> priv/static/adminfe/chunk-654e.e105ec9c.css0
Rpriv/static/adminfe/chunk-68ea9.dac85813.css -> priv/static/adminfe/chunk-68ea.be16aa5f.css0
Rpriv/static/adminfe/chunk-6e81.1c0f2da2.css -> priv/static/adminfe/chunk-6e81.7f126ac7.css0
Apriv/static/adminfe/chunk-6e8c.5832dc0a.css2++
Apriv/static/adminfe/chunk-7503.37b33ad8.css2++
Rpriv/static/adminfe/chunk-7c6b.365cbeda.css -> priv/static/adminfe/chunk-7c6b.4c8fa90a.css0
Dpriv/static/adminfe/chunk-850d.cc4f0ac6.css2--
Apriv/static/adminfe/chunk-97e2.b21a8915.css2++
Rpriv/static/adminfe/chunk-d34d.b0dd6fb4.css -> priv/static/adminfe/chunk-9a72.3e577534.css0
Dpriv/static/adminfe/chunk-9d55.e2cb1409.css2--
Rpriv/static/adminfe/chunk-commons.c0eb3eb7.css -> priv/static/adminfe/chunk-commons.67f053f7.css0
Dpriv/static/adminfe/chunk-f625.25a6a4ae.css2--
Mpriv/static/adminfe/index.html4++--
Dpriv/static/adminfe/static/js/app.69891fda.js3---
Dpriv/static/adminfe/static/js/app.69891fda.js.map2--
Apriv/static/adminfe/static/js/app.ac1962ee.js3+++
Apriv/static/adminfe/static/js/app.ac1962ee.js.map2++
Apriv/static/adminfe/static/js/chunk-0171.2384d81d.js3+++
Apriv/static/adminfe/static/js/chunk-0171.2384d81d.js.map2++
Dpriv/static/adminfe/static/js/chunk-03c5.1c694c49.js3---
Dpriv/static/adminfe/static/js/chunk-03c5.1c694c49.js.map2--
Apriv/static/adminfe/static/js/chunk-176e.5334cbff.js3+++
Apriv/static/adminfe/static/js/chunk-176e.5334cbff.js.map2++
Dpriv/static/adminfe/static/js/chunk-176e.be050aba.js3---
Dpriv/static/adminfe/static/js/chunk-176e.be050aba.js.map2--
Apriv/static/adminfe/static/js/chunk-2d97.1979e1ba.js3+++
Apriv/static/adminfe/static/js/chunk-2d97.1979e1ba.js.map2++
Dpriv/static/adminfe/static/js/chunk-3365.b73c30a8.js3---
Dpriv/static/adminfe/static/js/chunk-3365.b73c30a8.js.map2--
Dpriv/static/adminfe/static/js/chunk-342d.479e01dd.js3---
Dpriv/static/adminfe/static/js/chunk-342d.479e01dd.js.map2--
Apriv/static/adminfe/static/js/chunk-40a4.762ab622.js3+++
Apriv/static/adminfe/static/js/chunk-40a4.762ab622.js.map2++
Apriv/static/adminfe/static/js/chunk-5118.db359fdf.js3+++
Apriv/static/adminfe/static/js/chunk-5118.db359fdf.js.map2++
Dpriv/static/adminfe/static/js/chunk-521f.748b331d.js3---
Dpriv/static/adminfe/static/js/chunk-521f.748b331d.js.map2--
Dpriv/static/adminfe/static/js/chunk-546f.81668ba7.js3---
Dpriv/static/adminfe/static/js/chunk-546f.81668ba7.js.map2--
Apriv/static/adminfe/static/js/chunk-565e.6b50e750.js3+++
Apriv/static/adminfe/static/js/chunk-565e.6b50e750.js.map2++
Apriv/static/adminfe/static/js/chunk-60a9.15f68a0f.js3+++
Apriv/static/adminfe/static/js/chunk-60a9.15f68a0f.js.map2++
Dpriv/static/adminfe/static/js/chunk-654d.653b067f.js3---
Dpriv/static/adminfe/static/js/chunk-654d.653b067f.js.map2--
Apriv/static/adminfe/static/js/chunk-654e.b5d6579d.js3+++
Apriv/static/adminfe/static/js/chunk-654e.b5d6579d.js.map2++
Dpriv/static/adminfe/static/js/chunk-68ea.6d56674a.js27---------------------------
Dpriv/static/adminfe/static/js/chunk-68ea.6d56674a.js.map2--
Apriv/static/adminfe/static/js/chunk-68ea.a283cad8.js3+++
Apriv/static/adminfe/static/js/chunk-68ea.a283cad8.js.map2++
Dpriv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js3---
Dpriv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js.map2--
Apriv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js3+++
Apriv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js.map2++
Dpriv/static/adminfe/static/js/chunk-6e81.ebe9039f.js3---
Dpriv/static/adminfe/static/js/chunk-6e81.ebe9039f.js.map2--
Apriv/static/adminfe/static/js/chunk-6e8c.bb92565e.js3+++
Apriv/static/adminfe/static/js/chunk-6e8c.bb92565e.js.map2++
Apriv/static/adminfe/static/js/chunk-7503.e78266ed.js3+++
Apriv/static/adminfe/static/js/chunk-7503.e78266ed.js.map2++
Apriv/static/adminfe/static/js/chunk-7c6b.48819f73.js3+++
Apriv/static/adminfe/static/js/chunk-7c6b.48819f73.js.map2++
Dpriv/static/adminfe/static/js/chunk-7c6b.56a14571.js3---
Dpriv/static/adminfe/static/js/chunk-7c6b.56a14571.js.map2--
Dpriv/static/adminfe/static/js/chunk-850d.3e6102c2.js3---
Dpriv/static/adminfe/static/js/chunk-850d.3e6102c2.js.map2--
Apriv/static/adminfe/static/js/chunk-97e2.8936d9a7.js3+++
Apriv/static/adminfe/static/js/chunk-97e2.8936d9a7.js.map2++
Apriv/static/adminfe/static/js/chunk-9a72.3826fd71.js3+++
Apriv/static/adminfe/static/js/chunk-9a72.3826fd71.js.map2++
Dpriv/static/adminfe/static/js/chunk-9d55.7af22f45.js3---
Dpriv/static/adminfe/static/js/chunk-9d55.7af22f45.js.map2--
Apriv/static/adminfe/static/js/chunk-commons.7a41457e.js3+++
Apriv/static/adminfe/static/js/chunk-commons.7a41457e.js.map2++
Dpriv/static/adminfe/static/js/chunk-commons.a6002038.js3---
Dpriv/static/adminfe/static/js/chunk-commons.a6002038.js.map2--
Dpriv/static/adminfe/static/js/chunk-d34d.0f06fe76.js3---
Dpriv/static/adminfe/static/js/chunk-d34d.0f06fe76.js.map2--
Dpriv/static/adminfe/static/js/chunk-f625.29237434.js3---
Dpriv/static/adminfe/static/js/chunk-f625.29237434.js.map2--
Dpriv/static/adminfe/static/js/runtime.8f631d12.js3---
Dpriv/static/adminfe/static/js/runtime.8f631d12.js.map2--
Apriv/static/adminfe/static/js/runtime.f7228ae8.js3+++
Apriv/static/adminfe/static/js/runtime.f7228ae8.js.map2++
98 files changed, 110 insertions(+), 134 deletions(-)

diff --git a/priv/static/adminfe/app.61bb0915.css b/priv/static/adminfe/app.61bb0915.css @@ -0,0 +1 @@ +.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-breadcrumb__inner,.el-breadcrumb__inner a{font-weight:400!important}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.cell .el-tag{margin-right:0}.small-padding .cell{padding-left:5px;padding-right:5px}.fixed-width .el-button--mini{padding:7px 10px;width:60px}.status-col .cell{padding:0 10px;text-align:center}.status-col .cell .el-tag{margin-right:0}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.article-textarea textarea{padding-right:40px;resize:none;border-radius:0;border:none;border-bottom:1px solid #bfcbd9}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-dropdown-menu a{display:block}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:5000;overflow:hidden}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:100%}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .el-submenu__title:hover,#app .sidebar-container .submenu-title-noDropdown:hover{background-color:#263445!important}#app .sidebar-container .is-active>.el-submenu__title{color:#f4f4f5!important}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#1f2d3d!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#001528!important}#app .hideSidebar .sidebar-container{width:36px!important}#app .hideSidebar .main-container{margin-left:36px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}.el-menu--vertical .el-menu-item:hover,.el-menu--vertical .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#263445!important}.blue-btn{background:#324157}.blue-btn:hover{color:#324157}.blue-btn:hover:after,.blue-btn:hover:before{background:#324157}.light-blue-btn{background:#3a71a8}.light-blue-btn:hover{color:#3a71a8}.light-blue-btn:hover:after,.light-blue-btn:hover:before{background:#3a71a8}.red-btn{background:#c03639}.red-btn:hover{color:#c03639}.red-btn:hover:after,.red-btn:hover:before{background:#c03639}.pink-btn{background:#e65d6e}.pink-btn:hover{color:#e65d6e}.pink-btn:hover:after,.pink-btn:hover:before{background:#e65d6e}.green-btn{background:#30b08f}.green-btn:hover{color:#30b08f}.green-btn:hover:after,.green-btn:hover:before{background:#30b08f}.tiffany-btn{background:#4ab7bd}.tiffany-btn:hover{color:#4ab7bd}.tiffany-btn:hover:after,.tiffany-btn:hover:before{background:#4ab7bd}.yellow-btn{background:#fec171}.yellow-btn:hover{color:#fec171}.yellow-btn:hover:after,.yellow-btn:hover:before{background:#fec171}.pan-btn{font-size:14px;color:#fff;padding:14px 36px;border-radius:8px;border:none;outline:none;-webkit-transition:all .6s ease;transition:all .6s ease;position:relative;display:inline-block}.pan-btn:hover{background:#fff}.pan-btn:hover:after,.pan-btn:hover:before{width:100%;-webkit-transition:all .6s ease;transition:all .6s ease}.pan-btn:after,.pan-btn:before{content:"";position:absolute;top:0;right:0;height:2px;width:0;-webkit-transition:all .4s ease;transition:all .4s ease}.pan-btn:after{right:inherit;top:inherit;left:0;bottom:0}.custom-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;color:#fff;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;padding:10px 15px;font-size:14px;border-radius:4px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;background:#fff;color:#000}label{font-weight:700}html{-webkit-box-sizing:border-box;box-sizing:border-box}#app,html{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}.no-padding{padding:0!important}.padding-content{padding:4px 0}a:active,a:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}div:focus{outline:none}.fr{float:right}.fl{float:left}.pr-5{padding-right:5px}.pl-5{padding-left:5px}.block{display:block}.pointer{cursor:pointer}.inlineBlock{display:block}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}code{background:#eef1f6;padding:15px 16px;margin-bottom:20px;display:block;line-height:36px;font-size:15px;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif}code a{color:#337ab7;cursor:pointer}code a:hover{color:#20a0ff}.warn-content{background:rgba(66,185,131,.1);border-radius:2px;padding:1rem;line-height:1.6rem;word-spacing:.05rem}.warn-content a{color:#42b983;font-weight:600}.app-container{padding:20px}.components-container{margin:30px 50px;position:relative}.pagination-container{margin-top:30px}.text-center{text-align:center}.sub-navbar{height:50px;line-height:50px;position:relative;width:100%;text-align:right;padding-right:20px;-webkit-transition:position .6s ease;transition:position .6s ease;background:-webkit-gradient(linear,left top,right top,from(#20b6f9),color-stop(0,#20b6f9),color-stop(100%,#2178f1),to(#2178f1));background:linear-gradient(90deg,#20b6f9,#20b6f9 0,#2178f1 100%,#2178f1 0)}.sub-navbar .subtitle{font-size:20px;color:#fff}.sub-navbar.deleted,.sub-navbar.draft{background:#d0d0d0}.link-type,.link-type:focus{color:#337ab7;cursor:pointer}.link-type:focus:hover,.link-type:hover{color:#20a0ff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.multiselect{line-height:16px}.multiselect--active{z-index:1000!important}.hamburger[data-v-69c6c5c4]{display:inline-block;vertical-align:middle;width:20px;height:20px}.hamburger.is-active[data-v-69c6c5c4]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.navbar[data-v-28de7ff2]{height:50px;overflow:hidden}.navbar .hamburger-container[data-v-28de7ff2]{line-height:46px;height:100%;float:left;cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .hamburger-container[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .breadcrumb-container[data-v-28de7ff2]{float:left}.navbar .errLog-container[data-v-28de7ff2]{display:inline-block;vertical-align:top}.navbar .right-menu[data-v-28de7ff2]{float:right;height:100%;line-height:50px}.navbar .right-menu[data-v-28de7ff2]:focus{outline:none}.navbar .right-menu .right-menu-item[data-v-28de7ff2]{display:inline-block;padding:0 15px;height:100%;font-size:18px;color:#5a5e66;vertical-align:text-bottom}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]{cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .right-menu .avatar-container .avatar-wrapper[data-v-28de7ff2]{margin-top:5px;position:relative}.navbar .right-menu .avatar-container .avatar-wrapper .user-avatar[data-v-28de7ff2]{cursor:pointer;width:40px;height:40px;border-radius:10px}.navbar .right-menu .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-28de7ff2]{cursor:pointer;position:absolute;right:-20px;top:25px;font-size:12px}.count-badge[data-v-52140d98]{margin-left:5px;height:48px}.scroll-container[data-v-591d6778]{white-space:nowrap;position:relative;overflow:hidden;width:100%}.scroll-container[data-v-591d6778] .el-scrollbar__bar{bottom:0}.scroll-container[data-v-591d6778] .el-scrollbar__wrap{height:49px}.tags-view-container[data-v-e1cdb714]{height:34px;width:100%;background:#fff;border-bottom:1px solid #d8dce5;-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04);box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04)}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]{display:inline-block;position:relative;cursor:pointer;height:26px;line-height:26px;border:1px solid #d8dce5;color:#495060;background:#fff;padding:0 8px;font-size:12px;margin-left:5px;margin-top:4px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:first-of-type{margin-left:15px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:last-of-type{margin-right:15px}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]{background-color:#42b983;color:#fff;border-color:#42b983}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]:before{content:"";background:#fff;display:inline-block;width:8px;height:8px;border-radius:50%;position:relative;margin-right:2px}.tags-view-container .contextmenu[data-v-e1cdb714]{margin:0;background:#fff;z-index:100;position:absolute;list-style-type:none;padding:5px 0;border-radius:4px;font-size:12px;font-weight:400;color:#333;-webkit-box-shadow:2px 2px 3px 0 rgba(0,0,0,.3);box-shadow:2px 2px 3px 0 rgba(0,0,0,.3)}.tags-view-container .contextmenu li[data-v-e1cdb714]{margin:0;padding:7px 16px;cursor:pointer}.tags-view-container .contextmenu li[data-v-e1cdb714]:hover{background:#eee}.tags-view-wrapper .tags-view-item .el-icon-close{width:16px;height:16px;vertical-align:2px;border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.tags-view-wrapper .tags-view-item .el-icon-close:before{-webkit-transform:scale(.6);transform:scale(.6);display:inline-block;vertical-align:-3px}.tags-view-wrapper .tags-view-item .el-icon-close:hover{background-color:#b4bccc;color:#fff}.app-main[data-v-f852c4f2]{min-height:calc(100vh - 84px);width:100%;position:relative;overflow:hidden}.app-wrapper[data-v-767d264f]{position:relative;height:100%;width:100%}.app-wrapper[data-v-767d264f]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-767d264f]{position:fixed;top:0}.drawer-bg[data-v-767d264f]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.svg-icon[data-v-17178ffc]{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden} +\ No newline at end of file diff --git a/priv/static/adminfe/app.6fb984d1.css b/priv/static/adminfe/app.6fb984d1.css @@ -1 +0,0 @@ -.fade-enter-active,.fade-leave-active{-webkit-transition:opacity .28s;transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-enter-active,.fade-transform-leave-active{-webkit-transition:all .5s;transition:all .5s}.fade-transform-enter{opacity:0;-webkit-transform:translateX(-30px);transform:translateX(-30px)}.fade-transform-leave-to{opacity:0;-webkit-transform:translateX(30px);transform:translateX(30px)}.breadcrumb-enter-active,.breadcrumb-leave-active{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-enter,.breadcrumb-leave-active{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}.breadcrumb-move{-webkit-transition:all .5s;transition:all .5s}.breadcrumb-leave-active{position:absolute}.el-breadcrumb__inner,.el-breadcrumb__inner a{font-weight:400!important}.el-upload input[type=file]{display:none!important}.el-upload__input{display:none}.cell .el-tag{margin-right:0}.small-padding .cell{padding-left:5px;padding-right:5px}.fixed-width .el-button--mini{padding:7px 10px;width:60px}.status-col .cell{padding:0 10px;text-align:center}.status-col .cell .el-tag{margin-right:0}.el-dialog{-webkit-transform:none;transform:none;left:0;position:relative;margin:0 auto}.article-textarea textarea{padding-right:40px;resize:none;border-radius:0;border:none;border-bottom:1px solid #bfcbd9}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.el-dropdown-menu a{display:block}#app .main-container{min-height:100%;-webkit-transition:margin-left .28s;transition:margin-left .28s;margin-left:180px;position:relative}#app .sidebar-container{-webkit-transition:width .28s;transition:width .28s;width:180px!important;height:100%;position:fixed;font-size:0;top:0;bottom:0;left:0;z-index:5000;overflow:hidden}#app .sidebar-container .horizontal-collapse-transition{-webkit-transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out;transition:width 0s ease-in-out,padding-left 0s ease-in-out,padding-right 0s ease-in-out}#app .sidebar-container .scrollbar-wrapper{overflow-x:hidden!important}#app .sidebar-container .scrollbar-wrapper .el-scrollbar__view{height:100%}#app .sidebar-container .el-scrollbar__bar.is-vertical{right:0}#app .sidebar-container .is-horizontal{display:none}#app .sidebar-container a{display:inline-block;width:100%;overflow:hidden}#app .sidebar-container .svg-icon{margin-right:16px}#app .sidebar-container .el-menu{border:none;height:100%;width:100%!important}#app .sidebar-container .el-submenu__title:hover,#app .sidebar-container .submenu-title-noDropdown:hover{background-color:#263445!important}#app .sidebar-container .is-active>.el-submenu__title{color:#f4f4f5!important}#app .sidebar-container .el-submenu .el-menu-item,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title{min-width:180px!important;background-color:#1f2d3d!important}#app .sidebar-container .el-submenu .el-menu-item:hover,#app .sidebar-container .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#001528!important}#app .hideSidebar .sidebar-container{width:36px!important}#app .hideSidebar .main-container{margin-left:36px}#app .hideSidebar .submenu-title-noDropdown{padding-left:10px!important;position:relative}#app .hideSidebar .submenu-title-noDropdown .el-tooltip{padding:0 10px!important}#app .hideSidebar .el-submenu{overflow:hidden}#app .hideSidebar .el-submenu>.el-submenu__title{padding-left:10px!important}#app .hideSidebar .el-submenu>.el-submenu__title .el-submenu__icon-arrow{display:none}#app .hideSidebar .el-menu--collapse .el-submenu>.el-submenu__title>span{height:0;width:0;overflow:hidden;visibility:hidden;display:inline-block}#app .el-menu--collapse .el-menu .el-submenu{min-width:180px!important}#app .mobile .main-container{margin-left:0}#app .mobile .sidebar-container{-webkit-transition:-webkit-transform .28s;transition:-webkit-transform .28s;transition:transform .28s;transition:transform .28s,-webkit-transform .28s;width:180px!important}#app .mobile.hideSidebar .sidebar-container{pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transform:translate3d(-180px,0,0);transform:translate3d(-180px,0,0)}#app .withoutAnimation .main-container,#app .withoutAnimation .sidebar-container{-webkit-transition:none;transition:none}.el-menu--vertical>.el-menu .svg-icon{margin-right:16px}.el-menu--vertical .el-menu-item:hover,.el-menu--vertical .nest-menu .el-submenu>.el-submenu__title:hover{background-color:#263445!important}.blue-btn{background:#324157}.blue-btn:hover{color:#324157}.blue-btn:hover:after,.blue-btn:hover:before{background:#324157}.light-blue-btn{background:#3a71a8}.light-blue-btn:hover{color:#3a71a8}.light-blue-btn:hover:after,.light-blue-btn:hover:before{background:#3a71a8}.red-btn{background:#c03639}.red-btn:hover{color:#c03639}.red-btn:hover:after,.red-btn:hover:before{background:#c03639}.pink-btn{background:#e65d6e}.pink-btn:hover{color:#e65d6e}.pink-btn:hover:after,.pink-btn:hover:before{background:#e65d6e}.green-btn{background:#30b08f}.green-btn:hover{color:#30b08f}.green-btn:hover:after,.green-btn:hover:before{background:#30b08f}.tiffany-btn{background:#4ab7bd}.tiffany-btn:hover{color:#4ab7bd}.tiffany-btn:hover:after,.tiffany-btn:hover:before{background:#4ab7bd}.yellow-btn{background:#fec171}.yellow-btn:hover{color:#fec171}.yellow-btn:hover:after,.yellow-btn:hover:before{background:#fec171}.pan-btn{font-size:14px;color:#fff;padding:14px 36px;border-radius:8px;border:none;outline:none;-webkit-transition:all .6s ease;transition:all .6s ease;position:relative;display:inline-block}.pan-btn:hover{background:#fff}.pan-btn:hover:after,.pan-btn:hover:before{width:100%;-webkit-transition:all .6s ease;transition:all .6s ease}.pan-btn:after,.pan-btn:before{content:"";position:absolute;top:0;right:0;height:2px;width:0;-webkit-transition:all .4s ease;transition:all .4s ease}.pan-btn:after{right:inherit;top:inherit;left:0;bottom:0}.custom-button{display:inline-block;line-height:1;white-space:nowrap;cursor:pointer;background:#fff;color:#fff;-webkit-appearance:none;text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;margin:0;padding:10px 15px;font-size:14px;border-radius:4px}body{height:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;background:#fff;color:#000}label{font-weight:700}html{-webkit-box-sizing:border-box;box-sizing:border-box}#app,html{height:100%}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}.no-padding{padding:0!important}.padding-content{padding:4px 0}a:active,a:focus{outline:none}a,a:focus,a:hover{cursor:pointer;color:inherit;text-decoration:none}div:focus{outline:none}.fr{float:right}.fl{float:left}.pr-5{padding-right:5px}.pl-5{padding-left:5px}.block{display:block}.pointer{cursor:pointer}.inlineBlock{display:block}.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}code{background:#eef1f6;padding:15px 16px;display:block;line-height:36px;font-size:15px;font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif}code a{color:#337ab7;cursor:pointer}code a:hover{color:#20a0ff}.warn-content{background:rgba(66,185,131,.1);border-radius:2px;padding:1rem;line-height:1.6rem;word-spacing:.05rem}.warn-content a{color:#42b983;font-weight:600}.app-container{padding:20px}.components-container{margin:30px 50px;position:relative}.pagination-container{margin-top:30px}.text-center{text-align:center}.sub-navbar{height:50px;line-height:50px;position:relative;width:100%;text-align:right;padding-right:20px;-webkit-transition:position .6s ease;transition:position .6s ease;background:-webkit-gradient(linear,left top,right top,from(#20b6f9),color-stop(0,#20b6f9),color-stop(100%,#2178f1),to(#2178f1));background:linear-gradient(90deg,#20b6f9,#20b6f9 0,#2178f1 100%,#2178f1 0)}.sub-navbar .subtitle{font-size:20px;color:#fff}.sub-navbar.deleted,.sub-navbar.draft{background:#d0d0d0}.link-type,.link-type:focus{color:#337ab7;cursor:pointer}.link-type:focus:hover,.link-type:hover{color:#20a0ff}.filter-container{padding-bottom:10px}.filter-container .filter-item{display:inline-block;vertical-align:middle;margin-bottom:10px}.multiselect{line-height:16px}.multiselect--active{z-index:1000!important}.hamburger[data-v-69c6c5c4]{display:inline-block;vertical-align:middle;width:20px;height:20px}.hamburger.is-active[data-v-69c6c5c4]{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.navbar[data-v-28de7ff2]{height:50px;overflow:hidden}.navbar .hamburger-container[data-v-28de7ff2]{line-height:46px;height:100%;float:left;cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .hamburger-container[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .breadcrumb-container[data-v-28de7ff2]{float:left}.navbar .errLog-container[data-v-28de7ff2]{display:inline-block;vertical-align:top}.navbar .right-menu[data-v-28de7ff2]{float:right;height:100%;line-height:50px}.navbar .right-menu[data-v-28de7ff2]:focus{outline:none}.navbar .right-menu .right-menu-item[data-v-28de7ff2]{display:inline-block;padding:0 15px;height:100%;font-size:18px;color:#5a5e66;vertical-align:text-bottom}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]{cursor:pointer;-webkit-transition:background .3s;transition:background .3s}.navbar .right-menu .right-menu-item.hover-effect[data-v-28de7ff2]:hover{background:rgba(0,0,0,.025)}.navbar .right-menu .avatar-container .avatar-wrapper[data-v-28de7ff2]{margin-top:5px;position:relative}.navbar .right-menu .avatar-container .avatar-wrapper .user-avatar[data-v-28de7ff2]{cursor:pointer;width:40px;height:40px;border-radius:10px}.navbar .right-menu .avatar-container .avatar-wrapper .el-icon-caret-bottom[data-v-28de7ff2]{cursor:pointer;position:absolute;right:-20px;top:25px;font-size:12px}.count-badge[data-v-52140d98]{margin-left:5px;height:48px}.scroll-container[data-v-591d6778]{white-space:nowrap;position:relative;overflow:hidden;width:100%}.scroll-container[data-v-591d6778] .el-scrollbar__bar{bottom:0}.scroll-container[data-v-591d6778] .el-scrollbar__wrap{height:49px}.tags-view-container[data-v-e1cdb714]{height:34px;width:100%;background:#fff;border-bottom:1px solid #d8dce5;-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04);box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04)}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]{display:inline-block;position:relative;cursor:pointer;height:26px;line-height:26px;border:1px solid #d8dce5;color:#495060;background:#fff;padding:0 8px;font-size:12px;margin-left:5px;margin-top:4px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:first-of-type{margin-left:15px}.tags-view-container .tags-view-wrapper .tags-view-item[data-v-e1cdb714]:last-of-type{margin-right:15px}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]{background-color:#42b983;color:#fff;border-color:#42b983}.tags-view-container .tags-view-wrapper .tags-view-item.active[data-v-e1cdb714]:before{content:"";background:#fff;display:inline-block;width:8px;height:8px;border-radius:50%;position:relative;margin-right:2px}.tags-view-container .contextmenu[data-v-e1cdb714]{margin:0;background:#fff;z-index:100;position:absolute;list-style-type:none;padding:5px 0;border-radius:4px;font-size:12px;font-weight:400;color:#333;-webkit-box-shadow:2px 2px 3px 0 rgba(0,0,0,.3);box-shadow:2px 2px 3px 0 rgba(0,0,0,.3)}.tags-view-container .contextmenu li[data-v-e1cdb714]{margin:0;padding:7px 16px;cursor:pointer}.tags-view-container .contextmenu li[data-v-e1cdb714]:hover{background:#eee}.tags-view-wrapper .tags-view-item .el-icon-close{width:16px;height:16px;vertical-align:2px;border-radius:50%;text-align:center;-webkit-transition:all .3s cubic-bezier(.645,.045,.355,1);transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.tags-view-wrapper .tags-view-item .el-icon-close:before{-webkit-transform:scale(.6);transform:scale(.6);display:inline-block;vertical-align:-3px}.tags-view-wrapper .tags-view-item .el-icon-close:hover{background-color:#b4bccc;color:#fff}.app-main[data-v-f852c4f2]{min-height:calc(100vh - 84px);width:100%;position:relative;overflow:hidden}.app-wrapper[data-v-767d264f]{position:relative;height:100%;width:100%}.app-wrapper[data-v-767d264f]:after{content:"";display:table;clear:both}.app-wrapper.mobile.openSidebar[data-v-767d264f]{position:fixed;top:0}.drawer-bg[data-v-767d264f]{background:#000;opacity:.3;width:100%;top:0;height:100%;position:absolute;z-index:999}.svg-icon[data-v-17178ffc]{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-0171.82f5a48b.css b/priv/static/adminfe/chunk-0171.82f5a48b.css @@ -0,0 +1 @@ +.select-field[data-v-377d5068]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-377d5068]{width:100%;margin-bottom:5px}}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.moderate-user-button{width:100%}}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.actions-container .el-dropdown{margin-left:10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reason-tooltip{max-width:450px}.reset-password-link{text-decoration:underline}.users-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.users-container h1{margin:10px 0 0 15px;height:40px}.users-container .cell{word-break:break-word}.users-container .el-table__row:hover{cursor:pointer}.users-container .pagination{margin:25px 0;text-align:center}.users-container .reboot-button{margin:0 15px 0 0;padding:10px;width:145px}.users-container .search{width:350px;float:right;margin-left:10px}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:0}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%;margin-left:0}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-table__row .el-tag{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:30px;margin-bottom:4px;font-weight:700}.users-container .reboot-button{margin:0}.users-container .users-header-container{margin:7px 10px 12px}.users-container .user-count{color:grey;font-size:22px}}@media only screen and (max-width:801px) and (min-width:481px){.actions-button,.search{width:49%}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-03c5.f59788cf.css b/priv/static/adminfe/chunk-03c5.f59788cf.css @@ -1 +0,0 @@ -h1[data-v-4ee576de]{margin:0}.enable-mediaproxy-container[data-v-4ee576de]{margin:10px 15px}.enable-mediaproxy-container button[data-v-4ee576de]{font-size:16px}.expl[data-v-4ee576de]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.banned-urls-table[data-v-4ee576de]{margin-top:15px;margin-bottom:15px}.evict-button[data-v-4ee576de]{margin-left:15px}.media-proxy-cache-header[data-v-4ee576de]{margin-left:15px;margin-top:22px;font-weight:500}.media-proxy-cache-header-container[data-v-4ee576de]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px}.pagination[data-v-4ee576de]{margin:25px 0;text-align:center}.remove-url-button[data-v-4ee576de]{width:150px}.url-input[data-v-4ee576de]{margin-right:15px}.url-input-container[data-v-4ee576de]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin:15px 15px 5px}.url-input-expl[data-v-4ee576de]{margin-left:15px}@media only screen and (max-width:480px){.url-input[data-v-4ee576de]{width:100%;margin-bottom:5px}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-176e.a3c8376d.css b/priv/static/adminfe/chunk-176e.4d21033f.css diff --git a/priv/static/adminfe/chunk-2d97.7053ff89.css b/priv/static/adminfe/chunk-2d97.7053ff89.css @@ -0,0 +1 @@ +.actions-button[data-v-9bd813c8]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-9bd813c8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-9bd813c8]{float:right}.el-icon-edit[data-v-9bd813c8]{margin-right:5px}.tag-container[data-v-9bd813c8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-9bd813c8]{padding-right:20px}.no-hover[data-v-9bd813c8]:hover{color:#606266;background-color:#fff;cursor:auto} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-3365.201aa8e6.css b/priv/static/adminfe/chunk-3365.201aa8e6.css @@ -1 +0,0 @@ -.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-dropdown-menu{width:350px}@media only screen and (max-width:480px){.moderate-user-button{width:100%}.moderation-dropdown-menu{width:auto}}.avatar-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avatar-name-container .el-icon-top-right{font-size:2em;line-height:36px;color:#606266}.avatar-name-header{display:-webkit-box;display:-ms-flexbox;display:flex;height:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.invalid{color:grey}.no-statuses{margin-left:28px;color:#606266}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reboot-button{padding:10px;margin-left:6px}.recent-statuses-container-show{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.recent-statuses-container-show .el-timeline-item,.recent-statuses-container-show .recent-statuses{margin-left:20px}.recent-statuses-container-show .show-private-statuses{margin-left:20px;margin-bottom:20px}.reset-password-link{text-decoration:underline}.router-link{text-decoration:none}.status-container{margin:0 15px 0 20px}.statuses{padding:0 20px 0 0}.user-page-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:22px 15px 22px 20px;padding:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-page-header h1{display:inline;margin:0 0 0 10px}@media only screen and (min-width:1824px){.status-show-container{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.avatar-name-container{margin-bottom:10px}.el-timeline-item__wrapper{padding-left:18px}.left-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.password-reset-token-dialog{width:85%}.recent-statuses{margin:20px 10px 15px}.recent-statuses-container-show{width:100%;margin:0 0 0 10px}.recent-statuses-container-show .el-timeline-item,.recent-statuses-container-show .recent-statuses{margin-left:0}.recent-statuses-container-show .show-private-statuses{margin:0 10px 20px 0}.status-card .el-card__body{padding:15px}.status-container{margin:0 10px}.statuses{padding-right:10px;margin-left:0}.statuses .el-timeline-item__wrapper{margin-right:10px}.user-page-header{padding:0;margin:7px 15px 5px 10px}.status-page-header-container{width:100%}.status-page-header-container .el-dropdown{width:-webkit-fill-available;width:-moz-available;width:stretch;margin:0 10px 15px}}@media only screen and (max-width:801px) and (min-width:481px){.recent-statuses-container-show{width:97%;margin:0 20px}.recent-statuses-container-show .el-timeline-item{margin-left:2px}.recent-statuses-container-show .recent-statuses{margin:20px 10px 15px 0}.recent-statuses-container-show .show-private-statuses,.show-private-statuses{margin:0 10px 20px 0}.user-page-header{padding:0;margin:7px 15px 20px 20px}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-342d.e342722b.css b/priv/static/adminfe/chunk-342d.e342722b.css @@ -1 +0,0 @@ -.select-field[data-v-377d5068]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-377d5068]{width:100%;margin-bottom:5px}}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-dropdown-menu{width:350px}@media only screen and (max-width:480px){.moderate-user-button{width:100%}.moderation-dropdown-menu{width:auto}}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.actions-container .el-dropdown{margin-left:10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.active-tag.is-disabled .el-icon-check{color:#bbb}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reason-tooltip{max-width:450px}.reset-password-link{text-decoration:underline}.users-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.users-container h1{margin:10px 0 0 15px;height:40px}.users-container .cell{word-break:break-word}.users-container .el-table__row:hover{cursor:pointer}.users-container .pagination{margin:25px 0;text-align:center}.users-container .reboot-button{margin:0 15px 0 0;padding:10px;width:145px}.users-container .search{width:350px;float:right;margin-left:10px}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:0}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%;margin-left:0}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-table__row .el-tag{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:30px;margin-bottom:4px;font-weight:700}.users-container .reboot-button{margin:0}.users-container .users-header-container{margin:7px 10px 12px}.users-container .user-count{color:grey;font-size:22px}}@media only screen and (max-width:801px) and (min-width:481px){.actions-button,.search{width:49%}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-40a4.2fe71f6c.css b/priv/static/adminfe/chunk-40a4.2fe71f6c.css @@ -0,0 +1 @@ +a{text-decoration:underline}.note-header{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.note-actor{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.note-actor-name{margin:0;height:28px}.note-avatar-img{width:15px;height:15px;margin-right:5px}.note-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-card{margin-bottom:15px}.note-content,.note-header{font-size:15px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:28px;font-weight:500}@media only screen and (max-width:480px){.el-card__header{padding:10px 17px}.note-header{height:65px}.note-actor{margin-bottom:5px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}}h4{margin:0;height:17px}.account{line-height:26px;font-size:13px;color:#606266}.account:hover{text-decoration:underline}.avatar-img{vertical-align:bottom;width:15px;height:15px}.divider{margin:15px 0}.deactivated{color:grey}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report .report-header-container{height:40px}.report-account,.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.report-account{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2}.report-account-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.report-account-name{font-size:15px;font-weight:500}.report-row-key{font-size:14px;font-weight:500;padding-right:5px}.report-title{margin:0}.report-note-form{margin:15px 0 0}.report-post-note{margin:5px 0 0;text-align:right}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.router-link{text-decoration:none}.reported-statuses{margin-top:15px}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-5ab7c15a]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-5ab7c15a]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-5ab7c15a]{width:50%}}.reports-container .reboot-button[data-v-fa601560]{padding:10px;margin:0;width:145px}.reports-container .reports-filter-container[data-v-fa601560]{margin:15px 45px 22px 15px;padding-bottom:0}.reports-container .reports-filter-container[data-v-fa601560],.reports-container .reports-header-container[data-v-fa601560]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.reports-container .reports-header-container[data-v-fa601560]{margin:10px 15px}.reports-container h1[data-v-fa601560]{margin:0}.reports-container .no-reports-message[data-v-fa601560]{color:grey;margin-left:19px}.reports-container .report-count[data-v-fa601560]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-fa601560]{margin:7px 10px 15px}.reports-container .reboot-button[data-v-fa601560]{margin:0 0 5px 10px;width:145px}.reports-container .report-count[data-v-fa601560]{font-size:22px}.reports-container .reports-filter-container[data-v-fa601560]{margin:0 10px}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-521f.b745ee5d.css b/priv/static/adminfe/chunk-521f.b745ee5d.css @@ -1 +0,0 @@ -.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-dropdown-menu{width:350px}@media only screen and (max-width:480px){.moderate-user-button{width:100%}.moderation-dropdown-menu{width:auto}}.security-settings-container{display:-webkit-box;display:-ms-flexbox;display:flex}.security-settings-container label{width:15%;height:36px}.security-settings-modal .el-dialog__body{padding-top:10px}.security-settings-modal .el-form-item,.security-settings-modal .password-alert{margin-bottom:15px}.security-settings-modal .password-input{margin-bottom:0}.security-settings-submit-button{float:right}@media (max-width:800px){.security-settings-modal .el-dialog{width:90%}}.security-settings-modal .el-alert .el-alert__description{word-break:break-word;font-size:1em}.security-settings-modal .form-text{display:block;margin-top:.25rem;color:#909399}header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;margin:22px 0;padding-left:15px}header h1{margin:0 0 0 10px}table{margin:10px 0 0 15px}table .name-col{width:150px}.avatar-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avatar-name-container .el-icon-top-right{font-size:2em;line-height:36px;color:#606266}.invalid{color:grey}.el-table--border:after,.el-table--group:after,.el-table:before{background-color:transparent}.image{width:20%}.image img{width:100%}.invalid-user-tag{font-size:14px;width:inherit;height:auto;text-align:center;word-wrap:break-word;white-space:normal}.left-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.no-statuses{margin-left:28px;color:#606266}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.poll ul{list-style-type:none;padding:0;width:30%}.reboot-button{padding:10px;margin-left:10px}.recent-statuses-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:67%}.recent-statuses-header{margin-top:10px}.reset-password-link{text-decoration:underline}.security-setting-button{margin-top:20px;width:100%}.statuses{padding:0 20px 0 0}.show-private{width:200px;text-align:left;line-height:67px;margin-right:20px}.show-private-statuses{margin-left:28px;margin-bottom:20px}.recent-statuses{margin-left:28px}.user-page-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:22px 15px 22px 20px;padding:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-page-header h1{display:inline}.user-profile-card{margin:0 20px;width:30%;min-width:300px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.user-profile-container{display:-webkit-box;display:-ms-flexbox;display:flex}.user-profile-table{margin:0;width:inherit}.user-profile-tag{margin:0 4px 4px 0}.reason-label{color:#878d99;font-weight:700;margin:5px 0}@media only screen and (max-width:480px){.avatar-name-container{margin-bottom:10px}.el-timeline-item__wrapper{padding-left:18px}.password-reset-token-dialog{width:85%}.recent-statuses{margin:20px 10px 15px}.recent-statuses-container{width:100%;margin:0}.show-private-statuses{margin:0 10px 20px}.status-container{margin:0 10px}.statuses{padding-right:10px;margin-left:8px}.user-page-header{padding:0;margin:7px 15px 15px 10px}.user-page-header-container .el-dropdown{width:95%;margin:0 15px 15px 10px}.user-profile-card{margin:0 10px;width:95%}.user-profile-card td{width:80px}.user-profile-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media only screen and (max-width:801px) and (min-width:481px){.recent-statuses{margin:20px 10px 15px 0}.recent-statuses-container{width:97%;margin:0 20px}.show-private-statuses{margin:0 10px 20px 0}.user-page-header{padding:0;margin:7px 15px 20px 20px}.user-profile-card{margin:0 20px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.user-profile-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-546f.692d1ab2.css b/priv/static/adminfe/chunk-546f.692d1ab2.css @@ -1 +0,0 @@ -.copy-popover{width:330px}.copy-to-local-pack-button{margin-top:15px;float:right}.emoji-buttons{place-self:center;min-width:200px}.emoji-container-grid{display:grid;grid-template-columns:75px 1fr 1fr 200px;grid-column-gap:15px;margin-bottom:10px}.emoji-preview-img{max-width:100%;place-self:center}.emoji-info{place-self:center}.copy-pack-container{place-self:center stretch}.copy-pack-select{width:100%}.remote-emoji-container-grid{display:grid;grid-template-columns:75px 1fr 1fr 160px;grid-column-gap:15px;margin-bottom:10px}@media only screen and (max-width:480px){.emoji-container-flex{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;padding:15px;margin:0 15px 15px 0}.emoji-info,.emoji-preview-img{margin-bottom:10px}.emoji-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%}.emoji-buttons button{padding:10px 5px;width:47%}}@media only screen and (max-width:801px) and (min-width:481px){.emoji-container-grid{grid-column-gap:10px}.emoji-buttons .el-button+.el-button{margin-left:5px}.remote-emoji-container-grid{grid-column-gap:10px}}.add-new-emoji{height:36px;font-size:14px;font-weight:700;color:#606266}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.upload-button{margin-left:10px}.upload-file-url{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.new-emoji-uploader-form label.el-form-item__label{padding:0}}.emoji-table-head{color:#909399;font-size:14px;font-weight:700}.download-archive{width:250px}.download-pack-button-container{width:265px}.download-pack-button-container .el-link,.download-pack-button-container .el-link span,.download-pack-button-container .el-link span .download-archive{width:inherit}.download-shared-pack{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.download-shared-pack-button{margin-left:10px}.el-collapse-item__content{padding-bottom:0}.el-collapse-item__header{height:36px;font-size:14px;font-weight:700;color:#606266}.emoji-pack-card{margin-top:5px}.emoji-pack-metadata .el-form-item{margin-bottom:10px}.files-pagination{margin:25px 0;text-align:center}.has-background .el-collapse-item__header{background:#f6f6f6}.no-background .el-collapse-item__header{background:#fff}.pack-button-container{margin:0 0 18px 120px}.save-pack-button-container{margin-bottom:8px;width:265px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.delete-pack-button{width:45%}.download-pack-button-container{width:100%}.download-shared-pack{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.download-shared-pack-button{margin-left:0;margin-top:10px;padding:10px}.pack-button-container{width:100%;margin:0 0 22px}.remote-pack-metadata .el-form-item__content{line-height:24px;margin-top:4px}.save-pack-button{width:54%}.save-pack-button-container{margin-bottom:8px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.save-pack-button-container button{padding:10px 5px}.save-pack-button-container .el-button+.el-button{margin-left:3px}}.create-pack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.create-pack-button{margin-left:10px}.emoji-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 15px 22px}.emoji-name-warning{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.emoji-packs-header-button-container{display:-webkit-box;display:-ms-flexbox;display:flex}.emoji-packs-form{margin-top:15px}.emoji-packs-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px 15px}.emoji-packs-tabs{margin:0 15px 15px}.import-pack-button{margin-left:10px;width:30%;max-width:700px}h1{margin:0}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:22px}.pagination{margin:25px 0;text-align:center}.reboot-button{padding:10px;margin:0;width:145px}@media only screen and (min-width:1824px){.emoji-packs{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.create-pack{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.create-pack-button{margin-left:0}.divider{margin:15px 0}.el-message{min-width:80%}.el-message-box{width:80%}.emoji-header-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.emoji-packs-form{margin:0 7px}.emoji-packs-form label{padding-right:8px}.emoji-packs-form .el-form-item{margin-bottom:15px}.emoji-packs-header{margin:15px}.emoji-packs-header-button-container{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.emoji-packs-header-button-container .el-button+.el-button{margin:7px 0 0;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.import-pack-button{width:90%}.reload-emoji-button{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-565e.aed36fe0.css b/priv/static/adminfe/chunk-565e.aed36fe0.css @@ -0,0 +1 @@ +.image-upload-area .input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.image-upload-area .input-file{z-index:100;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.image-upload-area .image-button-group{margin-top:20px}.image-upload-area .image-button-group .upload-button,.image-upload-area .image-upload-wrapper{position:relative}.image-upload-area .image-upload-wrapper .image-upload-overlay{border-radius:5px}.image-upload-area .image-upload-wrapper .image-upload-overlay,.image-upload-area .image-upload-wrapper .image-upload-overlay .caption{-webkit-transition:-webkit-box-shadow .1s;transition:-webkit-box-shadow .1s;transition:box-shadow .1s;transition:box-shadow .1s,-webkit-box-shadow .1s}.image-upload-area .image-upload-wrapper .image-upload-overlay .caption{visibility:hidden;position:absolute;top:0;bottom:0;right:0;left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;font-size:10px;text-transform:uppercase;color:#fff;z-index:9}.image-upload-area .image-upload-wrapper .image-upload-overlay .uploaded-image{border-radius:5px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.1);box-shadow:0 2px 10px 0 rgba(0,0,0,.1)}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover{visibility:visible;cursor:pointer;border-radius:5px}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover .el-image__error{visibility:hidden}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover .caption{visibility:visible;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.1),inset 0 0 120px 25px rgba(0,0,0,.8);box-shadow:0 2px 10px 0 rgba(0,0,0,.1),inset 0 0 120px 25px rgba(0,0,0,.8);border-radius:5px}a{text-decoration:underline}.center-label label{text-align:center}.center-label label span{float:left}.code{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button{margin-left:5px}.description-container{overflow-wrap:break-word}.description-container .el-form-item__content{line-height:20px}.divider{margin:0 0 18px}.divider.thick-line{height:2px}.docs-search-container{float:right;margin-right:30px}.editable-keyword-container{width:100%}.el-form-item .rate-limit{margin-right:0}.el-input-group__prepend{padding-left:10px;padding-right:10px}.el-tabs__header{z-index:2002}.email-address-input{width:50%;margin-right:10px}.esshd-list{margin:0}.expl,.expl>p{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code,.expl code{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay{width:350px;margin-right:7px}.form-container{margin-bottom:80px}.grouped-settings-header{margin:0 0 14px}.highlight{background-color:#e6e6e6}.icons-button-container{width:100%;margin-bottom:10px}.icons-button-desc{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input{width:30%;margin-right:8px}.icon-minus-button{width:36px;height:36px}.icon-value-input{width:70%;margin-left:8px}.icons-container,.input-container{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item{margin-right:30px;width:100%}.input-container .el-select,.keyword-container{width:100%}label{overflow:hidden;text-overflow:ellipsis}.label-font{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl{margin-left:10px}.limit-input{width:47%;margin:0 0 5px 1%}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot{margin-bottom:15px}.mascot-container{width:100%}.mascot-input{margin-bottom:7px}.mascot-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input{margin-right:10px}.multiple-select-container{width:100%}.name-input{width:30%;margin-right:8px}.nickname-input{width:50%}.no-top-margin{margin-top:0}.no-top-margin p{margin-right:30px}.pattern-input{width:20%;margin-right:8px}.proxy-url-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input{width:35%;margin-right:8px}.proxy-url-value-input{width:35%;margin-left:8px;margin-right:10px}.prune-options{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio{margin-top:11px}.rate-limit .el-form-item__content{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container{width:100%}.rate-limit-content{width:70%}.rate-limit-label{float:right}.rate-limit-label-container{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:30%;margin-right:10px}.reboot-button{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container{margin:0 15px}.replacement-input{width:80%;margin-left:8px;margin-right:10px}.sender-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.scale-input{width:47%;margin:0 1% 5px 0}.setting-input{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.setting-label{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.settings-container{max-width:1824px;margin:auto}.settings-container .el-tabs{margin-top:20px}.settings-delete-button{margin-left:5px}.settings-docs-button{min-width:163px;text-align:left;padding:10px}.settings-header{margin:10px 15px 15px}.header-sidebar-opened{max-width:1585px}.header-sidebar-closed{max-width:1728px}.settings-header-container{height:87px}.settings-search-input{width:350px;margin-left:5px}.single-input{margin-right:10px}.socks5-checkbox{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts{margin:36px 0 0}.submit-button{float:right;margin:0 30px 22px 0}.submit-button-container{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input{height:36px}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed{max-width:1772px}.header-sidebar-opened{max-width:1630px}.reboot-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened{max-width:1630px}.reboot-sidebar-closed{max-width:1772px}.sidebar-closed{max-width:1586px}.sidebar-opened{max-width:1442px}.submit-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab,.crontab label{width:100%}.delete-setting-button{margin:4px 0 0 5px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 5px 7px 15px}.description>p code{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.description-container{margin:0 15px 22px}.divider{margin:0 0 10px}.divider .thick-line{height:2px}.follow-relay{width:75%;margin-right:5px}.follow-relay input{width:100%}.follow-relay-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 5px}h1{font-size:24px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container{width:100%}.input-container .el-form-item:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item,.input-container .el-form-item:first-child .rate-limit{padding:0}.input-container .settings-delete-button{margin-top:4px;float:right}.input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin{margin-left:15px}.limit-input{width:45%}.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input{width:100%;margin-bottom:5px}.proxy-url-value-input{width:100%;margin-left:0}.prune-options{height:80px}.prune-options,.rate-limit .el-form-item__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-content{width:100%}.rate-limit-label{float:left}.rate-limit-label-container{width:100%}.reboot-button{margin:0 15px 0 0}.reboot-button-container{top:57px}.scale-input{width:45%}.settings-header{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container{float:right}.settings-search-input{width:100%;margin-left:0}.settings-search-input-container{margin:0 15px 15px}.settings-menu{width:163px;margin-right:5px}.socks5-checkbox-container{width:100%}.submit-button{margin:0 15px 22px 0}.el-input__inner{padding:0 5px}.el-form-item__label:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%;pointer-events:none}.el-form-item__label:not(.no-top-margin) span{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-form-item__label:not(.no-top-margin) button{pointer-events:auto}.el-message{min-width:80%}.el-message-box{width:80%}.el-select__tags{overflow:hidden}.expl,.expl>p{line-height:16px}.icon-key-input{width:40%;margin-right:4px}.icon-minus-button{width:28px;height:28px;margin-top:4px}.icon-values-container{margin:0 7px 7px 0}.icon-value-input{width:60%;margin-left:4px}.icons-button-container{line-height:24px}.line{margin-bottom:10px}.mascot-form-item .el-form-item__label:not(.no-top-margin){margin:0;padding:0}.mascot-container{margin-bottom:5px}.name-input{width:40%;margin-right:5px}p.expl{line-height:20px}.pattern-input{width:40%;margin-right:4px}.relays-container{margin:0 10px}.replacement-input{width:60%;margin-left:4px;margin-right:5px}.settings-header-container{height:45px}.value-input{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button{margin:4px 0 0 10px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 15px 10px 0}.icon-minus-button{width:28px;height:28px;margin-top:4px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span{margin-left:10px}.input-row,.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-content{width:65%}.rate-limit-label-container{width:35%}.settings-delete-button{float:right}.settings-header-container{height:36px}.settings-search-input{width:250px;margin:0 0 15px 15px}}a[data-v-82f78b3e]{text-decoration:underline}.center-label label[data-v-82f78b3e]{text-align:center}.center-label label span[data-v-82f78b3e]{float:left}.code[data-v-82f78b3e]{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button[data-v-82f78b3e]{margin-left:5px}.description-container[data-v-82f78b3e]{overflow-wrap:break-word}.description-container .el-form-item__content[data-v-82f78b3e]{line-height:20px}.divider[data-v-82f78b3e]{margin:0 0 18px}.divider.thick-line[data-v-82f78b3e]{height:2px}.docs-search-container[data-v-82f78b3e]{float:right;margin-right:30px}.editable-keyword-container[data-v-82f78b3e]{width:100%}.el-form-item .rate-limit[data-v-82f78b3e]{margin-right:0}.el-input-group__prepend[data-v-82f78b3e]{padding-left:10px;padding-right:10px}.el-tabs__header[data-v-82f78b3e]{z-index:2002}.email-address-input[data-v-82f78b3e]{width:50%;margin-right:10px}.esshd-list[data-v-82f78b3e]{margin:0}.expl>p[data-v-82f78b3e],.expl[data-v-82f78b3e]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code[data-v-82f78b3e],.expl code[data-v-82f78b3e]{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay[data-v-82f78b3e]{width:350px;margin-right:7px}.form-container[data-v-82f78b3e]{margin-bottom:80px}.grouped-settings-header[data-v-82f78b3e]{margin:0 0 14px}.highlight[data-v-82f78b3e]{background-color:#e6e6e6}.icons-button-container[data-v-82f78b3e]{width:100%;margin-bottom:10px}.icons-button-desc[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input[data-v-82f78b3e]{width:30%;margin-right:8px}.icon-minus-button[data-v-82f78b3e]{width:36px;height:36px}.icon-value-input[data-v-82f78b3e]{width:70%;margin-left:8px}.icons-container[data-v-82f78b3e],.input-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container[data-v-82f78b3e]{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item[data-v-82f78b3e]{margin-right:30px;width:100%}.input-container .el-select[data-v-82f78b3e],.keyword-container[data-v-82f78b3e]{width:100%}label[data-v-82f78b3e]{overflow:hidden;text-overflow:ellipsis}.label-font[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl[data-v-82f78b3e]{margin-left:10px}.limit-input[data-v-82f78b3e]{width:47%;margin:0 0 5px 1%}.line[data-v-82f78b3e]{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot[data-v-82f78b3e]{margin-bottom:15px}.mascot-container[data-v-82f78b3e]{width:100%}.mascot-input[data-v-82f78b3e]{margin-bottom:7px}.mascot-name-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input[data-v-82f78b3e]{margin-right:10px}.multiple-select-container[data-v-82f78b3e]{width:100%}.name-input[data-v-82f78b3e]{width:30%;margin-right:8px}.nickname-input[data-v-82f78b3e]{width:50%}.no-top-margin[data-v-82f78b3e]{margin-top:0}.no-top-margin p[data-v-82f78b3e]{margin-right:30px}.pattern-input[data-v-82f78b3e]{width:20%;margin-right:8px}.proxy-url-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input[data-v-82f78b3e]{width:35%;margin-right:8px}.proxy-url-value-input[data-v-82f78b3e]{width:35%;margin-left:8px;margin-right:10px}.prune-options[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio[data-v-82f78b3e]{margin-top:11px}.rate-limit .el-form-item__content[data-v-82f78b3e]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container[data-v-82f78b3e]{width:100%}.rate-limit-content[data-v-82f78b3e]{width:70%}.rate-limit-label[data-v-82f78b3e]{float:right}.rate-limit-label-container[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:30%;margin-right:10px}.reboot-button[data-v-82f78b3e]{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container[data-v-82f78b3e]{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container[data-v-82f78b3e]{margin:0 15px}.replacement-input[data-v-82f78b3e]{width:80%;margin-left:8px;margin-right:10px}.sender-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.scale-input[data-v-82f78b3e]{width:47%;margin:0 1% 5px 0}.setting-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.setting-label[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.settings-container[data-v-82f78b3e]{max-width:1824px;margin:auto}.settings-container .el-tabs[data-v-82f78b3e]{margin-top:20px}.settings-delete-button[data-v-82f78b3e]{margin-left:5px}.settings-docs-button[data-v-82f78b3e]{min-width:163px;text-align:left;padding:10px}.settings-header[data-v-82f78b3e]{margin:10px 15px 15px}.header-sidebar-opened[data-v-82f78b3e]{max-width:1585px}.header-sidebar-closed[data-v-82f78b3e]{max-width:1728px}.settings-header-container[data-v-82f78b3e]{height:87px}.settings-search-input[data-v-82f78b3e]{width:350px;margin-left:5px}.single-input[data-v-82f78b3e]{margin-right:10px}.socks5-checkbox[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container[data-v-82f78b3e]{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts[data-v-82f78b3e]{margin:36px 0 0}.submit-button[data-v-82f78b3e]{float:right;margin:0 30px 22px 0}.submit-button-container[data-v-82f78b3e]{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input[data-v-82f78b3e]{height:36px}.text[data-v-82f78b3e]{line-height:20px;margin-right:15px}.upload-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input[data-v-82f78b3e]{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed[data-v-82f78b3e]{max-width:1772px}.header-sidebar-opened[data-v-82f78b3e]{max-width:1630px}.reboot-button-container[data-v-82f78b3e]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened[data-v-82f78b3e]{max-width:1630px}.reboot-sidebar-closed[data-v-82f78b3e]{max-width:1772px}.sidebar-closed[data-v-82f78b3e]{max-width:1586px}.sidebar-opened[data-v-82f78b3e]{max-width:1442px}.submit-button-container[data-v-82f78b3e]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab[data-v-82f78b3e],.crontab label[data-v-82f78b3e]{width:100%}.delete-setting-button[data-v-82f78b3e]{margin:4px 0 0 5px;height:28px}.delete-setting-button-container[data-v-82f78b3e]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-82f78b3e]{line-height:18px;margin:0 5px 7px 15px}.description>p code[data-v-82f78b3e]{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.description-container[data-v-82f78b3e]{margin:0 15px 22px}.divider[data-v-82f78b3e]{margin:0 0 10px}.divider .thick-line[data-v-82f78b3e]{height:2px}.follow-relay[data-v-82f78b3e]{width:75%;margin-right:5px}.follow-relay input[data-v-82f78b3e]{width:100%}.follow-relay-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 5px}h1[data-v-82f78b3e]{font-size:24px}.input[data-v-82f78b3e]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container[data-v-82f78b3e]{width:100%}.input-container .el-form-item[data-v-82f78b3e]:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container[data-v-82f78b3e]:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item[data-v-82f78b3e],.input-container .el-form-item:first-child .rate-limit[data-v-82f78b3e]{padding:0}.input-container .settings-delete-button[data-v-82f78b3e]{margin-top:4px;float:right}.input-row[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin[data-v-82f78b3e]{margin-left:15px}.limit-input[data-v-82f78b3e]{width:45%}.nav-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input[data-v-82f78b3e]{width:100%;margin-bottom:5px}.proxy-url-value-input[data-v-82f78b3e]{width:100%;margin-left:0}.prune-options[data-v-82f78b3e]{height:80px}.prune-options[data-v-82f78b3e],.rate-limit .el-form-item__content[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-content[data-v-82f78b3e]{width:100%}.rate-limit-label[data-v-82f78b3e]{float:left}.rate-limit-label-container[data-v-82f78b3e]{width:100%}.reboot-button[data-v-82f78b3e]{margin:0 15px 0 0}.reboot-button-container[data-v-82f78b3e]{top:57px}.scale-input[data-v-82f78b3e]{width:45%}.settings-header[data-v-82f78b3e]{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container[data-v-82f78b3e]{float:right}.settings-search-input[data-v-82f78b3e]{width:100%;margin-left:0}.settings-search-input-container[data-v-82f78b3e]{margin:0 15px 15px}.settings-menu[data-v-82f78b3e]{width:163px;margin-right:5px}.socks5-checkbox-container[data-v-82f78b3e]{width:100%}.submit-button[data-v-82f78b3e]{margin:0 15px 22px 0}.el-input__inner[data-v-82f78b3e]{padding:0 5px}.el-form-item__label[data-v-82f78b3e]:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%;pointer-events:none}.el-form-item__label:not(.no-top-margin) span[data-v-82f78b3e]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-form-item__label:not(.no-top-margin) button[data-v-82f78b3e]{pointer-events:auto}.el-message[data-v-82f78b3e]{min-width:80%}.el-message-box[data-v-82f78b3e]{width:80%}.el-select__tags[data-v-82f78b3e]{overflow:hidden}.expl>p[data-v-82f78b3e],.expl[data-v-82f78b3e]{line-height:16px}.icon-key-input[data-v-82f78b3e]{width:40%;margin-right:4px}.icon-minus-button[data-v-82f78b3e]{width:28px;height:28px;margin-top:4px}.icon-values-container[data-v-82f78b3e]{margin:0 7px 7px 0}.icon-value-input[data-v-82f78b3e]{width:60%;margin-left:4px}.icons-button-container[data-v-82f78b3e]{line-height:24px}.line[data-v-82f78b3e]{margin-bottom:10px}.mascot-form-item .el-form-item__label[data-v-82f78b3e]:not(.no-top-margin){margin:0;padding:0}.mascot-container[data-v-82f78b3e]{margin-bottom:5px}.name-input[data-v-82f78b3e]{width:40%;margin-right:5px}p.expl[data-v-82f78b3e]{line-height:20px}.pattern-input[data-v-82f78b3e]{width:40%;margin-right:4px}.relays-container[data-v-82f78b3e]{margin:0 10px}.replacement-input[data-v-82f78b3e]{width:60%;margin-left:4px;margin-right:5px}.settings-header-container[data-v-82f78b3e]{height:45px}.value-input[data-v-82f78b3e]{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button[data-v-82f78b3e]{margin:4px 0 0 10px;height:28px}.delete-setting-button-container[data-v-82f78b3e]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-82f78b3e]{line-height:18px;margin:0 15px 10px 0}.icon-minus-button[data-v-82f78b3e]{width:28px;height:28px;margin-top:4px}.input[data-v-82f78b3e]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span[data-v-82f78b3e]{margin-left:10px}.input-row[data-v-82f78b3e],.nav-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container[data-v-82f78b3e]{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-content[data-v-82f78b3e]{width:65%}.rate-limit-label-container[data-v-82f78b3e]{width:35%}.settings-delete-button[data-v-82f78b3e]{float:right}.settings-header-container[data-v-82f78b3e]{height:36px}.settings-search-input[data-v-82f78b3e]{width:250px;margin:0 0 15px 15px}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-60a9.a80ec218.css b/priv/static/adminfe/chunk-60a9.a80ec218.css @@ -0,0 +1 @@ +h1[data-v-039e6dbb]{margin:0}.expl[data-v-039e6dbb]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.banned-urls-table[data-v-039e6dbb]{margin-top:15px;margin-bottom:15px}.evict-button[data-v-039e6dbb]{margin-left:15px}.media-proxy-cache-header[data-v-039e6dbb]{margin-left:15px;margin-top:22px;font-weight:500}.media-proxy-cache-header-container[data-v-039e6dbb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px}.pagination[data-v-039e6dbb]{margin:25px 0;text-align:center}.remove-url-button[data-v-039e6dbb]{width:150px}.url-input[data-v-039e6dbb]{margin-right:15px}.url-input-container[data-v-039e6dbb]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin:15px 15px 5px}.url-input-expl[data-v-039e6dbb]{margin-left:15px}@media only screen and (max-width:480px){.url-input[data-v-039e6dbb]{width:100%;margin-bottom:5px}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-654d.94689c39.css b/priv/static/adminfe/chunk-654e.e105ec9c.css diff --git a/priv/static/adminfe/chunk-68ea9.dac85813.css b/priv/static/adminfe/chunk-68ea.be16aa5f.css diff --git a/priv/static/adminfe/chunk-6e81.1c0f2da2.css b/priv/static/adminfe/chunk-6e81.7f126ac7.css diff --git a/priv/static/adminfe/chunk-6e8c.5832dc0a.css b/priv/static/adminfe/chunk-6e8c.5832dc0a.css @@ -0,0 +1 @@ +.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.moderate-user-button{width:100%}}.security-settings-container{display:-webkit-box;display:-ms-flexbox;display:flex}.security-settings-container label{width:15%;height:36px}.security-settings-modal .el-dialog__body{padding-top:10px}.security-settings-modal .el-form-item,.security-settings-modal .password-alert{margin-bottom:15px}.security-settings-modal .password-input{margin-bottom:0}.security-settings-submit-button{float:right}@media (max-width:800px){.security-settings-modal .el-dialog{width:90%}}.security-settings-modal .el-alert .el-alert__description{word-break:break-word;font-size:1em}.security-settings-modal .form-text{display:block;margin-top:.25rem;color:#909399}header{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;margin:22px 0;padding-left:15px}header h1{margin:0 0 0 10px}table{margin:10px 0 0 15px}table .name-col{width:150px}.avatar-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avatar-name-container .el-icon-top-right{font-size:2em;line-height:36px;color:#606266}.invalid{color:grey}.el-table--border:after,.el-table--group:after,.el-table:before{background-color:transparent}.image{width:20%}.image img{width:100%}.invalid-user-tag{font-size:14px;width:inherit;height:auto;text-align:center;word-wrap:break-word;white-space:normal}.left-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.no-statuses{margin-left:28px;color:#606266}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.poll ul{list-style-type:none;padding:0;width:30%}.reboot-button{padding:10px;margin-left:10px}.recent-statuses-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:67%}.recent-statuses-header{margin-top:10px}.reset-password-link{text-decoration:underline}.security-setting-button{margin-top:20px;width:100%}.statuses{padding:0 20px 0 0}.show-private{width:200px;text-align:left;line-height:67px;margin-right:20px}.show-private-statuses{margin-left:28px;margin-bottom:20px}.recent-statuses{margin-left:28px}.user-page-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:22px 15px 22px 20px;padding:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-page-header h1{display:inline}.user-profile-card{margin:0 20px;width:30%;min-width:300px;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.user-profile-container{display:-webkit-box;display:-ms-flexbox;display:flex}.user-profile-table{margin:0;width:inherit}.user-profile-tag{margin:0 4px 4px 0}.reason-label{color:#878d99;font-weight:700;margin:5px 0}@media only screen and (max-width:480px){.avatar-name-container{margin-bottom:10px}.el-timeline-item__wrapper{padding-left:18px}.password-reset-token-dialog{width:85%}.recent-statuses{margin:20px 10px 15px}.recent-statuses-container{width:100%;margin:0}.show-private-statuses{margin:0 10px 20px}.status-container{margin:0 10px}.statuses{padding-right:10px;margin-left:8px}.user-page-header{padding:0;margin:7px 15px 15px 10px}.user-page-header-container .el-dropdown{width:95%;margin:0 15px 15px 10px}.user-profile-card{margin:0 10px;width:95%}.user-profile-card td{width:80px}.user-profile-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}@media only screen and (max-width:801px) and (min-width:481px){.recent-statuses{margin:20px 10px 15px 0}.recent-statuses-container{width:97%;margin:0 20px}.show-private-statuses{margin:0 10px 20px 0}.user-page-header{padding:0;margin:7px 15px 20px 20px}.user-profile-card{margin:0 20px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.user-profile-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-7503.37b33ad8.css b/priv/static/adminfe/chunk-7503.37b33ad8.css @@ -0,0 +1 @@ +.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.moderate-user-button{width:100%}}.avatar-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.avatar-name-container .el-icon-top-right{font-size:2em;line-height:36px;color:#606266}.avatar-name-header{display:-webkit-box;display:-ms-flexbox;display:flex;height:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.invalid{color:grey}.no-statuses{margin-left:28px;color:#606266}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reboot-button{padding:10px;margin-left:6px}.recent-statuses-container-show{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.recent-statuses-container-show .el-timeline-item,.recent-statuses-container-show .recent-statuses{margin-left:20px}.recent-statuses-container-show .show-private-statuses{margin-left:20px;margin-bottom:20px}.reset-password-link{text-decoration:underline}.router-link{text-decoration:none}.status-container{margin:0 15px 0 20px}.statuses{padding:0 20px 0 0}.user-page-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:22px 15px 22px 20px;padding:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.user-page-header h1{display:inline;margin:0 0 0 10px}@media only screen and (min-width:1824px){.status-show-container{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.avatar-name-container{margin-bottom:10px}.el-timeline-item__wrapper{padding-left:18px}.left-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.password-reset-token-dialog{width:85%}.recent-statuses{margin:20px 10px 15px}.recent-statuses-container-show{width:100%;margin:0 0 0 10px}.recent-statuses-container-show .el-timeline-item,.recent-statuses-container-show .recent-statuses{margin-left:0}.recent-statuses-container-show .show-private-statuses{margin:0 10px 20px 0}.status-card .el-card__body{padding:15px}.status-container{margin:0 10px}.statuses{padding-right:10px;margin-left:0}.statuses .el-timeline-item__wrapper{margin-right:10px}.user-page-header{padding:0;margin:7px 15px 5px 10px}.status-page-header-container{width:100%}.status-page-header-container .el-dropdown{width:-webkit-fill-available;width:-moz-available;width:stretch;margin:0 10px 15px}}@media only screen and (max-width:801px) and (min-width:481px){.recent-statuses-container-show{width:97%;margin:0 20px}.recent-statuses-container-show .el-timeline-item{margin-left:2px}.recent-statuses-container-show .recent-statuses{margin:20px 10px 15px 0}.recent-statuses-container-show .show-private-statuses,.show-private-statuses{margin:0 10px 20px 0}.user-page-header{padding:0;margin:7px 15px 20px 20px}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-7c6b.365cbeda.css b/priv/static/adminfe/chunk-7c6b.4c8fa90a.css diff --git a/priv/static/adminfe/chunk-850d.cc4f0ac6.css b/priv/static/adminfe/chunk-850d.cc4f0ac6.css @@ -1 +0,0 @@ -a{text-decoration:underline}.note-header{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.note-actor{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.note-actor-name{margin:0;height:28px}.note-avatar-img{width:15px;height:15px;margin-right:5px}.note-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.note-card{margin-bottom:15px}.note-content,.note-header{font-size:15px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:28px;font-weight:500}@media only screen and (max-width:480px){.el-card__header{padding:10px 17px}.note-header{height:65px}.note-actor{margin-bottom:5px}.note-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}}h4{margin:0;height:17px}.account{line-height:26px;font-size:13px;color:#606266}.account:hover{text-decoration:underline}.avatar-img{vertical-align:bottom;width:15px;height:15px}.divider{margin:15px 0}.deactivated{color:grey}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report .report-header-container{height:40px}.report-account,.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.report-account{-webkit-box-flex:2;-ms-flex-positive:2;flex-grow:2}.report-account-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.report-account-name{font-size:15px;font-weight:500}.report-row-key{font-size:14px;font-weight:500;padding-right:5px}.report-title{margin:0}.report-note-form{margin:15px 0 0}.report-post-note{margin:5px 0 0;text-align:right}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.router-link{text-decoration:none}.reported-statuses{margin-top:15px}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-5ab7c15a]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-5ab7c15a]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-5ab7c15a]{width:50%}}.reports-container .reboot-button[data-v-6ac87f34]{padding:10px;margin:0;width:145px}.reports-container .reports-filter-container[data-v-6ac87f34]{margin:15px 45px 22px 15px;padding-bottom:0}.reports-container .reports-filter-container[data-v-6ac87f34],.reports-container .reports-header-container[data-v-6ac87f34]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.reports-container .reports-header-container[data-v-6ac87f34]{margin:10px 15px}.reports-container h1[data-v-6ac87f34]{margin:0}.reports-container .no-reports-message[data-v-6ac87f34]{color:grey;margin-left:19px}.reports-container .report-count[data-v-6ac87f34]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-6ac87f34]{margin:7px 10px 15px}.reports-container .reboot-button[data-v-6ac87f34]{margin:0 0 5px 10px;width:145px}.reports-container .report-count[data-v-6ac87f34]{font-size:22px}.reports-container .reports-filter-container[data-v-6ac87f34]{margin:0 10px}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-97e2.b21a8915.css b/priv/static/adminfe/chunk-97e2.b21a8915.css @@ -0,0 +1 @@ +.copy-popover{width:330px}.copy-to-local-pack-button{margin-top:15px;float:right}.emoji-buttons{place-self:center;min-width:200px}.emoji-container-grid{display:grid;grid-template-columns:75px auto auto 200px;grid-column-gap:15px;margin-bottom:10px}.emoji-preview-img{max-width:100%;place-self:center}.emoji-info{place-self:center}.copy-pack-container{place-self:center stretch}.copy-pack-select{width:100%}.remote-emoji-container-grid{display:grid;grid-template-columns:75px auto auto 160px;grid-column-gap:15px;margin-bottom:10px}@media only screen and (max-width:480px){.emoji-container-flex{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border:1px solid #dcdfe6;-webkit-box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-shadow:0 2px 12px 0 rgba(0,0,0,.1);border-radius:4px;padding:15px;margin:0 15px 15px 0}.emoji-info,.emoji-preview-img{margin-bottom:10px}.emoji-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%}.emoji-buttons button{padding:10px 5px;width:47%}}@media only screen and (max-width:801px) and (min-width:481px){.emoji-container-grid{grid-column-gap:10px}.emoji-buttons .el-button+.el-button{margin-left:5px}.remote-emoji-container-grid{grid-column-gap:10px}}.add-new-emoji{height:36px;font-size:14px;font-weight:700;color:#606266}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.upload-button{margin-left:10px}.upload-file-url{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.new-emoji-uploader-form label.el-form-item__label{padding:0}}.files-pagination{margin:25px 0;text-align:center}.download-archive{width:250px}.download-pack-button-container{width:265px}.download-pack-button-container .el-link,.download-pack-button-container .el-link span,.download-pack-button-container .el-link span .download-archive{width:inherit}.download-shared-pack{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.download-shared-pack-button{margin-left:10px}.el-collapse-item__content{padding-bottom:0}.el-collapse-item__header{height:36px;font-size:14px;font-weight:700;color:#606266}.emoji-pack-card{margin-top:5px}.emoji-pack-metadata .el-form-item{margin-bottom:10px}.has-background .el-collapse-item__header{background:#f6f6f6}.no-background .el-collapse-item__header{background:#fff}.pack-button-container{margin:0 0 18px 120px}.save-pack-button-container{margin-bottom:8px;width:265px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media only screen and (max-width:480px){.delete-pack-button{width:45%}.download-pack-button-container{width:100%}.download-shared-pack{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.download-shared-pack-button{margin-left:0;margin-top:10px;padding:10px}.pack-button-container{width:100%;margin:0 0 22px}.remote-pack-metadata .el-form-item__content{line-height:24px;margin-top:4px}.save-pack-button{width:54%}.save-pack-button-container{margin-bottom:8px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.save-pack-button-container button{padding:10px 5px}.save-pack-button-container .el-button+.el-button{margin-left:3px}}.create-pack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.create-pack-button{margin-left:10px}.emoji-header-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 15px 22px}.emoji-header-container,.emoji-packs-header-button-container{display:-webkit-box;display:-ms-flexbox;display:flex}.emoji-packs-form{margin-top:15px}.emoji-packs-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px 15px}.emoji-packs-tabs{margin:0 15px 15px}.import-pack-button{margin-left:10px;width:30%;max-width:700px}h1{margin:0}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:22px}.pagination{margin:25px 0;text-align:center}.reboot-button{padding:10px;margin:0;width:145px}@media only screen and (min-width:1824px){.emoji-packs{max-width:1824px;margin:auto}}@media only screen and (max-width:480px){.create-pack{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.create-pack-button{margin-left:0}.divider{margin:15px 0}.el-message{min-width:80%}.el-message-box{width:80%}.emoji-header-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.emoji-packs-form{margin:0 7px}.emoji-packs-form label{padding-right:8px}.emoji-packs-form .el-form-item{margin-bottom:15px}.emoji-packs-header{margin:15px}.emoji-packs-header-button-container{height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.emoji-packs-header-button-container .el-button+.el-button{margin:7px 0 0;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.import-pack-button{width:90%}.reload-emoji-button{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}} +\ No newline at end of file diff --git a/priv/static/adminfe/chunk-d34d.b0dd6fb4.css b/priv/static/adminfe/chunk-9a72.3e577534.css diff --git a/priv/static/adminfe/chunk-9d55.e2cb1409.css b/priv/static/adminfe/chunk-9d55.e2cb1409.css @@ -1 +0,0 @@ -.editor{position:relative;border-radius:4px;border:1px solid #dcdfe6;padding:10px}.editor__content{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;padding-left:10px}.editor__content *{caret-color:currentColor}.editor__content pre{border-radius:5px;font-size:.8rem;overflow-x:auto}.editor__content pre code{display:block}.editor__content p code{border-radius:5px;font-size:.8rem;font-weight:700}.editor__content ol,.editor__content ul{padding-left:1rem}.editor__content li>ol,.editor__content li>p,.editor__content li>ul{margin:0}.editor__content a{color:inherit}.editor__content blockquote{border-left:3px solid rgba(0,0,0,.1);color:rgba(0,0,0,.8);padding-left:.8rem;font-style:italic}.editor__content blockquote p{margin:0}.editor__content img{max-width:100%;border-radius:3px}.editor__content table{border-collapse:collapse;table-layout:fixed;width:100%;margin:0;overflow:hidden}.editor__content table td,.editor__content table th{min-width:1em;border:2px solid #ddd;padding:3px 5px;vertical-align:top;-webkit-box-sizing:border-box;box-sizing:border-box;position:relative}.editor__content table td>*,.editor__content table th>*{margin-bottom:0}.editor__content table th{font-weight:700;text-align:left}.editor__content table .selectedCell:after{z-index:2;position:absolute;content:"";left:0;right:0;top:0;bottom:0;background:rgba(200,200,255,.4);pointer-events:none}.editor__content table .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;z-index:20;background-color:#adf;pointer-events:none}.editor__content .tableWrapper{margin:1em 0;overflow-x:auto}.editor__content .resize-cursor{cursor:ew-resize;cursor:col-resize}.editor-form-item{margin-right:30px}.menubar{margin-bottom:1rem;-webkit-transition:visibility .2s .4s,opacity .2s .4s;transition:visibility .2s .4s,opacity .2s .4s}.menubar.is-hidden{visibility:hidden;opacity:0}.menubar.is-focused{visibility:visible;opacity:1;-webkit-transition:visibility .2s,opacity .2s;transition:visibility .2s,opacity .2s}.menubar__button{font-weight:700;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background:transparent;border:0;color:#000;padding:.2rem .5rem;margin-right:.2rem;border-radius:3px;cursor:pointer}.menubar__button:hover{background-color:rgba(0,0,0,.05)}.menubar__button.is-active{background-color:rgba(0,0,0,.1)}.menubar span.menubar__button{font-size:13.3333px}.image-upload-area .input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.image-upload-area .input-file{z-index:100;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.image-upload-area .image-button-group{margin-top:20px}.image-upload-area .image-button-group .upload-button,.image-upload-area .image-upload-wrapper{position:relative}.image-upload-area .image-upload-wrapper .image-upload-overlay{border-radius:5px}.image-upload-area .image-upload-wrapper .image-upload-overlay,.image-upload-area .image-upload-wrapper .image-upload-overlay .caption{-webkit-transition:-webkit-box-shadow .1s;transition:-webkit-box-shadow .1s;transition:box-shadow .1s;transition:box-shadow .1s,-webkit-box-shadow .1s}.image-upload-area .image-upload-wrapper .image-upload-overlay .caption{visibility:hidden;position:absolute;top:0;bottom:0;right:0;left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;font-size:10px;text-transform:uppercase;color:#fff;z-index:9}.image-upload-area .image-upload-wrapper .image-upload-overlay .uploaded-image{border-radius:5px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.1);box-shadow:0 2px 10px 0 rgba(0,0,0,.1)}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover{visibility:visible;cursor:pointer;border-radius:5px}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover .el-image__error{visibility:hidden}.image-upload-area .image-upload-wrapper .image-upload-overlay:hover .caption{visibility:visible;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.1),inset 0 0 120px 25px rgba(0,0,0,.8);box-shadow:0 2px 10px 0 rgba(0,0,0,.1),inset 0 0 120px 25px rgba(0,0,0,.8);border-radius:5px}a{text-decoration:underline}.center-label label{text-align:center}.center-label label span{float:left}.code{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button{margin-left:5px}.description-container{overflow-wrap:break-word}.description-container .el-form-item__content{line-height:20px}.divider{margin:0 0 18px}.divider.thick-line{height:2px}.docs-search-container{float:right;margin-right:30px}.editable-keyword-container{width:100%}.el-form-item .rate-limit{margin-right:0}.el-input-group__prepend{padding-left:10px;padding-right:10px}.el-tabs__header{z-index:2002}.email-address-input{width:50%;margin-right:10px}.esshd-list{margin:0}.expl,.expl>p{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code,.expl code{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay{width:350px;margin-right:7px}.form-container{margin-bottom:80px}.grouped-settings-header{margin:0 0 14px}.highlight{background-color:#e6e6e6}.icons-button-container{width:100%;margin-bottom:10px}.icons-button-desc{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input{width:30%;margin-right:8px}.icon-minus-button{width:36px;height:36px}.icon-value-input{width:70%;margin-left:8px}.icons-container,.input-container{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item{margin-right:30px;width:100%}.input-container .el-select,.keyword-container{width:100%}label{overflow:hidden;text-overflow:ellipsis}.label-font{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl{margin-left:10px}.limit-input{width:47%;margin:0 0 5px 1%}.line{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot{margin-bottom:15px}.mascot-container{width:100%}.mascot-input{margin-bottom:7px}.mascot-name-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input{margin-right:10px}.multiple-select-container{width:100%}.name-input{width:30%;margin-right:8px}.nickname-input{width:50%}.no-top-margin{margin-top:0}.no-top-margin p{margin-right:30px}.pattern-input{width:20%;margin-right:8px}.proxy-url-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input{width:35%;margin-right:8px}.proxy-url-value-input{width:35%;margin-left:8px;margin-right:10px}.prune-options{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio{margin-top:11px}.rate-limit .el-form-item__content{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container{width:100%}.rate-limit-content{width:70%}.rate-limit-label{float:right}.rate-limit-label-container{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:30%;margin-right:10px}.reboot-button{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container{margin:0 15px}.replacement-input{width:80%;margin-left:8px;margin-right:10px}.sender-input{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.scale-input{width:47%;margin:0 1% 5px 0}.setting-input{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.setting-label{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.settings-container{max-width:1824px;margin:auto}.settings-container .el-tabs{margin-top:20px}.settings-delete-button{margin-left:5px}.settings-docs-button{min-width:163px;text-align:left;padding:10px}.settings-header{margin:10px 15px 15px}.header-sidebar-opened{max-width:1585px}.header-sidebar-closed{max-width:1728px}.settings-header-container{height:87px}.settings-search-input{width:350px;margin-left:5px}.single-input{margin-right:10px}.socks5-checkbox{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts{margin:36px 0 0}.submit-button{float:right;margin:0 30px 22px 0}.submit-button-container{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input{height:36px}.text{line-height:20px;margin-right:15px}.upload-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed{max-width:1772px}.header-sidebar-opened{max-width:1630px}.reboot-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened{max-width:1630px}.reboot-sidebar-closed{max-width:1772px}.sidebar-closed{max-width:1586px}.sidebar-opened{max-width:1442px}.submit-button-container{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab,.crontab label{width:100%}.delete-setting-button{margin:4px 0 0 5px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 5px 7px 15px}.description>p code{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.description-container{margin:0 15px 22px}.divider{margin:0 0 10px}.divider .thick-line{height:2px}.follow-relay{width:75%;margin-right:5px}.follow-relay input{width:100%}.follow-relay-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 5px}h1{font-size:24px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container{width:100%}.input-container .el-form-item:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item,.input-container .el-form-item:first-child .rate-limit{padding:0}.input-container .settings-delete-button{margin-top:4px;float:right}.input-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin{margin-left:15px}.limit-input{width:45%}.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input{width:100%;margin-bottom:5px}.proxy-url-value-input{width:100%;margin-left:0}.prune-options{height:80px}.prune-options,.rate-limit .el-form-item__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-content{width:100%}.rate-limit-label{float:left}.rate-limit-label-container{width:100%}.reboot-button{margin:0 15px 0 0}.reboot-button-container{top:57px}.scale-input{width:45%}.settings-header{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container{float:right}.settings-search-input{width:100%;margin-left:0}.settings-search-input-container{margin:0 15px 15px}.settings-menu{width:163px;margin-right:5px}.socks5-checkbox-container{width:100%}.submit-button{margin:0 15px 22px 0}.el-input__inner{padding:0 5px}.el-form-item__label:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%;pointer-events:none}.el-form-item__label:not(.no-top-margin) span{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-form-item__label:not(.no-top-margin) button{pointer-events:auto}.el-message{min-width:80%}.el-message-box{width:80%}.el-select__tags{overflow:hidden}.expl,.expl>p{line-height:16px}.icon-key-input{width:40%;margin-right:4px}.icon-minus-button{width:28px;height:28px;margin-top:4px}.icon-values-container{margin:0 7px 7px 0}.icon-value-input{width:60%;margin-left:4px}.icons-button-container{line-height:24px}.line{margin-bottom:10px}.mascot-form-item .el-form-item__label:not(.no-top-margin){margin:0;padding:0}.mascot-container{margin-bottom:5px}.name-input{width:40%;margin-right:5px}p.expl{line-height:20px}.pattern-input{width:40%;margin-right:4px}.relays-container{margin:0 10px}.replacement-input{width:60%;margin-left:4px;margin-right:5px}.settings-header-container{height:45px}.value-input{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button{margin:4px 0 0 10px;height:28px}.delete-setting-button-container{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p{line-height:18px;margin:0 15px 10px 0}.icon-minus-button{width:28px;height:28px;margin-top:4px}.input{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span{margin-left:10px}.input-row,.nav-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-content{width:65%}.rate-limit-label-container{width:35%}.settings-delete-button{float:right}.settings-header-container{height:36px}.settings-search-input{width:250px;margin:0 0 15px 15px}}a[data-v-82f78b3e]{text-decoration:underline}.center-label label[data-v-82f78b3e]{text-align:center}.center-label label span[data-v-82f78b3e]{float:left}.code[data-v-82f78b3e]{background-color:rgba(173,190,214,.48);border-radius:3px;font-family:monospace;padding:0 3px}.delete-setting-button[data-v-82f78b3e]{margin-left:5px}.description-container[data-v-82f78b3e]{overflow-wrap:break-word}.description-container .el-form-item__content[data-v-82f78b3e]{line-height:20px}.divider[data-v-82f78b3e]{margin:0 0 18px}.divider.thick-line[data-v-82f78b3e]{height:2px}.docs-search-container[data-v-82f78b3e]{float:right;margin-right:30px}.editable-keyword-container[data-v-82f78b3e]{width:100%}.el-form-item .rate-limit[data-v-82f78b3e]{margin-right:0}.el-input-group__prepend[data-v-82f78b3e]{padding-left:10px;padding-right:10px}.el-tabs__header[data-v-82f78b3e]{z-index:2002}.email-address-input[data-v-82f78b3e]{width:50%;margin-right:10px}.esshd-list[data-v-82f78b3e]{margin:0}.expl>p[data-v-82f78b3e],.expl[data-v-82f78b3e]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.expl>p code[data-v-82f78b3e],.expl code[data-v-82f78b3e]{display:inline;line-height:22px;font-size:13px;padding:2px 3px}.follow-relay[data-v-82f78b3e]{width:350px;margin-right:7px}.form-container[data-v-82f78b3e]{margin-bottom:80px}.grouped-settings-header[data-v-82f78b3e]{margin:0 0 14px}.highlight[data-v-82f78b3e]{background-color:#e6e6e6}.icons-button-container[data-v-82f78b3e]{width:100%;margin-bottom:10px}.icons-button-desc[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;margin-left:5px}.icon-container[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:95%}.icon-values-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0 10px 10px 0}.icon-key-input[data-v-82f78b3e]{width:30%;margin-right:8px}.icon-minus-button[data-v-82f78b3e]{width:36px;height:36px}.icon-value-input[data-v-82f78b3e]{width:70%;margin-left:8px}.icons-container[data-v-82f78b3e],.input-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex}.input-container[data-v-82f78b3e]{-webkit-box-align:start;-ms-flex-align:start;align-items:start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.input-container .el-form-item[data-v-82f78b3e]{margin-right:30px;width:100%}.input-container .el-select[data-v-82f78b3e],.keyword-container[data-v-82f78b3e]{width:100%}label[data-v-82f78b3e]{overflow:hidden;text-overflow:ellipsis}.label-font[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700}.limit-button-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.limit-expl[data-v-82f78b3e]{margin-left:10px}.limit-input[data-v-82f78b3e]{width:47%;margin:0 0 5px 1%}.line[data-v-82f78b3e]{width:100%;height:0;border:1px solid #eee;margin-bottom:18px}.mascot[data-v-82f78b3e]{margin-bottom:15px}.mascot-container[data-v-82f78b3e]{width:100%}.mascot-input[data-v-82f78b3e]{margin-bottom:7px}.mascot-name-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:7px}.mascot-name-input[data-v-82f78b3e]{margin-right:10px}.multiple-select-container[data-v-82f78b3e]{width:100%}.name-input[data-v-82f78b3e]{width:30%;margin-right:8px}.nickname-input[data-v-82f78b3e]{width:50%}.no-top-margin[data-v-82f78b3e]{margin-top:0}.no-top-margin p[data-v-82f78b3e]{margin-right:30px}.pattern-input[data-v-82f78b3e]{width:20%;margin-right:8px}.proxy-url-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.proxy-url-host-input[data-v-82f78b3e]{width:35%;margin-right:8px}.proxy-url-value-input[data-v-82f78b3e]{width:35%;margin-left:8px;margin-right:10px}.prune-options[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.prune-options .el-radio[data-v-82f78b3e]{margin-top:11px}.rate-limit .el-form-item__content[data-v-82f78b3e]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.rate-limit-container[data-v-82f78b3e]{width:100%}.rate-limit-content[data-v-82f78b3e]{width:70%}.rate-limit-label[data-v-82f78b3e]{float:right}.rate-limit-label-container[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:30%;margin-right:10px}.reboot-button[data-v-82f78b3e]{width:145px;text-align:left;padding:10px;float:right;margin:0 30px 0 0}.reboot-button-container[data-v-82f78b3e]{width:100%;position:fixed;top:60px;right:0;z-index:2000}.relays-container[data-v-82f78b3e]{margin:0 15px}.replacement-input[data-v-82f78b3e]{width:80%;margin-left:8px;margin-right:10px}.sender-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;width:100%}.scale-input[data-v-82f78b3e]{width:47%;margin:0 1% 5px 0}.setting-input[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;margin-bottom:10px}.setting-label[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;line-height:20px;margin:0 0 14px}.settings-container[data-v-82f78b3e]{max-width:1824px;margin:auto}.settings-container .el-tabs[data-v-82f78b3e]{margin-top:20px}.settings-delete-button[data-v-82f78b3e]{margin-left:5px}.settings-docs-button[data-v-82f78b3e]{min-width:163px;text-align:left;padding:10px}.settings-header[data-v-82f78b3e]{margin:10px 15px 15px}.header-sidebar-opened[data-v-82f78b3e]{max-width:1585px}.header-sidebar-closed[data-v-82f78b3e]{max-width:1728px}.settings-header-container[data-v-82f78b3e]{height:87px}.settings-search-input[data-v-82f78b3e]{width:350px;margin-left:5px}.single-input[data-v-82f78b3e]{margin-right:10px}.socks5-checkbox[data-v-82f78b3e]{font-size:14px;color:#606266;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei;font-weight:700;margin-left:10px}.socks5-checkbox-container[data-v-82f78b3e]{width:40%;height:36px;margin-right:5px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ssl-tls-opts[data-v-82f78b3e]{margin:36px 0 0}.submit-button[data-v-82f78b3e]{float:right;margin:0 30px 22px 0}.submit-button-container[data-v-82f78b3e]{width:100%;position:fixed;bottom:0;right:0;z-index:2000}.switch-input[data-v-82f78b3e]{height:36px}.text[data-v-82f78b3e]{line-height:20px;margin-right:15px}.upload-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.value-input[data-v-82f78b3e]{width:70%;margin-left:8px;margin-right:10px}@media only screen and (min-width:1824px){.header-sidebar-closed[data-v-82f78b3e]{max-width:1772px}.header-sidebar-opened[data-v-82f78b3e]{max-width:1630px}.reboot-button-container[data-v-82f78b3e]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}.reboot-sidebar-opened[data-v-82f78b3e]{max-width:1630px}.reboot-sidebar-closed[data-v-82f78b3e]{max-width:1772px}.sidebar-closed[data-v-82f78b3e]{max-width:1586px}.sidebar-opened[data-v-82f78b3e]{max-width:1442px}.submit-button-container[data-v-82f78b3e]{width:100%;max-width:inherit;margin-left:auto;margin-right:auto;right:auto}}@media only screen and (max-width:480px){.crontab[data-v-82f78b3e],.crontab label[data-v-82f78b3e]{width:100%}.delete-setting-button[data-v-82f78b3e]{margin:4px 0 0 5px;height:28px}.delete-setting-button-container[data-v-82f78b3e]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-82f78b3e]{line-height:18px;margin:0 5px 7px 15px}.description>p code[data-v-82f78b3e]{display:inline;line-height:18px;padding:2px 3px;font-size:14px}.description-container[data-v-82f78b3e]{margin:0 15px 22px}.divider[data-v-82f78b3e]{margin:0 0 10px}.divider .thick-line[data-v-82f78b3e]{height:2px}.follow-relay[data-v-82f78b3e]{width:75%;margin-right:5px}.follow-relay input[data-v-82f78b3e]{width:100%}.follow-relay-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0 5px}h1[data-v-82f78b3e]{font-size:24px}.input[data-v-82f78b3e]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container[data-v-82f78b3e]{width:100%}.input-container .el-form-item[data-v-82f78b3e]:first-child{margin:0;padding:0 15px 10px}.input-container .el-form-item.crontab-container[data-v-82f78b3e]:first-child{margin:0;padding:0}.input-container .el-form-item:first-child .mascot-form-item[data-v-82f78b3e],.input-container .el-form-item:first-child .rate-limit[data-v-82f78b3e]{padding:0}.input-container .settings-delete-button[data-v-82f78b3e]{margin-top:4px;float:right}.input-row[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.label-with-margin[data-v-82f78b3e]{margin-left:15px}.limit-input[data-v-82f78b3e]{width:45%}.nav-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.proxy-url-input[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;margin-bottom:0}.proxy-url-host-input[data-v-82f78b3e]{width:100%;margin-bottom:5px}.proxy-url-value-input[data-v-82f78b3e]{width:100%;margin-left:0}.prune-options[data-v-82f78b3e]{height:80px}.prune-options[data-v-82f78b3e],.rate-limit .el-form-item__content[data-v-82f78b3e]{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rate-limit-content[data-v-82f78b3e]{width:100%}.rate-limit-label[data-v-82f78b3e]{float:left}.rate-limit-label-container[data-v-82f78b3e]{width:100%}.reboot-button[data-v-82f78b3e]{margin:0 15px 0 0}.reboot-button-container[data-v-82f78b3e]{top:57px}.scale-input[data-v-82f78b3e]{width:45%}.settings-header[data-v-82f78b3e]{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;display:inline-block;margin:10px 15px 15px}.docs-search-container[data-v-82f78b3e]{float:right}.settings-search-input[data-v-82f78b3e]{width:100%;margin-left:0}.settings-search-input-container[data-v-82f78b3e]{margin:0 15px 15px}.settings-menu[data-v-82f78b3e]{width:163px;margin-right:5px}.socks5-checkbox-container[data-v-82f78b3e]{width:100%}.submit-button[data-v-82f78b3e]{margin:0 15px 22px 0}.el-input__inner[data-v-82f78b3e]{padding:0 5px}.el-form-item__label[data-v-82f78b3e]:not(.no-top-margin){padding-bottom:5px;line-height:22px;margin-top:7px;width:100%;pointer-events:none}.el-form-item__label:not(.no-top-margin) span[data-v-82f78b3e]{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.el-form-item__label:not(.no-top-margin) button[data-v-82f78b3e]{pointer-events:auto}.el-message[data-v-82f78b3e]{min-width:80%}.el-message-box[data-v-82f78b3e]{width:80%}.el-select__tags[data-v-82f78b3e]{overflow:hidden}.expl>p[data-v-82f78b3e],.expl[data-v-82f78b3e]{line-height:16px}.icon-key-input[data-v-82f78b3e]{width:40%;margin-right:4px}.icon-minus-button[data-v-82f78b3e]{width:28px;height:28px;margin-top:4px}.icon-values-container[data-v-82f78b3e]{margin:0 7px 7px 0}.icon-value-input[data-v-82f78b3e]{width:60%;margin-left:4px}.icons-button-container[data-v-82f78b3e]{line-height:24px}.line[data-v-82f78b3e]{margin-bottom:10px}.mascot-form-item .el-form-item__label[data-v-82f78b3e]:not(.no-top-margin){margin:0;padding:0}.mascot-container[data-v-82f78b3e]{margin-bottom:5px}.name-input[data-v-82f78b3e]{width:40%;margin-right:5px}p.expl[data-v-82f78b3e]{line-height:20px}.pattern-input[data-v-82f78b3e]{width:40%;margin-right:4px}.relays-container[data-v-82f78b3e]{margin:0 10px}.replacement-input[data-v-82f78b3e]{width:60%;margin-left:4px;margin-right:5px}.settings-header-container[data-v-82f78b3e]{height:45px}.value-input[data-v-82f78b3e]{width:60%;margin-left:5px;margin-right:8px}}@media only screen and (max-width:818px) and (min-width:481px){.delete-setting-button[data-v-82f78b3e]{margin:4px 0 0 10px;height:28px}.delete-setting-button-container[data-v-82f78b3e]{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.description>p[data-v-82f78b3e]{line-height:18px;margin:0 15px 10px 0}.icon-minus-button[data-v-82f78b3e]{width:28px;height:28px;margin-top:4px}.input[data-v-82f78b3e]{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.input-container .el-form-item__label span[data-v-82f78b3e]{margin-left:10px}.input-row[data-v-82f78b3e],.nav-container[data-v-82f78b3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.nav-container[data-v-82f78b3e]{height:36px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px 30px 15px 15px}.rate-limit-content[data-v-82f78b3e]{width:65%}.rate-limit-label-container[data-v-82f78b3e]{width:35%}.settings-delete-button[data-v-82f78b3e]{float:right}.settings-header-container[data-v-82f78b3e]{height:36px}.settings-search-input[data-v-82f78b3e]{width:250px;margin:0 0 15px 15px}} -\ No newline at end of file diff --git a/priv/static/adminfe/chunk-commons.c0eb3eb7.css b/priv/static/adminfe/chunk-commons.67f053f7.css diff --git a/priv/static/adminfe/chunk-f625.25a6a4ae.css b/priv/static/adminfe/chunk-f625.25a6a4ae.css @@ -1 +0,0 @@ -.actions-button[data-v-794b0bb8]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-794b0bb8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-794b0bb8]{float:right}.el-icon-edit[data-v-794b0bb8]{margin-right:5px}.tag-container[data-v-794b0bb8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-794b0bb8]{padding-right:20px}.no-hover[data-v-794b0bb8]:hover{color:#606266;background-color:#fff;cursor:auto} -\ No newline at end of file diff --git a/priv/static/adminfe/index.html b/priv/static/adminfe/index.html @@ -1 +1 @@ -<!DOCTYPE html><html><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"><meta name=renderer content=webkit><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><title>Admin FE</title><link rel="shortcut icon" href=favicon.ico><link href=chunk-elementUI.f77689d7.css rel=stylesheet><link href=chunk-libs.5cf7f50a.css rel=stylesheet><link href=app.6fb984d1.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=static/js/runtime.8f631d12.js></script><script type=text/javascript src=static/js/chunk-elementUI.21957ec8.js></script><script type=text/javascript src=static/js/chunk-libs.32ea9181.js></script><script type=text/javascript src=static/js/app.69891fda.js></script></body></html> -\ No newline at end of file +<!DOCTYPE html><html><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"><meta name=renderer content=webkit><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><title>Admin FE</title><link rel="shortcut icon" href=favicon.ico><link href=chunk-elementUI.f77689d7.css rel=stylesheet><link href=chunk-libs.5cf7f50a.css rel=stylesheet><link href=app.61bb0915.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=static/js/runtime.f7228ae8.js></script><script type=text/javascript src=static/js/chunk-elementUI.21957ec8.js></script><script type=text/javascript src=static/js/chunk-libs.32ea9181.js></script><script type=text/javascript src=static/js/app.ac1962ee.js></script></body></html> +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/app.69891fda.js b/priv/static/adminfe/static/js/app.69891fda.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"+aF5":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-pdf",use:"icon-pdf-usage",viewBox:"0 0 1024 1024",content:'<symbol viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" id="icon-pdf"><path d="M869.073 277.307H657.111V65.344l211.962 211.963zm-238.232 26.27V65.344l-476.498-.054v416.957h714.73v-178.67H630.841zm-335.836 360.57c-5.07-3.064-10.944-5.133-17.61-6.201-6.67-1.064-13.603-1.6-20.81-1.6h-48.821v85.641h48.822c7.206 0 14.14-.532 20.81-1.6 6.665-1.065 12.54-3.133 17.609-6.202 5.064-3.063 9.134-7.406 12.208-13.007 3.065-5.602 4.6-12.937 4.6-22.011 0-9.07-1.535-16.408-4.6-22.01-3.074-5.603-7.144-9.94-12.208-13.01zM35.82 541.805v416.904h952.358V541.805H35.821zm331.421 191.179c-3.6 11.071-9.343 20.879-17.209 29.413-7.874 8.542-18.078 15.408-30.617 20.61-12.544 5.206-27.747 7.807-45.621 7.807h-66.036v102.45h-62.831V607.517h128.867c17.874 0 33.077 2.6 45.62 7.802 12.541 5.207 22.745 12.076 30.618 20.615 7.866 8.538 13.604 18.277 17.21 29.212 3.6 10.943 5.401 22.278 5.401 34.018 0 11.477-1.8 22.752-5.402 33.819zM644.9 806.417c-5.343 17.61-13.408 32.818-24.212 45.627-10.807 12.803-24.283 22.879-40.423 30.213-16.146 7.343-35.155 11.007-57.03 11.007h-123.26V607.518h123.26c18.41 0 35.552 2.941 51.428 8.808 15.873 5.869 29.618 14.671 41.22 26.412 11.608 11.744 20.674 26.411 27.217 44.02 6.535 17.61 9.803 38.288 9.803 62.035 0 20.81-2.67 40.02-8.003 57.624zm245.362-146.07h-138.07v66.03h119.66v48.829h-119.66v118.058h-62.83V607.518h200.9v52.829h-.001zm-318.2 25.611c-6.402-8.266-14.877-14.604-25.412-19.01-10.544-4.402-23.551-6.602-39.019-6.602h-44.825v180.088h56.029c9.07 0 17.872-1.463 26.415-4.401 8.535-2.932 16.14-7.802 22.812-14.609 6.665-6.8 12.007-15.667 16.007-26.61 4.003-10.94 6.003-24.275 6.003-40.021 0-14.408-1.4-27.416-4.202-39.019-2.8-11.607-7.406-21.542-13.808-29.816zm0 0" /></symbol>'});s.a.add(i);t.default=i},"0Fbn":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-people",use:"icon-people-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-people"><path d="M104.185 95.254c8.161 7.574 13.145 17.441 13.145 28.28 0 1.508-.098 2.998-.285 4.466h-10.784c.238-1.465.403-2.948.403-4.465 0-8.983-4.36-17.115-11.419-23.216C86 104.66 75.355 107.162 64 107.162c-11.344 0-21.98-2.495-31.22-6.83-7.064 6.099-11.444 14.218-11.444 23.203 0 1.517.165 3 .403 4.465H10.955a35.444 35.444 0 0 1-.285-4.465c0-10.838 4.974-20.713 13.127-28.291C9.294 85.42.003 70.417.003 53.58.003 23.99 28.656.001 64 .001s63.997 23.988 63.997 53.58c0 16.842-9.299 31.85-23.812 41.673zM64 36.867c-29.454 0-53.33-10.077-53.33 15.342 0 25.418 23.876 46.023 53.33 46.023 29.454 0 53.33-20.605 53.33-46.023 0-25.419-23.876-15.342-53.33-15.342zm24.888 25.644c-3.927 0-7.111-2.665-7.111-5.953 0-3.288 3.184-5.954 7.11-5.954 3.928 0 7.111 2.666 7.111 5.954s-3.183 5.953-7.11 5.953zm-3.556 16.372c0 4.11-9.55 7.442-21.332 7.442-11.781 0-21.332-3.332-21.332-7.442 0-1.06.656-2.064 1.8-2.976 3.295 2.626 10.79 4.465 19.532 4.465 8.743 0 16.237-1.84 19.531-4.465 1.145.912 1.801 1.916 1.801 2.976zm-46.22-16.372c-3.927 0-7.11-2.665-7.11-5.953 0-3.288 3.183-5.954 7.11-5.954 3.927 0 7.111 2.666 7.111 5.954s-3.184 5.953-7.11 5.953z" /></symbol>'});s.a.add(i);t.default=i},"1+ww":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-eye-open",use:"icon-eye-open-usage",viewBox:"0 0 1024 1024",content:'<symbol class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" id="icon-eye-open"><defs><style></style></defs><path d="M512 128q69.675 0 135.51 21.163t115.498 54.997 93.483 74.837 73.685 82.006 51.67 74.837 32.17 54.827L1024 512q-2.347 4.992-6.315 13.483T998.87 560.17t-31.658 51.669-44.331 59.99-56.832 64.34-69.504 60.16-82.347 51.5-94.848 34.687T512 896q-69.675 0-135.51-21.163t-115.498-54.826-93.483-74.326-73.685-81.493-51.67-74.496-32.17-54.997L0 513.707q2.347-4.992 6.315-13.483t18.816-34.816 31.658-51.84 44.331-60.33 56.832-64.683 69.504-60.331 82.347-51.84 94.848-34.816T512 128.085zm0 85.333q-46.677 0-91.648 12.331t-81.152 31.83-70.656 47.146-59.648 54.485-48.853 57.686-37.675 52.821-26.325 43.99q12.33 21.674 26.325 43.52t37.675 52.351 48.853 57.003 59.648 53.845T339.2 767.02t81.152 31.488T512 810.667t91.648-12.331 81.152-31.659 70.656-46.848 59.648-54.186 48.853-57.344 37.675-52.651T927.957 512q-12.33-21.675-26.325-43.648t-37.675-52.65-48.853-57.345-59.648-54.186-70.656-46.848-81.152-31.659T512 213.334zm0 128q70.656 0 120.661 50.006T682.667 512 632.66 632.661 512 682.667 391.339 632.66 341.333 512t50.006-120.661T512 341.333zm0 85.334q-35.328 0-60.33 25.002T426.666 512t25.002 60.33T512 597.334t60.33-25.002T597.334 512t-25.002-60.33T512 426.666z" /></symbol>'});s.a.add(i);t.default=i},"18BR":function(e,t,n){"use strict";var a=n("CzPo");n.n(a).a},"28eg":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-exit-fullscreen",use:"icon-exit-fullscreen-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-exit-fullscreen"><path d="M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z" /></symbol>'});s.a.add(i);t.default=i},"2QTO":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-add_col_before",use:"icon-tiptap-add_col_before-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-add_col_before">\n <path d="M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L20.25,18.0625 C20.077411,18.0625 19.9375,17.922589 19.9375,17.75 L19.9375,16.5 C19.9375,15.982233 19.517767,15.5625 19,15.5625 C18.482233,15.5625 18.0625,15.982233 18.0625,16.5 L18.0625,17.75 C18.0625,17.922589 17.922589,18.0625 17.75,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 L17.75,19.9375 C17.922589,19.9375 18.0625,20.077411 18.0625,20.25 L18.0625,21.5 C18.0625,22.017767 18.482233,22.4375 19,22.4375 C19.517767,22.4375 19.9375,22.017767 19.9375,21.5 L19.9375,20.25 C19.9375,20.077411 20.077411,19.9375 20.25,19.9375 L21.5,19.9375 Z M2,19 C2,20.6568542 3.34314575,22 5,22 C6.65685425,22 8,20.6568542 8,19 L8,5 C8,3.34314575 6.65685425,2 5,2 C3.34314575,2 2,3.34314575 2,5 L2,19 Z M-2.7585502e-16,19 L5.81397739e-16,5 C-1.37692243e-16,2.23857625 2.23857625,0 5,0 C7.76142375,0 10,2.23857625 10,5 L10,19 C10,21.7614237 7.76142375,24 5,24 C2.23857625,24 4.43234962e-16,21.7614237 -2.7585502e-16,19 Z" />\n</symbol>'});s.a.add(i);t.default=i},"3PhE":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-nested",use:"icon-nested-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-nested"><path d="M.002 9.2c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-5.043-3.58-9.132-7.997-9.132S.002 4.157.002 9.2zM31.997.066h95.981V18.33H31.997V.066zm0 45.669c0 5.044 3.58 9.132 7.998 9.132 4.417 0 7.997-4.088 7.997-9.132 0-3.263-1.524-6.278-3.998-7.91-2.475-1.63-5.524-1.63-7.998 0-2.475 1.632-4 4.647-4 7.91zM63.992 36.6h63.986v18.265H63.992V36.6zm-31.995 82.2c0 5.043 3.58 9.132 7.998 9.132 4.417 0 7.997-4.089 7.997-9.132 0-5.044-3.58-9.133-7.997-9.133s-7.998 4.089-7.998 9.133zm31.995-9.131h63.986v18.265H63.992V109.67zm0-27.404c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-3.263-1.524-6.277-3.998-7.909-2.475-1.631-5.524-1.631-7.998 0-2.475 1.632-4 4.646-4 7.91zm31.995-9.13h31.991V91.4H95.987V73.135z" /></symbol>'});s.a.add(i);t.default=i},"5TQQ":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-theme",use:"icon-theme-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-theme"><path d="M125.5 36.984L95.336 2.83C93.735 1.018 91.565 0 89.3 0c-2.263 0-4.433 1.018-6.033 2.83l-3.786 4.286c-1.6 1.812-3.77 2.83-6.032 2.831H54.553c-2.263 0-4.434-1.018-6.033-2.83L44.734 2.83C43.134 1.018 40.964 0 38.701 0c-2.263 0-4.434 1.018-6.034 2.83L2.5 36.984C.9 38.796 0 41.254 0 43.815c0 2.562.899 5.02 2.5 6.831L14.565 64.31c2.178 2.468 5.367 3.403 8.33 2.444 1.35-.435 2.709.592 2.709 2.18v49.407c0 5.313 3.84 9.66 8.532 9.66h59.726c4.693 0 8.532-4.347 8.532-9.66V68.934c0-1.59 1.36-2.616 2.71-2.181 2.962.96 6.15.024 8.329-2.444L125.5 50.646c1.6-1.811 2.499-4.269 2.499-6.83 0-2.563-.899-5.02-2.5-6.832z" /></symbol>'});s.a.add(i);t.default=i},"6S0t":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-table",use:"icon-tiptap-table-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-table">\n <path fill-rule="evenodd" d="M17,17 L17,22 L19,22 C20.6568542,22 22,20.6568542 22,19 L22,17 L17,17 Z M15,17 L9,17 L9,22 L15,22 L15,17 Z M17,15 L22,15 L22,9 L17,9 L17,15 Z M15,15 L15,9 L9,9 L9,15 L15,15 Z M17,7 L22,7 L22,5 C22,3.34314575 20.6568542,2 19,2 L17,2 L17,7 Z M15,7 L15,2 L9,2 L9,7 L15,7 Z M24,16.1768671 L24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 2.11453371e-15,21.7614237 1.77635684e-15,19 L0,5 C-3.38176876e-16,2.23857625 2.23857625,2.28362215e-15 5,0 L19,0 C21.7614237,-5.07265313e-16 24,2.23857625 24,5 L24,7.82313285 C24.0122947,7.88054124 24.0187107,7.93964623 24.0187107,8 C24.0187107,8.06035377 24.0122947,8.11945876 24,8.17686715 L24,15.8231329 C24.0122947,15.8805412 24.0187107,15.9396462 24.0187107,16 C24.0187107,16.0603538 24.0122947,16.1194588 24,16.1768671 Z M7,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,7 L7,7 L7,2 Z M2,9 L2,15 L7,15 L7,9 L2,9 Z M2,17 L2,19 C2,20.6568542 3.34314575,22 5,22 L7,22 L7,17 L2,17 Z" />\n</symbol>'});s.a.add(i);t.default=i},"6xvN":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-form",use:"icon-form-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-form"><path d="M84.068 23.784c-1.02 0-1.877-.32-2.572-.96a8.588 8.588 0 0 1-1.738-2.237 11.524 11.524 0 0 1-1.042-2.621c-.232-.895-.348-1.641-.348-2.238V0h.278c.834 0 1.622.085 2.363.256.742.17 1.645.575 2.711 1.214 1.066.64 2.363 1.535 3.892 2.686 1.53 1.15 3.453 2.664 5.77 4.54 2.502 2.045 4.494 3.771 5.977 5.178 1.483 1.406 2.618 2.6 3.406 3.58.787.98 1.274 1.812 1.46 2.494.185.682.277 1.278.277 1.79v2.046H84.068zM127.3 84.01c.278.682.464 1.535.556 2.558.093 1.023-.37 2.003-1.39 2.94-.463.427-.88.832-1.25 1.215-.372.384-.696.704-.974.96a6.69 6.69 0 0 1-.973.767l-11.816-10.741a44.331 44.331 0 0 0 1.877-1.535 31.028 31.028 0 0 1 1.737-1.406c1.112-.938 2.317-1.343 3.615-1.215 1.297.128 2.363.405 3.197.83.927.427 1.923 1.173 2.989 2.239 1.065 1.065 1.876 2.195 2.432 3.388zM78.23 95.902c2.038 0 3.752-.511 5.143-1.534l-26.969 25.83H18.037c-1.761 0-3.684-.47-5.77-1.407a24.549 24.549 0 0 1-5.838-3.709 21.373 21.373 0 0 1-4.518-5.306c-1.204-2.003-1.807-4.07-1.807-6.202V16.495c0-1.79.44-3.665 1.32-5.626A18.41 18.41 0 0 1 5.04 5.562a21.798 21.798 0 0 1 5.213-3.964C12.198.533 14.237 0 16.37 0h53.24v15.984c0 1.62.278 3.367.834 5.242a16.704 16.704 0 0 0 2.572 5.179c1.159 1.577 2.665 2.898 4.518 3.964 1.853 1.066 4.078 1.598 6.673 1.598h20.295v42.325L85.458 92.45c1.02-1.364 1.529-2.856 1.529-4.476 0-2.216-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1c-2.409 0-4.448.789-6.116 2.366-1.668 1.577-2.502 3.474-2.502 5.69 0 2.217.834 4.092 2.502 5.626 1.668 1.535 3.707 2.302 6.117 2.302h52.13zM26.1 47.951c-2.41 0-4.449.789-6.117 2.366-1.668 1.577-2.502 3.473-2.502 5.69 0 2.216.834 4.092 2.502 5.626 1.668 1.534 3.707 2.302 6.117 2.302h52.13c2.409 0 4.47-.768 6.185-2.302 1.715-1.534 2.572-3.41 2.572-5.626 0-2.217-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1zm52.407 64.063l1.807-1.663 3.476-3.196a479.75 479.75 0 0 0 4.587-4.284 500.757 500.757 0 0 1 5.004-4.667c3.985-3.666 8.48-7.758 13.485-12.276l11.677 10.741-13.485 12.404-5.004 4.603-4.587 4.22a179.46 179.46 0 0 0-3.267 3.068c-.88.853-1.367 1.322-1.46 1.407-.463.341-.973.703-1.529 1.087-.556.383-1.112.703-1.668.959-.556.256-1.413.575-2.572.959a83.5 83.5 0 0 1-3.545 1.087 72.2 72.2 0 0 1-3.475.895c-1.112.256-1.946.426-2.502.511-1.112.17-1.854.043-2.224-.383-.371-.426-.464-1.151-.278-2.174.092-.511.278-1.279.556-2.302.278-1.023.602-2.067.973-3.132l1.042-3.005c.325-.938.58-1.577.765-1.918a10.157 10.157 0 0 1 2.224-2.941z" /></symbol>'});s.a.add(i);t.default=i},"7x1v":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-add_row_before",use:"icon-tiptap-add_row_before-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-add_row_before">\n <path d="M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L20.25,18.0625 C20.077411,18.0625 19.9375,17.922589 19.9375,17.75 L19.9375,16.5 C19.9375,15.982233 19.517767,15.5625 19,15.5625 C18.482233,15.5625 18.0625,15.982233 18.0625,16.5 L18.0625,17.75 C18.0625,17.922589 17.922589,18.0625 17.75,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 L17.75,19.9375 C17.922589,19.9375 18.0625,20.077411 18.0625,20.25 L18.0625,21.5 C18.0625,22.017767 18.482233,22.4375 19,22.4375 C19.517767,22.4375 19.9375,22.017767 19.9375,21.5 L19.9375,20.25 C19.9375,20.077411 20.077411,19.9375 20.25,19.9375 L21.5,19.9375 Z M5,2 C3.34314575,2 2,3.34314575 2,5 C2,6.65685425 3.34314575,8 5,8 L19,8 C20.6568542,8 22,6.65685425 22,5 C22,3.34314575 20.6568542,2 19,2 L5,2 Z M5,0 L19,0 C21.7614237,-5.07265313e-16 24,2.23857625 24,5 C24,7.76142375 21.7614237,10 19,10 L5,10 C2.23857625,10 3.38176876e-16,7.76142375 0,5 C-1.2263553e-15,2.23857625 2.23857625,5.07265313e-16 5,0 Z" />\n</symbol>'});s.a.add(i);t.default=i},"8CrX":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-combine_cells",use:"icon-tiptap-combine_cells-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-combine_cells">\n <path d="M2,19 C2,20.6568542 3.34314575,22 5,22 L19,22 C20.6568542,22 22,20.6568542 22,19 L22,5 C22,3.34314575 20.6568542,2 19,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,19 Z M-1.16403344e-15,19 L-3.0678068e-16,5 C-6.44957556e-16,2.23857625 2.23857625,0 5,0 L19,0 C21.7614237,0 24,2.23857625 24,5 L24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 9.50500275e-16,21.7614237 -1.16403344e-15,19 Z M12,10 C12.5522847,10 13,10.4477153 13,11 L13,13 C13,13.5522847 12.5522847,14 12,14 C11.4477153,14 11,13.5522847 11,13 L11,11 C11,10.4477153 11.4477153,10 12,10 Z M12,16 C12.5522847,16 13,16.4477153 13,17 L13,20 C13,20.5522847 12.5522847,21 12,21 C11.4477153,21 11,20.5522847 11,20 L11,17 C11,16.4477153 11.4477153,16 12,16 Z M12,3 C12.5522847,3 13,3.44771525 13,4 L13,7 C13,7.55228475 12.5522847,8 12,8 C11.4477153,8 11,7.55228475 11,7 L11,4 C11,3.44771525 11.4477153,3 12,3 Z" />\n</symbol>'});s.a.add(i);t.default=i},"8L8/":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-checklist",use:"icon-tiptap-checklist-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-checklist"><title>checklist-alternate</title><path d="M21,0H3A3,3,0,0,0,0,3V21a3,3,0,0,0,3,3H21a3,3,0,0,0,3-3V3A3,3,0,0,0,21,0Zm1,21a1,1,0,0,1-1,1H3a1,1,0,0,1-1-1V3A1,1,0,0,1,3,2H21a1,1,0,0,1,1,1Z" /><path d="M11.249,4.5a1.251,1.251,0,0,0-1.75.25L7.365,7.6l-.482-.481A1.25,1.25,0,0,0,5.116,8.883l1.5,1.5A1.262,1.262,0,0,0,8.5,10.249l3-4A1.25,1.25,0,0,0,11.249,4.5Z" /><path d="M11.249,13.5a1.251,1.251,0,0,0-1.75.25L7.365,16.6l-.482-.481a1.25,1.25,0,1,0-1.767,1.768l1.5,1.5A1.265,1.265,0,0,0,8.5,19.249l3-4A1.25,1.25,0,0,0,11.249,13.5Z" /><path d="M18.5,7.749H14a1.25,1.25,0,0,0,0,2.5h4.5a1.25,1.25,0,0,0,0-2.5Z" /><path d="M18.5,15.749H14a1.25,1.25,0,0,0,0,2.5h4.5a1.25,1.25,0,1,0,0-2.5Z" /></symbol>'});s.a.add(i);t.default=i},"94Jb":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-dashboard",use:"icon-dashboard-usage",viewBox:"0 0 128 100",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 100" id="icon-dashboard"><path d="M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z" /></symbol>'});s.a.add(i);t.default=i},"9NTF":function(e,t,n){},"9i3r":function(e,t,n){"use strict";n.d(t,"a",function(){return a});var a=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"localhost";return e.match(/https?:\/\//)?e:function(e){return e.startsWith("localhost:")||e.startsWith("127.0.0.1:")}(e)?"http://".concat(e):"https://".concat(e)}},CzPo:function(e,t,n){},Dza5:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-delete_table",use:"icon-tiptap-delete_table-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-delete_table">\n <path d="M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z M12.2898787,17 L9,17 L9,22 L12.6736312,22 C13.0297295,22.7496048 13.515133,23.4258795 14.1010173,24 L5,24 C2.23857625,24 -1.43817996e-15,21.7614237 -1.77635684e-15,19 L-3.55271368e-15,5 C-3.89089055e-15,2.23857625 2.23857625,5.07265313e-16 5,-1.77635684e-15 L19,-1.77635684e-15 C21.7614237,-2.28362215e-15 24,2.23857625 24,5 L24,7.82313285 C24.0122947,7.88054124 24.0187107,7.93964623 24.0187107,8 C24.0187107,8.06035377 24.0122947,8.11945876 24,8.17686715 L24,14.1010173 C23.4258795,13.515133 22.7496048,13.0297295 22,12.6736312 L22,9 L17,9 L17,12.2898787 C16.2775651,12.5048858 15.6040072,12.8333806 15,13.2546893 L15,9 L9,9 L9,15 L13.2546893,15 C12.8333806,15.6040072 12.5048858,16.2775651 12.2898787,17 Z M17,7 L22,7 L22,5 C22,3.34314575 20.6568542,2 19,2 L17,2 L17,7 Z M15,7 L15,2 L9,2 L9,7 L15,7 Z M7,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,7 L7,7 L7,2 Z M2,9 L2,15 L7,15 L7,9 L2,9 Z M2,17 L2,19 C2,20.6568542 3.34314575,22 5,22 L7,22 L7,17 L2,17 Z" />\n</symbol>'});s.a.add(i);t.default=i},ENUZ:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-delete_row",use:"icon-tiptap-delete_row-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-delete_row">\n <path d="M13.2546893,15 C12.8333806,15.6040072 12.5048858,16.2775651 12.2898787,17 L5,17 C2.23857625,17 3.38176876e-16,14.7614237 0,12 C-1.2263553e-15,9.23857625 2.23857625,7 5,7 L19,7 C21.7614237,7 24,9.23857625 24,12 C24,12.6294813 23.8836754,13.2317936 23.6713497,13.7866134 C23.1547532,13.3234155 22.5689168,12.9358807 21.9312708,12.6414391 C21.9762852,12.4347751 22,12.220157 22,12 C22,10.3431458 20.6568542,9 19,9 L5,9 C3.34314575,9 2,10.3431458 2,12 C2,13.6568542 3.34314575,15 5,15 L13.2546893,15 Z M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z" />\n</symbol>'});s.a.add(i);t.default=i},EqXK:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-shopping",use:"icon-shopping-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-shopping"><path d="M42.913 101.36c1.642 0 3.198.332 4.667.996a12.28 12.28 0 0 1 3.89 2.772c1.123 1.184 1.987 2.582 2.592 4.193.605 1.612.908 3.318.908 5.118 0 1.8-.303 3.507-.908 5.118-.605 1.611-1.469 3.01-2.593 4.194a13.3 13.3 0 0 1-3.889 2.843 10.582 10.582 0 0 1-4.667 1.066c-1.729 0-3.306-.355-4.732-1.066a13.604 13.604 0 0 1-3.825-2.843c-1.123-1.185-1.988-2.583-2.593-4.194a14.437 14.437 0 0 1-.907-5.118c0-1.8.302-3.506.907-5.118.605-1.61 1.47-3.009 2.593-4.193a12.515 12.515 0 0 1 3.825-2.772c1.426-.664 3.003-.996 4.732-.996zm53.932.285c1.643 0 3.22.331 4.733.995a11.386 11.386 0 0 1 3.889 2.772c1.08 1.185 1.945 2.583 2.593 4.194.648 1.61.972 3.317.972 5.118 0 1.8-.324 3.506-.972 5.117-.648 1.611-1.513 3.01-2.593 4.194a12.253 12.253 0 0 1-3.89 2.843 11 11 0 0 1-4.732 1.066 10.58 10.58 0 0 1-4.667-1.066 12.478 12.478 0 0 1-3.824-2.843c-1.08-1.185-1.945-2.583-2.593-4.194a13.581 13.581 0 0 1-.973-5.117c0-1.801.325-3.507.973-5.118.648-1.611 1.512-3.01 2.593-4.194a11.559 11.559 0 0 1 3.824-2.772 11.212 11.212 0 0 1 4.667-.995zm21.781-80.747c2.42 0 4.3.355 5.64 1.066 1.34.71 2.29 1.587 2.852 2.63a6.427 6.427 0 0 1 .778 3.34c-.044 1.185-.195 2.204-.454 3.057-.26.853-.8 2.606-1.62 5.26a589.268 589.268 0 0 1-2.788 8.743 1236.373 1236.373 0 0 0-3.047 9.453c-.994 3.128-1.75 5.592-2.269 7.393-1.123 3.79-2.55 6.42-4.278 7.89-1.728 1.469-3.846 2.203-6.352 2.203H39.023l1.945 12.795h65.342c4.148 0 6.223 1.943 6.223 5.828 0 1.896-.41 3.53-1.232 4.905-.821 1.374-2.442 2.061-4.862 2.061H38.505c-1.729 0-3.176-.426-4.343-1.28-1.167-.852-2.14-1.966-2.917-3.34a21.277 21.277 0 0 1-1.88-4.478 44.128 44.128 0 0 1-1.102-4.55c-.087-.568-.324-1.942-.713-4.122-.39-2.18-.865-4.904-1.426-8.174l-1.88-10.947c-.692-4.027-1.383-8.079-2.075-12.154-1.642-9.572-3.5-20.234-5.574-31.986H6.87c-1.296 0-2.377-.356-3.24-1.067a9.024 9.024 0 0 1-2.14-2.558 10.416 10.416 0 0 1-1.167-3.2C.108 8.53 0 7.488 0 6.54c0-1.896.583-3.46 1.75-4.69C2.917.615 4.494 0 6.482 0h13.095c1.728 0 3.111.284 4.148.853 1.037.569 1.858 1.28 2.463 2.132a8.548 8.548 0 0 1 1.297 2.701c.26.948.475 1.754.648 2.417.173.758.346 1.825.519 3.199.173 1.374.345 2.772.518 4.193.26 1.706.519 3.507.778 5.403h88.678z" /></symbol>'});s.a.add(i);t.default=i},F3lI:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-bug",use:"icon-bug-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-bug"><path d="M127.88 73.143c0 1.412-.506 2.635-1.518 3.669-1.011 1.033-2.209 1.55-3.592 1.55h-17.887c0 9.296-1.783 17.178-5.35 23.645l16.609 17.044c1.011 1.034 1.517 2.257 1.517 3.67 0 1.412-.506 2.635-1.517 3.668-.958 1.033-2.155 1.55-3.593 1.55-1.438 0-2.635-.517-3.593-1.55l-15.811-16.063a15.49 15.49 0 0 1-1.196 1.06c-.532.434-1.65 1.208-3.353 2.322a50.104 50.104 0 0 1-5.192 2.974c-1.758.87-3.94 1.658-6.546 2.364-2.607.706-5.189 1.06-7.748 1.06V47.044H58.89v73.062c-2.716 0-5.417-.367-8.106-1.102-2.688-.734-5.003-1.631-6.945-2.692a66.769 66.769 0 0 1-5.268-3.179c-1.571-1.057-2.73-1.94-3.476-2.65L33.9 109.34l-14.611 16.877c-1.066 1.14-2.344 1.711-3.833 1.711-1.277 0-2.422-.434-3.434-1.304-1.012-.978-1.557-2.187-1.635-3.627-.079-1.44.333-2.705 1.236-3.794l16.129-18.51c-3.087-6.197-4.63-13.644-4.63-22.342H5.235c-1.383 0-2.58-.517-3.592-1.55S.125 74.545.125 73.132c0-1.412.506-2.635 1.518-3.668 1.012-1.034 2.21-1.55 3.592-1.55h17.887V43.939L9.308 29.833c-1.012-1.033-1.517-2.256-1.517-3.669 0-1.412.505-2.635 1.517-3.668 1.012-1.034 2.21-1.55 3.593-1.55s2.58.516 3.593 1.55l13.813 14.106h67.396l13.814-14.106c1.012-1.034 2.21-1.55 3.592-1.55 1.384 0 2.581.516 3.593 1.55 1.012 1.033 1.518 2.256 1.518 3.668 0 1.413-.506 2.636-1.518 3.67l-13.814 14.105v23.975h17.887c1.383 0 2.58.516 3.593 1.55 1.011 1.033 1.517 2.256 1.517 3.668l-.005.01zM89.552 26.175H38.448c0-7.23 2.489-13.386 7.466-18.469C50.892 2.623 56.92.082 64 .082c7.08 0 13.108 2.541 18.086 7.624 4.977 5.083 7.466 11.24 7.466 18.469z" /></symbol>'});s.a.add(i);t.default=i},"F9+T":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-international",use:"icon-international-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-international"><path d="M83.287 103.01c-1.57-3.84-6.778-10.414-15.447-19.548-2.327-2.444-2.182-4.306-1.338-9.862v-.64c.553-3.81 1.513-6.05 14.313-8.087 6.516-1.018 8.203 1.57 10.589 5.178l.785 1.193a12.625 12.625 0 0 0 6.43 5.207c1.134.524 2.53 1.164 4.421 2.24 4.596 2.53 4.596 5.41 4.596 11.753v.727a26.91 26.91 0 0 1-5.178 17.454 59.055 59.055 0 0 1-19.025 11.026c3.49-6.546.814-14.313 0-16.553l-.146-.087zM64 5.12a58.502 58.502 0 0 1 25.484 5.818 54.313 54.313 0 0 0-12.859 10.327c-.93 1.28-1.716 2.473-2.472 3.579-2.444 3.694-3.637 5.352-5.818 5.614a25.105 25.105 0 0 1-4.219 0c-4.276-.29-10.094-.64-11.956 4.422-1.193 3.23-1.396 11.956 2.444 16.495.66 1.077.778 2.4.32 3.578a7.01 7.01 0 0 1-2.066 3.229 18.938 18.938 0 0 1-2.909-2.91 18.91 18.91 0 0 0-8.32-6.603c-1.25-.349-2.647-.64-3.985-.93-3.782-.786-8.03-1.688-9.019-3.812a14.895 14.895 0 0 1-.727-5.818 21.935 21.935 0 0 0-1.396-9.25 8.873 8.873 0 0 0-5.557-4.946A58.705 58.705 0 0 1 64 5.12zM0 64c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64z" /></symbol>'});s.a.add(i);t.default=i},FDDl:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-qq",use:"icon-qq-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-qq"><path d="M18.448 57.545l-.244-.744-.198-.968-.132-.53v-2.181l.236-.859.24-.908.317-.953.428-1.06.561-1.103.794-1.104v-.773l.077-.724.123-.984.34-1.106.313-1.194.25-.548.289-.511.371-.569.405-.423v-2.73l.234-1.407.236-1.633.42-1.955.577-2.035.43-1.118.426-1.217.468-1.135.559-1.216.57-1.332.655-1.247.737-1.331.929-1.33.43-.762.457-.624.995-1.406 1.025-1.403 1.163-1.444 1.246-1.405 1.352-1.384 1.41-1.423 1.708-1.536 1.083-.934 1.322-1.008 1.34-.89 1.448-.855 1.392-.76 1.57-.63 1.667-.775 1.657-.532 1.653-.552 1.787-.548 1.785-.417 1.876-.347L59.128.68l1.879-.245 1.876-.252 2.002-.106h5.912l1.97.243 1.981.231 2.019.207 1.874.441 1.979.413 1.857.475 2.035.53 1.862.646 1.782.738 1.904.78 1.736.853 1.689.95 1.655 1.044 1.425.971.662.548.693.401 1.323 1.1 1.115 1.064 1.112 1.1 1.083 1.214.894 1.178 1.064 1.217.74 1.306.752 1.162.798 1.352.661 1.175 1.113 2.489.546 1.286.428 1.192.428 1.294.384 1.217.267 1.047.347 1.231.607 2.198.388 1.924.253 1.861.217 1.497.342 2.28.077.362.274.41.737 1.18.473.8.42.832.534.892.472 1.07.307 1.093.334 1.2.252 1.232.115.605.106.746v.648l-.106.643v.8l-.192.774-.35 1.5-.403.76-.299.852v.213l.142.264.4.623 1.746 2.53 1.377 1.9.66 1.267.889 1.389.774 1.52.893 1.627.894 1.828 1.006 2.069.567 1.268.518 1.239.447 1.307.44 1.175.336 1.235.342 1.16.432 2.261.343 2.31.235 2.05v2.891l-.158 1.025-.226 1.768-.308 1.59-.48 1.44-.18.588-.336.707-.28.493-.375.607-.33.383-.42.494-.375.4-.401.34-.48.207-.432.207-.355.114h-.543l-.346-.114-.66-.32-.302-.212-.317-.223-.347-.304-.35-.342-.579-.63-.684-.89-.539-.917-.538-.734-.526-.855-.741-1.517-.833-1.579-.098-.055h-.138l-.338.247-.196.415-.326.516-.567 1.533-.856 2.182-1.096 2.626-.824 1.308-.864 1.366-1.027 1.536-1.09 1.503-.557.68-.676.743-1.555 1.497.136.135.21.214.777.446 3.235 1.524 1.41.779 1.347.756 1.332.953 1.187.982.574.443.432.511.445.593.367.643.198.533.242.64.105.554.115.647-.115.433v.44l-.105.454-.242.415-.092.325-.22.394-.587.784-.543.627-.42.47-.35.348-.893.638-1.01.556-1.077.532-1.155.511-1.287.495-.693.207-.608.167-1.496.342-1.545.325-1.552.323-1.689.27-1.74.072-1.785.21h-5.539l-1.998-.114-1.86-.168-2.005-.27-1.99-.209-2.095-.286-2.03-.495-1.981-.374-1.968-.552-2.019-.707-1.98-.585-1.044-.342-.927-.323-.586-.223-.582-.12h-1.647l-1.904-.131-.962-.096-1.24-.135-.795.705-1.085.665-1.471.701-1.628.875-.99.475-1.033.376-2.281.914-1.24.305-1.3.343-1.803.344-1.13.086-1.193.1-1.246.135-1.45.053h-5.926l-3.346-.053-3.25-.321-1.644-.23-1.589-.23-1.546-.227-1.547-.305-1.442-.456-1.434-.325-1.294-.51-1.223-.474-1.142-.533-.99-.583-.984-.71-.336-.343-.44-.415-.334-.362-.3-.417-.278-.415-.215-.42-.311-.89-.109-.46-.138-.51v-.473l.138-.533v-.53l.109-.53v-1.069l.052-.564.259-.647.215-.646.39-.779.286-.3.236-.348.615-.738.49-.38.464-.266.428-.338.676-.21.543-.324.676-.341.77-.227.775-.231.897-.192.85-.11 1.008-.13 1.093-.081.284-.092h.063l.137-.115v-.13l-.2-.266-.58-.27-1.45-1.231-.975-.761-1.127-.967-1.136-1.082-1.181-1.382-1.36-1.558-.508-.843-.672-.87-.58-1.007-.522-1.1-.704-1.047-.459-1.194-.547-1.192-.546-1.33-.397-1.273-.378-1.575-.112-.057h-.115l-.059-.113h-.14l-.23.113-.114.057-.158.264-.057.321-.119.286-.206.477-.664 1.157-.345.701-.546.612-.58.736-.641.816-.677.724-.795.701-.734.658-.814.524-.89.546-.855.325-1.008.247-.99.095h-.233l-.228-.095-.18-.384-.29-.188-.38-.912-.237-.493-.255-.707-.21-.734-.113-.724-.313-1.648-.12-.972v-3.185l.12-2.379.196-1.214.23-1.252.21-1.347.374-1.254.42-1.443.431-1.407.578-1.448.545-1.38.754-1.4.699-1.52.855-1.425 1.006-1.538 1.023-1.382 1.069-1.538.891-1.071 1.142-1.227 1.202-1.237.56-.59.678-.662.985-.836 1.012-.853 1.647-1.446 1.242-.889z" /></symbol>'});s.a.add(i);t.default=i},GPBF:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-link",use:"icon-link-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-link"><path d="M115.625 127.937H.063V12.375h57.781v12.374H12.438v90.813h90.813V70.156h12.374z" /><path d="M116.426 2.821l8.753 8.753-56.734 56.734-8.753-8.745z" /><path d="M127.893 37.982h-12.375V12.375H88.706V0h39.187z" /></symbol>'});s.a.add(i);t.default=i},HIWW:function(e,t,n){"use strict";var a=n("MoCq");n.n(a).a},Hnev:function(e,t,n){"use strict";var a=n("UqWv");n.n(a).a},ICep:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-guide 2",use:"icon-guide 2-usage",viewBox:"0 0 1000 1000",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000" id="icon-guide 2"><path d="M11.576 547.9l282.848 126.404 409.285-383.26 137.057-128.341L361.234 714.22l362.77 146.362c8.742 3.327 18.733-1.33 21.855-10.644v-.666L999.985.374 10.327 514.636c-8.742 4.657-11.864 15.302-8.117 24.616 2.497 3.991 5.62 7.318 9.366 8.648zM360.61 999.626l141.112-161.663-141.112-61.206v222.869z" /></symbol>'});s.a.add(i);t.default=i},JYDz:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-language",use:"icon-language-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-language"><path d="M84.742 36.8c2.398 7.2 5.595 12.8 11.19 18.4 4.795-4.8 7.992-11.2 10.39-18.4h-21.58zm-52.748 40h20.78l-10.39-28-10.39 28z" /><path d="M111.916 0H16.009C7.218 0 .025 7.2.025 16v96c0 8.8 7.193 16 15.984 16h95.907c8.791 0 15.984-7.2 15.984-16V16c0-8.8-6.394-16-15.984-16zM72.754 103.2c-1.598 1.6-3.197 1.6-4.795 1.6-.8 0-2.398 0-3.197-.8-.8-.8-1.599 0-1.599-.8s-.799-1.6-1.598-3.2c-.8-1.6-.8-2.4-1.599-4l-3.196-8.8H28.797L25.6 96c-1.598 3.2-2.398 5.6-3.197 7.2-.8 1.6-2.398 1.6-4.795 1.6-1.599 0-3.197-.8-4.796-1.6-1.598-1.6-2.397-2.4-2.397-4 0-.8 0-1.6.799-3.2.8-1.6.8-2.4 1.598-4l17.583-44.8c.8-1.6.8-3.2 1.599-4.8.799-1.6 1.598-3.2 2.397-4 .8-.8 1.599-2.4 3.197-3.2 1.599-.8 3.197-.8 4.796-.8 1.598 0 3.196 0 4.795.8 1.598.8 2.398 1.6 3.197 3.2.799.8 1.598 2.4 2.397 4 .8 1.6 1.599 3.2 2.398 5.6l17.583 44c1.598 3.2 2.398 5.6 2.398 7.2-.8.8-1.599 2.4-2.398 4zM116.711 72c-8.791-3.2-15.185-7.2-20.78-12-5.594 5.6-12.787 9.6-21.579 12l-2.397-4c8.791-2.4 15.984-5.6 21.579-11.2C87.939 51.2 83.144 44 81.545 36h-7.992v-3.2h21.58c-1.6-2.4-3.198-5.6-4.796-8l2.397-.8c1.599 2.4 3.997 5.6 5.595 8.8h19.98v4h-7.992c-2.397 8-6.393 15.2-11.189 20 5.595 4.8 11.988 8.8 20.78 11.2l-3.197 4z" /></symbol>'});s.a.add(i);t.default=i},Kcm3:function(e,t,n){},Kj24:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-password",use:"icon-password-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-password"><path d="M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z" /></symbol>'});s.a.add(i);t.default=i},LjVp:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-delete_col",use:"icon-tiptap-delete_col-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-delete_col">\n <path d="M12.6414391,21.9312708 C12.9358807,22.5689168 13.3234155,23.1547532 13.7866134,23.6713497 C13.2317936,23.8836754 12.6294813,24 12,24 C9.23857625,24 7,21.7614237 7,19 L7,5 C7,2.23857625 9.23857625,0 12,0 C14.7614237,0 17,2.23857625 17,5 L17,12.2898787 C16.2775651,12.5048858 15.6040072,12.8333806 15,13.2546893 L15,5 C15,3.34314575 13.6568542,2 12,2 C10.3431458,2 9,3.34314575 9,5 L9,19 C9,20.6568542 10.3431458,22 12,22 C12.220157,22 12.4347751,21.9762852 12.6414391,21.9312708 Z M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z" />\n</symbol>'});s.a.add(i);t.default=i},LxGF:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-peoples",use:"icon-peoples-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-peoples"><path d="M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z" /><path d="M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z" /></symbol>'});s.a.add(i);t.default=i},MEYL:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-money",use:"icon-money-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-money"><path d="M54.122 127.892v-28.68H7.513V87.274h46.609v-12.4H7.513v-12.86h38.003L.099 0h22.6l32.556 45.07c3.617 5.144 6.44 9.611 8.487 13.385 1.788-3.05 4.89-7.779 9.301-14.186L103.93 0h24.01L82.385 62.013h38.34v12.862h-46.41v12.4h46.41v11.937h-46.41v28.68H54.123z" /></symbol>'});s.a.add(i);t.default=i},MMMJ:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-example",use:"icon-example-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-example"><path d="M96.258 57.462h31.421C124.794 27.323 100.426 2.956 70.287.07v31.422a32.856 32.856 0 0 1 25.971 25.97zm-38.796-25.97V.07C27.323 2.956 2.956 27.323.07 57.462h31.422a32.856 32.856 0 0 1 25.97-25.97zm12.825 64.766v31.421c30.46-2.885 54.507-27.253 57.713-57.712H96.579c-2.886 13.466-13.146 23.726-26.292 26.291zM31.492 70.287H.07c2.886 30.46 27.253 54.507 57.713 57.713V96.579c-13.466-2.886-23.726-13.146-26.291-26.292z" /></symbol>'});s.a.add(i);t.default=i},MoCq:function(e,t,n){},MokB:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-list",use:"icon-list-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-list"><path d="M1.585 12.087c0 6.616 3.974 11.98 8.877 11.98 4.902 0 8.877-5.364 8.877-11.98 0-6.616-3.975-11.98-8.877-11.98-4.903 0-8.877 5.364-8.877 11.98zM125.86.107H35.613c-1.268 0-2.114 1.426-2.114 2.852v18.255c0 1.712 1.057 2.853 2.114 2.853h90.247c1.268 0 2.114-1.426 2.114-2.853V2.96c0-1.711-1.057-2.852-2.114-2.852zM.106 62.86c0 6.615 3.974 11.979 8.876 11.979 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zM124.17 50.88H33.921c-1.268 0-2.114 1.425-2.114 2.851v18.256c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852V53.73c0-1.426-.846-2.852-2.114-2.852zM.106 115.913c0 6.616 3.974 11.98 8.876 11.98 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zm124.064-11.98H33.921c-1.268 0-2.114 1.426-2.114 2.853v18.255c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852v-18.255c0-1.427-.846-2.853-2.114-2.853z" /></symbol>'});s.a.add(i);t.default=i},NgVs:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-remove",use:"icon-tiptap-remove-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-remove"><title>delete-2-alternate</title><path d="M20.485,3.511A12.01,12.01,0,1,0,24,12,12.009,12.009,0,0,0,20.485,3.511Zm-1.767,15.21A9.51,9.51,0,1,1,21.5,12,9.508,9.508,0,0,1,18.718,18.721Z" /><path d="M16.987,7.01a1.275,1.275,0,0,0-1.8,0l-3.177,3.177L8.829,7.01A1.277,1.277,0,0,0,7.024,8.816L10.2,11.993,7.024,15.171a1.277,1.277,0,0,0,1.805,1.806L12.005,13.8l3.177,3.178a1.277,1.277,0,0,0,1.8-1.806l-3.176-3.178,3.176-3.177A1.278,1.278,0,0,0,16.987,7.01Z" /></symbol>'});s.a.add(i);t.default=i},P8iQ:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-settings",use:"icon-settings-usage",viewBox:"0 0 490.2 490.2",content:'<symbol xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 490.2 490.2" id="icon-settings">\r\n<g>\r\n\t<g>\r\n\t\t<g>\r\n\t\t\t<path d="M469.1,173.1h-37.5c-1-3.1-3.1-6.3-4.2-9.4l26.1-26.1c8.3-8.3,8.3-20.9,0-29.2l-71.9-71.9c-8.3-8.3-20.9-8.3-29.2,0\r\n\t\t\t\tl-26.1,26.1c-3.1-2.1-6.3-3.1-9.4-4.2V20.9C316.9,9.4,307.5,0,296,0H193.9C182.4,0,173,9.4,173,20.9v37.5c-3.1,1-6.3,3.1-9.4,4.2\r\n\t\t\t\tl-26.1-26.1c-8.3-8.3-20.9-8.3-29.2,0l-71.9,71.9c-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l26.1,26.1\r\n\t\t\t\tc-2.1,3.1-3.1,6.3-4.2,9.4H20.9C9.4,173.1,0,182.5,0,194v102.2c0,11.5,9.4,20.9,20.9,20.9h37.5c1,3.1,3.1,6.3,4.2,9.4l-26.1,26.1\r\n\t\t\t\tc-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l71.9,71.9c8.3,8.3,20.9,8.3,29.2,0l26.1-26.1c3.1,2.1,6.3,3.1,9.4,4.2v37.5\r\n\t\t\t\tc0,11.5,9.4,20.9,20.9,20.9h102.2c11.5,0,20.9-9.4,20.9-20.9v-37.5c3.1-1,6.3-3.1,9.4-4.2l26.1,26.1c8.3,8.3,20.9,8.3,29.2,0\r\n\t\t\t\tl71.9-71.9c8.3-8.3,8.3-20.9,0-29.2l-26.1-26.1c2.1-3.1,3.1-6.3,4.2-9.4h37.5c11.5,0,20.9-9.4,20.9-20.9V193.9\r\n\t\t\t\tC490,182.4,480.6,173.1,469.1,173.1z M448.3,275.2H417c-9.4,0-16.7,6.3-19.8,14.6c-3.1,10.4-7.3,20.9-12.5,30.2\r\n\t\t\t\tc-5.2,8.3-3.1,18.8,3.1,25l21.9,21.9L367,409.7l-21.9-21.9c-7.3-6.3-16.7-7.3-25-3.1c-9.4,5.2-19.8,9.4-30.2,12.5\r\n\t\t\t\tc-8.3,2.1-14.6,10.4-14.6,19.8v31.3h-60.5l0,0V417c0-9.4-6.3-16.7-14.6-19.8c-10.4-3.1-20.9-7.3-30.2-12.5\r\n\t\t\t\tc-8.3-5.2-18.8-3.1-25,3.1l-22,21.9L80.3,367l21.9-21.9c6.3-7.3,7.3-16.7,3.1-25c-5.2-9.4-9.4-19.8-12.5-30.2\r\n\t\t\t\tc-2.1-8.3-10.4-14.6-19.8-14.6H41.7v-60.5H73c9.4,0,16.7-6.3,19.8-14.6c3.1-10.4,7.3-20.9,12.5-30.2c5.2-8.3,3.1-18.8-3.1-25\r\n\t\t\t\tl-21.9-22L123,80.3l21.9,21.9c7.3,6.3,16.7,7.3,25,3.1c9.4-5.2,19.8-9.4,30.2-12.5c8.3-2.1,14.6-10.4,14.6-19.8V41.7h60.5V73\r\n\t\t\t\tc0,9.4,6.3,16.7,14.6,19.8c10.4,3.1,20.9,7.3,30.2,12.5c8.3,5.2,18.8,3.1,25-3.1l22-21.9l42.7,42.7l-21.9,21.9\r\n\t\t\t\tc-6.3,7.3-7.3,16.7-3.1,25c5.2,9.4,9.4,19.8,12.5,30.2c2.1,8.3,10.4,14.6,19.8,14.6h31.3L448.3,275.2L448.3,275.2z" />\r\n\t\t\t<path d="M245,131.4c-62.6,0-113.6,51.1-113.6,113.6s51,113.6,113.6,113.6s113.6-51,113.6-113.6S307.6,131.4,245,131.4z\r\n\t\t\t\t M245,316.9c-39.6,0-71.9-32.3-71.9-71.9s32.3-71.9,71.9-71.9s71.9,32.3,71.9,71.9S284.6,316.9,245,316.9z" />\r\n\t\t</g>\r\n\t</g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n</symbol>'});s.a.add(i);t.default=i},"R/8a":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-message",use:"icon-message-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-message"><path d="M0 20.967v59.59c0 11.59 8.537 20.966 19.075 20.966h28.613l1 26.477L76.8 101.523h32.125c10.538 0 19.075-9.377 19.075-20.966v-59.59C128 9.377 119.463 0 108.925 0h-89.85C8.538 0 0 9.377 0 20.967zm82.325 33.1c0-5.524 4.013-9.935 9.037-9.935 5.026 0 9.038 4.41 9.038 9.934 0 5.524-4.025 9.934-9.038 9.934-5.024 0-9.037-4.41-9.037-9.934zm-27.613 0c0-5.524 4.013-9.935 9.038-9.935s9.037 4.41 9.037 9.934c0 5.524-4.025 9.934-9.037 9.934-5.025 0-9.038-4.41-9.038-9.934zm-27.1 0c0-5.524 4.013-9.935 9.038-9.935s9.038 4.41 9.038 9.934c0 5.524-4.026 9.934-9.05 9.934-5.013 0-9.025-4.41-9.025-9.934z" /></symbol>'});s.a.add(i);t.default=i},"R/Hx":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-table",use:"icon-table-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-table"><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z" /><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z" /></symbol>'});s.a.add(i);t.default=i},SZWj:function(e,t,n){"use strict";var a=n("Xm3t");n.n(a).a},TfVu:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-eye",use:"icon-eye-usage",viewBox:"0 0 128 64",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 64" id="icon-eye"><path d="M127.072 7.994c1.37-2.208.914-5.152-.914-6.87-2.056-1.717-4.797-1.226-6.396.982-.229.245-25.586 32.382-55.74 32.382-29.24 0-55.74-32.382-55.968-32.627-1.6-1.963-4.57-2.208-6.397-.49C-.17 3.086-.399 6.275 1.2 8.238c.457.736 5.94 7.36 14.62 14.72L4.17 35.96c-1.828 1.963-1.6 5.152.228 6.87.457.98 1.6 1.471 2.742 1.471s2.284-.49 3.198-1.472l12.564-13.983c5.94 4.416 13.021 8.587 20.788 11.53l-4.797 17.418c-.685 2.699.686 5.397 3.198 6.133h1.37c2.057 0 3.884-1.472 4.341-3.68L52.6 42.83c3.655.736 7.538 1.227 11.422 1.227 3.883 0 7.767-.49 11.422-1.227l4.797 17.173c.457 2.208 2.513 3.68 4.34 3.68.457 0 .914 0 1.143-.246 2.513-.736 3.883-3.434 3.198-6.133l-4.797-17.172c7.767-2.944 14.848-7.114 20.788-11.53l12.336 13.738c.913.981 2.056 1.472 3.198 1.472s2.284-.49 3.198-1.472c1.828-1.963 1.828-4.906.228-6.87l-11.65-13.001c9.366-7.36 14.849-14.474 14.849-14.474z" /></symbol>'});s.a.add(i);t.default=i},Tfa4:function(e,t,n){},"Uf/o":function(e,t,n){var a={"./404.svg":"oUrx","./bug.svg":"F3lI","./chart.svg":"yCkv","./clipboard.svg":"vDVG","./component.svg":"VtY+","./dashboard.svg":"94Jb","./documentation.svg":"kPu2","./drag.svg":"m7++","./edit.svg":"qkZ8","./email.svg":"y7eQ","./example.svg":"MMMJ","./excel.svg":"ZZmv","./exit-fullscreen.svg":"28eg","./eye-open.svg":"1+ww","./eye.svg":"TfVu","./form.svg":"6xvN","./fullscreen.svg":"mSHS","./guide 2.svg":"ICep","./guide.svg":"ZoO1","./icon.svg":"nZHn","./international.svg":"F9+T","./language.svg":"JYDz","./link.svg":"GPBF","./list.svg":"MokB","./lock.svg":"qwAt","./message.svg":"R/8a","./money.svg":"MEYL","./nested.svg":"3PhE","./password.svg":"Kj24","./pdf.svg":"+aF5","./people.svg":"0Fbn","./peoples.svg":"LxGF","./qq.svg":"FDDl","./search.svg":"jo2x","./settings.svg":"P8iQ","./shopping.svg":"EqXK","./size.svg":"hkRB","./star.svg":"cIpu","./tab.svg":"j7e1","./table.svg":"R/Hx","./theme.svg":"5TQQ","./tiptap-add_col_after.svg":"cBj6","./tiptap-add_col_before.svg":"2QTO","./tiptap-add_row_after.svg":"ec3N","./tiptap-add_row_before.svg":"7x1v","./tiptap-bold.svg":"dSKK","./tiptap-checklist.svg":"8L8/","./tiptap-code.svg":"taZh","./tiptap-combine_cells.svg":"8CrX","./tiptap-delete_col.svg":"LjVp","./tiptap-delete_row.svg":"ENUZ","./tiptap-delete_table.svg":"Dza5","./tiptap-github.svg":"nIMs","./tiptap-hr.svg":"kCbn","./tiptap-image.svg":"iprT","./tiptap-italic.svg":"hRv2","./tiptap-link.svg":"l3nR","./tiptap-mention.svg":"sjxz","./tiptap-ol.svg":"j6nr","./tiptap-paragraph.svg":"igzo","./tiptap-quote.svg":"swuu","./tiptap-redo.svg":"me7H","./tiptap-remove.svg":"NgVs","./tiptap-strike.svg":"kUWf","./tiptap-table.svg":"6S0t","./tiptap-ul.svg":"kGAI","./tiptap-underline.svg":"wfO2","./tiptap-undo.svg":"kpiL","./tree.svg":"k80C","./user.svg":"s7Vf","./wechat.svg":"gNoN","./zip.svg":"iqZD"};function r(e){var t=o(e);return n(t)}function o(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}r.keys=function(){return Object.keys(a)},r.resolve=o,e.exports=r,r.id="Uf/o"},UqWv:function(e,t,n){},"VtY+":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-component",use:"icon-component-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-component"><path d="M0 0h54.857v54.857H0V0zm0 73.143h54.857V128H0V73.143zm73.143 0H128V128H73.143V73.143zm27.428-18.286C115.72 54.857 128 42.577 128 27.43 128 12.28 115.72 0 100.571 0 85.423 0 73.143 12.28 73.143 27.429c0 15.148 12.28 27.428 27.428 27.428z" /></symbol>'});s.a.add(i);t.default=i},Vtdi:function(e,t,n){"use strict";n.r(t);var a={};n.r(a),n.d(a,"parseTime",function(){return Je}),n.d(a,"formatTime",function(){return Xe}),n.d(a,"timeAgo",function(){return Ja}),n.d(a,"numberFormatter",function(){return Xa}),n.d(a,"toThousandFilter",function(){return er});var r=n("Kw5r"),o=n("p46w"),s=n.n(o),i=(n("9d8Q"),n("XJYT")),c=n.n(i),u=(n("D66Q"),n("sg+I"),{name:"App"}),l=n("KHd+"),p=Object(l.a)(u,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{attrs:{id:"app"}},[t("router-view")],1)},[],!1,null,null,null);p.options.__file="App.vue";var d=p.exports,m=n("L2JU"),f=n("o0o1"),h=n.n(f),v=n("yXPU"),g=n.n(v),b=n("t3Un"),w=n("X4fA"),y=n("9i3r");function x(e,t){return S.apply(this,arguments)}function S(){return(S=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/need_reboot",method:"get",headers:k(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function E(e,t){return T.apply(this,arguments)}function T(){return(T=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/restart",method:"get",headers:k(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var k=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},O={state:{sidebar:{opened:!s.a.get("sidebarStatus")||!!+s.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop",language:s.a.get("language")||"en",needReboot:!1,size:s.a.get("size")||"medium",invitesEnabled:!1},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1,e.sidebar.opened?s.a.set("sidebarStatus",1):s.a.set("sidebarStatus",0)},CLOSE_SIDEBAR:function(e,t){s.a.set("sidebarStatus",0),e.sidebar.opened=!1,e.sidebar.withoutAnimation=t},TOGGLE_DEVICE:function(e,t){e.device=t},SET_INVITES_ENABLED:function(e,t){e.invitesEnabled=t},SET_LANGUAGE:function(e,t){e.language=t,s.a.set("language",t)},TOGGLE_REBOOT:function(e,t){e.needReboot=t},SET_SIZE:function(e,t){e.size=t,s.a.set("size",t)}},actions:{closeSideBar:function(e,t){(0,e.commit)("CLOSE_SIDEBAR",t.withoutAnimation)},NeedReboot:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,x(a.authHost,a.token);case 3:r=t.sent,n("TOGGLE_REBOOT",r.data.need_reboot);case 5:case"end":return t.stop()}},t)}))()},RestartApplication:function(e){return g()(h.a.mark(function t(){var n,a;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,E(a.authHost,a.token);case 3:n("TOGGLE_REBOOT",!1);case 4:case"end":return t.stop()}},t)}))()},SetInvitesEnabled:function(e,t){(0,e.commit)("SET_INVITES_ENABLED",t)},setLanguage:function(e,t){(0,e.commit)("SET_LANGUAGE",t)},setSize:function(e,t){(0,e.commit)("SET_SIZE",t)},toggleDevice:function(e,t){(0,e.commit)("TOGGLE_DEVICE",t)},toggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")}}},_=n("cDf5"),L=n.n(_),C=n("QILm"),A=n.n(C),P=n("lSNA"),I=n.n(P),j=n("mm8V"),R=n("mSNy");function M(e){var t=function(e,t){if("object"!==L()(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==L()(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===L()(t)?t:String(t)}function D(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function B(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?D(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):D(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var H={state:{activeTab:"",currentLocalFilesPage:1,currentLocalPacksPage:1,currentRemoteFilesPage:1,currentRemotePacksPage:1,filesPageSize:30,localPackFilesCount:0,localPacks:{},localPacksCount:0,pageSize:50,remoteInstance:"",remotePackFilesCount:0,remotePacks:{},remotePacksCount:0},mutations:{SET_ACTIVE_TAB:function(e,t){e.activeTab=t},SET_LOCAL_FILES_COUNT:function(e,t){e.localPackFilesCount=t},SET_LOCAL_FILES_PAGE:function(e,t){e.currentLocalFilesPage=t},SET_LOCAL_PACKS:function(e,t){e.localPacks=t},SET_LOCAL_PACKS_COUNT:function(e,t){e.localPacksCount=t},SET_LOCAL_PACK_FILES:function(e,t){var n=t.name,a=t.files;e.localPacks=B(B({},e.localPacks),{},I()({},n,B(B({},e.localPacks[n]),{},{files:a})))},SET_LOCAL_PAGE:function(e,t){e.currentLocalPacksPage=t},SET_REMOTE_FILES_COUNT:function(e,t){e.remotePackFilesCount=t},SET_REMOTE_FILES_PAGE:function(e,t){e.currentRemoteFilesPage=t},SET_REMOTE_INSTANCE:function(e,t){e.remoteInstance=t},SET_REMOTE_PACKS_COUNT:function(e,t){e.remotePacksCount=t},SET_REMOTE_PACK_FILES:function(e,t){var n=t.name,a=t.files;e.remotePacks=B(B({},e.remotePacks),{},I()({},n,B(B({},e.remotePacks[n]),{},{files:a})))},SET_REMOTE_PACKS:function(e,t){e.remotePacks=t},UPDATE_LOCAL_PACK_VAL:function(e,t){var n=t.name,a=t.key,o=t.value;r.default.set(e.localPacks[n].pack,a,o)},UPDATE_LOCAL_PACK_PACK:function(e,t){var n=t.name,a=t.pack;e.localPacks[n].pack=a},UPDATE_LOCAL_PACK_FILES:function(e,t){var n=t.name,a=t.files;r.default.set(e.localPacks[n],"files",a)}},actions:{AddNewEmojiFile:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=t.packName,s=t.file,c=t.shortcode,u=t.filename,n.prev=2,n.next=5,Object(j.a)(o,s,c,u,r.authHost,r.token);case 5:l=n.sent,n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(2),n.abrupt("return");case 11:Object(i.Message)({message:"".concat(R.a.t("settings.successfullyUpdated")," ").concat(o," ").concat(R.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),a("UPDATE_LOCAL_PACK_FILES",{name:o,files:l.data});case 13:case"end":return n.stop()}},n,null,[[2,8]])}))()},DeleteEmojiFile:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,c,u,l,p;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,c=t.packName,u=t.shortcode,l=s.localPacks[c].files,l[u],p=A()(l,[u].map(M)),a("UPDATE_LOCAL_PACK_FILES",{name:c,files:p}),n.prev=4,n.next=7,Object(j.d)(c,u,o.authHost,o.token);case 7:n.next=12;break;case 9:return n.prev=9,n.t0=n.catch(4),n.abrupt("return");case 12:Object(i.Message)({message:"".concat(R.a.t("settings.successfullyUpdated")," ").concat(c," ").concat(R.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),0===Object.keys(p).length&&s.currentLocalFilesPage>1?r("FetchLocalSinglePack",{name:c,page:s.currentLocalFilesPage-1}):r("FetchLocalSinglePack",{name:c,page:s.currentLocalFilesPage});case 14:case"end":return n.stop()}},n,null,[[4,9]])}))()},CreatePack:function(e,t){return g()(h.a.mark(function n(){var a,r;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.getters,r=t.name,n.next=4,Object(j.c)(a.authHost,a.token,r);case 4:case"end":return n.stop()}},n)}))()},DeletePack:function(e,t){return g()(h.a.mark(function n(){var a,r;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.getters,r=t.name,n.next=4,Object(j.e)(a.authHost,a.token,r);case 4:case"end":return n.stop()}},n)}))()},DownloadFrom:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.getters,r=t.instanceAddress,o=t.packName,s=t.as,n.next=4,Object(j.f)(r,o,s,a.authHost,a.token);case 4:"ok"===n.sent.data&&Object(i.Message)({message:"".concat(R.a.t("settings.successfullyDownloaded")," ").concat(o),type:"success",duration:5e3});case 6:case"end":return n.stop()}},n)}))()},FetchLocalEmojiPacks:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=e.state,n.next=3,Object(j.i)(t,o.pageSize,r.authHost,r.token);case 3:s=n.sent,i=s.data,c=i.packs,u=i.count,l=Object.keys(c).reduce(function(e,t){var n=c[t],a=(n.files,A()(n,["files"]));return e[t]=a,e},{}),a("SET_LOCAL_PACKS",l),a("SET_LOCAL_PACKS_COUNT",u),a("SET_LOCAL_PAGE",t);case 10:case"end":return n.stop()}},n)}))()},FetchLocalSinglePack:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l,p;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.getters,r=e.commit,o=e.state,s=t.name,i=t.page,n.next=4,Object(j.g)(s,i,o.filesPageSize,a.authHost,a.token);case 4:c=n.sent,u=c.data,l=u.files,p=u.files_count,r("SET_LOCAL_PACK_FILES",{name:s,files:l}),r("SET_LOCAL_FILES_COUNT",p),r("SET_LOCAL_FILES_PAGE",i);case 10:case"end":return n.stop()}},n)}))()},FetchRemoteSinglePack:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l,p;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.getters,r=e.commit,o=e.state,s=t.name,i=t.page,n.next=4,Object(j.g)(s,i,o.filesPageSize,a.authHost,a.token);case 4:c=n.sent,u=c.data,l=u.files,p=u.files_count,r("SET_REMOTE_PACK_FILES",{name:s,files:l}),r("SET_REMOTE_FILES_COUNT",p),r("SET_REMOTE_FILES_PAGE",i);case 10:case"end":return n.stop()}},n)}))()},ImportFromFS:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,t.next=3,Object(j.h)(n.authHost,n.token);case 3:200===(a=t.sent).status&&(r=a.data.length>0?"".concat(R.a.t("settings.successfullyImported")," ").concat(a.data):R.a.t("settings.nowNewPacksToImport"),Object(i.Message)({message:r,type:"success",duration:5e3}));case 5:case"end":return t.stop()}},t)}))()},ReloadEmoji:function(e){return g()(h.a.mark(function t(){var n;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,t.next=3,Object(j.k)(n.authHost,n.token);case 3:case"end":return t.stop()}},t)}))()},SavePackMetadata:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=e.state,s=t.packName,n.next=4,Object(j.l)(r.authHost,r.token,s,o.localPacks[s].pack);case 4:200===(c=n.sent).status&&(Object(i.Message)({message:"".concat(R.a.t("settings.successfullyUpdated")," ").concat(s," ").concat(R.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),a("UPDATE_LOCAL_PACK_PACK",{name:s,pack:c.data}));case 6:case"end":return n.stop()}},n)}))()},SetActiveTab:function(e,t){(0,e.commit)("SET_ACTIVE_TAB",t)},SetRemoteEmojiPacks:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l,p,d;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=e.state,s=t.page,i=t.remoteInstance,n.next=4,Object(j.j)(i,s,o.pageSize,r.authHost,r.token);case 4:c=n.sent,u=c.data,l=u.packs,p=u.count,d=Object.keys(l).reduce(function(e,t){var n=l[t],a=(n.files,A()(n,["files"]));return e[t]=a,e},{}),a("SET_REMOTE_INSTANCE",i),a("SET_REMOTE_PACKS",d),a("SET_REMOTE_PACKS_COUNT",p);case 11:case"end":return n.stop()}},n)}))()},SetRemoteInstance:function(e,t){(0,e.commit)("SET_REMOTE_INSTANCE",t)},UpdateEmojiFile:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,c,u,l,p,d,m;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,c=t.packName,u=t.shortcode,l=t.newShortcode,p=t.newFilename,d=t.force,m=Object.keys(s.localPacks[c].files).reduce(function(e,t){return t===u?e[l]=p:e[t]=s.localPacks[c].files[t],e},{}),a("UPDATE_LOCAL_PACK_FILES",{name:c,files:m}),n.prev=4,n.next=7,Object(j.m)(c,u,l,p,d,o.authHost,o.token);case 7:n.next=12;break;case 9:return n.prev=9,n.t0=n.catch(4),n.abrupt("return");case 12:Object(i.Message)({message:"".concat(R.a.t("settings.successfullyUpdated")," ").concat(c," ").concat(R.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),r("FetchLocalSinglePack",{name:c,page:s.currentLocalFilesPage});case 14:case"end":return n.stop()}},n,null,[[4,9]])}))()},UpdateLocalPackVal:function(e,t){return g()(h.a.mark(function n(){return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:(0,e.commit)("UPDATE_LOCAL_PACK_VAL",t);case 2:case"end":return n.stop()}},n)}))()}}},U={state:{logs:[]},mutations:{ADD_ERROR_LOG:function(e,t){e.logs.push(t)}},actions:{addErrorLog:function(e,t){(0,e.commit)("ADD_ERROR_LOG",t)}}},V={sidebar:function(e){return e.app.sidebar},language:function(e){return e.app.language},size:function(e){return e.app.size},device:function(e){return e.app.device},visitedViews:function(e){return e.tagsView.visitedViews},cachedViews:function(e){return e.tagsView.cachedViews},token:function(e){return e.user.token},avatar:function(e){return e.user.avatar},name:function(e){return e.user.name},introduction:function(e){return e.user.introduction},status:function(e){return e.user.status},roles:function(e){return e.user.roles},setting:function(e){return e.user.setting},permission_routers:function(e){return e.permission.routers},addRouters:function(e){return e.permission.addRouters},errorLogs:function(e){return e.errorLog.logs},users:function(e){return e.users.fetchedUsers},authHost:function(e){return e.user.authHost},settings:function(e){return e.settings}};function z(e,t,n,a){return F.apply(this,arguments)}function F(){return(F=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/invite_token",method:"post",headers:K(r),data:n&&n.length>0?{max_use:t,expires_at:n}:{max_use:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function N(e,t,n,a){return G.apply(this,arguments)}function G(){return(G=g()(h.a.mark(function e(t,n,a,r){var o;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=n.length>0?{email:t,name:n}:{email:t},e.next=3,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/email_invite",method:"post",headers:K(r),data:o});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Z(e,t){return Y.apply(this,arguments)}function Y(){return(Y=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users/invites",method:"get",headers:K(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function $(e,t,n){return q.apply(this,arguments)}function q(){return(q=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/revoke_invite",method:"post",headers:K(a),data:{token:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var K=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},W={state:{inviteTokens:[],loading:!1,newToken:{}},mutations:{SET_LOADING:function(e,t){e.loading=t},SET_NEW_TOKEN:function(e,t){e.newToken=t},SET_TOKENS:function(e,t){e.inviteTokens=t}},actions:{FetchInviteTokens:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,n("SET_LOADING",!0),t.next=4,Z(a.authHost,a.token);case 4:r=t.sent,n("SET_TOKENS",r.data.invites.reverse()),n("SET_LOADING",!1);case 7:case"end":return t.stop()}},t)}))()},GenerateInviteToken:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=t.maxUse,i=t.expiresAt,n.prev=2,n.next=5,z(s,i,o.authHost,o.token);case 5:c=n.sent,u=c.data,a("SET_NEW_TOKEN",{token:u.token,maxUse:u.max_use,expiresAt:u.expires_at}),n.next=13;break;case 10:return n.prev=10,n.t0=n.catch(2),n.abrupt("return");case 13:r("FetchInviteTokens");case 14:case"end":return n.stop()}},n,null,[[2,10]])}))()},InviteUserViaEmail:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.commit,e.dispatch,a=e.getters,r=t.email,o=t.name,n.prev=2,n.next=5,N(r,o,a.authHost,a.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:Object(i.Message)({message:R.a.t("invites.emailSent"),type:"success",duration:5e3});case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},RemoveNewToken:function(e){(0,e.commit)("SET_NEW_TOKEN",{})},RevokeToken:function(e,t){return g()(h.a.mark(function n(){var a,r;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.commit,a=e.dispatch,r=e.getters,n.prev=1,n.next=4,$(t,r.authHost,r.token);case 4:n.next=9;break;case 6:return n.prev=6,n.t0=n.catch(1),n.abrupt("return");case 9:a("FetchInviteTokens");case 10:case"end":return n.stop()}},n,null,[[1,6]])}))()}}};function Q(e,t,n,a){return J.apply(this,arguments)}function J(){return(J=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/media_proxy_caches?page=".concat(t,"&page_size=").concat(n),method:"get",headers:oe(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function X(e,t,n,a){return ee.apply(this,arguments)}function ee(){return(ee=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/media_proxy_caches/purge",method:"post",headers:oe(r),data:{urls:t,ban:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function te(e,t,n){return ne.apply(this,arguments)}function ne(){return(ne=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/media_proxy_caches/delete",method:"post",headers:oe(a),data:{urls:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ae(e,t,n,a,r){return re.apply(this,arguments)}function re(){return(re=g()(h.a.mark(function e(t,n,a,r,o){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/media_proxy_caches?query=".concat(t,"&page=").concat(n,"&page_size=").concat(a),method:"get",headers:oe(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var oe=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}};function se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function ie(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?se(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):se(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ce(e,t,n){return ue.apply(this,arguments)}function ue(){return(ue=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/instance_document/".concat(t),method:"delete",headers:Se(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function le(e,t){return pe.apply(this,arguments)}function pe(){return(pe=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/config/descriptions",method:"get",headers:Se(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function de(e,t){return me.apply(this,arguments)}function me(){return(me=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/config",method:"get",headers:Se(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function fe(e,t,n){return he.apply(this,arguments)}function he(){return(he=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/instance_document/".concat(t),method:"get",headers:Se(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ve(e,t,n,a){return ge.apply(this,arguments)}function ge(){return(ge=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/instance_document/".concat(t),method:"patch",data:n,headers:ie(ie({},Se(r)),{},{"Content-Type":"multipart/form-data"})});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function be(e,t,n){return we.apply(this,arguments)}function we(){return(we=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/config",method:"post",headers:Se(a),data:{configs:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ye(e,t,n){return xe.apply(this,arguments)}function xe(){return(xe=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/config",method:"post",headers:Se(a),data:{configs:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Se=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},Ee={state:{bannedUrls:[],currentPage:1,loading:!1,mediaProxyEnabled:!1,pageSize:50,searchQuery:"",totalUrlsCount:0},mutations:{MEDIA_PROXY_ENABLED:function(e,t){e.mediaProxyEnabled=t},SET_BANNED_URLS:function(e,t){e.bannedUrls=t.map(function(e){return{url:e}})},SET_TOTAL_URLS_COUNT:function(e,t){e.totalUrlsCount=t},SET_LOADING:function(e,t){e.loading=t},SET_PAGE:function(e,t){e.currentPage=t},SET_SEARCH_QUERY:function(e,t){e.searchQuery=t}},actions:{EnableMediaProxy:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.dispatch,a=e.getters,e.state,r=[{group:":pleroma",key:":media_proxy",value:[{tuple:[":enabled",!0]},{tuple:[":invalidation",[{tuple:[":enabled",!0]}]]}]}],t.next=4,be(r,a.authHost,a.token);case 4:n("FetchMediaProxySetting");case 5:case"end":return t.stop()}},t)}))()},FetchMediaProxySetting:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s,i;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,de(a.authHost,a.token);case 3:r=t.sent,o=r.data,s=o.configs.find(function(e){return":media_proxy"===e.key})?o.configs.find(function(e){return":media_proxy"===e.key}).value:[],i=!!s.find(function(e){return":enabled"===e.tuple[0]})&&s.find(function(e){return":enabled"===e.tuple[0]}).tuple[1],n("MEDIA_PROXY_ENABLED",i);case 8:case"end":return t.stop()}},t)}))()},ListBannedUrls:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=e.state,s=t.page,a("SET_LOADING",!0),n.next=5,Q(s,o.pageSize,r.authHost,r.token);case 5:i=n.sent,a("SET_BANNED_URLS",i.data.urls),a("SET_TOTAL_URLS_COUNT",i.data.count),a("SET_PAGE",s),a("SET_LOADING",!1);case 10:case"end":return n.stop()}},n)}))()},PurgeUrls:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=e.state,s=t.urls,c=t.ban,n.next=4,X(s,c,r.authHost,r.token);case 4:Object(i.Message)({message:R.a.t("mediaProxyCache.evictedMessage"),type:"success",duration:5e3}),c&&0===o.searchQuery.length?a("ListBannedUrls",{page:o.currentPage}):c&&a("SearchUrls",{query:o.searchQuery,page:o.currentPage});case 6:case"end":return n.stop()}},n)}))()},RemoveBannedUrls:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=e.state,n.next=3,te(t,r.authHost,r.token);case 3:0===o.searchQuery.length?a("ListBannedUrls",{page:o.currentPage}):a("SearchUrls",{query:o.searchQuery,page:o.currentPage});case 4:case"end":return n.stop()}},n)}))()},SearchUrls:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.query,c=t.page,0!==i.length){n.next=7;break}a("SET_SEARCH_QUERY",i),r("ListBannedUrls",{page:c}),n.next=16;break;case 7:return a("SET_LOADING",!0),a("SET_SEARCH_QUERY",i),n.next=11,ae(i,c,s.pageSize,o.authHost,o.token);case 11:u=n.sent,a("SET_BANNED_URLS",u.data.urls),a("SET_TOTAL_URLS_COUNT",u.data.count),a("SET_PAGE",c),a("SET_LOADING",!1);case 16:case"end":return n.stop()}},n)}))()}}},Te=n("LvDl"),ke=n.n(Te);function Oe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function _e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Oe(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Oe(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Le(e,t,n){return Ce.apply(this,arguments)}function Ce(){return(Ce=g()(h.a.mark(function e(t,n,a){var r,o,s=arguments;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>3&&void 0!==s[3]?s[3]:1,o=new URLSearchParams(ke.a.omitBy(_e(_e({},a),{},{page:r}),ke.a.isUndefined)).toString(),e.next=4,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/moderation_log?".concat(o),method:"get",headers:Re(n)});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Ae(e,t){return Pe.apply(this,arguments)}function Pe(){return(Pe=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users?filters=is_admin",method:"get",headers:Re(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Ie(e,t){return je.apply(this,arguments)}function je(){return(je=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users?filters=is_moderator",method:"get",headers:Re(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Re=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},Me={state:{fetchedLog:[],logItemsCount:0,admins:[],moderators:[],logLoading:!0,adminsLoading:!0},mutations:{SET_LOG_LOADING:function(e,t){e.logLoading=t},SET_ADMINS_LOADING:function(e,t){e.adminsLoading=t},SET_MODERATION_LOG:function(e,t){e.fetchedLog=t},SET_MODERATION_LOG_COUNT:function(e,t){e.logItemsCount=t},SET_ADMINS:function(e,t){e.admins=t},SET_MODERATORS:function(e,t){e.moderators=t}},actions:{FetchModerationLog:function(e){var t=arguments;return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=t.length>1&&void 0!==t[1]?t[1]:{},n.next=4,Le(r.authHost,r.token,o);case 4:s=n.sent,a("SET_MODERATION_LOG",s.data.items),a("SET_MODERATION_LOG_COUNT",s.data.total),a("SET_LOG_LOADING",!1);case 8:case"end":return n.stop()}},n)}))()},FetchAdmins:function(e){return g()(h.a.mark(function t(){var n,a,r,o;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,Ae(a.authHost,a.token);case 3:return r=t.sent,t.next=6,Ie(a.authHost,a.token);case 6:o=t.sent,n("SET_ADMINS",r.data),n("SET_MODERATORS",o.data),n("SET_ADMINS_LOADING",!1);case 10:case"end":return t.stop()}},t)}))()}}},De=n("RIqP"),Be=n.n(De);function He(e,t){return Ue.apply(this,arguments)}function Ue(){return(Ue=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/v1/instance/peers",method:"get",headers:Ve(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Ve=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},ze={state:{fetchedPeers:[],loading:!0},mutations:{SET_PEERS:function(e,t){e.fetchedPeers=t},SET_LOADING:function(e,t){e.loading=t}},actions:{FetchPeers:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,He(a.authHost,a.token);case 3:r=t.sent,n("SET_PEERS",Be()(r.data).sort()),n("SET_LOADING",!1);case 6:case"end":return t.stop()}},t)}))()}}},Fe=n("jE9Z"),Ne={name:"Hamburger",props:{isActive:{type:Boolean,default:!1},toggleClick:{type:Function,default:null}}},Ge=(n("18BR"),Object(l.a)(Ne,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticStyle:{padding:"0 15px"},on:{click:this.toggleClick}},[t("svg",{staticClass:"hamburger",class:{"is-active":this.isActive},attrs:{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64"}},[t("path",{attrs:{d:"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z"}})])])},[],!1,null,"69c6c5c4",null));function Ze(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}Ge.options.__file="index.vue";var Ye={components:{Hamburger:Ge.exports},computed:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ze(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ze(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},Object(m.b)(["sidebar","name","avatar","device"])),methods:{toggleSideBar:function(){this.$store.dispatch("toggleSideBar")},logout:function(){this.$store.dispatch("LogOut").then(function(){location.reload()})}}},$e=(n("fhHp"),Object(l.a)(Ye,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"navbar"},[n("hamburger",{staticClass:"hamburger-container",attrs:{"toggle-click":e.toggleSideBar,"is-active":e.sidebar.opened}}),e._v(" "),n("div",{staticClass:"right-menu"},[n("el-dropdown",{staticClass:"avatar-container right-menu-item hover-effect",attrs:{trigger:"click"}},[n("div",{staticClass:"avatar-wrapper"},[n("img",{staticClass:"user-avatar",attrs:{src:e.avatar+"?imageView2/1/w/80/h/80"}})]),e._v(" "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[n("el-dropdown-item",[n("span",{staticStyle:{display:"block"},on:{click:e.logout}},[e._v(e._s(e.$t("navbar.logOut")))])])],1)],1)],1)],1)},[],!1,null,"28de7ff2",null));$e.options.__file="Navbar.vue";var qe=$e.exports,Ke=n("33yf"),We=n.n(Ke);function Qe(e){return this.$te("route."+e)?this.$t("route."+e):e}function Je(e,t){if(0===arguments.length)return null;var n,a=t||"{y}-{m}-{d} {h}:{i}:{s}";"object"===L()(e)?n=e:("string"==typeof e&&/^[0-9]+$/.test(e)&&(e=parseInt(e)),"number"==typeof e&&10===e.toString().length&&(e*=1e3),n=new Date(e));var r={y:n.getFullYear(),m:n.getMonth()+1,d:n.getDate(),h:n.getHours(),i:n.getMinutes(),s:n.getSeconds(),a:n.getDay()};return a.replace(/{(y|m|d|h|i|s|a)+}/g,function(e,t){var n=r[t];return"a"===t?["日","一","二","三","四","五","六"][n]:(e.length>0&&n<10&&(n="0"+n),n||0)})}function Xe(e,t){e=1e3*+e;var n=new Date(e),a=(Date.now()-n)/1e3;return a<30?"刚刚":a<3600?Math.ceil(a/60)+"分钟前":a<86400?Math.ceil(a/3600)+"小时前":a<172800?"1天前":t?Je(e,t):n.getMonth()+1+"月"+n.getDate()+"日"+n.getHours()+"时"+n.getMinutes()+"分"}function et(e){return/^(https?:|mailto:|tel:)/.test(e)}var tt={name:"Item",props:{count:{type:String,default:null},icon:{type:String,default:""},title:{type:String,default:""}}},nt=(n("zEvO"),Object(l.a)(tt,function(){var e=this.$createElement,t=this._self._c||e;return t("span",[t("svg-icon",{attrs:{"icon-class":this.icon}}),this._v(" "),t("span",{attrs:{slot:"title"},slot:"title"},[this._v(this._s(this.title))]),this._v(" "),t("el-badge",{staticClass:"count-badge",attrs:{value:this.count,type:"primary"}})],1)},[],!1,null,"52140d98",null));nt.options.__file="Item.vue";var at=nt.exports,rt={props:{to:{type:String,required:!0}},methods:{linkProps:function(e){return et(e)?{is:"a",href:e,target:"_blank",rel:"noopener"}:{is:"router-link",to:e}}}},ot=Object(l.a)(rt,function(){var e=this.$createElement;return(this._self._c||e)("component",this._b({},"component",this.linkProps(this.to),!1),[this._t("default")],2)},[],!1,null,null,null);ot.options.__file="Link.vue";var st=ot.exports,it=n("ZhIB"),ct=n.n(it);function ut(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function lt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ut(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ut(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var pt={name:"SidebarItem",components:{Item:at,AppLink:st},mixins:[{computed:{device:function(){return this.$store.state.app.device}},mounted:function(){this.fixBugIniOS()},methods:{fixBugIniOS:function(){var e=this,t=this.$refs.subMenu;if(t){var n=t.handleMouseleave;t.handleMouseleave=function(t){"mobile"!==e.device&&n(t)}}}}}],props:{item:{type:Object,required:!0},isNest:{type:Boolean,default:!1},basePath:{type:String,default:""}},data:function(){return{onlyOneChild:null}},computed:{invitesEnabled:function(){return"/invites"!==this.basePath||this.$store.state.app.invitesEnabled},normalizedReportsCount:function(){return ct()(this.$store.state.reports.openReportsCount).format("0a")}},methods:{hasOneShowingChild:function(e,t){var n=this,a=e.filter(function(e){return!e.hidden&&(n.onlyOneChild=e,!0)});return 1===a.length||0===a.length&&(this.onlyOneChild=lt(lt({},t),{},{path:"",noShowingChildren:!0}),!0)},resolvePath:function(e){return this.isExternalLink(e)?e:We.a.resolve(this.basePath,e)},showCount:function(e){return"/reports"===e.path},isExternalLink:function(e){return et(e)},generateTitle:Qe}},dt=Object(l.a)(pt,function(){var e=this,t=e.$createElement,n=e._self._c||t;return!e.item.hidden&&e.item.children&&e.invitesEnabled?n("div",{staticClass:"menu-wrapper"},[!e.hasOneShowingChild(e.item.children,e.item)||e.onlyOneChild.children&&!e.onlyOneChild.noShowingChildren||e.item.alwaysShow?n("el-submenu",{ref:"subMenu",attrs:{index:e.resolvePath(e.item.path)}},[n("template",{slot:"title"},[e.item.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:e.item.meta.icon,title:e.generateTitle(e.item.meta.title)}}):e._e()],1),e._v(" "),e._l(e.item.children,function(t){return[t.hidden?e._e():[t.children&&t.children.length>0?n("sidebar-item",{key:t.path,staticClass:"nest-menu",attrs:{"is-nest":!0,item:t,"base-path":e.resolvePath(t.path)}}):n("app-link",{key:t.name,attrs:{to:e.resolvePath(t.path)}},[n("el-menu-item",{attrs:{index:e.resolvePath(t.path)}},[t.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:t.meta.icon,title:e.generateTitle(t.meta.title)}}):e._e()],1)],1)]]})],2):[n("app-link",{attrs:{to:e.resolvePath(e.onlyOneChild.path)}},[n("el-menu-item",{class:{"submenu-title-noDropdown":!e.isNest},attrs:{index:e.resolvePath(e.onlyOneChild.path)}},[e.onlyOneChild.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:e.onlyOneChild.meta.icon||e.item.meta.icon,title:e.generateTitle(e.onlyOneChild.meta.title)}}):e._e()],1)],1)]],2):e._e()},[],!1,null,null,null);dt.options.__file="SidebarItem.vue";var mt=dt.exports,ft=n("zx4i"),ht=n.n(ft);function vt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function gt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?vt(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var bt={components:{SidebarItem:mt},computed:gt(gt({},Object(m.b)(["permission_routers","sidebar"])),{},{variables:function(){return ht.a},isCollapse:function(){return!this.sidebar.opened}}),mounted:function(){this.$store.dispatch("FetchOpenReportsCount")}},wt=Object(l.a)(bt,function(){var e=this.$createElement,t=this._self._c||e;return t("el-scrollbar",{attrs:{"wrap-class":"scrollbar-wrapper"}},[t("el-menu",{attrs:{"default-active":this.$route.path,collapse:this.isCollapse,"background-color":this.variables.menuBg,"text-color":this.variables.menuText,"active-text-color":this.variables.menuActiveText,mode:"vertical"}},this._l(this.permission_routers,function(e){return t("sidebar-item",{key:e.path,attrs:{item:e,"base-path":e.path}})}),1)],1)},[],!1,null,null,null);wt.options.__file="index.vue";var yt=wt.exports,xt={name:"ScrollPane",data:function(){return{left:0}},methods:{handleScroll:function(e){var t=e.wheelDelta||40*-e.deltaY,n=this.$refs.scrollContainer.$refs.wrap;n.scrollLeft=n.scrollLeft+t/4},moveToTarget:function(e){var t=this.$refs.scrollContainer.$el.offsetWidth,n=this.$refs.scrollContainer.$refs.wrap,a=this.$parent.$refs.tag,r=null,o=null;if(a.length>0&&(r=a[0],o=a[a.length-1]),r===e)n.scrollLeft=0;else if(o===e)n.scrollLeft=n.scrollWidth-t;else{var s=a.findIndex(function(t){return t===e}),i=a[s-1],c=a[s+1],u=c.$el.offsetLeft+c.$el.offsetWidth+4,l=i.$el.offsetLeft-4;u>n.scrollLeft+t?n.scrollLeft=u-t:l<n.scrollLeft&&(n.scrollLeft=l)}}}},St=(n("HIWW"),Object(l.a)(xt,function(){var e=this,t=e.$createElement;return(e._self._c||t)("el-scrollbar",{ref:"scrollContainer",staticClass:"scroll-container",attrs:{vertical:!1},nativeOn:{wheel:function(t){return t.preventDefault(),e.handleScroll(t)}}},[e._t("default")],2)},[],!1,null,"591d6778",null));function Et(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Tt(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Tt(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,r=function(){};return{s:r,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,i=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Tt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function kt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}St.options.__file="index.vue";var Ot={components:{ScrollPane:St.exports},data:function(){return{visible:!1,top:0,left:0,selectedTag:{},affixTags:[]}},computed:{visitedViews:function(){return this.$store.state.tagsView.visitedViews},routers:function(){return this.$store.state.permission.routers}},watch:{$route:function(){this.addTags(),this.moveToCurrentTag()},visible:function(e){e?document.body.addEventListener("click",this.closeMenu):document.body.removeEventListener("click",this.closeMenu)}},mounted:function(){this.initTags(),this.addTags()},methods:{generateTitle:Qe,isActive:function(e){return e.path===this.$route.path},filterAffixTags:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",a=[];return e.forEach(function(e){if(e.meta&&e.meta.affix&&a.push({path:We.a.resolve(n,e.path),name:e.name,meta:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?kt(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},e.meta)}),e.children){var r=t.filterAffixTags(e.children,e.path);r.length>=1&&(a=[].concat(Be()(a),Be()(r)))}}),a},initTags:function(){var e,t=Et(this.affixTags=this.filterAffixTags(this.routers));try{for(t.s();!(e=t.n()).done;){var n=e.value;n.name&&this.$store.dispatch("addVisitedView",n)}}catch(e){t.e(e)}finally{t.f()}},addTags:function(){return this.$route.name&&this.$store.dispatch("addView",this.$route),!1},moveToCurrentTag:function(){var e=this,t=this.$refs.tag;this.$nextTick(function(){var n,a=Et(t);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r.to.path===e.$route.path){e.$refs.scrollPane.moveToTarget(r),r.to.fullPath!==e.$route.fullPath&&e.$store.dispatch("updateVisitedView",e.$route);break}}}catch(e){a.e(e)}finally{a.f()}})},refreshSelectedTag:function(e){var t=this;this.$store.dispatch("delCachedView",e).then(function(){var n=e.fullPath;t.$nextTick(function(){t.$router.replace({path:"/redirect"+n})})})},closeSelectedTag:function(e){var t=this;this.$store.dispatch("delView",e).then(function(n){var a=n.visitedViews;t.isActive(e)&&t.toLastView(a)})},closeOthersTags:function(){var e=this;this.$router.push(this.selectedTag),this.$store.dispatch("delOthersViews",this.selectedTag).then(function(){e.moveToCurrentTag()})},closeAllTags:function(e){var t=this;this.$store.dispatch("delAllViews").then(function(n){var a=n.visitedViews;t.affixTags.some(function(t){return t.path===e.path})||t.toLastView(a)})},toLastView:function(e){var t=e.slice(-1)[0];t?this.$router.push(t):this.$router.push("/")},openMenu:function(e,t){var n=this.$el.getBoundingClientRect().left,a=this.$el.offsetWidth-105,r=t.clientX-n+15;this.left=r>a?a:r,this.top=t.clientY,this.visible=!0,this.selectedTag=e},closeMenu:function(){this.visible=!1}}},_t=(n("Hnev"),n("Yymj"),Object(l.a)(Ot,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"tags-view-container"},[n("scroll-pane",{ref:"scrollPane",staticClass:"tags-view-wrapper"},e._l(e.visitedViews,function(t){return n("router-link",{key:t.path,ref:"tag",refInFor:!0,staticClass:"tags-view-item",class:e.isActive(t)?"active":"",attrs:{to:{path:t.path,query:t.query,fullPath:t.fullPath},tag:"span"},nativeOn:{mouseup:function(n){return"button"in n&&1!==n.button?null:e.closeSelectedTag(t)},contextmenu:function(n){return n.preventDefault(),e.openMenu(t,n)}}},[e._v("\n "+e._s(e.generateTitle(t.title))+"\n "),t.meta.affix?e._e():n("span",{staticClass:"el-icon-close",on:{click:function(n){return n.preventDefault(),n.stopPropagation(),e.closeSelectedTag(t)}}})])}),1),e._v(" "),n("ul",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"contextmenu",style:{left:e.left+"px",top:e.top+"px"}},[n("li",{on:{click:function(t){return e.refreshSelectedTag(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.refresh")))]),e._v(" "),e.selectedTag.meta&&e.selectedTag.meta.affix?e._e():n("li",{on:{click:function(t){return e.closeSelectedTag(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.close")))]),e._v(" "),n("li",{on:{click:e.closeOthersTags}},[e._v(e._s(e.$t("tagsView.closeOthers")))]),e._v(" "),n("li",{on:{click:function(t){return e.closeAllTags(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.closeAll")))])])],1)},[],!1,null,"e1cdb714",null));_t.options.__file="TagsView.vue";var Lt=_t.exports,Ct={name:"AppMain",computed:{cachedViews:function(){return this.$store.state.tagsView.cachedViews},key:function(){return this.$route.fullPath}}},At=(n("Z+gY"),Object(l.a)(Ct,function(){var e=this.$createElement,t=this._self._c||e;return t("section",{staticClass:"app-main"},[t("transition",{attrs:{name:"fade-transform",mode:"out-in"}},[t("keep-alive",{attrs:{include:this.cachedViews}},[t("router-view",{key:this.key})],1)],1)],1)},[],!1,null,"f852c4f2",null));At.options.__file="AppMain.vue";var Pt=At.exports,It=document.body,jt={name:"Layout",components:{Navbar:qe,Sidebar:yt,AppMain:Pt,TagsView:Lt},mixins:[{watch:{$route:function(e){"mobile"===this.device&&this.sidebar.opened&&Ga.dispatch("closeSideBar",{withoutAnimation:!1})}},beforeMount:function(){window.addEventListener("resize",this.resizeHandler)},mounted:function(){var e=this.isMobile(),t=this.isTablet();(e||t)&&(Ga.dispatch("toggleDevice",e?"mobile":"tablet"),Ga.dispatch("closeSideBar",{withoutAnimation:!0}))},methods:{isMobile:function(){return It.getBoundingClientRect().width-3<480},isTablet:function(){var e=It.getBoundingClientRect();return e.width-3<801&&e.width-3>480},resizeHandler:function(){if(!document.hidden){var e=this.isMobile(),t=this.isTablet();e||t?(Ga.dispatch("toggleDevice",e?"mobile":"tablet"),Ga.dispatch("closeSideBar",{withoutAnimation:!0})):Ga.dispatch("toggleDevice","desktop")}}}}],computed:{sidebar:function(){return this.$store.state.app.sidebar},device:function(){return this.$store.state.app.device},classObj:function(){return{hideSidebar:!this.sidebar.opened,openSidebar:this.sidebar.opened,withoutAnimation:this.sidebar.withoutAnimation,mobile:"mobile"===this.device}}},methods:{handleClickOutside:function(){this.$store.dispatch("closeSideBar",{withoutAnimation:!1})}}},Rt=(n("SZWj"),Object(l.a)(jt,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-wrapper",class:e.classObj},["mobile"===e.device&&e.sidebar.opened?n("div",{staticClass:"drawer-bg",on:{click:e.handleClickOutside}}):e._e(),e._v(" "),n("sidebar",{staticClass:"sidebar-container"}),e._v(" "),n("div",{staticClass:"main-container"},[n("navbar"),e._v(" "),n("app-main")],1)],1)},[],!1,null,"767d264f",null));Rt.options.__file="Layout.vue";var Mt=Rt.exports;r.default.use(Fe.a);var Dt=[""]||!1,Bt=Dt.includes("settings"),Ht={path:"/settings",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-68ea"),n.e("chunk-9d55")]).then(n.bind(null,"YcIK"))},name:"Settings",meta:{title:"settings",icon:"settings",noCache:!0}}]},Ut=Dt.includes("statuses"),Vt={path:"/statuses",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-f625"),n.e("chunk-176e")]).then(n.bind(null,"FtQ1"))},name:"Statuses",meta:{title:"statuses",icon:"form",noCache:!0}}]},zt=Dt.includes("reports"),Ft={path:"/reports",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-850d")]).then(n.bind(null,"cEOe"))},name:"Reports",meta:{title:"reports",icon:"documentation",noCache:!0}}]},Nt=Dt.includes("invites"),Gt={path:"/invites",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-7c6b")]).then(n.bind(null,"HMof"))},name:"Invites",meta:{title:"invites",icon:"guide",noCache:!0}}]},Zt=Dt.includes("emoji-packs"),Yt={path:"/emoji_packs",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-546f")]).then(n.bind(null,"26YS"))},name:"Emoji Packs",meta:{title:"emoji-packs",icon:"eye-open",noCache:!0}}]},$t=Dt.includes("moderation-log"),qt={path:"/moderation_log",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-654d")]).then(n.bind(null,"CmY0"))},name:"Moderation Log",meta:{title:"moderationLog",icon:"list",noCache:!0}}]},Kt=Dt.includes("media-proxy-cache"),Wt={path:"/media_proxy_cache",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-03c5")]).then(n.bind(null,"mAEd"))},name:"MediaProxy Cache",meta:{title:"mediaProxyCache",icon:"example",noCache:!0}}]},Qt=[{path:"/redirect",component:Mt,hidden:!0,children:[{path:"/redirect/:path*",component:function(){return n.e("7zzA").then(n.bind(null,"7zzA"))}}]},{path:"/login-pleroma",component:function(){return Promise.all([n.e("oAJy"),n.e("chunk-16d0")]).then(n.bind(null,"iRgq"))},hidden:!0},{path:"/login",component:function(){return Promise.all([n.e("oAJy"),n.e("chunk-d34d")]).then(n.bind(null,"ntYl"))},hidden:!0},{path:"/auth-redirect",component:function(){return n.e("JEtC").then(n.bind(null,"JEtC"))},hidden:!0},{path:"/404",component:function(){return n.e("chunk-68ea9").then(n.bind(null,"/eX4"))},hidden:!0},{path:"/401",component:function(){return n.e("chunk-6e81").then(n.bind(null,"UUO+"))},hidden:!0},{path:"",component:Mt,redirect:"/users/index"}],Jt=new Fe.a({scrollBehavior:function(){return{y:0}},routes:Qt}),Xt=[{path:"/users",component:Mt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-f625"),n.e("chunk-342d")]).then(n.bind(null,"RGjw"))},name:"Users",meta:{title:"users",icon:"peoples",noCache:!0}}]}].concat(Be()(Ut?[]:[Vt]),Be()(zt?[]:[Ft]),Be()(Nt?[]:[Gt]),Be()(Zt?[]:[Yt]),Be()($t?[]:[qt]),Be()(Kt?[]:[Wt]),Be()(Bt?[]:[Ht]),[{path:"/users/:id",component:Mt,children:[{path:"",name:"UsersShow",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-521f")]).then(n.bind(null,"4bFr"))}}],hidden:!0},{path:"/statuses/:id",component:Mt,children:[{path:"",name:"StatusShow",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-3365")]).then(n.bind(null,"rwwt"))}}],hidden:!0},{path:"*",redirect:"/404",hidden:!0}]);function en(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function tn(e,t){var n=[];return e.forEach(function(e){var a=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?en(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):en(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},e);(function(e,t){return!t.meta||!t.meta.roles||e.some(function(e){return t.meta.roles.includes(e)})})(t,a)&&(a.children&&(a.children=tn(a.children,t)),n.push(a))}),n}var nn={state:{routers:[],addRouters:[]},mutations:{SET_ROUTERS:function(e,t){e.addRouters=t,e.routers=Qt.concat(t)}},actions:{GenerateRoutes:function(e,t){var n=e.commit;return new Promise(function(e){var a,r=t.roles;a=r.includes("admin")?Xt:tn(Xt,r),n("SET_ROUTERS",a),e()})}}};function an(e,t){return rn.apply(this,arguments)}function rn(){return(rn=g()(h.a.mark(function e(t,n){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/relay",method:"get",headers:ln(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function on(e,t,n){return sn.apply(this,arguments)}function sn(){return(sn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/relay",method:"post",headers:ln(a),data:{relay_url:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function cn(e,t,n){return un.apply(this,arguments)}function un(){return(un=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/relay",method:"delete",headers:ln(a),data:{relay_url:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ln=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},pn={state:{fetchedRelays:[],loading:!0},mutations:{SET_LOADING:function(e,t){e.loading=t},SET_RELAYS:function(e,t){e.fetchedRelays=t},ADD_RELAY:function(e,t){e.fetchedRelays=[].concat(Be()(e.fetchedRelays),[{actor:t}])},DELETE_RELAY:function(e,t){e.fetchedRelays=e.fetchedRelays.filter(function(e){return e.actor!==t})}},actions:{FetchRelays:function(e){return g()(h.a.mark(function t(){var n,a,r,o;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,n("SET_LOADING",!0),t.next=4,an(a.authHost,a.token);case 4:r=t.sent,o=r.data,n("SET_RELAYS",o.relays),n("SET_LOADING",!1);case 8:case"end":return t.stop()}},t)}))()},AddRelay:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,a("ADD_RELAY",t),n.prev=2,n.next=5,on(t,o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,r("FetchRelays"),n.finish(10);case 13:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()},DeleteRelay:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,a("DELETE_RELAY",t),n.prev=2,n.next=5,cn(t,o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,r("FetchRelays"),n.finish(10);case 13:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()}}};function dn(e,t,n){return mn.apply(this,arguments)}function mn(){return(mn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/reports",method:"patch",headers:bn(a),data:{reports:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function fn(e,t,n,a,r){return hn.apply(this,arguments)}function hn(){return(hn=g()(h.a.mark(function e(t,n,a,r,o){var s;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s=t.length>0?"/api/pleroma/admin/reports?state=".concat(t,"&page=").concat(n,"&page_size=").concat(a):"/api/pleroma/admin/reports?page=".concat(n,"&page_size=").concat(a),e.next=3,Object(b.a)({baseURL:Object(y.a)(r),url:s,method:"get",headers:bn(o)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function vn(){return(vn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/reports/".concat(n,"/notes"),method:"post",headers:bn(r),data:{content:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function gn(){return(gn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/reports/".concat(n,"/notes/").concat(t),method:"delete",headers:bn(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var bn=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}};function wn(e,t,n){return yn.apply(this,arguments)}function yn(){return(yn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/activate",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function xn(e,t,n,a){return Sn.apply(this,arguments)}function Sn(){return(Sn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/permission_group/".concat(n),method:"post",headers:ra(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function En(e,t,n,a,r){return Tn.apply(this,arguments)}function Tn(){return(Tn=g()(h.a.mark(function e(t,n,a,r,o){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users",method:"post",headers:ra(o),data:{users:[{nickname:t,email:n,password:a}]}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function kn(e,t,n){return On.apply(this,arguments)}function On(){return(On=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/deactivate",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _n(e,t,n,a){return Ln.apply(this,arguments)}function Ln(){return(Ln=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/permission_group/".concat(n),method:"delete",headers:ra(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Cn(e,t,n){return An.apply(this,arguments)}function An(){return(An=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users",method:"delete",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Pn(e,t,n){return In.apply(this,arguments)}function In(){return(In=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/disable_mfa",method:"put",headers:ra(a),data:{nickname:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function jn(e,t,n){return Rn.apply(this,arguments)}function Rn(){return(Rn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t),method:"get",headers:ra(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Mn(e,t,n){return Dn.apply(this,arguments)}function Dn(){return(Dn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/credentials"),method:"get",headers:ra(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Bn(e,t,n,a){return Hn.apply(this,arguments)}function Hn(){return(Hn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/".concat(t,"/credentials"),method:"patch",headers:ra(r),data:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Un(e,t,n){return Vn.apply(this,arguments)}function Vn(){return(Vn=g()(h.a.mark(function e(t,n,a){var r,o=arguments;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=o.length>3&&void 0!==o[3]?o[3]:1,e.next=3,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users?page=".concat(r,"&filters=").concat(t),method:"get",headers:ra(a)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function zn(e,t,n){return Fn.apply(this,arguments)}function Fn(){return(Fn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/password_reset"),method:"get",headers:ra(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Nn(e,t,n){return Gn.apply(this,arguments)}function Gn(){return(Gn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/force_password_reset",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Zn(e,t,n,a){return Yn.apply(this,arguments)}function Yn(){return(Yn=g()(h.a.mark(function e(t,n,a,r){var o,s=arguments;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=s.length>4&&void 0!==s[4]?s[4]:1,e.next=3,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users?query=".concat(t,"&page=").concat(o,"&filters=").concat(n),method:"get",headers:ra(r)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function $n(e,t,n,a){return qn.apply(this,arguments)}function qn(){return(qn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/tag",method:"put",headers:ra(r),data:{nicknames:t,tags:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Kn(e,t,n,a){return Wn.apply(this,arguments)}function Wn(){return(Wn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users/tag",method:"delete",headers:ra(r),data:{nicknames:t,tags:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Qn(){return(Qn=g()(h.a.mark(function e(t,n,a,r){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/statuses?godmode=").concat(a),method:"get",headers:ra(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Jn(e,t,n){return Xn.apply(this,arguments)}function Xn(){return(Xn=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/approve",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ea(e,t,n){return ta.apply(this,arguments)}function ta(){return(ta=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/confirm_email",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function na(e,t,n){return aa.apply(this,arguments)}function aa(){return(aa=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/resend_confirmation_email",method:"patch",headers:ra(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ra=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}};function oa(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function sa(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?oa(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oa(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var ia={state:{currentPage:1,fetchedReports:[],loading:!0,openReportsCount:0,pageSize:50,stateFilter:"",totalReportsCount:0},mutations:{SET_LAST_REPORT_ID:function(e,t){e.idOfLastReport=t},SET_LOADING:function(e,t){e.loading=t},SET_OPEN_REPORTS_COUNT:function(e,t){e.openReportsCount=t},SET_PAGE:function(e,t){e.currentPage=t},SET_REPORTS:function(e,t){e.fetchedReports=t},SET_REPORTS_COUNT:function(e,t){e.totalReportsCount=t},SET_REPORTS_FILTER:function(e,t){e.stateFilter=t}},actions:{ActivateUserFromReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.user,c=t.reportId,n.prev=2,n.next=5,wn([i.nickname],o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,u=s.fetchedReports.map(function(e){var t=sa(sa({},i),{},{deactivated:!1});return e.id===c?sa(sa({},e),{},{account:t}):e}),a("SET_REPORTS",u),n.finish(10);case 14:r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[2,7,10,14]])}))()},AddTagFromReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.user,c=t.tag,u=t.reportId,n.prev=2,n.next=5,$n([i.nickname],[c],o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,l=s.fetchedReports.map(function(e){var t=sa(sa({},i),{},{tags:[].concat(Be()(i.tags),[c])});return e.id===u?sa(sa({},e),{},{account:t}):e}),a("SET_REPORTS",l),n.finish(10);case 14:r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[2,7,10,14]])}))()},ChangeReportState:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.commit,r=e.dispatch,o=e.getters,s=e.state,dn(t,o.authHost,o.token),i=s.fetchedReports.map(function(e){return t.map(function(e){return e.id}).includes(e.id)?sa(sa({},e),{},{state:t[0].state}):e}),a("SET_REPORTS",i),r("FetchOpenReportsCount");case 5:case"end":return n.stop()}},n)}))()},ClearFetchedReports:function(e){(0,e.commit)("SET_REPORTS",[])},DeactivateUserFromReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.user,c=t.reportId,n.prev=2,n.next=5,kn([i.nickname],o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,u=s.fetchedReports.map(function(e){var t=sa(sa({},i),{},{deactivated:!0});return e.id===c?sa(sa({},e),{},{account:t}):e}),a("SET_REPORTS",u),n.finish(10);case 14:r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[2,7,10,14]])}))()},DeleteUserFromReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.user,c=t.reportId,n.prev=2,n.next=5,Cn([i.nickname],o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,u=s.fetchedReports.map(function(e){var t=sa(sa({},i),{},{deactivated:!0});return e.id===c?sa(sa({},e),{},{account:t}):e}),a("SET_REPORTS",u),n.finish(10);case 14:r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[2,7,10,14]])}))()},FetchReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=e.state,a("SET_LOADING",!0),n.next=4,fn(o.stateFilter,t,o.pageSize,r.authHost,r.token);case 4:s=n.sent,i=s.data,a("SET_REPORTS",i.reports),a("SET_REPORTS_COUNT",i.total),a("SET_PAGE",t),a("SET_LOADING",!1);case 10:case"end":return n.stop()}},n)}))()},FetchOpenReportsCount:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,r=e.state,n("SET_LOADING",!0),t.next=4,fn("open",r.currentPage,r.pageSize,a.authHost,a.token);case 4:o=t.sent,s=o.data,n("SET_OPEN_REPORTS_COUNT",s.total),n("SET_LOADING",!1);case 8:case"end":return t.stop()}},t)}))()},RemoveTagFromReports:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.user,c=t.tag,u=t.reportId,n.prev=2,n.next=5,Kn([i.nickname],[c],o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,l=s.fetchedReports.map(function(e){var t=sa(sa({},i),{},{tags:i.tags.filter(function(e){return e!==c})});return e.id===u?sa(sa({},e),{},{account:t}):e}),a("SET_REPORTS",l),n.finish(10);case 14:r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[2,7,10,14]])}))()},SetReportsFilter:function(e,t){(0,e.commit)("SET_REPORTS_FILTER",t)},CreateReportNote:function(e,t){var n=e.commit,a=e.getters,r=e.state,o=e.rootState,s=t.content,i=t.reportID;!function(e,t,n,a){vn.apply(this,arguments)}(s,i,a.authHost,a.token);var c={user:{avatar:o.user.avatar,nickname:o.user.name,id:o.user.id},content:s,created_at:(new Date).getTime()};n("SET_REPORTS",r.fetchedReports.map(function(e){return e.id===i&&(e.notes=[].concat(Be()(e.notes),[c])),e}))},DeleteReportNote:function(e,t){var n=e.commit,a=e.getters,r=e.state,o=t.noteID,s=t.reportID;!function(e,t,n,a){gn.apply(this,arguments)}(o,s,a.authHost,a.token),n("SET_REPORTS",r.fetchedReports.map(function(e){return e.id===s&&(e.notes=e.notes.filter(function(e){return e.id!==o})),e}))}}},ca=n("h74u");function ua(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function la(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ua(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ua(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function pa(e){var t=function(e,t){if("object"!==L()(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,t||"default");if("object"!==L()(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===L()(t)?t:String(t)}var da={state:{activeTab:"instance",configDisabled:!0,db:{},description:[],instancePanel:"",loading:!0,searchData:{},settings:{},termsOfServices:"",updatedSettings:{}},mutations:{CLEAR_UPDATED_SETTINGS:function(e){e.updatedSettings={}},SET_INSTANCE_PANEL:function(e,t){e.instancePanel=t},REMOVE_SETTING_FROM_UPDATED:function(e,t){var n=t.group,a=t.key,r=t.subkeys;if(ke.a.get(e.updatedSettings,[n,a,r[0]])){var o=e.updatedSettings[n][a],s=r[0],i=(o[s],A()(o,[s].map(pa)));e.updatedSettings=i}},SET_ACTIVE_TAB:function(e,t){e.activeTab=t},SET_DESCRIPTION:function(e,t){e.description=t},SET_LOADING:function(e,t){e.loading=t},SET_SEARCH:function(e,t){e.searchData=t},SET_SETTINGS:function(e,t){var n=t.reduce(function(e,t){var n=t.group,a=t.key,r=t.value,o=Object(ca.f)(a,r)?{value:Object(ca.c)(a,r)}:Object(ca.d)(r,a);return e[n]=e[n]?la(la({},e[n]),{},I()({},a,o)):I()({},a,o),e},{}),a=t.reduce(function(e,t){var n=t.group,a=t.key,r=t.db;return r&&(e[n]=e[n]?la(la({},e[n]),{},I()({},a,r)):I()({},a,r)),e},{});e.settings=n,e.db=a},SET_TERMS_OF_SERVICES:function(e,t){e.termsOfServices=t},TOGGLE_TABS:function(e,t){e.configDisabled=t},UPDATE_SETTINGS:function(e,t){var n=t.group,a=t.key,r=t.input,o=t.value,s=t.type,i=!e.updatedSettings[n]||"Pleroma.Emails.Mailer"===a&&":adapter"===r?I()({},a,I()({},r,[s,o])):I()({},a,la(la({},e.updatedSettings[n][a]),I()({},r,[s,o])));e.updatedSettings[n]=la(la({},e.updatedSettings[n]),i)},UPDATE_STATE:function(e,t){var n=t.group,a=t.key,r=t.input,o=t.value,s="Pleroma.Emails.Mailer"===a&&":adapter"===r?I()({},a,I()({},r,o)):I()({},a,la(la({},e.settings[n][a]),I()({},r,o)));e.settings[n]=la(la({},e.settings[n]),s)}},actions:{FetchInstanceDocument:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,n.next=3,fe(t,r.authHost,r.token);case 3:o=n.sent,s=o.data,a("instance-panel"===t?"SET_INSTANCE_PANEL":"SET_TERMS_OF_SERVICES",s);case 6:case"end":return n.stop()}},n)}))()},FetchSettings:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,n("SET_LOADING",!0),t.prev=2,t.next=5,de(a.authHost,a.token);case 5:return r=t.sent,t.next=8,le(a.authHost,a.token);case 8:o=t.sent,n("SET_DESCRIPTION",o.data),s=Object(ca.a)(o.data),n("SET_SEARCH",s),n("SET_SETTINGS",r.data.configs),t.next=21;break;case 15:return t.prev=15,t.t0=t.catch(2),n("TOGGLE_TABS",!0),n("SET_ACTIVE_TAB","relays"),n("SET_LOADING",!1),t.abrupt("return");case 21:n("TOGGLE_TABS",!1),n("SET_LOADING",!1);case 23:case"end":return t.stop()}},t,null,[[2,15]])}))()},RemoveInstanceDocument:function(e,t){return g()(h.a.mark(function n(){var a,r;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,n.next=3,ce(t,r.authHost,r.token);case 3:return n.next=5,a("FetchInstanceDocument",t);case 5:case"end":return n.stop()}},n)}))()},RemoveSetting:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,n.next=3,ye(t,r.authHost,r.token);case 3:return n.next=5,de(r.authHost,r.token);case 5:o=n.sent,s=t[0],i=s.group,c=s.key,u=s.subkeys,a("SET_SETTINGS",o.data.configs),a("TOGGLE_REBOOT",o.data.need_reboot),a("REMOVE_SETTING_FROM_UPDATED",{group:i,key:c,subkeys:u||[]});case 10:case"end":return n.stop()}},n)}))()},SetActiveTab:function(e,t){(0,e.commit)("SET_ACTIVE_TAB",t)},SubmitChanges:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,a=e.commit,r=e.state,o=Object.keys(r.updatedSettings).reduce(function(e,t){return[].concat(Be()(e),Be()(Object(ca.g)(t,r.updatedSettings[t],r.settings)))},[]),t.next=4,be(o,n.authHost,n.token);case 4:return t.next=6,de(n.authHost,n.token);case 6:s=t.sent,a("SET_SETTINGS",s.data.configs),a("TOGGLE_REBOOT",s.data.need_reboot),a("CLEAR_UPDATED_SETTINGS");case 10:case"end":return t.stop()}},t)}))()},UpdateInstanceDocs:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=t.name,s=t.content,a("SET_INSTANCE_PANEL",s),i=new FormData,c=new Blob([s],{type:"text/html"}),i.append("file",c),n.next=8,ve(o,i,r.authHost,r.token);case 8:case"end":return n.stop()}},n)}))()},UpdateSettings:function(e,t){var n=e.commit,a=t.group,r=t.key,o=t.input,s=t.value,i=t.type;n("UPDATE_SETTINGS",r?{group:a,key:r,input:o,value:s,type:i}:{group:a,key:o,input:"_value",value:s,type:i})},UpdateState:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l,p;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(a=e.commit,r=e.getters,o=e.state,s=t.group,i=t.key,c=t.input,u=t.value,"Pleroma.Emails.Mailer"!==i||":adapter"!==c){n.next=8;break}return l=Object.keys(o.settings[s][i]).filter(function(e){return":adapter"!==e}),n.next=6,ye([{group:s,key:i,delete:!0,subkeys:l}],r.authHost,r.token);case 6:n.next=12;break;case 8:if("Pleroma.Upload"!==i||":uploader"!==c){n.next=12;break}return p="Pleroma.Uploaders.Local"===u?"Pleroma.Uploaders.S3":"Pleroma.Uploaders.Local",n.next=12,ye([{group:s,key:p,delete:!0}],r.authHost,r.token);case 12:a("UPDATE_STATE",i?{group:s,key:i,input:c,value:u}:{group:s,key:c,input:"value",value:u});case 13:case"end":return n.stop()}},n)}))()}}};function ma(e,t,n,a,r){return fa.apply(this,arguments)}function fa(){return(fa=g()(h.a.mark(function e(t,n,a,r,o){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/statuses/".concat(t),method:"put",headers:ka(o),data:{sensitive:n,visibility:a}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ha(e,t,n){return va.apply(this,arguments)}function va(){return(va=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/statuses/".concat(t),method:"delete",headers:ka(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ga(e,t,n){return ba.apply(this,arguments)}function ba(){return(ba=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/statuses/".concat(t),method:"get",headers:ka(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function wa(e){return ya.apply(this,arguments)}function ya(){return(ya=g()(h.a.mark(function e(t){var n,a,r,o,s,i;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.godmode,a=t.localOnly,r=t.authHost,o=t.token,s=t.pageSize,i=t.page,e.next=3,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/statuses?godmode=".concat(n,"&local_only=").concat(a,"&page=").concat(i,"&page_size=").concat(s),method:"get",headers:ka(o)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function xa(e,t,n){return Sa.apply(this,arguments)}function Sa(){return(Sa=g()(h.a.mark(function e(t,n,a){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:t?"/api/pleroma/admin/stats?instance=".concat(t):"/api/pleroma/admin/stats",method:"get",headers:ka(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Ea(e){return Ta.apply(this,arguments)}function Ta(){return(Ta=g()(h.a.mark(function e(t){var n,a,r,o,s;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.instance,a=t.authHost,r=t.token,o=t.pageSize,s=t.page,e.next=3,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/instances/".concat(n,"/statuses?page=").concat(s,"&page_size=").concat(o),method:"get",headers:ka(r)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ka=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},Oa={state:{fetchedStatus:{},fetchedStatuses:[],loading:!1,statusAuthor:{},statusesByInstance:{selectedInstance:"",showLocal:!1,showPrivate:!1,page:1,pageSize:20,buttonLoading:!1,allLoaded:!1},statusVisibility:{}},mutations:{CHANGE_GODMODE_CHECKBOX_VALUE:function(e,t){e.statusesByInstance.showPrivate=t},CHANGE_LOCAL_CHECKBOX_VALUE:function(e,t){e.statusesByInstance.showLocal=t},CHANGE_PAGE:function(e,t){e.statusesByInstance.page=t},CHANGE_SELECTED_INSTANCE:function(e,t){e.statusesByInstance.selectedInstance=t},SET_STATUS:function(e,t){e.fetchedStatus=t},SET_STATUSES_BY_INSTANCE:function(e,t){e.fetchedStatuses=t},PUSH_STATUSES:function(e,t){e.fetchedStatuses=[].concat(Be()(e.fetchedStatuses),Be()(t))},SET_ALL_LOADED:function(e,t){e.statusesByInstance.allLoaded=t},SET_BUTTON_LOADING:function(e,t){e.statusesByInstance.buttonLoading=t},SET_LOADING:function(e,t){e.loading=t},SET_STATUS_VISIBILITY:function(e,t){e.statusVisibility=t},SET_STATUS_AUTHOR:function(e,t){e.statusAuthor=t}},actions:{ChangeStatusScope:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l,p;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=t.statusId,s=t.isSensitive,i=t.visibility,c=t.reportCurrentPage,u=t.userId,l=t.godmode,p=t.fetchStatusesByInstance,n.next=4,ma(o,s,i,r.authHost,r.token);case 4:0!==c?a("FetchReports",c):u.length>0?a("FetchUserStatuses",{userId:u,godmode:l}):p?a("FetchStatusesByInstance"):a("FetchStatusAfterUserModeration",o);case 5:case"end":return n.stop()}},n)}))()},ClearState:function(e){var t=e.commit;t("CHANGE_SELECTED_INSTANCE",""),t("SET_STATUSES_BY_INSTANCE",[]),t("CHANGE_LOCAL_CHECKBOX_VALUE",!1),t("CHANGE_GODMODE_CHECKBOX_VALUE",!1),t("SET_ALL_LOADED",!1),t("CHANGE_PAGE",1)},DeleteStatus:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=t.statusId,s=t.reportCurrentPage,i=t.userId,c=t.godmode,u=t.fetchStatusesByInstance,n.next=4,ha(o,r.authHost,r.token);case 4:0!==s?a("FetchReports",s):i.length>0?a("FetchUserStatuses",{userId:i,godmode:c}):u&&a("FetchStatusesByInstance");case 5:case"end":return n.stop()}},n)}))()},FetchStatus:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,a("SET_LOADING",!0),n.next=4,ga(t,o.authHost,o.token);case 4:i=n.sent,a("SET_STATUS",i.data),a("SET_STATUS_AUTHOR",i.data.account),a("SET_LOADING",!1),r("FetchUserStatuses",{userId:s.fetchedStatus.account.id,godmode:!1});case 9:case"end":return n.stop()}},n)}))()},FetchStatusAfterUserModeration:function(e,t){var n=e.commit,a=e.dispatch,r=e.getters;e.state;n("SET_LOADING",!0),ga(t,r.authHost,r.token).then(function(e){return a("SetStatus",e.data)}),n("SET_LOADING",!1)},FetchStatusesCount:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,a("SET_LOADING",!0),n.next=4,xa(t,r.authHost,r.token);case 4:o=n.sent,s=o.data,a("SET_STATUS_VISIBILITY",s.status_visibility),a("SET_LOADING",!1);case 8:case"end":return n.stop()}},n)}))()},FetchStatusesByInstance:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s,i;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.commit,a=e.dispatch,r=e.getters,o=e.state,s=e.rootState,n("SET_LOADING",!0),a("FetchStatusesCount",o.statusesByInstance.selectedInstance),""!==o.statusesByInstance.selectedInstance){t.next=7;break}n("SET_STATUSES_BY_INSTANCE",[]),t.next=19;break;case 7:if(o.statusesByInstance.selectedInstance!==s.user.authHost){t.next=13;break}return t.next=10,wa({godmode:o.statusesByInstance.showPrivate,localOnly:o.statusesByInstance.showLocal,authHost:r.authHost,token:r.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 10:t.t0=t.sent,t.next=16;break;case 13:return t.next=15,Ea({instance:o.statusesByInstance.selectedInstance,authHost:r.authHost,token:r.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 15:t.t0=t.sent;case 16:i=t.t0,n("SET_STATUSES_BY_INSTANCE",i.data),i.data.length<o.statusesByInstance.pageSize&&n("SET_ALL_LOADED",!0);case 19:n("SET_LOADING",!1);case 20:case"end":return t.stop()}},t)}))()},FetchStatusesPageByInstance:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.commit,a=e.getters,r=e.rootState,o=e.state,n("SET_BUTTON_LOADING",!0),o.statusesByInstance.selectedInstance!==r.user.authHost){t.next=8;break}return t.next=5,wa({godmode:o.statusesByInstance.showPrivate,localOnly:o.statusesByInstance.showLocal,authHost:a.authHost,token:a.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 5:t.t0=t.sent,t.next=11;break;case 8:return t.next=10,Ea({instance:o.statusesByInstance.selectedInstance,authHost:a.authHost,token:a.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 10:t.t0=t.sent;case 11:s=t.t0,n("PUSH_STATUSES",s.data),n("SET_BUTTON_LOADING",!1),s.data.length<o.statusesByInstance.pageSize&&n("SET_ALL_LOADED",!0);case 15:case"end":return t.stop()}},t)}))()},HandleGodmodeCheckboxChange:function(e,t){var n=e.commit,a=e.dispatch;a("HandlePageChange",1),n("SET_ALL_LOADED",!1),n("CHANGE_GODMODE_CHECKBOX_VALUE",t),a("FetchStatusesByInstance")},HandleLocalCheckboxChange:function(e,t){var n=e.commit,a=e.dispatch;a("HandlePageChange",1),n("SET_ALL_LOADED",!1),n("CHANGE_LOCAL_CHECKBOX_VALUE",t),a("FetchStatusesByInstance")},HandleFilterChange:function(e,t){var n=e.commit;n("CHANGE_SELECTED_INSTANCE",t),n("SET_ALL_LOADED",!1)},HandlePageChange:function(e,t){(0,e.commit)("CHANGE_PAGE",t)},SetStatus:function(e,t){var n=e.commit;n("SET_STATUS",t),n("SET_STATUS_AUTHOR",t.account)}}},_a=n("J4zp"),La=n.n(_a);function Ca(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Aa(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Aa(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var a=0,r=function(){};return{s:r,n:function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,i=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){i=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(i)throw o}}}}function Aa(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}var Pa={state:{visitedViews:[],cachedViews:[]},mutations:{ADD_VISITED_VIEW:function(e,t){e.visitedViews.some(function(e){return e.path===t.path})||e.visitedViews.push(Object.assign({},t,{title:t.meta.title||"no-name"}))},ADD_CACHED_VIEW:function(e,t){e.cachedViews.includes(t.name)||t.meta.noCache||e.cachedViews.push(t.name)},DEL_VISITED_VIEW:function(e,t){var n,a=Ca(e.visitedViews.entries());try{for(a.s();!(n=a.n()).done;){var r=La()(n.value,2),o=r[0];if(r[1].path===t.path){e.visitedViews.splice(o,1);break}}}catch(e){a.e(e)}finally{a.f()}},DEL_CACHED_VIEW:function(e,t){var n,a=Ca(e.cachedViews);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r===t.name){var o=e.cachedViews.indexOf(r);e.cachedViews.splice(o,1);break}}}catch(e){a.e(e)}finally{a.f()}},DEL_OTHERS_VISITED_VIEWS:function(e,t){e.visitedViews=e.visitedViews.filter(function(e){return e.meta.affix||e.path===t.path})},DEL_OTHERS_CACHED_VIEWS:function(e,t){var n,a=Ca(e.cachedViews);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r===t.name){var o=e.cachedViews.indexOf(r);e.cachedViews=e.cachedViews.slice(o,o+1);break}}}catch(e){a.e(e)}finally{a.f()}},DEL_ALL_VISITED_VIEWS:function(e){var t=e.visitedViews.filter(function(e){return e.meta.affix});e.visitedViews=t},DEL_ALL_CACHED_VIEWS:function(e){e.cachedViews=[]},UPDATE_VISITED_VIEW:function(e,t){var n,a=Ca(e.visitedViews);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r.path===t.path){r=Object.assign(r,t);break}}}catch(e){a.e(e)}finally{a.f()}}},actions:{addView:function(e,t){var n=e.dispatch;n("addVisitedView",t),n("addCachedView",t)},addVisitedView:function(e,t){(0,e.commit)("ADD_VISITED_VIEW",t)},addCachedView:function(e,t){(0,e.commit)("ADD_CACHED_VIEW",t)},delView:function(e,t){var n=e.dispatch,a=e.state;return new Promise(function(e){n("delVisitedView",t),n("delCachedView",t),e({visitedViews:Be()(a.visitedViews),cachedViews:Be()(a.cachedViews)})})},delVisitedView:function(e,t){var n=e.commit,a=e.state;return new Promise(function(e){n("DEL_VISITED_VIEW",t),e(Be()(a.visitedViews))})},delCachedView:function(e,t){var n=e.commit,a=e.state;return new Promise(function(e){n("DEL_CACHED_VIEW",t),e(Be()(a.cachedViews))})},delOthersViews:function(e,t){var n=e.dispatch,a=e.state;return new Promise(function(e){n("delOthersVisitedViews",t),n("delOthersCachedViews",t),e({visitedViews:Be()(a.visitedViews),cachedViews:Be()(a.cachedViews)})})},delOthersVisitedViews:function(e,t){var n=e.commit,a=e.state;return new Promise(function(e){n("DEL_OTHERS_VISITED_VIEWS",t),e(Be()(a.visitedViews))})},delOthersCachedViews:function(e,t){var n=e.commit,a=e.state;return new Promise(function(e){n("DEL_OTHERS_CACHED_VIEWS",t),e(Be()(a.cachedViews))})},delAllViews:function(e,t){var n=e.dispatch,a=e.state;return new Promise(function(e){n("delAllVisitedViews",t),n("delAllCachedViews",t),e({visitedViews:Be()(a.visitedViews),cachedViews:Be()(a.cachedViews)})})},delAllVisitedViews:function(e){var t=e.commit,n=e.state;return new Promise(function(e){t("DEL_ALL_VISITED_VIEWS"),e(Be()(n.visitedViews))})},delAllCachedViews:function(e){var t=e.commit,n=e.state;return new Promise(function(e){t("DEL_ALL_CACHED_VIEWS"),e(Be()(n.cachedViews))})},updateVisitedView:function(e,t){(0,e.commit)("UPDATE_VISITED_VIEW",t)}}};function Ia(e,t,n){return ja.apply(this,arguments)}function ja(){return(ja=g()(h.a.mark(function e(t,n,a){var r,o;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/v1/apps",method:"post",data:{client_name:"AdminFE_".concat(Math.random()),redirect_uris:"".concat(window.location.origin,"/oauth-callback"),scopes:"read write follow push admin"}});case 2:return r=e.sent,o=r.data,e.abrupt("return",Object(b.a)({baseURL:Object(y.a)(a),url:"/oauth/token",method:"post",data:{client_id:o.client_id,client_secret:o.client_secret,grant_type:"password",username:t,password:n}}));case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Ra(e,t){return Object(b.a)({baseURL:Object(y.a)(t),url:"/api/v1/accounts/verify_credentials",method:"get",headers:e?{Authorization:"Bearer ".concat(e)}:{}})}function Ma(e){return Da.apply(this,arguments)}function Da(){return(Da=g()(h.a.mark(function e(t){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/nodeinfo/2.0.json",method:"get"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Ba={state:{user:"",id:"",status:"",code:"",token:Object(w.b)(),authHost:Object(w.a)(),name:"",avatar:"",introduction:"",roles:[],setting:{articlePlatform:[]},nodeInfo:{}},mutations:{SET_CODE:function(e,t){e.code=t},SET_TOKEN:function(e,t){e.token=t},SET_INTRODUCTION:function(e,t){e.introduction=t},SET_SETTING:function(e,t){e.setting=t},SET_STATUS:function(e,t){e.status=t},SET_NAME:function(e,t){e.name=t},SET_AVATAR:function(e,t){e.avatar=t},SET_ROLES:function(e,t){e.roles=t},SET_ID:function(e,t){e.id=t},SET_AUTH_HOST:function(e,t){e.authHost=t},SET_NODE_INFO:function(e,t){e.nodeInfo=t}},actions:{LoginByUsername:function(e,t){var n=e.commit,a=e.dispatch,r=t.username,o=t.authHost,s=t.password;return new Promise(function(e,t){Ia(r,s,o).then(function(t){var a=t.data;n("SET_TOKEN",a.access_token),n("SET_AUTH_HOST",o),Object(w.f)(a.access_token),Object(w.e)(o),e()}).catch(function(e){a("addErrorLog",{message:e.message}),t(e)})})},GetNodeInfo:function(e){return g()(h.a.mark(function t(){var n,a,r,o;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.dispatch,r=e.state,t.next=3,Ma(r.authHost);case 3:o=t.sent,n("SET_NODE_INFO",o.data),a("SetInvitesEnabled",o.data.metadata.invitesEnabled);case 6:case"end":return t.stop()}},t)}))()},GetUserInfo:function(e){var t=e.commit,n=e.state;return new Promise(function(e,a){Ra(n.token,n.authHost).then(function(n){var r=n.data;r||a("Verification failed, please login again."),r.pleroma&&r.pleroma.is_admin?t("SET_ROLES",["admin"]):a('<span>This user doesn`t have admin rights. Try another credentials or see the </span><u><a target="_blank" href="https://docs.pleroma.social/backend/administration/CLI_tasks/user/#set-the-value-of-the-given-users-settings">docs</a></u><span> to find out how to make this user an admin</span>'),t("SET_NAME",r.username),t("SET_ID",r.id),t("SET_AVATAR",r.avatar),t("SET_INTRODUCTION",""),e(n)}).catch(function(e){a(e)})})},LogOut:function(e){var t=e.commit;t("SET_TOKEN",""),t("SET_ROLES",[]),Object(w.d)(),Object(w.c)()},FedLogOut:function(e){var t=e.commit;return new Promise(function(e){t("SET_TOKEN",""),Object(w.d)(),Object(w.c)(),e()})},LoginByPleromaFE:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.commit,r=e.dispatch,o=t.token,a("SET_TOKEN",o),Object(w.f)(o),a("SET_AUTH_HOST",window.location.host),Object(w.e)(window.location.host),r("GetUserInfo");case 7:case"end":return n.stop()}},n)}))()}}},Ha={state:{statuses:[],statusesLoading:!0,user:{},userCredentials:{},userProfileLoading:!0},mutations:{SET_STATUSES:function(e,t){e.statuses=t},SET_STATUSES_LOADING:function(e,t){e.statusesLoading=t},SET_USER:function(e,t){e.user=t},SET_USER_PROFILE_LOADING:function(e,t){e.userProfileLoading=t},SET_USER_CREDENTIALS:function(e,t){e.userCredentials=t}},actions:{FetchUserProfile:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=t.userId,i=t.godmode,a("SET_USER_PROFILE_LOADING",!0),n.next=5,jn(s,o.authHost,o.token);case 5:c=n.sent,a("SET_USER",c.data),a("SET_USER_PROFILE_LOADING",!1),r("FetchUserStatuses",{userId:s,godmode:i});case 9:case"end":return n.stop()}},n)}))()},FetchUserStatuses:function(e,t){var n=e.commit,a=e.dispatch,r=e.getters,o=t.userId,s=t.godmode;n("SET_STATUSES_LOADING",!0),function(e,t,n,a){return Qn.apply(this,arguments)}(o,r.authHost,s,r.token).then(function(e){return a("SetStatuses",e.data)}),n("SET_STATUSES_LOADING",!1)},FetchUserCredentials:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,o=t.nickname,n.next=4,Mn(o,r.authHost,r.token);case 4:s=n.sent,a("SET_USER_CREDENTIALS",s.data);case 6:case"end":return n.stop()}},n)}))()},SetStatuses:function(e,t){(0,e.commit)("SET_STATUSES",t)},UpdateUserCredentials:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=t.nickname,s=t.credentials,n.next=4,Bn(o,s,r.authHost,r.token);case 4:a("FetchUserCredentials",{nickname:o});case 5:case"end":return n.stop()}},n)}))()}}};function Ua(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function Va(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ua(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ua(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var za={state:{fetchedUsers:[],loading:!0,searchQuery:"",mrfPolicies:[],totalUsersCount:0,currentPage:1,pageSize:50,filters:{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1},passwordResetToken:{token:"",link:""}},mutations:{SET_USERS:function(e,t){e.fetchedUsers=t},SET_LOADING:function(e,t){e.loading=t},SWAP_USERS:function(e,t){var n=t.reduce(function(e,t){return e.filter(function(e){return e.id!==t.id})},e.fetchedUsers);if(0!==e.fetchedUsers.length){var a=[].concat(Be()(n),Be()(t));e.fetchedUsers=a.filter(function(e){return e.nickname&&e.id}).sort(function(e,t){return e.nickname.localeCompare(t.nickname)}).concat(a.filter(function(e){return!e.nickname||!e.id}))}},SET_COUNT:function(e,t){e.totalUsersCount=t},SET_PAGE:function(e,t){e.currentPage=t},SET_PAGE_SIZE:function(e,t){e.pageSize=t},SET_PASSWORD_RESET_TOKEN:function(e,t){var n=t.token,a=t.link;e.passwordResetToken.token=n,e.passwordResetToken.link=a},SET_SEARCH_QUERY:function(e,t){e.searchQuery=t},SET_TAG_POLICY:function(e,t){e.mrfPolicies=t},SET_USERS_FILTERS:function(e,t){e.filters=t}},actions:{ActivateUsers:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t._userId,i=o.map(function(e){return Va(Va({},e),{},{deactivated:!1})}),c=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:i,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,wn(c,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s});case 6:case"end":return n.stop()}},n)}))()},ApplyChanges:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.state,s=t.updatedUsers,i=t.callApiFn,c=t.userId,u=t.statusId,a("SWAP_USERS",s),n.prev=3,n.next=6,i();case 6:n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(3),n.abrupt("return");case 11:return n.prev=11,r("SearchUsers",{query:o.searchQuery,page:o.currentPage}),n.finish(11);case 14:u?r("FetchStatusAfterUserModeration",u):c&&r("FetchUserProfile",{userId:c,godmode:!1}),r("SuccessMessage");case 16:case"end":return n.stop()}},n,null,[[3,8,11,14]])}))()},AddRight:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t.right,i=t._userId,c=t._statusId,u=o.map(function(e){return e.local?Va(Va({},e),{},{roles:Va(Va({},e.roles),{},I()({},s,!0))}):e}),l=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,xn(l,s,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:i,statusId:c});case 6:case"end":return n.stop()}},n)}))()},AddTag:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t.tag,i=t._userId,c=t._statusId,u=o.map(function(e){return Va(Va({},e),{},{tags:[].concat(Be()(e.tags),[s])})}),l=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,$n(l,[s],r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:i,statusId:c});case 6:case"end":return n.stop()}},n)}))()},ApproveUsersAccount:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t._userId,i=t._statusId,c=o.map(function(e){return Va(Va({},e),{},{approval_pending:!1})}),u=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:c,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Jn(u,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s,statusId:i});case 6:case"end":return n.stop()}},n)}))()},ClearUsersState:function(e){var t=e.commit;t("SET_SEARCH_QUERY",""),t("SET_USERS_FILTERS",{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1})},ClearFilters:function(e){return g()(h.a.mark(function t(){var n,a,r;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:n=e.commit,a=e.dispatch,r=e.state,n("CLEAR_USERS_FILTERS"),a("SearchUsers",{query:r.searchQuery,page:1});case 3:case"end":return t.stop()}},t)}))()},ConfirmUsersEmail:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t._userId,i=t._statusId,c=o.map(function(e){return Va(Va({},e),{},{confirmation_pending:!1})}),u=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:c,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ea(u,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s,statusId:i});case 6:case"end":return n.stop()}},n)}))()},CreateNewAccount:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=e.state,s=t.nickname,i=t.email,c=t.password,n.prev=2,n.next=5,En(s,i,c,r.authHost,r.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,a("SearchUsers",{query:o.searchQuery,page:o.currentPage}),n.finish(10);case 13:a("SuccessMessage");case 14:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()},DeactivateUsers:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t._userId,i=o.map(function(e){return Va(Va({},e),{},{deactivated:!0})}),c=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:i,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,kn(c,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s});case 6:case"end":return n.stop()}},n)}))()},DisableMfa:function(e,t){return g()(h.a.mark(function n(){var a,r;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,n.prev=1,n.next=4,Pn(t,r.authHost,r.token);case 4:n.next=9;break;case 6:return n.prev=6,n.t0=n.catch(1),n.abrupt("return");case 9:a("SuccessMessage");case 10:case"end":return n.stop()}},n,null,[[1,6]])}))()},DeleteRight:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t.right,i=t._userId,c=t._statusId,u=o.map(function(e){return e.local?Va(Va({},e),{},{roles:Va(Va({},e.roles),{},I()({},s,!1))}):e}),l=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_n(l,s,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:i,statusId:c});case 6:case"end":return n.stop()}},n)}))()},DeleteUsers:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,e.state,s=t.users,i=t._userId,c=s.map(function(e){return e.nickname}),n.prev=3,n.next=6,Cn(c,o.authHost,o.token);case 6:n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(3),n.abrupt("return");case 11:u=s.map(function(e){return Va(Va({},e),{},{deactivated:!0})}),a("SWAP_USERS",u),i&&r("FetchUserProfile",{userId:i,godmode:!1}),r("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[3,8]])}))()},EnableTagPolicy:function(e){return g()(h.a.mark(function t(){var n,a,r,o;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.dispatch,a=e.getters,r=e.state,o=[{group:":pleroma",key:":mrf",value:[{tuple:[":policies",[].concat(Be()(r.mrfPolicies),["Pleroma.Web.ActivityPub.MRF.TagPolicy"])]}]}],t.next=4,be(o,a.authHost,a.token);case 4:n("FetchTagPolicySetting");case 5:case"end":return t.stop()}},t)}))()},FetchTagPolicySetting:function(e){return g()(h.a.mark(function t(){var n,a,r,o,s,i;return h.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,a=e.getters,t.next=3,de(a.authHost,a.token);case 3:r=t.sent,o=r.data,s=o.configs.find(function(e){return":mrf"===e.key})?o.configs.find(function(e){return":mrf"===e.key}).value:[],i=s.find(function(e){return":policies"===e.tuple[0]})?s.find(function(e){return":policies"===e.tuple[0]}).tuple[1]:[],n("SET_TAG_POLICY",Array.isArray(i)?i:[i]);case 8:case"end":return t.stop()}},t)}))()},FetchUsers:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.dispatch,o=e.getters,s=e.state,i=t.page,a("SET_LOADING",!0),c=Object.keys(s.filters).filter(function(e){return s.filters[e]}).join(),n.next=6,Un(c,o.authHost,o.token,i);case 6:return u=n.sent,n.next=9,r("GetNodeInfo");case 9:Fa(a,i,u.data);case 10:case"end":return n.stop()}},n)}))()},GetPasswordResetToken:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.commit,r=e.getters,n.next=3,zn(t,r.authHost,r.token);case 3:o=n.sent,s=o.data,a("SET_PASSWORD_RESET_TOKEN",s);case 6:case"end":return n.stop()}},n)}))()},RemovePasswordToken:function(e){(0,e.commit)("SET_PASSWORD_RESET_TOKEN",{link:"",token:""})},RemoveTag:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.users,s=t.tag,i=t._userId,c=t._statusId,u=o.map(function(e){return Va(Va({},e),{},{tags:e.tags.filter(function(e){return e!==s})})}),l=o.map(function(e){return e.nickname}),a("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Kn(l,[s],r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:i,statusId:c});case 6:case"end":return n.stop()}},n)}))()},RequirePasswordReset:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=t.map(function(e){return e.nickname}),n.prev=2,n.next=5,Nn(o,r.authHost,r.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:a("SuccessMessage");case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},ResendConfirmationEmail:function(e,t){return g()(h.a.mark(function n(){var a,r,o;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return a=e.dispatch,r=e.getters,o=t.map(function(e){return e.nickname}),n.prev=2,n.next=5,na(o,r.authHost,r.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:a("SuccessMessage");case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},SearchUsers:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(a=e.commit,r=e.dispatch,o=e.state,s=e.getters,i=t.query,c=t.page,0!==i.length){n.next=7;break}a("SET_SEARCH_QUERY",i),r("FetchUsers",{page:c}),n.next=14;break;case 7:return a("SET_LOADING",!0),a("SET_SEARCH_QUERY",i),u=Object.keys(o.filters).filter(function(e){return o.filters[e]}).join(),n.next=12,Zn(i,u,s.authHost,s.token,c);case 12:l=n.sent,Fa(a,c,l.data);case 14:case"end":return n.stop()}},n)}))()},SuccessMessage:function(){i.Message.success({message:R.a.t("users.completed"),duration:5e3})},ToggleUsersFilter:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.commit,r=e.dispatch,o=e.state,s=Va(Va({},{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1}),t),a("SET_USERS_FILTERS",s),r("SearchUsers",{query:o.searchQuery,page:1});case 5:case"end":return n.stop()}},n)}))()},UpdateActorType:function(e,t){return g()(h.a.mark(function n(){var a,r,o,s,i,c,u,l;return h.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:a=e.dispatch,r=e.getters,o=t.user,s=t.type,i=t._userId,c=t._statusId,u=[Va(Va({},o),{},{actor_type:s})],l={actor_type:s},a("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(h.a.mark(function e(){return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Bn(o.nickname,l,r.authHost,r.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:i,statusId:c});case 6:case"end":return n.stop()}},n)}))()}}},Fa=function(e,t,n){var a=n.users,r=n.count,o=n.page_size;e("SET_USERS",a),e("SET_COUNT",r),e("SET_PAGE",t),e("SET_PAGE_SIZE",o),e("SET_LOADING",!1)},Na=za;r.default.use(m.a);var Ga=new m.a.Store({modules:{app:O,errorLog:U,emojiPacks:H,invites:W,mediaProxyCache:Ee,moderationLog:Me,peers:ze,permission:nn,relays:pn,reports:ia,settings:da,status:Oa,tagsView:Pa,user:Ba,userProfile:Ha,users:Na},getters:V}),Za=n("zT9a");r.default.component("svg-icon",Za.a);!function(e){e.keys().map(e)}(n("Uf/o")),r.default.config.errorHandler=function(e,t,n,a){r.default.nextTick(function(){Ga.dispatch("addErrorLog",{err:e,vm:t,info:n,url:window.location.href}),console.error(e,n)})};var Ya=n("Mj6V"),$a=n.n(Ya);n("pdi6");function qa(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function Ka(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?qa(Object(n),!0).forEach(function(t){I()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):qa(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}$a.a.configure({showSpinner:!1});var Wa=["/login","/auth-redirect","/login-pleroma"];function Qa(e,t){return 1===e?e+t:e+t+"s"}function Ja(e){var t=Date.now()/1e3-Number(e);return t<3600?Qa(~~(t/60)," minute"):t<86400?Qa(~~(t/3600)," hour"):Qa(~~(t/86400)," day")}function Xa(e,t){for(var n=[{value:1e18,symbol:"E"},{value:1e15,symbol:"P"},{value:1e12,symbol:"T"},{value:1e9,symbol:"G"},{value:1e6,symbol:"M"},{value:1e3,symbol:"k"}],a=0;a<n.length;a++)if(e>=n[a].value)return(e/n[a].value+.1).toFixed(t).replace(/\.0+$|(\.[0-9]*[1-9])0+$/,"$1")+n[a].symbol;return e.toString()}function er(e){return(+e||0).toString().replace(/^-?\d+/g,function(e){return e.replace(/(?=(?!\b)(\d{3})+$)/g,",")})}Jt.beforeEach(function(e,t,n){$a.a.start(),Object(w.b)()?"/login"===e.path?(n({path:"/"}),$a.a.done()):0===Ga.getters.roles.length?Ga.dispatch("GetUserInfo").then(function(t){var a=t.data.pleroma.is_admin?["admin"]:[];Ga.dispatch("GenerateRoutes",{roles:a}).then(function(){Jt.addRoutes(Ga.getters.addRouters),n(Ka(Ka({},e),{},{replace:!0}))})}).catch(function(e){Ga.dispatch("FedLogOut").then(function(){Object(i.Message)({dangerouslyUseHTMLString:!0,message:e,type:"error",duration:1e4}),n({path:"/"})})}):function(e,t){return e.indexOf("admin")>=0||!t||e.some(function(e){return t.indexOf(e)>=0})}(Ga.getters.roles,e.meta.roles)?n():n({path:"/401",replace:!0,query:{noGoBack:!0}}):-1!==Wa.indexOf(e.path)?n():(n("/login?redirect=".concat(e.path)),$a.a.done())}),Jt.afterEach(function(){$a.a.done()}),r.default.use(c.a,{size:s.a.get("size")||"medium",i18n:function(e,t){return R.a.t(e,t)}}),Object.keys(a).forEach(function(e){r.default.filter(e,a[e])}),r.default.config.productionTip=!1,new r.default({el:"#app",router:Jt,store:Ga,i18n:R.a,render:function(e){return e(d)}})},X4fA:function(e,t,n){"use strict";n.d(t,"b",function(){return i}),n.d(t,"f",function(){return c}),n.d(t,"d",function(){return u}),n.d(t,"a",function(){return l}),n.d(t,"e",function(){return p}),n.d(t,"c",function(){return d});var a=n("p46w"),r=n.n(a),o="Admin-Token",s="Auth-Host";function i(){return r.a.get(o)}function c(e){return r.a.set(o,e)}function u(){return r.a.remove(o)}function l(){return r.a.get(s)}function p(e){return r.a.set(s,e)}function d(){return r.a.remove(s)}},Xm3t:function(e,t,n){},Yymj:function(e,t,n){"use strict";var a=n("jf83");n.n(a).a},"Z+gY":function(e,t,n){"use strict";var a=n("Kcm3");n.n(a).a},ZZmv:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-excel",use:"icon-excel-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-excel"><path d="M78.208 16.576v8.384h38.72v5.376h-38.72v8.704h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.512h38.72v5.376h-38.72v11.136H128v-94.72H78.208zM0 114.368L72.128 128V0L0 13.632v100.736z" /><path d="M28.672 82.56h-11.2l14.784-23.488-14.08-22.592h11.52l8.192 14.976 8.448-14.976h11.136l-14.08 22.208L58.368 82.56H46.656l-8.768-15.68z" /></symbol>'});s.a.add(i);t.default=i},ZoO1:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-guide",use:"icon-guide-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-guide"><path d="M1.482 70.131l36.204 16.18 69.932-65.485-61.38 70.594 46.435 18.735c1.119.425 2.397-.17 2.797-1.363v-.085L127.998.047 1.322 65.874c-1.12.597-1.519 1.959-1.04 3.151.32.511.72.937 1.2 1.107zm44.676 57.821L64.22 107.26l-18.062-7.834v28.527z" /></symbol>'});s.a.add(i);t.default=i},cBj6:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-add_col_after",use:"icon-tiptap-add_col_after-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-add_col_after">\n <path d="M5,14 C7.76005315,14.0033061 9.99669388,16.2399468 10,19 C10,21.7614237 7.76142375,24 5,24 C2.23857625,24 1.77635684e-15,21.7614237 1.77635684e-15,19 C1.77635684e-15,16.2385763 2.23857625,14 5,14 Z M7.5,19.9375 C8.01776695,19.9375 8.4375,19.517767 8.4375,19 C8.4375,18.482233 8.01776695,18.0625 7.5,18.0625 L6.25,18.0625 C6.07741102,18.0625 5.9375,17.922589 5.9375,17.75 L5.9375,16.5 C5.9375,15.982233 5.51776695,15.5625 5,15.5625 C4.48223305,15.5625 4.0625,15.982233 4.0625,16.5 L4.0625,17.75 C4.0625,17.922589 3.92258898,18.0625 3.75,18.0625 L2.5,18.0625 C1.98223305,18.0625 1.5625,18.482233 1.5625,19 C1.5625,19.517767 1.98223305,19.9375 2.5,19.9375 L3.75,19.9375 C3.92258898,19.9375 4.0625,20.077411 4.0625,20.25 L4.0625,21.5 C4.0625,22.017767 4.48223305,22.4375 5,22.4375 C5.51776695,22.4375 5.9375,22.017767 5.9375,21.5 L5.9375,20.25 C5.9375,20.077411 6.07741102,19.9375 6.25,19.9375 L7.5,19.9375 Z M16,19 C16,20.6568542 17.3431458,22 19,22 C20.6568542,22 22,20.6568542 22,19 L22,5 C22,3.34314575 20.6568542,2 19,2 C17.3431458,2 16,3.34314575 16,5 L16,19 Z M14,19 L14,5 C14,2.23857625 16.2385763,0 19,0 C21.7614237,0 24,2.23857625 24,5 L24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 Z" />\n</symbol>'});s.a.add(i);t.default=i},cIpu:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-star",use:"icon-star-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-star"><path d="M70.66 4.328l14.01 29.693c1.088 2.29 3.177 3.882 5.603 4.25l31.347 4.76c6.087.926 8.528 8.756 4.117 13.247L103.05 79.395c-1.75 1.78-2.544 4.352-2.132 6.867l5.352 32.641c1.043 6.337-5.33 11.182-10.778 8.19l-28.039-15.409a7.13 7.13 0 0 0-6.91 0l-28.039 15.41c-5.448 2.99-11.821-1.854-10.777-8.19l5.352-32.642c.415-2.515-.387-5.088-2.136-6.867L2.264 56.278C-2.146 51.787.286 43.957 6.38 43.031l31.343-4.76c2.419-.368 4.51-1.96 5.595-4.25L57.334 4.328c2.728-5.77 10.605-5.77 13.325 0z" /></symbol>'});s.a.add(i);t.default=i},dSKK:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-bold",use:"icon-tiptap-bold-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-bold"><title>text-bold</title><path d="M17.194,10.962A6.271,6.271,0,0,0,12.844.248H4.3a1.25,1.25,0,0,0,0,2.5H5.313a.25.25,0,0,1,.25.25V21a.25.25,0,0,1-.25.25H4.3a1.25,1.25,0,1,0,0,2.5h9.963a6.742,6.742,0,0,0,2.93-12.786Zm-4.35-8.214a3.762,3.762,0,0,1,0,7.523H8.313a.25.25,0,0,1-.25-.25V3a.25.25,0,0,1,.25-.25Zm1.42,18.5H8.313a.25.25,0,0,1-.25-.25V13.021a.25.25,0,0,1,.25-.25h4.531c.017,0,.033,0,.049,0l.013,0h1.358a4.239,4.239,0,0,1,0,8.477Z" /></symbol>'});s.a.add(i);t.default=i},ec3N:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-add_row_after",use:"icon-tiptap-add_row_after-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-add_row_after">\n <path d="M19,0 C21.7600532,0.00330611633 23.9966939,2.23994685 24,5 C24,7.76142375 21.7614237,10 19,10 C16.2385763,10 14,7.76142375 14,5 C14,2.23857625 16.2385763,0 19,0 Z M21.5,5.9375 C22.017767,5.9375 22.4375,5.51776695 22.4375,5 C22.4375,4.48223305 22.017767,4.0625 21.5,4.0625 L20.25,4.0625 C20.077411,4.0625 19.9375,3.92258898 19.9375,3.75 L19.9375,2.5 C19.9375,1.98223305 19.517767,1.5625 19,1.5625 C18.482233,1.5625 18.0625,1.98223305 18.0625,2.5 L18.0625,3.75 C18.0625,3.92258898 17.922589,4.0625 17.75,4.0625 L16.5,4.0625 C15.982233,4.0625 15.5625,4.48223305 15.5625,5 C15.5625,5.51776695 15.982233,5.9375 16.5,5.9375 L17.75,5.9375 C17.922589,5.9375 18.0625,6.07741102 18.0625,6.25 L18.0625,7.5 C18.0625,8.01776695 18.482233,8.4375 19,8.4375 C19.517767,8.4375 19.9375,8.01776695 19.9375,7.5 L19.9375,6.25 C19.9375,6.07741102 20.077411,5.9375 20.25,5.9375 L21.5,5.9375 Z M5,16 C3.34314575,16 2,17.3431458 2,19 C2,20.6568542 3.34314575,22 5,22 L19,22 C20.6568542,22 22,20.6568542 22,19 C22,17.3431458 20.6568542,16 19,16 L5,16 Z M5,14 L19,14 C21.7614237,14 24,16.2385763 24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 3.38176876e-16,21.7614237 0,19 C-1.2263553e-15,16.2385763 2.23857625,14 5,14 Z" />\n</symbol>'});s.a.add(i);t.default=i},fhHp:function(e,t,n){"use strict";var a=n("lt0h");n.n(a).a},gNoN:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-wechat",use:"icon-wechat-usage",viewBox:"0 0 128 110",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 110" id="icon-wechat"><path d="M86.635 33.334c1.467 0 2.917.113 4.358.283C87.078 14.392 67.58.111 45.321.111 20.44.111.055 17.987.055 40.687c0 13.104 6.781 23.863 18.115 32.209l-4.527 14.352 15.82-8.364c5.666 1.182 10.207 2.395 15.858 2.395 1.42 0 2.829-.073 4.227-.189-.886-3.19-1.398-6.53-1.398-9.996 0-20.845 16.98-37.76 38.485-37.76zm-24.34-12.936c3.407 0 5.665 2.363 5.665 5.954 0 3.576-2.258 5.97-5.666 5.97-3.392 0-6.795-2.395-6.795-5.97 0-3.591 3.403-5.954 6.795-5.954zM30.616 32.323c-3.393 0-6.818-2.395-6.818-5.971 0-3.591 3.425-5.954 6.818-5.954 3.392 0 5.65 2.363 5.65 5.954 0 3.576-2.258 5.97-5.65 5.97z" /><path d="M127.945 70.52c0-19.075-18.108-34.623-38.448-34.623-21.537 0-38.5 15.548-38.5 34.623 0 19.108 16.963 34.622 38.5 34.622 4.508 0 9.058-1.2 13.584-2.395l12.414 7.167-3.404-11.923c9.087-7.184 15.854-16.712 15.854-27.471zm-50.928-5.97c-2.254 0-4.53-2.362-4.53-4.773 0-2.378 2.276-4.771 4.53-4.771 3.422 0 5.665 2.393 5.665 4.771 0 2.41-2.243 4.773-5.665 4.773zm24.897 0c-2.24 0-4.498-2.362-4.498-4.773 0-2.378 2.258-4.771 4.498-4.771 3.392 0 5.665 2.393 5.665 4.771 0 2.41-2.273 4.773-5.665 4.773z" /></symbol>'});s.a.add(i);t.default=i},h74u:function(e,t,n){"use strict";n.d(t,"b",function(){return g}),n.d(t,"c",function(){return w}),n.d(t,"d",function(){return y}),n.d(t,"e",function(){return T}),n.d(t,"f",function(){return O}),n.d(t,"g",function(){return _}),n.d(t,"a",function(){return C});var a=n("RIqP"),r=n.n(a),o=n("cDf5"),s=n.n(o),i=n("lSNA"),c=n.n(i),u=n("J4zp"),l=n.n(u),p=n("SA+Z"),d=n.n(p),m=n("LvDl"),f=n.n(m);function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?h(Object(n),!0).forEach(function(t){c()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):h(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var g=function(e){return"true"===e||"false"!==e&&e},b=function(e,t,n){if("state"===e)return f.a.get(t,n);var a=d()(n),r=a[0],o=a.slice(1),s=t[r];if(0!==o.length&&s){return function e(t,n){var a=d()(n),r=a[0],o=a.slice(1);return 0===n.length?t:e(t[1][r],o)}(s,o)}return s||!1},w=function(e,t){if(":backends"===e){var n=t.findIndex(function(e){return"object"===s()(e)&&e.tuple.includes(":ex_syslogger")});return t.map(function(e,t){return t===n?":ex_syslogger":e})}return":args"===e&&"string"==typeof t?[t]:t},y=function e(t,n){return t.reduce(function(t,a){return":rate_limit"===n?t[a.tuple[0]]=Array.isArray(a.tuple[1])?a.tuple[1].map(function(e){return e.tuple}):a.tuple[1].tuple:":mascots"===a.tuple[0]?t[a.tuple[0]]=a.tuple[1].reduce(function(e,t){return[].concat(r()(e),[c()({},t.tuple[0],v(v({},t.tuple[1]),{},{id:"f".concat((~~(1e8*Math.random())).toString(16))}))])},[]):Array.isArray(a.tuple[1])&&(":groups"===a.tuple[0]||":replace"===a.tuple[0]||":retries"===a.tuple[0]||":headers"===a.tuple[0]&&"Pleroma.Web.MediaProxy.Invalidation.Http"===n||":crontab"===a.tuple[0])?":crontab"===a.tuple[0]?t[a.tuple[0]]=a.tuple[1].reduce(function(e,t){return[].concat(r()(e),[c()({},t.tuple[1],{value:t.tuple[0],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):t[a.tuple[0]]=a.tuple[1].reduce(function(e,t){return[].concat(r()(e),[c()({},t.tuple[0],{value:t.tuple[1],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):":icons"===a.tuple[0]?t[a.tuple[0]]=a.tuple[1].map(function(e){return Object.keys(e).map(function(t){return{key:t,value:e[t],id:"f".concat((~~(1e8*Math.random())).toString(16))}})},[]):":prune"===a.tuple[0]?t[a.tuple[0]]=":disabled"===a.tuple[1]?[a.tuple[1]]:a.tuple[1].tuple:":proxy_url"===a.tuple[0]||":sender"===a.tuple[0]?t[a.tuple[0]]=S(a.tuple[0],a.tuple[1]):":args"===a.tuple[0]?t[a.tuple[0]]=w(a.tuple[0],a.tuple[1]):Array.isArray(a.tuple[1])&&"object"===s()(a.tuple[1][0])&&!Array.isArray(a.tuple[1][0])&&a.tuple[1][0].tuple?t[a.tuple[0]]=e(a.tuple[1],a.tuple[0]):Array.isArray(a.tuple[1])?t[a.tuple[0]]=a.tuple[1]:":ip"===a.tuple[0]?t[a.tuple[0]]=a.tuple[1].tuple.join("."):a.tuple[1]&&"object"===s()(a.tuple[1])?":params"===a.tuple[0]||":match_actor"===a.tuple[0]?t[a.tuple[0]]=Object.keys(a.tuple[1]).reduce(function(e,t){return[].concat(r()(e),[c()({},t,{value:a.tuple[1][t],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):t[a.tuple[0]]=x(a.tuple[1]):t[a.tuple[0]]=a.tuple[1],t},{})},x=function(e){return Object.keys(e).reduce(function(t,n){return t[n]=e[n],t},{})},S=function(e,t){if(":proxy_url"===e){if(t&&!Array.isArray(t)&&"object"===s()(t)&&3===t.tuple.length&&":socks5"===t.tuple[0]){var n=l()(t.tuple,3);return{socks5:!0,host:n[1],port:n[2]}}if("string"==typeof t){var a=t.split(":"),r=l()(a,2);return{socks5:!1,host:r[0],port:r[1]}}return{socks5:!1,host:null,port:null}}if(":sender"===e){if("string"==typeof t)return{email:t};if(t&&"object"===s()(t)&&2===t.tuple.length){var o=l()(t.tuple,2);return{nickname:o[0],email:o[1]}}}},E=function(e,t){return"atom"===e&&t.length>0||Array.isArray(e)&&e.includes("boolean")&&e.includes("atom")&&"string"==typeof t},T=function e(t,n,a,o,s,i,u){var l=d()(s),p=l[0],m=p.key,f=p.type,h=l.slice(1),g=[a,o].concat(r()(s.reverse().map(function(e){return e.key}).slice(0,-1))),w=k("state",i,g)?v(v({},b("state",i[a][o],s.map(function(e){return e.key}).slice(0,-1))),c()({},m,t)):c()({},m,t),y=k("updatedSettings",u,g)?v(v({},b("updatedSettings",u[a][o],s.map(function(e){return e.key}).slice(0,-1))[1]),c()({},m,[f,n])):c()({},m,[f,n]);return":mime"===a&&":types"===s[0].key&&(w=i[a][s[0].key]?v(v({},i[a][s[0].key].value),w):w,y=i[a][s[0].key]?v(v({},Object.keys(i[a][s[0].key].value).reduce(function(e,t){return v(v({},e),{},c()({},t,[f,i[a][s[0].key].value[t]]))},{})),y):y),1===h.length?{valueForState:w,valueForUpdatedSettings:y,setting:h[0]}:e(w,y,a,o,h,i,u)},k=function(e,t,n){if("state"===e)return f.a.get(t,n);var a=d()(n),r=a[0],o=a[1],s=a[2],i=a.slice(3),c=f.a.get(t,[r,o,s]);if(0!==i.length&&c){return function e(t,n){if(0===n.length)return!0;var a=d()(n),r=a[0],o=a.slice(1);return!!t[1][r]&&e(t[1][r],o)}(c,i)}return c||!1},O=function(e,t){var n=Array.isArray(t)&&t.length>0&&t.every(function(e){return"object"!==s()(e)});return":meta"===e||":types"===e||":backends"===e||":compiled_template_engines"===e||":compiled_format_encoders"===e||"string"==typeof t||"number"==typeof t||"boolean"==typeof t||null===t||n},_=function(e,t,n){return Object.keys(t).map(function(a){return t[a]._value?{group:e,key:a,value:function(e,t){var n=l()(t,2),a=n[0],r=n[1];if(E(a,r))return":".concat(r);if(":backends"===e){var o=r.findIndex(function(e){return":ex_syslogger"===e}),s=r.slice();return-1!==o&&(s[o]={tuple:["ExSyslogger",":ex_syslogger"]}),s}return":types"===e?Object.keys(r).reduce(function(e,t){return v(v({},e),{},c()({},t,r[t][1]))},{}):r}(a,t[a]._value)}:{group:e,key:a,value:L(t[a],n[e][a])}})},L=function e(t,n){return Object.keys(t).map(function(a){var r=l()(t[a],2),o=r[0],s=r[1];if("keyword"===o||Array.isArray(o)&&(o.includes("keyword")||o.includes("tuple")&&o.includes("list")))return{tuple:[a,e(s,n)]};if(E(o,s))return{tuple:[a,":".concat(s)]};if(o.includes("tuple")&&(o.includes("string")||o.includes("atom")))return"string"==typeof s?{tuple:[a,s]}:{tuple:[a,{tuple:s}]};if("reversed_tuple"===o)return{tuple:[s,a]};if("map"===o){var i=Object.keys(s).reduce(function(e,t){return e[t]=s[t][1],e},{});return{tuple:[a,v(v({},n[a]),i)]}}return o.includes("map")&&!o.includes("list")?{tuple:[a,Object.keys(s).reduce(function(e,t){return e[t]=s[t][1],e},{})]}:":ip"===a?{tuple:[a,{tuple:s.split(".").map(function(e){return parseInt(e,10)})}]}:{tuple:[a,s]}})},C=function(e){return e.reduce(function(e,t){var n=f.a.compact([t.key,t.label,t.description]).map(function(e){return e.toLowerCase()}),a={label:t.label,key:t.key||t.group,groupKey:t.key||t.group,groupLabel:t.label,search:n};if(t.children){var o=t.key||":pleroma"!==t.group?[].concat(r()(e),[a]):e;return[].concat(r()(o),r()(function e(t,n,a){return t.reduce(function(t,o){var s=f.a.compact([o.key,o.label,o.description]).map(function(e){return e.toLowerCase()}),i={label:o.label,key:o.key||o.group,groupKey:a,groupLabel:n,search:s};if(o.children){var c=[].concat(r()(t),[i]);return[].concat(r()(c),r()(e(o.children,n,a)))}return[].concat(r()(t),[i])},[])}(t.children,t.label,t.key||t.group)))}return t.key||":pleroma"!==t.group?[].concat(r()(e),[a]):e},[]).concat([{groupKey:":instance_panel",groupLabel:"Instance Panel",key:":instance_panel",label:"Instance Panel",search:["Instance Panel",":instance_panel"]},{groupKey:":terms_of_services",groupLabel:"Terms of Services",key:":terms_of_services",label:"Terms of Services",search:["Terms of Services",":terms_of_services"]}])}},hRv2:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-italic",use:"icon-tiptap-italic-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-italic"><title>text-italic</title><path d="M22.5.248H14.863a1.25,1.25,0,0,0,0,2.5h1.086a.25.25,0,0,1,.211.384L4.78,21.017a.5.5,0,0,1-.422.231H1.5a1.25,1.25,0,0,0,0,2.5H9.137a1.25,1.25,0,0,0,0-2.5H8.051a.25.25,0,0,1-.211-.384L19.22,2.98a.5.5,0,0,1,.422-.232H22.5a1.25,1.25,0,0,0,0-2.5Z" /></symbol>'});s.a.add(i);t.default=i},hkRB:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-size",use:"icon-size-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-size"><path d="M0 54.857h54.796v18.286H36.531V128H18.265V73.143H0V54.857zm127.857-36.571H91.935V128H72.456V18.286H36.534V0h91.326l-.003 18.286z" /></symbol>'});s.a.add(i);t.default=i},igzo:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-paragraph",use:"icon-tiptap-paragraph-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-paragraph"><title>paragraph</title><path d="M22.5.248H7.228a6.977,6.977,0,1,0,0,13.954H9.546a.25.25,0,0,1,.25.25V22.5a1.25,1.25,0,0,0,2.5,0V3a.25.25,0,0,1,.25-.25h3.682a.25.25,0,0,1,.25.25V22.5a1.25,1.25,0,0,0,2.5,0V3a.249.249,0,0,1,.25-.25H22.5a1.25,1.25,0,0,0,0-2.5ZM9.8,11.452a.25.25,0,0,1-.25.25H7.228a4.477,4.477,0,1,1,0-8.954H9.546A.25.25,0,0,1,9.8,3Z" /></symbol>'});s.a.add(i);t.default=i},iprT:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-image",use:"icon-tiptap-image-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-image"><title>paginate-filter-picture-alternate</title><circle cx="9.75" cy="6.247" r="2.25" /><path d="M16.916,8.71A1.027,1.027,0,0,0,16,8.158a1.007,1.007,0,0,0-.892.586L13.55,12.178a.249.249,0,0,1-.422.053l-.82-1.024a1,1,0,0,0-.813-.376,1.007,1.007,0,0,0-.787.426L7.59,15.71A.5.5,0,0,0,8,16.5H20a.5.5,0,0,0,.425-.237.5.5,0,0,0,.022-.486Z" /><path d="M22,0H5.5a2,2,0,0,0-2,2V18.5a2,2,0,0,0,2,2H22a2,2,0,0,0,2-2V2A2,2,0,0,0,22,0Zm-.145,18.354a.5.5,0,0,1-.354.146H6a.5.5,0,0,1-.5-.5V2.5A.5.5,0,0,1,6,2H21.5a.5.5,0,0,1,.5.5V18A.5.5,0,0,1,21.855,18.351Z" /><path d="M19.5,22H2.5a.5.5,0,0,1-.5-.5V4.5a1,1,0,0,0-2,0V22a2,2,0,0,0,2,2H19.5a1,1,0,0,0,0-2Z" /></symbol>'});s.a.add(i);t.default=i},iqZD:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-zip",use:"icon-zip-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-zip"><path d="M78.527 116.793c.178.008.348.024.527.024h40.233c4.711-.005 8.53-3.677 8.534-8.21V18.895c-.004-4.532-3.823-8.204-8.534-8.209H79.054c-.179 0-.353.016-.527.024V0L0 10.082v107.406l78.527 10.342v-11.037zm0-101.362c.174-.024.348-.052.527-.052h40.233c2.018 0 3.659 1.578 3.659 3.52v89.713c-.003 1.942-1.64 3.517-3.659 3.519H79.054c-.179 0-.353-.028-.527-.052V15.431zM30.262 75.757l-18.721-.46V72.37l11.3-16.673v-.148l-10.266.164v-4.51l17.504-.44v3.264L18.696 70.76v.144l11.566.176v4.678zm9.419.231l-5.823-.144V50.671l5.823-.144v25.461zm22.255-11.632c-2.168 1.922-5.353 2.76-9.02 2.736-.702.004-1.402-.04-2.097-.131v9.303l-5.997-.148V50.743c1.852-.352 4.473-.647 8.218-.743 3.838-.096 6.608.539 8.48 1.913 1.807 1.306 3.032 3.5 3.032 6.112s-.926 4.833-2.612 6.331h-.004zM53.36 54.45c-.856-.01-1.71.083-2.541.275v7.682c.523.116 1.167.152 2.06.152 3.301-.004 5.36-1.614 5.36-4.314 0-2.425-1.772-3.843-4.875-3.791l-.004-.004zm39.847-37.066h9.564v3.795h-9.564v-3.795zm-9.568 5.68h9.564v3.8h-9.564v-3.8zm9.568 6.216h9.564v3.799h-9.564V29.28zm0 12h9.564v3.794h-9.564V41.28zm-9.568-6.096h9.564v3.795h-9.564v-3.795zm9.472 47.064c2.512 0 4.921-.96 6.697-2.67 1.776-1.708 2.773-4.026 2.772-6.442l-1.748-15.263c0-5.033-2.492-9.112-7.725-9.112-5.232 0-7.72 4.079-7.72 9.112l-1.752 15.263c-.001 2.417.996 4.735 2.773 6.444 1.777 1.71 4.187 2.669 6.7 2.668h.003zm-3.135-16.75h6.27v12.743h-6.27V65.5z" /></symbol>'});s.a.add(i);t.default=i},j6nr:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-ol",use:"icon-tiptap-ol-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-ol"><title>list-numbers</title><path d="M7.75,4.5h15a1,1,0,0,0,0-2h-15a1,1,0,0,0,0,2Z" /><path d="M22.75,11h-15a1,1,0,1,0,0,2h15a1,1,0,0,0,0-2Z" /><path d="M22.75,19.5h-15a1,1,0,0,0,0,2h15a1,1,0,0,0,0-2Z" /><path d="M2.212,17.248A2,2,0,0,0,.279,18.732a.75.75,0,1,0,1.45.386.5.5,0,1,1,.483.63.75.75,0,1,0,0,1.5.5.5,0,1,1-.482.635.75.75,0,1,0-1.445.4,2,2,0,1,0,3.589-1.648.251.251,0,0,1,0-.278,2,2,0,0,0-1.662-3.111Z" /><path d="M4.25,10.748a2,2,0,0,0-4,0,.75.75,0,0,0,1.5,0,.5.5,0,0,1,1,0,1.031,1.031,0,0,1-.227.645L.414,14.029A.75.75,0,0,0,1,15.248H3.5a.75.75,0,0,0,0-1.5H3.081a.249.249,0,0,1-.195-.406L3.7,12.33A2.544,2.544,0,0,0,4.25,10.748Z" /><path d="M4,5.248H3.75A.25.25,0,0,1,3.5,5V1.623A1.377,1.377,0,0,0,2.125.248H1.5a.75.75,0,0,0,0,1.5h.25A.25.25,0,0,1,2,2V5a.25.25,0,0,1-.25.25H1.5a.75.75,0,0,0,0,1.5H4a.75.75,0,0,0,0-1.5Z" /></symbol>'});s.a.add(i);t.default=i},j7e1:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tab",use:"icon-tab-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-tab"><path d="M78.921.052H49.08c-1.865 0-3.198 1.599-3.198 3.464v6.661c0 1.865 1.6 3.464 3.198 3.464h29.84c1.865 0 3.198-1.599 3.198-3.464V3.516C82.385 1.65 80.786.052 78.92.052zm45.563 0H94.642c-1.865 0-3.464 1.599-3.464 3.464v6.661c0 1.865 1.599 3.464 3.464 3.464h29.842c1.865-.266 3.464-1.599 3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464zm0 22.382H40.02c-1.866 0-3.464-1.599-3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464H3.516C1.65.052.052 1.651.052 3.516V124.75c0 1.598 1.599 3.197 3.464 3.197h120.968c1.865 0 3.464-1.599 3.464-3.464V25.898c0-1.865-1.599-3.464-3.464-3.464z" /></symbol>'});s.a.add(i);t.default=i},jf83:function(e,t,n){},jo2x:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-search",use:"icon-search-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-search"><path d="M124.884 109.812L94.256 79.166c-.357-.357-.757-.629-1.129-.914a50.366 50.366 0 0 0 8.186-27.59C101.327 22.689 78.656 0 50.67 0 22.685 0 0 22.688 0 50.663c0 27.989 22.685 50.663 50.656 50.663 10.186 0 19.643-3.03 27.6-8.201.286.385.557.771.9 1.114l30.628 30.632a10.633 10.633 0 0 0 7.543 3.129c2.728 0 5.457-1.043 7.543-3.115 4.171-4.157 4.171-10.915.014-15.073M50.671 85.338C31.557 85.338 16 69.78 16 50.663c0-19.102 15.557-34.661 34.67-34.661 19.115 0 34.657 15.559 34.657 34.675 0 19.102-15.557 34.661-34.656 34.661" /></symbol>'});s.a.add(i);t.default=i},k80C:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tree",use:"icon-tree-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-tree"><path d="M126.713 90.023c.858.985 1.287 2.134 1.287 3.447v29.553c0 1.423-.429 2.6-1.287 3.53-.858.93-1.907 1.395-3.146 1.395H97.824c-1.145 0-2.146-.465-3.004-1.395-.858-.93-1.287-2.107-1.287-3.53V93.47c0-.875.19-1.696.572-2.462.382-.766.906-1.368 1.573-1.806a3.84 3.84 0 0 1 2.146-.657h9.725V69.007a3.84 3.84 0 0 0-.43-1.806 3.569 3.569 0 0 0-1.143-1.313 2.714 2.714 0 0 0-1.573-.492h-36.47v23.149h9.725c1.144 0 2.145.492 3.004 1.478.858.985 1.287 2.134 1.287 3.447v29.553c0 .876-.191 1.696-.573 2.463-.38.766-.905 1.368-1.573 1.806a3.84 3.84 0 0 1-2.145.656H51.915a3.84 3.84 0 0 1-2.145-.656c-.668-.438-1.216-1.04-1.645-1.806a4.96 4.96 0 0 1-.644-2.463V93.47c0-1.313.43-2.462 1.288-3.447.858-.986 1.907-1.478 3.146-1.478h9.582v-23.15h-37.9c-.953 0-1.74.356-2.359 1.068-.62.711-.93 1.56-.93 2.544v19.538h9.726c1.239 0 2.264.492 3.074 1.478.81.985 1.216 2.134 1.216 3.447v29.553c0 1.423-.405 2.6-1.216 3.53-.81.93-1.835 1.395-3.074 1.395H4.29c-.476 0-.93-.082-1.358-.246a4.1 4.1 0 0 1-1.144-.657 4.658 4.658 0 0 1-.93-1.067 5.186 5.186 0 0 1-.643-1.395 5.566 5.566 0 0 1-.215-1.56V93.47c0-.437.048-.875.143-1.313a3.95 3.95 0 0 1 .429-1.15c.19-.328.429-.656.715-.984.286-.329.572-.602.858-.821.286-.22.62-.383 1.001-.493.382-.11.763-.164 1.144-.164h9.726V61.619c0-.985.31-1.833.93-2.544.619-.712 1.358-1.068 2.216-1.068h44.335V39.62h-9.582c-1.24 0-2.288-.492-3.146-1.477a5.09 5.09 0 0 1-1.287-3.448V5.14c0-1.423.429-2.627 1.287-3.612.858-.985 1.907-1.477 3.146-1.477h25.743c.763 0 1.478.246 2.145.739a5.17 5.17 0 0 1 1.573 1.888c.382.766.573 1.587.573 2.462v29.553c0 1.313-.43 2.463-1.287 3.448-.859.985-1.86 1.477-3.004 1.477h-9.725v18.389h42.762c.954 0 1.74.355 2.36 1.067.62.711.93 1.56.93 2.545v26.925h9.582c1.239 0 2.288.492 3.146 1.478z" /></symbol>'});s.a.add(i);t.default=i},kCbn:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-hr",use:"icon-tiptap-hr-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-hr">\n <path d="M5,13 C4.44771525,13 4,12.5522847 4,12 C4,11.4477153 4.44771525,11 5,11 L19,11 C19.5522847,11 20,11.4477153 20,12 C20,12.5522847 19.5522847,13 19,13 L5,13 Z" />\n</symbol>'});s.a.add(i);t.default=i},kGAI:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-ul",use:"icon-tiptap-ul-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-ul"><title>list-bullets</title><circle cx="2.5" cy="3.998" r="2.5" /><path d="M8.5,5H23a1,1,0,0,0,0-2H8.5a1,1,0,0,0,0,2Z" /><circle cx="2.5" cy="11.998" r="2.5" /><path d="M23,11H8.5a1,1,0,0,0,0,2H23a1,1,0,0,0,0-2Z" /><circle cx="2.5" cy="19.998" r="2.5" /><path d="M23,19H8.5a1,1,0,0,0,0,2H23a1,1,0,0,0,0-2Z" /></symbol>'});s.a.add(i);t.default=i},kPu2:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-documentation",use:"icon-documentation-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-documentation"><path d="M71.984 44.815H115.9L71.984 9.642v35.173zM16.094.05h63.875l47.906 38.37v76.74c0 3.392-1.682 6.645-4.677 9.044-2.995 2.399-7.056 3.746-11.292 3.746H16.094c-4.236 0-8.297-1.347-11.292-3.746-2.995-2.399-4.677-5.652-4.677-9.044V12.84C.125 5.742 7.23.05 16.094.05zm71.86 102.32V89.58h-71.86v12.79h71.86zm23.952-25.58V64H16.094v12.79h95.812z" /></symbol>'});s.a.add(i);t.default=i},kUWf:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-strike",use:"icon-tiptap-strike-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-strike"><title>text-strike-through</title><path d="M23.75,12.952A1.25,1.25,0,0,0,22.5,11.7H13.564a.492.492,0,0,1-.282-.09c-.722-.513-1.482-.981-2.218-1.432-2.8-1.715-4.5-2.9-4.5-4.863,0-2.235,2.207-2.569,3.523-2.569a4.54,4.54,0,0,1,3.081.764A2.662,2.662,0,0,1,13.615,5.5l0,.3a1.25,1.25,0,1,0,2.5,0l0-.268A4.887,4.887,0,0,0,14.95,1.755C13.949.741,12.359.248,10.091.248c-3.658,0-6.023,1.989-6.023,5.069,0,2.773,1.892,4.512,4,5.927a.25.25,0,0,1-.139.458H1.5a1.25,1.25,0,0,0,0,2.5H12.477a.251.251,0,0,1,.159.058,4.339,4.339,0,0,1,1.932,3.466c0,3.268-3.426,3.522-4.477,3.522-1.814,0-3.139-.405-3.834-1.173a3.394,3.394,0,0,1-.65-2.7,1.25,1.25,0,0,0-2.488-.246A5.76,5.76,0,0,0,4.4,21.753c1.2,1.324,3.114,2,5.688,2,4.174,0,6.977-2.42,6.977-6.022a6.059,6.059,0,0,0-.849-3.147.25.25,0,0,1,.216-.377H22.5A1.25,1.25,0,0,0,23.75,12.952Z" /></symbol>'});s.a.add(i);t.default=i},kpiL:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-undo",use:"icon-tiptap-undo-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-undo"><title>undo</title><path d="M17.786,3.77A12.542,12.542,0,0,0,4.821,2.905a.249.249,0,0,1-.292-.045L1.937.269A.507.507,0,0,0,1.392.16a.5.5,0,0,0-.308.462v6.7a.5.5,0,0,0,.5.5h6.7a.5.5,0,0,0,.354-.854L6.783,5.115a.253.253,0,0,1-.068-.228.249.249,0,0,1,.152-.181,10,10,0,0,1,9.466,1.1,9.759,9.759,0,0,1,.094,15.809A1.25,1.25,0,0,0,17.9,23.631a12.122,12.122,0,0,0,5.013-9.961A12.125,12.125,0,0,0,17.786,3.77Z" /></symbol>'});s.a.add(i);t.default=i},l3nR:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-link",use:"icon-tiptap-link-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-link"><title>hyperlink-2</title><path d="M12.406,14.905a1,1,0,0,0-.543,1.307,1,1,0,0,1-.217,1.09L8.818,20.131a2,2,0,0,1-2.828,0L3.868,18.01a2,2,0,0,1,0-2.829L6.7,12.353a1.013,1.013,0,0,1,1.091-.217,1,1,0,0,0,.763-1.849,3.034,3.034,0,0,0-3.268.652L2.454,13.767a4.006,4.006,0,0,0,0,5.657l2.122,2.121a4,4,0,0,0,5.656,0l2.829-2.828a3.008,3.008,0,0,0,.651-3.27A1,1,0,0,0,12.406,14.905Z" /><path d="M7.757,16.241a1.011,1.011,0,0,0,1.414,0L16.95,8.463a1,1,0,0,0-1.414-1.414L7.757,14.827A1,1,0,0,0,7.757,16.241Z" /><path d="M21.546,4.574,19.425,2.453a4.006,4.006,0,0,0-5.657,0L10.939,5.281a3.006,3.006,0,0,0-.651,3.269,1,1,0,1,0,1.849-.764A1,1,0,0,1,12.354,6.7l2.828-2.828a2,2,0,0,1,2.829,0l2.121,2.121a2,2,0,0,1,0,2.829L17.3,11.645a1.015,1.015,0,0,1-1.091.217,1,1,0,0,0-.765,1.849,3.026,3.026,0,0,0,3.27-.651l2.828-2.828A4.007,4.007,0,0,0,21.546,4.574Z" /></symbol>'});s.a.add(i);t.default=i},lt0h:function(e,t,n){},"m7++":function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-drag",use:"icon-drag-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-drag"><path d="M73.137 29.08h-9.209 29.7L63.886.093 34.373 29.08h20.49v27.035H27.238v17.948h27.625v27.133h18.274V74.063h27.41V56.115h-27.41V29.08zm-9.245 98.827l27.518-26.711H36.59l27.302 26.71zM.042 64.982l27.196 27.029V38.167L.042 64.982zm100.505-26.815V92.01l27.41-27.029-27.41-26.815z" /></symbol>'});s.a.add(i);t.default=i},mDMp:function(e,t,n){"use strict";var a=n("Tfa4");n.n(a).a},mSHS:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-fullscreen",use:"icon-fullscreen-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-fullscreen"><path d="M38.47 52L52 38.462l-23.648-23.67L43.209 0H.035L0 43.137l14.757-14.865L38.47 52zm74.773 47.726L89.526 76 76 89.536l23.648 23.672L84.795 128h43.174L128 84.863l-14.757 14.863zM89.538 52l23.668-23.648L128 43.207V.038L84.866 0 99.73 14.76 76 38.472 89.538 52zM38.46 76L14.792 99.651 0 84.794v43.173l43.137.033-14.865-14.757L52 89.53 38.46 76z" /></symbol>'});s.a.add(i);t.default=i},mSNy:function(e,t,n){"use strict";var a=n("lSNA"),r=n.n(a),o=n("Kw5r"),s=n("qSUR"),i=n("p46w"),c=n.n(i),u=n("stYL"),l=n.n(u),p=n("8NkQ"),d=n.n(p),m=n("PtZe"),f=n.n(m);function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?h(Object(n),!0).forEach(function(t){r()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):h(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}o.default.use(s.a);var g={en:v(v({},{route:{dashboard:"Dashboard",introduction:"Introduction",documentation:"Documentation",guide:"Guide",permission:"Permission",pagePermission:"Page Permission",directivePermission:"Directive Permission",icons:"Icons",components:"Components",componentIndex:"Introduction",markdown:"Markdown",jsonEditor:"JSON Editor",dndList:"Dnd List",splitPane:"SplitPane",avatarUpload:"Avatar Upload",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"BackToTop",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Charts",keyboardChart:"Keyboard Chart",lineChart:"Line Chart",mixChart:"Mix Chart",example:"Example",nested:"Nested Routes",menu1:"Menu 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menu 2",Table:"Table",dynamicTable:"Dynamic Table",dragTable:"Drag Table",inlineEditTable:"Inline Edit",complexTable:"Complex Table",treeTable:"Tree Table",customTreeTable:"Custom TreeTable",tab:"Tab",form:"Form",createArticle:"Create Article",editArticle:"Edit Article",articleList:"Article List",errorPages:"Error Pages",page401:"401",page404:"404",errorLog:"Error Log",excel:"Excel",exportExcel:"Export Excel",selectExcel:"Export Selected",uploadExcel:"Upload Excel",zip:"Zip",pdf:"PDF",exportZip:"Export Zip",theme:"Theme",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"External Link",users:"Users",reports:"Reports",invites:"Invites",statuses:"Statuses",settings:"Settings",moderationLog:"Moderation Log",mediaProxyCache:"MediaProxy Cache","emoji-packs":"Emoji packs"},navbar:{logOut:"Log Out",dashboard:"Dashboard",github:"Github",theme:"Theme",size:"Global Size"},login:{title:"Login Form",logIn:"Log in",logInViaPleromaFE:"Log in via PleromaFE",username:"username@host",password:"password",omitHostname:"omit hostname if Pleroma is located on this domain",errorMessage:"Username must contain username and host, e.g. john@pleroma.social",any:"any",thirdparty:"Or connect with",pleromaFELoginFailed:"Failed to login via PleromaFE, please login with username/password",pleromaFELoginSucceed:"Logged in via PleromaFE"},mediaProxyCache:{mediaProxyCache:"MediaProxy Cache",ban:"Ban",url:"URL",evict:"Evict",evictedMessage:"This URL was evicted",actions:"Actions",remove:"Remove from Cachex",evictObjectsHeader:"Evict object from the MediaProxy cache",listBannedUrlsHeader:"List of all banned MediaProxy URLs",multipleInput:"You can enter a single URL or several comma separated links",removeSelected:"Remove Selected",enable:"Enable",invalidationAndMediaProxy:"MediaProxy and Invalidation to evict and ban MediaProxy objects",confirmEnablingMediaProxy:"Are you sure you want to enable Media Proxy and Media Cache object Invalidation?",enableMediaProxySuccessMessage:"Media Proxy and Media Cache object Invalidation were enabled"},documentation:{documentation:"Documentation",github:"Github Repository"},permission:{roles:"Your roles",switchRoles:"Switch roles",tips:"In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if."},guide:{description:"The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ",button:"Show Guide"},components:{documentation:"Documentation",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Fixed header, sorted by header order",dynamicTips2:"Not fixed header, sorted by click order",dragTips1:"The default order",dragTips2:"The after dragging order",title:"Title",importance:"Imp",type:"Type",remark:"Remark",search:"Search",add:"Add",export:"Export",reviewer:"reviewer",id:"ID",date:"Date",author:"Author",readings:"Readings",status:"Status",actions:"Actions",edit:"Edit",publish:"Publish",draft:"Draft",delete:"Delete",cancel:"Cancel",confirm:"Confirm",unfollow:"Unfollow"},errorLog:{tips:"Please click the bug icon in the upper right corner",description:"Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.",documentation:"Document introduction"},excel:{export:"Export",selectedExport:"Export Selected Items",placeholder:"Please enter the file name(default excel-list)"},zip:{export:"Export",placeholder:"Please enter the file name(default file)"},pdf:{tips:"Here we use window.print() to implement the feature of downloading pdf."},theme:{change:"Change Theme",documentation:"Theme documentation",tips:"Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details."},tagsView:{refresh:"Refresh",close:"Close",closeOthers:"Close Others",closeAll:"Close All"},users:{users:"Users",localUsersOnly:"Local users only",search:"Search",id:"ID",name:"Name",status:"Status",local:"Local",external:"External",deactivated:"Deactivated",active:"Active",unapproved:"Pending",unconfirmed:"Unconfirmed",actions:"Actions",activate:"Activate",deactivate:"Deactivate",admin:"Admin",moderator:"Moderator",moderation:"Moderation",revokeAdmin:"Revoke Admin",grantAdmin:"Grant Admin",revokeModerator:"Revoke Moderator",grantModerator:"Grant Moderator",activateAccount:"Activate Account",activateAccounts:"Activate Accounts",deactivateAccount:"Deactivate Account",deactivateAccounts:"Deactivate Accounts",deleteAccount:"Delete Account",deleteAccounts:"Delete Accounts",forceNsfw:"Force posts to be NSFW",stripMedia:"Force posts to not have media",forceUnlisted:"Force posts to be unlisted",sandbox:"Force posts to be followers-only",disableRemoteSubscription:"Disallow following user from remote instances",disableRemoteSubscriptionForMultiple:"Disallow following users from remote instances",disableAnySubscription:"Disallow following user at all",disableAnySubscriptionForMultiple:"Disallow following users at all",requirePasswordReset:"Require password reset on next login",disableMfa:"Disable multi-factor authentication",selectUsers:"Select users to apply actions to multiple users",moderateUser:"Moderate user",moderateUsers:"Moderate multiple users",createAccount:"Create new account",apply:"Apply",remove:"Remove",grantRightConfirmation:"Are you sure you want to grant {right} rights to all selected users?",revokeRightConfirmation:"Are you sure you want to revoke {right} rights from all selected users?",activateMultipleUsersConfirmation:"Are you sure you want to activate accounts of all selected users?",deactivateMultipleUsersConfirmation:"Are you sure you want to deactivate accounts of all selected users?",deleteUserConfirmation:"Are you sure you want to delete this account? This action cannot be undone.",rejectAccountConfirmation:"Are you sure you want to reject this account? This account will be deleted and it cannot be undone.",deleteMultipleUsersConfirmation:"Are you sure you want to delete accounts of all selected users? This action cannot be undone.",addTagForMultipleUsersConfirmation:"Are you sure you want to apply tag to all selected users?",removeTagFromMultipleUsersConfirmation:"Are you sure you want to remove tag from all selected users?",requirePasswordResetConfirmation:"Are you sure you want to require password reset for all selected users?",approveAccountsConfirmation:"Are you sure you want to approve accounts for all selected users?",rejectAccountsConfirmation:"Are you sure you want to reject accounts for all selected users? These accounts will be deleted and it cannot be undone.",confirmAccountsConfirmation:"Are you sure you want to confirm emails for all selected users?",resendEmailConfirmation:"Are you sure you want to resend confirmation email for all selected users?",mailerMustBeEnabled:"To require user's password reset you must enable mailer.",ok:"Okay",completed:"Completed",cancel:"Cancel",canceled:"Canceled",username:"Username",email:"E-mail",password:"Password",create:"Create",submitFormError:"There are invalid values in the form. Please fix them before continuing.",emptyEmailError:"Please input the e-mail",invalidEmailError:"Please input valid e-mail",emptyPasswordError:"Please input the password",emptyNicknameError:"Please input the username",invalidNicknameError:'Username can include "a-z", "A-Z" and "0-9" characters',getPasswordResetToken:"Get password reset token",passwordResetTokenCreated:"Password reset token was created",accountCreated:"New account was created!",approveAccount:"Approve account",approveAccounts:"Approve accounts",unapprovedAccount:"User account is pending approval",unconfirmedEmail:"User didn't confirm the email",confirmAccount:"Confirm account",confirmAccounts:"Confirm accounts",rejectAccount:"Reject account",rejectAccounts:"Reject accounts",resendConfirmation:"Resend confirmation email",invalidAccount:"This account has invalid nickname and can't be modified",invalidNickname:"invalid nickname",passwordResetTokenGenerated:"Password reset token was generated:",linkToResetPassword:"You can also use this link to reset password:",registrationReason:"Registration Reason",service:"Service",person:"Person",enableTagPolicy:"Enable MRF TagPolicy to manage user tags",confirmEnablingTagPolicy:"Are you sure you want to add TagPolicy to the list of enabled MRF policies?",enableTagPolicySuccessMessage:"MRF TagPolicy was enabled"},statuses:{statuses:"Statuses",instanceFilter:"Instance filter",loadMore:"Load more",noInstances:"No other instances found",onlyLocalStatuses:"Show only local statuses",showPrivateStatuses:"Show private statuses",direct:"Direct",private:"Private",public:"Public",unlisted:"Unlisted",openStatusInInstance:"Open status in instance"},userProfile:{tags:"Tags",moderator:"Moderator",admin:"Admin",local:"Local",external:"External",accountType:"Account Type",actorType:"Actor Type",nickname:"Nickname",recentStatuses:"Recent Statuses",roles:"Roles",active:"Active",status:"Status",reason:"Registration Reason",deactivated:"Deactivated",pending:"Pending",noStatuses:"No statuses to show",openAccountInInstance:"Open account in instance",securitySettings:{email:"Email",password:"Password",securitySettings:"Security settings",passwordChangeWarning1:"Setting a new password will cause the user to be signed out from any client they have used before.",passwordChangeWarning2:"When the user signs in with this password, they will be asked to set a new one.",passwordLengthNotice:"Make sure it's at least {minLength} characters long.",inputNewEmail:"Input new email",inputNewPassword:"Input new password",passwordUpdated:"The password has been updated",emailUpdated:"The email has been updated",success:"Success",submit:"Submit",close:"Close"}},usersFilter:{inputPlaceholder:"Select filter",byAccountType:"By account type",local:"Local",external:"External",byStatus:"By status",active:"Active",pending:"Pending Approval",deactivated:"Deactivated"},reports:{reports:"Reports",report:"Report",reply:"Reply",from:"From",showNotes:"Show notes",newNote:"New note",submit:"Submit",confirmMsg:"Are you sure you want to delete this note?",delete:"Delete",cancel:"Cancel",deleteCompleted:"Delete comleted",deleteCanceled:"Delete canceled",noNotes:"No notes to display",changeState:"Change report's state",changeAllReports:"Change all reports",changeScope:"Change scope",moderateUser:"Moderate user",resolve:"Resolve",reopen:"Reopen",close:"Close",resolveAll:"Resolve all",reopenAll:"Reopen all",closeAll:"Close all",addSensitive:"Add Sensitive flag",removeSensitive:"Remove Sensitive flag",public:"Make status public",private:"Make status private",unlisted:"Make status unlisted",sensitive:"Sensitive",deleteStatus:"Delete status",reportOn:"Report on",reportsOn:"Reports on",id:"ID",account:"Account",actor:"Actor",actors:"Actors",content:"Content",reportedStatus:"Reported status",statusDeleted:"This status has been deleted",leaveNote:"Leave a note",postNote:"Send",deleteNote:"Delete",notFound:"account not found"},reportsFilter:{inputPlaceholder:"Select filter",open:"Open",closed:"Closed",resolved:"Resolved"},moderationLog:{moderationLog:"Moderation Log"},settings:{settings:"Settings",instance:"Instance",upload:"Upload",mailer:"Mailer",linkFormatter:"Link Formatter",logger:"Logger",activityPub:"ActivityPub",auth:"Authentication",captcha:"Captcha",frontend:"Frontend",http:"HTTP",mrf:"MRF",mediaProxy:"Media Proxy",metadata:"Metadata",gopher:"Gopher",jobQueue:"Job queue",webPush:"Web push encryption",esshd:"BBS / SSH access",rateLimiters:"Rate limiters",other:"Other",relays:"Relays",follow:"Follow",followRelay:"Follow new relay",followedBack:"Followed Back",instanceUrl:"Instance URL",success:"Settings changed successfully!",description:"Description",removeFromDB:"Remove setting from the DB",successfullyDownloaded:"Successfully downloaded",successfullyImported:"Successfully imported",nowNewPacksToImport:"No new packs to import",successfullyUpdated:"Successfully updated",metadatLowerCase:"metadata",files:"files",successfullyRemoved:"Setting removed successfully!",seeDocs:"See Documentation",instanceReboot:"Reboot Instance",restartApp:"You must restart the instance to apply settings",restartSuccess:"Instance rebooted successfully!",removeSettingConfirmation:"Are you sure you want to remove this setting's value from the database?",changeImage:"Change image",uploadImage:"Upload image",remove:"Remove",instancePanel:"Instance Panel Document",termsOfServices:"Terms of Service"},invites:{inviteTokens:"Invite tokens",createInviteToken:"Generate invite token",pickDate:"Pick a date",maxUse:"Max use",expiresAt:"Expires at",tokenCreated:"Invite token was created",token:"Token",inviteLink:"Invite link",uses:"Uses",used:"Used",cancel:"Cancel",create:"Create",revoke:"Revoke",id:"ID",actions:"Actions",active:"Active",inviteUserViaEmail:"Invite user via email",sendRegistration:"Send registration invite via email",email:"Email",name:"Name",emptyEmailError:"Please input the e-mail",invalidEmailError:"Please input valid e-mail",emailSent:"Invite was sent",submitFormError:"There are invalid values in the form. Please fix them before continuing.",inviteViaEmailAlert:"To send invite via email make sure to enable `invites_enabled` and disable `registrations_open`"},emoji:{emojiPacks:"Emoji packs",reloaded:"Emoji reloaded successfully!",refreshed:"Emoji refreshed successfully!",importEmojiTooltip:"Importing from the filesystem will scan the directories and import those without pack.json but with emoji.txt or without neither",reloadEmoji:"Reload emoji",importPacks:"Import packs from the server filesystem",localPacks:"Local packs",refreshLocalPacks:"Refresh local packs",createLocalPack:"Create a new local pack",remotePacks:"Remote packs",remoteInstanceAddress:"Remote instance address",refreshRemote:"Refresh remote packs",sharePack:"Share pack",required:"required",homepage:"Homepage",description:"Description",packs:"Packs",license:"License",shortcode:"Shortcode",fallbackSrc:"Fallback source",fallbackSrcSha:"Fallback source SHA",saveMetadata:"Save metadata",deletePack:"Delete pack",downloadPack:"Download pack",downloadPackArchive:"Download pack archive",addNewEmoji:"Add new emoji to the pack",manageEmoji:"Manage existing emoji",thisWillDownload:"This will download the",downloadToCurrentInstance:"pack to the current instance under the name",canBeChanged:"can be changed below",willBeUsable:"It will then be usable and shareable from the current instance",downloadAsOptional:"Download as (optional)",downloadSharedPack:"Download shared pack to current instance",downloadSharedPackMobile:"Download pack to instance",optional:"optional",uploadFile:"Upload a file",url:"URL",clickToUpload:"Click to upload",upload:"Upload",customFilename:"Custom filename",customFilenameDesc:"Custom file name (optional)",file:"File",localPack:"Local pack",leaveEmptyShortcode:"leave empty to use the same shortcode",leaveEmptyFilename:"leave empty to use the same filename",update:"Update",remove:"Remove",selectLocalPack:"Select the local pack to copy to",specifyShortcode:"Specify a custom shortcode",specifyFilename:"Specify a custom filename",copy:"Copy",copyToLocalPack:"Copy to local pack",emptyPack:"This emoji pack is empty",emojiWarning:"Pack names cannot include any of the following characters: # / < > & +",image:"Image"}}),l.a),zh:v(v({},{route:{dashboard:"首页",introduction:"简述",documentation:"文档",guide:"引导页",permission:"权限测试页",pagePermission:"页面权限",directivePermission:"指令权限",icons:"图标",components:"组件",componentIndex:"介绍",markdown:"Markdown",jsonEditor:"JSON编辑器",dndList:"列表拖拽",splitPane:"Splitpane",avatarUpload:"头像上传",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"小组件",backToTop:"返回顶部",dragDialog:"拖拽 Dialog",dragSelect:"拖拽 Select",dragKanban:"可拖拽看板",charts:"图表",keyboardChart:"键盘图表",lineChart:"折线图",mixChart:"混合图表",example:"综合实例",nested:"路由嵌套",menu1:"菜单1","menu1-1":"菜单1-1","menu1-2":"菜单1-2","menu1-2-1":"菜单1-2-1","menu1-2-2":"菜单1-2-2","menu1-3":"菜单1-3",menu2:"菜单2",Table:"Table",dynamicTable:"动态Table",dragTable:"拖拽Table",inlineEditTable:"Table内编辑",complexTable:"综合Table",treeTable:"树形表格",customTreeTable:"自定义树表",tab:"Tab",form:"表单",createArticle:"创建文章",editArticle:"编辑文章",articleList:"文章列表",errorPages:"错误页面",page401:"401",page404:"404",errorLog:"错误日志",excel:"Excel",exportExcel:"Export Excel",selectExcel:"Export Selected",uploadExcel:"Upload Excel",zip:"Zip",pdf:"PDF",exportZip:"Export Zip",theme:"换肤",clipboardDemo:"Clipboard",i18n:"国际化",externalLink:"外链"},navbar:{logOut:"退出登录",dashboard:"首页",github:"项目地址",theme:"换肤",size:"布局大小"},login:{title:"系统登录",logIn:"登录",username:"账号",password:"密码",any:"随便填",thirdparty:"第三方登录",thirdpartyTips:"本地不能模拟,请结合自己业务进行模拟!!!"},documentation:{documentation:"文档",github:"Github 地址"},permission:{roles:"你的权限",switchRoles:"切换权限",tips:"在某些情况下,不适合使用 v-permission。例如:Element-UI 的 Tab 组件或 el-table-column 以及其它动态渲染 dom 的场景。你只能通过手动设置 v-if 来实现。"},guide:{description:"引导页对于一些第一次进入项目的人很有用,你可以简单介绍下项目的功能。本 Demo 是基于",button:"打开引导"},components:{documentation:"文档",dropzoneTips:"由于我司业务有特殊需求,而且要传七牛 所以没用第三方,选择了自己封装。代码非常的简单,具体代码你可以在这里看到 @/components/element-ui/Dropzone",stickyTips:"当页面滚动到预设的位置会吸附在顶部",backToTopTips1:"页面滚动到指定位置会在右下角出现返回顶部按钮",backToTopTips2:"可自定义按钮的样式、show/hide、出现的高度、返回的位置 如需文字提示,可在外部使用Element的el-tooltip元素",imageUploadTips:"由于我在使用时它只有vue@1版本,而且和mockjs不兼容,所以自己改造了一下,如果大家要使用的话,优先还是使用官方版本。"},table:{dynamicTips1:"固定表头, 按照表头顺序排序",dynamicTips2:"不固定表头, 按照点击顺序排序",dragTips1:"默认顺序",dragTips2:"拖拽后顺序",title:"标题",importance:"重要性",type:"类型",remark:"点评",search:"搜索",add:"添加",export:"导出",reviewer:"审核人",id:"序号",date:"时间",author:"作者",readings:"阅读数",status:"状态",actions:"操作",edit:"编辑",publish:"发布",draft:"草稿",delete:"删除",cancel:"取 消",confirm:"确 定"},errorLog:{tips:"请点击右上角bug小图标",description:"现在的管理后台基本都是spa的形式了,它增强了用户体验,但同时也会增加页面出问题的可能性,可能一个小小的疏忽就导致整个页面的死锁。好在 Vue 官网提供了一个方法来捕获处理异常,你可以在其中进行错误处理或者异常上报。",documentation:"文档介绍"},excel:{export:"导出",selectedExport:"导出已选择项",placeholder:"请输入文件名(默认excel-list)"},zip:{export:"导出",placeholder:"请输入文件名(默认file)"},pdf:{tips:"这里使用 window.print() 来实现下载pdf的功能"},theme:{change:"换肤",documentation:"换肤文档",tips:"Tips: 它区别于 navbar 上的 theme-pick, 是两种不同的换肤方法,各自有不同的应用场景,具体请参考文档。"},tagsView:{refresh:"刷新",close:"关闭",closeOthers:"关闭其它",closeAll:"关闭所有"}}),d.a),es:v(v({},{route:{dashboard:"Panel de control",introduction:"Introducción",documentation:"Documentación",guide:"Guía",permission:"Permisos",pagePermission:"Permisos de la página",directivePermission:"Permisos de la directiva",icons:"Iconos",components:"Componentes",componentIndex:"Introducción",markdown:"Markdown",jsonEditor:"Editor JSON",dndList:"Lista Dnd",splitPane:"Panel dividido",avatarUpload:"Subir avatar",dropzone:"Subir ficheros",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"Ir arriba",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Gráficos",keyboardChart:"Keyboard Chart",lineChart:"Gráfico de líneas",mixChart:"Mix Chart",example:"Ejemplo",nested:"Rutas anidadass",menu1:"Menu 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menu 2",Table:"Tabla",dynamicTable:"Tabla dinámica",dragTable:"Arrastrar tabla",inlineEditTable:"Editor",complexTable:"Complex Table",treeTable:"Tree Table",customTreeTable:"Custom TreeTable",tab:"Pestaña",form:"Formulario",createArticle:"Crear artículo",editArticle:"Editar artículo",articleList:"Listado de artículos",errorPages:"Páginas de error",page401:"401",page404:"404",errorLog:"Registro de errores",excel:"Excel",exportExcel:"Exportar a Excel",selectExcel:"Export seleccionado",uploadExcel:"Subir Excel",zip:"Zip",pdf:"PDF",exportZip:"Exportar a Zip",theme:"Tema",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"Enlace externo"},navbar:{logOut:"Salir",dashboard:"Panel de control",github:"Github",theme:"Tema",size:"Tamaño global"},login:{title:"Formulario de acceso",logIn:"Acceso",username:"Usuario",password:"Contraseña",any:"nada",thirdparty:"Conectar con",thirdpartyTips:"No se puede simular en local, así que combine su propia simulación de negocios. ! !"},documentation:{documentation:"Documentación",github:"Repositorio Github"},permission:{roles:"Tus permisos",switchRoles:"Cambiar permisos",tips:"In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if."},guide:{description:"The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ",button:"Ver guía"},components:{documentation:"Documentación",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Fixed header, sorted by header order",dynamicTips2:"Not fixed header, sorted by click order",dragTips1:"Orden por defecto",dragTips2:"The after dragging order",title:"Título",importance:"Importancia",type:"Tipo",remark:"Remark",search:"Buscar",add:"Añadir",export:"Exportar",reviewer:"reviewer",id:"ID",date:"Fecha",author:"Autor",readings:"Lector",status:"Estado",actions:"Acciones",edit:"Editar",publish:"Publicar",draft:"Draft",delete:"Eliminar",cancel:"Cancelar",confirm:"Confirmar"},errorLog:{tips:"Please click the bug icon in the upper right corner",description:"Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.",documentation:"Documento de introducción"},excel:{export:"Exportar",selectedExport:"Exportar seleccionados",placeholder:"Por favor escribe un nombre de fichero"},zip:{export:"Exportar",placeholder:"Por favor escribe un nombre de fichero"},pdf:{tips:"Here we use window.print() to implement the feature of downloading pdf."},theme:{change:"Cambiar tema",documentation:"Documentación del tema",tips:"Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details."},tagsView:{refresh:"Actualizar",close:"Cerrar",closeOthers:"Cerrar otros",closeAll:"Cerrar todos"}}),f.a),oc:v({},{route:{dashboard:"Tablèu de bòrd",introduction:"Introduccion",documentation:"Documentacion",guide:"Guida",permission:"Autorizacions",pagePermission:"Pagina d’autorizacion",directivePermission:"Politica d’autorizacion",icons:"Icònas",components:"Compausants",componentIndex:"Introduccion",markdown:"Markdown",jsonEditor:"JSON Editor",dndList:"Dnd List",splitPane:"SplitPane",avatarUpload:"Mandadís d’avatar",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"BackToTop",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Charts",keyboardChart:"Keyboard Chart",lineChart:"Line Chart",mixChart:"Mix Chart",example:"Exemple",nested:"Rotas imbricadas",menu1:"Menú 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menú 2",Table:"Tablèu",dynamicTable:"Tablèu dinamic",dragTable:"Drag Table",inlineEditTable:"Inline Edit",complexTable:"Tablèu complèx",treeTable:"Arborescéncia",customTreeTable:"Arborescéncia personalizada",tab:"Onglet",form:"Formulari",createArticle:"Crear un article",editArticle:"Modificar l’article",articleList:"Lista d’articles",errorPages:"Paginas d’error",page401:"401",page404:"404",errorLog:"Jornal d’error",excel:"Excel",exportExcel:"Exportacion Excel",selectExcel:"Exportar los seleccionats",uploadExcel:"Importacion Excel",zip:"Zip",pdf:"PDF",exportZip:"Exportacion Zip",theme:"Tèma",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"Ligams extèrnes",users:"Utilizaires"},navbar:{logOut:"Desconnexion",dashboard:"Tablèu de bòrd",github:"Github",theme:"Tèma",size:"Talha totala"},login:{title:"Formulari de connexion",logIn:"Se connectar",username:"Nom d’’utilizaire",password:"Senhal",any:"qual que siá",thirdparty:"O se connectar amb",thirdpartyTips:"Pòt pas èsser simulat en local, doncas montatz vòstra pròpria simulacion ! ! !"},documentation:{documentation:"Documentacion",github:"Repertòri Github"},permission:{roles:"Vòstres ròtles",switchRoles:"Cambiar de ròtle",tips:"Dins qualques cases es pas de bon far d’utilizar v-permission, coma element d’onglet compausant, el-table-column o d’autres renduts dom asincròns que pòdon pas que foncionar amb un parametratge manual de v-if."},guide:{description:"La pagina de guida es utila pel monde que dintran dins lo projècte pel primièr còp. Podètz presentar en un mot las foncionalitats del projèctes. La demo es fondada sus ",button:"Mostrar la guida"},components:{documentation:"Documentacion",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Bandièra fixa, triada per òrdre de bandièra",dynamicTips2:"Bandièra pas fixa, triada per òrdre de clic",dragTips1:"L’’òrdre per defaut",dragTips2:"L’’òrdre aprèp lisar-depausar",title:"Títol",importance:"Imp",type:"Tipe",remark:"Remarca",search:"Recercar",add:"Ajustar",export:"Exportar",reviewer:"examinator",id:"ID",date:"Data",author:"Autor",readings:"Lecturas",status:"Estatuts",actions:"Accions",edit:"Modificar",publish:"Publicar",draft:"Ensag",delete:"Suprimir",cancel:"Anullar",confirm:"Confirmar"},errorLog:{tips:"Mercés de clicar l’’icòna del babau amont a man drecha",description:"Ara que lo sistèma de gestion es coma un spa, melhora l’experiéncia dels utilizaire mas aumenta tanben lo risc de problèmas sus la pagina, una pichona negligéncia pòt menar a un blocatge complèt de la pagina. Urosament Vue fornís de manièras per gerir las excepcions, trobar las errors o senhalar las excepcions.",documentation:"Presentacion del document"},excel:{export:"Exportar",selectedExport:"Exportar los elements seleccionats",placeholder:"Mercés de picar lo nom de fichièr (per defaut excel-list)"},zip:{export:"Exportar",placeholder:"Mercés de picar lo nom de fichièr (per defaut file)"},pdf:{tips:"Aquí utilizam window.print() per prepausar lo telecargament de pdf."},theme:{change:"Cambiar lo tèma",documentation:"Documentacion dels tèmas",tips:"Astúcia : es diferent del theme-pick de la barra de navigacion, i a dos metòdes de personalizacion, caduna amb un biais de far diferent. Referiscam a la documentacion per mai de detalhs."},tagsView:{refresh:"Actualizar",close:"Tampar",closeOthers:"Tampar los autres",closeAll:"Los tampar totes"}})},b=new s.a({locale:c.a.get("language")||"en",messages:g});t.a=b},me7H:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-redo",use:"icon-tiptap-redo-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-redo"><title>redo</title><path d="M22.608.161a.5.5,0,0,0-.545.108L19.472,2.86a.25.25,0,0,1-.292.045A12.537,12.537,0,0,0,6.214,3.77,12.259,12.259,0,0,0,6.1,23.632a1.25,1.25,0,0,0,1.476-2.018A9.759,9.759,0,0,1,7.667,5.805a10,10,0,0,1,9.466-1.1.25.25,0,0,1,.084.409l-1.85,1.85a.5.5,0,0,0,.354.853h6.7a.5.5,0,0,0,.5-.5V.623A.5.5,0,0,0,22.608.161Z" /></symbol>'});s.a.add(i);t.default=i},mm8V:function(e,t,n){"use strict";n.d(t,"a",function(){return l}),n.d(t,"b",function(){return d}),n.d(t,"c",function(){return m}),n.d(t,"d",function(){return h}),n.d(t,"e",function(){return g}),n.d(t,"f",function(){return w}),n.d(t,"g",function(){return x}),n.d(t,"h",function(){return E}),n.d(t,"i",function(){return k}),n.d(t,"j",function(){return _}),n.d(t,"k",function(){return C}),n.d(t,"l",function(){return P}),n.d(t,"m",function(){return j});var a=n("o0o1"),r=n.n(a),o=n("yXPU"),s=n.n(o),i=n("t3Un"),c=n("X4fA"),u=n("9i3r");function l(e,t,n,a,r,o){return p.apply(this,arguments)}function p(){return(p=s()(r.a.mark(function e(t,n,a,o,s,c){var l;return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return l=new FormData,""!==o.trim()&&l.set("filename",o),""!==a.trim()&&l.set("shortcode",a),l.set("file",n),e.next=6,Object(i.a)({baseURL:Object(u.a)(s),url:"/api/pleroma/emoji/packs/files?name=".concat(t),method:"post",headers:M(c),data:l});case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function d(e,t,n){return"".concat(Object(u.a)(e),"/emoji/").concat(D(t),"/").concat(n)}function m(e,t,n){return f.apply(this,arguments)}function f(){return(f=s()(r.a.mark(function e(t,n,a){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/pack?name=".concat(a),method:"post",headers:M(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function h(e,t,n,a){return v.apply(this,arguments)}function v(){return(v=s()(r.a.mark(function e(t,n,a,o){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(a),url:"/api/pleroma/emoji/packs/files?name=".concat(t,"&shortcode=").concat(n),method:"delete",headers:M(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function g(e,t,n){return b.apply(this,arguments)}function b(){return(b=s()(r.a.mark(function e(t,n,a){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/pack?name=".concat(a),method:"delete",headers:M(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function w(e,t,n,a,r){return y.apply(this,arguments)}function y(){return(y=s()(r.a.mark(function e(t,n,a,o,s){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(o),url:"/api/pleroma/emoji/packs/download",method:"post",headers:M(s),data:""===a.trim()?{url:Object(u.a)(t),name:n}:{url:Object(u.a)(t),name:n,as:a},timeout:0});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function x(e,t,n,a,r){return S.apply(this,arguments)}function S(){return(S=s()(r.a.mark(function e(t,n,a,o,s){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(o),url:"/api/pleroma/emoji/pack?name=".concat(t,"&page=").concat(n,"&page_size=").concat(a),method:"get",headers:M(s)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function E(e,t){return T.apply(this,arguments)}function T(){return(T=s()(r.a.mark(function e(t,n){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/import",method:"get",headers:M(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function k(e,t,n,a){return O.apply(this,arguments)}function O(){return(O=s()(r.a.mark(function e(t,n,a,o){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(a),url:"/api/pleroma/emoji/packs?page=".concat(t,"&page_size=").concat(n),method:"get",headers:M(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _(e,t,n,a,r){return L.apply(this,arguments)}function L(){return(L=s()(r.a.mark(function e(t,n,a,o,s){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(o),url:"/api/pleroma/emoji/packs/remote?url=".concat(Object(u.a)(t),"&page=").concat(n,"&page_size=").concat(a),method:"get",headers:M(s)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function C(e,t){return A.apply(this,arguments)}function A(){return(A=s()(r.a.mark(function e(t,n){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/admin/reload_emoji",method:"post",headers:M(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function P(e,t,n,a){return I.apply(this,arguments)}function I(){return(I=s()(r.a.mark(function e(t,n,a,o){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/pack?name=".concat(a),method:"patch",headers:M(n),data:{metadata:o},timeout:0});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function j(e,t,n,a,r,o,s){return R.apply(this,arguments)}function R(){return(R=s()(r.a.mark(function e(t,n,a,o,s,c,l){return r.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(i.a)({baseURL:Object(u.a)(c),url:"/api/pleroma/emoji/packs/files?name=".concat(t),method:"patch",headers:M(l),data:{shortcode:n,new_shortcode:a,new_filename:o,force:s}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var M=function(e){return e?{Authorization:"Bearer ".concat(Object(c.b)())}:{}},D=function(e){return encodeURIComponent(e)}},nIMs:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-github",use:"icon-tiptap-github-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-github">\n <path d="M11.999,0.5 C5.649,0.5 0.5,5.648 0.5,12 C0.5,17.082 3.794,21.392 8.365,22.914 C8.939,23.017 9.121,22.678 9.121,22.373 C9.121,22.099 9.127,21.336 9.121,20.376 C5.923,21.07 5.26,18.861 5.26,18.861 C4.737,17.532 3.985,17.179 3.985,17.179 C2.94,16.465 4.062,16.48 4.062,16.48 C5.215,16.56 5.824,17.664 5.824,17.664 C6.85,19.422 8.515,18.914 9.17,18.62 C9.276,17.878 9.572,17.369 9.901,17.084 C7.347,16.792 4.663,15.807 4.663,11.398 C4.663,10.143 5.111,9.117 5.847,8.312 C5.729,8.023 5.333,6.852 5.959,5.269 C5.959,5.269 6.926,4.96 9.121,6.449 C10.039,6.193 11.023,6.066 12.001,6.061 C12.977,6.066 13.961,6.193 14.881,6.449 C17.076,4.961 18.04,5.269 18.04,5.269 C18.667,6.852 18.272,8.023 18.154,8.312 C18.89,9.117 19.337,10.143 19.337,11.398 C19.337,15.818 16.648,16.789 14.086,17.072 C14.498,17.429 14.873,18.119 14.873,19.192 C14.873,20.63 14.873,21.998 14.873,22.376 C14.873,22.684 15.059,23.023 15.643,22.912 C20.209,21.389 23.5,17.08 23.5,12 C23.5,5.648 18.352,0.5 11.999,0.5 Z" />\n</symbol>'});s.a.add(i);t.default=i},nZHn:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-icon",use:"icon-icon-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-icon"><path d="M115.147.062a13 13 0 0 1 4.94.945c1.55.63 2.907 1.526 4.069 2.688a13.148 13.148 0 0 1 2.761 4.069c.678 1.55 1.017 3.245 1.017 5.086v102.3c0 3.681-1.187 6.733-3.56 9.155-2.373 2.422-5.352 3.633-8.937 3.633H12.992c-3.875 0-7-1.26-9.373-3.779-2.373-2.518-3.56-5.667-3.56-9.445V12.704c0-3.39 1.163-6.345 3.488-8.863C5.872 1.32 8.972.062 12.847.062h102.3zM81.434 109.047c1.744 0 3.003-.412 3.778-1.235.775-.824 1.163-1.914 1.163-3.27 0-1.26-.388-2.325-1.163-3.197-.775-.872-2.034-1.307-3.778-1.307H72.57c.097-.194.145-.485.145-.872V27.09h9.01c1.743 0 2.954-.436 3.633-1.308.678-.872 1.017-1.938 1.017-3.197 0-1.26-.34-2.325-1.017-3.197-.679-.872-1.89-1.308-3.633-1.308H46.268c-1.743 0-2.954.436-3.632 1.308-.678.872-1.018 1.938-1.018 3.197 0 1.26.34 2.325 1.018 3.197.678.872 1.889 1.308 3.632 1.308h8.138v72.075c0 .193.024.339.073.436.048.096.072.242.072.436H46.56c-1.744 0-3.003.435-3.778 1.307-.775.872-1.163 1.938-1.163 3.197 0 1.356.388 2.446 1.163 3.27.775.823 2.034 1.235 3.778 1.235h34.875z" /></symbol>'});s.a.add(i);t.default=i},oUrx:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-404",use:"icon-404-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-404"><path d="M121.718 73.272v9.953c3.957-7.584 6.199-16.05 6.199-24.995C127.917 26.079 99.273 0 63.958 0 28.644 0 0 26.079 0 58.23c0 .403.028.806.028 1.21l22.97-25.953h13.34l-19.76 27.187h6.42V53.77l13.728-19.477v49.361H22.998V73.272H2.158c5.951 20.284 23.608 36.208 45.998 41.399-1.44 3.3-5.618 11.263-12.565 12.674-8.607 1.764 23.358.428 46.163-13.178 17.519-4.611 31.938-15.849 39.77-30.513h-13.506V73.272H85.02V59.464l22.998-25.977h13.008l-19.429 27.187h6.421v-7.433l13.727-19.402v39.433h-.027zm-78.24 2.822a10.516 10.516 0 0 1-.996-4.535V44.548c0-1.613.332-3.124.996-4.535a11.66 11.66 0 0 1 2.713-3.68c1.134-1.032 2.49-1.864 4.04-2.468 1.55-.605 3.21-.908 4.982-.908h11.292c1.77 0 3.431.303 4.981.908 1.522.604 2.85 1.41 3.986 2.418l-12.26 16.303v-2.898a1.96 1.96 0 0 0-.665-1.512c-.443-.403-.996-.604-1.66-.604-.665 0-1.218.201-1.661.604a1.96 1.96 0 0 0-.664 1.512v9.071L44.364 77.606a10.556 10.556 0 0 1-.886-1.512zm35.73-4.535c0 1.613-.332 3.124-.997 4.535a11.66 11.66 0 0 1-2.712 3.68c-1.134 1.032-2.49 1.864-4.04 2.469-1.55.604-3.21.907-4.982.907H55.185c-1.77 0-3.431-.303-4.981-.907-1.55-.605-2.906-1.437-4.041-2.47a12.49 12.49 0 0 1-1.384-1.512l13.727-18.217v6.375c0 .605.222 1.109.665 1.512.442.403.996.604 1.66.604.664 0 1.218-.201 1.66-.604a1.96 1.96 0 0 0 .665-1.512V53.87L75.97 36.838c.913.932 1.66 1.99 2.214 3.175.664 1.41.996 2.922.996 4.535v27.011h.028z" /></symbol>'});s.a.add(i);t.default=i},qkZ8:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-edit",use:"icon-edit-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-edit"><path d="M106.133 67.2a4.797 4.797 0 0 0-4.8 4.8c0 .187.014.36.027.533h-.027V118.4H9.6V26.667h50.133c2.654 0 4.8-2.147 4.8-4.8 0-2.654-2.146-4.8-4.8-4.8H9.6a9.594 9.594 0 0 0-9.6 9.6V118.4c0 5.307 4.293 9.6 9.6 9.6h91.733c5.307 0 9.6-4.293 9.6-9.6V72.533h-.026c.013-.173.026-.346.026-.533 0-2.653-2.146-4.8-4.8-4.8z" /><path d="M125.16 13.373L114.587 2.8c-3.747-3.747-9.854-3.72-13.6.027l-52.96 52.96a4.264 4.264 0 0 0-.907 1.36L33.813 88.533c-.746 1.76-.226 3.534.907 4.68 1.133 1.147 2.92 1.667 4.693.92l31.4-13.293c.507-.213.96-.52 1.36-.907l52.96-52.96c3.747-3.746 3.774-9.853.027-13.6zM66.107 72.4l-18.32 7.76 7.76-18.32L92.72 24.667l10.56 10.56L66.107 72.4zm52.226-52.227l-8.266 8.267-10.56-10.56 8.266-8.267.027-.026 10.56 10.56-.027.026z" /></symbol>'});s.a.add(i);t.default=i},qwAt:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-lock",use:"icon-lock-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-lock"><path d="M119.88 49.674h-7.987V39.52C111.893 17.738 90.45.08 63.996.08 37.543.08 16.1 17.738 16.1 39.52v10.154H8.113c-4.408 0-7.987 2.94-7.987 6.577v65.13c0 3.637 3.57 6.577 7.987 6.577H119.88c4.407 0 7.987-2.94 7.987-6.577v-65.13c-.008-3.636-3.58-6.577-7.987-6.577zm-23.953 0H32.065V39.52c0-14.524 14.301-26.295 31.931-26.295 17.63 0 31.932 11.777 31.932 26.295v10.153z" /></symbol>'});s.a.add(i);t.default=i},s7Vf:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-user",use:"icon-user-usage",viewBox:"0 0 130 130",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 130 130" id="icon-user"><path d="M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z" stroke="#979797" /></symbol>'});s.a.add(i);t.default=i},"sg+I":function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409EFF",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"180px"}},sjxz:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-mention",use:"icon-tiptap-mention-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-mention"><title>read-email-at-alternate</title><path d="M12,.5A11.634,11.634,0,0,0,.262,12,11.634,11.634,0,0,0,12,23.5a11.836,11.836,0,0,0,6.624-2,1.25,1.25,0,1,0-1.393-2.076A9.34,9.34,0,0,1,12,21a9.132,9.132,0,0,1-9.238-9A9.132,9.132,0,0,1,12,3a9.132,9.132,0,0,1,9.238,9v.891a1.943,1.943,0,0,1-3.884,0V12A5.355,5.355,0,1,0,12,17.261a5.376,5.376,0,0,0,3.861-1.634,4.438,4.438,0,0,0,7.877-2.736V12A11.634,11.634,0,0,0,12,.5Zm0,14.261A2.763,2.763,0,1,1,14.854,12,2.812,2.812,0,0,1,12,14.761Z" /></symbol>'});s.a.add(i);t.default=i},swuu:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-quote",use:"icon-tiptap-quote-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-quote"><title>close-quote</title><path d="M18.559,3.932a4.942,4.942,0,1,0,0,9.883,4.609,4.609,0,0,0,1.115-.141.25.25,0,0,1,.276.368,6.83,6.83,0,0,1-5.878,3.523,1.25,1.25,0,0,0,0,2.5,9.71,9.71,0,0,0,9.428-9.95V8.873A4.947,4.947,0,0,0,18.559,3.932Z" /><path d="M6.236,3.932a4.942,4.942,0,0,0,0,9.883,4.6,4.6,0,0,0,1.115-.141.25.25,0,0,1,.277.368A6.83,6.83,0,0,1,1.75,17.565a1.25,1.25,0,0,0,0,2.5,9.711,9.711,0,0,0,9.428-9.95V8.873A4.947,4.947,0,0,0,6.236,3.932Z" /></symbol>'});s.a.add(i);t.default=i},t3Un:function(e,t,n){"use strict";var a=n("vDqi"),r=n.n(a),o=n("XJYT"),s=r.a.create({timeout:6e4});s.interceptors.response.use(function(e){return e},function(e){var t;if(console.log("Error ".concat(e)),e.response){var n=e.response.data.error?e.response.data.error:e.response.data;t=e.response.headers["content-type"].includes("application/json")?"".concat(e.message," - ").concat(n):"".concat(e.message)}else t=e;return Object(o.Message)({message:t,type:"error",duration:5e3}),Promise.reject(e)}),t.a=s},taZh:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-code",use:"icon-tiptap-code-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-code"><title>angle-brackets</title><path d="M9.147,21.552a1.244,1.244,0,0,1-.895-.378L.84,13.561a2.257,2.257,0,0,1,0-3.125L8.252,2.823a1.25,1.25,0,0,1,1.791,1.744l-6.9,7.083a.5.5,0,0,0,0,.7l6.9,7.082a1.25,1.25,0,0,1-.9,2.122Z" /><path d="M14.854,21.552a1.25,1.25,0,0,1-.9-2.122l6.9-7.083a.5.5,0,0,0,0-.7l-6.9-7.082a1.25,1.25,0,0,1,1.791-1.744l7.411,7.612a2.257,2.257,0,0,1,0,3.125l-7.412,7.614A1.244,1.244,0,0,1,14.854,21.552Zm6.514-9.373h0Z" /></symbol>'});s.a.add(i);t.default=i},vDVG:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-clipboard",use:"icon-clipboard-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-clipboard"><path d="M54.857 118.857h64V73.143H89.143c-1.902 0-3.52-.668-4.855-2.002-1.335-1.335-2.002-2.954-2.002-4.855V36.57H54.857v82.286zM73.143 16v-4.571a2.2 2.2 0 0 0-.677-1.61 2.198 2.198 0 0 0-1.609-.676H20.571c-.621 0-1.158.225-1.609.676a2.198 2.198 0 0 0-.676 1.61V16a2.2 2.2 0 0 0 .676 1.61c.451.45.988.676 1.61.676h50.285c.622 0 1.158-.226 1.61-.677.45-.45.676-.987.676-1.609zm18.286 48h21.357L91.43 42.642V64zM128 73.143v48c0 1.902-.667 3.52-2.002 4.855-1.335 1.335-2.953 2.002-4.855 2.002H52.57c-1.901 0-3.52-.667-4.854-2.002-1.335-1.335-2.003-2.953-2.003-4.855v-11.429H6.857c-1.902 0-3.52-.667-4.855-2.002C.667 106.377 0 104.759 0 102.857v-96c0-1.902.667-3.52 2.002-4.855C3.337.667 4.955 0 6.857 0h77.714c1.902 0 3.52.667 4.855 2.002 1.335 1.335 2.003 2.953 2.003 4.855V30.29c1 .622 1.856 1.29 2.569 2.003l29.147 29.147c1.335 1.335 2.478 3.145 3.429 5.43.95 2.287 1.426 4.383 1.426 6.291v-.018z" /></symbol>'});s.a.add(i);t.default=i},wfO2:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-tiptap-underline",use:"icon-tiptap-underline-usage",viewBox:"0 0 24 24",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" id="icon-tiptap-underline"><title>text-underline</title><path d="M22.5,21.248H1.5a1.25,1.25,0,0,0,0,2.5h21a1.25,1.25,0,0,0,0-2.5Z" /><path d="M1.978,2.748H3.341a.25.25,0,0,1,.25.25v8.523a8.409,8.409,0,0,0,16.818,0V3a.25.25,0,0,1,.25-.25h1.363a1.25,1.25,0,0,0,0-2.5H16.3a1.25,1.25,0,0,0,0,2.5h1.363a.25.25,0,0,1,.25.25v8.523a5.909,5.909,0,0,1-11.818,0V3a.25.25,0,0,1,.25-.25H7.7a1.25,1.25,0,1,0,0-2.5H1.978a1.25,1.25,0,0,0,0,2.5Z" /></symbol>'});s.a.add(i);t.default=i},y7eQ:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-email",use:"icon-email-usage",viewBox:"0 0 128 96",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 96" id="icon-email"><path d="M64.125 56.975L120.188.912A12.476 12.476 0 0 0 115.5 0h-103c-1.588 0-3.113.3-4.513.838l56.138 56.137z" /><path d="M64.125 68.287l-62.3-62.3A12.42 12.42 0 0 0 0 12.5v71C0 90.4 5.6 96 12.5 96h103c6.9 0 12.5-5.6 12.5-12.5v-71a12.47 12.47 0 0 0-1.737-6.35L64.125 68.287z" /></symbol>'});s.a.add(i);t.default=i},yCkv:function(e,t,n){"use strict";n.r(t);var a=n("4BeY"),r=n.n(a),o=n("IaFt"),s=n.n(o),i=new r.a({id:"icon-chart",use:"icon-chart-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-chart"><path d="M0 54.857h36.571V128H0V54.857zM91.429 27.43H128V128H91.429V27.429zM45.714 0h36.572v128H45.714V0z" /></symbol>'});s.a.add(i);t.default=i},zEvO:function(e,t,n){"use strict";var a=n("9NTF");n.n(a).a},zT9a:function(e,t,n){"use strict";var a={name:"SvgIcon",props:{iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{iconName:function(){return"#icon-".concat(this.iconClass)},svgClass:function(){return this.className?"svg-icon "+this.className:"svg-icon"}}},r=(n("mDMp"),n("KHd+")),o=Object(r.a)(a,function(){var e=this.$createElement,t=this._self._c||e;return t("svg",this._g({class:this.svgClass,attrs:{"aria-hidden":"true"}},this.$listeners),[t("use",{attrs:{"xlink:href":this.iconName}})])},[],!1,null,"17178ffc",null);o.options.__file="index.vue";t.a=o.exports},zx4i:function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409EFF",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"180px"}}},[["Vtdi","runtime","chunk-elementUI","chunk-libs"]]]); -//# sourceMappingURL=app.69891fda.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/app.69891fda.js.map b/priv/static/adminfe/static/js/app.69891fda.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/icons/svg/pdf.svg","webpack:///./src/icons/svg/people.svg","webpack:///./src/icons/svg/eye-open.svg","webpack:///./src/components/element-ui/Hamburger/index.vue?8f92","webpack:///./src/icons/svg/exit-fullscreen.svg","webpack:///./src/icons/svg/tiptap-add_col_before.svg","webpack:///./src/icons/svg/nested.svg","webpack:///./src/icons/svg/theme.svg","webpack:///./src/icons/svg/tiptap-table.svg","webpack:///./src/icons/svg/form.svg","webpack:///./src/icons/svg/tiptap-add_row_before.svg","webpack:///./src/icons/svg/tiptap-combine_cells.svg","webpack:///./src/icons/svg/tiptap-checklist.svg","webpack:///./src/icons/svg/dashboard.svg","webpack:///./src/api/utils.js","webpack:///./src/icons/svg/tiptap-delete_table.svg","webpack:///./src/icons/svg/tiptap-delete_row.svg","webpack:///./src/icons/svg/shopping.svg","webpack:///./src/icons/svg/bug.svg","webpack:///./src/icons/svg/international.svg","webpack:///./src/icons/svg/qq.svg","webpack:///./src/icons/svg/link.svg","webpack:///./src/components/element-ui/ScrollPane/index.vue?8407","webpack:///./src/views/layout/components/TagsView.vue?6ab0","webpack:///./src/icons/svg/guide 2.svg","webpack:///./src/icons/svg/language.svg","webpack:///./src/icons/svg/password.svg","webpack:///./src/icons/svg/tiptap-delete_col.svg","webpack:///./src/icons/svg/peoples.svg","webpack:///./src/icons/svg/money.svg","webpack:///./src/icons/svg/example.svg","webpack:///./src/icons/svg/list.svg","webpack:///./src/icons/svg/tiptap-remove.svg","webpack:///./src/icons/svg/settings.svg","webpack:///./src/icons/svg/message.svg","webpack:///./src/icons/svg/table.svg","webpack:///./src/views/layout/Layout.vue?d1f6","webpack:///./src/icons/svg/eye.svg","webpack:///./src/icons/svg sync nonrecursive \\.svg$","webpack:///./src/icons/svg/component.svg","webpack:///./src/App.vue?9edb","webpack:///src/App.vue","webpack:///./src/App.vue","webpack:///./src/App.vue?1e50","webpack:///./src/api/app.js","webpack:///./src/store/modules/app.js","webpack:///./src/store/modules/emojiPacks.js","webpack:///./src/store/modules/errorLog.js","webpack:///./src/store/getters.js","webpack:///./src/api/invites.js","webpack:///./src/store/modules/invites.js","webpack:///./src/api/mediaProxyCache.js","webpack:///./src/api/settings.js","webpack:///./src/store/modules/mediaProxyCache.js","webpack:///./src/api/moderationLog.js","webpack:///./src/store/modules/moderationLog.js","webpack:///./src/api/peers.js","webpack:///./src/store/modules/peers.js","webpack:///./src/components/element-ui/Hamburger/index.vue?1751","webpack:///src/components/element-ui/Hamburger/index.vue","webpack:///./src/components/element-ui/Hamburger/index.vue","webpack:///./src/components/element-ui/Hamburger/index.vue?78c1","webpack:///src/views/layout/components/Navbar.vue","webpack:///./src/views/layout/components/Navbar.vue?138b","webpack:///./src/views/layout/components/Navbar.vue","webpack:///./src/views/layout/components/Navbar.vue?b672","webpack:///./src/utils/i18n.js","webpack:///./src/utils/index.js","webpack:///./src/views/layout/components/Sidebar/Item.vue?9f99","webpack:///./src/views/layout/components/Sidebar/Item.vue?425b","webpack:///src/views/layout/components/Sidebar/Item.vue","webpack:///./src/views/layout/components/Sidebar/Item.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue?a99f","webpack:///src/views/layout/components/Sidebar/Link.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue?d88c","webpack:///src/views/layout/components/Sidebar/SidebarItem.vue","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue?f0b2","webpack:///./src/views/layout/components/Sidebar/FixiOSBug.js","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue?e550","webpack:///src/views/layout/components/Sidebar/index.vue","webpack:///./src/views/layout/components/Sidebar/index.vue?3b50","webpack:///./src/views/layout/components/Sidebar/index.vue","webpack:///./src/views/layout/components/Sidebar/index.vue?d021","webpack:///./src/components/element-ui/ScrollPane/index.vue?a39e","webpack:///src/components/element-ui/ScrollPane/index.vue","webpack:///./src/components/element-ui/ScrollPane/index.vue","webpack:///./src/components/element-ui/ScrollPane/index.vue?7344","webpack:///src/views/layout/components/TagsView.vue","webpack:///./src/views/layout/components/TagsView.vue?f016","webpack:///./src/views/layout/components/TagsView.vue","webpack:///./src/views/layout/components/TagsView.vue?d863","webpack:///./src/views/layout/components/AppMain.vue?4460","webpack:///src/views/layout/components/AppMain.vue","webpack:///./src/views/layout/components/AppMain.vue","webpack:///./src/views/layout/components/AppMain.vue?367b","webpack:///./src/views/layout/mixin/ResizeHandler.js","webpack:///./src/views/layout/Layout.vue?de6d","webpack:///src/views/layout/Layout.vue","webpack:///./src/views/layout/Layout.vue","webpack:///./src/views/layout/Layout.vue?9516","webpack:///./src/router/index.js","webpack:///./src/store/modules/permission.js","webpack:///./src/api/relays.js","webpack:///./src/store/modules/relays.js","webpack:///./src/api/reports.js","webpack:///./src/api/users.js","webpack:///./src/store/modules/reports.js","webpack:///./src/store/modules/settings.js","webpack:///./src/api/status.js","webpack:///./src/store/modules/status.js","webpack:///./src/store/modules/tagsView.js","webpack:///./src/api/login.js","webpack:///./src/api/nodeInfo.js","webpack:///./src/store/modules/user.js","webpack:///./src/store/modules/userProfile.js","webpack:///./src/store/modules/users.js","webpack:///./src/store/index.js","webpack:///./src/icons/index.js","webpack:///./src/errorLog.js","webpack:///./src/permission.js","webpack:///./src/filters/index.js","webpack:///./src/main.js","webpack:///./src/utils/auth.js","webpack:///./src/views/layout/components/TagsView.vue?da45","webpack:///./src/views/layout/components/AppMain.vue?2c3a","webpack:///./src/icons/svg/excel.svg","webpack:///./src/icons/svg/guide.svg","webpack:///./src/icons/svg/tiptap-add_col_after.svg","webpack:///./src/icons/svg/star.svg","webpack:///./src/icons/svg/tiptap-bold.svg","webpack:///./src/icons/svg/tiptap-add_row_after.svg","webpack:///./src/views/layout/components/Navbar.vue?a40e","webpack:///./src/icons/svg/wechat.svg","webpack:///./src/store/modules/normalizers.js","webpack:///./src/icons/svg/tiptap-italic.svg","webpack:///./src/icons/svg/size.svg","webpack:///./src/icons/svg/tiptap-paragraph.svg","webpack:///./src/icons/svg/tiptap-image.svg","webpack:///./src/icons/svg/zip.svg","webpack:///./src/icons/svg/tiptap-ol.svg","webpack:///./src/icons/svg/tab.svg","webpack:///./src/icons/svg/search.svg","webpack:///./src/icons/svg/tree.svg","webpack:///./src/icons/svg/tiptap-hr.svg","webpack:///./src/icons/svg/tiptap-ul.svg","webpack:///./src/icons/svg/documentation.svg","webpack:///./src/icons/svg/tiptap-strike.svg","webpack:///./src/icons/svg/tiptap-undo.svg","webpack:///./src/icons/svg/tiptap-link.svg","webpack:///./src/icons/svg/drag.svg","webpack:///./src/components/element-ui/SvgIcon/index.vue?928c","webpack:///./src/icons/svg/fullscreen.svg","webpack:///./src/lang/index.js","webpack:///./src/lang/en.js","webpack:///./src/lang/zh.js","webpack:///./src/lang/es.js","webpack:///./src/lang/oc.js","webpack:///./src/icons/svg/tiptap-redo.svg","webpack:///./src/api/emojiPacks.js","webpack:///./src/icons/svg/tiptap-github.svg","webpack:///./src/icons/svg/icon.svg","webpack:///./src/icons/svg/404.svg","webpack:///./src/icons/svg/edit.svg","webpack:///./src/icons/svg/lock.svg","webpack:///./src/icons/svg/user.svg","webpack:///./src/styles/index.scss","webpack:///./src/icons/svg/tiptap-mention.svg","webpack:///./src/icons/svg/tiptap-quote.svg","webpack:///./src/utils/request.js","webpack:///./src/icons/svg/tiptap-code.svg","webpack:///./src/icons/svg/clipboard.svg","webpack:///./src/icons/svg/tiptap-underline.svg","webpack:///./src/icons/svg/email.svg","webpack:///./src/icons/svg/chart.svg","webpack:///./src/views/layout/components/Sidebar/Item.vue?895e","webpack:///./src/components/element-ui/SvgIcon/index.vue?8767","webpack:///./src/components/element-ui/SvgIcon/index.vue?c01f","webpack:///src/components/element-ui/SvgIcon/index.vue","webpack:///./src/components/element-ui/SvgIcon/index.vue","webpack:///./src/styles/variables.scss"],"names":["__webpack_require__","r","__webpack_exports__","svg_baker_runtime_browser_symbol__WEBPACK_IMPORTED_MODULE_0__","svg_baker_runtime_browser_symbol__WEBPACK_IMPORTED_MODULE_0___default","n","svg_sprite_loader_runtime_browser_sprite_build__WEBPACK_IMPORTED_MODULE_1__","svg_sprite_loader_runtime_browser_sprite_build__WEBPACK_IMPORTED_MODULE_1___default","symbol","a","id","use","viewBox","content","add","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_69c6c5c4_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","d","baseName","instanceName","arguments","length","undefined","match","startsWith","isLocalhost","concat","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_591d6778_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TagsView_vue_vue_type_style_index_0_id_e1cdb714_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Layout_vue_vue_type_style_index_0_id_767d264f_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","map","./404.svg","./bug.svg","./chart.svg","./clipboard.svg","./component.svg","./dashboard.svg","./documentation.svg","./drag.svg","./edit.svg","./email.svg","./example.svg","./excel.svg","./exit-fullscreen.svg","./eye-open.svg","./eye.svg","./form.svg","./fullscreen.svg","./guide 2.svg","./guide.svg","./icon.svg","./international.svg","./language.svg","./link.svg","./list.svg","./lock.svg","./message.svg","./money.svg","./nested.svg","./password.svg","./pdf.svg","./people.svg","./peoples.svg","./qq.svg","./search.svg","./settings.svg","./shopping.svg","./size.svg","./star.svg","./tab.svg","./table.svg","./theme.svg","./tiptap-add_col_after.svg","./tiptap-add_col_before.svg","./tiptap-add_row_after.svg","./tiptap-add_row_before.svg","./tiptap-bold.svg","./tiptap-checklist.svg","./tiptap-code.svg","./tiptap-combine_cells.svg","./tiptap-delete_col.svg","./tiptap-delete_row.svg","./tiptap-delete_table.svg","./tiptap-github.svg","./tiptap-hr.svg","./tiptap-image.svg","./tiptap-italic.svg","./tiptap-link.svg","./tiptap-mention.svg","./tiptap-ol.svg","./tiptap-paragraph.svg","./tiptap-quote.svg","./tiptap-redo.svg","./tiptap-remove.svg","./tiptap-strike.svg","./tiptap-table.svg","./tiptap-ul.svg","./tiptap-underline.svg","./tiptap-undo.svg","./tree.svg","./user.svg","./wechat.svg","./zip.svg","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","src_Appvue_type_script_lang_js_","name","component","componentNormalizer","_h","this","$createElement","_c","_self","attrs","options","__file","App","needReboot","_x","_x2","_needReboot","apply","_callee","authHost","token","regenerator_default","wrap","_context","prev","next","request","baseURL","url","method","headers","authHeaders","abrupt","sent","stop","restartApp","_x3","_x4","_restartApp","_callee2","_context2","Authorization","getToken","app","state","sidebar","opened","Cookies","get","withoutAnimation","device","language","size","invitesEnabled","mutations","TOGGLE_SIDEBAR","set","CLOSE_SIDEBAR","TOGGLE_DEVICE","SET_INVITES_ENABLED","SET_LANGUAGE","TOGGLE_REBOOT","SET_SIZE","actions","closeSideBar","_ref","_ref2","commit","NeedReboot","_ref3","asyncToGenerator_default","mark","getters","response","data","RestartApplication","_ref4","SetInvitesEnabled","_ref5","setLanguage","_ref6","setSize","_ref7","toggleDevice","_ref8","toggleSideBar","_ref9","emojiPacks","activeTab","currentLocalFilesPage","currentLocalPacksPage","currentRemoteFilesPage","currentRemotePacksPage","filesPageSize","localPackFilesCount","localPacks","localPacksCount","pageSize","remoteInstance","remotePackFilesCount","remotePacks","remotePacksCount","SET_ACTIVE_TAB","tab","SET_LOCAL_FILES_COUNT","count","SET_LOCAL_FILES_PAGE","page","SET_LOCAL_PACKS","packs","SET_LOCAL_PACKS_COUNT","SET_LOCAL_PACK_FILES","files","_objectSpread","defineProperty_default","SET_LOCAL_PAGE","SET_REMOTE_FILES_COUNT","SET_REMOTE_FILES_PAGE","SET_REMOTE_INSTANCE","SET_REMOTE_PACKS_COUNT","SET_REMOTE_PACK_FILES","SET_REMOTE_PACKS","UPDATE_LOCAL_PACK_VAL","key","value","Vue","UPDATE_LOCAL_PACK_PACK","pack","UPDATE_LOCAL_PACK_FILES","AddNewEmojiFile","packName","file","shortcode","filename","result","addNewEmojiFile","t0","Message","message","i18n","t","type","duration","DeleteEmojiFile","dispatch","_state$localPacks$pac","updatedPackFiles","objectWithoutProperties_default","_toPropertyKey","deleteEmojiFile","CreatePack","_ref10","_ref11","_callee3","_context3","createPack","DeletePack","_ref12","_ref13","_callee4","_context4","deletePack","DownloadFrom","_ref14","_ref15","_callee5","instanceAddress","as","_context5","downloadFrom","FetchLocalEmojiPacks","_ref16","_callee6","_yield$listPacks","updatedPacks","_context6","listPacks","reduce","acc","_packs$packName","FetchLocalSinglePack","_ref17","_ref18","_callee7","_yield$fetchPack","files_count","_context7","fetchPack","FetchRemoteSinglePack","_ref19","_ref20","_callee8","_yield$fetchPack2","_context8","ImportFromFS","_ref21","_callee9","_context9","importFromFS","status","ReloadEmoji","_ref22","_callee10","_context10","reloadEmoji","SavePackMetadata","_ref23","_ref24","_callee11","_context11","savePackMetadata","SetActiveTab","_ref25","SetRemoteEmojiPacks","_ref26","_ref27","_callee12","_yield$listRemotePack","_context12","listRemotePacks","_packs$packName2","SetRemoteInstance","_ref28","instance","UpdateEmojiFile","_ref29","_ref30","_callee13","newShortcode","newFilename","force","_context13","el","updateEmojiFile","UpdateLocalPackVal","_ref31","args","_callee14","_context14","errorLog","logs","ADD_ERROR_LOG","log","push","addErrorLog","visitedViews","tagsView","cachedViews","user","avatar","introduction","roles","setting","permission_routers","permission","routers","addRouters","errorLogs","users","fetchedUsers","settings","generateInviteToken","_generateInviteToken","max_use","expires_at","inviteViaEmail","_x5","_x6","_x7","_x8","_inviteViaEmail","email","listInviteTokens","_x9","_x10","_listInviteTokens","revokeToken","_x11","_x12","_x13","_revokeToken","tokenToRevoke","invites","inviteTokens","loading","newToken","SET_LOADING","SET_NEW_TOKEN","SET_TOKENS","tokens","FetchInviteTokens","reverse","GenerateInviteToken","maxUse","expiresAt","_yield$generateInvite","InviteUserViaEmail","RemoveNewToken","RevokeToken","listBannedUrls","_listBannedUrls","purgeUrls","_purgeUrls","urls","ban","removeBannedUrls","_removeBannedUrls","searchBannedUrls","_x14","_x15","_x16","_searchBannedUrls","query","deleteInstanceDocument","_deleteInstanceDocument","fetchDescription","_fetchDescription","fetchSettings","_fetchSettings","getInstanceDocument","_getInstanceDocument","updateInstanceDocument","_updateInstanceDocument","formData","settings_objectSpread","Content-Type","updateSettings","_x17","_updateSettings","configs","removeSettings","_x18","_x19","_x20","_removeSettings","mediaProxyCache","bannedUrls","currentPage","mediaProxyEnabled","searchQuery","totalUrlsCount","MEDIA_PROXY_ENABLED","enabled","SET_BANNED_URLS","SET_TOTAL_URLS_COUNT","SET_PAGE","SET_SEARCH_QUERY","EnableMediaProxy","group","tuple","FetchMediaProxySetting","_yield$fetchSettings","mediaProxySettings","find","ListBannedUrls","PurgeUrls","RemoveBannedUrls","SearchUrls","fetchLog","_fetchLog","params","normalizedParams","_args","URLSearchParams","_","omitBy","moderationLog_objectSpread","isUndefined","toString","fetchAdmins","_fetchAdmins","fetchModerators","_fetchModerators","moderationLog","fetchedLog","logItemsCount","admins","moderators","logLoading","adminsLoading","SET_LOG_LOADING","SET_ADMINS_LOADING","SET_MODERATION_LOG","SET_MODERATION_LOG_COUNT","SET_ADMINS","SET_MODERATORS","FetchModerationLog","_arguments","opts","items","total","FetchAdmins","adminsResponse","moderatorsResponse","fetchPeers","_fetchPeers","peers","fetchedPeers","SET_PEERS","FetchPeers","toConsumableArray_default","sort","element_ui_Hamburgervue_type_script_lang_js_","props","isActive","Boolean","default","toggleClick","Function","Hamburger_component","staticStyle","padding","on","click","staticClass","class","is-active","xmlns","width","height","components_Navbarvue_type_script_lang_js_","components","Hamburger","computed","Navbarvue_type_script_lang_js_objectSpread","vuex_esm","methods","$store","logout","then","location","reload","Navbar_component","_vm","toggle-click","_v","trigger","src","slot","display","_s","$t","Navbar","generateTitle","title","$te","parseTime","time","cFormat","date","format","typeof_default","test","parseInt","Date","formatObj","y","getFullYear","m","getMonth","getDate","h","getHours","i","getMinutes","s","getSeconds","getDay","replace","formatTime","option","diff","now","Math","ceil","isExternal","path","Sidebar_Itemvue_type_script_lang_js_","String","icon","Item_component","icon-class","Item","Sidebar_Linkvue_type_script_lang_js_","to","required","linkProps","is","href","target","rel","Link_component","_b","_t","Link","Sidebar_SidebarItemvue_type_script_lang_js_","AppLink","mixins","mounted","fixBugIniOS","_this","$subMenu","$refs","subMenu","handleMouseleave","item","isNest","basePath","onlyOneChild","normalizedReportsCount","numeral_default","reports","openReportsCount","hasOneShowingChild","children","parent","showingChildren","filter","hidden","SidebarItemvue_type_script_lang_js_objectSpread","noShowingChildren","resolvePath","routePath","isExternalLink","path_browserify_default","showCount","SidebarItem_component","alwaysShow","ref","index","meta","_e","_l","child","is-nest","base-path","submenu-title-noDropdown","SidebarItem","components_Sidebarvue_type_script_lang_js_","Sidebarvue_type_script_lang_js_objectSpread","variables","variables_default","isCollapse","Sidebar_component","wrap-class","default-active","$route","collapse","background-color","menuBg","text-color","menuText","active-text-color","menuActiveText","mode","route","Sidebar","element_ui_ScrollPanevue_type_script_lang_js_","left","handleScroll","eventDelta","wheelDelta","deltaY","$scrollWrapper","scrollContainer","scrollLeft","moveToTarget","currentTag","$containerWidth","$el","offsetWidth","tagList","$parent","tag","firstTag","lastTag","scrollWidth","currentIndex","findIndex","prevTag","nextTag","afterNextTagOffsetLeft","offsetLeft","beforePrevTagOffsetLeft","ScrollPane_component","vertical","nativeOn","wheel","$event","preventDefault","components_TagsViewvue_type_script_lang_js_","ScrollPane","visible","top","selectedTag","affixTags","watch","addTags","moveToCurrentTag","document","body","addEventListener","closeMenu","removeEventListener","initTags","filterAffixTags","routes","tags","forEach","affix","TagsViewvue_type_script_lang_js_objectSpread","tempTags","_step","_iterator","_createForOfIteratorHelper","done","err","f","_this2","$nextTick","_step2","_iterator2","scrollPane","fullPath","refreshSelectedTag","view","_this3","$router","closeSelectedTag","_this4","toLastView","closeOthersTags","_this5","closeAllTags","_this6","some","latestView","slice","openMenu","getBoundingClientRect","maxLeft","clientX","clientY","TagsView_component","refInFor","mouseup","button","contextmenu","stopPropagation","directives","rawName","expression","style","TagsView","components_AppMainvue_type_script_lang_js_","AppMain_component","include","AppMain","layout_Layoutvue_type_script_lang_js_","store","beforeMount","window","resizeHandler","isMobile","isTablet","rect","classObj","hideSidebar","openSidebar","mobile","handleClickOutside","Layout_component","Layout","Router","disabledFeatures","process","settingsDisabled","includes","Promise","all","bind","noCache","statusesDisabled","statuses","reportsDisabled","invitesDisabled","emojiPacksDisabled","moderationLogDisabled","mediaProxyCacheDisabled","constantRouterMap","redirect","router","scrollBehavior","asyncRouterMap","filterAsyncRouter","res","tmp","permission_objectSpread","role","hasPermission","SET_ROUTERS","GenerateRoutes","accessedRouters","fetchRelays","_fetchRelays","addRelay","_addRelay","relay_url","deleteRelay","_deleteRelay","relays","fetchedRelays","SET_RELAYS","ADD_RELAY","relay","actor","DELETE_RELAY","fetchedRelay","FetchRelays","_yield$fetchRelays","AddRelay","finish","DeleteRelay","changeState","_changeState","fetchReports","_fetchReports","reportID","noteID","activateUsers","_activateUsers","nicknames","addRight","_addRight","right","createNewAccount","_createNewAccount","nickname","password","deactivateUsers","_deactivateUsers","deleteRight","_deleteRight","deleteUsers","_x21","_x22","_deleteUsers","disableMfa","_x23","_x24","_x25","_disableMfa","fetchUser","_x26","_x27","_x28","_fetchUser","fetchUserCredentials","_x29","_x30","_x31","_fetchUserCredentials","updateUserCredentials","_x32","_x33","_x34","_x35","_updateUserCredentials","credentials","fetchUsers","_x36","_x37","_x38","_fetchUsers","filters","_args11","getPasswordResetToken","_x39","_x40","_x41","_getPasswordResetToken","forcePasswordReset","_x42","_x43","_x44","_forcePasswordReset","searchUsers","_x45","_x46","_x47","_x48","_searchUsers","_args14","tagUser","_x49","_x50","_x51","_x52","_tagUser","_callee15","_context15","untagUser","_x53","_x54","_x55","_x56","_untagUser","_callee16","_context16","_callee17","godmode","_context17","approveUserAccount","_x61","_x62","_x63","_approveUserAccount","_callee18","_context18","confirmUserEmail","_x64","_x65","_x66","_confirmUserEmail","_callee19","_context19","resendConfirmationEmail","_x67","_x68","_x69","_resendConfirmationEmail","_callee20","_context20","fetchedReports","stateFilter","totalReportsCount","SET_LAST_REPORT_ID","idOfLastReport","SET_OPEN_REPORTS_COUNT","SET_REPORTS","SET_REPORTS_COUNT","SET_REPORTS_FILTER","ActivateUserFromReports","reportId","updatedReports","report","updatedAccount","reports_objectSpread","deactivated","account","AddTagFromReports","ChangeReportState","reportsData","ClearFetchedReports","DeactivateUserFromReports","DeleteUserFromReports","FetchReports","_yield$fetchReports","FetchOpenReportsCount","_yield$fetchReports2","RemoveTagFromReports","userTag","SetReportsFilter","CreateReportNote","rootState","_createNote","createNote","optimisticNote","created_at","getTime","notes","DeleteReportNote","_deleteNote","deleteNote","note","configDisabled","db","description","instancePanel","searchData","termsOfServices","updatedSettings","CLEAR_UPDATED_SETTINGS","SET_INSTANCE_PANEL","REMOVE_SETTING_FROM_UPDATED","subkeys","_state$updatedSetting","_subkeys$","settings_toPropertyKey","SET_DESCRIPTION","SET_SEARCH","searchObject","SET_SETTINGS","newSettings","parsedValue","valueHasTuples","parseNonTuples","parseTuples","modules_settings_objectSpread","newDbSettings","SET_TERMS_OF_SERVICES","TOGGLE_TABS","UPDATE_SETTINGS","input","updatedSetting","UPDATE_STATE","updatedState","FetchInstanceDocument","_yield$getInstanceDoc","FetchSettings","formSearchObject","RemoveInstanceDocument","RemoveSetting","_configs$","need_reboot","SubmitChanges","wrapUpdatedSettings","UpdateInstanceDocs","blob","FormData","Blob","append","UpdateSettings","UpdateState","deletedKey","delete","changeStatusScope","_changeStatusScope","sensitive","visibility","deleteStatus","_deleteStatus","fetchStatus","_fetchStatus","fetchStatuses","_fetchStatuses","localOnly","fetchStatusesCount","_fetchStatusesCount","fetchStatusesByInstance","_fetchStatusesByInstance","fetchedStatus","fetchedStatuses","statusAuthor","statusesByInstance","selectedInstance","showLocal","showPrivate","buttonLoading","allLoaded","statusVisibility","CHANGE_GODMODE_CHECKBOX_VALUE","CHANGE_LOCAL_CHECKBOX_VALUE","CHANGE_PAGE","CHANGE_SELECTED_INSTANCE","SET_STATUS","SET_STATUSES_BY_INSTANCE","PUSH_STATUSES","SET_ALL_LOADED","SET_BUTTON_LOADING","SET_STATUS_VISIBILITY","SET_STATUS_AUTHOR","ChangeStatusScope","statusId","isSensitive","reportCurrentPage","userId","ClearState","DeleteStatus","FetchStatus","FetchStatusAfterUserModeration","FetchStatusesCount","_yield$fetchStatusesC","status_visibility","FetchStatusesByInstance","FetchStatusesPageByInstance","HandleGodmodeCheckboxChange","HandleLocalCheckboxChange","HandleFilterChange","HandlePageChange","SetStatus","ADD_VISITED_VIEW","v","assign","ADD_CACHED_VIEW","DEL_VISITED_VIEW","tagsView_createForOfIteratorHelper","entries","_step$value","slicedToArray_default","splice","DEL_CACHED_VIEW","indexOf","DEL_OTHERS_VISITED_VIEWS","DEL_OTHERS_CACHED_VIEWS","_step3","_iterator3","DEL_ALL_VISITED_VIEWS","DEL_ALL_CACHED_VIEWS","UPDATE_VISITED_VIEW","_step4","_iterator4","addView","addVisitedView","addCachedView","delView","delVisitedView","delCachedView","delOthersViews","delOthersVisitedViews","delOthersCachedViews","delAllViews","delAllVisitedViews","delAllCachedViews","updateVisitedView","loginByUsername","_loginByUsername","username","appsRequest","client_name","random","redirect_uris","origin","scopes","client_id","client_secret","grant_type","getUserInfo","getNodeInfo","_getNodeInfo","getAuthHost","articlePlatform","nodeInfo","SET_CODE","SET_TOKEN","SET_INTRODUCTION","SET_SETTING","SET_NAME","SET_AVATAR","SET_ROLES","SET_ID","SET_AUTH_HOST","SET_NODE_INFO","LoginByUsername","reject","access_token","setToken","setAuthHost","catch","error","GetNodeInfo","metadata","GetUserInfo","pleroma","is_admin","LogOut","removeToken","removeAuthHost","FedLogOut","LoginByPleromaFE","host","userProfile","statusesLoading","userCredentials","userProfileLoading","SET_STATUSES","SET_STATUSES_LOADING","SET_USER","SET_USER_PROFILE_LOADING","SET_USER_CREDENTIALS","FetchUserProfile","userResponse","FetchUserStatuses","_x57","_x58","_x59","_x60","_fetchUserStatuses","fetchUserStatuses","FetchUserCredentials","SetStatuses","UpdateUserCredentials","mrfPolicies","totalUsersCount","local","external","active","need_approval","passwordResetToken","link","SET_USERS","SWAP_USERS","usersWithoutSwapped","u","updatedUsers","b","localeCompare","SET_COUNT","SET_PAGE_SIZE","SET_PASSWORD_RESET_TOKEN","SET_TAG_POLICY","SET_USERS_FILTERS","ActivateUsers","_userId","users_objectSpread","callApiFn","ApplyChanges","AddRight","_statusId","AddTag","ApproveUsersAccount","approval_pending","ClearUsersState","ClearFilters","ConfirmUsersEmail","confirmation_pending","CreateNewAccount","DeactivateUsers","DisableMfa","DeleteRight","DeleteUsers","usersNicknames","EnableTagPolicy","_ref32","FetchTagPolicySetting","_ref33","_callee21","mrfSettings","_context21","Array","isArray","FetchUsers","_ref34","_ref35","_callee22","_context22","join","loadUsers","GetPasswordResetToken","_ref36","_callee23","_yield$getPasswordRes","_context23","RemovePasswordToken","_ref37","RemoveTag","_ref38","_ref39","_callee25","_context25","_ref40","_callee24","_context24","RequirePasswordReset","_ref41","_callee26","_context26","ResendConfirmationEmail","_ref42","_callee27","_context27","SearchUsers","_ref43","_ref44","_callee28","_context28","SuccessMessage","success","ToggleUsersFilter","_ref45","_callee29","currentFilters","_context29","UpdateActorType","_ref46","_ref47","_callee31","_context31","actor_type","_ref48","_callee30","_context30","_ref49","page_size","Vuex","Store","modules","SvgIcon","requireContext","requireAll","require","config","errorHandler","vm","info","nextTick","console","NProgress","configure","showSpinner","whiteList","pluralize","label","timeAgo","between","Number","numberFormatter","num","digits","si","toFixed","toThousandFilter","beforeEach","from","start","addRoutes","src_permission_objectSpread","dangerouslyUseHTMLString","permissionRoles","noGoBack","afterEach","Element","productionTip","render","js_cookie__WEBPACK_IMPORTED_MODULE_0__","js_cookie__WEBPACK_IMPORTED_MODULE_0___default","TokenKey","AuthHostKey","remove","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TagsView_vue_vue_type_style_index_1_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_AppMain_vue_vue_type_style_index_0_id_f852c4f2_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Navbar_vue_vue_type_style_index_0_id_28de7ff2_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","getBooleanValue","getCurrentValue","_path","_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_4___default","firstSettingName","restKeys","firstSegment","secondSegment","_keys","element","rest","_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1___default","tuples","accum","mascot","_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default","_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default","parseStringOrTupleValue","parseObject","object","_value$tuple","_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3___default","socks5","port","_value$split","split","_value$split2","_value$tuple2","prependWithСolon","processNested","valueForState","valueForUpdatedSettings","parentKey","parents","_parents","_parents$","otherParents","updatedValueForState","valueExists","updatedValueForUpdatedSettings","_path2","_keys2","valueIsArrayOfNonObjects","every","currentState","_value","updatedArray","getValueWithoutKey","wrapValues","_settings$setting","mapValue","searchArray","compact","toLowerCase","resultObject","groupKey","groupLabel","search","updatedAcc","parseNestedSettings","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_17178ffc_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","VueI18n","messages","en","dashboard","documentation","guide","pagePermission","directivePermission","icons","componentIndex","markdown","jsonEditor","dndList","splitPane","avatarUpload","dropzone","sticky","countTo","componentMixin","backToTop","dragDialog","dragSelect","dragKanban","charts","keyboardChart","lineChart","mixChart","example","nested","menu1","menu1-1","menu1-2","menu1-2-1","menu1-2-2","menu1-3","menu2","Table","dynamicTable","dragTable","inlineEditTable","complexTable","treeTable","customTreeTable","form","createArticle","editArticle","articleList","errorPages","page401","page404","excel","exportExcel","selectExcel","uploadExcel","zip","pdf","exportZip","theme","clipboardDemo","externalLink","emoji-packs","navbar","logOut","github","login","logIn","logInViaPleromaFE","omitHostname","errorMessage","any","thirdparty","pleromaFELoginFailed","pleromaFELoginSucceed","evict","evictedMessage","evictObjectsHeader","listBannedUrlsHeader","multipleInput","removeSelected","enable","invalidationAndMediaProxy","confirmEnablingMediaProxy","enableMediaProxySuccessMessage","switchRoles","tips","dropzoneTips","stickyTips","backToTopTips1","backToTopTips2","imageUploadTips","table","dynamicTips1","dynamicTips2","dragTips1","dragTips2","importance","remark","export","reviewer","author","readings","edit","publish","draft","cancel","confirm","unfollow","selectedExport","placeholder","change","refresh","close","closeOthers","closeAll","localUsersOnly","unapproved","unconfirmed","activate","deactivate","admin","moderator","moderation","revokeAdmin","grantAdmin","revokeModerator","grantModerator","activateAccount","activateAccounts","deactivateAccount","deactivateAccounts","deleteAccount","deleteAccounts","forceNsfw","stripMedia","forceUnlisted","sandbox","disableRemoteSubscription","disableRemoteSubscriptionForMultiple","disableAnySubscription","disableAnySubscriptionForMultiple","requirePasswordReset","selectUsers","moderateUser","moderateUsers","createAccount","grantRightConfirmation","revokeRightConfirmation","activateMultipleUsersConfirmation","deactivateMultipleUsersConfirmation","deleteUserConfirmation","rejectAccountConfirmation","deleteMultipleUsersConfirmation","addTagForMultipleUsersConfirmation","removeTagFromMultipleUsersConfirmation","requirePasswordResetConfirmation","approveAccountsConfirmation","rejectAccountsConfirmation","confirmAccountsConfirmation","resendEmailConfirmation","mailerMustBeEnabled","ok","completed","canceled","create","submitFormError","emptyEmailError","invalidEmailError","emptyPasswordError","emptyNicknameError","invalidNicknameError","passwordResetTokenCreated","accountCreated","approveAccount","approveAccounts","unapprovedAccount","unconfirmedEmail","confirmAccount","confirmAccounts","rejectAccount","rejectAccounts","resendConfirmation","invalidAccount","invalidNickname","passwordResetTokenGenerated","linkToResetPassword","registrationReason","service","person","enableTagPolicy","confirmEnablingTagPolicy","enableTagPolicySuccessMessage","instanceFilter","loadMore","noInstances","onlyLocalStatuses","showPrivateStatuses","direct","private","public","unlisted","openStatusInInstance","accountType","actorType","recentStatuses","reason","pending","noStatuses","openAccountInInstance","securitySettings","passwordChangeWarning1","passwordChangeWarning2","passwordLengthNotice","inputNewEmail","inputNewPassword","passwordUpdated","emailUpdated","submit","usersFilter","inputPlaceholder","byAccountType","byStatus","reply","showNotes","newNote","confirmMsg","deleteCompleted","deleteCanceled","noNotes","changeAllReports","changeScope","reopen","resolveAll","reopenAll","addSensitive","removeSensitive","reportOn","reportsOn","actors","reportedStatus","statusDeleted","leaveNote","postNote","notFound","reportsFilter","open","closed","resolved","upload","mailer","linkFormatter","logger","activityPub","auth","captcha","frontend","http","mrf","mediaProxy","gopher","jobQueue","webPush","esshd","rateLimiters","other","follow","followRelay","followedBack","instanceUrl","removeFromDB","successfullyDownloaded","successfullyImported","nowNewPacksToImport","successfullyUpdated","metadatLowerCase","successfullyRemoved","seeDocs","instanceReboot","restartSuccess","removeSettingConfirmation","changeImage","uploadImage","createInviteToken","pickDate","tokenCreated","inviteLink","uses","used","revoke","inviteUserViaEmail","sendRegistration","emailSent","inviteViaEmailAlert","emoji","reloaded","refreshed","importEmojiTooltip","importPacks","refreshLocalPacks","createLocalPack","remoteInstanceAddress","refreshRemote","sharePack","homepage","license","fallbackSrc","fallbackSrcSha","saveMetadata","downloadPack","downloadPackArchive","addNewEmoji","manageEmoji","thisWillDownload","downloadToCurrentInstance","canBeChanged","willBeUsable","downloadAsOptional","downloadSharedPack","downloadSharedPackMobile","optional","uploadFile","clickToUpload","customFilename","customFilenameDesc","localPack","leaveEmptyShortcode","leaveEmptyFilename","update","selectLocalPack","specifyShortcode","specifyFilename","copy","copyToLocalPack","emptyPack","emojiWarning","image","elementEnLocale","zh","thirdpartyTips","elementZhLocale","es","elementEsLocale","oc","locale","_addNewEmojiFile","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","trim","addressOfEmojiInPack","encodeUri","_createPack","_deleteEmojiFile","_deletePack","_downloadFrom","timeout","_fetchPack","_importFromFS","_listPacks","_listRemotePacks","_reloadEmoji","_savePackMetadata","_updateEmojiFile","new_shortcode","new_filename","encodeURIComponent","subMenuActiveText","menuHover","subMenuBg","subMenuHover","sideBarWidth","axios__WEBPACK_IMPORTED_MODULE_0__","axios__WEBPACK_IMPORTED_MODULE_0___default","element_ui__WEBPACK_IMPORTED_MODULE_1__","axios","interceptors","edata","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Item_vue_vue_type_style_index_0_id_52140d98_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","element_ui_SvgIconvue_type_script_lang_js_","iconClass","className","iconName","svgClass","_g","aria-hidden","$listeners","xlink:href"],"mappings":"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","file":"static/js/app.69891fda.js","sourcesContent":["import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-pdf\",\n \"use\": \"icon-pdf-usage\",\n \"viewBox\": \"0 0 1024 1024\",\n \"content\": \"<symbol viewBox=\\\"0 0 1024 1024\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"icon-pdf\\\"><path d=\\\"M869.073 277.307H657.111V65.344l211.962 211.963zm-238.232 26.27V65.344l-476.498-.054v416.957h714.73v-178.67H630.841zm-335.836 360.57c-5.07-3.064-10.944-5.133-17.61-6.201-6.67-1.064-13.603-1.6-20.81-1.6h-48.821v85.641h48.822c7.206 0 14.14-.532 20.81-1.6 6.665-1.065 12.54-3.133 17.609-6.202 5.064-3.063 9.134-7.406 12.208-13.007 3.065-5.602 4.6-12.937 4.6-22.011 0-9.07-1.535-16.408-4.6-22.01-3.074-5.603-7.144-9.94-12.208-13.01zM35.82 541.805v416.904h952.358V541.805H35.821zm331.421 191.179c-3.6 11.071-9.343 20.879-17.209 29.413-7.874 8.542-18.078 15.408-30.617 20.61-12.544 5.206-27.747 7.807-45.621 7.807h-66.036v102.45h-62.831V607.517h128.867c17.874 0 33.077 2.6 45.62 7.802 12.541 5.207 22.745 12.076 30.618 20.615 7.866 8.538 13.604 18.277 17.21 29.212 3.6 10.943 5.401 22.278 5.401 34.018 0 11.477-1.8 22.752-5.402 33.819zM644.9 806.417c-5.343 17.61-13.408 32.818-24.212 45.627-10.807 12.803-24.283 22.879-40.423 30.213-16.146 7.343-35.155 11.007-57.03 11.007h-123.26V607.518h123.26c18.41 0 35.552 2.941 51.428 8.808 15.873 5.869 29.618 14.671 41.22 26.412 11.608 11.744 20.674 26.411 27.217 44.02 6.535 17.61 9.803 38.288 9.803 62.035 0 20.81-2.67 40.02-8.003 57.624zm245.362-146.07h-138.07v66.03h119.66v48.829h-119.66v118.058h-62.83V607.518h200.9v52.829h-.001zm-318.2 25.611c-6.402-8.266-14.877-14.604-25.412-19.01-10.544-4.402-23.551-6.602-39.019-6.602h-44.825v180.088h56.029c9.07 0 17.872-1.463 26.415-4.401 8.535-2.932 16.14-7.802 22.812-14.609 6.665-6.8 12.007-15.667 16.007-26.61 4.003-10.94 6.003-24.275 6.003-40.021 0-14.408-1.4-27.416-4.202-39.019-2.8-11.607-7.406-21.542-13.808-29.816zm0 0\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-people\",\n \"use\": \"icon-people-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-people\\\"><path d=\\\"M104.185 95.254c8.161 7.574 13.145 17.441 13.145 28.28 0 1.508-.098 2.998-.285 4.466h-10.784c.238-1.465.403-2.948.403-4.465 0-8.983-4.36-17.115-11.419-23.216C86 104.66 75.355 107.162 64 107.162c-11.344 0-21.98-2.495-31.22-6.83-7.064 6.099-11.444 14.218-11.444 23.203 0 1.517.165 3 .403 4.465H10.955a35.444 35.444 0 0 1-.285-4.465c0-10.838 4.974-20.713 13.127-28.291C9.294 85.42.003 70.417.003 53.58.003 23.99 28.656.001 64 .001s63.997 23.988 63.997 53.58c0 16.842-9.299 31.85-23.812 41.673zM64 36.867c-29.454 0-53.33-10.077-53.33 15.342 0 25.418 23.876 46.023 53.33 46.023 29.454 0 53.33-20.605 53.33-46.023 0-25.419-23.876-15.342-53.33-15.342zm24.888 25.644c-3.927 0-7.111-2.665-7.111-5.953 0-3.288 3.184-5.954 7.11-5.954 3.928 0 7.111 2.666 7.111 5.954s-3.183 5.953-7.11 5.953zm-3.556 16.372c0 4.11-9.55 7.442-21.332 7.442-11.781 0-21.332-3.332-21.332-7.442 0-1.06.656-2.064 1.8-2.976 3.295 2.626 10.79 4.465 19.532 4.465 8.743 0 16.237-1.84 19.531-4.465 1.145.912 1.801 1.916 1.801 2.976zm-46.22-16.372c-3.927 0-7.11-2.665-7.11-5.953 0-3.288 3.183-5.954 7.11-5.954 3.927 0 7.111 2.666 7.111 5.954s-3.184 5.953-7.11 5.953z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-eye-open\",\n \"use\": \"icon-eye-open-usage\",\n \"viewBox\": \"0 0 1024 1024\",\n \"content\": \"<symbol class=\\\"icon\\\" viewBox=\\\"0 0 1024 1024\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"icon-eye-open\\\"><defs><style></style></defs><path d=\\\"M512 128q69.675 0 135.51 21.163t115.498 54.997 93.483 74.837 73.685 82.006 51.67 74.837 32.17 54.827L1024 512q-2.347 4.992-6.315 13.483T998.87 560.17t-31.658 51.669-44.331 59.99-56.832 64.34-69.504 60.16-82.347 51.5-94.848 34.687T512 896q-69.675 0-135.51-21.163t-115.498-54.826-93.483-74.326-73.685-81.493-51.67-74.496-32.17-54.997L0 513.707q2.347-4.992 6.315-13.483t18.816-34.816 31.658-51.84 44.331-60.33 56.832-64.683 69.504-60.331 82.347-51.84 94.848-34.816T512 128.085zm0 85.333q-46.677 0-91.648 12.331t-81.152 31.83-70.656 47.146-59.648 54.485-48.853 57.686-37.675 52.821-26.325 43.99q12.33 21.674 26.325 43.52t37.675 52.351 48.853 57.003 59.648 53.845T339.2 767.02t81.152 31.488T512 810.667t91.648-12.331 81.152-31.659 70.656-46.848 59.648-54.186 48.853-57.344 37.675-52.651T927.957 512q-12.33-21.675-26.325-43.648t-37.675-52.65-48.853-57.345-59.648-54.186-70.656-46.848-81.152-31.659T512 213.334zm0 128q70.656 0 120.661 50.006T682.667 512 632.66 632.661 512 682.667 391.339 632.66 341.333 512t50.006-120.661T512 341.333zm0 85.334q-35.328 0-60.33 25.002T426.666 512t25.002 60.33T512 597.334t60.33-25.002T597.334 512t-25.002-60.33T512 426.666z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-exit-fullscreen\",\n \"use\": \"icon-exit-fullscreen-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-exit-fullscreen\\\"><path d=\\\"M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-add_col_before\",\n \"use\": \"icon-tiptap-add_col_before-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-add_col_before\\\">\\n <path d=\\\"M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L20.25,18.0625 C20.077411,18.0625 19.9375,17.922589 19.9375,17.75 L19.9375,16.5 C19.9375,15.982233 19.517767,15.5625 19,15.5625 C18.482233,15.5625 18.0625,15.982233 18.0625,16.5 L18.0625,17.75 C18.0625,17.922589 17.922589,18.0625 17.75,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 L17.75,19.9375 C17.922589,19.9375 18.0625,20.077411 18.0625,20.25 L18.0625,21.5 C18.0625,22.017767 18.482233,22.4375 19,22.4375 C19.517767,22.4375 19.9375,22.017767 19.9375,21.5 L19.9375,20.25 C19.9375,20.077411 20.077411,19.9375 20.25,19.9375 L21.5,19.9375 Z M2,19 C2,20.6568542 3.34314575,22 5,22 C6.65685425,22 8,20.6568542 8,19 L8,5 C8,3.34314575 6.65685425,2 5,2 C3.34314575,2 2,3.34314575 2,5 L2,19 Z M-2.7585502e-16,19 L5.81397739e-16,5 C-1.37692243e-16,2.23857625 2.23857625,0 5,0 C7.76142375,0 10,2.23857625 10,5 L10,19 C10,21.7614237 7.76142375,24 5,24 C2.23857625,24 4.43234962e-16,21.7614237 -2.7585502e-16,19 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-nested\",\n \"use\": \"icon-nested-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-nested\\\"><path d=\\\"M.002 9.2c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-5.043-3.58-9.132-7.997-9.132S.002 4.157.002 9.2zM31.997.066h95.981V18.33H31.997V.066zm0 45.669c0 5.044 3.58 9.132 7.998 9.132 4.417 0 7.997-4.088 7.997-9.132 0-3.263-1.524-6.278-3.998-7.91-2.475-1.63-5.524-1.63-7.998 0-2.475 1.632-4 4.647-4 7.91zM63.992 36.6h63.986v18.265H63.992V36.6zm-31.995 82.2c0 5.043 3.58 9.132 7.998 9.132 4.417 0 7.997-4.089 7.997-9.132 0-5.044-3.58-9.133-7.997-9.133s-7.998 4.089-7.998 9.133zm31.995-9.131h63.986v18.265H63.992V109.67zm0-27.404c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-3.263-1.524-6.277-3.998-7.909-2.475-1.631-5.524-1.631-7.998 0-2.475 1.632-4 4.646-4 7.91zm31.995-9.13h31.991V91.4H95.987V73.135z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-theme\",\n \"use\": \"icon-theme-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-theme\\\"><path d=\\\"M125.5 36.984L95.336 2.83C93.735 1.018 91.565 0 89.3 0c-2.263 0-4.433 1.018-6.033 2.83l-3.786 4.286c-1.6 1.812-3.77 2.83-6.032 2.831H54.553c-2.263 0-4.434-1.018-6.033-2.83L44.734 2.83C43.134 1.018 40.964 0 38.701 0c-2.263 0-4.434 1.018-6.034 2.83L2.5 36.984C.9 38.796 0 41.254 0 43.815c0 2.562.899 5.02 2.5 6.831L14.565 64.31c2.178 2.468 5.367 3.403 8.33 2.444 1.35-.435 2.709.592 2.709 2.18v49.407c0 5.313 3.84 9.66 8.532 9.66h59.726c4.693 0 8.532-4.347 8.532-9.66V68.934c0-1.59 1.36-2.616 2.71-2.181 2.962.96 6.15.024 8.329-2.444L125.5 50.646c1.6-1.811 2.499-4.269 2.499-6.83 0-2.563-.899-5.02-2.5-6.832z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-table\",\n \"use\": \"icon-tiptap-table-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-table\\\">\\n <path fill-rule=\\\"evenodd\\\" d=\\\"M17,17 L17,22 L19,22 C20.6568542,22 22,20.6568542 22,19 L22,17 L17,17 Z M15,17 L9,17 L9,22 L15,22 L15,17 Z M17,15 L22,15 L22,9 L17,9 L17,15 Z M15,15 L15,9 L9,9 L9,15 L15,15 Z M17,7 L22,7 L22,5 C22,3.34314575 20.6568542,2 19,2 L17,2 L17,7 Z M15,7 L15,2 L9,2 L9,7 L15,7 Z M24,16.1768671 L24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 2.11453371e-15,21.7614237 1.77635684e-15,19 L0,5 C-3.38176876e-16,2.23857625 2.23857625,2.28362215e-15 5,0 L19,0 C21.7614237,-5.07265313e-16 24,2.23857625 24,5 L24,7.82313285 C24.0122947,7.88054124 24.0187107,7.93964623 24.0187107,8 C24.0187107,8.06035377 24.0122947,8.11945876 24,8.17686715 L24,15.8231329 C24.0122947,15.8805412 24.0187107,15.9396462 24.0187107,16 C24.0187107,16.0603538 24.0122947,16.1194588 24,16.1768671 Z M7,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,7 L7,7 L7,2 Z M2,9 L2,15 L7,15 L7,9 L2,9 Z M2,17 L2,19 C2,20.6568542 3.34314575,22 5,22 L7,22 L7,17 L2,17 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-form\",\n \"use\": \"icon-form-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-form\\\"><path d=\\\"M84.068 23.784c-1.02 0-1.877-.32-2.572-.96a8.588 8.588 0 0 1-1.738-2.237 11.524 11.524 0 0 1-1.042-2.621c-.232-.895-.348-1.641-.348-2.238V0h.278c.834 0 1.622.085 2.363.256.742.17 1.645.575 2.711 1.214 1.066.64 2.363 1.535 3.892 2.686 1.53 1.15 3.453 2.664 5.77 4.54 2.502 2.045 4.494 3.771 5.977 5.178 1.483 1.406 2.618 2.6 3.406 3.58.787.98 1.274 1.812 1.46 2.494.185.682.277 1.278.277 1.79v2.046H84.068zM127.3 84.01c.278.682.464 1.535.556 2.558.093 1.023-.37 2.003-1.39 2.94-.463.427-.88.832-1.25 1.215-.372.384-.696.704-.974.96a6.69 6.69 0 0 1-.973.767l-11.816-10.741a44.331 44.331 0 0 0 1.877-1.535 31.028 31.028 0 0 1 1.737-1.406c1.112-.938 2.317-1.343 3.615-1.215 1.297.128 2.363.405 3.197.83.927.427 1.923 1.173 2.989 2.239 1.065 1.065 1.876 2.195 2.432 3.388zM78.23 95.902c2.038 0 3.752-.511 5.143-1.534l-26.969 25.83H18.037c-1.761 0-3.684-.47-5.77-1.407a24.549 24.549 0 0 1-5.838-3.709 21.373 21.373 0 0 1-4.518-5.306c-1.204-2.003-1.807-4.07-1.807-6.202V16.495c0-1.79.44-3.665 1.32-5.626A18.41 18.41 0 0 1 5.04 5.562a21.798 21.798 0 0 1 5.213-3.964C12.198.533 14.237 0 16.37 0h53.24v15.984c0 1.62.278 3.367.834 5.242a16.704 16.704 0 0 0 2.572 5.179c1.159 1.577 2.665 2.898 4.518 3.964 1.853 1.066 4.078 1.598 6.673 1.598h20.295v42.325L85.458 92.45c1.02-1.364 1.529-2.856 1.529-4.476 0-2.216-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1c-2.409 0-4.448.789-6.116 2.366-1.668 1.577-2.502 3.474-2.502 5.69 0 2.217.834 4.092 2.502 5.626 1.668 1.535 3.707 2.302 6.117 2.302h52.13zM26.1 47.951c-2.41 0-4.449.789-6.117 2.366-1.668 1.577-2.502 3.473-2.502 5.69 0 2.216.834 4.092 2.502 5.626 1.668 1.534 3.707 2.302 6.117 2.302h52.13c2.409 0 4.47-.768 6.185-2.302 1.715-1.534 2.572-3.41 2.572-5.626 0-2.217-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1zm52.407 64.063l1.807-1.663 3.476-3.196a479.75 479.75 0 0 0 4.587-4.284 500.757 500.757 0 0 1 5.004-4.667c3.985-3.666 8.48-7.758 13.485-12.276l11.677 10.741-13.485 12.404-5.004 4.603-4.587 4.22a179.46 179.46 0 0 0-3.267 3.068c-.88.853-1.367 1.322-1.46 1.407-.463.341-.973.703-1.529 1.087-.556.383-1.112.703-1.668.959-.556.256-1.413.575-2.572.959a83.5 83.5 0 0 1-3.545 1.087 72.2 72.2 0 0 1-3.475.895c-1.112.256-1.946.426-2.502.511-1.112.17-1.854.043-2.224-.383-.371-.426-.464-1.151-.278-2.174.092-.511.278-1.279.556-2.302.278-1.023.602-2.067.973-3.132l1.042-3.005c.325-.938.58-1.577.765-1.918a10.157 10.157 0 0 1 2.224-2.941z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-add_row_before\",\n \"use\": \"icon-tiptap-add_row_before-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-add_row_before\\\">\\n <path d=\\\"M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L20.25,18.0625 C20.077411,18.0625 19.9375,17.922589 19.9375,17.75 L19.9375,16.5 C19.9375,15.982233 19.517767,15.5625 19,15.5625 C18.482233,15.5625 18.0625,15.982233 18.0625,16.5 L18.0625,17.75 C18.0625,17.922589 17.922589,18.0625 17.75,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 L17.75,19.9375 C17.922589,19.9375 18.0625,20.077411 18.0625,20.25 L18.0625,21.5 C18.0625,22.017767 18.482233,22.4375 19,22.4375 C19.517767,22.4375 19.9375,22.017767 19.9375,21.5 L19.9375,20.25 C19.9375,20.077411 20.077411,19.9375 20.25,19.9375 L21.5,19.9375 Z M5,2 C3.34314575,2 2,3.34314575 2,5 C2,6.65685425 3.34314575,8 5,8 L19,8 C20.6568542,8 22,6.65685425 22,5 C22,3.34314575 20.6568542,2 19,2 L5,2 Z M5,0 L19,0 C21.7614237,-5.07265313e-16 24,2.23857625 24,5 C24,7.76142375 21.7614237,10 19,10 L5,10 C2.23857625,10 3.38176876e-16,7.76142375 0,5 C-1.2263553e-15,2.23857625 2.23857625,5.07265313e-16 5,0 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-combine_cells\",\n \"use\": \"icon-tiptap-combine_cells-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-combine_cells\\\">\\n <path d=\\\"M2,19 C2,20.6568542 3.34314575,22 5,22 L19,22 C20.6568542,22 22,20.6568542 22,19 L22,5 C22,3.34314575 20.6568542,2 19,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,19 Z M-1.16403344e-15,19 L-3.0678068e-16,5 C-6.44957556e-16,2.23857625 2.23857625,0 5,0 L19,0 C21.7614237,0 24,2.23857625 24,5 L24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 9.50500275e-16,21.7614237 -1.16403344e-15,19 Z M12,10 C12.5522847,10 13,10.4477153 13,11 L13,13 C13,13.5522847 12.5522847,14 12,14 C11.4477153,14 11,13.5522847 11,13 L11,11 C11,10.4477153 11.4477153,10 12,10 Z M12,16 C12.5522847,16 13,16.4477153 13,17 L13,20 C13,20.5522847 12.5522847,21 12,21 C11.4477153,21 11,20.5522847 11,20 L11,17 C11,16.4477153 11.4477153,16 12,16 Z M12,3 C12.5522847,3 13,3.44771525 13,4 L13,7 C13,7.55228475 12.5522847,8 12,8 C11.4477153,8 11,7.55228475 11,7 L11,4 C11,3.44771525 11.4477153,3 12,3 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-checklist\",\n \"use\": \"icon-tiptap-checklist-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-checklist\\\"><title>checklist-alternate</title><path d=\\\"M21,0H3A3,3,0,0,0,0,3V21a3,3,0,0,0,3,3H21a3,3,0,0,0,3-3V3A3,3,0,0,0,21,0Zm1,21a1,1,0,0,1-1,1H3a1,1,0,0,1-1-1V3A1,1,0,0,1,3,2H21a1,1,0,0,1,1,1Z\\\" /><path d=\\\"M11.249,4.5a1.251,1.251,0,0,0-1.75.25L7.365,7.6l-.482-.481A1.25,1.25,0,0,0,5.116,8.883l1.5,1.5A1.262,1.262,0,0,0,8.5,10.249l3-4A1.25,1.25,0,0,0,11.249,4.5Z\\\" /><path d=\\\"M11.249,13.5a1.251,1.251,0,0,0-1.75.25L7.365,16.6l-.482-.481a1.25,1.25,0,1,0-1.767,1.768l1.5,1.5A1.265,1.265,0,0,0,8.5,19.249l3-4A1.25,1.25,0,0,0,11.249,13.5Z\\\" /><path d=\\\"M18.5,7.749H14a1.25,1.25,0,0,0,0,2.5h4.5a1.25,1.25,0,0,0,0-2.5Z\\\" /><path d=\\\"M18.5,15.749H14a1.25,1.25,0,0,0,0,2.5h4.5a1.25,1.25,0,1,0,0-2.5Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-dashboard\",\n \"use\": \"icon-dashboard-usage\",\n \"viewBox\": \"0 0 128 100\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 100\\\" id=\\\"icon-dashboard\\\"><path d=\\\"M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","const isLocalhost = (instanceName) =>\n instanceName.startsWith('localhost:') || instanceName.startsWith('127.0.0.1:')\n\nexport const baseName = (instanceName = 'localhost') => {\n if (instanceName.match(/https?:\\/\\//)) {\n return instanceName\n } else {\n return isLocalhost(instanceName) ? `http://${instanceName}` : `https://${instanceName}`\n }\n}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-delete_table\",\n \"use\": \"icon-tiptap-delete_table-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-delete_table\\\">\\n <path d=\\\"M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z M12.2898787,17 L9,17 L9,22 L12.6736312,22 C13.0297295,22.7496048 13.515133,23.4258795 14.1010173,24 L5,24 C2.23857625,24 -1.43817996e-15,21.7614237 -1.77635684e-15,19 L-3.55271368e-15,5 C-3.89089055e-15,2.23857625 2.23857625,5.07265313e-16 5,-1.77635684e-15 L19,-1.77635684e-15 C21.7614237,-2.28362215e-15 24,2.23857625 24,5 L24,7.82313285 C24.0122947,7.88054124 24.0187107,7.93964623 24.0187107,8 C24.0187107,8.06035377 24.0122947,8.11945876 24,8.17686715 L24,14.1010173 C23.4258795,13.515133 22.7496048,13.0297295 22,12.6736312 L22,9 L17,9 L17,12.2898787 C16.2775651,12.5048858 15.6040072,12.8333806 15,13.2546893 L15,9 L9,9 L9,15 L13.2546893,15 C12.8333806,15.6040072 12.5048858,16.2775651 12.2898787,17 Z M17,7 L22,7 L22,5 C22,3.34314575 20.6568542,2 19,2 L17,2 L17,7 Z M15,7 L15,2 L9,2 L9,7 L15,7 Z M7,2 L5,2 C3.34314575,2 2,3.34314575 2,5 L2,7 L7,7 L7,2 Z M2,9 L2,15 L7,15 L7,9 L2,9 Z M2,17 L2,19 C2,20.6568542 3.34314575,22 5,22 L7,22 L7,17 L2,17 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-delete_row\",\n \"use\": \"icon-tiptap-delete_row-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-delete_row\\\">\\n <path d=\\\"M13.2546893,15 C12.8333806,15.6040072 12.5048858,16.2775651 12.2898787,17 L5,17 C2.23857625,17 3.38176876e-16,14.7614237 0,12 C-1.2263553e-15,9.23857625 2.23857625,7 5,7 L19,7 C21.7614237,7 24,9.23857625 24,12 C24,12.6294813 23.8836754,13.2317936 23.6713497,13.7866134 C23.1547532,13.3234155 22.5689168,12.9358807 21.9312708,12.6414391 C21.9762852,12.4347751 22,12.220157 22,12 C22,10.3431458 20.6568542,9 19,9 L5,9 C3.34314575,9 2,10.3431458 2,12 C2,13.6568542 3.34314575,15 5,15 L13.2546893,15 Z M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-shopping\",\n \"use\": \"icon-shopping-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-shopping\\\"><path d=\\\"M42.913 101.36c1.642 0 3.198.332 4.667.996a12.28 12.28 0 0 1 3.89 2.772c1.123 1.184 1.987 2.582 2.592 4.193.605 1.612.908 3.318.908 5.118 0 1.8-.303 3.507-.908 5.118-.605 1.611-1.469 3.01-2.593 4.194a13.3 13.3 0 0 1-3.889 2.843 10.582 10.582 0 0 1-4.667 1.066c-1.729 0-3.306-.355-4.732-1.066a13.604 13.604 0 0 1-3.825-2.843c-1.123-1.185-1.988-2.583-2.593-4.194a14.437 14.437 0 0 1-.907-5.118c0-1.8.302-3.506.907-5.118.605-1.61 1.47-3.009 2.593-4.193a12.515 12.515 0 0 1 3.825-2.772c1.426-.664 3.003-.996 4.732-.996zm53.932.285c1.643 0 3.22.331 4.733.995a11.386 11.386 0 0 1 3.889 2.772c1.08 1.185 1.945 2.583 2.593 4.194.648 1.61.972 3.317.972 5.118 0 1.8-.324 3.506-.972 5.117-.648 1.611-1.513 3.01-2.593 4.194a12.253 12.253 0 0 1-3.89 2.843 11 11 0 0 1-4.732 1.066 10.58 10.58 0 0 1-4.667-1.066 12.478 12.478 0 0 1-3.824-2.843c-1.08-1.185-1.945-2.583-2.593-4.194a13.581 13.581 0 0 1-.973-5.117c0-1.801.325-3.507.973-5.118.648-1.611 1.512-3.01 2.593-4.194a11.559 11.559 0 0 1 3.824-2.772 11.212 11.212 0 0 1 4.667-.995zm21.781-80.747c2.42 0 4.3.355 5.64 1.066 1.34.71 2.29 1.587 2.852 2.63a6.427 6.427 0 0 1 .778 3.34c-.044 1.185-.195 2.204-.454 3.057-.26.853-.8 2.606-1.62 5.26a589.268 589.268 0 0 1-2.788 8.743 1236.373 1236.373 0 0 0-3.047 9.453c-.994 3.128-1.75 5.592-2.269 7.393-1.123 3.79-2.55 6.42-4.278 7.89-1.728 1.469-3.846 2.203-6.352 2.203H39.023l1.945 12.795h65.342c4.148 0 6.223 1.943 6.223 5.828 0 1.896-.41 3.53-1.232 4.905-.821 1.374-2.442 2.061-4.862 2.061H38.505c-1.729 0-3.176-.426-4.343-1.28-1.167-.852-2.14-1.966-2.917-3.34a21.277 21.277 0 0 1-1.88-4.478 44.128 44.128 0 0 1-1.102-4.55c-.087-.568-.324-1.942-.713-4.122-.39-2.18-.865-4.904-1.426-8.174l-1.88-10.947c-.692-4.027-1.383-8.079-2.075-12.154-1.642-9.572-3.5-20.234-5.574-31.986H6.87c-1.296 0-2.377-.356-3.24-1.067a9.024 9.024 0 0 1-2.14-2.558 10.416 10.416 0 0 1-1.167-3.2C.108 8.53 0 7.488 0 6.54c0-1.896.583-3.46 1.75-4.69C2.917.615 4.494 0 6.482 0h13.095c1.728 0 3.111.284 4.148.853 1.037.569 1.858 1.28 2.463 2.132a8.548 8.548 0 0 1 1.297 2.701c.26.948.475 1.754.648 2.417.173.758.346 1.825.519 3.199.173 1.374.345 2.772.518 4.193.26 1.706.519 3.507.778 5.403h88.678z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-bug\",\n \"use\": \"icon-bug-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-bug\\\"><path d=\\\"M127.88 73.143c0 1.412-.506 2.635-1.518 3.669-1.011 1.033-2.209 1.55-3.592 1.55h-17.887c0 9.296-1.783 17.178-5.35 23.645l16.609 17.044c1.011 1.034 1.517 2.257 1.517 3.67 0 1.412-.506 2.635-1.517 3.668-.958 1.033-2.155 1.55-3.593 1.55-1.438 0-2.635-.517-3.593-1.55l-15.811-16.063a15.49 15.49 0 0 1-1.196 1.06c-.532.434-1.65 1.208-3.353 2.322a50.104 50.104 0 0 1-5.192 2.974c-1.758.87-3.94 1.658-6.546 2.364-2.607.706-5.189 1.06-7.748 1.06V47.044H58.89v73.062c-2.716 0-5.417-.367-8.106-1.102-2.688-.734-5.003-1.631-6.945-2.692a66.769 66.769 0 0 1-5.268-3.179c-1.571-1.057-2.73-1.94-3.476-2.65L33.9 109.34l-14.611 16.877c-1.066 1.14-2.344 1.711-3.833 1.711-1.277 0-2.422-.434-3.434-1.304-1.012-.978-1.557-2.187-1.635-3.627-.079-1.44.333-2.705 1.236-3.794l16.129-18.51c-3.087-6.197-4.63-13.644-4.63-22.342H5.235c-1.383 0-2.58-.517-3.592-1.55S.125 74.545.125 73.132c0-1.412.506-2.635 1.518-3.668 1.012-1.034 2.21-1.55 3.592-1.55h17.887V43.939L9.308 29.833c-1.012-1.033-1.517-2.256-1.517-3.669 0-1.412.505-2.635 1.517-3.668 1.012-1.034 2.21-1.55 3.593-1.55s2.58.516 3.593 1.55l13.813 14.106h67.396l13.814-14.106c1.012-1.034 2.21-1.55 3.592-1.55 1.384 0 2.581.516 3.593 1.55 1.012 1.033 1.518 2.256 1.518 3.668 0 1.413-.506 2.636-1.518 3.67l-13.814 14.105v23.975h17.887c1.383 0 2.58.516 3.593 1.55 1.011 1.033 1.517 2.256 1.517 3.668l-.005.01zM89.552 26.175H38.448c0-7.23 2.489-13.386 7.466-18.469C50.892 2.623 56.92.082 64 .082c7.08 0 13.108 2.541 18.086 7.624 4.977 5.083 7.466 11.24 7.466 18.469z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-international\",\n \"use\": \"icon-international-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-international\\\"><path d=\\\"M83.287 103.01c-1.57-3.84-6.778-10.414-15.447-19.548-2.327-2.444-2.182-4.306-1.338-9.862v-.64c.553-3.81 1.513-6.05 14.313-8.087 6.516-1.018 8.203 1.57 10.589 5.178l.785 1.193a12.625 12.625 0 0 0 6.43 5.207c1.134.524 2.53 1.164 4.421 2.24 4.596 2.53 4.596 5.41 4.596 11.753v.727a26.91 26.91 0 0 1-5.178 17.454 59.055 59.055 0 0 1-19.025 11.026c3.49-6.546.814-14.313 0-16.553l-.146-.087zM64 5.12a58.502 58.502 0 0 1 25.484 5.818 54.313 54.313 0 0 0-12.859 10.327c-.93 1.28-1.716 2.473-2.472 3.579-2.444 3.694-3.637 5.352-5.818 5.614a25.105 25.105 0 0 1-4.219 0c-4.276-.29-10.094-.64-11.956 4.422-1.193 3.23-1.396 11.956 2.444 16.495.66 1.077.778 2.4.32 3.578a7.01 7.01 0 0 1-2.066 3.229 18.938 18.938 0 0 1-2.909-2.91 18.91 18.91 0 0 0-8.32-6.603c-1.25-.349-2.647-.64-3.985-.93-3.782-.786-8.03-1.688-9.019-3.812a14.895 14.895 0 0 1-.727-5.818 21.935 21.935 0 0 0-1.396-9.25 8.873 8.873 0 0 0-5.557-4.946A58.705 58.705 0 0 1 64 5.12zM0 64c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-qq\",\n \"use\": \"icon-qq-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-qq\\\"><path d=\\\"M18.448 57.545l-.244-.744-.198-.968-.132-.53v-2.181l.236-.859.24-.908.317-.953.428-1.06.561-1.103.794-1.104v-.773l.077-.724.123-.984.34-1.106.313-1.194.25-.548.289-.511.371-.569.405-.423v-2.73l.234-1.407.236-1.633.42-1.955.577-2.035.43-1.118.426-1.217.468-1.135.559-1.216.57-1.332.655-1.247.737-1.331.929-1.33.43-.762.457-.624.995-1.406 1.025-1.403 1.163-1.444 1.246-1.405 1.352-1.384 1.41-1.423 1.708-1.536 1.083-.934 1.322-1.008 1.34-.89 1.448-.855 1.392-.76 1.57-.63 1.667-.775 1.657-.532 1.653-.552 1.787-.548 1.785-.417 1.876-.347L59.128.68l1.879-.245 1.876-.252 2.002-.106h5.912l1.97.243 1.981.231 2.019.207 1.874.441 1.979.413 1.857.475 2.035.53 1.862.646 1.782.738 1.904.78 1.736.853 1.689.95 1.655 1.044 1.425.971.662.548.693.401 1.323 1.1 1.115 1.064 1.112 1.1 1.083 1.214.894 1.178 1.064 1.217.74 1.306.752 1.162.798 1.352.661 1.175 1.113 2.489.546 1.286.428 1.192.428 1.294.384 1.217.267 1.047.347 1.231.607 2.198.388 1.924.253 1.861.217 1.497.342 2.28.077.362.274.41.737 1.18.473.8.42.832.534.892.472 1.07.307 1.093.334 1.2.252 1.232.115.605.106.746v.648l-.106.643v.8l-.192.774-.35 1.5-.403.76-.299.852v.213l.142.264.4.623 1.746 2.53 1.377 1.9.66 1.267.889 1.389.774 1.52.893 1.627.894 1.828 1.006 2.069.567 1.268.518 1.239.447 1.307.44 1.175.336 1.235.342 1.16.432 2.261.343 2.31.235 2.05v2.891l-.158 1.025-.226 1.768-.308 1.59-.48 1.44-.18.588-.336.707-.28.493-.375.607-.33.383-.42.494-.375.4-.401.34-.48.207-.432.207-.355.114h-.543l-.346-.114-.66-.32-.302-.212-.317-.223-.347-.304-.35-.342-.579-.63-.684-.89-.539-.917-.538-.734-.526-.855-.741-1.517-.833-1.579-.098-.055h-.138l-.338.247-.196.415-.326.516-.567 1.533-.856 2.182-1.096 2.626-.824 1.308-.864 1.366-1.027 1.536-1.09 1.503-.557.68-.676.743-1.555 1.497.136.135.21.214.777.446 3.235 1.524 1.41.779 1.347.756 1.332.953 1.187.982.574.443.432.511.445.593.367.643.198.533.242.64.105.554.115.647-.115.433v.44l-.105.454-.242.415-.092.325-.22.394-.587.784-.543.627-.42.47-.35.348-.893.638-1.01.556-1.077.532-1.155.511-1.287.495-.693.207-.608.167-1.496.342-1.545.325-1.552.323-1.689.27-1.74.072-1.785.21h-5.539l-1.998-.114-1.86-.168-2.005-.27-1.99-.209-2.095-.286-2.03-.495-1.981-.374-1.968-.552-2.019-.707-1.98-.585-1.044-.342-.927-.323-.586-.223-.582-.12h-1.647l-1.904-.131-.962-.096-1.24-.135-.795.705-1.085.665-1.471.701-1.628.875-.99.475-1.033.376-2.281.914-1.24.305-1.3.343-1.803.344-1.13.086-1.193.1-1.246.135-1.45.053h-5.926l-3.346-.053-3.25-.321-1.644-.23-1.589-.23-1.546-.227-1.547-.305-1.442-.456-1.434-.325-1.294-.51-1.223-.474-1.142-.533-.99-.583-.984-.71-.336-.343-.44-.415-.334-.362-.3-.417-.278-.415-.215-.42-.311-.89-.109-.46-.138-.51v-.473l.138-.533v-.53l.109-.53v-1.069l.052-.564.259-.647.215-.646.39-.779.286-.3.236-.348.615-.738.49-.38.464-.266.428-.338.676-.21.543-.324.676-.341.77-.227.775-.231.897-.192.85-.11 1.008-.13 1.093-.081.284-.092h.063l.137-.115v-.13l-.2-.266-.58-.27-1.45-1.231-.975-.761-1.127-.967-1.136-1.082-1.181-1.382-1.36-1.558-.508-.843-.672-.87-.58-1.007-.522-1.1-.704-1.047-.459-1.194-.547-1.192-.546-1.33-.397-1.273-.378-1.575-.112-.057h-.115l-.059-.113h-.14l-.23.113-.114.057-.158.264-.057.321-.119.286-.206.477-.664 1.157-.345.701-.546.612-.58.736-.641.816-.677.724-.795.701-.734.658-.814.524-.89.546-.855.325-1.008.247-.99.095h-.233l-.228-.095-.18-.384-.29-.188-.38-.912-.237-.493-.255-.707-.21-.734-.113-.724-.313-1.648-.12-.972v-3.185l.12-2.379.196-1.214.23-1.252.21-1.347.374-1.254.42-1.443.431-1.407.578-1.448.545-1.38.754-1.4.699-1.52.855-1.425 1.006-1.538 1.023-1.382 1.069-1.538.891-1.071 1.142-1.227 1.202-1.237.56-.59.678-.662.985-.836 1.012-.853 1.647-1.446 1.242-.889z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-link\",\n \"use\": \"icon-link-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-link\\\"><path d=\\\"M115.625 127.937H.063V12.375h57.781v12.374H12.438v90.813h90.813V70.156h12.374z\\\" /><path d=\\\"M116.426 2.821l8.753 8.753-56.734 56.734-8.753-8.745z\\\" /><path d=\\\"M127.893 37.982h-12.375V12.375H88.706V0h39.187z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-guide 2\",\n \"use\": \"icon-guide 2-usage\",\n \"viewBox\": \"0 0 1000 1000\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 1000 1000\\\" id=\\\"icon-guide 2\\\"><path d=\\\"M11.576 547.9l282.848 126.404 409.285-383.26 137.057-128.341L361.234 714.22l362.77 146.362c8.742 3.327 18.733-1.33 21.855-10.644v-.666L999.985.374 10.327 514.636c-8.742 4.657-11.864 15.302-8.117 24.616 2.497 3.991 5.62 7.318 9.366 8.648zM360.61 999.626l141.112-161.663-141.112-61.206v222.869z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-language\",\n \"use\": \"icon-language-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-language\\\"><path d=\\\"M84.742 36.8c2.398 7.2 5.595 12.8 11.19 18.4 4.795-4.8 7.992-11.2 10.39-18.4h-21.58zm-52.748 40h20.78l-10.39-28-10.39 28z\\\" /><path d=\\\"M111.916 0H16.009C7.218 0 .025 7.2.025 16v96c0 8.8 7.193 16 15.984 16h95.907c8.791 0 15.984-7.2 15.984-16V16c0-8.8-6.394-16-15.984-16zM72.754 103.2c-1.598 1.6-3.197 1.6-4.795 1.6-.8 0-2.398 0-3.197-.8-.8-.8-1.599 0-1.599-.8s-.799-1.6-1.598-3.2c-.8-1.6-.8-2.4-1.599-4l-3.196-8.8H28.797L25.6 96c-1.598 3.2-2.398 5.6-3.197 7.2-.8 1.6-2.398 1.6-4.795 1.6-1.599 0-3.197-.8-4.796-1.6-1.598-1.6-2.397-2.4-2.397-4 0-.8 0-1.6.799-3.2.8-1.6.8-2.4 1.598-4l17.583-44.8c.8-1.6.8-3.2 1.599-4.8.799-1.6 1.598-3.2 2.397-4 .8-.8 1.599-2.4 3.197-3.2 1.599-.8 3.197-.8 4.796-.8 1.598 0 3.196 0 4.795.8 1.598.8 2.398 1.6 3.197 3.2.799.8 1.598 2.4 2.397 4 .8 1.6 1.599 3.2 2.398 5.6l17.583 44c1.598 3.2 2.398 5.6 2.398 7.2-.8.8-1.599 2.4-2.398 4zM116.711 72c-8.791-3.2-15.185-7.2-20.78-12-5.594 5.6-12.787 9.6-21.579 12l-2.397-4c8.791-2.4 15.984-5.6 21.579-11.2C87.939 51.2 83.144 44 81.545 36h-7.992v-3.2h21.58c-1.6-2.4-3.198-5.6-4.796-8l2.397-.8c1.599 2.4 3.997 5.6 5.595 8.8h19.98v4h-7.992c-2.397 8-6.393 15.2-11.189 20 5.595 4.8 11.988 8.8 20.78 11.2l-3.197 4z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-password\",\n \"use\": \"icon-password-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-password\\\"><path d=\\\"M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-delete_col\",\n \"use\": \"icon-tiptap-delete_col-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-delete_col\\\">\\n <path d=\\\"M12.6414391,21.9312708 C12.9358807,22.5689168 13.3234155,23.1547532 13.7866134,23.6713497 C13.2317936,23.8836754 12.6294813,24 12,24 C9.23857625,24 7,21.7614237 7,19 L7,5 C7,2.23857625 9.23857625,0 12,0 C14.7614237,0 17,2.23857625 17,5 L17,12.2898787 C16.2775651,12.5048858 15.6040072,12.8333806 15,13.2546893 L15,5 C15,3.34314575 13.6568542,2 12,2 C10.3431458,2 9,3.34314575 9,5 L9,19 C9,20.6568542 10.3431458,22 12,22 C12.220157,22 12.4347751,21.9762852 12.6414391,21.9312708 Z M19,14 C21.7600532,14.0033061 23.9966939,16.2399468 24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 C14,16.2385763 16.2385763,14 19,14 Z M16.5,19.9375 L21.5,19.9375 C22.017767,19.9375 22.4375,19.517767 22.4375,19 C22.4375,18.482233 22.017767,18.0625 21.5,18.0625 L16.5,18.0625 C15.982233,18.0625 15.5625,18.482233 15.5625,19 C15.5625,19.517767 15.982233,19.9375 16.5,19.9375 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-peoples\",\n \"use\": \"icon-peoples-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-peoples\\\"><path d=\\\"M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z\\\" /><path d=\\\"M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-money\",\n \"use\": \"icon-money-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-money\\\"><path d=\\\"M54.122 127.892v-28.68H7.513V87.274h46.609v-12.4H7.513v-12.86h38.003L.099 0h22.6l32.556 45.07c3.617 5.144 6.44 9.611 8.487 13.385 1.788-3.05 4.89-7.779 9.301-14.186L103.93 0h24.01L82.385 62.013h38.34v12.862h-46.41v12.4h46.41v11.937h-46.41v28.68H54.123z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-example\",\n \"use\": \"icon-example-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-example\\\"><path d=\\\"M96.258 57.462h31.421C124.794 27.323 100.426 2.956 70.287.07v31.422a32.856 32.856 0 0 1 25.971 25.97zm-38.796-25.97V.07C27.323 2.956 2.956 27.323.07 57.462h31.422a32.856 32.856 0 0 1 25.97-25.97zm12.825 64.766v31.421c30.46-2.885 54.507-27.253 57.713-57.712H96.579c-2.886 13.466-13.146 23.726-26.292 26.291zM31.492 70.287H.07c2.886 30.46 27.253 54.507 57.713 57.713V96.579c-13.466-2.886-23.726-13.146-26.291-26.292z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-list\",\n \"use\": \"icon-list-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-list\\\"><path d=\\\"M1.585 12.087c0 6.616 3.974 11.98 8.877 11.98 4.902 0 8.877-5.364 8.877-11.98 0-6.616-3.975-11.98-8.877-11.98-4.903 0-8.877 5.364-8.877 11.98zM125.86.107H35.613c-1.268 0-2.114 1.426-2.114 2.852v18.255c0 1.712 1.057 2.853 2.114 2.853h90.247c1.268 0 2.114-1.426 2.114-2.853V2.96c0-1.711-1.057-2.852-2.114-2.852zM.106 62.86c0 6.615 3.974 11.979 8.876 11.979 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zM124.17 50.88H33.921c-1.268 0-2.114 1.425-2.114 2.851v18.256c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852V53.73c0-1.426-.846-2.852-2.114-2.852zM.106 115.913c0 6.616 3.974 11.98 8.876 11.98 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zm124.064-11.98H33.921c-1.268 0-2.114 1.426-2.114 2.853v18.255c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852v-18.255c0-1.427-.846-2.853-2.114-2.853z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-remove\",\n \"use\": \"icon-tiptap-remove-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-remove\\\"><title>delete-2-alternate</title><path d=\\\"M20.485,3.511A12.01,12.01,0,1,0,24,12,12.009,12.009,0,0,0,20.485,3.511Zm-1.767,15.21A9.51,9.51,0,1,1,21.5,12,9.508,9.508,0,0,1,18.718,18.721Z\\\" /><path d=\\\"M16.987,7.01a1.275,1.275,0,0,0-1.8,0l-3.177,3.177L8.829,7.01A1.277,1.277,0,0,0,7.024,8.816L10.2,11.993,7.024,15.171a1.277,1.277,0,0,0,1.805,1.806L12.005,13.8l3.177,3.178a1.277,1.277,0,0,0,1.8-1.806l-3.176-3.178,3.176-3.177A1.278,1.278,0,0,0,16.987,7.01Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-settings\",\n \"use\": \"icon-settings-usage\",\n \"viewBox\": \"0 0 490.2 490.2\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 490.2 490.2\\\" id=\\\"icon-settings\\\">\\r\\n<g>\\r\\n\\t<g>\\r\\n\\t\\t<g>\\r\\n\\t\\t\\t<path d=\\\"M469.1,173.1h-37.5c-1-3.1-3.1-6.3-4.2-9.4l26.1-26.1c8.3-8.3,8.3-20.9,0-29.2l-71.9-71.9c-8.3-8.3-20.9-8.3-29.2,0\\r\\n\\t\\t\\t\\tl-26.1,26.1c-3.1-2.1-6.3-3.1-9.4-4.2V20.9C316.9,9.4,307.5,0,296,0H193.9C182.4,0,173,9.4,173,20.9v37.5c-3.1,1-6.3,3.1-9.4,4.2\\r\\n\\t\\t\\t\\tl-26.1-26.1c-8.3-8.3-20.9-8.3-29.2,0l-71.9,71.9c-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l26.1,26.1\\r\\n\\t\\t\\t\\tc-2.1,3.1-3.1,6.3-4.2,9.4H20.9C9.4,173.1,0,182.5,0,194v102.2c0,11.5,9.4,20.9,20.9,20.9h37.5c1,3.1,3.1,6.3,4.2,9.4l-26.1,26.1\\r\\n\\t\\t\\t\\tc-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l71.9,71.9c8.3,8.3,20.9,8.3,29.2,0l26.1-26.1c3.1,2.1,6.3,3.1,9.4,4.2v37.5\\r\\n\\t\\t\\t\\tc0,11.5,9.4,20.9,20.9,20.9h102.2c11.5,0,20.9-9.4,20.9-20.9v-37.5c3.1-1,6.3-3.1,9.4-4.2l26.1,26.1c8.3,8.3,20.9,8.3,29.2,0\\r\\n\\t\\t\\t\\tl71.9-71.9c8.3-8.3,8.3-20.9,0-29.2l-26.1-26.1c2.1-3.1,3.1-6.3,4.2-9.4h37.5c11.5,0,20.9-9.4,20.9-20.9V193.9\\r\\n\\t\\t\\t\\tC490,182.4,480.6,173.1,469.1,173.1z M448.3,275.2H417c-9.4,0-16.7,6.3-19.8,14.6c-3.1,10.4-7.3,20.9-12.5,30.2\\r\\n\\t\\t\\t\\tc-5.2,8.3-3.1,18.8,3.1,25l21.9,21.9L367,409.7l-21.9-21.9c-7.3-6.3-16.7-7.3-25-3.1c-9.4,5.2-19.8,9.4-30.2,12.5\\r\\n\\t\\t\\t\\tc-8.3,2.1-14.6,10.4-14.6,19.8v31.3h-60.5l0,0V417c0-9.4-6.3-16.7-14.6-19.8c-10.4-3.1-20.9-7.3-30.2-12.5\\r\\n\\t\\t\\t\\tc-8.3-5.2-18.8-3.1-25,3.1l-22,21.9L80.3,367l21.9-21.9c6.3-7.3,7.3-16.7,3.1-25c-5.2-9.4-9.4-19.8-12.5-30.2\\r\\n\\t\\t\\t\\tc-2.1-8.3-10.4-14.6-19.8-14.6H41.7v-60.5H73c9.4,0,16.7-6.3,19.8-14.6c3.1-10.4,7.3-20.9,12.5-30.2c5.2-8.3,3.1-18.8-3.1-25\\r\\n\\t\\t\\t\\tl-21.9-22L123,80.3l21.9,21.9c7.3,6.3,16.7,7.3,25,3.1c9.4-5.2,19.8-9.4,30.2-12.5c8.3-2.1,14.6-10.4,14.6-19.8V41.7h60.5V73\\r\\n\\t\\t\\t\\tc0,9.4,6.3,16.7,14.6,19.8c10.4,3.1,20.9,7.3,30.2,12.5c8.3,5.2,18.8,3.1,25-3.1l22-21.9l42.7,42.7l-21.9,21.9\\r\\n\\t\\t\\t\\tc-6.3,7.3-7.3,16.7-3.1,25c5.2,9.4,9.4,19.8,12.5,30.2c2.1,8.3,10.4,14.6,19.8,14.6h31.3L448.3,275.2L448.3,275.2z\\\" />\\r\\n\\t\\t\\t<path d=\\\"M245,131.4c-62.6,0-113.6,51.1-113.6,113.6s51,113.6,113.6,113.6s113.6-51,113.6-113.6S307.6,131.4,245,131.4z\\r\\n\\t\\t\\t\\t M245,316.9c-39.6,0-71.9-32.3-71.9-71.9s32.3-71.9,71.9-71.9s71.9,32.3,71.9,71.9S284.6,316.9,245,316.9z\\\" />\\r\\n\\t\\t</g>\\r\\n\\t</g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-message\",\n \"use\": \"icon-message-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-message\\\"><path d=\\\"M0 20.967v59.59c0 11.59 8.537 20.966 19.075 20.966h28.613l1 26.477L76.8 101.523h32.125c10.538 0 19.075-9.377 19.075-20.966v-59.59C128 9.377 119.463 0 108.925 0h-89.85C8.538 0 0 9.377 0 20.967zm82.325 33.1c0-5.524 4.013-9.935 9.037-9.935 5.026 0 9.038 4.41 9.038 9.934 0 5.524-4.025 9.934-9.038 9.934-5.024 0-9.037-4.41-9.037-9.934zm-27.613 0c0-5.524 4.013-9.935 9.038-9.935s9.037 4.41 9.037 9.934c0 5.524-4.025 9.934-9.037 9.934-5.025 0-9.038-4.41-9.038-9.934zm-27.1 0c0-5.524 4.013-9.935 9.038-9.935s9.038 4.41 9.038 9.934c0 5.524-4.026 9.934-9.05 9.934-5.013 0-9.025-4.41-9.025-9.934z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-table\",\n \"use\": \"icon-table-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-table\\\"><path d=\\\"M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z\\\" /><path d=\\\"M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-eye\",\n \"use\": \"icon-eye-usage\",\n \"viewBox\": \"0 0 128 64\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 64\\\" id=\\\"icon-eye\\\"><path d=\\\"M127.072 7.994c1.37-2.208.914-5.152-.914-6.87-2.056-1.717-4.797-1.226-6.396.982-.229.245-25.586 32.382-55.74 32.382-29.24 0-55.74-32.382-55.968-32.627-1.6-1.963-4.57-2.208-6.397-.49C-.17 3.086-.399 6.275 1.2 8.238c.457.736 5.94 7.36 14.62 14.72L4.17 35.96c-1.828 1.963-1.6 5.152.228 6.87.457.98 1.6 1.471 2.742 1.471s2.284-.49 3.198-1.472l12.564-13.983c5.94 4.416 13.021 8.587 20.788 11.53l-4.797 17.418c-.685 2.699.686 5.397 3.198 6.133h1.37c2.057 0 3.884-1.472 4.341-3.68L52.6 42.83c3.655.736 7.538 1.227 11.422 1.227 3.883 0 7.767-.49 11.422-1.227l4.797 17.173c.457 2.208 2.513 3.68 4.34 3.68.457 0 .914 0 1.143-.246 2.513-.736 3.883-3.434 3.198-6.133l-4.797-17.172c7.767-2.944 14.848-7.114 20.788-11.53l12.336 13.738c.913.981 2.056 1.472 3.198 1.472s2.284-.49 3.198-1.472c1.828-1.963 1.828-4.906.228-6.87l-11.65-13.001c9.366-7.36 14.849-14.474 14.849-14.474z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","var map = {\n\t\"./404.svg\": \"oUrx\",\n\t\"./bug.svg\": \"F3lI\",\n\t\"./chart.svg\": \"yCkv\",\n\t\"./clipboard.svg\": \"vDVG\",\n\t\"./component.svg\": \"VtY+\",\n\t\"./dashboard.svg\": \"94Jb\",\n\t\"./documentation.svg\": \"kPu2\",\n\t\"./drag.svg\": \"m7++\",\n\t\"./edit.svg\": \"qkZ8\",\n\t\"./email.svg\": \"y7eQ\",\n\t\"./example.svg\": \"MMMJ\",\n\t\"./excel.svg\": \"ZZmv\",\n\t\"./exit-fullscreen.svg\": \"28eg\",\n\t\"./eye-open.svg\": \"1+ww\",\n\t\"./eye.svg\": \"TfVu\",\n\t\"./form.svg\": \"6xvN\",\n\t\"./fullscreen.svg\": \"mSHS\",\n\t\"./guide 2.svg\": \"ICep\",\n\t\"./guide.svg\": \"ZoO1\",\n\t\"./icon.svg\": \"nZHn\",\n\t\"./international.svg\": \"F9+T\",\n\t\"./language.svg\": \"JYDz\",\n\t\"./link.svg\": \"GPBF\",\n\t\"./list.svg\": \"MokB\",\n\t\"./lock.svg\": \"qwAt\",\n\t\"./message.svg\": \"R/8a\",\n\t\"./money.svg\": \"MEYL\",\n\t\"./nested.svg\": \"3PhE\",\n\t\"./password.svg\": \"Kj24\",\n\t\"./pdf.svg\": \"+aF5\",\n\t\"./people.svg\": \"0Fbn\",\n\t\"./peoples.svg\": \"LxGF\",\n\t\"./qq.svg\": \"FDDl\",\n\t\"./search.svg\": \"jo2x\",\n\t\"./settings.svg\": \"P8iQ\",\n\t\"./shopping.svg\": \"EqXK\",\n\t\"./size.svg\": \"hkRB\",\n\t\"./star.svg\": \"cIpu\",\n\t\"./tab.svg\": \"j7e1\",\n\t\"./table.svg\": \"R/Hx\",\n\t\"./theme.svg\": \"5TQQ\",\n\t\"./tiptap-add_col_after.svg\": \"cBj6\",\n\t\"./tiptap-add_col_before.svg\": \"2QTO\",\n\t\"./tiptap-add_row_after.svg\": \"ec3N\",\n\t\"./tiptap-add_row_before.svg\": \"7x1v\",\n\t\"./tiptap-bold.svg\": \"dSKK\",\n\t\"./tiptap-checklist.svg\": \"8L8/\",\n\t\"./tiptap-code.svg\": \"taZh\",\n\t\"./tiptap-combine_cells.svg\": \"8CrX\",\n\t\"./tiptap-delete_col.svg\": \"LjVp\",\n\t\"./tiptap-delete_row.svg\": \"ENUZ\",\n\t\"./tiptap-delete_table.svg\": \"Dza5\",\n\t\"./tiptap-github.svg\": \"nIMs\",\n\t\"./tiptap-hr.svg\": \"kCbn\",\n\t\"./tiptap-image.svg\": \"iprT\",\n\t\"./tiptap-italic.svg\": \"hRv2\",\n\t\"./tiptap-link.svg\": \"l3nR\",\n\t\"./tiptap-mention.svg\": \"sjxz\",\n\t\"./tiptap-ol.svg\": \"j6nr\",\n\t\"./tiptap-paragraph.svg\": \"igzo\",\n\t\"./tiptap-quote.svg\": \"swuu\",\n\t\"./tiptap-redo.svg\": \"me7H\",\n\t\"./tiptap-remove.svg\": \"NgVs\",\n\t\"./tiptap-strike.svg\": \"kUWf\",\n\t\"./tiptap-table.svg\": \"6S0t\",\n\t\"./tiptap-ul.svg\": \"kGAI\",\n\t\"./tiptap-underline.svg\": \"wfO2\",\n\t\"./tiptap-undo.svg\": \"kpiL\",\n\t\"./tree.svg\": \"k80C\",\n\t\"./user.svg\": \"s7Vf\",\n\t\"./wechat.svg\": \"gNoN\",\n\t\"./zip.svg\": \"iqZD\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"Uf/o\";","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-component\",\n \"use\": \"icon-component-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-component\\\"><path d=\\\"M0 0h54.857v54.857H0V0zm0 73.143h54.857V128H0V73.143zm73.143 0H128V128H73.143V73.143zm27.428-18.286C115.72 54.857 128 42.577 128 27.43 128 12.28 115.72 0 100.571 0 85.423 0 73.143 12.28 73.143 27.429c0 15.148 12.28 27.428 27.428 27.428z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../node_modules/babel-loader/lib/index.js?cacheDirectory!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/babel-loader/lib/index.js?cacheDirectory!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","<template>\n <div id=\"app\">\n <router-view/>\n </div>\n</template>\n\n<script>\nexport default{\n name: 'App'\n}\n</script>\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=6b42edcf&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"App.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function needReboot(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/need_reboot`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function restartApp(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/restart`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import Cookies from 'js-cookie'\nimport { needReboot, restartApp } from '@/api/app'\n\nconst app = {\n state: {\n sidebar: {\n opened: Cookies.get('sidebarStatus') ? !!+Cookies.get('sidebarStatus') : true,\n withoutAnimation: false\n },\n device: 'desktop',\n language: Cookies.get('language') || 'en',\n needReboot: false,\n size: Cookies.get('size') || 'medium',\n invitesEnabled: false\n },\n mutations: {\n TOGGLE_SIDEBAR: state => {\n state.sidebar.opened = !state.sidebar.opened\n state.sidebar.withoutAnimation = false\n if (state.sidebar.opened) {\n Cookies.set('sidebarStatus', 1)\n } else {\n Cookies.set('sidebarStatus', 0)\n }\n },\n CLOSE_SIDEBAR: (state, withoutAnimation) => {\n Cookies.set('sidebarStatus', 0)\n state.sidebar.opened = false\n state.sidebar.withoutAnimation = withoutAnimation\n },\n TOGGLE_DEVICE: (state, device) => {\n state.device = device\n },\n SET_INVITES_ENABLED: (state, invitesEnabled) => {\n state.invitesEnabled = invitesEnabled\n },\n SET_LANGUAGE: (state, language) => {\n state.language = language\n Cookies.set('language', language)\n },\n TOGGLE_REBOOT: (state, needReboot) => {\n state.needReboot = needReboot\n },\n SET_SIZE: (state, size) => {\n state.size = size\n Cookies.set('size', size)\n }\n },\n actions: {\n closeSideBar({ commit }, { withoutAnimation }) {\n commit('CLOSE_SIDEBAR', withoutAnimation)\n },\n async NeedReboot({ commit, getters }) {\n const response = await needReboot(getters.authHost, getters.token)\n commit('TOGGLE_REBOOT', response.data['need_reboot'])\n },\n async RestartApplication({ commit, getters }) {\n await restartApp(getters.authHost, getters.token)\n commit('TOGGLE_REBOOT', false)\n },\n SetInvitesEnabled({ commit }, invitesEnabled) {\n commit('SET_INVITES_ENABLED', invitesEnabled)\n },\n setLanguage({ commit }, language) {\n commit('SET_LANGUAGE', language)\n },\n setSize({ commit }, size) {\n commit('SET_SIZE', size)\n },\n toggleDevice({ commit }, device) {\n commit('TOGGLE_DEVICE', device)\n },\n toggleSideBar({ commit }) {\n commit('TOGGLE_SIDEBAR')\n }\n }\n}\n\nexport default app\n","import {\n addNewEmojiFile,\n createPack,\n deleteEmojiFile,\n deletePack,\n downloadFrom,\n fetchPack,\n importFromFS,\n listPacks,\n listRemotePacks,\n reloadEmoji,\n savePackMetadata,\n updateEmojiFile\n} from '@/api/emojiPacks'\nimport i18n from '@/lang'\nimport { Message } from 'element-ui'\n\nimport Vue from 'vue'\n\nconst emojiPacks = {\n state: {\n activeTab: '',\n currentLocalFilesPage: 1,\n currentLocalPacksPage: 1,\n currentRemoteFilesPage: 1,\n currentRemotePacksPage: 1,\n filesPageSize: 30,\n localPackFilesCount: 0,\n localPacks: {},\n localPacksCount: 0,\n pageSize: 50,\n remoteInstance: '',\n remotePackFilesCount: 0,\n remotePacks: {},\n remotePacksCount: 0\n },\n mutations: {\n SET_ACTIVE_TAB: (state, tab) => {\n state.activeTab = tab\n },\n SET_LOCAL_FILES_COUNT: (state, count) => {\n state.localPackFilesCount = count\n },\n SET_LOCAL_FILES_PAGE: (state, page) => {\n state.currentLocalFilesPage = page\n },\n SET_LOCAL_PACKS: (state, packs) => {\n state.localPacks = packs\n },\n SET_LOCAL_PACKS_COUNT: (state, count) => {\n state.localPacksCount = count\n },\n SET_LOCAL_PACK_FILES: (state, { name, files }) => {\n state.localPacks = { ...state.localPacks, [name]: { ...state.localPacks[name], files }}\n },\n SET_LOCAL_PAGE: (state, page) => {\n state.currentLocalPacksPage = page\n },\n SET_REMOTE_FILES_COUNT: (state, count) => {\n state.remotePackFilesCount = count\n },\n SET_REMOTE_FILES_PAGE: (state, page) => {\n state.currentRemoteFilesPage = page\n },\n SET_REMOTE_INSTANCE: (state, name) => {\n state.remoteInstance = name\n },\n SET_REMOTE_PACKS_COUNT: (state, count) => {\n state.remotePacksCount = count\n },\n SET_REMOTE_PACK_FILES: (state, { name, files }) => {\n state.remotePacks = { ...state.remotePacks, [name]: { ...state.remotePacks[name], files }}\n },\n SET_REMOTE_PACKS: (state, packs) => {\n state.remotePacks = packs\n },\n UPDATE_LOCAL_PACK_VAL: (state, { name, key, value }) => {\n Vue.set(state.localPacks[name]['pack'], key, value)\n },\n UPDATE_LOCAL_PACK_PACK: (state, { name, pack }) => {\n state.localPacks[name]['pack'] = pack\n },\n UPDATE_LOCAL_PACK_FILES: (state, { name, files }) => {\n // Use vue.set in case \"files\" was null\n Vue.set(\n state.localPacks[name],\n 'files',\n files\n )\n }\n },\n actions: {\n async AddNewEmojiFile({ commit, getters }, { packName, file, shortcode, filename }) {\n let result\n try {\n result = await addNewEmojiFile(packName, file, shortcode, filename, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: result.data })\n },\n async DeleteEmojiFile({ commit, dispatch, getters, state }, { packName, shortcode }) {\n const { [shortcode]: value, ...updatedPackFiles } = state.localPacks[packName].files\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: updatedPackFiles })\n\n try {\n await deleteEmojiFile(packName, shortcode, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n if (Object.keys(updatedPackFiles).length === 0 && state.currentLocalFilesPage > 1) {\n dispatch('FetchLocalSinglePack', { name: packName, page: state.currentLocalFilesPage - 1 })\n } else {\n dispatch('FetchLocalSinglePack', { name: packName, page: state.currentLocalFilesPage })\n }\n },\n async CreatePack({ getters }, { name }) {\n await createPack(getters.authHost, getters.token, name)\n },\n async DeletePack({ getters }, { name }) {\n await deletePack(getters.authHost, getters.token, name)\n },\n async DownloadFrom({ getters }, { instanceAddress, packName, as }) {\n const result = await downloadFrom(instanceAddress, packName, as, getters.authHost, getters.token)\n\n if (result.data === 'ok') {\n Message({\n message: `${i18n.t('settings.successfullyDownloaded')} ${packName}`,\n type: 'success',\n duration: 5 * 1000\n })\n }\n },\n async FetchLocalEmojiPacks({ commit, getters, state }, page) {\n const { data } = await listPacks(page, state.pageSize, getters.authHost, getters.token)\n const { packs, count } = data\n const updatedPacks = Object.keys(packs).reduce((acc, packName) => {\n const { files, ...pack } = packs[packName]\n acc[packName] = pack\n return acc\n }, {})\n commit('SET_LOCAL_PACKS', updatedPacks)\n commit('SET_LOCAL_PACKS_COUNT', count)\n commit('SET_LOCAL_PAGE', page)\n },\n async FetchLocalSinglePack({ getters, commit, state }, { name, page }) {\n const { data } = await fetchPack(name, page, state.filesPageSize, getters.authHost, getters.token)\n const { files, files_count } = data\n commit('SET_LOCAL_PACK_FILES', { name, files })\n commit('SET_LOCAL_FILES_COUNT', files_count)\n commit('SET_LOCAL_FILES_PAGE', page)\n },\n async FetchRemoteSinglePack({ getters, commit, state }, { name, page }) {\n const { data } = await fetchPack(name, page, state.filesPageSize, getters.authHost, getters.token)\n const { files, files_count } = data\n commit('SET_REMOTE_PACK_FILES', { name, files })\n commit('SET_REMOTE_FILES_COUNT', files_count)\n commit('SET_REMOTE_FILES_PAGE', page)\n },\n async ImportFromFS({ getters }) {\n const result = await importFromFS(getters.authHost, getters.token)\n\n if (result.status === 200) {\n const message = result.data.length > 0\n ? `${i18n.t('settings.successfullyImported')} ${result.data}`\n : i18n.t('settings.nowNewPacksToImport')\n\n Message({\n message,\n type: 'success',\n duration: 5 * 1000\n })\n }\n },\n async ReloadEmoji({ getters }) {\n await reloadEmoji(getters.authHost, getters.token)\n },\n async SavePackMetadata({ commit, getters, state }, { packName }) {\n const result =\n await savePackMetadata(\n getters.authHost,\n getters.token,\n packName,\n state.localPacks[packName]['pack']\n )\n\n if (result.status === 200) {\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n commit('UPDATE_LOCAL_PACK_PACK', { name: packName, pack: result.data })\n }\n },\n SetActiveTab({ commit }, activeTab) {\n commit('SET_ACTIVE_TAB', activeTab)\n },\n async SetRemoteEmojiPacks({ commit, getters, state }, { page, remoteInstance }) {\n const { data } = await listRemotePacks(remoteInstance, page, state.pageSize, getters.authHost, getters.token)\n const { packs, count } = data\n const updatedPacks = Object.keys(packs).reduce((acc, packName) => {\n const { files, ...pack } = packs[packName]\n acc[packName] = pack\n return acc\n }, {})\n\n commit('SET_REMOTE_INSTANCE', remoteInstance)\n commit('SET_REMOTE_PACKS', updatedPacks)\n commit('SET_REMOTE_PACKS_COUNT', count)\n },\n SetRemoteInstance({ commit }, instance) {\n commit('SET_REMOTE_INSTANCE', instance)\n },\n async UpdateEmojiFile({ commit, dispatch, getters, state }, { packName, shortcode, newShortcode, newFilename, force }) {\n const updatedPackFiles = Object.keys(state.localPacks[packName].files).reduce((acc, el) => {\n if (el === shortcode) {\n acc[newShortcode] = newFilename\n } else {\n acc[el] = state.localPacks[packName].files[el]\n }\n return acc\n }, {})\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: updatedPackFiles })\n\n try {\n await updateEmojiFile(packName, shortcode, newShortcode, newFilename, force, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n dispatch('FetchLocalSinglePack', { name: packName, page: state.currentLocalFilesPage })\n },\n async UpdateLocalPackVal({ commit }, args) {\n commit('UPDATE_LOCAL_PACK_VAL', args)\n }\n }\n}\n\nexport default emojiPacks\n","const errorLog = {\n state: {\n logs: []\n },\n mutations: {\n ADD_ERROR_LOG: (state, log) => {\n state.logs.push(log)\n }\n },\n actions: {\n addErrorLog({ commit }, log) {\n commit('ADD_ERROR_LOG', log)\n }\n }\n}\n\nexport default errorLog\n","const getters = {\n sidebar: state => state.app.sidebar,\n language: state => state.app.language,\n size: state => state.app.size,\n device: state => state.app.device,\n visitedViews: state => state.tagsView.visitedViews,\n cachedViews: state => state.tagsView.cachedViews,\n token: state => state.user.token,\n avatar: state => state.user.avatar,\n name: state => state.user.name,\n introduction: state => state.user.introduction,\n status: state => state.user.status,\n roles: state => state.user.roles,\n setting: state => state.user.setting,\n permission_routers: state => state.permission.routers,\n addRouters: state => state.permission.addRouters,\n errorLogs: state => state.errorLog.logs,\n users: state => state.users.fetchedUsers,\n authHost: state => state.user.authHost,\n settings: state => state.settings\n}\nexport default getters\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function generateInviteToken(max_use, expires_at, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/invite_token`,\n method: 'post',\n headers: authHeaders(token),\n data: expires_at && expires_at.length > 0 ? { max_use, expires_at } : { max_use }\n })\n}\n\nexport async function inviteViaEmail(email, name, authHost, token) {\n const data = name.length > 0 ? { email, name } : { email }\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/email_invite',\n method: 'post',\n headers: authHeaders(token),\n data\n })\n}\n\nexport async function listInviteTokens(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/invites`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function revokeToken(tokenToRevoke, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/revoke_invite`,\n method: 'post',\n headers: authHeaders(token),\n data: { token: tokenToRevoke }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { generateInviteToken, inviteViaEmail, listInviteTokens, revokeToken } from '@/api/invites'\nimport { Message } from 'element-ui'\nimport i18n from '@/lang'\n\nconst invites = {\n state: {\n inviteTokens: [],\n loading: false,\n newToken: {}\n },\n mutations: {\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_NEW_TOKEN: (state, token) => {\n state.newToken = token\n },\n SET_TOKENS: (state, tokens) => {\n state.inviteTokens = tokens\n }\n },\n actions: {\n async FetchInviteTokens({ commit, getters }) {\n commit('SET_LOADING', true)\n const response = await listInviteTokens(getters.authHost, getters.token)\n commit('SET_TOKENS', response.data.invites.reverse())\n commit('SET_LOADING', false)\n },\n async GenerateInviteToken({ commit, dispatch, getters }, { maxUse, expiresAt }) {\n try {\n const { data } = await generateInviteToken(maxUse, expiresAt, getters.authHost, getters.token)\n commit('SET_NEW_TOKEN', { token: data.token, maxUse: data.max_use, expiresAt: data.expires_at })\n } catch (_e) {\n return\n }\n dispatch('FetchInviteTokens')\n },\n async InviteUserViaEmail({ commit, dispatch, getters }, { email, name }) {\n try {\n await inviteViaEmail(email, name, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: i18n.t('invites.emailSent'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n RemoveNewToken({ commit }) {\n commit('SET_NEW_TOKEN', {})\n },\n async RevokeToken({ commit, dispatch, getters }, token) {\n try {\n await revokeToken(token, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('FetchInviteTokens')\n }\n }\n}\n\nexport default invites\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function listBannedUrls(page, pageSize, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function purgeUrls(urls, ban, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches/purge`,\n method: 'post',\n headers: authHeaders(token),\n data: { urls, ban }\n })\n}\n\nexport async function removeBannedUrls(urls, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches/delete`,\n method: 'post',\n headers: authHeaders(token),\n data: { urls }\n })\n}\n\nexport async function searchBannedUrls(query, page, pageSize, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches?query=${query}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function deleteInstanceDocument(name, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/instance_document/${name}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchDescription(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config/descriptions`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchSettings(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function getInstanceDocument(name, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/instance_document/${name}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function updateInstanceDocument(name, formData, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/instance_document/${name}`,\n method: 'patch',\n data: formData,\n headers: { ...authHeaders(token), 'Content-Type': 'multipart/form-data' }\n })\n}\n\nexport async function updateSettings(configs, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'post',\n headers: authHeaders(token),\n data: { configs }\n })\n}\n\nexport async function removeSettings(configs, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'post',\n headers: authHeaders(token),\n data: { configs }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { listBannedUrls, purgeUrls, removeBannedUrls, searchBannedUrls } from '@/api/mediaProxyCache'\nimport { fetchSettings, updateSettings } from '@/api/settings'\nimport { Message } from 'element-ui'\nimport i18n from '@/lang'\n\nconst mediaProxyCache = {\n state: {\n bannedUrls: [],\n currentPage: 1,\n loading: false,\n mediaProxyEnabled: false,\n pageSize: 50,\n searchQuery: '',\n totalUrlsCount: 0\n },\n mutations: {\n MEDIA_PROXY_ENABLED: (state, enabled) => {\n state.mediaProxyEnabled = enabled\n },\n SET_BANNED_URLS: (state, urls) => {\n state.bannedUrls = urls.map(el => { return { url: el } })\n },\n SET_TOTAL_URLS_COUNT: (state, count) => {\n state.totalUrlsCount = count\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_SEARCH_QUERY: (state, query) => {\n state.searchQuery = query\n }\n },\n actions: {\n async EnableMediaProxy({ dispatch, getters, state }) {\n const configs = [{\n group: ':pleroma',\n key: ':media_proxy',\n value: [\n { tuple: [':enabled', true] },\n { tuple: [':invalidation', [{ tuple: [':enabled', true] }]] }\n ]\n }]\n await updateSettings(configs, getters.authHost, getters.token)\n\n dispatch('FetchMediaProxySetting')\n },\n async FetchMediaProxySetting({ commit, getters }) {\n const { data } = await fetchSettings(getters.authHost, getters.token)\n const mediaProxySettings = data.configs.find(el => el.key === ':media_proxy')\n ? data.configs.find(el => el.key === ':media_proxy').value\n : []\n const mediaProxyEnabled = mediaProxySettings.find(el => el.tuple[0] === ':enabled')\n ? mediaProxySettings.find(el => el.tuple[0] === ':enabled').tuple[1]\n : false\n\n commit('MEDIA_PROXY_ENABLED', mediaProxyEnabled)\n },\n async ListBannedUrls({ commit, getters, state }, { page }) {\n commit('SET_LOADING', true)\n const response = await listBannedUrls(page, state.pageSize, getters.authHost, getters.token)\n commit('SET_BANNED_URLS', response.data.urls)\n commit('SET_TOTAL_URLS_COUNT', response.data.count)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n },\n async PurgeUrls({ dispatch, getters, state }, { urls, ban }) {\n await purgeUrls(urls, ban, getters.authHost, getters.token)\n Message({\n message: i18n.t('mediaProxyCache.evictedMessage'),\n type: 'success',\n duration: 5 * 1000\n })\n if (ban && state.searchQuery.length === 0) {\n dispatch('ListBannedUrls', { page: state.currentPage })\n } else if (ban) {\n dispatch('SearchUrls', { query: state.searchQuery, page: state.currentPage })\n }\n },\n async RemoveBannedUrls({ dispatch, getters, state }, urls) {\n await removeBannedUrls(urls, getters.authHost, getters.token)\n if (state.searchQuery.length === 0) {\n dispatch('ListBannedUrls', { page: state.currentPage })\n } else {\n dispatch('SearchUrls', { query: state.searchQuery, page: state.currentPage })\n }\n },\n async SearchUrls({ commit, dispatch, getters, state }, { query, page }) {\n if (query.length === 0) {\n commit('SET_SEARCH_QUERY', query)\n dispatch('ListBannedUrls', { page })\n } else {\n commit('SET_LOADING', true)\n commit('SET_SEARCH_QUERY', query)\n\n const response = await searchBannedUrls(query, page, state.pageSize, getters.authHost, getters.token)\n commit('SET_BANNED_URLS', response.data.urls)\n commit('SET_TOTAL_URLS_COUNT', response.data.count)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n }\n }\n }\n}\n\nexport default mediaProxyCache\n","import _ from 'lodash'\n\nimport request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchLog(authHost, token, params, page = 1) {\n const normalizedParams = new URLSearchParams(\n _.omitBy({ ...params, page }, _.isUndefined)\n ).toString()\n\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/moderation_log?${normalizedParams}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchAdmins(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?filters=is_admin`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchModerators(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?filters=is_moderator`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchLog, fetchAdmins, fetchModerators } from '@/api/moderationLog'\n\nconst moderationLog = {\n state: {\n fetchedLog: [],\n logItemsCount: 0,\n admins: [],\n moderators: [],\n logLoading: true,\n adminsLoading: true\n },\n mutations: {\n SET_LOG_LOADING: (state, status) => {\n state.logLoading = status\n },\n SET_ADMINS_LOADING: (state, status) => {\n state.adminsLoading = status\n },\n SET_MODERATION_LOG: (state, log) => {\n state.fetchedLog = log\n },\n SET_MODERATION_LOG_COUNT: (state, count) => {\n state.logItemsCount = count\n },\n SET_ADMINS: (state, admins) => {\n state.admins = admins\n },\n SET_MODERATORS: (state, moderators) => {\n state.moderators = moderators\n }\n },\n actions: {\n async FetchModerationLog({ commit, getters }, opts = {}) {\n const response = await fetchLog(getters.authHost, getters.token, opts)\n\n commit('SET_MODERATION_LOG', response.data.items)\n commit('SET_MODERATION_LOG_COUNT', response.data.total)\n commit('SET_LOG_LOADING', false)\n },\n async FetchAdmins({ commit, getters }) {\n const adminsResponse = await fetchAdmins(getters.authHost, getters.token)\n const moderatorsResponse = await fetchModerators(getters.authHost, getters.token)\n\n commit('SET_ADMINS', adminsResponse.data)\n commit('SET_MODERATORS', moderatorsResponse.data)\n commit('SET_ADMINS_LOADING', false)\n }\n }\n}\n\nexport default moderationLog\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchPeers(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/v1/instance/peers`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchPeers } from '@/api/peers'\n\nconst peers = {\n state: {\n fetchedPeers: [],\n loading: true\n },\n\n mutations: {\n SET_PEERS: (state, peers) => {\n state.fetchedPeers = peers\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n }\n },\n\n actions: {\n async FetchPeers({ commit, getters }) {\n const peers = await fetchPeers(getters.authHost, getters.token)\n\n commit('SET_PEERS', [...peers.data].sort())\n commit('SET_LOADING', false)\n }\n }\n}\n\nexport default peers\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div style=\"padding: 0 15px;\" @click=\"toggleClick\">\n <svg\n :class=\"{'is-active':isActive}\"\n class=\"hamburger\"\n viewBox=\"0 0 1024 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"64\"\n height=\"64\"\n >\n <path d=\"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z\" />\n </svg>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'Hamburger',\n props: {\n isActive: {\n type: Boolean,\n default: false\n },\n toggleClick: {\n type: Function,\n default: null\n }\n }\n}\n</script>\n\n<style scoped>\n.hamburger {\n display: inline-block;\n vertical-align: middle;\n width: 20px;\n height: 20px;\n}\n\n.hamburger.is-active {\n transform: rotate(180deg);\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=69c6c5c4&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"69c6c5c4\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"padding\":\"0 15px\"},on:{\"click\":_vm.toggleClick}},[_c('svg',{staticClass:\"hamburger\",class:{'is-active':_vm.isActive},attrs:{\"viewBox\":\"0 0 1024 1024\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"64\",\"height\":\"64\"}},[_c('path',{attrs:{\"d\":\"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"navbar\">\n <hamburger :toggle-click=\"toggleSideBar\" :is-active=\"sidebar.opened\" class=\"hamburger-container\"/>\n <div class=\"right-menu\">\n <el-dropdown class=\"avatar-container right-menu-item hover-effect\" trigger=\"click\">\n <div class=\"avatar-wrapper\">\n <img :src=\"avatar+'?imageView2/1/w/80/h/80'\" class=\"user-avatar\">\n </div>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item>\n <span style=\"display:block;\" @click=\"logout\">{{ $t('navbar.logOut') }}</span>\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport Hamburger from '@/components/element-ui/Hamburger'\n\nexport default {\n components: {\n Hamburger\n },\n computed: {\n ...mapGetters([\n 'sidebar',\n 'name',\n 'avatar',\n 'device'\n ])\n },\n methods: {\n toggleSideBar() {\n this.$store.dispatch('toggleSideBar')\n },\n logout() {\n this.$store.dispatch('LogOut').then(() => {\n location.reload()// In order to re-instantiate the vue-router object to avoid bugs\n })\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.navbar {\n height: 50px;\n overflow: hidden;\n\n .hamburger-container {\n line-height: 46px;\n height: 100%;\n float: left;\n cursor: pointer;\n transition: background .3s;\n\n &:hover {\n background: rgba(0, 0, 0, .025)\n }\n }\n\n .breadcrumb-container {\n float: left;\n }\n\n .errLog-container {\n display: inline-block;\n vertical-align: top;\n }\n\n .right-menu {\n float: right;\n height: 100%;\n line-height: 50px;\n\n &:focus {\n outline: none;\n }\n\n .right-menu-item {\n display: inline-block;\n padding: 0 15px;\n height: 100%;\n font-size: 18px;\n color: #5a5e66;\n vertical-align: text-bottom;\n\n &.hover-effect {\n cursor: pointer;\n transition: background .3s;\n\n &:hover {\n background: rgba(0, 0, 0, .025)\n }\n }\n }\n\n .avatar-container {\n .avatar-wrapper {\n margin-top: 5px;\n position: relative;\n\n .user-avatar {\n cursor: pointer;\n width: 40px;\n height: 40px;\n border-radius: 10px;\n }\n\n .el-icon-caret-bottom {\n cursor: pointer;\n position: absolute;\n right: -20px;\n top: 25px;\n font-size: 12px;\n }\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Navbar.vue?vue&type=template&id=28de7ff2&scoped=true&\"\nimport script from \"./Navbar.vue?vue&type=script&lang=js&\"\nexport * from \"./Navbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28de7ff2\",\n null\n \n)\n\ncomponent.options.__file = \"Navbar.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"navbar\"},[_c('hamburger',{staticClass:\"hamburger-container\",attrs:{\"toggle-click\":_vm.toggleSideBar,\"is-active\":_vm.sidebar.opened}}),_vm._v(\" \"),_c('div',{staticClass:\"right-menu\"},[_c('el-dropdown',{staticClass:\"avatar-container right-menu-item hover-effect\",attrs:{\"trigger\":\"click\"}},[_c('div',{staticClass:\"avatar-wrapper\"},[_c('img',{staticClass:\"user-avatar\",attrs:{\"src\":_vm.avatar+'?imageView2/1/w/80/h/80'}})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',[_c('span',{staticStyle:{\"display\":\"block\"},on:{\"click\":_vm.logout}},[_vm._v(_vm._s(_vm.$t('navbar.logOut')))])])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// translate router.meta.title, be used in breadcrumb sidebar tagsview\nexport function generateTitle(title) {\n const hasKey = this.$te('route.' + title)\n\n if (hasKey) {\n // $t :this method from vue-i18n, inject in @/lang/index.js\n const translatedTitle = this.$t('route.' + title)\n\n return translatedTitle\n }\n return title\n}\n","/**\n * Created by jiachenpan on 16/11/18.\n */\n\nexport function parseTime(time, cFormat) {\n if (arguments.length === 0) {\n return null\n }\n const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'\n let date\n if (typeof time === 'object') {\n date = time\n } else {\n if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {\n time = parseInt(time)\n }\n if ((typeof time === 'number') && (time.toString().length === 10)) {\n time = time * 1000\n }\n date = new Date(time)\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n }\n const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {\n let value = formatObj[key]\n // Note: getDay() returns 0 on Sunday\n if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }\n if (result.length > 0 && value < 10) {\n value = '0' + value\n }\n return value || 0\n })\n return time_str\n}\n\nexport function formatTime(time, option) {\n time = +time * 1000\n const d = new Date(time)\n const now = Date.now()\n\n const diff = (now - d) / 1000\n\n if (diff < 30) {\n return '刚刚'\n } else if (diff < 3600) {\n // less 1 hour\n return Math.ceil(diff / 60) + '分钟前'\n } else if (diff < 3600 * 24) {\n return Math.ceil(diff / 3600) + '小时前'\n } else if (diff < 3600 * 24 * 2) {\n return '1天前'\n }\n if (option) {\n return parseTime(time, option)\n } else {\n return (\n d.getMonth() +\n 1 +\n '月' +\n d.getDate() +\n '日' +\n d.getHours() +\n '时' +\n d.getMinutes() +\n '分'\n )\n }\n}\n\n// 格式化时间\nexport function getQueryObject(url) {\n url = url == null ? window.location.href : url\n const search = url.substring(url.lastIndexOf('?') + 1)\n const obj = {}\n const reg = /([^?&=]+)=([^?&=]*)/g\n search.replace(reg, (rs, $1, $2) => {\n const name = decodeURIComponent($1)\n let val = decodeURIComponent($2)\n val = String(val)\n obj[name] = val\n return rs\n })\n return obj\n}\n\n/**\n *get getByteLen\n * @param {Sting} val input value\n * @returns {number} output value\n */\nexport function getByteLen(val) {\n let len = 0\n for (let i = 0; i < val.length; i++) {\n if (val[i].match(/[^\\x00-\\xff]/gi) != null) {\n len += 1\n } else {\n len += 0.5\n }\n }\n return Math.floor(len)\n}\n\nexport function cleanArray(actual) {\n const newArray = []\n for (let i = 0; i < actual.length; i++) {\n if (actual[i]) {\n newArray.push(actual[i])\n }\n }\n return newArray\n}\n\nexport function param(json) {\n if (!json) return ''\n return cleanArray(\n Object.keys(json).map(key => {\n if (json[key] === undefined) return ''\n return encodeURIComponent(key) + '=' + encodeURIComponent(json[key])\n })\n ).join('&')\n}\n\nexport function param2Obj(url) {\n const search = url.split('?')[1]\n if (!search) {\n return {}\n }\n return JSON.parse(\n '{\"' +\n decodeURIComponent(search)\n .replace(/\"/g, '\\\\\"')\n .replace(/&/g, '\",\"')\n .replace(/=/g, '\":\"') +\n '\"}'\n )\n}\n\nexport function html2Text(val) {\n const div = document.createElement('div')\n div.innerHTML = val\n return div.textContent || div.innerText\n}\n\nexport function objectMerge(target, source) {\n /* Merges two objects,\n giving the last one precedence */\n\n if (typeof target !== 'object') {\n target = {}\n }\n if (Array.isArray(source)) {\n return source.slice()\n }\n Object.keys(source).forEach(property => {\n const sourceProperty = source[property]\n if (typeof sourceProperty === 'object') {\n target[property] = objectMerge(target[property], sourceProperty)\n } else {\n target[property] = sourceProperty\n }\n })\n return target\n}\n\nexport function toggleClass(element, className) {\n if (!element || !className) {\n return\n }\n let classString = element.className\n const nameIndex = classString.indexOf(className)\n if (nameIndex === -1) {\n classString += '' + className\n } else {\n classString =\n classString.substr(0, nameIndex) +\n classString.substr(nameIndex + className.length)\n }\n element.className = classString\n}\n\nexport const pickerOptions = [\n {\n text: '今天',\n onClick(picker) {\n const end = new Date()\n const start = new Date(new Date().toDateString())\n end.setTime(start.getTime())\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近一周',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(end.getTime() - 3600 * 1000 * 24 * 7)\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近一个月',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近三个月',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)\n picker.$emit('pick', [start, end])\n }\n }\n]\n\nexport function getTime(type) {\n if (type === 'start') {\n return new Date().getTime() - 3600 * 1000 * 24 * 90\n } else {\n return new Date(new Date().toDateString())\n }\n}\n\nexport function debounce(func, wait, immediate) {\n let timeout, args, context, timestamp, result\n\n const later = function() {\n // 据上一次触发时间间隔\n const last = +new Date() - timestamp\n\n // 上次被包装函数被调用时间间隔last小于设定时间间隔wait\n if (last < wait && last > 0) {\n timeout = setTimeout(later, wait - last)\n } else {\n timeout = null\n // 如果设定为immediate===true,因为开始边界已经调用过了此处无需调用\n if (!immediate) {\n result = func.apply(context, args)\n if (!timeout) context = args = null\n }\n }\n }\n\n return function(...args) {\n context = this\n timestamp = +new Date()\n const callNow = immediate && !timeout\n // 如果延时不存在,重新设定延时\n if (!timeout) timeout = setTimeout(later, wait)\n if (callNow) {\n result = func.apply(context, args)\n context = args = null\n }\n\n return result\n }\n}\n\n/**\n * This is just a simple version of deep copy\n * Has a lot of edge cases bug\n * If you want to use a perfect deep copy, use lodash's _.cloneDeep\n */\nexport function deepClone(source) {\n if (!source && typeof source !== 'object') {\n throw new Error('error arguments', 'shallowClone')\n }\n const targetObj = source.constructor === Array ? [] : {}\n Object.keys(source).forEach(keys => {\n if (source[keys] && typeof source[keys] === 'object') {\n targetObj[keys] = deepClone(source[keys])\n } else {\n targetObj[keys] = source[keys]\n }\n })\n return targetObj\n}\n\nexport function uniqueArr(arr) {\n return Array.from(new Set(arr))\n}\n\nexport function isExternal(path) {\n return /^(https?:|mailto:|tel:)/.test(path)\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('svg-icon',{attrs:{\"icon-class\":_vm.icon}}),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),_c('el-badge',{staticClass:\"count-badge\",attrs:{\"value\":_vm.count,\"type\":\"primary\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"","<template>\n <span>\n <svg-icon :icon-class=\"icon\"/>\n <span slot=\"title\">{{ title }}</span>\n <el-badge :value=\"count\" type=\"primary\" class=\"count-badge\" />\n </span>\n</template>\n\n<script>\nexport default {\n name: 'Item',\n props: {\n count: {\n type: String,\n default: null\n },\n icon: {\n type: String,\n default: ''\n },\n title: {\n type: String,\n default: ''\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.count-badge {\n margin-left: 5px;\n height: 48px;\n}\n</style>\n","import { render, staticRenderFns } from \"./Item.vue?vue&type=template&id=52140d98&scoped=true&\"\nimport script from \"./Item.vue?vue&type=script&lang=js&\"\nexport * from \"./Item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"52140d98\",\n null\n \n)\n\ncomponent.options.__file = \"Item.vue\"\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Link.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Link.vue?vue&type=script&lang=js&\"","\n<template>\n <!-- eslint-disable vue/require-component-is -->\n <component v-bind=\"linkProps(to)\">\n <slot/>\n </component>\n</template>\n\n<script>\nimport { isExternal } from '@/utils'\n\nexport default {\n props: {\n to: {\n type: String,\n required: true\n }\n },\n methods: {\n linkProps(url) {\n if (isExternal(url)) {\n return {\n is: 'a',\n href: url,\n target: '_blank',\n rel: 'noopener'\n }\n }\n return {\n is: 'router-link',\n to: url\n }\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./Link.vue?vue&type=template&id=4dde2217&\"\nimport script from \"./Link.vue?vue&type=script&lang=js&\"\nexport * from \"./Link.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Link.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('component',_vm._b({},'component',_vm.linkProps(_vm.to),false),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!item.hidden && item.children && invitesEnabled\" class=\"menu-wrapper\">\n\n <template v-if=\"hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow\">\n <app-link :to=\"resolvePath(onlyOneChild.path)\">\n <el-menu-item :index=\"resolvePath(onlyOneChild.path)\" :class=\"{'submenu-title-noDropdown':!isNest}\">\n <item\n v-if=\"onlyOneChild.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"onlyOneChild.meta.icon||item.meta.icon\"\n :title=\"generateTitle(onlyOneChild.meta.title)\" />\n </el-menu-item>\n </app-link>\n </template>\n <el-submenu v-else ref=\"subMenu\" :index=\"resolvePath(item.path)\">\n <template slot=\"title\">\n <item\n v-if=\"item.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"item.meta.icon\"\n :title=\"generateTitle(item.meta.title)\" />\n </template>\n\n <template v-for=\"child in item.children\">\n <template v-if=\"!child.hidden\">\n <sidebar-item\n v-if=\"child.children&&child.children.length>0\"\n :is-nest=\"true\"\n :item=\"child\"\n :key=\"child.path\"\n :base-path=\"resolvePath(child.path)\"\n class=\"nest-menu\" />\n\n <app-link v-else :to=\"resolvePath(child.path)\" :key=\"child.name\">\n <el-menu-item :index=\"resolvePath(child.path)\">\n <item\n v-if=\"child.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"child.meta.icon\"\n :title=\"generateTitle(child.meta.title)\" />\n </el-menu-item>\n </app-link>\n </template>\n </template>\n </el-submenu>\n\n </div>\n</template>\n\n<script>\nimport path from 'path'\nimport { generateTitle } from '@/utils/i18n'\nimport { isExternal } from '@/utils'\nimport Item from './Item'\nimport AppLink from './Link'\nimport FixiOSBug from './FixiOSBug'\nimport numeral from 'numeral'\n\nexport default {\n name: 'SidebarItem',\n components: { Item, AppLink },\n mixins: [FixiOSBug],\n props: {\n // route object\n item: {\n type: Object,\n required: true\n },\n isNest: {\n type: Boolean,\n default: false\n },\n basePath: {\n type: String,\n default: ''\n }\n },\n data: function() {\n return {\n onlyOneChild: null\n }\n },\n computed: {\n invitesEnabled() {\n return this.basePath === '/invites' ? this.$store.state.app.invitesEnabled : true\n },\n normalizedReportsCount() {\n return numeral(this.$store.state.reports.openReportsCount).format('0a')\n }\n },\n methods: {\n hasOneShowingChild(children, parent) {\n const showingChildren = children.filter(item => {\n if (item.hidden) {\n return false\n } else {\n // Temp set(will be used if only has one showing child)\n this.onlyOneChild = item\n return true\n }\n })\n\n // When there is only one child router, the child router is displayed by default\n if (showingChildren.length === 1) {\n return true\n }\n\n // Show parent if there are no child router to display\n if (showingChildren.length === 0) {\n this.onlyOneChild = { ... parent, path: '', noShowingChildren: true }\n return true\n }\n\n return false\n },\n resolvePath(routePath) {\n if (this.isExternalLink(routePath)) {\n return routePath\n }\n return path.resolve(this.basePath, routePath)\n },\n showCount(item) {\n return item.path === '/reports'\n },\n isExternalLink(routePath) {\n return isExternal(routePath)\n },\n generateTitle\n }\n}\n</script>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarItem.vue?vue&type=script&lang=js&\"","export default {\n computed: {\n device() {\n return this.$store.state.app.device\n }\n },\n mounted() {\n // In order to fix the click on menu on the ios device will trigger the mouseleave bug\n // https://github.com/PanJiaChen/vue-element-admin/issues/1135\n this.fixBugIniOS()\n },\n methods: {\n fixBugIniOS() {\n const $subMenu = this.$refs.subMenu\n if ($subMenu) {\n const handleMouseleave = $subMenu.handleMouseleave\n $subMenu.handleMouseleave = (e) => {\n if (this.device === 'mobile') {\n return\n }\n handleMouseleave(e)\n }\n }\n }\n }\n}\n","import { render, staticRenderFns } from \"./SidebarItem.vue?vue&type=template&id=20c4709e&\"\nimport script from \"./SidebarItem.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarItem.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SidebarItem.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.item.hidden && _vm.item.children && _vm.invitesEnabled)?_c('div',{staticClass:\"menu-wrapper\"},[(_vm.hasOneShowingChild(_vm.item.children,_vm.item) && (!_vm.onlyOneChild.children||_vm.onlyOneChild.noShowingChildren)&&!_vm.item.alwaysShow)?[_c('app-link',{attrs:{\"to\":_vm.resolvePath(_vm.onlyOneChild.path)}},[_c('el-menu-item',{class:{'submenu-title-noDropdown':!_vm.isNest},attrs:{\"index\":_vm.resolvePath(_vm.onlyOneChild.path)}},[(_vm.onlyOneChild.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":_vm.onlyOneChild.meta.icon||_vm.item.meta.icon,\"title\":_vm.generateTitle(_vm.onlyOneChild.meta.title)}}):_vm._e()],1)],1)]:_c('el-submenu',{ref:\"subMenu\",attrs:{\"index\":_vm.resolvePath(_vm.item.path)}},[_c('template',{slot:\"title\"},[(_vm.item.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":_vm.item.meta.icon,\"title\":_vm.generateTitle(_vm.item.meta.title)}}):_vm._e()],1),_vm._v(\" \"),_vm._l((_vm.item.children),function(child){return [(!child.hidden)?[(child.children&&child.children.length>0)?_c('sidebar-item',{key:child.path,staticClass:\"nest-menu\",attrs:{\"is-nest\":true,\"item\":child,\"base-path\":_vm.resolvePath(child.path)}}):_c('app-link',{key:child.name,attrs:{\"to\":_vm.resolvePath(child.path)}},[_c('el-menu-item',{attrs:{\"index\":_vm.resolvePath(child.path)}},[(child.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":child.meta.icon,\"title\":_vm.generateTitle(child.meta.title)}}):_vm._e()],1)],1)]:_vm._e()]})],2)],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-scrollbar wrap-class=\"scrollbar-wrapper\">\n <el-menu\n :default-active=\"$route.path\"\n :collapse=\"isCollapse\"\n :background-color=\"variables.menuBg\"\n :text-color=\"variables.menuText\"\n :active-text-color=\"variables.menuActiveText\"\n mode=\"vertical\"\n >\n <sidebar-item v-for=\"route in permission_routers\" :key=\"route.path\" :item=\"route\" :base-path=\"route.path\"/>\n </el-menu>\n </el-scrollbar>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport SidebarItem from './SidebarItem'\nimport variables from '@/styles/variables.scss'\n\nexport default {\n components: { SidebarItem },\n computed: {\n ...mapGetters([\n 'permission_routers',\n 'sidebar'\n ]),\n variables() {\n return variables\n },\n isCollapse() {\n return !this.sidebar.opened\n }\n },\n mounted() {\n this.$store.dispatch('FetchOpenReportsCount')\n }\n}\n</script>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=d15499de&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-scrollbar',{attrs:{\"wrap-class\":\"scrollbar-wrapper\"}},[_c('el-menu',{attrs:{\"default-active\":_vm.$route.path,\"collapse\":_vm.isCollapse,\"background-color\":_vm.variables.menuBg,\"text-color\":_vm.variables.menuText,\"active-text-color\":_vm.variables.menuActiveText,\"mode\":\"vertical\"}},_vm._l((_vm.permission_routers),function(route){return _c('sidebar-item',{key:route.path,attrs:{\"item\":route,\"base-path\":route.path}})}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-scrollbar ref=\"scrollContainer\" :vertical=\"false\" class=\"scroll-container\" @wheel.native.prevent=\"handleScroll\">\n <slot/>\n </el-scrollbar>\n</template>\n\n<script>\nconst tagAndTagSpacing = 4 // tagAndTagSpacing\n\nexport default {\n name: 'ScrollPane',\n data: function() {\n return {\n left: 0\n }\n },\n methods: {\n handleScroll(e) {\n const eventDelta = e.wheelDelta || -e.deltaY * 40\n const $scrollWrapper = this.$refs.scrollContainer.$refs.wrap\n $scrollWrapper.scrollLeft = $scrollWrapper.scrollLeft + eventDelta / 4\n },\n moveToTarget(currentTag) {\n const $container = this.$refs.scrollContainer.$el\n const $containerWidth = $container.offsetWidth\n const $scrollWrapper = this.$refs.scrollContainer.$refs.wrap\n const tagList = this.$parent.$refs.tag\n\n let firstTag = null\n let lastTag = null\n\n // find first tag and last tag\n if (tagList.length > 0) {\n firstTag = tagList[0]\n lastTag = tagList[tagList.length - 1]\n }\n\n if (firstTag === currentTag) {\n $scrollWrapper.scrollLeft = 0\n } else if (lastTag === currentTag) {\n $scrollWrapper.scrollLeft = $scrollWrapper.scrollWidth - $containerWidth\n } else {\n // find preTag and nextTag\n const currentIndex = tagList.findIndex(item => item === currentTag)\n const prevTag = tagList[currentIndex - 1]\n const nextTag = tagList[currentIndex + 1]\n // the tag's offsetLeft after of nextTag\n const afterNextTagOffsetLeft = nextTag.$el.offsetLeft + nextTag.$el.offsetWidth + tagAndTagSpacing\n\n // the tag's offsetLeft before of prevTag\n const beforePrevTagOffsetLeft = prevTag.$el.offsetLeft - tagAndTagSpacing\n\n if (afterNextTagOffsetLeft > $scrollWrapper.scrollLeft + $containerWidth) {\n $scrollWrapper.scrollLeft = afterNextTagOffsetLeft - $containerWidth\n } else if (beforePrevTagOffsetLeft < $scrollWrapper.scrollLeft) {\n $scrollWrapper.scrollLeft = beforePrevTagOffsetLeft\n }\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.scroll-container {\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n width: 100%;\n /deep/ {\n .el-scrollbar__bar {\n bottom: 0px;\n }\n .el-scrollbar__wrap {\n height: 49px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=591d6778&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"591d6778\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-scrollbar',{ref:\"scrollContainer\",staticClass:\"scroll-container\",attrs:{\"vertical\":false},nativeOn:{\"wheel\":function($event){$event.preventDefault();return _vm.handleScroll($event)}}},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"tags-view-container\">\n <scroll-pane ref=\"scrollPane\" class=\"tags-view-wrapper\">\n <router-link\n v-for=\"tag in visitedViews\"\n ref=\"tag\"\n :class=\"isActive(tag)?'active':''\"\n :to=\"{ path: tag.path, query: tag.query, fullPath: tag.fullPath }\"\n :key=\"tag.path\"\n tag=\"span\"\n class=\"tags-view-item\"\n @click.middle.native=\"closeSelectedTag(tag)\"\n @contextmenu.prevent.native=\"openMenu(tag,$event)\">\n {{ generateTitle(tag.title) }}\n <span v-if=\"!tag.meta.affix\" class=\"el-icon-close\" @click.prevent.stop=\"closeSelectedTag(tag)\" />\n </router-link>\n </scroll-pane>\n <ul v-show=\"visible\" :style=\"{left:left+'px',top:top+'px'}\" class=\"contextmenu\">\n <li @click=\"refreshSelectedTag(selectedTag)\">{{ $t('tagsView.refresh') }}</li>\n <li v-if=\"!(selectedTag.meta&&selectedTag.meta.affix)\" @click=\"closeSelectedTag(selectedTag)\">{{\n $t('tagsView.close') }}</li>\n <li @click=\"closeOthersTags\">{{ $t('tagsView.closeOthers') }}</li>\n <li @click=\"closeAllTags(selectedTag)\">{{ $t('tagsView.closeAll') }}</li>\n </ul>\n </div>\n</template>\n\n<script>\nimport ScrollPane from '@/components/element-ui/ScrollPane'\nimport { generateTitle } from '@/utils/i18n'\nimport path from 'path'\n\nexport default {\n components: { ScrollPane },\n data: function() {\n return {\n visible: false,\n top: 0,\n left: 0,\n selectedTag: {},\n affixTags: []\n }\n },\n computed: {\n visitedViews() {\n return this.$store.state.tagsView.visitedViews\n },\n routers() {\n return this.$store.state.permission.routers\n }\n },\n watch: {\n $route() {\n this.addTags()\n this.moveToCurrentTag()\n },\n visible(value) {\n if (value) {\n document.body.addEventListener('click', this.closeMenu)\n } else {\n document.body.removeEventListener('click', this.closeMenu)\n }\n }\n },\n mounted() {\n this.initTags()\n this.addTags()\n },\n methods: {\n generateTitle, // generateTitle by vue-i18n\n isActive(route) {\n return route.path === this.$route.path\n },\n filterAffixTags(routes, basePath = '/') {\n let tags = []\n routes.forEach(route => {\n if (route.meta && route.meta.affix) {\n tags.push({\n path: path.resolve(basePath, route.path),\n name: route.name,\n meta: { ...route.meta }\n })\n }\n if (route.children) {\n const tempTags = this.filterAffixTags(route.children, route.path)\n if (tempTags.length >= 1) {\n tags = [...tags, ...tempTags]\n }\n }\n })\n\n return tags\n },\n initTags() {\n const affixTags = this.affixTags = this.filterAffixTags(this.routers)\n for (const tag of affixTags) {\n // Must have tag name\n if (tag.name) {\n this.$store.dispatch('addVisitedView', tag)\n }\n }\n },\n addTags() {\n const { name } = this.$route\n if (name) {\n this.$store.dispatch('addView', this.$route)\n }\n return false\n },\n moveToCurrentTag() {\n const tags = this.$refs.tag\n this.$nextTick(() => {\n for (const tag of tags) {\n if (tag.to.path === this.$route.path) {\n this.$refs.scrollPane.moveToTarget(tag)\n\n // when query is different then update\n if (tag.to.fullPath !== this.$route.fullPath) {\n this.$store.dispatch('updateVisitedView', this.$route)\n }\n\n break\n }\n }\n })\n },\n refreshSelectedTag(view) {\n this.$store.dispatch('delCachedView', view).then(() => {\n const { fullPath } = view\n this.$nextTick(() => {\n this.$router.replace({\n path: '/redirect' + fullPath\n })\n })\n })\n },\n closeSelectedTag(view) {\n this.$store.dispatch('delView', view).then(({ visitedViews }) => {\n if (this.isActive(view)) {\n this.toLastView(visitedViews)\n }\n })\n },\n closeOthersTags() {\n this.$router.push(this.selectedTag)\n this.$store.dispatch('delOthersViews', this.selectedTag).then(() => {\n this.moveToCurrentTag()\n })\n },\n closeAllTags(view) {\n this.$store.dispatch('delAllViews').then(({ visitedViews }) => {\n if (this.affixTags.some(tag => tag.path === view.path)) {\n return\n }\n this.toLastView(visitedViews)\n })\n },\n toLastView(visitedViews) {\n const latestView = visitedViews.slice(-1)[0]\n if (latestView) {\n this.$router.push(latestView)\n } else {\n // You can set another route\n this.$router.push('/')\n }\n },\n openMenu(tag, e) {\n const menuMinWidth = 105\n const offsetLeft = this.$el.getBoundingClientRect().left // container margin left\n const offsetWidth = this.$el.offsetWidth // container width\n const maxLeft = offsetWidth - menuMinWidth // left boundary\n const left = e.clientX - offsetLeft + 15 // 15: margin right\n\n if (left > maxLeft) {\n this.left = maxLeft\n } else {\n this.left = left\n }\n this.top = e.clientY\n\n this.visible = true\n this.selectedTag = tag\n },\n closeMenu() {\n this.visible = false\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.tags-view-container {\n height: 34px;\n width: 100%;\n background: #fff;\n border-bottom: 1px solid #d8dce5;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04);\n .tags-view-wrapper {\n .tags-view-item {\n display: inline-block;\n position: relative;\n cursor: pointer;\n height: 26px;\n line-height: 26px;\n border: 1px solid #d8dce5;\n color: #495060;\n background: #fff;\n padding: 0 8px;\n font-size: 12px;\n margin-left: 5px;\n margin-top: 4px;\n &:first-of-type {\n margin-left: 15px;\n }\n &:last-of-type {\n margin-right: 15px;\n }\n &.active {\n background-color: #42b983;\n color: #fff;\n border-color: #42b983;\n &::before {\n content: '';\n background: #fff;\n display: inline-block;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n position: relative;\n margin-right: 2px;\n }\n }\n }\n }\n .contextmenu {\n margin: 0;\n background: #fff;\n z-index: 100;\n position: absolute;\n list-style-type: none;\n padding: 5px 0;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 400;\n color: #333;\n box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);\n li {\n margin: 0;\n padding: 7px 16px;\n cursor: pointer;\n &:hover {\n background: #eee;\n }\n }\n }\n}\n</style>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\">\n//reset element css of el-icon-close\n.tags-view-wrapper {\n .tags-view-item {\n .el-icon-close {\n width: 16px;\n height: 16px;\n vertical-align: 2px;\n border-radius: 50%;\n text-align: center;\n transition: all .3s cubic-bezier(.645, .045, .355, 1);\n transform-origin: 100% 50%;\n &:before {\n transform: scale(.6);\n display: inline-block;\n vertical-align: -3px;\n }\n &:hover {\n background-color: #b4bccc;\n color: #fff;\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TagsView.vue?vue&type=template&id=e1cdb714&scoped=true&\"\nimport script from \"./TagsView.vue?vue&type=script&lang=js&\"\nexport * from \"./TagsView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\nimport style1 from \"./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e1cdb714\",\n null\n \n)\n\ncomponent.options.__file = \"TagsView.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tags-view-container\"},[_c('scroll-pane',{ref:\"scrollPane\",staticClass:\"tags-view-wrapper\"},_vm._l((_vm.visitedViews),function(tag){return _c('router-link',{key:tag.path,ref:\"tag\",refInFor:true,staticClass:\"tags-view-item\",class:_vm.isActive(tag)?'active':'',attrs:{\"to\":{ path: tag.path, query: tag.query, fullPath: tag.fullPath },\"tag\":\"span\"},nativeOn:{\"mouseup\":function($event){if('button' in $event && $event.button !== 1){ return null; }return _vm.closeSelectedTag(tag)},\"contextmenu\":function($event){$event.preventDefault();return _vm.openMenu(tag,$event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.generateTitle(tag.title))+\"\\n \"),(!tag.meta.affix)?_c('span',{staticClass:\"el-icon-close\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.closeSelectedTag(tag)}}}):_vm._e()])}),1),_vm._v(\" \"),_c('ul',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.visible),expression:\"visible\"}],staticClass:\"contextmenu\",style:({left:_vm.left+'px',top:_vm.top+'px'})},[_c('li',{on:{\"click\":function($event){return _vm.refreshSelectedTag(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.refresh')))]),_vm._v(\" \"),(!(_vm.selectedTag.meta&&_vm.selectedTag.meta.affix))?_c('li',{on:{\"click\":function($event){return _vm.closeSelectedTag(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.close')))]):_vm._e(),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.closeOthersTags}},[_vm._v(_vm._s(_vm.$t('tagsView.closeOthers')))]),_vm._v(\" \"),_c('li',{on:{\"click\":function($event){return _vm.closeAllTags(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.closeAll')))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=script&lang=js&\"","<template>\n <section class=\"app-main\">\n <transition name=\"fade-transform\" mode=\"out-in\">\n <keep-alive :include=\"cachedViews\">\n <router-view :key=\"key\"/>\n </keep-alive>\n </transition>\n </section>\n</template>\n\n<script>\nexport default {\n name: 'AppMain',\n computed: {\n cachedViews() {\n return this.$store.state.tagsView.cachedViews\n },\n key() {\n return this.$route.fullPath\n }\n }\n}\n</script>\n\n<style scoped>\n.app-main {\n /*84 = navbar + tags-view = 50 +34 */\n min-height: calc(100vh - 84px);\n width: 100%;\n position: relative;\n overflow: hidden;\n}\n</style>\n\n","import { render, staticRenderFns } from \"./AppMain.vue?vue&type=template&id=f852c4f2&scoped=true&\"\nimport script from \"./AppMain.vue?vue&type=script&lang=js&\"\nexport * from \"./AppMain.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f852c4f2\",\n null\n \n)\n\ncomponent.options.__file = \"AppMain.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{staticClass:\"app-main\"},[_c('transition',{attrs:{\"name\":\"fade-transform\",\"mode\":\"out-in\"}},[_c('keep-alive',{attrs:{\"include\":_vm.cachedViews}},[_c('router-view',{key:_vm.key})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import store from '@/store'\n\nconst { body } = document\nconst mobileWidth = 480\nconst tabletWidth = 801\nconst ratio = 3\n\nexport default {\n watch: {\n $route(route) {\n if (this.device === 'mobile' && this.sidebar.opened) {\n store.dispatch('closeSideBar', { withoutAnimation: false })\n }\n }\n },\n beforeMount() {\n window.addEventListener('resize', this.resizeHandler)\n },\n mounted() {\n const isMobile = this.isMobile()\n const isTablet = this.isTablet()\n if (isMobile || isTablet) {\n store.dispatch('toggleDevice', isMobile ? 'mobile' : 'tablet')\n store.dispatch('closeSideBar', { withoutAnimation: true })\n }\n },\n methods: {\n isMobile() {\n const rect = body.getBoundingClientRect()\n return rect.width - ratio < mobileWidth\n },\n isTablet() {\n const rect = body.getBoundingClientRect()\n return rect.width - ratio < tabletWidth && rect.width - ratio > mobileWidth\n },\n resizeHandler() {\n if (!document.hidden) {\n const isMobile = this.isMobile()\n const isTablet = this.isTablet()\n\n if (isMobile || isTablet) {\n store.dispatch('toggleDevice', isMobile ? 'mobile' : 'tablet')\n store.dispatch('closeSideBar', { withoutAnimation: true })\n } else {\n store.dispatch('toggleDevice', 'desktop')\n }\n }\n }\n }\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"","<template>\n <div :class=\"classObj\" class=\"app-wrapper\">\n <div v-if=\"device==='mobile'&&sidebar.opened\" class=\"drawer-bg\" @click=\"handleClickOutside\"/>\n <sidebar class=\"sidebar-container\"/>\n <div class=\"main-container\">\n <navbar/>\n <app-main/>\n </div>\n </div>\n</template>\n\n<script>\nimport { Navbar, Sidebar, AppMain, TagsView } from './components'\nimport ResizeMixin from './mixin/ResizeHandler'\n\nexport default {\n name: 'Layout',\n components: {\n Navbar,\n Sidebar,\n AppMain,\n TagsView\n },\n mixins: [ResizeMixin],\n computed: {\n sidebar() {\n return this.$store.state.app.sidebar\n },\n device() {\n return this.$store.state.app.device\n },\n classObj() {\n return {\n hideSidebar: !this.sidebar.opened,\n openSidebar: this.sidebar.opened,\n withoutAnimation: this.sidebar.withoutAnimation,\n mobile: this.device === 'mobile'\n }\n }\n },\n methods: {\n handleClickOutside() {\n this.$store.dispatch('closeSideBar', { withoutAnimation: false })\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n @import \"~@/styles/mixin.scss\";\n .app-wrapper {\n @include clearfix;\n position: relative;\n height: 100%;\n width: 100%;\n &.mobile.openSidebar{\n position: fixed;\n top: 0;\n }\n }\n .drawer-bg {\n background: #000;\n opacity: 0.3;\n width: 100%;\n top: 0;\n height: 100%;\n position: absolute;\n z-index: 999;\n }\n</style>\n","import { render, staticRenderFns } from \"./Layout.vue?vue&type=template&id=767d264f&scoped=true&\"\nimport script from \"./Layout.vue?vue&type=script&lang=js&\"\nexport * from \"./Layout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"767d264f\",\n null\n \n)\n\ncomponent.options.__file = \"Layout.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-wrapper\",class:_vm.classObj},[(_vm.device==='mobile'&&_vm.sidebar.opened)?_c('div',{staticClass:\"drawer-bg\",on:{\"click\":_vm.handleClickOutside}}):_vm._e(),_vm._v(\" \"),_c('sidebar',{staticClass:\"sidebar-container\"}),_vm._v(\" \"),_c('div',{staticClass:\"main-container\"},[_c('navbar'),_vm._v(\" \"),_c('app-main')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport Router from 'vue-router'\n\nVue.use(Router)\n\n/* Layout */\nimport Layout from '@/views/layout/Layout'\n\nconst disabledFeatures = process.env.DISABLED_FEATURES || []\nconst settingsDisabled = disabledFeatures.includes('settings')\nconst settings = {\n path: '/settings',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/settings/index'),\n name: 'Settings',\n meta: { title: 'settings', icon: 'settings', noCache: true }\n }\n ]\n}\n\nconst statusesDisabled = disabledFeatures.includes('statuses')\nconst statuses = {\n path: '/statuses',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/statuses/index'),\n name: 'Statuses',\n meta: { title: 'statuses', icon: 'form', noCache: true }\n }\n ]\n}\n\nconst reportsDisabled = disabledFeatures.includes('reports')\nconst reports = {\n path: '/reports',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/reports/index'),\n name: 'Reports',\n meta: { title: 'reports', icon: 'documentation', noCache: true }\n }\n ]\n}\n\nconst invitesDisabled = disabledFeatures.includes('invites')\nconst invites = {\n path: '/invites',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/invites/index'),\n name: 'Invites',\n meta: { title: 'invites', icon: 'guide', noCache: true }\n }\n ]\n}\n\nconst emojiPacksDisabled = disabledFeatures.includes('emoji-packs')\nconst emojiPacks = {\n path: '/emoji_packs',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/emojiPacks/index'),\n name: 'Emoji Packs',\n meta: { title: 'emoji-packs', icon: 'eye-open', noCache: true }\n }\n ]\n}\n\nconst moderationLogDisabled = disabledFeatures.includes('moderation-log')\nconst moderationLog = {\n path: '/moderation_log',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/moderation_log/index'),\n name: 'Moderation Log',\n meta: { title: 'moderationLog', icon: 'list', noCache: true }\n }\n ]\n}\n\nconst mediaProxyCacheDisabled = disabledFeatures.includes('media-proxy-cache')\nconst mediaProxyCache = {\n path: '/media_proxy_cache',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/mediaProxyCache/index'),\n name: 'MediaProxy Cache',\n meta: { title: 'mediaProxyCache', icon: 'example', noCache: true }\n }\n ]\n}\n\nexport const constantRouterMap = [\n {\n path: '/redirect',\n component: Layout,\n hidden: true,\n children: [\n {\n path: '/redirect/:path*',\n component: () => import('@/views/redirect/index')\n }\n ]\n },\n {\n path: '/login-pleroma',\n component: () => import('@/views/login/pleroma'),\n hidden: true\n },\n {\n path: '/login',\n component: () => import('@/views/login/index'),\n hidden: true\n },\n {\n path: '/auth-redirect',\n component: () => import('@/views/login/authredirect'),\n hidden: true\n },\n {\n path: '/404',\n component: () => import('@/views/errorPage/404'),\n hidden: true\n },\n {\n path: '/401',\n component: () => import('@/views/errorPage/401'),\n hidden: true\n },\n {\n path: '',\n component: Layout,\n redirect: '/users/index'\n }\n]\n\nexport default new Router({\n // mode: 'history', // require service support\n scrollBehavior: () => ({ y: 0 }),\n routes: constantRouterMap\n})\n\nexport const asyncRouterMap = [\n {\n path: '/users',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/users/index'),\n name: 'Users',\n meta: { title: 'users', icon: 'peoples', noCache: true }\n }\n ]\n },\n ...(statusesDisabled ? [] : [statuses]),\n ...(reportsDisabled ? [] : [reports]),\n ...(invitesDisabled ? [] : [invites]),\n ...(emojiPacksDisabled ? [] : [emojiPacks]),\n ...(moderationLogDisabled ? [] : [moderationLog]),\n ...(mediaProxyCacheDisabled ? [] : [mediaProxyCache]),\n ...(settingsDisabled ? [] : [settings]),\n {\n path: '/users/:id',\n component: Layout,\n children: [\n {\n path: '',\n name: 'UsersShow',\n component: () => import('@/views/users/show')\n }\n ],\n hidden: true\n },\n {\n path: '/statuses/:id',\n component: Layout,\n children: [\n {\n path: '',\n name: 'StatusShow',\n component: () => import('@/views/statuses/show')\n }\n ],\n hidden: true\n },\n { path: '*', redirect: '/404', hidden: true }\n]\n","import { asyncRouterMap, constantRouterMap } from '@/router'\n\n/**\n * 通过meta.role判断是否与当前用户权限匹配\n * @param roles\n * @param route\n */\nfunction hasPermission(roles, route) {\n if (route.meta && route.meta.roles) {\n return roles.some(role => route.meta.roles.includes(role))\n } else {\n return true\n }\n}\n\n/**\n * 递归过滤异步路由表,返回符合用户角色权限的路由表\n * @param routes asyncRouterMap\n * @param roles\n */\nfunction filterAsyncRouter(routes, roles) {\n const res = []\n\n routes.forEach(route => {\n const tmp = { ...route }\n if (hasPermission(roles, tmp)) {\n if (tmp.children) {\n tmp.children = filterAsyncRouter(tmp.children, roles)\n }\n res.push(tmp)\n }\n })\n\n return res\n}\n\nconst permission = {\n state: {\n routers: [],\n addRouters: []\n },\n mutations: {\n SET_ROUTERS: (state, routers) => {\n state.addRouters = routers\n state.routers = constantRouterMap.concat(routers)\n }\n },\n actions: {\n GenerateRoutes({ commit }, data) {\n return new Promise(resolve => {\n const { roles } = data\n let accessedRouters\n if (roles.includes('admin')) {\n accessedRouters = asyncRouterMap\n } else {\n accessedRouters = filterAsyncRouter(asyncRouterMap, roles)\n }\n commit('SET_ROUTERS', accessedRouters)\n resolve()\n })\n }\n }\n}\n\nexport default permission\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchRelays(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function addRelay(relay_url, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'post',\n headers: authHeaders(token),\n data: { relay_url }\n })\n}\n\nexport async function deleteRelay(relay_url, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'delete',\n headers: authHeaders(token),\n data: { relay_url }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchRelays, addRelay, deleteRelay } from '@/api/relays'\n\nconst relays = {\n state: {\n fetchedRelays: [],\n loading: true\n },\n mutations: {\n SET_LOADING: (state, loading) => {\n state.loading = loading\n },\n SET_RELAYS: (state, relays) => {\n state.fetchedRelays = relays\n },\n ADD_RELAY: (state, relay) => {\n state.fetchedRelays = [...state.fetchedRelays, { actor: relay }]\n },\n DELETE_RELAY: (state, relay) => {\n state.fetchedRelays = state.fetchedRelays.filter(fetchedRelay => fetchedRelay.actor !== relay)\n }\n },\n actions: {\n async FetchRelays({ commit, getters }) {\n commit('SET_LOADING', true)\n\n const { data } = await fetchRelays(getters.authHost, getters.token)\n commit('SET_RELAYS', data.relays)\n commit('SET_LOADING', false)\n },\n async AddRelay({ commit, dispatch, getters }, relay) {\n commit('ADD_RELAY', relay)\n\n try {\n await addRelay(relay, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('FetchRelays')\n }\n },\n async DeleteRelay({ commit, dispatch, getters }, relay) {\n commit('DELETE_RELAY', relay)\n\n try {\n await deleteRelay(relay, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('FetchRelays')\n }\n }\n }\n}\n\nexport default relays\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function changeState(reports, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports`,\n method: 'patch',\n headers: authHeaders(token),\n data: { reports }\n })\n}\n\nexport async function fetchReports(filter, page, pageSize, authHost, token) {\n const url = filter.length > 0\n ? `/api/pleroma/admin/reports?state=${filter}&page=${page}&page_size=${pageSize}`\n : `/api/pleroma/admin/reports?page=${page}&page_size=${pageSize}`\n return await request({\n baseURL: baseName(authHost),\n url,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function createNote(content, reportID, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports/${reportID}/notes`,\n method: `post`,\n headers: authHeaders(token),\n data: { content }\n })\n}\n\nexport async function deleteNote(noteID, reportID, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports/${reportID}/notes/${noteID}`,\n method: `delete`,\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function activateUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/activate`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function addRight(nicknames, right, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/permission_group/${right}`,\n method: 'post',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function createNewAccount(nickname, email, password, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users',\n method: 'post',\n headers: authHeaders(token),\n data: { users: [{ nickname, email, password }] }\n })\n}\n\nexport async function deactivateUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/deactivate`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function deleteRight(nicknames, right, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/permission_group/${right}`,\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function deleteUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users`,\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function disableMfa(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/disable_mfa`,\n method: 'put',\n headers: authHeaders(token),\n data: { nickname }\n })\n}\n\nexport async function fetchUser(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${id}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchUserCredentials(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/credentials`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function updateUserCredentials(nickname, credentials, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/credentials`,\n method: 'patch',\n headers: authHeaders(token),\n data: credentials\n })\n}\n\nexport async function fetchUsers(filters, authHost, token, page = 1) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?page=${page}&filters=${filters}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function getPasswordResetToken(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/password_reset`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function forcePasswordReset(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/force_password_reset`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function searchUsers(query, filters, authHost, token, page = 1) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?query=${query}&page=${page}&filters=${filters}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function tagUser(nicknames, tags, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/tag',\n method: 'put',\n headers: authHeaders(token),\n data: { nicknames, tags }\n })\n}\n\nexport async function untagUser(nicknames, tags, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/tag',\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames, tags }\n })\n}\n\nexport async function fetchUserStatuses(id, authHost, godmode, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${id}/statuses?godmode=${godmode}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function approveUserAccount(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/approve',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function confirmUserEmail(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/confirm_email',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function resendConfirmationEmail(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/resend_confirmation_email',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { changeState, fetchReports, createNote, deleteNote } from '@/api/reports'\nimport {\n activateUsers,\n deactivateUsers,\n deleteUsers,\n tagUser,\n untagUser\n} from '@/api/users'\n\nconst reports = {\n state: {\n currentPage: 1,\n fetchedReports: [],\n loading: true,\n openReportsCount: 0,\n pageSize: 50,\n stateFilter: '',\n totalReportsCount: 0\n },\n mutations: {\n SET_LAST_REPORT_ID: (state, id) => {\n state.idOfLastReport = id\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_OPEN_REPORTS_COUNT: (state, total) => {\n state.openReportsCount = total\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_REPORTS: (state, reports) => {\n state.fetchedReports = reports\n },\n SET_REPORTS_COUNT: (state, total) => {\n state.totalReportsCount = total\n },\n SET_REPORTS_FILTER: (state, filter) => {\n state.stateFilter = filter\n }\n },\n actions: {\n async ActivateUserFromReports({ commit, dispatch, getters, state }, { user, reportId }) {\n try {\n await activateUsers([user.nickname], getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n const updatedReports = state.fetchedReports.map(report => {\n const updatedAccount = { ...user, deactivated: false }\n return report.id === reportId ? { ...report, account: updatedAccount } : report\n })\n commit('SET_REPORTS', updatedReports)\n }\n dispatch('SuccessMessage')\n },\n async AddTagFromReports({ commit, dispatch, getters, state }, { user, tag, reportId }) {\n try {\n await tagUser([user.nickname], [tag], getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n const updatedReports = state.fetchedReports.map(report => {\n const updatedAccount = { ...user, tags: [...user.tags, tag] }\n return report.id === reportId ? { ...report, account: updatedAccount } : report\n })\n commit('SET_REPORTS', updatedReports)\n }\n dispatch('SuccessMessage')\n },\n async ChangeReportState({ commit, dispatch, getters, state }, reportsData) {\n changeState(reportsData, getters.authHost, getters.token)\n\n const updatedReports = state.fetchedReports.map(report => {\n const updatedReportsIds = reportsData.map(({ id }) => id)\n return updatedReportsIds.includes(report.id) ? { ...report, state: reportsData[0].state } : report\n })\n\n commit('SET_REPORTS', updatedReports)\n dispatch('FetchOpenReportsCount')\n },\n ClearFetchedReports({ commit }) {\n commit('SET_REPORTS', [])\n },\n async DeactivateUserFromReports({ commit, dispatch, getters, state }, { user, reportId }) {\n try {\n await deactivateUsers([user.nickname], getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n const updatedReports = state.fetchedReports.map(report => {\n const updatedAccount = { ...user, deactivated: true }\n return report.id === reportId ? { ...report, account: updatedAccount } : report\n })\n commit('SET_REPORTS', updatedReports)\n }\n dispatch('SuccessMessage')\n },\n async DeleteUserFromReports({ commit, dispatch, getters, state }, { user, reportId }) {\n try {\n await deleteUsers([user.nickname], getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n const updatedReports = state.fetchedReports.map(report => {\n const updatedAccount = { ...user, deactivated: true }\n return report.id === reportId ? { ...report, account: updatedAccount } : report\n })\n commit('SET_REPORTS', updatedReports)\n }\n dispatch('SuccessMessage')\n },\n async FetchReports({ commit, getters, state }, page) {\n commit('SET_LOADING', true)\n const { data } = await fetchReports(state.stateFilter, page, state.pageSize, getters.authHost, getters.token)\n\n commit('SET_REPORTS', data.reports)\n commit('SET_REPORTS_COUNT', data.total)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n },\n async FetchOpenReportsCount({ commit, getters, state }) {\n commit('SET_LOADING', true)\n const { data } = await fetchReports('open', state.currentPage, state.pageSize, getters.authHost, getters.token)\n\n commit('SET_OPEN_REPORTS_COUNT', data.total)\n commit('SET_LOADING', false)\n },\n async RemoveTagFromReports({ commit, dispatch, getters, state }, { user, tag, reportId }) {\n try {\n await untagUser([user.nickname], [tag], getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n const updatedReports = state.fetchedReports.map(report => {\n const updatedAccount = { ...user, tags: user.tags.filter(userTag => userTag !== tag) }\n return report.id === reportId ? { ...report, account: updatedAccount } : report\n })\n commit('SET_REPORTS', updatedReports)\n }\n dispatch('SuccessMessage')\n },\n SetReportsFilter({ commit }, filter) {\n commit('SET_REPORTS_FILTER', filter)\n },\n CreateReportNote({ commit, getters, state, rootState }, { content, reportID }) {\n createNote(content, reportID, getters.authHost, getters.token)\n\n const optimisticNote = {\n user: {\n avatar: rootState.user.avatar,\n nickname: rootState.user.name,\n id: rootState.user.id\n },\n content: content,\n created_at: new Date().getTime()\n }\n\n const updatedReports = state.fetchedReports.map(report => {\n if (report.id === reportID) {\n report.notes = [...report.notes, optimisticNote]\n }\n\n return report\n })\n\n commit('SET_REPORTS', updatedReports)\n },\n DeleteReportNote({ commit, getters, state }, { noteID, reportID }) {\n deleteNote(noteID, reportID, getters.authHost, getters.token)\n\n const updatedReports = state.fetchedReports.map(report => {\n if (report.id === reportID) {\n report.notes = report.notes.filter(note => note.id !== noteID)\n }\n\n return report\n })\n\n commit('SET_REPORTS', updatedReports)\n }\n }\n}\n\nexport default reports\n","import {\n deleteInstanceDocument,\n fetchDescription,\n fetchSettings,\n getInstanceDocument,\n removeSettings,\n updateInstanceDocument,\n updateSettings } from '@/api/settings'\nimport { formSearchObject, parseNonTuples, parseTuples, valueHasTuples, wrapUpdatedSettings } from './normalizers'\nimport _ from 'lodash'\n\nconst settings = {\n state: {\n activeTab: 'instance',\n configDisabled: true,\n db: {},\n description: [],\n instancePanel: '',\n loading: true,\n searchData: {},\n settings: {},\n termsOfServices: '',\n updatedSettings: {}\n },\n mutations: {\n CLEAR_UPDATED_SETTINGS: (state) => {\n state.updatedSettings = {}\n },\n SET_INSTANCE_PANEL: (state, data) => {\n state.instancePanel = data\n },\n REMOVE_SETTING_FROM_UPDATED: (state, { group, key, subkeys }) => {\n if (_.get(state.updatedSettings, [group, key, subkeys[0]])) {\n const { [subkeys[0]]: value, ...updatedSettings } = state.updatedSettings[group][key]\n state.updatedSettings = updatedSettings\n }\n },\n SET_ACTIVE_TAB: (state, tab) => {\n state.activeTab = tab\n },\n SET_DESCRIPTION: (state, data) => {\n state.description = data\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_SEARCH: (state, searchObject) => {\n state.searchData = searchObject\n },\n SET_SETTINGS: (state, data) => {\n const newSettings = data.reduce((acc, { group, key, value }) => {\n const parsedValue = valueHasTuples(key, value)\n ? { value: parseNonTuples(key, value) }\n : parseTuples(value, key)\n acc[group] = acc[group] ? { ...acc[group], [key]: parsedValue } : { [key]: parsedValue }\n return acc\n }, {})\n\n const newDbSettings = data.reduce((acc, { group, key, db }) => {\n if (db) {\n acc[group] = acc[group] ? { ...acc[group], [key]: db } : { [key]: db }\n }\n return acc\n }, {})\n\n state.settings = newSettings\n state.db = newDbSettings\n },\n SET_TERMS_OF_SERVICES: (state, data) => {\n state.termsOfServices = data\n },\n TOGGLE_TABS: (state, status) => {\n state.configDisabled = status\n },\n UPDATE_SETTINGS: (state, { group, key, input, value, type }) => {\n const updatedSetting = !state.updatedSettings[group] || (key === 'Pleroma.Emails.Mailer' && input === ':adapter')\n ? { [key]: { [input]: [type, value] }}\n : { [key]: { ...state.updatedSettings[group][key], ...{ [input]: [type, value] }}}\n state.updatedSettings[group] = { ...state.updatedSettings[group], ...updatedSetting }\n },\n UPDATE_STATE: (state, { group, key, input, value }) => {\n const updatedState = key === 'Pleroma.Emails.Mailer' && input === ':adapter'\n ? { [key]: { [input]: value }}\n : { [key]: { ...state.settings[group][key], ...{ [input]: value }}}\n state.settings[group] = { ...state.settings[group], ...updatedState }\n }\n },\n actions: {\n async FetchInstanceDocument({ commit, getters }, name) {\n const { data } = await getInstanceDocument(name, getters.authHost, getters.token)\n if (name === 'instance-panel') {\n commit('SET_INSTANCE_PANEL', data)\n } else {\n commit('SET_TERMS_OF_SERVICES', data)\n }\n },\n async FetchSettings({ commit, getters }) {\n commit('SET_LOADING', true)\n try {\n const response = await fetchSettings(getters.authHost, getters.token)\n const description = await fetchDescription(getters.authHost, getters.token)\n commit('SET_DESCRIPTION', description.data)\n const searchObject = formSearchObject(description.data)\n commit('SET_SEARCH', searchObject)\n commit('SET_SETTINGS', response.data.configs)\n } catch (_e) {\n commit('TOGGLE_TABS', true)\n commit('SET_ACTIVE_TAB', 'relays')\n commit('SET_LOADING', false)\n return\n }\n commit('TOGGLE_TABS', false)\n commit('SET_LOADING', false)\n },\n async RemoveInstanceDocument({ dispatch, getters }, name) {\n await deleteInstanceDocument(name, getters.authHost, getters.token)\n await dispatch('FetchInstanceDocument', name)\n },\n async RemoveSetting({ commit, getters }, configs) {\n await removeSettings(configs, getters.authHost, getters.token)\n const response = await fetchSettings(getters.authHost, getters.token)\n const { group, key, subkeys } = configs[0]\n commit('SET_SETTINGS', response.data.configs)\n commit('TOGGLE_REBOOT', response.data.need_reboot)\n commit('REMOVE_SETTING_FROM_UPDATED', { group, key, subkeys: subkeys || [] })\n },\n SetActiveTab({ commit }, tab) {\n commit('SET_ACTIVE_TAB', tab)\n },\n async SubmitChanges({ getters, commit, state }) {\n const configs = Object.keys(state.updatedSettings).reduce((acc, group) => {\n return [...acc, ...wrapUpdatedSettings(group, state.updatedSettings[group], state.settings)]\n }, [])\n\n await updateSettings(configs, getters.authHost, getters.token)\n const response = await fetchSettings(getters.authHost, getters.token)\n commit('SET_SETTINGS', response.data.configs)\n commit('TOGGLE_REBOOT', response.data.need_reboot)\n commit('CLEAR_UPDATED_SETTINGS')\n },\n async UpdateInstanceDocs({ commit, getters }, { name, content }) {\n commit('SET_INSTANCE_PANEL', content)\n const formData = new FormData()\n const blob = new Blob([content], { type: 'text/html' })\n formData.append('file', blob)\n await updateInstanceDocument(name, formData, getters.authHost, getters.token)\n },\n UpdateSettings({ commit }, { group, key, input, value, type }) {\n key\n ? commit('UPDATE_SETTINGS', { group, key, input, value, type })\n : commit('UPDATE_SETTINGS', { group, key: input, input: '_value', value, type })\n },\n async UpdateState({ commit, getters, state }, { group, key, input, value }) {\n if (key === 'Pleroma.Emails.Mailer' && input === ':adapter') {\n const subkeys = Object.keys(state.settings[group][key]).filter(el => el !== ':adapter')\n await removeSettings([{ group, key, delete: true, subkeys }], getters.authHost, getters.token)\n } else if (key === 'Pleroma.Upload' && input === ':uploader') {\n const deletedKey = value === 'Pleroma.Uploaders.Local' ? 'Pleroma.Uploaders.S3' : 'Pleroma.Uploaders.Local'\n await removeSettings([{ group, key: deletedKey, delete: true }], getters.authHost, getters.token)\n }\n key\n ? commit('UPDATE_STATE', { group, key, input, value })\n : commit('UPDATE_STATE', { group, key: input, input: 'value', value })\n }\n }\n}\n\nexport default settings\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function changeStatusScope(id, sensitive, visibility, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'put',\n headers: authHeaders(token),\n data: { sensitive, visibility }\n })\n}\n\nexport async function deleteStatus(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatus(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatuses({ godmode, localOnly, authHost, token, pageSize, page }) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses?godmode=${godmode}&local_only=${localOnly}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatusesCount(instance, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: instance ? `/api/pleroma/admin/stats?instance=${instance}` : `/api/pleroma/admin/stats`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatusesByInstance({ instance, authHost, token, pageSize, page }) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/instances/${instance}/statuses?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { changeStatusScope, deleteStatus, fetchStatus, fetchStatuses, fetchStatusesCount, fetchStatusesByInstance } from '@/api/status'\n\nconst status = {\n state: {\n fetchedStatus: {},\n fetchedStatuses: [],\n loading: false,\n statusAuthor: {},\n statusesByInstance: {\n selectedInstance: '',\n showLocal: false,\n showPrivate: false,\n page: 1,\n pageSize: 20,\n buttonLoading: false,\n allLoaded: false\n },\n statusVisibility: {}\n },\n mutations: {\n CHANGE_GODMODE_CHECKBOX_VALUE: (state, value) => {\n state.statusesByInstance.showPrivate = value\n },\n CHANGE_LOCAL_CHECKBOX_VALUE: (state, value) => {\n state.statusesByInstance.showLocal = value\n },\n CHANGE_PAGE: (state, page) => {\n state.statusesByInstance.page = page\n },\n CHANGE_SELECTED_INSTANCE: (state, instance) => {\n state.statusesByInstance.selectedInstance = instance\n },\n SET_STATUS: (state, status) => {\n state.fetchedStatus = status\n },\n SET_STATUSES_BY_INSTANCE: (state, statuses) => {\n state.fetchedStatuses = statuses\n },\n PUSH_STATUSES: (state, statuses) => {\n state.fetchedStatuses = [...state.fetchedStatuses, ...statuses]\n },\n SET_ALL_LOADED: (state, status) => {\n state.statusesByInstance.allLoaded = status\n },\n SET_BUTTON_LOADING: (state, status) => {\n state.statusesByInstance.buttonLoading = status\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_STATUS_VISIBILITY: (state, visibility) => {\n state.statusVisibility = visibility\n },\n SET_STATUS_AUTHOR: (state, user) => {\n state.statusAuthor = user\n }\n },\n actions: {\n async ChangeStatusScope({ dispatch, getters }, { statusId, isSensitive, visibility, reportCurrentPage, userId, godmode, fetchStatusesByInstance }) {\n await changeStatusScope(statusId, isSensitive, visibility, getters.authHost, getters.token)\n if (reportCurrentPage !== 0) { // called from Reports\n dispatch('FetchReports', reportCurrentPage)\n } else if (userId.length > 0) { // called from User profile\n dispatch('FetchUserStatuses', { userId, godmode })\n } else if (fetchStatusesByInstance) { // called from Statuses by Instance\n dispatch('FetchStatusesByInstance')\n } else { // called from Status show page\n dispatch('FetchStatusAfterUserModeration', statusId)\n }\n },\n ClearState({ commit }) {\n commit('CHANGE_SELECTED_INSTANCE', '')\n commit('SET_STATUSES_BY_INSTANCE', [])\n commit('CHANGE_LOCAL_CHECKBOX_VALUE', false)\n commit('CHANGE_GODMODE_CHECKBOX_VALUE', false)\n commit('SET_ALL_LOADED', false)\n commit('CHANGE_PAGE', 1)\n },\n async DeleteStatus({ dispatch, getters }, { statusId, reportCurrentPage, userId, godmode, fetchStatusesByInstance }) {\n await deleteStatus(statusId, getters.authHost, getters.token)\n if (reportCurrentPage !== 0) { // called from Reports\n dispatch('FetchReports', reportCurrentPage)\n } else if (userId.length > 0) { // called from User profile\n dispatch('FetchUserStatuses', { userId, godmode })\n } else if (fetchStatusesByInstance) { // called from Statuses by Instance\n dispatch('FetchStatusesByInstance')\n }\n },\n async FetchStatus({ commit, dispatch, getters, state }, id) {\n commit('SET_LOADING', true)\n const status = await fetchStatus(id, getters.authHost, getters.token)\n\n commit('SET_STATUS', status.data)\n commit('SET_STATUS_AUTHOR', status.data.account)\n commit('SET_LOADING', false)\n dispatch('FetchUserStatuses', { userId: state.fetchedStatus.account.id, godmode: false })\n },\n FetchStatusAfterUserModeration({ commit, dispatch, getters, state }, id) {\n commit('SET_LOADING', true)\n fetchStatus(id, getters.authHost, getters.token)\n .then(status => dispatch('SetStatus', status.data))\n commit('SET_LOADING', false)\n },\n async FetchStatusesCount({ commit, getters }, instance) {\n commit('SET_LOADING', true)\n const { data } = await fetchStatusesCount(instance, getters.authHost, getters.token)\n commit('SET_STATUS_VISIBILITY', data.status_visibility)\n commit('SET_LOADING', false)\n },\n async FetchStatusesByInstance({ commit, dispatch, getters, state, rootState }) {\n commit('SET_LOADING', true)\n dispatch('FetchStatusesCount', state.statusesByInstance.selectedInstance)\n if (state.statusesByInstance.selectedInstance === '') {\n commit('SET_STATUSES_BY_INSTANCE', [])\n } else {\n const statuses = state.statusesByInstance.selectedInstance === rootState.user.authHost\n ? await fetchStatuses(\n {\n godmode: state.statusesByInstance.showPrivate,\n localOnly: state.statusesByInstance.showLocal,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n : await fetchStatusesByInstance(\n {\n instance: state.statusesByInstance.selectedInstance,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n commit('SET_STATUSES_BY_INSTANCE', statuses.data)\n if (statuses.data.length < state.statusesByInstance.pageSize) {\n commit('SET_ALL_LOADED', true)\n }\n }\n commit('SET_LOADING', false)\n },\n async FetchStatusesPageByInstance({ commit, getters, rootState, state }) {\n commit('SET_BUTTON_LOADING', true)\n const statuses = state.statusesByInstance.selectedInstance === rootState.user.authHost\n ? await fetchStatuses(\n {\n godmode: state.statusesByInstance.showPrivate,\n localOnly: state.statusesByInstance.showLocal,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n : await fetchStatusesByInstance(\n {\n instance: state.statusesByInstance.selectedInstance,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n commit('PUSH_STATUSES', statuses.data)\n commit('SET_BUTTON_LOADING', false)\n if (statuses.data.length < state.statusesByInstance.pageSize) {\n commit('SET_ALL_LOADED', true)\n }\n },\n HandleGodmodeCheckboxChange({ commit, dispatch }, value) {\n dispatch('HandlePageChange', 1)\n commit('SET_ALL_LOADED', false)\n\n commit('CHANGE_GODMODE_CHECKBOX_VALUE', value)\n dispatch('FetchStatusesByInstance')\n },\n HandleLocalCheckboxChange({ commit, dispatch }, value) {\n dispatch('HandlePageChange', 1)\n commit('SET_ALL_LOADED', false)\n\n commit('CHANGE_LOCAL_CHECKBOX_VALUE', value)\n dispatch('FetchStatusesByInstance')\n },\n HandleFilterChange({ commit }, instance) {\n commit('CHANGE_SELECTED_INSTANCE', instance)\n commit('SET_ALL_LOADED', false)\n },\n HandlePageChange({ commit }, page) {\n commit('CHANGE_PAGE', page)\n },\n SetStatus({ commit }, status) {\n commit('SET_STATUS', status)\n commit('SET_STATUS_AUTHOR', status.account)\n }\n }\n}\n\nexport default status\n","const tagsView = {\n state: {\n visitedViews: [],\n cachedViews: []\n },\n mutations: {\n ADD_VISITED_VIEW: (state, view) => {\n if (state.visitedViews.some(v => v.path === view.path)) return\n state.visitedViews.push(\n Object.assign({}, view, {\n title: view.meta.title || 'no-name'\n })\n )\n },\n ADD_CACHED_VIEW: (state, view) => {\n if (state.cachedViews.includes(view.name)) return\n if (!view.meta.noCache) {\n state.cachedViews.push(view.name)\n }\n },\n\n DEL_VISITED_VIEW: (state, view) => {\n for (const [i, v] of state.visitedViews.entries()) {\n if (v.path === view.path) {\n state.visitedViews.splice(i, 1)\n break\n }\n }\n },\n DEL_CACHED_VIEW: (state, view) => {\n for (const i of state.cachedViews) {\n if (i === view.name) {\n const index = state.cachedViews.indexOf(i)\n state.cachedViews.splice(index, 1)\n break\n }\n }\n },\n\n DEL_OTHERS_VISITED_VIEWS: (state, view) => {\n state.visitedViews = state.visitedViews.filter(v => {\n return v.meta.affix || v.path === view.path\n })\n },\n DEL_OTHERS_CACHED_VIEWS: (state, view) => {\n for (const i of state.cachedViews) {\n if (i === view.name) {\n const index = state.cachedViews.indexOf(i)\n state.cachedViews = state.cachedViews.slice(index, index + 1)\n break\n }\n }\n },\n\n DEL_ALL_VISITED_VIEWS: state => {\n // keep affix tags\n const affixTags = state.visitedViews.filter(tag => tag.meta.affix)\n state.visitedViews = affixTags\n },\n DEL_ALL_CACHED_VIEWS: state => {\n state.cachedViews = []\n },\n\n UPDATE_VISITED_VIEW: (state, view) => {\n for (let v of state.visitedViews) {\n if (v.path === view.path) {\n v = Object.assign(v, view)\n break\n }\n }\n }\n\n },\n actions: {\n addView({ dispatch }, view) {\n dispatch('addVisitedView', view)\n dispatch('addCachedView', view)\n },\n addVisitedView({ commit }, view) {\n commit('ADD_VISITED_VIEW', view)\n },\n addCachedView({ commit }, view) {\n commit('ADD_CACHED_VIEW', view)\n },\n\n delView({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delVisitedView', view)\n dispatch('delCachedView', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delVisitedView({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_VISITED_VIEW', view)\n resolve([...state.visitedViews])\n })\n },\n delCachedView({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_CACHED_VIEW', view)\n resolve([...state.cachedViews])\n })\n },\n\n delOthersViews({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delOthersVisitedViews', view)\n dispatch('delOthersCachedViews', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delOthersVisitedViews({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_OTHERS_VISITED_VIEWS', view)\n resolve([...state.visitedViews])\n })\n },\n delOthersCachedViews({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_OTHERS_CACHED_VIEWS', view)\n resolve([...state.cachedViews])\n })\n },\n\n delAllViews({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delAllVisitedViews', view)\n dispatch('delAllCachedViews', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delAllVisitedViews({ commit, state }) {\n return new Promise(resolve => {\n commit('DEL_ALL_VISITED_VIEWS')\n resolve([...state.visitedViews])\n })\n },\n delAllCachedViews({ commit, state }) {\n return new Promise(resolve => {\n commit('DEL_ALL_CACHED_VIEWS')\n resolve([...state.cachedViews])\n })\n },\n\n updateVisitedView({ commit }, view) {\n commit('UPDATE_VISITED_VIEW', view)\n }\n }\n}\n\nexport default tagsView\n","import request from '@/utils/request'\nimport { baseName } from './utils'\n\nexport async function loginByUsername(username, password, authHost) {\n const appsRequest = await request({\n baseURL: baseName(authHost),\n url: '/api/v1/apps',\n method: 'post',\n data: {\n client_name: `AdminFE_${Math.random()}`,\n redirect_uris: `${window.location.origin}/oauth-callback`,\n scopes: 'read write follow push admin'\n }\n })\n\n const app = appsRequest.data\n\n return request({\n baseURL: baseName(authHost),\n url: '/oauth/token',\n method: 'post',\n data: {\n client_id: app.client_id,\n client_secret: app.client_secret,\n grant_type: 'password',\n username: username,\n password: password\n }\n })\n}\n\nexport function getUserInfo(token, authHost) {\n return request({\n baseURL: baseName(authHost),\n url: '/api/v1/accounts/verify_credentials',\n method: 'get',\n headers: token ? { 'Authorization': `Bearer ${token}` } : {}\n })\n}\n\nconst oauth = { loginByUsername, getUserInfo }\n\nexport default oauth\n","import request from '@/utils/request'\nimport { baseName } from './utils'\n\nexport async function getNodeInfo(authHost) {\n return await request({\n baseURL: baseName(authHost),\n url: `/nodeinfo/2.0.json`,\n method: 'get'\n })\n}\n","import { loginByUsername, getUserInfo } from '@/api/login'\nimport { getNodeInfo } from '@/api/nodeInfo'\nimport { getToken, setToken, removeToken, getAuthHost, setAuthHost, removeAuthHost } from '@/utils/auth'\n\nconst user = {\n state: {\n user: '',\n id: '',\n status: '',\n code: '',\n token: getToken(),\n authHost: getAuthHost(),\n name: '',\n avatar: '',\n introduction: '',\n roles: [],\n setting: {\n articlePlatform: []\n },\n nodeInfo: {}\n },\n\n mutations: {\n SET_CODE: (state, code) => {\n state.code = code\n },\n SET_TOKEN: (state, token) => {\n state.token = token\n },\n SET_INTRODUCTION: (state, introduction) => {\n state.introduction = introduction\n },\n SET_SETTING: (state, setting) => {\n state.setting = setting\n },\n SET_STATUS: (state, status) => {\n state.status = status\n },\n SET_NAME: (state, name) => {\n state.name = name\n },\n SET_AVATAR: (state, avatar) => {\n state.avatar = avatar\n },\n SET_ROLES: (state, roles) => {\n state.roles = roles\n },\n SET_ID: (state, id) => {\n state.id = id\n },\n SET_AUTH_HOST: (state, authHost) => {\n state.authHost = authHost\n },\n SET_NODE_INFO: (state, nodeInfo) => {\n state.nodeInfo = nodeInfo\n }\n },\n\n actions: {\n LoginByUsername({ commit, dispatch }, { username, authHost, password }) {\n return new Promise((resolve, reject) => {\n loginByUsername(username, password, authHost).then(response => {\n const data = response.data\n commit('SET_TOKEN', data.access_token)\n commit('SET_AUTH_HOST', authHost)\n setToken(data.access_token)\n setAuthHost(authHost)\n resolve()\n }).catch(error => {\n dispatch('addErrorLog', { message: error.message })\n reject(error)\n })\n })\n },\n async GetNodeInfo({ commit, dispatch, state }) {\n const nodeInfo = await getNodeInfo(state.authHost)\n\n commit('SET_NODE_INFO', nodeInfo.data)\n dispatch('SetInvitesEnabled', nodeInfo.data.metadata.invitesEnabled)\n },\n GetUserInfo({ commit, state }) {\n return new Promise((resolve, reject) => {\n getUserInfo(state.token, state.authHost).then(response => {\n const data = response.data\n const message = '<span>This user doesn\\`t have admin rights. Try another credentials or see the </span>' +\n '<u><a target=\"_blank\" href=\"https://docs.pleroma.social/backend/administration/CLI_tasks/user/#set-the-value-of-the-given-users-settings\">docs</a></u>' +\n '<span> to find out how to make this user an admin</span>'\n\n if (!data) {\n reject('Verification failed, please login again.')\n }\n\n if (data.pleroma && data.pleroma.is_admin) {\n commit('SET_ROLES', ['admin'])\n } else {\n reject(message)\n }\n\n commit('SET_NAME', data.username)\n commit('SET_ID', data.id)\n commit('SET_AVATAR', data.avatar)\n commit('SET_INTRODUCTION', '')\n resolve(response)\n }).catch(error => {\n reject(error)\n })\n })\n },\n LogOut({ commit }) {\n commit('SET_TOKEN', '')\n commit('SET_ROLES', [])\n removeToken()\n removeAuthHost()\n },\n FedLogOut({ commit }) {\n return new Promise(resolve => {\n commit('SET_TOKEN', '')\n removeToken()\n removeAuthHost()\n resolve()\n })\n },\n async LoginByPleromaFE({ commit, dispatch }, { token }) {\n commit('SET_TOKEN', token)\n setToken(token)\n commit('SET_AUTH_HOST', window.location.host)\n setAuthHost(window.location.host)\n\n dispatch('GetUserInfo')\n }\n }\n}\n\nexport default user\n","import { fetchUser, fetchUserStatuses, fetchUserCredentials, updateUserCredentials } from '@/api/users'\n\nconst userProfile = {\n state: {\n statuses: [],\n statusesLoading: true,\n user: {},\n userCredentials: {},\n userProfileLoading: true\n },\n mutations: {\n SET_STATUSES: (state, statuses) => {\n state.statuses = statuses\n },\n SET_STATUSES_LOADING: (state, status) => {\n state.statusesLoading = status\n },\n SET_USER: (state, user) => {\n state.user = user\n },\n SET_USER_PROFILE_LOADING: (state, status) => {\n state.userProfileLoading = status\n },\n SET_USER_CREDENTIALS: (state, userCredentials) => {\n state.userCredentials = userCredentials\n }\n },\n actions: {\n async FetchUserProfile({ commit, dispatch, getters }, { userId, godmode }) {\n commit('SET_USER_PROFILE_LOADING', true)\n\n const userResponse = await fetchUser(userId, getters.authHost, getters.token)\n commit('SET_USER', userResponse.data)\n commit('SET_USER_PROFILE_LOADING', false)\n\n dispatch('FetchUserStatuses', { userId, godmode })\n },\n FetchUserStatuses({ commit, dispatch, getters }, { userId, godmode }) {\n commit('SET_STATUSES_LOADING', true)\n\n fetchUserStatuses(userId, getters.authHost, godmode, getters.token)\n .then(statuses => dispatch('SetStatuses', statuses.data))\n\n commit('SET_STATUSES_LOADING', false)\n },\n async FetchUserCredentials({ commit, getters }, { nickname }) {\n const userResponse = await fetchUserCredentials(nickname, getters.authHost, getters.token)\n commit('SET_USER_CREDENTIALS', userResponse.data)\n },\n SetStatuses({ commit }, statuses) {\n commit('SET_STATUSES', statuses)\n },\n async UpdateUserCredentials({ dispatch, getters }, { nickname, credentials }) {\n await updateUserCredentials(nickname, credentials, getters.authHost, getters.token)\n dispatch('FetchUserCredentials', { nickname })\n }\n }\n}\n\nexport default userProfile\n","import { Message } from 'element-ui'\nimport i18n from '@/lang'\nimport {\n activateUsers,\n addRight,\n createNewAccount,\n deactivateUsers,\n deleteRight,\n deleteUsers,\n disableMfa,\n fetchUsers,\n getPasswordResetToken,\n searchUsers,\n tagUser,\n untagUser,\n forcePasswordReset,\n approveUserAccount,\n confirmUserEmail,\n resendConfirmationEmail,\n updateUserCredentials\n} from '@/api/users'\nimport { fetchSettings, updateSettings } from '@/api/settings'\n\nconst users = {\n state: {\n fetchedUsers: [],\n loading: true,\n searchQuery: '',\n mrfPolicies: [],\n totalUsersCount: 0,\n currentPage: 1,\n pageSize: 50,\n filters: {\n local: false,\n external: false,\n active: false,\n need_approval: false,\n deactivated: false\n },\n passwordResetToken: {\n token: '',\n link: ''\n }\n },\n mutations: {\n SET_USERS: (state, users) => {\n state.fetchedUsers = users\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SWAP_USERS: (state, users) => {\n const usersWithoutSwapped = users.reduce((acc, user) => {\n return acc.filter(u => u.id !== user.id)\n }, state.fetchedUsers)\n\n if (state.fetchedUsers.length === 0) {\n return\n }\n\n const updatedUsers = [...usersWithoutSwapped, ...users]\n state.fetchedUsers = updatedUsers\n .filter(user => user.nickname && user.id)\n .sort((a, b) => a.nickname.localeCompare(b.nickname))\n .concat(updatedUsers.filter(user => !user.nickname || !user.id))\n },\n SET_COUNT: (state, count) => {\n state.totalUsersCount = count\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_PAGE_SIZE: (state, pageSize) => {\n state.pageSize = pageSize\n },\n SET_PASSWORD_RESET_TOKEN: (state, { token, link }) => {\n state.passwordResetToken.token = token\n state.passwordResetToken.link = link\n },\n SET_SEARCH_QUERY: (state, query) => {\n state.searchQuery = query\n },\n SET_TAG_POLICY: (state, mrfPolicies) => {\n state.mrfPolicies = mrfPolicies\n },\n SET_USERS_FILTERS: (state, filters) => {\n state.filters = filters\n }\n },\n actions: {\n async ActivateUsers({ dispatch, getters }, { users, _userId }) {\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await activateUsers(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId })\n },\n async ApplyChanges({ commit, dispatch, state }, { updatedUsers, callApiFn, userId, statusId }) {\n commit('SWAP_USERS', updatedUsers)\n\n try {\n await callApiFn()\n } catch (_e) {\n return\n } finally {\n dispatch('SearchUsers', { query: state.searchQuery, page: state.currentPage })\n }\n if (statusId) {\n dispatch('FetchStatusAfterUserModeration', statusId)\n } else if (userId) {\n dispatch('FetchUserProfile', { userId, godmode: false })\n }\n dispatch('SuccessMessage')\n },\n async AddRight({ dispatch, getters }, { users, right, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return user.local ? { ...user, roles: { ...user.roles, [right]: true }} : user\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await addRight(nicknames, right, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async AddTag({ dispatch, getters }, { users, tag, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, tags: [...user.tags, tag] }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await tagUser(nicknames, [tag], getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async ApproveUsersAccount({ dispatch, getters }, { users, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, approval_pending: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await approveUserAccount(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n ClearUsersState({ commit }) {\n commit('SET_SEARCH_QUERY', '')\n commit('SET_USERS_FILTERS', { local: false, external: false, active: false, need_approval: false, deactivated: false })\n },\n async ClearFilters({ commit, dispatch, state }) {\n commit('CLEAR_USERS_FILTERS')\n dispatch('SearchUsers', { query: state.searchQuery, page: 1 })\n },\n async ConfirmUsersEmail({ dispatch, getters }, { users, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, confirmation_pending: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await confirmUserEmail(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async CreateNewAccount({ dispatch, getters, state }, { nickname, email, password }) {\n try {\n await createNewAccount(nickname, email, password, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('SearchUsers', { query: state.searchQuery, page: state.currentPage })\n }\n dispatch('SuccessMessage')\n },\n async DeactivateUsers({ dispatch, getters }, { users, _userId }) {\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: true }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await deactivateUsers(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId })\n },\n async DisableMfa({ dispatch, getters }, nickname) {\n try {\n await disableMfa(nickname, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async DeleteRight({ dispatch, getters }, { users, right, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return user.local ? { ...user, roles: { ...user.roles, [right]: false }} : user\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await deleteRight(nicknames, right, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async DeleteUsers({ commit, dispatch, getters, state }, { users, _userId }) {\n const usersNicknames = users.map(user => user.nickname)\n try {\n await deleteUsers(usersNicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: true }\n })\n commit('SWAP_USERS', updatedUsers)\n\n if (_userId) {\n dispatch('FetchUserProfile', { userId: _userId, godmode: false })\n }\n dispatch('SuccessMessage')\n },\n async EnableTagPolicy({ dispatch, getters, state }) {\n const configs = [{\n group: ':pleroma',\n key: ':mrf',\n value: [{ tuple: [':policies', [...state.mrfPolicies, 'Pleroma.Web.ActivityPub.MRF.TagPolicy']] }]\n }]\n await updateSettings(configs, getters.authHost, getters.token)\n\n dispatch('FetchTagPolicySetting')\n },\n async FetchTagPolicySetting({ commit, getters }) {\n const { data } = await fetchSettings(getters.authHost, getters.token)\n const mrfSettings = data.configs.find(el => el.key === ':mrf')\n ? data.configs.find(el => el.key === ':mrf').value\n : []\n const mrfPolicies = mrfSettings.find(el => el.tuple[0] === ':policies')\n ? mrfSettings.find(el => el.tuple[0] === ':policies').tuple[1]\n : []\n\n commit('SET_TAG_POLICY', Array.isArray(mrfPolicies) ? mrfPolicies : [mrfPolicies])\n },\n async FetchUsers({ commit, dispatch, getters, state }, { page }) {\n commit('SET_LOADING', true)\n const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join()\n const response = await fetchUsers(filters, getters.authHost, getters.token, page)\n await dispatch('GetNodeInfo')\n loadUsers(commit, page, response.data)\n },\n async GetPasswordResetToken({ commit, getters }, nickname) {\n const { data } = await getPasswordResetToken(nickname, getters.authHost, getters.token)\n commit('SET_PASSWORD_RESET_TOKEN', data)\n },\n RemovePasswordToken({ commit }) {\n commit('SET_PASSWORD_RESET_TOKEN', { link: '', token: '' })\n },\n async RemoveTag({ dispatch, getters }, { users, tag, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, tags: user.tags.filter(userTag => userTag !== tag) }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await untagUser(nicknames, [tag], getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async RequirePasswordReset({ dispatch, getters }, users) {\n const nicknames = users.map(user => user.nickname)\n try {\n await forcePasswordReset(nicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async ResendConfirmationEmail({ dispatch, getters }, users) {\n const usersNicknames = users.map(user => user.nickname)\n try {\n await resendConfirmationEmail(usersNicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async SearchUsers({ commit, dispatch, state, getters }, { query, page }) {\n if (query.length === 0) {\n commit('SET_SEARCH_QUERY', query)\n dispatch('FetchUsers', { page })\n } else {\n commit('SET_LOADING', true)\n commit('SET_SEARCH_QUERY', query)\n\n const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join()\n const response = await searchUsers(query, filters, getters.authHost, getters.token, page)\n\n loadUsers(commit, page, response.data)\n }\n },\n SuccessMessage() {\n Message.success({\n message: i18n.t('users.completed'),\n duration: 5 * 1000\n })\n },\n async ToggleUsersFilter({ commit, dispatch, state }, filters) {\n const defaultFilters = {\n local: false,\n external: false,\n active: false,\n need_approval: false,\n deactivated: false\n }\n const currentFilters = { ...defaultFilters, ...filters }\n commit('SET_USERS_FILTERS', currentFilters)\n dispatch('SearchUsers', { query: state.searchQuery, page: 1 })\n },\n async UpdateActorType({ dispatch, getters }, { user, type, _userId, _statusId }) {\n const updatedUsers = [{ ...user, actor_type: type }]\n const credentials = { actor_type: type }\n\n const callApiFn = async() => await updateUserCredentials(user.nickname, credentials, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n }\n }\n}\n\nconst loadUsers = (commit, page, { users, count, page_size }) => {\n commit('SET_USERS', users)\n commit('SET_COUNT', count)\n commit('SET_PAGE', page)\n commit('SET_PAGE_SIZE', page_size)\n commit('SET_LOADING', false)\n}\n\nexport default users\n","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport app from './modules/app'\nimport emojiPacks from './modules/emojiPacks'\nimport errorLog from './modules/errorLog'\nimport getters from './getters'\nimport invites from './modules/invites'\nimport mediaProxyCache from './modules/mediaProxyCache'\nimport moderationLog from './modules/moderationLog'\nimport peers from './modules/peers'\nimport permission from './modules/permission'\nimport relays from './modules/relays'\nimport reports from './modules/reports'\nimport settings from './modules/settings'\nimport status from './modules/status'\nimport tagsView from './modules/tagsView'\nimport user from './modules/user'\nimport userProfile from './modules/userProfile'\nimport users from './modules/users'\n\nVue.use(Vuex)\n\nconst store = new Vuex.Store({\n modules: {\n app,\n errorLog,\n emojiPacks,\n invites,\n mediaProxyCache,\n moderationLog,\n peers,\n permission,\n relays,\n reports,\n settings,\n status,\n tagsView,\n user,\n userProfile,\n users\n },\n getters\n})\n\nexport default store\n","import Vue from 'vue'\nimport SvgIcon from '@/components/element-ui/SvgIcon'// svg组件\n\n// register globally\nVue.component('svg-icon', SvgIcon)\n\nconst req = require.context('./svg', false, /\\.svg$/)\nconst requireAll = requireContext => requireContext.keys().map(requireContext)\nrequireAll(req)\n","import Vue from 'vue'\nimport store from './store'\n\n// you can set only in production env show the error-log\nif (process.env.NODE_ENV === 'production') {\n Vue.config.errorHandler = function(err, vm, info, a) {\n // Don't ask me why I use Vue.nextTick, it just a hack.\n // detail see https://forum.vuejs.org/t/dispatch-in-vue-config-errorhandler-has-some-problem/23500\n Vue.nextTick(() => {\n store.dispatch('addErrorLog', {\n err,\n vm,\n info,\n url: window.location.href\n })\n console.error(err, info)\n })\n }\n}\n","import router from './router'\nimport store from './store'\nimport { Message } from 'element-ui'\nimport NProgress from 'nprogress' // progress bar\nimport 'nprogress/nprogress.css'// progress bar style\nimport { getToken } from '@/utils/auth' // getToken from cookie\n\nNProgress.configure({ showSpinner: false })// NProgress Configuration\n\n// permission judge function\nfunction hasPermission(roles, permissionRoles) {\n if (roles.indexOf('admin') >= 0) return true // admin permission passed directly\n if (!permissionRoles) return true\n return roles.some(role => permissionRoles.indexOf(role) >= 0)\n}\n\nconst whiteList = ['/login', '/auth-redirect', '/login-pleroma']// no redirect whitelist\n\nexport const beforeEachRoute = (to, from, next) => {\n NProgress.start() // start progress bar\n if (getToken()) { // determine if there has token\n /* has token*/\n if (to.path === '/login') {\n next({ path: '/' })\n NProgress.done() // if current page is dashboard will not trigger\tafterEach hook, so manually handle it\n } else {\n if (store.getters.roles.length === 0) {\n store.dispatch('GetUserInfo').then(res => {\n const roles = res.data.pleroma.is_admin ? ['admin'] : []\n store.dispatch('GenerateRoutes', { roles }).then(() => {\n router.addRoutes(store.getters.addRouters)\n next({ ...to, replace: true })\n })\n }).catch((err) => {\n store.dispatch('FedLogOut').then(() => {\n Message({\n dangerouslyUseHTMLString: true,\n message: err,\n type: 'error',\n duration: 10 * 1000\n })\n next({ path: '/' })\n })\n })\n } else {\n if (hasPermission(store.getters.roles, to.meta.roles)) {\n next()\n } else {\n next({ path: '/401', replace: true, query: { noGoBack: true }})\n }\n }\n }\n } else {\n /* has no token*/\n if (whiteList.indexOf(to.path) !== -1) {\n next()\n } else {\n next(`/login?redirect=${to.path}`)\n NProgress.done() // if current page is login will not trigger afterEach hook, so manually handle it\n }\n }\n}\nrouter.beforeEach(beforeEachRoute)\n\nrouter.afterEach(() => {\n NProgress.done() // finish progress bar\n})\n","// set function parseTime,formatTime to filter\nexport { parseTime, formatTime } from '@/utils'\n\nfunction pluralize(time, label) {\n if (time === 1) {\n return time + label\n }\n return time + label + 's'\n}\n\nexport function timeAgo(time) {\n const between = Date.now() / 1000 - Number(time)\n if (between < 3600) {\n return pluralize(~~(between / 60), ' minute')\n } else if (between < 86400) {\n return pluralize(~~(between / 3600), ' hour')\n } else {\n return pluralize(~~(between / 86400), ' day')\n }\n}\n\n/* 数字 格式化*/\nexport function numberFormatter(num, digits) {\n const si = [\n { value: 1E18, symbol: 'E' },\n { value: 1E15, symbol: 'P' },\n { value: 1E12, symbol: 'T' },\n { value: 1E9, symbol: 'G' },\n { value: 1E6, symbol: 'M' },\n { value: 1E3, symbol: 'k' }\n ]\n for (let i = 0; i < si.length; i++) {\n if (num >= si[i].value) {\n return (num / si[i].value + 0.1).toFixed(digits).replace(/\\.0+$|(\\.[0-9]*[1-9])0+$/, '$1') + si[i].symbol\n }\n }\n return num.toString()\n}\n\nexport function toThousandFilter(num) {\n return (+num || 0).toString().replace(/^-?\\d+/g, m => m.replace(/(?=(?!\\b)(\\d{3})+$)/g, ','))\n}\n","import Vue from 'vue'\n\nimport Cookies from 'js-cookie'\n\nimport 'normalize.css/normalize.css' // A modern alternative to CSS resets\n\nimport Element from 'element-ui'\nimport 'element-ui/lib/theme-chalk/index.css'\n\nimport '@/styles/index.scss' // global css\n\nimport App from './App'\nimport store from './store'\nimport router from './router'\n\nimport i18n from './lang' // Internationalization\nimport './icons' // icon\nimport './errorLog' // error log\nimport './permission' // permission control\n\nimport * as filters from './filters' // global filters\n\nVue.use(Element, {\n size: Cookies.get('size') || 'medium', // set element-ui default size\n i18n: (key, value) => i18n.t(key, value)\n})\n\n// register global utility filters.\nObject.keys(filters).forEach(key => {\n Vue.filter(key, filters[key])\n})\n\nVue.config.productionTip = false\n\nnew Vue({\n el: '#app',\n router,\n store,\n i18n,\n render: h => h(App)\n})\n","import Cookies from 'js-cookie'\n\nconst TokenKey = 'Admin-Token'\nconst AuthHostKey = 'Auth-Host'\n\nexport function getToken() {\n return Cookies.get(TokenKey)\n}\n\nexport function setToken(token) {\n return Cookies.set(TokenKey, token)\n}\n\nexport function removeToken() {\n return Cookies.remove(TokenKey)\n}\n\nexport function getAuthHost() {\n return Cookies.get(AuthHostKey)\n}\n\nexport function setAuthHost(token) {\n return Cookies.set(AuthHostKey, token)\n}\n\nexport function removeAuthHost() {\n return Cookies.remove(AuthHostKey)\n}\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-excel\",\n \"use\": \"icon-excel-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-excel\\\"><path d=\\\"M78.208 16.576v8.384h38.72v5.376h-38.72v8.704h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.512h38.72v5.376h-38.72v11.136H128v-94.72H78.208zM0 114.368L72.128 128V0L0 13.632v100.736z\\\" /><path d=\\\"M28.672 82.56h-11.2l14.784-23.488-14.08-22.592h11.52l8.192 14.976 8.448-14.976h11.136l-14.08 22.208L58.368 82.56H46.656l-8.768-15.68z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-guide\",\n \"use\": \"icon-guide-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-guide\\\"><path d=\\\"M1.482 70.131l36.204 16.18 69.932-65.485-61.38 70.594 46.435 18.735c1.119.425 2.397-.17 2.797-1.363v-.085L127.998.047 1.322 65.874c-1.12.597-1.519 1.959-1.04 3.151.32.511.72.937 1.2 1.107zm44.676 57.821L64.22 107.26l-18.062-7.834v28.527z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-add_col_after\",\n \"use\": \"icon-tiptap-add_col_after-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-add_col_after\\\">\\n <path d=\\\"M5,14 C7.76005315,14.0033061 9.99669388,16.2399468 10,19 C10,21.7614237 7.76142375,24 5,24 C2.23857625,24 1.77635684e-15,21.7614237 1.77635684e-15,19 C1.77635684e-15,16.2385763 2.23857625,14 5,14 Z M7.5,19.9375 C8.01776695,19.9375 8.4375,19.517767 8.4375,19 C8.4375,18.482233 8.01776695,18.0625 7.5,18.0625 L6.25,18.0625 C6.07741102,18.0625 5.9375,17.922589 5.9375,17.75 L5.9375,16.5 C5.9375,15.982233 5.51776695,15.5625 5,15.5625 C4.48223305,15.5625 4.0625,15.982233 4.0625,16.5 L4.0625,17.75 C4.0625,17.922589 3.92258898,18.0625 3.75,18.0625 L2.5,18.0625 C1.98223305,18.0625 1.5625,18.482233 1.5625,19 C1.5625,19.517767 1.98223305,19.9375 2.5,19.9375 L3.75,19.9375 C3.92258898,19.9375 4.0625,20.077411 4.0625,20.25 L4.0625,21.5 C4.0625,22.017767 4.48223305,22.4375 5,22.4375 C5.51776695,22.4375 5.9375,22.017767 5.9375,21.5 L5.9375,20.25 C5.9375,20.077411 6.07741102,19.9375 6.25,19.9375 L7.5,19.9375 Z M16,19 C16,20.6568542 17.3431458,22 19,22 C20.6568542,22 22,20.6568542 22,19 L22,5 C22,3.34314575 20.6568542,2 19,2 C17.3431458,2 16,3.34314575 16,5 L16,19 Z M14,19 L14,5 C14,2.23857625 16.2385763,0 19,0 C21.7614237,0 24,2.23857625 24,5 L24,19 C24,21.7614237 21.7614237,24 19,24 C16.2385763,24 14,21.7614237 14,19 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-star\",\n \"use\": \"icon-star-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-star\\\"><path d=\\\"M70.66 4.328l14.01 29.693c1.088 2.29 3.177 3.882 5.603 4.25l31.347 4.76c6.087.926 8.528 8.756 4.117 13.247L103.05 79.395c-1.75 1.78-2.544 4.352-2.132 6.867l5.352 32.641c1.043 6.337-5.33 11.182-10.778 8.19l-28.039-15.409a7.13 7.13 0 0 0-6.91 0l-28.039 15.41c-5.448 2.99-11.821-1.854-10.777-8.19l5.352-32.642c.415-2.515-.387-5.088-2.136-6.867L2.264 56.278C-2.146 51.787.286 43.957 6.38 43.031l31.343-4.76c2.419-.368 4.51-1.96 5.595-4.25L57.334 4.328c2.728-5.77 10.605-5.77 13.325 0z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-bold\",\n \"use\": \"icon-tiptap-bold-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-bold\\\"><title>text-bold</title><path d=\\\"M17.194,10.962A6.271,6.271,0,0,0,12.844.248H4.3a1.25,1.25,0,0,0,0,2.5H5.313a.25.25,0,0,1,.25.25V21a.25.25,0,0,1-.25.25H4.3a1.25,1.25,0,1,0,0,2.5h9.963a6.742,6.742,0,0,0,2.93-12.786Zm-4.35-8.214a3.762,3.762,0,0,1,0,7.523H8.313a.25.25,0,0,1-.25-.25V3a.25.25,0,0,1,.25-.25Zm1.42,18.5H8.313a.25.25,0,0,1-.25-.25V13.021a.25.25,0,0,1,.25-.25h4.531c.017,0,.033,0,.049,0l.013,0h1.358a4.239,4.239,0,0,1,0,8.477Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-add_row_after\",\n \"use\": \"icon-tiptap-add_row_after-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-add_row_after\\\">\\n <path d=\\\"M19,0 C21.7600532,0.00330611633 23.9966939,2.23994685 24,5 C24,7.76142375 21.7614237,10 19,10 C16.2385763,10 14,7.76142375 14,5 C14,2.23857625 16.2385763,0 19,0 Z M21.5,5.9375 C22.017767,5.9375 22.4375,5.51776695 22.4375,5 C22.4375,4.48223305 22.017767,4.0625 21.5,4.0625 L20.25,4.0625 C20.077411,4.0625 19.9375,3.92258898 19.9375,3.75 L19.9375,2.5 C19.9375,1.98223305 19.517767,1.5625 19,1.5625 C18.482233,1.5625 18.0625,1.98223305 18.0625,2.5 L18.0625,3.75 C18.0625,3.92258898 17.922589,4.0625 17.75,4.0625 L16.5,4.0625 C15.982233,4.0625 15.5625,4.48223305 15.5625,5 C15.5625,5.51776695 15.982233,5.9375 16.5,5.9375 L17.75,5.9375 C17.922589,5.9375 18.0625,6.07741102 18.0625,6.25 L18.0625,7.5 C18.0625,8.01776695 18.482233,8.4375 19,8.4375 C19.517767,8.4375 19.9375,8.01776695 19.9375,7.5 L19.9375,6.25 C19.9375,6.07741102 20.077411,5.9375 20.25,5.9375 L21.5,5.9375 Z M5,16 C3.34314575,16 2,17.3431458 2,19 C2,20.6568542 3.34314575,22 5,22 L19,22 C20.6568542,22 22,20.6568542 22,19 C22,17.3431458 20.6568542,16 19,16 L5,16 Z M5,14 L19,14 C21.7614237,14 24,16.2385763 24,19 C24,21.7614237 21.7614237,24 19,24 L5,24 C2.23857625,24 3.38176876e-16,21.7614237 0,19 C-1.2263553e-15,16.2385763 2.23857625,14 5,14 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-wechat\",\n \"use\": \"icon-wechat-usage\",\n \"viewBox\": \"0 0 128 110\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 110\\\" id=\\\"icon-wechat\\\"><path d=\\\"M86.635 33.334c1.467 0 2.917.113 4.358.283C87.078 14.392 67.58.111 45.321.111 20.44.111.055 17.987.055 40.687c0 13.104 6.781 23.863 18.115 32.209l-4.527 14.352 15.82-8.364c5.666 1.182 10.207 2.395 15.858 2.395 1.42 0 2.829-.073 4.227-.189-.886-3.19-1.398-6.53-1.398-9.996 0-20.845 16.98-37.76 38.485-37.76zm-24.34-12.936c3.407 0 5.665 2.363 5.665 5.954 0 3.576-2.258 5.97-5.666 5.97-3.392 0-6.795-2.395-6.795-5.97 0-3.591 3.403-5.954 6.795-5.954zM30.616 32.323c-3.393 0-6.818-2.395-6.818-5.971 0-3.591 3.425-5.954 6.818-5.954 3.392 0 5.65 2.363 5.65 5.954 0 3.576-2.258 5.97-5.65 5.97z\\\" /><path d=\\\"M127.945 70.52c0-19.075-18.108-34.623-38.448-34.623-21.537 0-38.5 15.548-38.5 34.623 0 19.108 16.963 34.622 38.5 34.622 4.508 0 9.058-1.2 13.584-2.395l12.414 7.167-3.404-11.923c9.087-7.184 15.854-16.712 15.854-27.471zm-50.928-5.97c-2.254 0-4.53-2.362-4.53-4.773 0-2.378 2.276-4.771 4.53-4.771 3.422 0 5.665 2.393 5.665 4.771 0 2.41-2.243 4.773-5.665 4.773zm24.897 0c-2.24 0-4.498-2.362-4.498-4.773 0-2.378 2.258-4.771 4.498-4.771 3.392 0 5.665 2.393 5.665 4.771 0 2.41-2.273 4.773-5.665 4.773z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import _ from 'lodash'\n\nexport const getBooleanValue = value => {\n if (value === 'true') {\n return true\n } else if (value === 'false') {\n return false\n }\n return value\n}\n\nconst getCurrentValue = (type, value, path) => {\n if (type === 'state') {\n return _.get(value, path)\n } else {\n const [firstSettingName, ...restKeys] = path\n const firstSegment = value[firstSettingName]\n if (restKeys.length === 0 || !firstSegment) {\n return firstSegment || false\n } else {\n const secondSegment = (value, keys) => {\n const [element, ...rest] = keys\n return keys.length === 0 ? value : secondSegment(value[1][element], rest)\n }\n return secondSegment(firstSegment, restKeys)\n }\n }\n}\n\nconst getValueWithoutKey = (key, [type, value]) => {\n if (prependWithСolon(type, value)) {\n return `:${value}`\n } else if (key === ':backends') {\n const index = value.findIndex(el => el === ':ex_syslogger')\n const updatedArray = value.slice()\n if (index !== -1) {\n updatedArray[index] = { 'tuple': ['ExSyslogger', ':ex_syslogger'] }\n }\n return updatedArray\n } else if (key === ':types') {\n return Object.keys(value).reduce((acc, key) => { return { ...acc, [key]: value[key][1] } }, {})\n }\n return value\n}\n\nexport const parseNonTuples = (key, value) => {\n if (key === ':backends') {\n const index = value.findIndex(el => typeof el === 'object' && el.tuple.includes(':ex_syslogger'))\n const updated = value.map((el, i) => i === index ? ':ex_syslogger' : el)\n return updated\n }\n if (key === ':args') {\n return typeof value === 'string' ? [value] : value\n }\n return value\n}\n// REFACTOR\nexport const parseTuples = (tuples, key) => {\n return tuples.reduce((accum, item) => {\n if (key === ':rate_limit') {\n accum[item.tuple[0]] = Array.isArray(item.tuple[1])\n ? item.tuple[1].map(el => el.tuple)\n : item.tuple[1].tuple\n } else if (item.tuple[0] === ':mascots') {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, mascot) => {\n return [...acc, { [mascot.tuple[0]]: { ...mascot.tuple[1], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else if (Array.isArray(item.tuple[1]) &&\n (item.tuple[0] === ':groups' ||\n item.tuple[0] === ':replace' ||\n item.tuple[0] === ':retries' ||\n (item.tuple[0] === ':headers' && key === 'Pleroma.Web.MediaProxy.Invalidation.Http') ||\n item.tuple[0] === ':crontab')) {\n if (item.tuple[0] === ':crontab') {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, group) => {\n return [...acc, { [group.tuple[1]]: { value: group.tuple[0], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, group) => {\n return [...acc, { [group.tuple[0]]: { value: group.tuple[1], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n }\n } else if (item.tuple[0] === ':icons') {\n accum[item.tuple[0]] = item.tuple[1].map(icon => {\n return Object.keys(icon).map(name => {\n return { key: name, value: icon[name], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }\n })\n }, [])\n } else if (item.tuple[0] === ':prune') {\n accum[item.tuple[0]] = item.tuple[1] === ':disabled' ? [item.tuple[1]] : item.tuple[1].tuple\n } else if (item.tuple[0] === ':proxy_url' || item.tuple[0] === ':sender') {\n accum[item.tuple[0]] = parseStringOrTupleValue(item.tuple[0], item.tuple[1])\n } else if (item.tuple[0] === ':args') {\n accum[item.tuple[0]] = parseNonTuples(item.tuple[0], item.tuple[1])\n } else if (Array.isArray(item.tuple[1]) &&\n (typeof item.tuple[1][0] === 'object' && !Array.isArray(item.tuple[1][0])) && item.tuple[1][0]['tuple']) {\n accum[item.tuple[0]] = parseTuples(item.tuple[1], item.tuple[0])\n } else if (Array.isArray(item.tuple[1])) {\n accum[item.tuple[0]] = item.tuple[1]\n } else if (item.tuple[0] === ':ip') {\n accum[item.tuple[0]] = item.tuple[1].tuple.join('.')\n } else if (item.tuple[1] && typeof item.tuple[1] === 'object') {\n if (item.tuple[0] === ':params' || item.tuple[0] === ':match_actor') {\n accum[item.tuple[0]] = Object.keys(item.tuple[1]).reduce((acc, key) => {\n return [...acc, { [key]: { value: item.tuple[1][key], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else {\n accum[item.tuple[0]] = parseObject(item.tuple[1])\n }\n } else {\n accum[item.tuple[0]] = item.tuple[1]\n }\n return accum\n }, {})\n}\n\nconst parseObject = object => {\n return Object.keys(object).reduce((acc, item) => {\n acc[item] = object[item]\n return acc\n }, {})\n}\n\nconst parseStringOrTupleValue = (key, value) => {\n if (key === ':proxy_url') {\n if (value && !Array.isArray(value) &&\n typeof value === 'object' &&\n value.tuple.length === 3 &&\n value.tuple[0] === ':socks5') {\n const [, host, port] = value.tuple\n return { socks5: true, host, port }\n } else if (typeof value === 'string') {\n const [host, port] = value.split(':')\n return { socks5: false, host, port }\n }\n return { socks5: false, host: null, port: null }\n } else if (key === ':sender') {\n if (typeof value === 'string') {\n return { email: value }\n } else if (value &&\n typeof value === 'object' &&\n value.tuple.length === 2) {\n const [nickname, email] = value.tuple\n return { nickname, email }\n }\n }\n}\n\nconst prependWithСolon = (type, value) => {\n return (type === 'atom' && value.length > 0) ||\n (Array.isArray(type) && type.includes('boolean') && type.includes('atom') && typeof value === 'string')\n}\n\nexport const processNested = (valueForState, valueForUpdatedSettings, group, parentKey, parents, settings, updatedSettings) => {\n const [{ key, type }, ...otherParents] = parents\n const path = [group, parentKey, ...parents.reverse().map(parent => parent.key).slice(0, -1)]\n\n let updatedValueForState = valueExists('state', settings, path)\n ? { ...getCurrentValue('state', settings[group][parentKey], parents.map(el => el.key).slice(0, -1)),\n ...{ [key]: valueForState }}\n : { [key]: valueForState }\n let updatedValueForUpdatedSettings = valueExists('updatedSettings', updatedSettings, path)\n ? { ...getCurrentValue('updatedSettings', updatedSettings[group][parentKey], parents.map(el => el.key).slice(0, -1))[1],\n ...{ [key]: [type, valueForUpdatedSettings] }}\n : { [key]: [type, valueForUpdatedSettings] }\n\n if (group === ':mime' && parents[0].key === ':types') {\n updatedValueForState = settings[group][parents[0].key]\n ? { ...settings[group][parents[0].key].value, ...updatedValueForState }\n : updatedValueForState\n updatedValueForUpdatedSettings = settings[group][parents[0].key]\n ? { ...Object.keys(settings[group][parents[0].key].value)\n .reduce((acc, el) => {\n return { ...acc, [el]: [type, settings[group][parents[0].key].value[el]] }\n }, {}),\n ...updatedValueForUpdatedSettings }\n : updatedValueForUpdatedSettings\n }\n\n return otherParents.length === 1\n ? { valueForState: updatedValueForState, valueForUpdatedSettings: updatedValueForUpdatedSettings, setting: otherParents[0] }\n : processNested(updatedValueForState, updatedValueForUpdatedSettings, group, parentKey, otherParents, settings, updatedSettings)\n}\n\nconst valueExists = (type, value, path) => {\n if (type === 'state') {\n return _.get(value, path)\n } else {\n const [group, key, firstSettingName, ...restKeys] = path\n const firstSegment = _.get(value, [group, key, firstSettingName])\n if (restKeys.length === 0 || !firstSegment) {\n return firstSegment || false\n } else {\n const secondSegment = (value, keys) => {\n if (keys.length === 0) {\n return true\n }\n const [element, ...rest] = keys\n return value[1][element] ? secondSegment(value[1][element], rest) : false\n }\n return secondSegment(firstSegment, restKeys)\n }\n }\n}\n\nexport const valueHasTuples = (key, value) => {\n const valueIsArrayOfNonObjects = Array.isArray(value) && value.length > 0 && value.every(el => typeof el !== 'object')\n return key === ':meta' ||\n key === ':types' ||\n key === ':backends' ||\n key === ':compiled_template_engines' ||\n key === ':compiled_format_encoders' ||\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean' ||\n value === null ||\n valueIsArrayOfNonObjects\n}\n\nexport const wrapUpdatedSettings = (group, settings, currentState) => {\n return Object.keys(settings).map((key) => {\n return settings[key]._value\n ? { group, key, value: getValueWithoutKey(key, settings[key]._value) }\n : { group, key, value: wrapValues(settings[key], currentState[group][key]) }\n })\n}\n\nconst wrapValues = (settings, currentState) => {\n return Object.keys(settings).map(setting => {\n const [type, value] = settings[setting]\n if (type === 'keyword' ||\n (Array.isArray(type) && (\n type.includes('keyword') ||\n (type.includes('tuple') && type.includes('list'))\n ))\n ) {\n return { 'tuple': [setting, wrapValues(value, currentState)] }\n } else if (prependWithСolon(type, value)) {\n return { 'tuple': [setting, `:${value}`] }\n } else if (type.includes('tuple') && (type.includes('string') || type.includes('atom'))) {\n return typeof value === 'string'\n ? { 'tuple': [setting, value] }\n : { 'tuple': [setting, { 'tuple': value }] }\n } else if (type === 'reversed_tuple') {\n return { 'tuple': [value, setting] }\n } else if (type === 'map') {\n const mapValue = Object.keys(value).reduce((acc, key) => {\n acc[key] = value[key][1]\n return acc\n }, {})\n return { 'tuple': [setting, { ...currentState[setting], ...mapValue }] }\n } else if (type.includes('map') && !type.includes('list')) {\n const mapValue = Object.keys(value).reduce((acc, key) => {\n acc[key] = value[key][1]\n return acc\n }, {})\n return { 'tuple': [setting, mapValue] }\n } else if (setting === ':ip') {\n const ip = value.split('.').map(s => parseInt(s, 10))\n return { 'tuple': [setting, { 'tuple': ip }] }\n } else {\n return { 'tuple': [setting, value] }\n }\n })\n}\n\nexport const formSearchObject = description => {\n const parseNestedSettings = (description, label, key) => description.reduce((acc, setting) => {\n const searchArray = _.compact([setting.key, setting.label, setting.description]).map(el => el.toLowerCase())\n const resultObject = { label: setting.label, key: setting.key || setting.group, groupKey: key, groupLabel: label, search: searchArray }\n if (setting.children) {\n const updatedAcc = [...acc, resultObject]\n return [...updatedAcc, ...parseNestedSettings(setting.children, label, key)]\n }\n return [...acc, resultObject]\n }, [])\n\n const processedDescription = description.reduce((acc, setting) => {\n const searchArray = _.compact([setting.key, setting.label, setting.description]).map(el => el.toLowerCase())\n const resultObject = { label: setting.label, key: setting.key || setting.group, groupKey: setting.key || setting.group, groupLabel: setting.label, search: searchArray }\n if (setting.children) {\n const updatedAcc = !setting.key && setting.group === ':pleroma' ? acc : [...acc, resultObject]\n return [...updatedAcc, ...parseNestedSettings(setting.children, setting.label, setting.key || setting.group)]\n }\n return !setting.key && setting.group === ':pleroma' ? acc : [...acc, resultObject]\n }, [])\n\n const searchDataForEditableDocs = [{\n groupKey: ':instance_panel',\n groupLabel: 'Instance Panel',\n key: ':instance_panel',\n label: 'Instance Panel',\n search: ['Instance Panel', ':instance_panel']\n }, {\n groupKey: ':terms_of_services',\n groupLabel: 'Terms of Services',\n key: ':terms_of_services',\n label: 'Terms of Services',\n search: ['Terms of Services', ':terms_of_services']\n }]\n return processedDescription.concat(searchDataForEditableDocs)\n}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-italic\",\n \"use\": \"icon-tiptap-italic-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-italic\\\"><title>text-italic</title><path d=\\\"M22.5.248H14.863a1.25,1.25,0,0,0,0,2.5h1.086a.25.25,0,0,1,.211.384L4.78,21.017a.5.5,0,0,1-.422.231H1.5a1.25,1.25,0,0,0,0,2.5H9.137a1.25,1.25,0,0,0,0-2.5H8.051a.25.25,0,0,1-.211-.384L19.22,2.98a.5.5,0,0,1,.422-.232H22.5a1.25,1.25,0,0,0,0-2.5Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-size\",\n \"use\": \"icon-size-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-size\\\"><path d=\\\"M0 54.857h54.796v18.286H36.531V128H18.265V73.143H0V54.857zm127.857-36.571H91.935V128H72.456V18.286H36.534V0h91.326l-.003 18.286z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-paragraph\",\n \"use\": \"icon-tiptap-paragraph-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-paragraph\\\"><title>paragraph</title><path d=\\\"M22.5.248H7.228a6.977,6.977,0,1,0,0,13.954H9.546a.25.25,0,0,1,.25.25V22.5a1.25,1.25,0,0,0,2.5,0V3a.25.25,0,0,1,.25-.25h3.682a.25.25,0,0,1,.25.25V22.5a1.25,1.25,0,0,0,2.5,0V3a.249.249,0,0,1,.25-.25H22.5a1.25,1.25,0,0,0,0-2.5ZM9.8,11.452a.25.25,0,0,1-.25.25H7.228a4.477,4.477,0,1,1,0-8.954H9.546A.25.25,0,0,1,9.8,3Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-image\",\n \"use\": \"icon-tiptap-image-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-image\\\"><title>paginate-filter-picture-alternate</title><circle cx=\\\"9.75\\\" cy=\\\"6.247\\\" r=\\\"2.25\\\" /><path d=\\\"M16.916,8.71A1.027,1.027,0,0,0,16,8.158a1.007,1.007,0,0,0-.892.586L13.55,12.178a.249.249,0,0,1-.422.053l-.82-1.024a1,1,0,0,0-.813-.376,1.007,1.007,0,0,0-.787.426L7.59,15.71A.5.5,0,0,0,8,16.5H20a.5.5,0,0,0,.425-.237.5.5,0,0,0,.022-.486Z\\\" /><path d=\\\"M22,0H5.5a2,2,0,0,0-2,2V18.5a2,2,0,0,0,2,2H22a2,2,0,0,0,2-2V2A2,2,0,0,0,22,0Zm-.145,18.354a.5.5,0,0,1-.354.146H6a.5.5,0,0,1-.5-.5V2.5A.5.5,0,0,1,6,2H21.5a.5.5,0,0,1,.5.5V18A.5.5,0,0,1,21.855,18.351Z\\\" /><path d=\\\"M19.5,22H2.5a.5.5,0,0,1-.5-.5V4.5a1,1,0,0,0-2,0V22a2,2,0,0,0,2,2H19.5a1,1,0,0,0,0-2Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-zip\",\n \"use\": \"icon-zip-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-zip\\\"><path d=\\\"M78.527 116.793c.178.008.348.024.527.024h40.233c4.711-.005 8.53-3.677 8.534-8.21V18.895c-.004-4.532-3.823-8.204-8.534-8.209H79.054c-.179 0-.353.016-.527.024V0L0 10.082v107.406l78.527 10.342v-11.037zm0-101.362c.174-.024.348-.052.527-.052h40.233c2.018 0 3.659 1.578 3.659 3.52v89.713c-.003 1.942-1.64 3.517-3.659 3.519H79.054c-.179 0-.353-.028-.527-.052V15.431zM30.262 75.757l-18.721-.46V72.37l11.3-16.673v-.148l-10.266.164v-4.51l17.504-.44v3.264L18.696 70.76v.144l11.566.176v4.678zm9.419.231l-5.823-.144V50.671l5.823-.144v25.461zm22.255-11.632c-2.168 1.922-5.353 2.76-9.02 2.736-.702.004-1.402-.04-2.097-.131v9.303l-5.997-.148V50.743c1.852-.352 4.473-.647 8.218-.743 3.838-.096 6.608.539 8.48 1.913 1.807 1.306 3.032 3.5 3.032 6.112s-.926 4.833-2.612 6.331h-.004zM53.36 54.45c-.856-.01-1.71.083-2.541.275v7.682c.523.116 1.167.152 2.06.152 3.301-.004 5.36-1.614 5.36-4.314 0-2.425-1.772-3.843-4.875-3.791l-.004-.004zm39.847-37.066h9.564v3.795h-9.564v-3.795zm-9.568 5.68h9.564v3.8h-9.564v-3.8zm9.568 6.216h9.564v3.799h-9.564V29.28zm0 12h9.564v3.794h-9.564V41.28zm-9.568-6.096h9.564v3.795h-9.564v-3.795zm9.472 47.064c2.512 0 4.921-.96 6.697-2.67 1.776-1.708 2.773-4.026 2.772-6.442l-1.748-15.263c0-5.033-2.492-9.112-7.725-9.112-5.232 0-7.72 4.079-7.72 9.112l-1.752 15.263c-.001 2.417.996 4.735 2.773 6.444 1.777 1.71 4.187 2.669 6.7 2.668h.003zm-3.135-16.75h6.27v12.743h-6.27V65.5z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-ol\",\n \"use\": \"icon-tiptap-ol-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-ol\\\"><title>list-numbers</title><path d=\\\"M7.75,4.5h15a1,1,0,0,0,0-2h-15a1,1,0,0,0,0,2Z\\\" /><path d=\\\"M22.75,11h-15a1,1,0,1,0,0,2h15a1,1,0,0,0,0-2Z\\\" /><path d=\\\"M22.75,19.5h-15a1,1,0,0,0,0,2h15a1,1,0,0,0,0-2Z\\\" /><path d=\\\"M2.212,17.248A2,2,0,0,0,.279,18.732a.75.75,0,1,0,1.45.386.5.5,0,1,1,.483.63.75.75,0,1,0,0,1.5.5.5,0,1,1-.482.635.75.75,0,1,0-1.445.4,2,2,0,1,0,3.589-1.648.251.251,0,0,1,0-.278,2,2,0,0,0-1.662-3.111Z\\\" /><path d=\\\"M4.25,10.748a2,2,0,0,0-4,0,.75.75,0,0,0,1.5,0,.5.5,0,0,1,1,0,1.031,1.031,0,0,1-.227.645L.414,14.029A.75.75,0,0,0,1,15.248H3.5a.75.75,0,0,0,0-1.5H3.081a.249.249,0,0,1-.195-.406L3.7,12.33A2.544,2.544,0,0,0,4.25,10.748Z\\\" /><path d=\\\"M4,5.248H3.75A.25.25,0,0,1,3.5,5V1.623A1.377,1.377,0,0,0,2.125.248H1.5a.75.75,0,0,0,0,1.5h.25A.25.25,0,0,1,2,2V5a.25.25,0,0,1-.25.25H1.5a.75.75,0,0,0,0,1.5H4a.75.75,0,0,0,0-1.5Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tab\",\n \"use\": \"icon-tab-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-tab\\\"><path d=\\\"M78.921.052H49.08c-1.865 0-3.198 1.599-3.198 3.464v6.661c0 1.865 1.6 3.464 3.198 3.464h29.84c1.865 0 3.198-1.599 3.198-3.464V3.516C82.385 1.65 80.786.052 78.92.052zm45.563 0H94.642c-1.865 0-3.464 1.599-3.464 3.464v6.661c0 1.865 1.599 3.464 3.464 3.464h29.842c1.865-.266 3.464-1.599 3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464zm0 22.382H40.02c-1.866 0-3.464-1.599-3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464H3.516C1.65.052.052 1.651.052 3.516V124.75c0 1.598 1.599 3.197 3.464 3.197h120.968c1.865 0 3.464-1.599 3.464-3.464V25.898c0-1.865-1.599-3.464-3.464-3.464z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-search\",\n \"use\": \"icon-search-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-search\\\"><path d=\\\"M124.884 109.812L94.256 79.166c-.357-.357-.757-.629-1.129-.914a50.366 50.366 0 0 0 8.186-27.59C101.327 22.689 78.656 0 50.67 0 22.685 0 0 22.688 0 50.663c0 27.989 22.685 50.663 50.656 50.663 10.186 0 19.643-3.03 27.6-8.201.286.385.557.771.9 1.114l30.628 30.632a10.633 10.633 0 0 0 7.543 3.129c2.728 0 5.457-1.043 7.543-3.115 4.171-4.157 4.171-10.915.014-15.073M50.671 85.338C31.557 85.338 16 69.78 16 50.663c0-19.102 15.557-34.661 34.67-34.661 19.115 0 34.657 15.559 34.657 34.675 0 19.102-15.557 34.661-34.656 34.661\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tree\",\n \"use\": \"icon-tree-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-tree\\\"><path d=\\\"M126.713 90.023c.858.985 1.287 2.134 1.287 3.447v29.553c0 1.423-.429 2.6-1.287 3.53-.858.93-1.907 1.395-3.146 1.395H97.824c-1.145 0-2.146-.465-3.004-1.395-.858-.93-1.287-2.107-1.287-3.53V93.47c0-.875.19-1.696.572-2.462.382-.766.906-1.368 1.573-1.806a3.84 3.84 0 0 1 2.146-.657h9.725V69.007a3.84 3.84 0 0 0-.43-1.806 3.569 3.569 0 0 0-1.143-1.313 2.714 2.714 0 0 0-1.573-.492h-36.47v23.149h9.725c1.144 0 2.145.492 3.004 1.478.858.985 1.287 2.134 1.287 3.447v29.553c0 .876-.191 1.696-.573 2.463-.38.766-.905 1.368-1.573 1.806a3.84 3.84 0 0 1-2.145.656H51.915a3.84 3.84 0 0 1-2.145-.656c-.668-.438-1.216-1.04-1.645-1.806a4.96 4.96 0 0 1-.644-2.463V93.47c0-1.313.43-2.462 1.288-3.447.858-.986 1.907-1.478 3.146-1.478h9.582v-23.15h-37.9c-.953 0-1.74.356-2.359 1.068-.62.711-.93 1.56-.93 2.544v19.538h9.726c1.239 0 2.264.492 3.074 1.478.81.985 1.216 2.134 1.216 3.447v29.553c0 1.423-.405 2.6-1.216 3.53-.81.93-1.835 1.395-3.074 1.395H4.29c-.476 0-.93-.082-1.358-.246a4.1 4.1 0 0 1-1.144-.657 4.658 4.658 0 0 1-.93-1.067 5.186 5.186 0 0 1-.643-1.395 5.566 5.566 0 0 1-.215-1.56V93.47c0-.437.048-.875.143-1.313a3.95 3.95 0 0 1 .429-1.15c.19-.328.429-.656.715-.984.286-.329.572-.602.858-.821.286-.22.62-.383 1.001-.493.382-.11.763-.164 1.144-.164h9.726V61.619c0-.985.31-1.833.93-2.544.619-.712 1.358-1.068 2.216-1.068h44.335V39.62h-9.582c-1.24 0-2.288-.492-3.146-1.477a5.09 5.09 0 0 1-1.287-3.448V5.14c0-1.423.429-2.627 1.287-3.612.858-.985 1.907-1.477 3.146-1.477h25.743c.763 0 1.478.246 2.145.739a5.17 5.17 0 0 1 1.573 1.888c.382.766.573 1.587.573 2.462v29.553c0 1.313-.43 2.463-1.287 3.448-.859.985-1.86 1.477-3.004 1.477h-9.725v18.389h42.762c.954 0 1.74.355 2.36 1.067.62.711.93 1.56.93 2.545v26.925h9.582c1.239 0 2.288.492 3.146 1.478z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-hr\",\n \"use\": \"icon-tiptap-hr-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-hr\\\">\\n <path d=\\\"M5,13 C4.44771525,13 4,12.5522847 4,12 C4,11.4477153 4.44771525,11 5,11 L19,11 C19.5522847,11 20,11.4477153 20,12 C20,12.5522847 19.5522847,13 19,13 L5,13 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-ul\",\n \"use\": \"icon-tiptap-ul-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-ul\\\"><title>list-bullets</title><circle cx=\\\"2.5\\\" cy=\\\"3.998\\\" r=\\\"2.5\\\" /><path d=\\\"M8.5,5H23a1,1,0,0,0,0-2H8.5a1,1,0,0,0,0,2Z\\\" /><circle cx=\\\"2.5\\\" cy=\\\"11.998\\\" r=\\\"2.5\\\" /><path d=\\\"M23,11H8.5a1,1,0,0,0,0,2H23a1,1,0,0,0,0-2Z\\\" /><circle cx=\\\"2.5\\\" cy=\\\"19.998\\\" r=\\\"2.5\\\" /><path d=\\\"M23,19H8.5a1,1,0,0,0,0,2H23a1,1,0,0,0,0-2Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-documentation\",\n \"use\": \"icon-documentation-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-documentation\\\"><path d=\\\"M71.984 44.815H115.9L71.984 9.642v35.173zM16.094.05h63.875l47.906 38.37v76.74c0 3.392-1.682 6.645-4.677 9.044-2.995 2.399-7.056 3.746-11.292 3.746H16.094c-4.236 0-8.297-1.347-11.292-3.746-2.995-2.399-4.677-5.652-4.677-9.044V12.84C.125 5.742 7.23.05 16.094.05zm71.86 102.32V89.58h-71.86v12.79h71.86zm23.952-25.58V64H16.094v12.79h95.812z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-strike\",\n \"use\": \"icon-tiptap-strike-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-strike\\\"><title>text-strike-through</title><path d=\\\"M23.75,12.952A1.25,1.25,0,0,0,22.5,11.7H13.564a.492.492,0,0,1-.282-.09c-.722-.513-1.482-.981-2.218-1.432-2.8-1.715-4.5-2.9-4.5-4.863,0-2.235,2.207-2.569,3.523-2.569a4.54,4.54,0,0,1,3.081.764A2.662,2.662,0,0,1,13.615,5.5l0,.3a1.25,1.25,0,1,0,2.5,0l0-.268A4.887,4.887,0,0,0,14.95,1.755C13.949.741,12.359.248,10.091.248c-3.658,0-6.023,1.989-6.023,5.069,0,2.773,1.892,4.512,4,5.927a.25.25,0,0,1-.139.458H1.5a1.25,1.25,0,0,0,0,2.5H12.477a.251.251,0,0,1,.159.058,4.339,4.339,0,0,1,1.932,3.466c0,3.268-3.426,3.522-4.477,3.522-1.814,0-3.139-.405-3.834-1.173a3.394,3.394,0,0,1-.65-2.7,1.25,1.25,0,0,0-2.488-.246A5.76,5.76,0,0,0,4.4,21.753c1.2,1.324,3.114,2,5.688,2,4.174,0,6.977-2.42,6.977-6.022a6.059,6.059,0,0,0-.849-3.147.25.25,0,0,1,.216-.377H22.5A1.25,1.25,0,0,0,23.75,12.952Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-undo\",\n \"use\": \"icon-tiptap-undo-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-undo\\\"><title>undo</title><path d=\\\"M17.786,3.77A12.542,12.542,0,0,0,4.821,2.905a.249.249,0,0,1-.292-.045L1.937.269A.507.507,0,0,0,1.392.16a.5.5,0,0,0-.308.462v6.7a.5.5,0,0,0,.5.5h6.7a.5.5,0,0,0,.354-.854L6.783,5.115a.253.253,0,0,1-.068-.228.249.249,0,0,1,.152-.181,10,10,0,0,1,9.466,1.1,9.759,9.759,0,0,1,.094,15.809A1.25,1.25,0,0,0,17.9,23.631a12.122,12.122,0,0,0,5.013-9.961A12.125,12.125,0,0,0,17.786,3.77Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-link\",\n \"use\": \"icon-tiptap-link-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-link\\\"><title>hyperlink-2</title><path d=\\\"M12.406,14.905a1,1,0,0,0-.543,1.307,1,1,0,0,1-.217,1.09L8.818,20.131a2,2,0,0,1-2.828,0L3.868,18.01a2,2,0,0,1,0-2.829L6.7,12.353a1.013,1.013,0,0,1,1.091-.217,1,1,0,0,0,.763-1.849,3.034,3.034,0,0,0-3.268.652L2.454,13.767a4.006,4.006,0,0,0,0,5.657l2.122,2.121a4,4,0,0,0,5.656,0l2.829-2.828a3.008,3.008,0,0,0,.651-3.27A1,1,0,0,0,12.406,14.905Z\\\" /><path d=\\\"M7.757,16.241a1.011,1.011,0,0,0,1.414,0L16.95,8.463a1,1,0,0,0-1.414-1.414L7.757,14.827A1,1,0,0,0,7.757,16.241Z\\\" /><path d=\\\"M21.546,4.574,19.425,2.453a4.006,4.006,0,0,0-5.657,0L10.939,5.281a3.006,3.006,0,0,0-.651,3.269,1,1,0,1,0,1.849-.764A1,1,0,0,1,12.354,6.7l2.828-2.828a2,2,0,0,1,2.829,0l2.121,2.121a2,2,0,0,1,0,2.829L17.3,11.645a1.015,1.015,0,0,1-1.091.217,1,1,0,0,0-.765,1.849,3.026,3.026,0,0,0,3.27-.651l2.828-2.828A4.007,4.007,0,0,0,21.546,4.574Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-drag\",\n \"use\": \"icon-drag-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-drag\\\"><path d=\\\"M73.137 29.08h-9.209 29.7L63.886.093 34.373 29.08h20.49v27.035H27.238v17.948h27.625v27.133h18.274V74.063h27.41V56.115h-27.41V29.08zm-9.245 98.827l27.518-26.711H36.59l27.302 26.71zM.042 64.982l27.196 27.029V38.167L.042 64.982zm100.505-26.815V92.01l27.41-27.029-27.41-26.815z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-fullscreen\",\n \"use\": \"icon-fullscreen-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-fullscreen\\\"><path d=\\\"M38.47 52L52 38.462l-23.648-23.67L43.209 0H.035L0 43.137l14.757-14.865L38.47 52zm74.773 47.726L89.526 76 76 89.536l23.648 23.672L84.795 128h43.174L128 84.863l-14.757 14.863zM89.538 52l23.668-23.648L128 43.207V.038L84.866 0 99.73 14.76 76 38.472 89.538 52zM38.46 76L14.792 99.651 0 84.794v43.173l43.137.033-14.865-14.757L52 89.53 38.46 76z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\nimport Cookies from 'js-cookie'\nimport elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang\nimport elementZhLocale from 'element-ui/lib/locale/lang/zh-CN' // element-ui lang\nimport elementEsLocale from 'element-ui/lib/locale/lang/es' // element-ui lang\nimport enLocale from './en'\nimport zhLocale from './zh'\nimport esLocale from './es'\nimport ocLocale from './oc'\n\nVue.use(VueI18n)\n\nconst messages = {\n en: {\n ...enLocale,\n ...elementEnLocale\n },\n zh: {\n ...zhLocale,\n ...elementZhLocale\n },\n es: {\n ...esLocale,\n ...elementEsLocale\n },\n oc: {\n ...ocLocale\n }\n}\n\nconst i18n = new VueI18n({\n // set locale\n // options: en | zh | es | oc\n locale: Cookies.get('language') || 'en',\n // set locale messages\n messages\n})\n\nexport default i18n\n","export default {\n route: {\n dashboard: 'Dashboard',\n introduction: 'Introduction',\n documentation: 'Documentation',\n guide: 'Guide',\n permission: 'Permission',\n pagePermission: 'Page Permission',\n directivePermission: 'Directive Permission',\n icons: 'Icons',\n components: 'Components',\n componentIndex: 'Introduction',\n markdown: 'Markdown',\n jsonEditor: 'JSON Editor',\n dndList: 'Dnd List',\n splitPane: 'SplitPane',\n avatarUpload: 'Avatar Upload',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'BackToTop',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Charts',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Line Chart',\n mixChart: 'Mix Chart',\n example: 'Example',\n nested: 'Nested Routes',\n menu1: 'Menu 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menu 2',\n Table: 'Table',\n dynamicTable: 'Dynamic Table',\n dragTable: 'Drag Table',\n inlineEditTable: 'Inline Edit',\n complexTable: 'Complex Table',\n treeTable: 'Tree Table',\n customTreeTable: 'Custom TreeTable',\n tab: 'Tab',\n form: 'Form',\n createArticle: 'Create Article',\n editArticle: 'Edit Article',\n articleList: 'Article List',\n errorPages: 'Error Pages',\n page401: '401',\n page404: '404',\n errorLog: 'Error Log',\n excel: 'Excel',\n exportExcel: 'Export Excel',\n selectExcel: 'Export Selected',\n uploadExcel: 'Upload Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Export Zip',\n theme: 'Theme',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'External Link',\n users: 'Users',\n reports: 'Reports',\n invites: 'Invites',\n statuses: 'Statuses',\n settings: 'Settings',\n moderationLog: 'Moderation Log',\n mediaProxyCache: 'MediaProxy Cache',\n 'emoji-packs': 'Emoji packs'\n },\n navbar: {\n logOut: 'Log Out',\n dashboard: 'Dashboard',\n github: 'Github',\n theme: 'Theme',\n size: 'Global Size'\n },\n login: {\n title: 'Login Form',\n logIn: 'Log in',\n logInViaPleromaFE: 'Log in via PleromaFE',\n username: 'username@host',\n password: 'password',\n omitHostname: 'omit hostname if Pleroma is located on this domain',\n errorMessage: 'Username must contain username and host, e.g. john@pleroma.social',\n any: 'any',\n thirdparty: 'Or connect with',\n pleromaFELoginFailed: 'Failed to login via PleromaFE, please login with username/password',\n pleromaFELoginSucceed: 'Logged in via PleromaFE'\n },\n mediaProxyCache: {\n mediaProxyCache: 'MediaProxy Cache',\n ban: 'Ban',\n url: 'URL',\n evict: 'Evict',\n evictedMessage: 'This URL was evicted',\n actions: 'Actions',\n remove: 'Remove from Cachex',\n evictObjectsHeader: 'Evict object from the MediaProxy cache',\n listBannedUrlsHeader: 'List of all banned MediaProxy URLs',\n multipleInput: 'You can enter a single URL or several comma separated links',\n removeSelected: 'Remove Selected',\n enable: 'Enable',\n invalidationAndMediaProxy: 'MediaProxy and Invalidation to evict and ban MediaProxy objects',\n confirmEnablingMediaProxy: 'Are you sure you want to enable Media Proxy and Media Cache object Invalidation?',\n enableMediaProxySuccessMessage: 'Media Proxy and Media Cache object Invalidation were enabled'\n },\n documentation: {\n documentation: 'Documentation',\n github: 'Github Repository'\n },\n permission: {\n roles: 'Your roles',\n switchRoles: 'Switch roles',\n tips: 'In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if.'\n },\n guide: {\n description: 'The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ',\n button: 'Show Guide'\n },\n components: {\n documentation: 'Documentation',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Fixed header, sorted by header order',\n dynamicTips2: 'Not fixed header, sorted by click order',\n dragTips1: 'The default order',\n dragTips2: 'The after dragging order',\n title: 'Title',\n importance: 'Imp',\n type: 'Type',\n remark: 'Remark',\n search: 'Search',\n add: 'Add',\n export: 'Export',\n reviewer: 'reviewer',\n id: 'ID',\n date: 'Date',\n author: 'Author',\n readings: 'Readings',\n status: 'Status',\n actions: 'Actions',\n edit: 'Edit',\n publish: 'Publish',\n draft: 'Draft',\n delete: 'Delete',\n cancel: 'Cancel',\n confirm: 'Confirm',\n unfollow: 'Unfollow'\n },\n errorLog: {\n tips: 'Please click the bug icon in the upper right corner',\n description: 'Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.',\n documentation: 'Document introduction'\n },\n excel: {\n export: 'Export',\n selectedExport: 'Export Selected Items',\n placeholder: 'Please enter the file name(default excel-list)'\n },\n zip: {\n export: 'Export',\n placeholder: 'Please enter the file name(default file)'\n },\n pdf: {\n tips: 'Here we use window.print() to implement the feature of downloading pdf.'\n },\n theme: {\n change: 'Change Theme',\n documentation: 'Theme documentation',\n tips: 'Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details.'\n },\n tagsView: {\n refresh: 'Refresh',\n close: 'Close',\n closeOthers: 'Close Others',\n closeAll: 'Close All'\n },\n users: {\n users: 'Users',\n localUsersOnly: 'Local users only',\n search: 'Search',\n id: 'ID',\n name: 'Name',\n status: 'Status',\n local: 'Local',\n external: 'External',\n deactivated: 'Deactivated',\n active: 'Active',\n unapproved: 'Pending',\n unconfirmed: 'Unconfirmed',\n actions: 'Actions',\n activate: 'Activate',\n deactivate: 'Deactivate',\n admin: 'Admin',\n moderator: 'Moderator',\n moderation: 'Moderation',\n revokeAdmin: 'Revoke Admin',\n grantAdmin: 'Grant Admin',\n revokeModerator: 'Revoke Moderator',\n grantModerator: 'Grant Moderator',\n activateAccount: 'Activate Account',\n activateAccounts: 'Activate Accounts',\n deactivateAccount: 'Deactivate Account',\n deactivateAccounts: 'Deactivate Accounts',\n deleteAccount: 'Delete Account',\n deleteAccounts: 'Delete Accounts',\n forceNsfw: 'Force posts to be NSFW',\n stripMedia: 'Force posts to not have media',\n forceUnlisted: 'Force posts to be unlisted',\n sandbox: 'Force posts to be followers-only',\n disableRemoteSubscription: 'Disallow following user from remote instances',\n disableRemoteSubscriptionForMultiple: 'Disallow following users from remote instances',\n disableAnySubscription: 'Disallow following user at all',\n disableAnySubscriptionForMultiple: 'Disallow following users at all',\n requirePasswordReset: 'Require password reset on next login',\n disableMfa: 'Disable multi-factor authentication',\n selectUsers: 'Select users to apply actions to multiple users',\n moderateUser: 'Moderate user',\n moderateUsers: 'Moderate multiple users',\n createAccount: 'Create new account',\n apply: 'Apply',\n remove: 'Remove',\n grantRightConfirmation: 'Are you sure you want to grant {right} rights to all selected users?',\n revokeRightConfirmation: 'Are you sure you want to revoke {right} rights from all selected users?',\n activateMultipleUsersConfirmation: 'Are you sure you want to activate accounts of all selected users?',\n deactivateMultipleUsersConfirmation: 'Are you sure you want to deactivate accounts of all selected users?',\n deleteUserConfirmation: 'Are you sure you want to delete this account? This action cannot be undone.',\n rejectAccountConfirmation: 'Are you sure you want to reject this account? This account will be deleted and it cannot be undone.',\n deleteMultipleUsersConfirmation: 'Are you sure you want to delete accounts of all selected users? This action cannot be undone.',\n addTagForMultipleUsersConfirmation: 'Are you sure you want to apply tag to all selected users?',\n removeTagFromMultipleUsersConfirmation: 'Are you sure you want to remove tag from all selected users?',\n requirePasswordResetConfirmation: 'Are you sure you want to require password reset for all selected users?',\n approveAccountsConfirmation: 'Are you sure you want to approve accounts for all selected users?',\n rejectAccountsConfirmation: 'Are you sure you want to reject accounts for all selected users? These accounts will be deleted and it cannot be undone.',\n confirmAccountsConfirmation: 'Are you sure you want to confirm emails for all selected users?',\n resendEmailConfirmation: 'Are you sure you want to resend confirmation email for all selected users?',\n mailerMustBeEnabled: 'To require user\\'s password reset you must enable mailer.',\n ok: 'Okay',\n completed: 'Completed',\n cancel: 'Cancel',\n canceled: 'Canceled',\n username: 'Username',\n email: 'E-mail',\n password: 'Password',\n create: 'Create',\n submitFormError: 'There are invalid values in the form. Please fix them before continuing.',\n emptyEmailError: 'Please input the e-mail',\n invalidEmailError: 'Please input valid e-mail',\n emptyPasswordError: 'Please input the password',\n emptyNicknameError: 'Please input the username',\n invalidNicknameError: 'Username can include \"a-z\", \"A-Z\" and \"0-9\" characters',\n getPasswordResetToken: 'Get password reset token',\n passwordResetTokenCreated: 'Password reset token was created',\n accountCreated: 'New account was created!',\n approveAccount: 'Approve account',\n approveAccounts: 'Approve accounts',\n unapprovedAccount: 'User account is pending approval',\n unconfirmedEmail: 'User didn\\'t confirm the email',\n confirmAccount: 'Confirm account',\n confirmAccounts: 'Confirm accounts',\n rejectAccount: 'Reject account',\n rejectAccounts: 'Reject accounts',\n resendConfirmation: 'Resend confirmation email',\n invalidAccount: 'This account has invalid nickname and can\\'t be modified',\n invalidNickname: 'invalid nickname',\n passwordResetTokenGenerated: 'Password reset token was generated:',\n linkToResetPassword: 'You can also use this link to reset password:',\n registrationReason: 'Registration Reason',\n service: 'Service',\n person: 'Person',\n enableTagPolicy: 'Enable MRF TagPolicy to manage user tags',\n confirmEnablingTagPolicy: 'Are you sure you want to add TagPolicy to the list of enabled MRF policies?',\n enableTagPolicySuccessMessage: 'MRF TagPolicy was enabled'\n },\n statuses: {\n statuses: 'Statuses',\n instanceFilter: 'Instance filter',\n loadMore: 'Load more',\n noInstances: 'No other instances found',\n onlyLocalStatuses: 'Show only local statuses',\n showPrivateStatuses: 'Show private statuses',\n direct: 'Direct',\n private: 'Private',\n public: 'Public',\n unlisted: 'Unlisted',\n openStatusInInstance: 'Open status in instance'\n },\n userProfile: {\n tags: 'Tags',\n moderator: 'Moderator',\n admin: 'Admin',\n local: 'Local',\n external: 'External',\n accountType: 'Account Type',\n actorType: 'Actor Type',\n nickname: 'Nickname',\n recentStatuses: 'Recent Statuses',\n roles: 'Roles',\n active: 'Active',\n status: 'Status',\n reason: 'Registration Reason',\n deactivated: 'Deactivated',\n pending: 'Pending',\n noStatuses: 'No statuses to show',\n openAccountInInstance: 'Open account in instance',\n securitySettings: {\n email: 'Email',\n password: 'Password',\n securitySettings: 'Security settings',\n passwordChangeWarning1: 'Setting a new password will cause the user to be signed out from any client they have used before.',\n passwordChangeWarning2: 'When the user signs in with this password, they will be asked to set a new one.',\n passwordLengthNotice: 'Make sure it\\'s at least {minLength} characters long.',\n inputNewEmail: 'Input new email',\n inputNewPassword: 'Input new password',\n passwordUpdated: 'The password has been updated',\n emailUpdated: 'The email has been updated',\n success: 'Success',\n submit: 'Submit',\n close: 'Close'\n }\n },\n usersFilter: {\n inputPlaceholder: 'Select filter',\n byAccountType: 'By account type',\n local: 'Local',\n external: 'External',\n byStatus: 'By status',\n active: 'Active',\n pending: 'Pending Approval',\n deactivated: 'Deactivated'\n },\n reports: {\n reports: 'Reports',\n report: 'Report',\n reply: 'Reply',\n from: 'From',\n showNotes: 'Show notes',\n newNote: 'New note',\n submit: 'Submit',\n confirmMsg: 'Are you sure you want to delete this note?',\n delete: 'Delete',\n cancel: 'Cancel',\n deleteCompleted: 'Delete comleted',\n deleteCanceled: 'Delete canceled',\n noNotes: 'No notes to display',\n changeState: \"Change report's state\",\n changeAllReports: 'Change all reports',\n changeScope: 'Change scope',\n moderateUser: 'Moderate user',\n resolve: 'Resolve',\n reopen: 'Reopen',\n close: 'Close',\n resolveAll: 'Resolve all',\n reopenAll: 'Reopen all',\n closeAll: 'Close all',\n addSensitive: 'Add Sensitive flag',\n removeSensitive: 'Remove Sensitive flag',\n public: 'Make status public',\n private: 'Make status private',\n unlisted: 'Make status unlisted',\n sensitive: 'Sensitive',\n deleteStatus: 'Delete status',\n reportOn: 'Report on',\n reportsOn: 'Reports on',\n id: 'ID',\n account: 'Account',\n actor: 'Actor',\n actors: 'Actors',\n content: 'Content',\n reportedStatus: 'Reported status',\n statusDeleted: 'This status has been deleted',\n leaveNote: 'Leave a note',\n postNote: 'Send',\n deleteNote: 'Delete',\n notFound: 'account not found'\n },\n reportsFilter: {\n inputPlaceholder: 'Select filter',\n open: 'Open',\n closed: 'Closed',\n resolved: 'Resolved'\n },\n moderationLog: {\n moderationLog: 'Moderation Log'\n },\n settings: {\n settings: 'Settings',\n instance: 'Instance',\n upload: 'Upload',\n mailer: 'Mailer',\n linkFormatter: 'Link Formatter',\n logger: 'Logger',\n activityPub: 'ActivityPub',\n auth: 'Authentication',\n captcha: 'Captcha',\n frontend: 'Frontend',\n http: 'HTTP',\n mrf: 'MRF',\n mediaProxy: 'Media Proxy',\n metadata: 'Metadata',\n gopher: 'Gopher',\n jobQueue: 'Job queue',\n webPush: 'Web push encryption',\n esshd: 'BBS / SSH access',\n rateLimiters: 'Rate limiters',\n other: 'Other',\n relays: 'Relays',\n follow: 'Follow',\n followRelay: 'Follow new relay',\n followedBack: 'Followed Back',\n instanceUrl: 'Instance URL',\n success: 'Settings changed successfully!',\n description: 'Description',\n removeFromDB: 'Remove setting from the DB',\n successfullyDownloaded: 'Successfully downloaded',\n successfullyImported: 'Successfully imported',\n nowNewPacksToImport: 'No new packs to import',\n successfullyUpdated: 'Successfully updated',\n metadatLowerCase: 'metadata',\n files: 'files',\n successfullyRemoved: 'Setting removed successfully!',\n seeDocs: 'See Documentation',\n instanceReboot: 'Reboot Instance',\n restartApp: 'You must restart the instance to apply settings',\n restartSuccess: 'Instance rebooted successfully!',\n removeSettingConfirmation: 'Are you sure you want to remove this setting\\'s value from the database?',\n changeImage: 'Change image',\n uploadImage: 'Upload image',\n remove: 'Remove',\n instancePanel: 'Instance Panel Document',\n termsOfServices: 'Terms of Service'\n },\n invites: {\n inviteTokens: 'Invite tokens',\n createInviteToken: 'Generate invite token',\n pickDate: 'Pick a date',\n maxUse: 'Max use',\n expiresAt: 'Expires at',\n tokenCreated: 'Invite token was created',\n token: 'Token',\n inviteLink: 'Invite link',\n uses: 'Uses',\n used: 'Used',\n cancel: 'Cancel',\n create: 'Create',\n revoke: 'Revoke',\n id: 'ID',\n actions: 'Actions',\n active: 'Active',\n inviteUserViaEmail: 'Invite user via email',\n sendRegistration: 'Send registration invite via email',\n email: 'Email',\n name: 'Name',\n emptyEmailError: 'Please input the e-mail',\n invalidEmailError: 'Please input valid e-mail',\n emailSent: 'Invite was sent',\n submitFormError: 'There are invalid values in the form. Please fix them before continuing.',\n inviteViaEmailAlert: 'To send invite via email make sure to enable `invites_enabled` and disable `registrations_open`'\n },\n emoji: {\n emojiPacks: 'Emoji packs',\n reloaded: 'Emoji reloaded successfully!',\n refreshed: 'Emoji refreshed successfully!',\n importEmojiTooltip: 'Importing from the filesystem will scan the directories and import those without pack.json but with emoji.txt or without neither',\n reloadEmoji: 'Reload emoji',\n importPacks: 'Import packs from the server filesystem',\n localPacks: 'Local packs',\n refreshLocalPacks: 'Refresh local packs',\n createLocalPack: 'Create a new local pack',\n remotePacks: 'Remote packs',\n remoteInstanceAddress: 'Remote instance address',\n refreshRemote: 'Refresh remote packs',\n sharePack: 'Share pack',\n required: 'required',\n homepage: 'Homepage',\n description: 'Description',\n packs: 'Packs',\n license: 'License',\n shortcode: 'Shortcode',\n fallbackSrc: 'Fallback source',\n fallbackSrcSha: 'Fallback source SHA',\n saveMetadata: 'Save metadata',\n deletePack: 'Delete pack',\n downloadPack: 'Download pack',\n downloadPackArchive: 'Download pack archive',\n addNewEmoji: 'Add new emoji to the pack',\n manageEmoji: 'Manage existing emoji',\n thisWillDownload: 'This will download the',\n downloadToCurrentInstance: 'pack to the current instance under the name',\n canBeChanged: 'can be changed below',\n willBeUsable: 'It will then be usable and shareable from the current instance',\n downloadAsOptional: 'Download as (optional)',\n downloadSharedPack: 'Download shared pack to current instance',\n downloadSharedPackMobile: 'Download pack to instance',\n optional: 'optional',\n uploadFile: 'Upload a file',\n url: 'URL',\n clickToUpload: 'Click to upload',\n upload: 'Upload',\n customFilename: 'Custom filename',\n customFilenameDesc: 'Custom file name (optional)',\n file: 'File',\n localPack: 'Local pack',\n leaveEmptyShortcode: 'leave empty to use the same shortcode',\n leaveEmptyFilename: 'leave empty to use the same filename',\n update: 'Update',\n remove: 'Remove',\n selectLocalPack: 'Select the local pack to copy to',\n specifyShortcode: 'Specify a custom shortcode',\n specifyFilename: 'Specify a custom filename',\n copy: 'Copy',\n copyToLocalPack: 'Copy to local pack',\n emptyPack: 'This emoji pack is empty',\n emojiWarning: 'Pack names cannot include any of the following characters: # / < > & +',\n image: 'Image'\n\n }\n}\n","export default {\n route: {\n dashboard: '首页',\n introduction: '简述',\n documentation: '文档',\n guide: '引导页',\n permission: '权限测试页',\n pagePermission: '页面权限',\n directivePermission: '指令权限',\n icons: '图标',\n components: '组件',\n componentIndex: '介绍',\n markdown: 'Markdown',\n jsonEditor: 'JSON编辑器',\n dndList: '列表拖拽',\n splitPane: 'Splitpane',\n avatarUpload: '头像上传',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: '小组件',\n backToTop: '返回顶部',\n dragDialog: '拖拽 Dialog',\n dragSelect: '拖拽 Select',\n dragKanban: '可拖拽看板',\n charts: '图表',\n keyboardChart: '键盘图表',\n lineChart: '折线图',\n mixChart: '混合图表',\n example: '综合实例',\n nested: '路由嵌套',\n menu1: '菜单1',\n 'menu1-1': '菜单1-1',\n 'menu1-2': '菜单1-2',\n 'menu1-2-1': '菜单1-2-1',\n 'menu1-2-2': '菜单1-2-2',\n 'menu1-3': '菜单1-3',\n menu2: '菜单2',\n Table: 'Table',\n dynamicTable: '动态Table',\n dragTable: '拖拽Table',\n inlineEditTable: 'Table内编辑',\n complexTable: '综合Table',\n treeTable: '树形表格',\n customTreeTable: '自定义树表',\n tab: 'Tab',\n form: '表单',\n createArticle: '创建文章',\n editArticle: '编辑文章',\n articleList: '文章列表',\n errorPages: '错误页面',\n page401: '401',\n page404: '404',\n errorLog: '错误日志',\n excel: 'Excel',\n exportExcel: 'Export Excel',\n selectExcel: 'Export Selected',\n uploadExcel: 'Upload Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Export Zip',\n theme: '换肤',\n clipboardDemo: 'Clipboard',\n i18n: '国际化',\n externalLink: '外链'\n },\n navbar: {\n logOut: '退出登录',\n dashboard: '首页',\n github: '项目地址',\n theme: '换肤',\n size: '布局大小'\n },\n login: {\n title: '系统登录',\n logIn: '登录',\n username: '账号',\n password: '密码',\n any: '随便填',\n thirdparty: '第三方登录',\n thirdpartyTips: '本地不能模拟,请结合自己业务进行模拟!!!'\n },\n documentation: {\n documentation: '文档',\n github: 'Github 地址'\n },\n permission: {\n roles: '你的权限',\n switchRoles: '切换权限',\n tips: '在某些情况下,不适合使用 v-permission。例如:Element-UI 的 Tab 组件或 el-table-column 以及其它动态渲染 dom 的场景。你只能通过手动设置 v-if 来实现。'\n },\n guide: {\n description: '引导页对于一些第一次进入项目的人很有用,你可以简单介绍下项目的功能。本 Demo 是基于',\n button: '打开引导'\n },\n components: {\n documentation: '文档',\n dropzoneTips: '由于我司业务有特殊需求,而且要传七牛 所以没用第三方,选择了自己封装。代码非常的简单,具体代码你可以在这里看到 @/components/element-ui/Dropzone',\n stickyTips: '当页面滚动到预设的位置会吸附在顶部',\n backToTopTips1: '页面滚动到指定位置会在右下角出现返回顶部按钮',\n backToTopTips2: '可自定义按钮的样式、show/hide、出现的高度、返回的位置 如需文字提示,可在外部使用Element的el-tooltip元素',\n imageUploadTips: '由于我在使用时它只有vue@1版本,而且和mockjs不兼容,所以自己改造了一下,如果大家要使用的话,优先还是使用官方版本。'\n },\n table: {\n dynamicTips1: '固定表头, 按照表头顺序排序',\n dynamicTips2: '不固定表头, 按照点击顺序排序',\n dragTips1: '默认顺序',\n dragTips2: '拖拽后顺序',\n title: '标题',\n importance: '重要性',\n type: '类型',\n remark: '点评',\n search: '搜索',\n add: '添加',\n export: '导出',\n reviewer: '审核人',\n id: '序号',\n date: '时间',\n author: '作者',\n readings: '阅读数',\n status: '状态',\n actions: '操作',\n edit: '编辑',\n publish: '发布',\n draft: '草稿',\n delete: '删除',\n cancel: '取 消',\n confirm: '确 定'\n },\n errorLog: {\n tips: '请点击右上角bug小图标',\n description: '现在的管理后台基本都是spa的形式了,它增强了用户体验,但同时也会增加页面出问题的可能性,可能一个小小的疏忽就导致整个页面的死锁。好在 Vue 官网提供了一个方法来捕获处理异常,你可以在其中进行错误处理或者异常上报。',\n documentation: '文档介绍'\n },\n excel: {\n export: '导出',\n selectedExport: '导出已选择项',\n placeholder: '请输入文件名(默认excel-list)'\n },\n zip: {\n export: '导出',\n placeholder: '请输入文件名(默认file)'\n },\n pdf: {\n tips: '这里使用 window.print() 来实现下载pdf的功能'\n },\n theme: {\n change: '换肤',\n documentation: '换肤文档',\n tips: 'Tips: 它区别于 navbar 上的 theme-pick, 是两种不同的换肤方法,各自有不同的应用场景,具体请参考文档。'\n },\n tagsView: {\n refresh: '刷新',\n close: '关闭',\n closeOthers: '关闭其它',\n closeAll: '关闭所有'\n }\n}\n","export default {\n route: {\n dashboard: 'Panel de control',\n introduction: 'Introducción',\n documentation: 'Documentación',\n guide: 'Guía',\n permission: 'Permisos',\n pagePermission: 'Permisos de la página',\n directivePermission: 'Permisos de la directiva',\n icons: 'Iconos',\n components: 'Componentes',\n componentIndex: 'Introducción',\n markdown: 'Markdown',\n jsonEditor: 'Editor JSON',\n dndList: 'Lista Dnd',\n splitPane: 'Panel dividido',\n avatarUpload: 'Subir avatar',\n dropzone: 'Subir ficheros',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'Ir arriba',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Gráficos',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Gráfico de líneas',\n mixChart: 'Mix Chart',\n example: 'Ejemplo',\n nested: 'Rutas anidadass',\n menu1: 'Menu 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menu 2',\n Table: 'Tabla',\n dynamicTable: 'Tabla dinámica',\n dragTable: 'Arrastrar tabla',\n inlineEditTable: 'Editor',\n complexTable: 'Complex Table',\n treeTable: 'Tree Table',\n customTreeTable: 'Custom TreeTable',\n tab: 'Pestaña',\n form: 'Formulario',\n createArticle: 'Crear artículo',\n editArticle: 'Editar artículo',\n articleList: 'Listado de artículos',\n errorPages: 'Páginas de error',\n page401: '401',\n page404: '404',\n errorLog: 'Registro de errores',\n excel: 'Excel',\n exportExcel: 'Exportar a Excel',\n selectExcel: 'Export seleccionado',\n uploadExcel: 'Subir Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Exportar a Zip',\n theme: 'Tema',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'Enlace externo'\n },\n navbar: {\n logOut: 'Salir',\n dashboard: 'Panel de control',\n github: 'Github',\n theme: 'Tema',\n size: 'Tamaño global'\n },\n login: {\n title: 'Formulario de acceso',\n logIn: 'Acceso',\n username: 'Usuario',\n password: 'Contraseña',\n any: 'nada',\n thirdparty: 'Conectar con',\n thirdpartyTips: 'No se puede simular en local, así que combine su propia simulación de negocios. ! !'\n },\n documentation: {\n documentation: 'Documentación',\n github: 'Repositorio Github'\n },\n permission: {\n roles: 'Tus permisos',\n switchRoles: 'Cambiar permisos',\n tips: 'In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if.'\n },\n guide: {\n description: 'The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ',\n button: 'Ver guía'\n },\n components: {\n documentation: 'Documentación',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Fixed header, sorted by header order',\n dynamicTips2: 'Not fixed header, sorted by click order',\n dragTips1: 'Orden por defecto',\n dragTips2: 'The after dragging order',\n title: 'Título',\n importance: 'Importancia',\n type: 'Tipo',\n remark: 'Remark',\n search: 'Buscar',\n add: 'Añadir',\n export: 'Exportar',\n reviewer: 'reviewer',\n id: 'ID',\n date: 'Fecha',\n author: 'Autor',\n readings: 'Lector',\n status: 'Estado',\n actions: 'Acciones',\n edit: 'Editar',\n publish: 'Publicar',\n draft: 'Draft',\n delete: 'Eliminar',\n cancel: 'Cancelar',\n confirm: 'Confirmar'\n },\n errorLog: {\n tips: 'Please click the bug icon in the upper right corner',\n description: 'Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.',\n documentation: 'Documento de introducción'\n },\n excel: {\n export: 'Exportar',\n selectedExport: 'Exportar seleccionados',\n placeholder: 'Por favor escribe un nombre de fichero'\n },\n zip: {\n export: 'Exportar',\n placeholder: 'Por favor escribe un nombre de fichero'\n },\n pdf: {\n tips: 'Here we use window.print() to implement the feature of downloading pdf.'\n },\n theme: {\n change: 'Cambiar tema',\n documentation: 'Documentación del tema',\n tips: 'Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details.'\n },\n tagsView: {\n refresh: 'Actualizar',\n close: 'Cerrar',\n closeOthers: 'Cerrar otros',\n closeAll: 'Cerrar todos'\n }\n}\n","export default {\n route: {\n dashboard: 'Tablèu de bòrd',\n introduction: 'Introduccion',\n documentation: 'Documentacion',\n guide: 'Guida',\n permission: 'Autorizacions',\n pagePermission: 'Pagina d’autorizacion',\n directivePermission: 'Politica d’autorizacion',\n icons: 'Icònas',\n components: 'Compausants',\n componentIndex: 'Introduccion',\n markdown: 'Markdown',\n jsonEditor: 'JSON Editor',\n dndList: 'Dnd List',\n splitPane: 'SplitPane',\n avatarUpload: 'Mandadís d’avatar',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'BackToTop',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Charts',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Line Chart',\n mixChart: 'Mix Chart',\n example: 'Exemple',\n nested: 'Rotas imbricadas',\n menu1: 'Menú 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menú 2',\n Table: 'Tablèu',\n dynamicTable: 'Tablèu dinamic',\n dragTable: 'Drag Table',\n inlineEditTable: 'Inline Edit',\n complexTable: 'Tablèu complèx',\n treeTable: 'Arborescéncia',\n customTreeTable: 'Arborescéncia personalizada',\n tab: 'Onglet',\n form: 'Formulari',\n createArticle: 'Crear un article',\n editArticle: 'Modificar l’article',\n articleList: 'Lista d’articles',\n errorPages: 'Paginas d’error',\n page401: '401',\n page404: '404',\n errorLog: 'Jornal d’error',\n excel: 'Excel',\n exportExcel: 'Exportacion Excel',\n selectExcel: 'Exportar los seleccionats',\n uploadExcel: 'Importacion Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Exportacion Zip',\n theme: 'Tèma',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'Ligams extèrnes',\n users: 'Utilizaires'\n },\n navbar: {\n logOut: 'Desconnexion',\n dashboard: 'Tablèu de bòrd',\n github: 'Github',\n theme: 'Tèma',\n size: 'Talha totala'\n },\n login: {\n title: 'Formulari de connexion',\n logIn: 'Se connectar',\n username: 'Nom d’’utilizaire',\n password: 'Senhal',\n any: 'qual que siá',\n thirdparty: 'O se connectar amb',\n thirdpartyTips: 'Pòt pas èsser simulat en local, doncas montatz vòstra pròpria simulacion ! ! !'\n },\n documentation: {\n documentation: 'Documentacion',\n github: 'Repertòri Github'\n },\n permission: {\n roles: 'Vòstres ròtles',\n switchRoles: 'Cambiar de ròtle',\n tips: 'Dins qualques cases es pas de bon far d’utilizar v-permission, coma element d’onglet compausant, el-table-column o d’autres renduts dom asincròns que pòdon pas que foncionar amb un parametratge manual de v-if.'\n },\n guide: {\n description: 'La pagina de guida es utila pel monde que dintran dins lo projècte pel primièr còp. Podètz presentar en un mot las foncionalitats del projèctes. La demo es fondada sus ',\n button: 'Mostrar la guida'\n },\n components: {\n documentation: 'Documentacion',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Bandièra fixa, triada per òrdre de bandièra',\n dynamicTips2: 'Bandièra pas fixa, triada per òrdre de clic',\n dragTips1: 'L’’òrdre per defaut',\n dragTips2: 'L’’òrdre aprèp lisar-depausar',\n title: 'Títol',\n importance: 'Imp',\n type: 'Tipe',\n remark: 'Remarca',\n search: 'Recercar',\n add: 'Ajustar',\n export: 'Exportar',\n reviewer: 'examinator',\n id: 'ID',\n date: 'Data',\n author: 'Autor',\n readings: 'Lecturas',\n status: 'Estatuts',\n actions: 'Accions',\n edit: 'Modificar',\n publish: 'Publicar',\n draft: 'Ensag',\n delete: 'Suprimir',\n cancel: 'Anullar',\n confirm: 'Confirmar'\n },\n errorLog: {\n tips: 'Mercés de clicar l’’icòna del babau amont a man drecha',\n description: 'Ara que lo sistèma de gestion es coma un spa, melhora l’experiéncia dels utilizaire mas aumenta tanben lo risc de problèmas sus la pagina, una pichona negligéncia pòt menar a un blocatge complèt de la pagina. Urosament Vue fornís de manièras per gerir las excepcions, trobar las errors o senhalar las excepcions.',\n documentation: 'Presentacion del document'\n },\n excel: {\n export: 'Exportar',\n selectedExport: 'Exportar los elements seleccionats',\n placeholder: 'Mercés de picar lo nom de fichièr (per defaut excel-list)'\n },\n zip: {\n export: 'Exportar',\n placeholder: 'Mercés de picar lo nom de fichièr (per defaut file)'\n },\n pdf: {\n tips: 'Aquí utilizam window.print() per prepausar lo telecargament de pdf.'\n },\n theme: {\n change: 'Cambiar lo tèma',\n documentation: 'Documentacion dels tèmas',\n tips: 'Astúcia : es diferent del theme-pick de la barra de navigacion, i a dos metòdes de personalizacion, caduna amb un biais de far diferent. Referiscam a la documentacion per mai de detalhs.'\n },\n tagsView: {\n refresh: 'Actualizar',\n close: 'Tampar',\n closeOthers: 'Tampar los autres',\n closeAll: 'Los tampar totes'\n }\n}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-redo\",\n \"use\": \"icon-tiptap-redo-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-redo\\\"><title>redo</title><path d=\\\"M22.608.161a.5.5,0,0,0-.545.108L19.472,2.86a.25.25,0,0,1-.292.045A12.537,12.537,0,0,0,6.214,3.77,12.259,12.259,0,0,0,6.1,23.632a1.25,1.25,0,0,0,1.476-2.018A9.759,9.759,0,0,1,7.667,5.805a10,10,0,0,1,9.466-1.1.25.25,0,0,1,.084.409l-1.85,1.85a.5.5,0,0,0,.354.853h6.7a.5.5,0,0,0,.5-.5V.623A.5.5,0,0,0,22.608.161Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function addNewEmojiFile(packName, file, shortcode, filename, host, token) {\n const data = new FormData()\n if (filename.trim() !== '') {\n data.set('filename', filename)\n }\n if (shortcode.trim() !== '') {\n data.set('shortcode', shortcode)\n }\n data.set('file', file)\n\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/files?name=${packName}`,\n method: 'post',\n headers: authHeaders(token),\n data\n })\n}\n\nexport function addressOfEmojiInPack(host, packName, name) {\n return `${baseName(host)}/emoji/${encodeUri(packName)}/${name}`\n}\n\nexport async function createPack(host, token, packName) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/pack?name=${packName}`,\n method: 'post',\n headers: authHeaders(token)\n })\n}\n\nexport async function deleteEmojiFile(packName, shortcode, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/files?name=${packName}&shortcode=${shortcode}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function deletePack(host, token, packName) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/pack?name=${packName}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function downloadFrom(instanceAddress, packName, as, host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/emoji/packs/download',\n method: 'post',\n headers: authHeaders(token),\n data: as.trim() === ''\n ? { url: baseName(instanceAddress), name: packName }\n : { url: baseName(instanceAddress), name: packName, as },\n timeout: 0\n })\n}\n\nexport async function fetchPack(packName, page, pageSize, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/pack?name=${packName}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function importFromFS(host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/emoji/packs/import',\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function listPacks(page, pageSize, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function listRemotePacks(instance, page, pageSize, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/remote?url=${baseName(instance)}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function reloadEmoji(host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/admin/reload_emoji',\n method: 'post',\n headers: authHeaders(token)\n })\n}\n\nexport async function savePackMetadata(host, token, packName, metadata) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/pack?name=${packName}`,\n method: 'patch',\n headers: authHeaders(token),\n data: { metadata },\n timeout: 0 // This might take a long time\n })\n}\n\nexport async function updateEmojiFile(packName, shortcode, newShortcode, newFilename, force, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/files?name=${packName}`,\n method: 'patch',\n headers: authHeaders(token),\n data: { shortcode, new_shortcode: newShortcode, new_filename: newFilename, force }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n\nconst encodeUri = (name) => encodeURIComponent(name)\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-github\",\n \"use\": \"icon-tiptap-github-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-github\\\">\\n <path d=\\\"M11.999,0.5 C5.649,0.5 0.5,5.648 0.5,12 C0.5,17.082 3.794,21.392 8.365,22.914 C8.939,23.017 9.121,22.678 9.121,22.373 C9.121,22.099 9.127,21.336 9.121,20.376 C5.923,21.07 5.26,18.861 5.26,18.861 C4.737,17.532 3.985,17.179 3.985,17.179 C2.94,16.465 4.062,16.48 4.062,16.48 C5.215,16.56 5.824,17.664 5.824,17.664 C6.85,19.422 8.515,18.914 9.17,18.62 C9.276,17.878 9.572,17.369 9.901,17.084 C7.347,16.792 4.663,15.807 4.663,11.398 C4.663,10.143 5.111,9.117 5.847,8.312 C5.729,8.023 5.333,6.852 5.959,5.269 C5.959,5.269 6.926,4.96 9.121,6.449 C10.039,6.193 11.023,6.066 12.001,6.061 C12.977,6.066 13.961,6.193 14.881,6.449 C17.076,4.961 18.04,5.269 18.04,5.269 C18.667,6.852 18.272,8.023 18.154,8.312 C18.89,9.117 19.337,10.143 19.337,11.398 C19.337,15.818 16.648,16.789 14.086,17.072 C14.498,17.429 14.873,18.119 14.873,19.192 C14.873,20.63 14.873,21.998 14.873,22.376 C14.873,22.684 15.059,23.023 15.643,22.912 C20.209,21.389 23.5,17.08 23.5,12 C23.5,5.648 18.352,0.5 11.999,0.5 Z\\\" />\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-icon\",\n \"use\": \"icon-icon-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-icon\\\"><path d=\\\"M115.147.062a13 13 0 0 1 4.94.945c1.55.63 2.907 1.526 4.069 2.688a13.148 13.148 0 0 1 2.761 4.069c.678 1.55 1.017 3.245 1.017 5.086v102.3c0 3.681-1.187 6.733-3.56 9.155-2.373 2.422-5.352 3.633-8.937 3.633H12.992c-3.875 0-7-1.26-9.373-3.779-2.373-2.518-3.56-5.667-3.56-9.445V12.704c0-3.39 1.163-6.345 3.488-8.863C5.872 1.32 8.972.062 12.847.062h102.3zM81.434 109.047c1.744 0 3.003-.412 3.778-1.235.775-.824 1.163-1.914 1.163-3.27 0-1.26-.388-2.325-1.163-3.197-.775-.872-2.034-1.307-3.778-1.307H72.57c.097-.194.145-.485.145-.872V27.09h9.01c1.743 0 2.954-.436 3.633-1.308.678-.872 1.017-1.938 1.017-3.197 0-1.26-.34-2.325-1.017-3.197-.679-.872-1.89-1.308-3.633-1.308H46.268c-1.743 0-2.954.436-3.632 1.308-.678.872-1.018 1.938-1.018 3.197 0 1.26.34 2.325 1.018 3.197.678.872 1.889 1.308 3.632 1.308h8.138v72.075c0 .193.024.339.073.436.048.096.072.242.072.436H46.56c-1.744 0-3.003.435-3.778 1.307-.775.872-1.163 1.938-1.163 3.197 0 1.356.388 2.446 1.163 3.27.775.823 2.034 1.235 3.778 1.235h34.875z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-404\",\n \"use\": \"icon-404-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-404\\\"><path d=\\\"M121.718 73.272v9.953c3.957-7.584 6.199-16.05 6.199-24.995C127.917 26.079 99.273 0 63.958 0 28.644 0 0 26.079 0 58.23c0 .403.028.806.028 1.21l22.97-25.953h13.34l-19.76 27.187h6.42V53.77l13.728-19.477v49.361H22.998V73.272H2.158c5.951 20.284 23.608 36.208 45.998 41.399-1.44 3.3-5.618 11.263-12.565 12.674-8.607 1.764 23.358.428 46.163-13.178 17.519-4.611 31.938-15.849 39.77-30.513h-13.506V73.272H85.02V59.464l22.998-25.977h13.008l-19.429 27.187h6.421v-7.433l13.727-19.402v39.433h-.027zm-78.24 2.822a10.516 10.516 0 0 1-.996-4.535V44.548c0-1.613.332-3.124.996-4.535a11.66 11.66 0 0 1 2.713-3.68c1.134-1.032 2.49-1.864 4.04-2.468 1.55-.605 3.21-.908 4.982-.908h11.292c1.77 0 3.431.303 4.981.908 1.522.604 2.85 1.41 3.986 2.418l-12.26 16.303v-2.898a1.96 1.96 0 0 0-.665-1.512c-.443-.403-.996-.604-1.66-.604-.665 0-1.218.201-1.661.604a1.96 1.96 0 0 0-.664 1.512v9.071L44.364 77.606a10.556 10.556 0 0 1-.886-1.512zm35.73-4.535c0 1.613-.332 3.124-.997 4.535a11.66 11.66 0 0 1-2.712 3.68c-1.134 1.032-2.49 1.864-4.04 2.469-1.55.604-3.21.907-4.982.907H55.185c-1.77 0-3.431-.303-4.981-.907-1.55-.605-2.906-1.437-4.041-2.47a12.49 12.49 0 0 1-1.384-1.512l13.727-18.217v6.375c0 .605.222 1.109.665 1.512.442.403.996.604 1.66.604.664 0 1.218-.201 1.66-.604a1.96 1.96 0 0 0 .665-1.512V53.87L75.97 36.838c.913.932 1.66 1.99 2.214 3.175.664 1.41.996 2.922.996 4.535v27.011h.028z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-edit\",\n \"use\": \"icon-edit-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-edit\\\"><path d=\\\"M106.133 67.2a4.797 4.797 0 0 0-4.8 4.8c0 .187.014.36.027.533h-.027V118.4H9.6V26.667h50.133c2.654 0 4.8-2.147 4.8-4.8 0-2.654-2.146-4.8-4.8-4.8H9.6a9.594 9.594 0 0 0-9.6 9.6V118.4c0 5.307 4.293 9.6 9.6 9.6h91.733c5.307 0 9.6-4.293 9.6-9.6V72.533h-.026c.013-.173.026-.346.026-.533 0-2.653-2.146-4.8-4.8-4.8z\\\" /><path d=\\\"M125.16 13.373L114.587 2.8c-3.747-3.747-9.854-3.72-13.6.027l-52.96 52.96a4.264 4.264 0 0 0-.907 1.36L33.813 88.533c-.746 1.76-.226 3.534.907 4.68 1.133 1.147 2.92 1.667 4.693.92l31.4-13.293c.507-.213.96-.52 1.36-.907l52.96-52.96c3.747-3.746 3.774-9.853.027-13.6zM66.107 72.4l-18.32 7.76 7.76-18.32L92.72 24.667l10.56 10.56L66.107 72.4zm52.226-52.227l-8.266 8.267-10.56-10.56 8.266-8.267.027-.026 10.56 10.56-.027.026z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-lock\",\n \"use\": \"icon-lock-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-lock\\\"><path d=\\\"M119.88 49.674h-7.987V39.52C111.893 17.738 90.45.08 63.996.08 37.543.08 16.1 17.738 16.1 39.52v10.154H8.113c-4.408 0-7.987 2.94-7.987 6.577v65.13c0 3.637 3.57 6.577 7.987 6.577H119.88c4.407 0 7.987-2.94 7.987-6.577v-65.13c-.008-3.636-3.58-6.577-7.987-6.577zm-23.953 0H32.065V39.52c0-14.524 14.301-26.295 31.931-26.295 17.63 0 31.932 11.777 31.932 26.295v10.153z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-user\",\n \"use\": \"icon-user-usage\",\n \"viewBox\": \"0 0 130 130\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 130 130\\\" id=\\\"icon-user\\\"><path d=\\\"M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z\\\" stroke=\\\"#979797\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menuText\":\"#bfcbd9\",\"menuActiveText\":\"#409EFF\",\"subMenuActiveText\":\"#f4f4f5\",\"menuBg\":\"#304156\",\"menuHover\":\"#263445\",\"subMenuBg\":\"#1f2d3d\",\"subMenuHover\":\"#001528\",\"sideBarWidth\":\"180px\"};","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-mention\",\n \"use\": \"icon-tiptap-mention-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-mention\\\"><title>read-email-at-alternate</title><path d=\\\"M12,.5A11.634,11.634,0,0,0,.262,12,11.634,11.634,0,0,0,12,23.5a11.836,11.836,0,0,0,6.624-2,1.25,1.25,0,1,0-1.393-2.076A9.34,9.34,0,0,1,12,21a9.132,9.132,0,0,1-9.238-9A9.132,9.132,0,0,1,12,3a9.132,9.132,0,0,1,9.238,9v.891a1.943,1.943,0,0,1-3.884,0V12A5.355,5.355,0,1,0,12,17.261a5.376,5.376,0,0,0,3.861-1.634,4.438,4.438,0,0,0,7.877-2.736V12A11.634,11.634,0,0,0,12,.5Zm0,14.261A2.763,2.763,0,1,1,14.854,12,2.812,2.812,0,0,1,12,14.761Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-quote\",\n \"use\": \"icon-tiptap-quote-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-quote\\\"><title>close-quote</title><path d=\\\"M18.559,3.932a4.942,4.942,0,1,0,0,9.883,4.609,4.609,0,0,0,1.115-.141.25.25,0,0,1,.276.368,6.83,6.83,0,0,1-5.878,3.523,1.25,1.25,0,0,0,0,2.5,9.71,9.71,0,0,0,9.428-9.95V8.873A4.947,4.947,0,0,0,18.559,3.932Z\\\" /><path d=\\\"M6.236,3.932a4.942,4.942,0,0,0,0,9.883,4.6,4.6,0,0,0,1.115-.141.25.25,0,0,1,.277.368A6.83,6.83,0,0,1,1.75,17.565a1.25,1.25,0,0,0,0,2.5,9.711,9.711,0,0,0,9.428-9.95V8.873A4.947,4.947,0,0,0,6.236,3.932Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import axios from 'axios'\nimport { Message } from 'element-ui'\n\n// create an axios instance\nconst service = axios.create({\n timeout: 60000 // request timeout\n})\n\n// response interceptor\nservice.interceptors.response.use(\n response => response,\n error => {\n let errorMessage\n console.log(`Error ${error}`)\n\n if (error.response) {\n const edata = error.response.data.error ? error.response.data.error : error.response.data\n errorMessage = !error.response.headers['content-type'].includes('application/json')\n ? `${error.message}`\n : `${error.message} - ${edata}`\n } else {\n errorMessage = error\n }\n\n Message({\n message: errorMessage,\n type: 'error',\n duration: 5 * 1000\n })\n return Promise.reject(error)\n }\n)\n\nexport default service\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-code\",\n \"use\": \"icon-tiptap-code-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-code\\\"><title>angle-brackets</title><path d=\\\"M9.147,21.552a1.244,1.244,0,0,1-.895-.378L.84,13.561a2.257,2.257,0,0,1,0-3.125L8.252,2.823a1.25,1.25,0,0,1,1.791,1.744l-6.9,7.083a.5.5,0,0,0,0,.7l6.9,7.082a1.25,1.25,0,0,1-.9,2.122Z\\\" /><path d=\\\"M14.854,21.552a1.25,1.25,0,0,1-.9-2.122l6.9-7.083a.5.5,0,0,0,0-.7l-6.9-7.082a1.25,1.25,0,0,1,1.791-1.744l7.411,7.612a2.257,2.257,0,0,1,0,3.125l-7.412,7.614A1.244,1.244,0,0,1,14.854,21.552Zm6.514-9.373h0Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-clipboard\",\n \"use\": \"icon-clipboard-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-clipboard\\\"><path d=\\\"M54.857 118.857h64V73.143H89.143c-1.902 0-3.52-.668-4.855-2.002-1.335-1.335-2.002-2.954-2.002-4.855V36.57H54.857v82.286zM73.143 16v-4.571a2.2 2.2 0 0 0-.677-1.61 2.198 2.198 0 0 0-1.609-.676H20.571c-.621 0-1.158.225-1.609.676a2.198 2.198 0 0 0-.676 1.61V16a2.2 2.2 0 0 0 .676 1.61c.451.45.988.676 1.61.676h50.285c.622 0 1.158-.226 1.61-.677.45-.45.676-.987.676-1.609zm18.286 48h21.357L91.43 42.642V64zM128 73.143v48c0 1.902-.667 3.52-2.002 4.855-1.335 1.335-2.953 2.002-4.855 2.002H52.57c-1.901 0-3.52-.667-4.854-2.002-1.335-1.335-2.003-2.953-2.003-4.855v-11.429H6.857c-1.902 0-3.52-.667-4.855-2.002C.667 106.377 0 104.759 0 102.857v-96c0-1.902.667-3.52 2.002-4.855C3.337.667 4.955 0 6.857 0h77.714c1.902 0 3.52.667 4.855 2.002 1.335 1.335 2.003 2.953 2.003 4.855V30.29c1 .622 1.856 1.29 2.569 2.003l29.147 29.147c1.335 1.335 2.478 3.145 3.429 5.43.95 2.287 1.426 4.383 1.426 6.291v-.018z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tiptap-underline\",\n \"use\": \"icon-tiptap-underline-usage\",\n \"viewBox\": \"0 0 24 24\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" id=\\\"icon-tiptap-underline\\\"><title>text-underline</title><path d=\\\"M22.5,21.248H1.5a1.25,1.25,0,0,0,0,2.5h21a1.25,1.25,0,0,0,0-2.5Z\\\" /><path d=\\\"M1.978,2.748H3.341a.25.25,0,0,1,.25.25v8.523a8.409,8.409,0,0,0,16.818,0V3a.25.25,0,0,1,.25-.25h1.363a1.25,1.25,0,0,0,0-2.5H16.3a1.25,1.25,0,0,0,0,2.5h1.363a.25.25,0,0,1,.25.25v8.523a5.909,5.909,0,0,1-11.818,0V3a.25.25,0,0,1,.25-.25H7.7a1.25,1.25,0,1,0,0-2.5H1.978a1.25,1.25,0,0,0,0,2.5Z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-email\",\n \"use\": \"icon-email-usage\",\n \"viewBox\": \"0 0 128 96\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 96\\\" id=\\\"icon-email\\\"><path d=\\\"M64.125 56.975L120.188.912A12.476 12.476 0 0 0 115.5 0h-103c-1.588 0-3.113.3-4.513.838l56.138 56.137z\\\" /><path d=\\\"M64.125 68.287l-62.3-62.3A12.42 12.42 0 0 0 0 12.5v71C0 90.4 5.6 96 12.5 96h103c6.9 0 12.5-5.6 12.5-12.5v-71a12.47 12.47 0 0 0-1.737-6.35L64.125 68.287z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-chart\",\n \"use\": \"icon-chart-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-chart\\\"><path d=\\\"M0 54.857h36.571V128H0V54.857zM91.429 27.43H128V128H91.429V27.429zM45.714 0h36.572v128H45.714V0z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',_vm._g({class:_vm.svgClass,attrs:{\"aria-hidden\":\"true\"}},_vm.$listeners),[_c('use',{attrs:{\"xlink:href\":_vm.iconName}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <svg :class=\"svgClass\" aria-hidden=\"true\" v-on=\"$listeners\">\n <use :xlink:href=\"iconName\"/>\n </svg>\n</template>\n\n<script>\nexport default {\n name: 'SvgIcon',\n props: {\n iconClass: {\n type: String,\n required: true\n },\n className: {\n type: String,\n default: ''\n }\n },\n computed: {\n iconName() {\n return `#icon-${this.iconClass}`\n },\n svgClass() {\n if (this.className) {\n return 'svg-icon ' + this.className\n } else {\n return 'svg-icon'\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.svg-icon {\n width: 1em;\n height: 1em;\n vertical-align: -0.15em;\n fill: currentColor;\n overflow: hidden;\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=17178ffc&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17178ffc\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menuText\":\"#bfcbd9\",\"menuActiveText\":\"#409EFF\",\"subMenuActiveText\":\"#f4f4f5\",\"menuBg\":\"#304156\",\"menuHover\":\"#263445\",\"subMenuBg\":\"#1f2d3d\",\"subMenuHover\":\"#001528\",\"sideBarWidth\":\"180px\"};"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/app.ac1962ee.js b/priv/static/adminfe/static/js/app.ac1962ee.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["app"],{"+aF5":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-pdf",use:"icon-pdf-usage",viewBox:"0 0 1024 1024",content:'<symbol viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" id="icon-pdf"><path d="M869.073 277.307H657.111V65.344l211.962 211.963zm-238.232 26.27V65.344l-476.498-.054v416.957h714.73v-178.67H630.841zm-335.836 360.57c-5.07-3.064-10.944-5.133-17.61-6.201-6.67-1.064-13.603-1.6-20.81-1.6h-48.821v85.641h48.822c7.206 0 14.14-.532 20.81-1.6 6.665-1.065 12.54-3.133 17.609-6.202 5.064-3.063 9.134-7.406 12.208-13.007 3.065-5.602 4.6-12.937 4.6-22.011 0-9.07-1.535-16.408-4.6-22.01-3.074-5.603-7.144-9.94-12.208-13.01zM35.82 541.805v416.904h952.358V541.805H35.821zm331.421 191.179c-3.6 11.071-9.343 20.879-17.209 29.413-7.874 8.542-18.078 15.408-30.617 20.61-12.544 5.206-27.747 7.807-45.621 7.807h-66.036v102.45h-62.831V607.517h128.867c17.874 0 33.077 2.6 45.62 7.802 12.541 5.207 22.745 12.076 30.618 20.615 7.866 8.538 13.604 18.277 17.21 29.212 3.6 10.943 5.401 22.278 5.401 34.018 0 11.477-1.8 22.752-5.402 33.819zM644.9 806.417c-5.343 17.61-13.408 32.818-24.212 45.627-10.807 12.803-24.283 22.879-40.423 30.213-16.146 7.343-35.155 11.007-57.03 11.007h-123.26V607.518h123.26c18.41 0 35.552 2.941 51.428 8.808 15.873 5.869 29.618 14.671 41.22 26.412 11.608 11.744 20.674 26.411 27.217 44.02 6.535 17.61 9.803 38.288 9.803 62.035 0 20.81-2.67 40.02-8.003 57.624zm245.362-146.07h-138.07v66.03h119.66v48.829h-119.66v118.058h-62.83V607.518h200.9v52.829h-.001zm-318.2 25.611c-6.402-8.266-14.877-14.604-25.412-19.01-10.544-4.402-23.551-6.602-39.019-6.602h-44.825v180.088h56.029c9.07 0 17.872-1.463 26.415-4.401 8.535-2.932 16.14-7.802 22.812-14.609 6.665-6.8 12.007-15.667 16.007-26.61 4.003-10.94 6.003-24.275 6.003-40.021 0-14.408-1.4-27.416-4.202-39.019-2.8-11.607-7.406-21.542-13.808-29.816zm0 0" /></symbol>'});s.a.add(c);t.default=c},"0Fbn":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-people",use:"icon-people-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-people"><path d="M104.185 95.254c8.161 7.574 13.145 17.441 13.145 28.28 0 1.508-.098 2.998-.285 4.466h-10.784c.238-1.465.403-2.948.403-4.465 0-8.983-4.36-17.115-11.419-23.216C86 104.66 75.355 107.162 64 107.162c-11.344 0-21.98-2.495-31.22-6.83-7.064 6.099-11.444 14.218-11.444 23.203 0 1.517.165 3 .403 4.465H10.955a35.444 35.444 0 0 1-.285-4.465c0-10.838 4.974-20.713 13.127-28.291C9.294 85.42.003 70.417.003 53.58.003 23.99 28.656.001 64 .001s63.997 23.988 63.997 53.58c0 16.842-9.299 31.85-23.812 41.673zM64 36.867c-29.454 0-53.33-10.077-53.33 15.342 0 25.418 23.876 46.023 53.33 46.023 29.454 0 53.33-20.605 53.33-46.023 0-25.419-23.876-15.342-53.33-15.342zm24.888 25.644c-3.927 0-7.111-2.665-7.111-5.953 0-3.288 3.184-5.954 7.11-5.954 3.928 0 7.111 2.666 7.111 5.954s-3.183 5.953-7.11 5.953zm-3.556 16.372c0 4.11-9.55 7.442-21.332 7.442-11.781 0-21.332-3.332-21.332-7.442 0-1.06.656-2.064 1.8-2.976 3.295 2.626 10.79 4.465 19.532 4.465 8.743 0 16.237-1.84 19.531-4.465 1.145.912 1.801 1.916 1.801 2.976zm-46.22-16.372c-3.927 0-7.11-2.665-7.11-5.953 0-3.288 3.183-5.954 7.11-5.954 3.927 0 7.111 2.666 7.111 5.954s-3.184 5.953-7.11 5.953z" /></symbol>'});s.a.add(c);t.default=c},"1+ww":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-eye-open",use:"icon-eye-open-usage",viewBox:"0 0 1024 1024",content:'<symbol class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" id="icon-eye-open"><defs><style></style></defs><path d="M512 128q69.675 0 135.51 21.163t115.498 54.997 93.483 74.837 73.685 82.006 51.67 74.837 32.17 54.827L1024 512q-2.347 4.992-6.315 13.483T998.87 560.17t-31.658 51.669-44.331 59.99-56.832 64.34-69.504 60.16-82.347 51.5-94.848 34.687T512 896q-69.675 0-135.51-21.163t-115.498-54.826-93.483-74.326-73.685-81.493-51.67-74.496-32.17-54.997L0 513.707q2.347-4.992 6.315-13.483t18.816-34.816 31.658-51.84 44.331-60.33 56.832-64.683 69.504-60.331 82.347-51.84 94.848-34.816T512 128.085zm0 85.333q-46.677 0-91.648 12.331t-81.152 31.83-70.656 47.146-59.648 54.485-48.853 57.686-37.675 52.821-26.325 43.99q12.33 21.674 26.325 43.52t37.675 52.351 48.853 57.003 59.648 53.845T339.2 767.02t81.152 31.488T512 810.667t91.648-12.331 81.152-31.659 70.656-46.848 59.648-54.186 48.853-57.344 37.675-52.651T927.957 512q-12.33-21.675-26.325-43.648t-37.675-52.65-48.853-57.345-59.648-54.186-70.656-46.848-81.152-31.659T512 213.334zm0 128q70.656 0 120.661 50.006T682.667 512 632.66 632.661 512 682.667 391.339 632.66 341.333 512t50.006-120.661T512 341.333zm0 85.334q-35.328 0-60.33 25.002T426.666 512t25.002 60.33T512 597.334t60.33-25.002T597.334 512t-25.002-60.33T512 426.666z" /></symbol>'});s.a.add(c);t.default=c},"18BR":function(e,t,n){"use strict";var r=n("CzPo");n.n(r).a},"28eg":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-exit-fullscreen",use:"icon-exit-fullscreen-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-exit-fullscreen"><path d="M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z" /></symbol>'});s.a.add(c);t.default=c},"3PhE":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-nested",use:"icon-nested-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-nested"><path d="M.002 9.2c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-5.043-3.58-9.132-7.997-9.132S.002 4.157.002 9.2zM31.997.066h95.981V18.33H31.997V.066zm0 45.669c0 5.044 3.58 9.132 7.998 9.132 4.417 0 7.997-4.088 7.997-9.132 0-3.263-1.524-6.278-3.998-7.91-2.475-1.63-5.524-1.63-7.998 0-2.475 1.632-4 4.647-4 7.91zM63.992 36.6h63.986v18.265H63.992V36.6zm-31.995 82.2c0 5.043 3.58 9.132 7.998 9.132 4.417 0 7.997-4.089 7.997-9.132 0-5.044-3.58-9.133-7.997-9.133s-7.998 4.089-7.998 9.133zm31.995-9.131h63.986v18.265H63.992V109.67zm0-27.404c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-3.263-1.524-6.277-3.998-7.909-2.475-1.631-5.524-1.631-7.998 0-2.475 1.632-4 4.646-4 7.91zm31.995-9.13h31.991V91.4H95.987V73.135z" /></symbol>'});s.a.add(c);t.default=c},"5TQQ":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-theme",use:"icon-theme-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-theme"><path d="M125.5 36.984L95.336 2.83C93.735 1.018 91.565 0 89.3 0c-2.263 0-4.433 1.018-6.033 2.83l-3.786 4.286c-1.6 1.812-3.77 2.83-6.032 2.831H54.553c-2.263 0-4.434-1.018-6.033-2.83L44.734 2.83C43.134 1.018 40.964 0 38.701 0c-2.263 0-4.434 1.018-6.034 2.83L2.5 36.984C.9 38.796 0 41.254 0 43.815c0 2.562.899 5.02 2.5 6.831L14.565 64.31c2.178 2.468 5.367 3.403 8.33 2.444 1.35-.435 2.709.592 2.709 2.18v49.407c0 5.313 3.84 9.66 8.532 9.66h59.726c4.693 0 8.532-4.347 8.532-9.66V68.934c0-1.59 1.36-2.616 2.71-2.181 2.962.96 6.15.024 8.329-2.444L125.5 50.646c1.6-1.811 2.499-4.269 2.499-6.83 0-2.563-.899-5.02-2.5-6.832z" /></symbol>'});s.a.add(c);t.default=c},"6xvN":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-form",use:"icon-form-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-form"><path d="M84.068 23.784c-1.02 0-1.877-.32-2.572-.96a8.588 8.588 0 0 1-1.738-2.237 11.524 11.524 0 0 1-1.042-2.621c-.232-.895-.348-1.641-.348-2.238V0h.278c.834 0 1.622.085 2.363.256.742.17 1.645.575 2.711 1.214 1.066.64 2.363 1.535 3.892 2.686 1.53 1.15 3.453 2.664 5.77 4.54 2.502 2.045 4.494 3.771 5.977 5.178 1.483 1.406 2.618 2.6 3.406 3.58.787.98 1.274 1.812 1.46 2.494.185.682.277 1.278.277 1.79v2.046H84.068zM127.3 84.01c.278.682.464 1.535.556 2.558.093 1.023-.37 2.003-1.39 2.94-.463.427-.88.832-1.25 1.215-.372.384-.696.704-.974.96a6.69 6.69 0 0 1-.973.767l-11.816-10.741a44.331 44.331 0 0 0 1.877-1.535 31.028 31.028 0 0 1 1.737-1.406c1.112-.938 2.317-1.343 3.615-1.215 1.297.128 2.363.405 3.197.83.927.427 1.923 1.173 2.989 2.239 1.065 1.065 1.876 2.195 2.432 3.388zM78.23 95.902c2.038 0 3.752-.511 5.143-1.534l-26.969 25.83H18.037c-1.761 0-3.684-.47-5.77-1.407a24.549 24.549 0 0 1-5.838-3.709 21.373 21.373 0 0 1-4.518-5.306c-1.204-2.003-1.807-4.07-1.807-6.202V16.495c0-1.79.44-3.665 1.32-5.626A18.41 18.41 0 0 1 5.04 5.562a21.798 21.798 0 0 1 5.213-3.964C12.198.533 14.237 0 16.37 0h53.24v15.984c0 1.62.278 3.367.834 5.242a16.704 16.704 0 0 0 2.572 5.179c1.159 1.577 2.665 2.898 4.518 3.964 1.853 1.066 4.078 1.598 6.673 1.598h20.295v42.325L85.458 92.45c1.02-1.364 1.529-2.856 1.529-4.476 0-2.216-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1c-2.409 0-4.448.789-6.116 2.366-1.668 1.577-2.502 3.474-2.502 5.69 0 2.217.834 4.092 2.502 5.626 1.668 1.535 3.707 2.302 6.117 2.302h52.13zM26.1 47.951c-2.41 0-4.449.789-6.117 2.366-1.668 1.577-2.502 3.473-2.502 5.69 0 2.216.834 4.092 2.502 5.626 1.668 1.534 3.707 2.302 6.117 2.302h52.13c2.409 0 4.47-.768 6.185-2.302 1.715-1.534 2.572-3.41 2.572-5.626 0-2.217-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1zm52.407 64.063l1.807-1.663 3.476-3.196a479.75 479.75 0 0 0 4.587-4.284 500.757 500.757 0 0 1 5.004-4.667c3.985-3.666 8.48-7.758 13.485-12.276l11.677 10.741-13.485 12.404-5.004 4.603-4.587 4.22a179.46 179.46 0 0 0-3.267 3.068c-.88.853-1.367 1.322-1.46 1.407-.463.341-.973.703-1.529 1.087-.556.383-1.112.703-1.668.959-.556.256-1.413.575-2.572.959a83.5 83.5 0 0 1-3.545 1.087 72.2 72.2 0 0 1-3.475.895c-1.112.256-1.946.426-2.502.511-1.112.17-1.854.043-2.224-.383-.371-.426-.464-1.151-.278-2.174.092-.511.278-1.279.556-2.302.278-1.023.602-2.067.973-3.132l1.042-3.005c.325-.938.58-1.577.765-1.918a10.157 10.157 0 0 1 2.224-2.941z" /></symbol>'});s.a.add(c);t.default=c},"94Jb":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-dashboard",use:"icon-dashboard-usage",viewBox:"0 0 128 100",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 100" id="icon-dashboard"><path d="M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z" /></symbol>'});s.a.add(c);t.default=c},"9NTF":function(e,t,n){},"9i3r":function(e,t,n){"use strict";n.d(t,"a",function(){return r});var r=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"localhost";return e.match(/https?:\/\//)?e:function(e){return e.startsWith("localhost:")||e.startsWith("127.0.0.1:")}(e)?"http://".concat(e):"https://".concat(e)}},CzPo:function(e,t,n){},EqXK:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-shopping",use:"icon-shopping-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-shopping"><path d="M42.913 101.36c1.642 0 3.198.332 4.667.996a12.28 12.28 0 0 1 3.89 2.772c1.123 1.184 1.987 2.582 2.592 4.193.605 1.612.908 3.318.908 5.118 0 1.8-.303 3.507-.908 5.118-.605 1.611-1.469 3.01-2.593 4.194a13.3 13.3 0 0 1-3.889 2.843 10.582 10.582 0 0 1-4.667 1.066c-1.729 0-3.306-.355-4.732-1.066a13.604 13.604 0 0 1-3.825-2.843c-1.123-1.185-1.988-2.583-2.593-4.194a14.437 14.437 0 0 1-.907-5.118c0-1.8.302-3.506.907-5.118.605-1.61 1.47-3.009 2.593-4.193a12.515 12.515 0 0 1 3.825-2.772c1.426-.664 3.003-.996 4.732-.996zm53.932.285c1.643 0 3.22.331 4.733.995a11.386 11.386 0 0 1 3.889 2.772c1.08 1.185 1.945 2.583 2.593 4.194.648 1.61.972 3.317.972 5.118 0 1.8-.324 3.506-.972 5.117-.648 1.611-1.513 3.01-2.593 4.194a12.253 12.253 0 0 1-3.89 2.843 11 11 0 0 1-4.732 1.066 10.58 10.58 0 0 1-4.667-1.066 12.478 12.478 0 0 1-3.824-2.843c-1.08-1.185-1.945-2.583-2.593-4.194a13.581 13.581 0 0 1-.973-5.117c0-1.801.325-3.507.973-5.118.648-1.611 1.512-3.01 2.593-4.194a11.559 11.559 0 0 1 3.824-2.772 11.212 11.212 0 0 1 4.667-.995zm21.781-80.747c2.42 0 4.3.355 5.64 1.066 1.34.71 2.29 1.587 2.852 2.63a6.427 6.427 0 0 1 .778 3.34c-.044 1.185-.195 2.204-.454 3.057-.26.853-.8 2.606-1.62 5.26a589.268 589.268 0 0 1-2.788 8.743 1236.373 1236.373 0 0 0-3.047 9.453c-.994 3.128-1.75 5.592-2.269 7.393-1.123 3.79-2.55 6.42-4.278 7.89-1.728 1.469-3.846 2.203-6.352 2.203H39.023l1.945 12.795h65.342c4.148 0 6.223 1.943 6.223 5.828 0 1.896-.41 3.53-1.232 4.905-.821 1.374-2.442 2.061-4.862 2.061H38.505c-1.729 0-3.176-.426-4.343-1.28-1.167-.852-2.14-1.966-2.917-3.34a21.277 21.277 0 0 1-1.88-4.478 44.128 44.128 0 0 1-1.102-4.55c-.087-.568-.324-1.942-.713-4.122-.39-2.18-.865-4.904-1.426-8.174l-1.88-10.947c-.692-4.027-1.383-8.079-2.075-12.154-1.642-9.572-3.5-20.234-5.574-31.986H6.87c-1.296 0-2.377-.356-3.24-1.067a9.024 9.024 0 0 1-2.14-2.558 10.416 10.416 0 0 1-1.167-3.2C.108 8.53 0 7.488 0 6.54c0-1.896.583-3.46 1.75-4.69C2.917.615 4.494 0 6.482 0h13.095c1.728 0 3.111.284 4.148.853 1.037.569 1.858 1.28 2.463 2.132a8.548 8.548 0 0 1 1.297 2.701c.26.948.475 1.754.648 2.417.173.758.346 1.825.519 3.199.173 1.374.345 2.772.518 4.193.26 1.706.519 3.507.778 5.403h88.678z" /></symbol>'});s.a.add(c);t.default=c},F3lI:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-bug",use:"icon-bug-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-bug"><path d="M127.88 73.143c0 1.412-.506 2.635-1.518 3.669-1.011 1.033-2.209 1.55-3.592 1.55h-17.887c0 9.296-1.783 17.178-5.35 23.645l16.609 17.044c1.011 1.034 1.517 2.257 1.517 3.67 0 1.412-.506 2.635-1.517 3.668-.958 1.033-2.155 1.55-3.593 1.55-1.438 0-2.635-.517-3.593-1.55l-15.811-16.063a15.49 15.49 0 0 1-1.196 1.06c-.532.434-1.65 1.208-3.353 2.322a50.104 50.104 0 0 1-5.192 2.974c-1.758.87-3.94 1.658-6.546 2.364-2.607.706-5.189 1.06-7.748 1.06V47.044H58.89v73.062c-2.716 0-5.417-.367-8.106-1.102-2.688-.734-5.003-1.631-6.945-2.692a66.769 66.769 0 0 1-5.268-3.179c-1.571-1.057-2.73-1.94-3.476-2.65L33.9 109.34l-14.611 16.877c-1.066 1.14-2.344 1.711-3.833 1.711-1.277 0-2.422-.434-3.434-1.304-1.012-.978-1.557-2.187-1.635-3.627-.079-1.44.333-2.705 1.236-3.794l16.129-18.51c-3.087-6.197-4.63-13.644-4.63-22.342H5.235c-1.383 0-2.58-.517-3.592-1.55S.125 74.545.125 73.132c0-1.412.506-2.635 1.518-3.668 1.012-1.034 2.21-1.55 3.592-1.55h17.887V43.939L9.308 29.833c-1.012-1.033-1.517-2.256-1.517-3.669 0-1.412.505-2.635 1.517-3.668 1.012-1.034 2.21-1.55 3.593-1.55s2.58.516 3.593 1.55l13.813 14.106h67.396l13.814-14.106c1.012-1.034 2.21-1.55 3.592-1.55 1.384 0 2.581.516 3.593 1.55 1.012 1.033 1.518 2.256 1.518 3.668 0 1.413-.506 2.636-1.518 3.67l-13.814 14.105v23.975h17.887c1.383 0 2.58.516 3.593 1.55 1.011 1.033 1.517 2.256 1.517 3.668l-.005.01zM89.552 26.175H38.448c0-7.23 2.489-13.386 7.466-18.469C50.892 2.623 56.92.082 64 .082c7.08 0 13.108 2.541 18.086 7.624 4.977 5.083 7.466 11.24 7.466 18.469z" /></symbol>'});s.a.add(c);t.default=c},"F9+T":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-international",use:"icon-international-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-international"><path d="M83.287 103.01c-1.57-3.84-6.778-10.414-15.447-19.548-2.327-2.444-2.182-4.306-1.338-9.862v-.64c.553-3.81 1.513-6.05 14.313-8.087 6.516-1.018 8.203 1.57 10.589 5.178l.785 1.193a12.625 12.625 0 0 0 6.43 5.207c1.134.524 2.53 1.164 4.421 2.24 4.596 2.53 4.596 5.41 4.596 11.753v.727a26.91 26.91 0 0 1-5.178 17.454 59.055 59.055 0 0 1-19.025 11.026c3.49-6.546.814-14.313 0-16.553l-.146-.087zM64 5.12a58.502 58.502 0 0 1 25.484 5.818 54.313 54.313 0 0 0-12.859 10.327c-.93 1.28-1.716 2.473-2.472 3.579-2.444 3.694-3.637 5.352-5.818 5.614a25.105 25.105 0 0 1-4.219 0c-4.276-.29-10.094-.64-11.956 4.422-1.193 3.23-1.396 11.956 2.444 16.495.66 1.077.778 2.4.32 3.578a7.01 7.01 0 0 1-2.066 3.229 18.938 18.938 0 0 1-2.909-2.91 18.91 18.91 0 0 0-8.32-6.603c-1.25-.349-2.647-.64-3.985-.93-3.782-.786-8.03-1.688-9.019-3.812a14.895 14.895 0 0 1-.727-5.818 21.935 21.935 0 0 0-1.396-9.25 8.873 8.873 0 0 0-5.557-4.946A58.705 58.705 0 0 1 64 5.12zM0 64c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64z" /></symbol>'});s.a.add(c);t.default=c},FDDl:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-qq",use:"icon-qq-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-qq"><path d="M18.448 57.545l-.244-.744-.198-.968-.132-.53v-2.181l.236-.859.24-.908.317-.953.428-1.06.561-1.103.794-1.104v-.773l.077-.724.123-.984.34-1.106.313-1.194.25-.548.289-.511.371-.569.405-.423v-2.73l.234-1.407.236-1.633.42-1.955.577-2.035.43-1.118.426-1.217.468-1.135.559-1.216.57-1.332.655-1.247.737-1.331.929-1.33.43-.762.457-.624.995-1.406 1.025-1.403 1.163-1.444 1.246-1.405 1.352-1.384 1.41-1.423 1.708-1.536 1.083-.934 1.322-1.008 1.34-.89 1.448-.855 1.392-.76 1.57-.63 1.667-.775 1.657-.532 1.653-.552 1.787-.548 1.785-.417 1.876-.347L59.128.68l1.879-.245 1.876-.252 2.002-.106h5.912l1.97.243 1.981.231 2.019.207 1.874.441 1.979.413 1.857.475 2.035.53 1.862.646 1.782.738 1.904.78 1.736.853 1.689.95 1.655 1.044 1.425.971.662.548.693.401 1.323 1.1 1.115 1.064 1.112 1.1 1.083 1.214.894 1.178 1.064 1.217.74 1.306.752 1.162.798 1.352.661 1.175 1.113 2.489.546 1.286.428 1.192.428 1.294.384 1.217.267 1.047.347 1.231.607 2.198.388 1.924.253 1.861.217 1.497.342 2.28.077.362.274.41.737 1.18.473.8.42.832.534.892.472 1.07.307 1.093.334 1.2.252 1.232.115.605.106.746v.648l-.106.643v.8l-.192.774-.35 1.5-.403.76-.299.852v.213l.142.264.4.623 1.746 2.53 1.377 1.9.66 1.267.889 1.389.774 1.52.893 1.627.894 1.828 1.006 2.069.567 1.268.518 1.239.447 1.307.44 1.175.336 1.235.342 1.16.432 2.261.343 2.31.235 2.05v2.891l-.158 1.025-.226 1.768-.308 1.59-.48 1.44-.18.588-.336.707-.28.493-.375.607-.33.383-.42.494-.375.4-.401.34-.48.207-.432.207-.355.114h-.543l-.346-.114-.66-.32-.302-.212-.317-.223-.347-.304-.35-.342-.579-.63-.684-.89-.539-.917-.538-.734-.526-.855-.741-1.517-.833-1.579-.098-.055h-.138l-.338.247-.196.415-.326.516-.567 1.533-.856 2.182-1.096 2.626-.824 1.308-.864 1.366-1.027 1.536-1.09 1.503-.557.68-.676.743-1.555 1.497.136.135.21.214.777.446 3.235 1.524 1.41.779 1.347.756 1.332.953 1.187.982.574.443.432.511.445.593.367.643.198.533.242.64.105.554.115.647-.115.433v.44l-.105.454-.242.415-.092.325-.22.394-.587.784-.543.627-.42.47-.35.348-.893.638-1.01.556-1.077.532-1.155.511-1.287.495-.693.207-.608.167-1.496.342-1.545.325-1.552.323-1.689.27-1.74.072-1.785.21h-5.539l-1.998-.114-1.86-.168-2.005-.27-1.99-.209-2.095-.286-2.03-.495-1.981-.374-1.968-.552-2.019-.707-1.98-.585-1.044-.342-.927-.323-.586-.223-.582-.12h-1.647l-1.904-.131-.962-.096-1.24-.135-.795.705-1.085.665-1.471.701-1.628.875-.99.475-1.033.376-2.281.914-1.24.305-1.3.343-1.803.344-1.13.086-1.193.1-1.246.135-1.45.053h-5.926l-3.346-.053-3.25-.321-1.644-.23-1.589-.23-1.546-.227-1.547-.305-1.442-.456-1.434-.325-1.294-.51-1.223-.474-1.142-.533-.99-.583-.984-.71-.336-.343-.44-.415-.334-.362-.3-.417-.278-.415-.215-.42-.311-.89-.109-.46-.138-.51v-.473l.138-.533v-.53l.109-.53v-1.069l.052-.564.259-.647.215-.646.39-.779.286-.3.236-.348.615-.738.49-.38.464-.266.428-.338.676-.21.543-.324.676-.341.77-.227.775-.231.897-.192.85-.11 1.008-.13 1.093-.081.284-.092h.063l.137-.115v-.13l-.2-.266-.58-.27-1.45-1.231-.975-.761-1.127-.967-1.136-1.082-1.181-1.382-1.36-1.558-.508-.843-.672-.87-.58-1.007-.522-1.1-.704-1.047-.459-1.194-.547-1.192-.546-1.33-.397-1.273-.378-1.575-.112-.057h-.115l-.059-.113h-.14l-.23.113-.114.057-.158.264-.057.321-.119.286-.206.477-.664 1.157-.345.701-.546.612-.58.736-.641.816-.677.724-.795.701-.734.658-.814.524-.89.546-.855.325-1.008.247-.99.095h-.233l-.228-.095-.18-.384-.29-.188-.38-.912-.237-.493-.255-.707-.21-.734-.113-.724-.313-1.648-.12-.972v-3.185l.12-2.379.196-1.214.23-1.252.21-1.347.374-1.254.42-1.443.431-1.407.578-1.448.545-1.38.754-1.4.699-1.52.855-1.425 1.006-1.538 1.023-1.382 1.069-1.538.891-1.071 1.142-1.227 1.202-1.237.56-.59.678-.662.985-.836 1.012-.853 1.647-1.446 1.242-.889z" /></symbol>'});s.a.add(c);t.default=c},GPBF:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-link",use:"icon-link-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-link"><path d="M115.625 127.937H.063V12.375h57.781v12.374H12.438v90.813h90.813V70.156h12.374z" /><path d="M116.426 2.821l8.753 8.753-56.734 56.734-8.753-8.745z" /><path d="M127.893 37.982h-12.375V12.375H88.706V0h39.187z" /></symbol>'});s.a.add(c);t.default=c},HIWW:function(e,t,n){"use strict";var r=n("MoCq");n.n(r).a},Hnev:function(e,t,n){"use strict";var r=n("UqWv");n.n(r).a},ICep:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-guide 2",use:"icon-guide 2-usage",viewBox:"0 0 1000 1000",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000" id="icon-guide 2"><path d="M11.576 547.9l282.848 126.404 409.285-383.26 137.057-128.341L361.234 714.22l362.77 146.362c8.742 3.327 18.733-1.33 21.855-10.644v-.666L999.985.374 10.327 514.636c-8.742 4.657-11.864 15.302-8.117 24.616 2.497 3.991 5.62 7.318 9.366 8.648zM360.61 999.626l141.112-161.663-141.112-61.206v222.869z" /></symbol>'});s.a.add(c);t.default=c},JYDz:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-language",use:"icon-language-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-language"><path d="M84.742 36.8c2.398 7.2 5.595 12.8 11.19 18.4 4.795-4.8 7.992-11.2 10.39-18.4h-21.58zm-52.748 40h20.78l-10.39-28-10.39 28z" /><path d="M111.916 0H16.009C7.218 0 .025 7.2.025 16v96c0 8.8 7.193 16 15.984 16h95.907c8.791 0 15.984-7.2 15.984-16V16c0-8.8-6.394-16-15.984-16zM72.754 103.2c-1.598 1.6-3.197 1.6-4.795 1.6-.8 0-2.398 0-3.197-.8-.8-.8-1.599 0-1.599-.8s-.799-1.6-1.598-3.2c-.8-1.6-.8-2.4-1.599-4l-3.196-8.8H28.797L25.6 96c-1.598 3.2-2.398 5.6-3.197 7.2-.8 1.6-2.398 1.6-4.795 1.6-1.599 0-3.197-.8-4.796-1.6-1.598-1.6-2.397-2.4-2.397-4 0-.8 0-1.6.799-3.2.8-1.6.8-2.4 1.598-4l17.583-44.8c.8-1.6.8-3.2 1.599-4.8.799-1.6 1.598-3.2 2.397-4 .8-.8 1.599-2.4 3.197-3.2 1.599-.8 3.197-.8 4.796-.8 1.598 0 3.196 0 4.795.8 1.598.8 2.398 1.6 3.197 3.2.799.8 1.598 2.4 2.397 4 .8 1.6 1.599 3.2 2.398 5.6l17.583 44c1.598 3.2 2.398 5.6 2.398 7.2-.8.8-1.599 2.4-2.398 4zM116.711 72c-8.791-3.2-15.185-7.2-20.78-12-5.594 5.6-12.787 9.6-21.579 12l-2.397-4c8.791-2.4 15.984-5.6 21.579-11.2C87.939 51.2 83.144 44 81.545 36h-7.992v-3.2h21.58c-1.6-2.4-3.198-5.6-4.796-8l2.397-.8c1.599 2.4 3.997 5.6 5.595 8.8h19.98v4h-7.992c-2.397 8-6.393 15.2-11.189 20 5.595 4.8 11.988 8.8 20.78 11.2l-3.197 4z" /></symbol>'});s.a.add(c);t.default=c},Kcm3:function(e,t,n){},Kj24:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-password",use:"icon-password-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-password"><path d="M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z" /></symbol>'});s.a.add(c);t.default=c},LxGF:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-peoples",use:"icon-peoples-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-peoples"><path d="M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z" /><path d="M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z" /></symbol>'});s.a.add(c);t.default=c},MEYL:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-money",use:"icon-money-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-money"><path d="M54.122 127.892v-28.68H7.513V87.274h46.609v-12.4H7.513v-12.86h38.003L.099 0h22.6l32.556 45.07c3.617 5.144 6.44 9.611 8.487 13.385 1.788-3.05 4.89-7.779 9.301-14.186L103.93 0h24.01L82.385 62.013h38.34v12.862h-46.41v12.4h46.41v11.937h-46.41v28.68H54.123z" /></symbol>'});s.a.add(c);t.default=c},MMMJ:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-example",use:"icon-example-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-example"><path d="M96.258 57.462h31.421C124.794 27.323 100.426 2.956 70.287.07v31.422a32.856 32.856 0 0 1 25.971 25.97zm-38.796-25.97V.07C27.323 2.956 2.956 27.323.07 57.462h31.422a32.856 32.856 0 0 1 25.97-25.97zm12.825 64.766v31.421c30.46-2.885 54.507-27.253 57.713-57.712H96.579c-2.886 13.466-13.146 23.726-26.292 26.291zM31.492 70.287H.07c2.886 30.46 27.253 54.507 57.713 57.713V96.579c-13.466-2.886-23.726-13.146-26.291-26.292z" /></symbol>'});s.a.add(c);t.default=c},MoCq:function(e,t,n){},MokB:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-list",use:"icon-list-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-list"><path d="M1.585 12.087c0 6.616 3.974 11.98 8.877 11.98 4.902 0 8.877-5.364 8.877-11.98 0-6.616-3.975-11.98-8.877-11.98-4.903 0-8.877 5.364-8.877 11.98zM125.86.107H35.613c-1.268 0-2.114 1.426-2.114 2.852v18.255c0 1.712 1.057 2.853 2.114 2.853h90.247c1.268 0 2.114-1.426 2.114-2.853V2.96c0-1.711-1.057-2.852-2.114-2.852zM.106 62.86c0 6.615 3.974 11.979 8.876 11.979 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zM124.17 50.88H33.921c-1.268 0-2.114 1.425-2.114 2.851v18.256c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852V53.73c0-1.426-.846-2.852-2.114-2.852zM.106 115.913c0 6.616 3.974 11.98 8.876 11.98 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zm124.064-11.98H33.921c-1.268 0-2.114 1.426-2.114 2.853v18.255c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852v-18.255c0-1.427-.846-2.853-2.114-2.853z" /></symbol>'});s.a.add(c);t.default=c},P8iQ:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-settings",use:"icon-settings-usage",viewBox:"0 0 490.2 490.2",content:'<symbol xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 490.2 490.2" id="icon-settings">\r\n<g>\r\n\t<g>\r\n\t\t<g>\r\n\t\t\t<path d="M469.1,173.1h-37.5c-1-3.1-3.1-6.3-4.2-9.4l26.1-26.1c8.3-8.3,8.3-20.9,0-29.2l-71.9-71.9c-8.3-8.3-20.9-8.3-29.2,0\r\n\t\t\t\tl-26.1,26.1c-3.1-2.1-6.3-3.1-9.4-4.2V20.9C316.9,9.4,307.5,0,296,0H193.9C182.4,0,173,9.4,173,20.9v37.5c-3.1,1-6.3,3.1-9.4,4.2\r\n\t\t\t\tl-26.1-26.1c-8.3-8.3-20.9-8.3-29.2,0l-71.9,71.9c-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l26.1,26.1\r\n\t\t\t\tc-2.1,3.1-3.1,6.3-4.2,9.4H20.9C9.4,173.1,0,182.5,0,194v102.2c0,11.5,9.4,20.9,20.9,20.9h37.5c1,3.1,3.1,6.3,4.2,9.4l-26.1,26.1\r\n\t\t\t\tc-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l71.9,71.9c8.3,8.3,20.9,8.3,29.2,0l26.1-26.1c3.1,2.1,6.3,3.1,9.4,4.2v37.5\r\n\t\t\t\tc0,11.5,9.4,20.9,20.9,20.9h102.2c11.5,0,20.9-9.4,20.9-20.9v-37.5c3.1-1,6.3-3.1,9.4-4.2l26.1,26.1c8.3,8.3,20.9,8.3,29.2,0\r\n\t\t\t\tl71.9-71.9c8.3-8.3,8.3-20.9,0-29.2l-26.1-26.1c2.1-3.1,3.1-6.3,4.2-9.4h37.5c11.5,0,20.9-9.4,20.9-20.9V193.9\r\n\t\t\t\tC490,182.4,480.6,173.1,469.1,173.1z M448.3,275.2H417c-9.4,0-16.7,6.3-19.8,14.6c-3.1,10.4-7.3,20.9-12.5,30.2\r\n\t\t\t\tc-5.2,8.3-3.1,18.8,3.1,25l21.9,21.9L367,409.7l-21.9-21.9c-7.3-6.3-16.7-7.3-25-3.1c-9.4,5.2-19.8,9.4-30.2,12.5\r\n\t\t\t\tc-8.3,2.1-14.6,10.4-14.6,19.8v31.3h-60.5l0,0V417c0-9.4-6.3-16.7-14.6-19.8c-10.4-3.1-20.9-7.3-30.2-12.5\r\n\t\t\t\tc-8.3-5.2-18.8-3.1-25,3.1l-22,21.9L80.3,367l21.9-21.9c6.3-7.3,7.3-16.7,3.1-25c-5.2-9.4-9.4-19.8-12.5-30.2\r\n\t\t\t\tc-2.1-8.3-10.4-14.6-19.8-14.6H41.7v-60.5H73c9.4,0,16.7-6.3,19.8-14.6c3.1-10.4,7.3-20.9,12.5-30.2c5.2-8.3,3.1-18.8-3.1-25\r\n\t\t\t\tl-21.9-22L123,80.3l21.9,21.9c7.3,6.3,16.7,7.3,25,3.1c9.4-5.2,19.8-9.4,30.2-12.5c8.3-2.1,14.6-10.4,14.6-19.8V41.7h60.5V73\r\n\t\t\t\tc0,9.4,6.3,16.7,14.6,19.8c10.4,3.1,20.9,7.3,30.2,12.5c8.3,5.2,18.8,3.1,25-3.1l22-21.9l42.7,42.7l-21.9,21.9\r\n\t\t\t\tc-6.3,7.3-7.3,16.7-3.1,25c5.2,9.4,9.4,19.8,12.5,30.2c2.1,8.3,10.4,14.6,19.8,14.6h31.3L448.3,275.2L448.3,275.2z" />\r\n\t\t\t<path d="M245,131.4c-62.6,0-113.6,51.1-113.6,113.6s51,113.6,113.6,113.6s113.6-51,113.6-113.6S307.6,131.4,245,131.4z\r\n\t\t\t\t M245,316.9c-39.6,0-71.9-32.3-71.9-71.9s32.3-71.9,71.9-71.9s71.9,32.3,71.9,71.9S284.6,316.9,245,316.9z" />\r\n\t\t</g>\r\n\t</g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n<g>\r\n</g>\r\n</symbol>'});s.a.add(c);t.default=c},"R/8a":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-message",use:"icon-message-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-message"><path d="M0 20.967v59.59c0 11.59 8.537 20.966 19.075 20.966h28.613l1 26.477L76.8 101.523h32.125c10.538 0 19.075-9.377 19.075-20.966v-59.59C128 9.377 119.463 0 108.925 0h-89.85C8.538 0 0 9.377 0 20.967zm82.325 33.1c0-5.524 4.013-9.935 9.037-9.935 5.026 0 9.038 4.41 9.038 9.934 0 5.524-4.025 9.934-9.038 9.934-5.024 0-9.037-4.41-9.037-9.934zm-27.613 0c0-5.524 4.013-9.935 9.038-9.935s9.037 4.41 9.037 9.934c0 5.524-4.025 9.934-9.037 9.934-5.025 0-9.038-4.41-9.038-9.934zm-27.1 0c0-5.524 4.013-9.935 9.038-9.935s9.038 4.41 9.038 9.934c0 5.524-4.026 9.934-9.05 9.934-5.013 0-9.025-4.41-9.025-9.934z" /></symbol>'});s.a.add(c);t.default=c},"R/Hx":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-table",use:"icon-table-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-table"><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z" /><path d="M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z" /></symbol>'});s.a.add(c);t.default=c},SZWj:function(e,t,n){"use strict";var r=n("Xm3t");n.n(r).a},TfVu:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-eye",use:"icon-eye-usage",viewBox:"0 0 128 64",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 64" id="icon-eye"><path d="M127.072 7.994c1.37-2.208.914-5.152-.914-6.87-2.056-1.717-4.797-1.226-6.396.982-.229.245-25.586 32.382-55.74 32.382-29.24 0-55.74-32.382-55.968-32.627-1.6-1.963-4.57-2.208-6.397-.49C-.17 3.086-.399 6.275 1.2 8.238c.457.736 5.94 7.36 14.62 14.72L4.17 35.96c-1.828 1.963-1.6 5.152.228 6.87.457.98 1.6 1.471 2.742 1.471s2.284-.49 3.198-1.472l12.564-13.983c5.94 4.416 13.021 8.587 20.788 11.53l-4.797 17.418c-.685 2.699.686 5.397 3.198 6.133h1.37c2.057 0 3.884-1.472 4.341-3.68L52.6 42.83c3.655.736 7.538 1.227 11.422 1.227 3.883 0 7.767-.49 11.422-1.227l4.797 17.173c.457 2.208 2.513 3.68 4.34 3.68.457 0 .914 0 1.143-.246 2.513-.736 3.883-3.434 3.198-6.133l-4.797-17.172c7.767-2.944 14.848-7.114 20.788-11.53l12.336 13.738c.913.981 2.056 1.472 3.198 1.472s2.284-.49 3.198-1.472c1.828-1.963 1.828-4.906.228-6.87l-11.65-13.001c9.366-7.36 14.849-14.474 14.849-14.474z" /></symbol>'});s.a.add(c);t.default=c},Tfa4:function(e,t,n){},"Uf/o":function(e,t,n){var r={"./404.svg":"oUrx","./bug.svg":"F3lI","./chart.svg":"yCkv","./clipboard.svg":"vDVG","./component.svg":"VtY+","./dashboard.svg":"94Jb","./documentation.svg":"kPu2","./drag.svg":"m7++","./edit.svg":"qkZ8","./email.svg":"y7eQ","./example.svg":"MMMJ","./excel.svg":"ZZmv","./exit-fullscreen.svg":"28eg","./eye-open.svg":"1+ww","./eye.svg":"TfVu","./form.svg":"6xvN","./fullscreen.svg":"mSHS","./guide 2.svg":"ICep","./guide.svg":"ZoO1","./icon.svg":"nZHn","./international.svg":"F9+T","./language.svg":"JYDz","./link.svg":"GPBF","./list.svg":"MokB","./lock.svg":"qwAt","./message.svg":"R/8a","./money.svg":"MEYL","./nested.svg":"3PhE","./password.svg":"Kj24","./pdf.svg":"+aF5","./people.svg":"0Fbn","./peoples.svg":"LxGF","./qq.svg":"FDDl","./search.svg":"jo2x","./settings.svg":"P8iQ","./shopping.svg":"EqXK","./size.svg":"hkRB","./star.svg":"cIpu","./tab.svg":"j7e1","./table.svg":"R/Hx","./theme.svg":"5TQQ","./tree.svg":"k80C","./user.svg":"s7Vf","./wechat.svg":"gNoN","./zip.svg":"iqZD"};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id="Uf/o"},UqWv:function(e,t,n){},"VtY+":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-component",use:"icon-component-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-component"><path d="M0 0h54.857v54.857H0V0zm0 73.143h54.857V128H0V73.143zm73.143 0H128V128H73.143V73.143zm27.428-18.286C115.72 54.857 128 42.577 128 27.43 128 12.28 115.72 0 100.571 0 85.423 0 73.143 12.28 73.143 27.429c0 15.148 12.28 27.428 27.428 27.428z" /></symbol>'});s.a.add(c);t.default=c},Vtdi:function(e,t,n){"use strict";n.r(t);var r={};n.r(r),n.d(r,"parseTime",function(){return Re}),n.d(r,"formatTime",function(){return Ue}),n.d(r,"timeAgo",function(){return Gr}),n.d(r,"numberFormatter",function(){return Yr}),n.d(r,"toThousandFilter",function(){return $r});var a=n("Kw5r"),o=n("p46w"),s=n.n(o),c=(n("9d8Q"),n("XJYT")),i=n.n(c),u=(n("D66Q"),n("sg+I"),{name:"App"}),l=n("KHd+"),p=Object(l.a)(u,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{attrs:{id:"app"}},[t("router-view")],1)},[],!1,null,null,null);p.options.__file="App.vue";var d=p.exports,h=n("L2JU"),m=n("o0o1"),f=n.n(m),v=n("yXPU"),g=n.n(v),b=n("t3Un"),w=n("X4fA"),y=n("9i3r");function S(e,t){return E.apply(this,arguments)}function E(){return(E=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/need_reboot",method:"get",headers:k(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function T(e,t){return x.apply(this,arguments)}function x(){return(x=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/restart",method:"get",headers:k(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var k=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},O={state:{sidebar:{opened:!s.a.get("sidebarStatus")||!!+s.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop",language:s.a.get("language")||"en",needReboot:!1,size:s.a.get("size")||"medium",invitesEnabled:!1},mutations:{TOGGLE_SIDEBAR:function(e){e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1,e.sidebar.opened?s.a.set("sidebarStatus",1):s.a.set("sidebarStatus",0)},CLOSE_SIDEBAR:function(e,t){s.a.set("sidebarStatus",0),e.sidebar.opened=!1,e.sidebar.withoutAnimation=t},TOGGLE_DEVICE:function(e,t){e.device=t},SET_INVITES_ENABLED:function(e,t){e.invitesEnabled=t},SET_LANGUAGE:function(e,t){e.language=t,s.a.set("language",t)},TOGGLE_REBOOT:function(e,t){e.needReboot=t},SET_SIZE:function(e,t){e.size=t,s.a.set("size",t)}},actions:{closeSideBar:function(e,t){(0,e.commit)("CLOSE_SIDEBAR",t.withoutAnimation)},NeedReboot:function(e){return g()(f.a.mark(function t(){var n,r,a;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,t.next=3,S(r.authHost,r.token);case 3:a=t.sent,n("TOGGLE_REBOOT",a.data.need_reboot);case 5:case"end":return t.stop()}},t)}))()},RestartApplication:function(e){return g()(f.a.mark(function t(){var n,r;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,t.next=3,T(r.authHost,r.token);case 3:n("TOGGLE_REBOOT",!1);case 4:case"end":return t.stop()}},t)}))()},SetInvitesEnabled:function(e,t){(0,e.commit)("SET_INVITES_ENABLED",t)},setLanguage:function(e,t){(0,e.commit)("SET_LANGUAGE",t)},setSize:function(e,t){(0,e.commit)("SET_SIZE",t)},toggleDevice:function(e,t){(0,e.commit)("TOGGLE_DEVICE",t)},toggleSideBar:function(e){(0,e.commit)("TOGGLE_SIDEBAR")}}},_=n("cDf5"),A=n.n(_),L=n("QILm"),j=n.n(L),I=n("lSNA"),P=n.n(I),C=n("mm8V"),D=n("mSNy");function R(e){var t=function(e,t){if("object"!==A()(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==A()(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===A()(t)?t:String(t)}function U(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?U(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var M={state:{activeTab:"",currentFilesPage:1,currentPage:1,filesPageSize:30,localPackFilesCount:0,localPacks:{},localPacksCount:0,pageSize:50,remoteInstance:"",remotePacks:{}},mutations:{SET_ACTIVE_TAB:function(e,t){e.activeTab=t},SET_FILES_COUNT:function(e,t){e.localPackFilesCount=t},SET_FILES_PAGE:function(e,t){e.currentFilesPage=t},SET_LOCAL_PACKS:function(e,t){e.localPacks=t},SET_LOCAL_PACKS_COUNT:function(e,t){e.localPacksCount=t},SET_PACK_FILES:function(e,t){var n=t.name,r=t.files;e.localPacks=z(z({},e.localPacks),{},P()({},n,z(z({},e.localPacks[n]),{},{files:r})))},SET_PAGE:function(e,t){e.currentPage=t},SET_REMOTE_INSTANCE:function(e,t){e.remoteInstance=t},SET_REMOTE_PACKS:function(e,t){e.remotePacks=t},UPDATE_LOCAL_PACK_VAL:function(e,t){var n=t.name,r=t.key,o=t.value;a.default.set(e.localPacks[n].pack,r,o)},UPDATE_LOCAL_PACK_PACK:function(e,t){var n=t.name,r=t.pack;e.localPacks[n].pack=r},UPDATE_LOCAL_PACK_FILES:function(e,t){var n=t.name,r=t.files;a.default.set(e.localPacks[n],"files",r)}},actions:{AddNewEmojiFile:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=t.packName,s=t.file,i=t.shortcode,u=t.filename,n.prev=2,n.next=5,Object(C.a)(o,s,i,u,a.authHost,a.token);case 5:l=n.sent,n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(2),n.abrupt("return");case 11:Object(c.Message)({message:"".concat(D.a.t("settings.successfullyUpdated")," ").concat(o," ").concat(D.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),r("UPDATE_LOCAL_PACK_FILES",{name:o,files:l.data});case 13:case"end":return n.stop()}},n,null,[[2,8]])}))()},DeleteEmojiFile:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,i,u,l,p;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=e.state,i=t.packName,u=t.shortcode,l=s.localPacks[i].files,l[u],p=j()(l,[u].map(R)),r("UPDATE_LOCAL_PACK_FILES",{name:i,files:p}),n.prev=4,n.next=7,Object(C.d)(i,u,o.authHost,o.token);case 7:n.next=12;break;case 9:return n.prev=9,n.t0=n.catch(4),n.abrupt("return");case 12:Object(c.Message)({message:"".concat(D.a.t("settings.successfullyUpdated")," ").concat(i," ").concat(D.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),0===Object.keys(p).length&&s.currentFilesPage>1?a("FetchSinglePack",{name:i,page:s.currentFilesPage-1}):a("FetchSinglePack",{name:i,page:s.currentFilesPage});case 14:case"end":return n.stop()}},n,null,[[4,9]])}))()},CreatePack:function(e,t){return g()(f.a.mark(function n(){var r,a;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.getters,a=t.name,n.next=4,Object(C.c)(r.authHost,r.token,a);case 4:case"end":return n.stop()}},n)}))()},DeletePack:function(e,t){return g()(f.a.mark(function n(){var r,a;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.getters,a=t.name,n.next=4,Object(C.e)(r.authHost,r.token,a);case 4:case"end":return n.stop()}},n)}))()},DownloadFrom:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.getters,a=t.instanceAddress,o=t.packName,s=t.as,n.next=4,Object(C.f)(a,o,s,r.authHost,r.token);case 4:"ok"===n.sent.data&&Object(c.Message)({message:"".concat(D.a.t("settings.successfullyDownloaded")," ").concat(o),type:"success",duration:5e3});case 6:case"end":return n.stop()}},n)}))()},FetchLocalEmojiPacks:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=e.state,n.next=3,Object(C.i)(t,o.pageSize,a.authHost,a.token);case 3:s=n.sent,c=s.data,i=c.packs,u=c.count,l=Object.keys(i).reduce(function(e,t){var n=i[t],r=(n.files,j()(n,["files"]));return e[t]=r,e},{}),r("SET_LOCAL_PACKS",l),r("SET_LOCAL_PACKS_COUNT",u),r("SET_PAGE",t);case 10:case"end":return n.stop()}},n)}))()},FetchSinglePack:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l,p;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.getters,a=e.commit,o=e.state,s=t.name,c=t.page,n.next=4,Object(C.g)(s,c,o.filesPageSize,r.authHost,r.token);case 4:i=n.sent,u=i.data,l=u.files,p=u.files_count,a("SET_PACK_FILES",{name:s,files:l}),a("SET_FILES_COUNT",p),a("SET_FILES_PAGE",c);case 10:case"end":return n.stop()}},n)}))()},ImportFromFS:function(e){return g()(f.a.mark(function t(){var n,r,a;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,t.next=3,Object(C.h)(n.authHost,n.token);case 3:200===(r=t.sent).status&&(a=r.data.length>0?"".concat(D.a.t("settings.successfullyImported")," ").concat(r.data):D.a.t("settings.nowNewPacksToImport"),Object(c.Message)({message:a,type:"success",duration:5e3}));case 5:case"end":return t.stop()}},t)}))()},ReloadEmoji:function(e){return g()(f.a.mark(function t(){var n;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,t.next=3,Object(C.k)(n.authHost,n.token);case 3:case"end":return t.stop()}},t)}))()},SavePackMetadata:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=e.state,s=t.packName,n.next=4,Object(C.l)(a.authHost,a.token,s,o.localPacks[s].pack);case 4:200===(i=n.sent).status&&(Object(c.Message)({message:"".concat(D.a.t("settings.successfullyUpdated")," ").concat(s," ").concat(D.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),r("UPDATE_LOCAL_PACK_PACK",{name:s,pack:i.data}));case 6:case"end":return n.stop()}},n)}))()},SetActiveTab:function(e,t){(0,e.commit)("SET_ACTIVE_TAB",t)},SetRemoteEmojiPacks:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=t.remoteInstance,n.next=4,Object(C.j)(a.authHost,a.token,o);case 4:s=n.sent,c=s.data,r("SET_REMOTE_INSTANCE",o),r("SET_REMOTE_PACKS",c.packs);case 8:case"end":return n.stop()}},n)}))()},SetRemoteInstance:function(e,t){(0,e.commit)("SET_REMOTE_INSTANCE",t)},UpdateEmojiFile:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,i,u,l,p,d,h;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=e.state,i=t.packName,u=t.shortcode,l=t.newShortcode,p=t.newFilename,d=t.force,h=Object.keys(s.localPacks[i].files).reduce(function(e,t){return t===u?e[l]=p:e[t]=s.localPacks[i].files[t],e},{}),r("UPDATE_LOCAL_PACK_FILES",{name:i,files:h}),n.prev=4,n.next=7,Object(C.m)(i,u,l,p,d,o.authHost,o.token);case 7:n.next=12;break;case 9:return n.prev=9,n.t0=n.catch(4),n.abrupt("return");case 12:Object(c.Message)({message:"".concat(D.a.t("settings.successfullyUpdated")," ").concat(i," ").concat(D.a.t("settings.metadatLowerCase")),type:"success",duration:5e3}),a("FetchSinglePack",{name:i,page:s.currentFilesPage});case 14:case"end":return n.stop()}},n,null,[[4,9]])}))()},UpdateLocalPackVal:function(e,t){return g()(f.a.mark(function n(){return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:(0,e.commit)("UPDATE_LOCAL_PACK_VAL",t);case 2:case"end":return n.stop()}},n)}))()}}},V={state:{logs:[]},mutations:{ADD_ERROR_LOG:function(e,t){e.logs.push(t)}},actions:{addErrorLog:function(e,t){(0,e.commit)("ADD_ERROR_LOG",t)}}},H={sidebar:function(e){return e.app.sidebar},language:function(e){return e.app.language},size:function(e){return e.app.size},device:function(e){return e.app.device},visitedViews:function(e){return e.tagsView.visitedViews},cachedViews:function(e){return e.tagsView.cachedViews},token:function(e){return e.user.token},avatar:function(e){return e.user.avatar},name:function(e){return e.user.name},introduction:function(e){return e.user.introduction},status:function(e){return e.user.status},roles:function(e){return e.user.roles},setting:function(e){return e.user.setting},permission_routers:function(e){return e.permission.routers},addRouters:function(e){return e.permission.addRouters},errorLogs:function(e){return e.errorLog.logs},users:function(e){return e.users.fetchedUsers},authHost:function(e){return e.user.authHost},settings:function(e){return e.settings}};function B(e,t,n,r){return N.apply(this,arguments)}function N(){return(N=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/invite_token",method:"post",headers:W(a),data:n&&n.length>0?{max_use:t,expires_at:n}:{max_use:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function F(e,t,n,r){return G.apply(this,arguments)}function G(){return(G=g()(f.a.mark(function e(t,n,r,a){var o;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=n.length>0?{email:t,name:n}:{email:t},e.next=3,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/email_invite",method:"post",headers:W(a),data:o});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Y(e,t){return $.apply(this,arguments)}function $(){return($=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users/invites",method:"get",headers:W(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function q(e,t,n){return K.apply(this,arguments)}function K(){return(K=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/revoke_invite",method:"post",headers:W(r),data:{token:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var W=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},Z={state:{inviteTokens:[],loading:!1,newToken:{}},mutations:{SET_LOADING:function(e,t){e.loading=t},SET_NEW_TOKEN:function(e,t){e.newToken=t},SET_TOKENS:function(e,t){e.inviteTokens=t}},actions:{FetchInviteTokens:function(e){return g()(f.a.mark(function t(){var n,r,a;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,n("SET_LOADING",!0),t.next=4,Y(r.authHost,r.token);case 4:a=t.sent,n("SET_TOKENS",a.data.invites.reverse()),n("SET_LOADING",!1);case 7:case"end":return t.stop()}},t)}))()},GenerateInviteToken:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=t.maxUse,c=t.expiresAt,n.prev=2,n.next=5,B(s,c,o.authHost,o.token);case 5:i=n.sent,u=i.data,r("SET_NEW_TOKEN",{token:u.token,maxUse:u.max_use,expiresAt:u.expires_at}),n.next=13;break;case 10:return n.prev=10,n.t0=n.catch(2),n.abrupt("return");case 13:a("FetchInviteTokens");case 14:case"end":return n.stop()}},n,null,[[2,10]])}))()},InviteUserViaEmail:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.commit,e.dispatch,r=e.getters,a=t.email,o=t.name,n.prev=2,n.next=5,F(a,o,r.authHost,r.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:Object(c.Message)({message:D.a.t("invites.emailSent"),type:"success",duration:5e3});case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},RemoveNewToken:function(e){(0,e.commit)("SET_NEW_TOKEN",{})},RevokeToken:function(e,t){return g()(f.a.mark(function n(){var r,a;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.commit,r=e.dispatch,a=e.getters,n.prev=1,n.next=4,q(t,a.authHost,a.token);case 4:n.next=9;break;case 6:return n.prev=6,n.t0=n.catch(1),n.abrupt("return");case 9:r("FetchInviteTokens");case 10:case"end":return n.stop()}},n,null,[[1,6]])}))()}}};function Q(e,t,n,r){return J.apply(this,arguments)}function J(){return(J=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/media_proxy_caches?page=".concat(t,"&page_size=").concat(n),method:"get",headers:oe(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function X(e,t,n,r){return ee.apply(this,arguments)}function ee(){return(ee=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/media_proxy_caches/purge",method:"post",headers:oe(a),data:{urls:t,ban:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function te(e,t,n){return ne.apply(this,arguments)}function ne(){return(ne=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/media_proxy_caches/delete",method:"post",headers:oe(r),data:{urls:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function re(e,t,n,r,a){return ae.apply(this,arguments)}function ae(){return(ae=g()(f.a.mark(function e(t,n,r,a,o){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/media_proxy_caches?query=".concat(t,"&page=").concat(n,"&page_size=").concat(r),method:"get",headers:oe(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var oe=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},se={state:{bannedUrls:[],currentPage:1,loading:!1,pageSize:50,totalUrlsCount:0},mutations:{SET_BANNED_URLS:function(e,t){e.bannedUrls=t.map(function(e){return{url:e}})},SET_TOTAL_URLS_COUNT:function(e,t){e.totalUrlsCount=t},SET_LOADING:function(e,t){e.loading=t},SET_PAGE:function(e,t){e.currentPage=t}},actions:{ListBannedUrls:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=e.state,s=t.page,r("SET_LOADING",!0),n.next=5,Q(s,o.pageSize,a.authHost,a.token);case 5:c=n.sent,r("SET_BANNED_URLS",c.data.urls),r("SET_TOTAL_URLS_COUNT",c.data.count),r("SET_PAGE",s),r("SET_LOADING",!1);case 10:case"end":return n.stop()}},n)}))()},PurgeUrls:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=e.state,s=t.urls,i=t.ban,n.next=4,X(s,i,a.authHost,a.token);case 4:Object(c.Message)({message:D.a.t("mediaProxyCache.evictedMessage"),type:"success",duration:5e3}),i&&r("ListBannedUrls",{page:o.currentPage});case 6:case"end":return n.stop()}},n)}))()},RemoveBannedUrls:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=e.state,n.next=3,te(t,a.authHost,a.token);case 3:r("ListBannedUrls",{page:o.currentPage});case 4:case"end":return n.stop()}},n)}))()},SearchUrls:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=e.commit,a=e.dispatch,o=e.getters,s=e.state,c=t.query,i=t.page,0!==c.length){n.next=7;break}r("SET_SEARCH_QUERY",c),a("ListBannedUrls",{page:i}),n.next=16;break;case 7:return r("SET_LOADING",!0),r("SET_SEARCH_QUERY",c),n.next=11,re(c,i,s.pageSize,o.authHost,o.token);case 11:u=n.sent,r("SET_BANNED_URLS",u.data.urls),r("SET_TOTAL_URLS_COUNT",u.data.count),r("SET_PAGE",i),r("SET_LOADING",!1);case 16:case"end":return n.stop()}},n)}))()}}},ce=n("LvDl"),ie=n.n(ce);function ue(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function le(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ue(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ue(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function pe(e,t,n){return de.apply(this,arguments)}function de(){return(de=g()(f.a.mark(function e(t,n,r){var a,o,s=arguments;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a=s.length>3&&void 0!==s[3]?s[3]:1,o=new URLSearchParams(ie.a.omitBy(le(le({},r),{},{page:a}),ie.a.isUndefined)).toString(),e.next=4,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/moderation_log?".concat(o),method:"get",headers:ge(n)});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function he(e,t){return me.apply(this,arguments)}function me(){return(me=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users?filters=is_admin",method:"get",headers:ge(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function fe(e,t){return ve.apply(this,arguments)}function ve(){return(ve=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/users?filters=is_moderator",method:"get",headers:ge(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ge=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},be={state:{fetchedLog:[],logItemsCount:0,admins:[],moderators:[],logLoading:!0,adminsLoading:!0},mutations:{SET_LOG_LOADING:function(e,t){e.logLoading=t},SET_ADMINS_LOADING:function(e,t){e.adminsLoading=t},SET_MODERATION_LOG:function(e,t){e.fetchedLog=t},SET_MODERATION_LOG_COUNT:function(e,t){e.logItemsCount=t},SET_ADMINS:function(e,t){e.admins=t},SET_MODERATORS:function(e,t){e.moderators=t}},actions:{FetchModerationLog:function(e){var t=arguments;return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=t.length>1&&void 0!==t[1]?t[1]:{},n.next=4,pe(a.authHost,a.token,o);case 4:s=n.sent,r("SET_MODERATION_LOG",s.data.items),r("SET_MODERATION_LOG_COUNT",s.data.total),r("SET_LOG_LOADING",!1);case 8:case"end":return n.stop()}},n)}))()},FetchAdmins:function(e){return g()(f.a.mark(function t(){var n,r,a,o;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,t.next=3,he(r.authHost,r.token);case 3:return a=t.sent,t.next=6,fe(r.authHost,r.token);case 6:o=t.sent,n("SET_ADMINS",a.data),n("SET_MODERATORS",o.data),n("SET_ADMINS_LOADING",!1);case 10:case"end":return t.stop()}},t)}))()}}},we=n("RIqP"),ye=n.n(we);function Se(e,t){return Ee.apply(this,arguments)}function Ee(){return(Ee=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/v1/instance/peers",method:"get",headers:Te(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Te=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},xe={state:{fetchedPeers:[],loading:!0},mutations:{SET_PEERS:function(e,t){e.fetchedPeers=t},SET_LOADING:function(e,t){e.loading=t}},actions:{FetchPeers:function(e){return g()(f.a.mark(function t(){var n,r,a;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,t.next=3,Se(r.authHost,r.token);case 3:a=t.sent,n("SET_PEERS",ye()(a.data).sort()),n("SET_LOADING",!1);case 6:case"end":return t.stop()}},t)}))()}}},ke=n("jE9Z"),Oe={name:"Hamburger",props:{isActive:{type:Boolean,default:!1},toggleClick:{type:Function,default:null}}},_e=(n("18BR"),Object(l.a)(Oe,function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticStyle:{padding:"0 15px"},on:{click:this.toggleClick}},[t("svg",{staticClass:"hamburger",class:{"is-active":this.isActive},attrs:{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64"}},[t("path",{attrs:{d:"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z"}})])])},[],!1,null,"69c6c5c4",null));function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}_e.options.__file="index.vue";var Le={components:{Hamburger:_e.exports},computed:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ae(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ae(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},Object(h.b)(["sidebar","name","avatar","device"])),methods:{toggleSideBar:function(){this.$store.dispatch("toggleSideBar")},logout:function(){this.$store.dispatch("LogOut").then(function(){location.reload()})}}},je=(n("fhHp"),Object(l.a)(Le,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"navbar"},[n("hamburger",{staticClass:"hamburger-container",attrs:{"toggle-click":e.toggleSideBar,"is-active":e.sidebar.opened}}),e._v(" "),n("div",{staticClass:"right-menu"},[n("el-dropdown",{staticClass:"avatar-container right-menu-item hover-effect",attrs:{trigger:"click"}},[n("div",{staticClass:"avatar-wrapper"},[n("img",{staticClass:"user-avatar",attrs:{src:e.avatar+"?imageView2/1/w/80/h/80"}})]),e._v(" "),n("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[n("el-dropdown-item",[n("span",{staticStyle:{display:"block"},on:{click:e.logout}},[e._v(e._s(e.$t("navbar.logOut")))])])],1)],1)],1)],1)},[],!1,null,"28de7ff2",null));je.options.__file="Navbar.vue";var Ie=je.exports,Pe=n("33yf"),Ce=n.n(Pe);function De(e){return this.$te("route."+e)?this.$t("route."+e):e}function Re(e,t){if(0===arguments.length)return null;var n,r=t||"{y}-{m}-{d} {h}:{i}:{s}";"object"===A()(e)?n=e:("string"==typeof e&&/^[0-9]+$/.test(e)&&(e=parseInt(e)),"number"==typeof e&&10===e.toString().length&&(e*=1e3),n=new Date(e));var a={y:n.getFullYear(),m:n.getMonth()+1,d:n.getDate(),h:n.getHours(),i:n.getMinutes(),s:n.getSeconds(),a:n.getDay()};return r.replace(/{(y|m|d|h|i|s|a)+}/g,function(e,t){var n=a[t];return"a"===t?["日","一","二","三","四","五","六"][n]:(e.length>0&&n<10&&(n="0"+n),n||0)})}function Ue(e,t){e=1e3*+e;var n=new Date(e),r=(Date.now()-n)/1e3;return r<30?"刚刚":r<3600?Math.ceil(r/60)+"分钟前":r<86400?Math.ceil(r/3600)+"小时前":r<172800?"1天前":t?Re(e,t):n.getMonth()+1+"月"+n.getDate()+"日"+n.getHours()+"时"+n.getMinutes()+"分"}function ze(e){return/^(https?:|mailto:|tel:)/.test(e)}var Me={name:"Item",props:{count:{type:String,default:null},icon:{type:String,default:""},title:{type:String,default:""}}},Ve=(n("zEvO"),Object(l.a)(Me,function(){var e=this.$createElement,t=this._self._c||e;return t("span",[t("svg-icon",{attrs:{"icon-class":this.icon}}),this._v(" "),t("span",{attrs:{slot:"title"},slot:"title"},[this._v(this._s(this.title))]),this._v(" "),t("el-badge",{staticClass:"count-badge",attrs:{value:this.count,type:"primary"}})],1)},[],!1,null,"52140d98",null));Ve.options.__file="Item.vue";var He=Ve.exports,Be={props:{to:{type:String,required:!0}},methods:{linkProps:function(e){return ze(e)?{is:"a",href:e,target:"_blank",rel:"noopener"}:{is:"router-link",to:e}}}},Ne=Object(l.a)(Be,function(){var e=this.$createElement;return(this._self._c||e)("component",this._b({},"component",this.linkProps(this.to),!1),[this._t("default")],2)},[],!1,null,null,null);Ne.options.__file="Link.vue";var Fe=Ne.exports,Ge=n("ZhIB"),Ye=n.n(Ge);function $e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function qe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?$e(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$e(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Ke={name:"SidebarItem",components:{Item:He,AppLink:Fe},mixins:[{computed:{device:function(){return this.$store.state.app.device}},mounted:function(){this.fixBugIniOS()},methods:{fixBugIniOS:function(){var e=this,t=this.$refs.subMenu;if(t){var n=t.handleMouseleave;t.handleMouseleave=function(t){"mobile"!==e.device&&n(t)}}}}}],props:{item:{type:Object,required:!0},isNest:{type:Boolean,default:!1},basePath:{type:String,default:""}},data:function(){return{onlyOneChild:null}},computed:{invitesEnabled:function(){return"/invites"!==this.basePath||this.$store.state.app.invitesEnabled},normalizedReportsCount:function(){return Ye()(this.$store.state.reports.openReportsCount).format("0a")}},methods:{hasOneShowingChild:function(e,t){var n=this,r=e.filter(function(e){return!e.hidden&&(n.onlyOneChild=e,!0)});return 1===r.length||0===r.length&&(this.onlyOneChild=qe(qe({},t),{},{path:"",noShowingChildren:!0}),!0)},resolvePath:function(e){return this.isExternalLink(e)?e:Ce.a.resolve(this.basePath,e)},showCount:function(e){return"/reports"===e.path},isExternalLink:function(e){return ze(e)},generateTitle:De}},We=Object(l.a)(Ke,function(){var e=this,t=e.$createElement,n=e._self._c||t;return!e.item.hidden&&e.item.children&&e.invitesEnabled?n("div",{staticClass:"menu-wrapper"},[!e.hasOneShowingChild(e.item.children,e.item)||e.onlyOneChild.children&&!e.onlyOneChild.noShowingChildren||e.item.alwaysShow?n("el-submenu",{ref:"subMenu",attrs:{index:e.resolvePath(e.item.path)}},[n("template",{slot:"title"},[e.item.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:e.item.meta.icon,title:e.generateTitle(e.item.meta.title)}}):e._e()],1),e._v(" "),e._l(e.item.children,function(t){return[t.hidden?e._e():[t.children&&t.children.length>0?n("sidebar-item",{key:t.path,staticClass:"nest-menu",attrs:{"is-nest":!0,item:t,"base-path":e.resolvePath(t.path)}}):n("app-link",{key:t.name,attrs:{to:e.resolvePath(t.path)}},[n("el-menu-item",{attrs:{index:e.resolvePath(t.path)}},[t.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:t.meta.icon,title:e.generateTitle(t.meta.title)}}):e._e()],1)],1)]]})],2):[n("app-link",{attrs:{to:e.resolvePath(e.onlyOneChild.path)}},[n("el-menu-item",{class:{"submenu-title-noDropdown":!e.isNest},attrs:{index:e.resolvePath(e.onlyOneChild.path)}},[e.onlyOneChild.meta?n("item",{attrs:{count:e.showCount(e.item)?e.normalizedReportsCount:null,icon:e.onlyOneChild.meta.icon||e.item.meta.icon,title:e.generateTitle(e.onlyOneChild.meta.title)}}):e._e()],1)],1)]],2):e._e()},[],!1,null,null,null);We.options.__file="SidebarItem.vue";var Ze=We.exports,Qe=n("zx4i"),Je=n.n(Qe);function Xe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function et(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Xe(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xe(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var tt={components:{SidebarItem:Ze},computed:et(et({},Object(h.b)(["permission_routers","sidebar"])),{},{variables:function(){return Je.a},isCollapse:function(){return!this.sidebar.opened}}),mounted:function(){this.$store.dispatch("FetchOpenReportsCount")}},nt=Object(l.a)(tt,function(){var e=this.$createElement,t=this._self._c||e;return t("el-scrollbar",{attrs:{"wrap-class":"scrollbar-wrapper"}},[t("el-menu",{attrs:{"default-active":this.$route.path,collapse:this.isCollapse,"background-color":this.variables.menuBg,"text-color":this.variables.menuText,"active-text-color":this.variables.menuActiveText,mode:"vertical"}},this._l(this.permission_routers,function(e){return t("sidebar-item",{key:e.path,attrs:{item:e,"base-path":e.path}})}),1)],1)},[],!1,null,null,null);nt.options.__file="index.vue";var rt=nt.exports,at={name:"ScrollPane",data:function(){return{left:0}},methods:{handleScroll:function(e){var t=e.wheelDelta||40*-e.deltaY,n=this.$refs.scrollContainer.$refs.wrap;n.scrollLeft=n.scrollLeft+t/4},moveToTarget:function(e){var t=this.$refs.scrollContainer.$el.offsetWidth,n=this.$refs.scrollContainer.$refs.wrap,r=this.$parent.$refs.tag,a=null,o=null;if(r.length>0&&(a=r[0],o=r[r.length-1]),a===e)n.scrollLeft=0;else if(o===e)n.scrollLeft=n.scrollWidth-t;else{var s=r.findIndex(function(t){return t===e}),c=r[s-1],i=r[s+1],u=i.$el.offsetLeft+i.$el.offsetWidth+4,l=c.$el.offsetLeft-4;u>n.scrollLeft+t?n.scrollLeft=u-t:l<n.scrollLeft&&(n.scrollLeft=l)}}}},ot=(n("HIWW"),Object(l.a)(at,function(){var e=this,t=e.$createElement;return(e._self._c||t)("el-scrollbar",{ref:"scrollContainer",staticClass:"scroll-container",attrs:{vertical:!1},nativeOn:{wheel:function(t){return t.preventDefault(),e.handleScroll(t)}}},[e._t("default")],2)},[],!1,null,"591d6778",null));function st(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return ct(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ct(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,c=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){c=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(c)throw o}}}}function ct(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function it(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}ot.options.__file="index.vue";var ut={components:{ScrollPane:ot.exports},data:function(){return{visible:!1,top:0,left:0,selectedTag:{},affixTags:[]}},computed:{visitedViews:function(){return this.$store.state.tagsView.visitedViews},routers:function(){return this.$store.state.permission.routers}},watch:{$route:function(){this.addTags(),this.moveToCurrentTag()},visible:function(e){e?document.body.addEventListener("click",this.closeMenu):document.body.removeEventListener("click",this.closeMenu)}},mounted:function(){this.initTags(),this.addTags()},methods:{generateTitle:De,isActive:function(e){return e.path===this.$route.path},filterAffixTags:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"/",r=[];return e.forEach(function(e){if(e.meta&&e.meta.affix&&r.push({path:Ce.a.resolve(n,e.path),name:e.name,meta:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?it(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):it(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},e.meta)}),e.children){var a=t.filterAffixTags(e.children,e.path);a.length>=1&&(r=[].concat(ye()(r),ye()(a)))}}),r},initTags:function(){var e,t=st(this.affixTags=this.filterAffixTags(this.routers));try{for(t.s();!(e=t.n()).done;){var n=e.value;n.name&&this.$store.dispatch("addVisitedView",n)}}catch(e){t.e(e)}finally{t.f()}},addTags:function(){return this.$route.name&&this.$store.dispatch("addView",this.$route),!1},moveToCurrentTag:function(){var e=this,t=this.$refs.tag;this.$nextTick(function(){var n,r=st(t);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(a.to.path===e.$route.path){e.$refs.scrollPane.moveToTarget(a),a.to.fullPath!==e.$route.fullPath&&e.$store.dispatch("updateVisitedView",e.$route);break}}}catch(e){r.e(e)}finally{r.f()}})},refreshSelectedTag:function(e){var t=this;this.$store.dispatch("delCachedView",e).then(function(){var n=e.fullPath;t.$nextTick(function(){t.$router.replace({path:"/redirect"+n})})})},closeSelectedTag:function(e){var t=this;this.$store.dispatch("delView",e).then(function(n){var r=n.visitedViews;t.isActive(e)&&t.toLastView(r)})},closeOthersTags:function(){var e=this;this.$router.push(this.selectedTag),this.$store.dispatch("delOthersViews",this.selectedTag).then(function(){e.moveToCurrentTag()})},closeAllTags:function(e){var t=this;this.$store.dispatch("delAllViews").then(function(n){var r=n.visitedViews;t.affixTags.some(function(t){return t.path===e.path})||t.toLastView(r)})},toLastView:function(e){var t=e.slice(-1)[0];t?this.$router.push(t):this.$router.push("/")},openMenu:function(e,t){var n=this.$el.getBoundingClientRect().left,r=this.$el.offsetWidth-105,a=t.clientX-n+15;this.left=a>r?r:a,this.top=t.clientY,this.visible=!0,this.selectedTag=e},closeMenu:function(){this.visible=!1}}},lt=(n("Hnev"),n("Yymj"),Object(l.a)(ut,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"tags-view-container"},[n("scroll-pane",{ref:"scrollPane",staticClass:"tags-view-wrapper"},e._l(e.visitedViews,function(t){return n("router-link",{key:t.path,ref:"tag",refInFor:!0,staticClass:"tags-view-item",class:e.isActive(t)?"active":"",attrs:{to:{path:t.path,query:t.query,fullPath:t.fullPath},tag:"span"},nativeOn:{mouseup:function(n){return"button"in n&&1!==n.button?null:e.closeSelectedTag(t)},contextmenu:function(n){return n.preventDefault(),e.openMenu(t,n)}}},[e._v("\n "+e._s(e.generateTitle(t.title))+"\n "),t.meta.affix?e._e():n("span",{staticClass:"el-icon-close",on:{click:function(n){return n.preventDefault(),n.stopPropagation(),e.closeSelectedTag(t)}}})])}),1),e._v(" "),n("ul",{directives:[{name:"show",rawName:"v-show",value:e.visible,expression:"visible"}],staticClass:"contextmenu",style:{left:e.left+"px",top:e.top+"px"}},[n("li",{on:{click:function(t){return e.refreshSelectedTag(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.refresh")))]),e._v(" "),e.selectedTag.meta&&e.selectedTag.meta.affix?e._e():n("li",{on:{click:function(t){return e.closeSelectedTag(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.close")))]),e._v(" "),n("li",{on:{click:e.closeOthersTags}},[e._v(e._s(e.$t("tagsView.closeOthers")))]),e._v(" "),n("li",{on:{click:function(t){return e.closeAllTags(e.selectedTag)}}},[e._v(e._s(e.$t("tagsView.closeAll")))])])],1)},[],!1,null,"e1cdb714",null));lt.options.__file="TagsView.vue";var pt=lt.exports,dt={name:"AppMain",computed:{cachedViews:function(){return this.$store.state.tagsView.cachedViews},key:function(){return this.$route.fullPath}}},ht=(n("Z+gY"),Object(l.a)(dt,function(){var e=this.$createElement,t=this._self._c||e;return t("section",{staticClass:"app-main"},[t("transition",{attrs:{name:"fade-transform",mode:"out-in"}},[t("keep-alive",{attrs:{include:this.cachedViews}},[t("router-view",{key:this.key})],1)],1)],1)},[],!1,null,"f852c4f2",null));ht.options.__file="AppMain.vue";var mt=ht.exports,ft=document.body,vt={name:"Layout",components:{Navbar:Ie,Sidebar:rt,AppMain:mt,TagsView:pt},mixins:[{watch:{$route:function(e){"mobile"===this.device&&this.sidebar.opened&&Ur.dispatch("closeSideBar",{withoutAnimation:!1})}},beforeMount:function(){window.addEventListener("resize",this.resizeHandler)},mounted:function(){var e=this.isMobile(),t=this.isTablet();(e||t)&&(Ur.dispatch("toggleDevice",e?"mobile":"tablet"),Ur.dispatch("closeSideBar",{withoutAnimation:!0}))},methods:{isMobile:function(){return ft.getBoundingClientRect().width-3<480},isTablet:function(){var e=ft.getBoundingClientRect();return e.width-3<801&&e.width-3>480},resizeHandler:function(){if(!document.hidden){var e=this.isMobile(),t=this.isTablet();e||t?(Ur.dispatch("toggleDevice",e?"mobile":"tablet"),Ur.dispatch("closeSideBar",{withoutAnimation:!0})):Ur.dispatch("toggleDevice","desktop")}}}}],computed:{sidebar:function(){return this.$store.state.app.sidebar},device:function(){return this.$store.state.app.device},classObj:function(){return{hideSidebar:!this.sidebar.opened,openSidebar:this.sidebar.opened,withoutAnimation:this.sidebar.withoutAnimation,mobile:"mobile"===this.device}}},methods:{handleClickOutside:function(){this.$store.dispatch("closeSideBar",{withoutAnimation:!1})}}},gt=(n("SZWj"),Object(l.a)(vt,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-wrapper",class:e.classObj},["mobile"===e.device&&e.sidebar.opened?n("div",{staticClass:"drawer-bg",on:{click:e.handleClickOutside}}):e._e(),e._v(" "),n("sidebar",{staticClass:"sidebar-container"}),e._v(" "),n("div",{staticClass:"main-container"},[n("navbar"),e._v(" "),n("app-main")],1)],1)},[],!1,null,"767d264f",null));gt.options.__file="Layout.vue";var bt=gt.exports;a.default.use(ke.a);var wt=[""]||!1,yt=wt.includes("settings"),St={path:"/settings",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-5118"),n.e("chunk-565e")]).then(n.bind(null,"YcIK"))},name:"Settings",meta:{title:"settings",icon:"settings",noCache:!0}}]},Et=wt.includes("statuses"),Tt={path:"/statuses",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-2d97"),n.e("chunk-176e")]).then(n.bind(null,"FtQ1"))},name:"Statuses",meta:{title:"statuses",icon:"form",noCache:!0}}]},xt=wt.includes("reports"),kt={path:"/reports",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-40a4")]).then(n.bind(null,"cEOe"))},name:"Reports",meta:{title:"reports",icon:"documentation",noCache:!0}}]},Ot=wt.includes("invites"),_t={path:"/invites",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-7c6b")]).then(n.bind(null,"HMof"))},name:"Invites",meta:{title:"invites",icon:"guide",noCache:!0}}]},At=wt.includes("emoji-packs"),Lt={path:"/emoji_packs",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-97e2")]).then(n.bind(null,"26YS"))},name:"Emoji Packs",meta:{title:"emoji-packs",icon:"eye-open",noCache:!0}}]},jt=wt.includes("moderation-log"),It={path:"/moderation_log",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-654e")]).then(n.bind(null,"CmY0"))},name:"Moderation Log",meta:{title:"moderationLog",icon:"list",noCache:!0}}]},Pt=wt.includes("media-proxy-cache"),Ct={path:"/media_proxy_cache",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-60a9")]).then(n.bind(null,"mAEd"))},name:"MediaProxy Cache",meta:{title:"mediaProxyCache",icon:"example",noCache:!0}}]},Dt=[{path:"/redirect",component:bt,hidden:!0,children:[{path:"/redirect/:path*",component:function(){return n.e("7zzA").then(n.bind(null,"7zzA"))}}]},{path:"/login-pleroma",component:function(){return Promise.all([n.e("oAJy"),n.e("chunk-16d0")]).then(n.bind(null,"iRgq"))},hidden:!0},{path:"/login",component:function(){return Promise.all([n.e("oAJy"),n.e("chunk-9a72")]).then(n.bind(null,"ntYl"))},hidden:!0},{path:"/auth-redirect",component:function(){return n.e("JEtC").then(n.bind(null,"JEtC"))},hidden:!0},{path:"/404",component:function(){return n.e("chunk-68ea").then(n.bind(null,"/eX4"))},hidden:!0},{path:"/401",component:function(){return n.e("chunk-6e81").then(n.bind(null,"UUO+"))},hidden:!0},{path:"",component:bt,redirect:"/users/index"}],Rt=new ke.a({scrollBehavior:function(){return{y:0}},routes:Dt}),Ut=[{path:"/users",component:bt,children:[{path:"index",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-2d97"),n.e("chunk-0171")]).then(n.bind(null,"RGjw"))},name:"Users",meta:{title:"users",icon:"peoples",noCache:!0}}]}].concat(ye()(Et?[]:[Tt]),ye()(xt?[]:[kt]),ye()(Ot?[]:[_t]),ye()(At?[]:[Lt]),ye()(jt?[]:[It]),ye()(Pt?[]:[Ct]),ye()(yt?[]:[St]),[{path:"/users/:id",component:bt,children:[{path:"",name:"UsersShow",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-6e8c")]).then(n.bind(null,"4bFr"))}}],hidden:!0},{path:"/statuses/:id",component:bt,children:[{path:"",name:"StatusShow",component:function(){return Promise.all([n.e("chunk-commons"),n.e("chunk-d55e"),n.e("chunk-7503")]).then(n.bind(null,"rwwt"))}}],hidden:!0},{path:"*",redirect:"/404",hidden:!0}]);function zt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Mt(e,t){var n=[];return e.forEach(function(e){var r=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?zt(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):zt(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},e);(function(e,t){return!t.meta||!t.meta.roles||e.some(function(e){return t.meta.roles.includes(e)})})(t,r)&&(r.children&&(r.children=Mt(r.children,t)),n.push(r))}),n}var Vt={state:{routers:[],addRouters:[]},mutations:{SET_ROUTERS:function(e,t){e.addRouters=t,e.routers=Dt.concat(t)}},actions:{GenerateRoutes:function(e,t){var n=e.commit;return new Promise(function(e){var r,a=t.roles;r=a.includes("admin")?Ut:Mt(Ut,a),n("SET_ROUTERS",r),e()})}}};function Ht(e,t){return Bt.apply(this,arguments)}function Bt(){return(Bt=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/relay",method:"get",headers:$t(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Nt(e,t,n){return Ft.apply(this,arguments)}function Ft(){return(Ft=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/relay",method:"post",headers:$t(r),data:{relay_url:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Gt(e,t,n){return Yt.apply(this,arguments)}function Yt(){return(Yt=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/relay",method:"delete",headers:$t(r),data:{relay_url:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var $t=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},qt={state:{fetchedRelays:[],loading:!0},mutations:{SET_LOADING:function(e,t){e.loading=t},SET_RELAYS:function(e,t){e.fetchedRelays=t},ADD_RELAY:function(e,t){e.fetchedRelays=[].concat(ye()(e.fetchedRelays),[{actor:t}])},DELETE_RELAY:function(e,t){e.fetchedRelays=e.fetchedRelays.filter(function(e){return e.actor!==t})}},actions:{FetchRelays:function(e){return g()(f.a.mark(function t(){var n,r,a,o;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,n("SET_LOADING",!0),t.next=4,Ht(r.authHost,r.token);case 4:a=t.sent,o=a.data,n("SET_RELAYS",o.relays),n("SET_LOADING",!1);case 8:case"end":return t.stop()}},t)}))()},AddRelay:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,r("ADD_RELAY",t),n.prev=2,n.next=5,Nt(t,o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,a("FetchRelays"),n.finish(10);case 13:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()},DeleteRelay:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,r("DELETE_RELAY",t),n.prev=2,n.next=5,Gt(t,o.authHost,o.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,a("FetchRelays"),n.finish(10);case 13:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()}}};function Kt(e,t,n){return Wt.apply(this,arguments)}function Wt(){return(Wt=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/reports",method:"patch",headers:en(r),data:{reports:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Zt(e,t,n,r,a){return Qt.apply(this,arguments)}function Qt(){return(Qt=g()(f.a.mark(function e(t,n,r,a,o){var s;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s=t.length>0?"/api/pleroma/admin/reports?state=".concat(t,"&page=").concat(n,"&page_size=").concat(r):"/api/pleroma/admin/reports?page=".concat(n,"&page_size=").concat(r),e.next=3,Object(b.a)({baseURL:Object(y.a)(a),url:s,method:"get",headers:en(o)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Jt(){return(Jt=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/reports/".concat(n,"/notes"),method:"post",headers:en(a),data:{content:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Xt(){return(Xt=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/reports/".concat(n,"/notes/").concat(t),method:"delete",headers:en(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var en=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}};function tn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function nn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?tn(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tn(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var rn={state:{currentPage:1,fetchedReports:[],loading:!0,openReportsCount:0,pageSize:50,stateFilter:"",totalReportsCount:0},mutations:{SET_LAST_REPORT_ID:function(e,t){e.idOfLastReport=t},SET_LOADING:function(e,t){e.loading=t},SET_OPEN_REPORTS_COUNT:function(e,t){e.openReportsCount=t},SET_PAGE:function(e,t){e.currentPage=t},SET_REPORTS:function(e,t){e.fetchedReports=t},SET_REPORTS_COUNT:function(e,t){e.totalReportsCount=t},SET_REPORTS_FILTER:function(e,t){e.stateFilter=t}},actions:{ChangeReportState:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.commit,a=e.dispatch,o=e.getters,s=e.state,Kt(t,o.authHost,o.token),c=s.fetchedReports.map(function(e){return t.map(function(e){return e.id}).includes(e.id)?nn(nn({},e),{},{state:t[0].state}):e}),r("SET_REPORTS",c),a("FetchOpenReportsCount");case 5:case"end":return n.stop()}},n)}))()},ClearFetchedReports:function(e){(0,e.commit)("SET_REPORTS",[])},FetchReports:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=e.state,r("SET_LOADING",!0),n.next=4,Zt(o.stateFilter,t,o.pageSize,a.authHost,a.token);case 4:s=n.sent,c=s.data,r("SET_REPORTS",c.reports),r("SET_REPORTS_COUNT",c.total),r("SET_PAGE",t),r("SET_LOADING",!1);case 10:case"end":return n.stop()}},n)}))()},FetchOpenReportsCount:function(e){return g()(f.a.mark(function t(){var n,r,a,o,s;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,a=e.state,n("SET_LOADING",!0),t.next=4,Zt("open",a.currentPage,a.pageSize,r.authHost,r.token);case 4:o=t.sent,s=o.data,n("SET_OPEN_REPORTS_COUNT",s.total),n("SET_LOADING",!1);case 8:case"end":return t.stop()}},t)}))()},SetReportsFilter:function(e,t){(0,e.commit)("SET_REPORTS_FILTER",t)},CreateReportNote:function(e,t){var n=e.commit,r=e.getters,a=e.state,o=e.rootState,s=t.content,c=t.reportID;!function(e,t,n,r){Jt.apply(this,arguments)}(s,c,r.authHost,r.token);var i={user:{avatar:o.user.avatar,nickname:o.user.name,id:o.user.id},content:s,created_at:(new Date).getTime()};n("SET_REPORTS",a.fetchedReports.map(function(e){return e.id===c&&(e.notes=[].concat(ye()(e.notes),[i])),e}))},DeleteReportNote:function(e,t){var n=e.commit,r=e.getters,a=e.state,o=t.noteID,s=t.reportID;!function(e,t,n,r){Xt.apply(this,arguments)}(o,s,r.authHost,r.token),n("SET_REPORTS",a.fetchedReports.map(function(e){return e.id===s&&(e.notes=e.notes.filter(function(e){return e.id!==o})),e}))}}};function an(e,t){return on.apply(this,arguments)}function on(){return(on=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/config/descriptions",method:"get",headers:hn(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function sn(e,t){return cn.apply(this,arguments)}function cn(){return(cn=g()(f.a.mark(function e(t,n){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/api/pleroma/admin/config",method:"get",headers:hn(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function un(e,t,n){return ln.apply(this,arguments)}function ln(){return(ln=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/config",method:"post",headers:hn(r),data:{configs:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function pn(e,t,n){return dn.apply(this,arguments)}function dn(){return(dn=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/config",method:"post",headers:hn(r),data:{configs:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var hn=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},mn=n("h74u");function fn(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function vn(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?fn(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fn(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function gn(e){var t=function(e,t){if("object"!==A()(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==A()(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===A()(t)?t:String(t)}var bn={state:{activeTab:"instance",configDisabled:!0,db:{},description:[],loading:!0,searchData:{},settings:{},updatedSettings:{}},mutations:{CLEAR_UPDATED_SETTINGS:function(e){e.updatedSettings={}},REMOVE_SETTING_FROM_UPDATED:function(e,t){var n=t.group,r=t.key,a=t.subkeys;if(ie.a.get(e.updatedSettings,[n,r,a[0]])){var o=e.updatedSettings[n][r],s=a[0],c=(o[s],j()(o,[s].map(gn)));e.updatedSettings=c}},SET_ACTIVE_TAB:function(e,t){e.activeTab=t},SET_DESCRIPTION:function(e,t){e.description=t},SET_LOADING:function(e,t){e.loading=t},SET_SEARCH:function(e,t){e.searchData=t},SET_SETTINGS:function(e,t){var n=t.reduce(function(e,t){var n=t.group,r=t.key,a=t.value,o=Object(mn.f)(r,a)?{value:Object(mn.c)(r,a)}:Object(mn.d)(a,r);return e[n]=e[n]?vn(vn({},e[n]),{},P()({},r,o)):P()({},r,o),e},{}),r=t.reduce(function(e,t){var n=t.group,r=t.key,a=t.db;return a&&(e[n]=e[n]?vn(vn({},e[n]),{},P()({},r,a)):P()({},r,a)),e},{});e.settings=n,e.db=r},TOGGLE_TABS:function(e,t){e.configDisabled=t},UPDATE_SETTINGS:function(e,t){var n=t.group,r=t.key,a=t.input,o=t.value,s=t.type,c=!e.updatedSettings[n]||"Pleroma.Emails.Mailer"===r&&":adapter"===a?P()({},r,P()({},a,[s,o])):P()({},r,vn(vn({},e.updatedSettings[n][r]),P()({},a,[s,o])));e.updatedSettings[n]=vn(vn({},e.updatedSettings[n]),c)},UPDATE_STATE:function(e,t){var n=t.group,r=t.key,a=t.input,o=t.value,s="Pleroma.Emails.Mailer"===r&&":adapter"===a?P()({},r,P()({},a,o)):P()({},r,vn(vn({},e.settings[n][r]),P()({},a,o)));e.settings[n]=vn(vn({},e.settings[n]),s)}},actions:{FetchSettings:function(e){return g()(f.a.mark(function t(){var n,r,a,o,s;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.getters,n("SET_LOADING",!0),t.prev=2,t.next=5,sn(r.authHost,r.token);case 5:return a=t.sent,t.next=8,an(r.authHost,r.token);case 8:o=t.sent,n("SET_DESCRIPTION",o.data),s=Object(mn.a)(o.data),n("SET_SEARCH",s),n("SET_SETTINGS",a.data.configs),t.next=21;break;case 15:return t.prev=15,t.t0=t.catch(2),n("TOGGLE_TABS",!0),n("SET_ACTIVE_TAB","relays"),n("SET_LOADING",!1),t.abrupt("return");case 21:n("TOGGLE_TABS",!1),n("SET_LOADING",!1);case 23:case"end":return t.stop()}},t,null,[[2,15]])}))()},RemoveSetting:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,n.next=3,pn(t,a.authHost,a.token);case 3:return n.next=5,sn(a.authHost,a.token);case 5:o=n.sent,s=t[0],c=s.group,i=s.key,u=s.subkeys,r("SET_SETTINGS",o.data.configs),r("TOGGLE_REBOOT",o.data.need_reboot),r("REMOVE_SETTING_FROM_UPDATED",{group:c,key:i,subkeys:u||[]});case 10:case"end":return n.stop()}},n)}))()},SetActiveTab:function(e,t){(0,e.commit)("SET_ACTIVE_TAB",t)},SubmitChanges:function(e){return g()(f.a.mark(function t(){var n,r,a,o,s;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.getters,r=e.commit,a=e.state,o=Object.keys(a.updatedSettings).reduce(function(e,t){return[].concat(ye()(e),ye()(Object(mn.g)(t,a.updatedSettings[t],a.settings)))},[]),t.next=4,un(o,n.authHost,n.token);case 4:return t.next=6,sn(n.authHost,n.token);case 6:s=t.sent,r("SET_SETTINGS",s.data.configs),r("TOGGLE_REBOOT",s.data.need_reboot),r("CLEAR_UPDATED_SETTINGS");case 10:case"end":return t.stop()}},t)}))()},UpdateSettings:function(e,t){var n=e.commit,r=t.group,a=t.key,o=t.input,s=t.value,c=t.type;n("UPDATE_SETTINGS",a?{group:r,key:a,input:o,value:s,type:c}:{group:r,key:o,input:"_value",value:s,type:c})},UpdateState:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l,p;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=e.commit,a=e.getters,o=e.state,s=t.group,c=t.key,i=t.input,u=t.value,"Pleroma.Emails.Mailer"!==c||":adapter"!==i){n.next=8;break}return l=Object.keys(o.settings[s][c]).filter(function(e){return":adapter"!==e}),n.next=6,pn([{group:s,key:c,delete:!0,subkeys:l}],a.authHost,a.token);case 6:n.next=12;break;case 8:if("Pleroma.Upload"!==c||":uploader"!==i){n.next=12;break}return p="Pleroma.Uploaders.Local"===u?"Pleroma.Uploaders.S3":"Pleroma.Uploaders.Local",n.next=12,pn([{group:s,key:p,delete:!0}],a.authHost,a.token);case 12:r("UPDATE_STATE",c?{group:s,key:c,input:i,value:u}:{group:s,key:i,input:"value",value:u});case 13:case"end":return n.stop()}},n)}))()}}};function wn(e,t,n,r,a){return yn.apply(this,arguments)}function yn(){return(yn=g()(f.a.mark(function e(t,n,r,a,o){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/statuses/".concat(t),method:"put",headers:In(o),data:{sensitive:n,visibility:r}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Sn(e,t,n){return En.apply(this,arguments)}function En(){return(En=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/statuses/".concat(t),method:"delete",headers:In(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Tn(e,t,n){return xn.apply(this,arguments)}function xn(){return(xn=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/statuses/".concat(t),method:"get",headers:In(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function kn(e){return On.apply(this,arguments)}function On(){return(On=g()(f.a.mark(function e(t){var n,r,a,o,s,c;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.godmode,r=t.localOnly,a=t.authHost,o=t.token,s=t.pageSize,c=t.page,e.next=3,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/statuses?godmode=".concat(n,"&local_only=").concat(r,"&page=").concat(c,"&page_size=").concat(s),method:"get",headers:In(o)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _n(e,t,n){return An.apply(this,arguments)}function An(){return(An=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:t?"/api/pleroma/admin/stats?instance=".concat(t):"/api/pleroma/admin/stats",method:"get",headers:In(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Ln(e){return jn.apply(this,arguments)}function jn(){return(jn=g()(f.a.mark(function e(t){var n,r,a,o,s;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.instance,r=t.authHost,a=t.token,o=t.pageSize,s=t.page,e.next=3,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/instances/".concat(n,"/statuses?page=").concat(s,"&page_size=").concat(o),method:"get",headers:In(a)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}var In=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},Pn={state:{fetchedStatus:{},fetchedStatuses:[],loading:!1,statusAuthor:{},statusesByInstance:{selectedInstance:"",showLocal:!1,showPrivate:!1,page:1,pageSize:20,buttonLoading:!1,allLoaded:!1},statusVisibility:{}},mutations:{CHANGE_GODMODE_CHECKBOX_VALUE:function(e,t){e.statusesByInstance.showPrivate=t},CHANGE_LOCAL_CHECKBOX_VALUE:function(e,t){e.statusesByInstance.showLocal=t},CHANGE_PAGE:function(e,t){e.statusesByInstance.page=t},CHANGE_SELECTED_INSTANCE:function(e,t){e.statusesByInstance.selectedInstance=t},SET_STATUS:function(e,t){e.fetchedStatus=t},SET_STATUSES_BY_INSTANCE:function(e,t){e.fetchedStatuses=t},PUSH_STATUSES:function(e,t){e.fetchedStatuses=[].concat(ye()(e.fetchedStatuses),ye()(t))},SET_ALL_LOADED:function(e,t){e.statusesByInstance.allLoaded=t},SET_BUTTON_LOADING:function(e,t){e.statusesByInstance.buttonLoading=t},SET_LOADING:function(e,t){e.loading=t},SET_STATUS_VISIBILITY:function(e,t){e.statusVisibility=t},SET_STATUS_AUTHOR:function(e,t){e.statusAuthor=t}},actions:{ChangeStatusScope:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l,p;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=t.statusId,s=t.isSensitive,c=t.visibility,i=t.reportCurrentPage,u=t.userId,l=t.godmode,p=t.fetchStatusesByInstance,n.next=4,wn(o,s,c,a.authHost,a.token);case 4:0!==i?r("FetchReports",i):u.length>0?r("FetchUserStatuses",{userId:u,godmode:l}):p?r("FetchStatusesByInstance"):r("FetchStatusAfterUserModeration",o);case 5:case"end":return n.stop()}},n)}))()},ClearState:function(e){var t=e.commit;t("CHANGE_SELECTED_INSTANCE",""),t("SET_STATUSES_BY_INSTANCE",[]),t("CHANGE_LOCAL_CHECKBOX_VALUE",!1),t("CHANGE_GODMODE_CHECKBOX_VALUE",!1),t("SET_ALL_LOADED",!1),t("CHANGE_PAGE",1)},DeleteStatus:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=t.statusId,s=t.reportCurrentPage,c=t.userId,i=t.godmode,u=t.fetchStatusesByInstance,n.next=4,Sn(o,a.authHost,a.token);case 4:0!==s?r("FetchReports",s):c.length>0?r("FetchUserStatuses",{userId:c,godmode:i}):u&&r("FetchStatusesByInstance");case 5:case"end":return n.stop()}},n)}))()},FetchStatus:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=e.state,r("SET_LOADING",!0),n.next=4,Tn(t,o.authHost,o.token);case 4:c=n.sent,r("SET_STATUS",c.data),r("SET_STATUS_AUTHOR",c.data.account),r("SET_LOADING",!1),a("FetchUserStatuses",{userId:s.fetchedStatus.account.id,godmode:!1});case 9:case"end":return n.stop()}},n)}))()},FetchStatusAfterUserModeration:function(e,t){var n=e.commit,r=e.dispatch,a=e.getters;e.state;n("SET_LOADING",!0),Tn(t,a.authHost,a.token).then(function(e){return r("SetStatus",e.data)}),n("SET_LOADING",!1)},FetchStatusesCount:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,r("SET_LOADING",!0),n.next=4,_n(t,a.authHost,a.token);case 4:o=n.sent,s=o.data,r("SET_STATUS_VISIBILITY",s.status_visibility),r("SET_LOADING",!1);case 8:case"end":return n.stop()}},n)}))()},FetchStatusesByInstance:function(e){return g()(f.a.mark(function t(){var n,r,a,o,s,c;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.commit,r=e.dispatch,a=e.getters,o=e.state,s=e.rootState,n("SET_LOADING",!0),r("FetchStatusesCount",o.statusesByInstance.selectedInstance),""!==o.statusesByInstance.selectedInstance){t.next=7;break}n("SET_STATUSES_BY_INSTANCE",[]),t.next=19;break;case 7:if(o.statusesByInstance.selectedInstance!==s.user.authHost){t.next=13;break}return t.next=10,kn({godmode:o.statusesByInstance.showPrivate,localOnly:o.statusesByInstance.showLocal,authHost:a.authHost,token:a.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 10:t.t0=t.sent,t.next=16;break;case 13:return t.next=15,Ln({instance:o.statusesByInstance.selectedInstance,authHost:a.authHost,token:a.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 15:t.t0=t.sent;case 16:c=t.t0,n("SET_STATUSES_BY_INSTANCE",c.data),c.data.length<o.statusesByInstance.pageSize&&n("SET_ALL_LOADED",!0);case 19:n("SET_LOADING",!1);case 20:case"end":return t.stop()}},t)}))()},FetchStatusesPageByInstance:function(e){return g()(f.a.mark(function t(){var n,r,a,o,s;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.commit,r=e.getters,a=e.rootState,o=e.state,n("SET_BUTTON_LOADING",!0),o.statusesByInstance.selectedInstance!==a.user.authHost){t.next=8;break}return t.next=5,kn({godmode:o.statusesByInstance.showPrivate,localOnly:o.statusesByInstance.showLocal,authHost:r.authHost,token:r.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 5:t.t0=t.sent,t.next=11;break;case 8:return t.next=10,Ln({instance:o.statusesByInstance.selectedInstance,authHost:r.authHost,token:r.token,pageSize:o.statusesByInstance.pageSize,page:o.statusesByInstance.page});case 10:t.t0=t.sent;case 11:s=t.t0,n("PUSH_STATUSES",s.data),n("SET_BUTTON_LOADING",!1),s.data.length<o.statusesByInstance.pageSize&&n("SET_ALL_LOADED",!0);case 15:case"end":return t.stop()}},t)}))()},HandleGodmodeCheckboxChange:function(e,t){var n=e.commit,r=e.dispatch;r("HandlePageChange",1),n("SET_ALL_LOADED",!1),n("CHANGE_GODMODE_CHECKBOX_VALUE",t),r("FetchStatusesByInstance")},HandleLocalCheckboxChange:function(e,t){var n=e.commit,r=e.dispatch;r("HandlePageChange",1),n("SET_ALL_LOADED",!1),n("CHANGE_LOCAL_CHECKBOX_VALUE",t),r("FetchStatusesByInstance")},HandleFilterChange:function(e,t){var n=e.commit;n("CHANGE_SELECTED_INSTANCE",t),n("SET_ALL_LOADED",!1)},HandlePageChange:function(e,t){(0,e.commit)("CHANGE_PAGE",t)},SetStatus:function(e,t){var n=e.commit;n("SET_STATUS",t),n("SET_STATUS_AUTHOR",t.account)}}},Cn=n("J4zp"),Dn=n.n(Cn);function Rn(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Un(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Un(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,c=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return s=e.done,e},e:function(e){c=!0,o=e},f:function(){try{s||null==n.return||n.return()}finally{if(c)throw o}}}}function Un(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var zn={state:{visitedViews:[],cachedViews:[]},mutations:{ADD_VISITED_VIEW:function(e,t){e.visitedViews.some(function(e){return e.path===t.path})||e.visitedViews.push(Object.assign({},t,{title:t.meta.title||"no-name"}))},ADD_CACHED_VIEW:function(e,t){e.cachedViews.includes(t.name)||t.meta.noCache||e.cachedViews.push(t.name)},DEL_VISITED_VIEW:function(e,t){var n,r=Rn(e.visitedViews.entries());try{for(r.s();!(n=r.n()).done;){var a=Dn()(n.value,2),o=a[0];if(a[1].path===t.path){e.visitedViews.splice(o,1);break}}}catch(e){r.e(e)}finally{r.f()}},DEL_CACHED_VIEW:function(e,t){var n,r=Rn(e.cachedViews);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(a===t.name){var o=e.cachedViews.indexOf(a);e.cachedViews.splice(o,1);break}}}catch(e){r.e(e)}finally{r.f()}},DEL_OTHERS_VISITED_VIEWS:function(e,t){e.visitedViews=e.visitedViews.filter(function(e){return e.meta.affix||e.path===t.path})},DEL_OTHERS_CACHED_VIEWS:function(e,t){var n,r=Rn(e.cachedViews);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(a===t.name){var o=e.cachedViews.indexOf(a);e.cachedViews=e.cachedViews.slice(o,o+1);break}}}catch(e){r.e(e)}finally{r.f()}},DEL_ALL_VISITED_VIEWS:function(e){var t=e.visitedViews.filter(function(e){return e.meta.affix});e.visitedViews=t},DEL_ALL_CACHED_VIEWS:function(e){e.cachedViews=[]},UPDATE_VISITED_VIEW:function(e,t){var n,r=Rn(e.visitedViews);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(a.path===t.path){a=Object.assign(a,t);break}}}catch(e){r.e(e)}finally{r.f()}}},actions:{addView:function(e,t){var n=e.dispatch;n("addVisitedView",t),n("addCachedView",t)},addVisitedView:function(e,t){(0,e.commit)("ADD_VISITED_VIEW",t)},addCachedView:function(e,t){(0,e.commit)("ADD_CACHED_VIEW",t)},delView:function(e,t){var n=e.dispatch,r=e.state;return new Promise(function(e){n("delVisitedView",t),n("delCachedView",t),e({visitedViews:ye()(r.visitedViews),cachedViews:ye()(r.cachedViews)})})},delVisitedView:function(e,t){var n=e.commit,r=e.state;return new Promise(function(e){n("DEL_VISITED_VIEW",t),e(ye()(r.visitedViews))})},delCachedView:function(e,t){var n=e.commit,r=e.state;return new Promise(function(e){n("DEL_CACHED_VIEW",t),e(ye()(r.cachedViews))})},delOthersViews:function(e,t){var n=e.dispatch,r=e.state;return new Promise(function(e){n("delOthersVisitedViews",t),n("delOthersCachedViews",t),e({visitedViews:ye()(r.visitedViews),cachedViews:ye()(r.cachedViews)})})},delOthersVisitedViews:function(e,t){var n=e.commit,r=e.state;return new Promise(function(e){n("DEL_OTHERS_VISITED_VIEWS",t),e(ye()(r.visitedViews))})},delOthersCachedViews:function(e,t){var n=e.commit,r=e.state;return new Promise(function(e){n("DEL_OTHERS_CACHED_VIEWS",t),e(ye()(r.cachedViews))})},delAllViews:function(e,t){var n=e.dispatch,r=e.state;return new Promise(function(e){n("delAllVisitedViews",t),n("delAllCachedViews",t),e({visitedViews:ye()(r.visitedViews),cachedViews:ye()(r.cachedViews)})})},delAllVisitedViews:function(e){var t=e.commit,n=e.state;return new Promise(function(e){t("DEL_ALL_VISITED_VIEWS"),e(ye()(n.visitedViews))})},delAllCachedViews:function(e){var t=e.commit,n=e.state;return new Promise(function(e){t("DEL_ALL_CACHED_VIEWS"),e(ye()(n.cachedViews))})},updateVisitedView:function(e,t){(0,e.commit)("UPDATE_VISITED_VIEW",t)}}};function Mn(e,t,n){return Vn.apply(this,arguments)}function Vn(){return(Vn=g()(f.a.mark(function e(t,n,r){var a,o;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/v1/apps",method:"post",data:{client_name:"AdminFE_".concat(Math.random()),redirect_uris:"".concat(window.location.origin,"/oauth-callback"),scopes:"read write follow push admin"}});case 2:return a=e.sent,o=a.data,e.abrupt("return",Object(b.a)({baseURL:Object(y.a)(r),url:"/oauth/token",method:"post",data:{client_id:o.client_id,client_secret:o.client_secret,grant_type:"password",username:t,password:n}}));case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Hn(e,t){return Object(b.a)({baseURL:Object(y.a)(t),url:"/api/v1/accounts/verify_credentials",method:"get",headers:e?{Authorization:"Bearer ".concat(e)}:{}})}function Bn(e){return Nn.apply(this,arguments)}function Nn(){return(Nn=g()(f.a.mark(function e(t){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(t),url:"/nodeinfo/2.0.json",method:"get"});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Fn={state:{user:"",id:"",status:"",code:"",token:Object(w.b)(),authHost:Object(w.a)(),name:"",avatar:"",introduction:"",roles:[],setting:{articlePlatform:[]},nodeInfo:{}},mutations:{SET_CODE:function(e,t){e.code=t},SET_TOKEN:function(e,t){e.token=t},SET_INTRODUCTION:function(e,t){e.introduction=t},SET_SETTING:function(e,t){e.setting=t},SET_STATUS:function(e,t){e.status=t},SET_NAME:function(e,t){e.name=t},SET_AVATAR:function(e,t){e.avatar=t},SET_ROLES:function(e,t){e.roles=t},SET_ID:function(e,t){e.id=t},SET_AUTH_HOST:function(e,t){e.authHost=t},SET_NODE_INFO:function(e,t){e.nodeInfo=t}},actions:{LoginByUsername:function(e,t){var n=e.commit,r=e.dispatch,a=t.username,o=t.authHost,s=t.password;return new Promise(function(e,t){Mn(a,s,o).then(function(t){var r=t.data;n("SET_TOKEN",r.access_token),n("SET_AUTH_HOST",o),Object(w.f)(r.access_token),Object(w.e)(o),e()}).catch(function(e){r("addErrorLog",{message:e.message}),t(e)})})},GetNodeInfo:function(e){return g()(f.a.mark(function t(){var n,r,a,o;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.commit,r=e.dispatch,a=e.state,t.next=3,Bn(a.authHost);case 3:o=t.sent,n("SET_NODE_INFO",o.data),r("SetInvitesEnabled",o.data.metadata.invitesEnabled);case 6:case"end":return t.stop()}},t)}))()},GetUserInfo:function(e){var t=e.commit,n=e.state;return new Promise(function(e,r){Hn(n.token,n.authHost).then(function(n){var a=n.data;a||r("Verification failed, please login again."),a.pleroma&&a.pleroma.is_admin?t("SET_ROLES",["admin"]):r('<span>This user doesn`t have admin rights. Try another credentials or see the </span><u><a target="_blank" href="https://docs.pleroma.social/backend/administration/CLI_tasks/user/#set-the-value-of-the-given-users-settings">docs</a></u><span> to find out how to make this user an admin</span>'),t("SET_NAME",a.username),t("SET_ID",a.id),t("SET_AVATAR",a.avatar),t("SET_INTRODUCTION",""),e(n)}).catch(function(e){r(e)})})},LogOut:function(e){var t=e.commit;t("SET_TOKEN",""),t("SET_ROLES",[]),Object(w.d)(),Object(w.c)()},FedLogOut:function(e){var t=e.commit;return new Promise(function(e){t("SET_TOKEN",""),Object(w.d)(),Object(w.c)(),e()})},LoginByPleromaFE:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.commit,a=e.dispatch,o=t.token,r("SET_TOKEN",o),Object(w.f)(o),r("SET_AUTH_HOST",window.location.host),Object(w.e)(window.location.host),a("GetUserInfo");case 7:case"end":return n.stop()}},n)}))()}}};function Gn(e,t,n){return Yn.apply(this,arguments)}function Yn(){return(Yn=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/activate",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function $n(e,t,n,r){return qn.apply(this,arguments)}function qn(){return(qn=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/permission_group/".concat(n),method:"post",headers:Lr(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Kn(e,t,n,r,a){return Wn.apply(this,arguments)}function Wn(){return(Wn=g()(f.a.mark(function e(t,n,r,a,o){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(a),url:"/api/pleroma/admin/users",method:"post",headers:Lr(o),data:{users:[{nickname:t,email:n,password:r}]}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Zn(e,t,n){return Qn.apply(this,arguments)}function Qn(){return(Qn=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/deactivate",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Jn(e,t,n,r){return Xn.apply(this,arguments)}function Xn(){return(Xn=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/permission_group/".concat(n),method:"delete",headers:Lr(a),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function er(e,t,n){return tr.apply(this,arguments)}function tr(){return(tr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users",method:"delete",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function nr(e,t,n){return rr.apply(this,arguments)}function rr(){return(rr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/disable_mfa",method:"put",headers:Lr(r),data:{nickname:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ar(e,t,n){return or.apply(this,arguments)}function or(){return(or=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t),method:"get",headers:Lr(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function sr(e,t,n){return cr.apply(this,arguments)}function cr(){return(cr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/credentials"),method:"get",headers:Lr(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ir(e,t,n,r){return ur.apply(this,arguments)}function ur(){return(ur=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/".concat(t,"/credentials"),method:"patch",headers:Lr(a),data:n});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function lr(e,t,n){return pr.apply(this,arguments)}function pr(){return(pr=g()(f.a.mark(function e(t,n,r){var a,o=arguments;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a=o.length>3&&void 0!==o[3]?o[3]:1,e.next=3,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users?page=".concat(a,"&filters=").concat(t),method:"get",headers:Lr(r)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function dr(e,t,n){return hr.apply(this,arguments)}function hr(){return(hr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/password_reset"),method:"get",headers:Lr(r)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function mr(e,t,n){return fr.apply(this,arguments)}function fr(){return(fr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/force_password_reset",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function vr(e,t,n,r){return gr.apply(this,arguments)}function gr(){return(gr=g()(f.a.mark(function e(t,n,r,a){var o,s=arguments;return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=s.length>4&&void 0!==s[4]?s[4]:1,e.next=3,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users?query=".concat(t,"&page=").concat(o,"&filters=").concat(n),method:"get",headers:Lr(a)});case 3:return e.abrupt("return",e.sent);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function br(e,t,n,r){return wr.apply(this,arguments)}function wr(){return(wr=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/tag",method:"put",headers:Lr(a),data:{nicknames:t,tags:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function yr(e,t,n,r){return Sr.apply(this,arguments)}function Sr(){return(Sr=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(r),url:"/api/pleroma/admin/users/tag",method:"delete",headers:Lr(a),data:{nicknames:t,tags:n}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Er(){return(Er=g()(f.a.mark(function e(t,n,r,a){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/".concat(t,"/statuses?godmode=").concat(r),method:"get",headers:Lr(a)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Tr(e,t,n){return xr.apply(this,arguments)}function xr(){return(xr=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/approve",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function kr(e,t,n){return Or.apply(this,arguments)}function Or(){return(Or=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/confirm_email",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _r(e,t,n){return Ar.apply(this,arguments)}function Ar(){return(Ar=g()(f.a.mark(function e(t,n,r){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(b.a)({baseURL:Object(y.a)(n),url:"/api/pleroma/admin/users/resend_confirmation_email",method:"patch",headers:Lr(r),data:{nicknames:t}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var Lr=function(e){return e?{Authorization:"Bearer ".concat(Object(w.b)())}:{}},jr={state:{statuses:[],statusesLoading:!0,user:{},userCredentials:{},userProfileLoading:!0},mutations:{SET_STATUSES:function(e,t){e.statuses=t},SET_STATUSES_LOADING:function(e,t){e.statusesLoading=t},SET_USER:function(e,t){e.user=t},SET_USER_PROFILE_LOADING:function(e,t){e.userProfileLoading=t},SET_USER_CREDENTIALS:function(e,t){e.userCredentials=t}},actions:{FetchUserProfile:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=t.userId,c=t.godmode,r("SET_USER_PROFILE_LOADING",!0),n.next=5,ar(s,o.authHost,o.token);case 5:i=n.sent,r("SET_USER",i.data),r("SET_USER_PROFILE_LOADING",!1),a("FetchUserStatuses",{userId:s,godmode:c});case 9:case"end":return n.stop()}},n)}))()},FetchUserStatuses:function(e,t){var n=e.commit,r=e.dispatch,a=e.getters,o=t.userId,s=t.godmode;n("SET_STATUSES_LOADING",!0),function(e,t,n,r){return Er.apply(this,arguments)}(o,a.authHost,s,a.token).then(function(e){return r("SetStatuses",e.data)}),n("SET_STATUSES_LOADING",!1)},FetchUserCredentials:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,o=t.nickname,n.next=4,sr(o,a.authHost,a.token);case 4:s=n.sent,r("SET_USER_CREDENTIALS",s.data);case 6:case"end":return n.stop()}},n)}))()},SetStatuses:function(e,t){(0,e.commit)("SET_STATUSES",t)},UpdateUserCredentials:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=t.nickname,s=t.credentials,n.next=4,ir(o,s,a.authHost,a.token);case 4:r("FetchUserCredentials",{nickname:o});case 5:case"end":return n.stop()}},n)}))()}}};function Ir(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Pr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ir(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ir(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Cr={state:{fetchedUsers:[],loading:!0,searchQuery:"",totalUsersCount:0,currentPage:1,pageSize:50,filters:{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1},passwordResetToken:{token:"",link:""}},mutations:{SET_USERS:function(e,t){e.fetchedUsers=t},SET_LOADING:function(e,t){e.loading=t},SWAP_USERS:function(e,t){var n=t.reduce(function(e,t){return e.filter(function(e){return e.id!==t.id})},e.fetchedUsers);if(0!==e.fetchedUsers.length){var r=[].concat(ye()(n),ye()(t));e.fetchedUsers=r.filter(function(e){return e.nickname&&e.id}).sort(function(e,t){return e.nickname.localeCompare(t.nickname)}).concat(r.filter(function(e){return!e.nickname||!e.id}))}},SET_COUNT:function(e,t){e.totalUsersCount=t},SET_PAGE:function(e,t){e.currentPage=t},SET_PAGE_SIZE:function(e,t){e.pageSize=t},SET_PASSWORD_RESET_TOKEN:function(e,t){var n=t.token,r=t.link;e.passwordResetToken.token=n,e.passwordResetToken.link=r},SET_SEARCH_QUERY:function(e,t){e.searchQuery=t},SET_USERS_FILTERS:function(e,t){e.filters=t}},actions:{ActivateUsers:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t._userId,c=o.map(function(e){return Pr(Pr({},e),{},{deactivated:!1})}),i=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:c,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Gn(i,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s});case 6:case"end":return n.stop()}},n)}))()},ApplyChanges:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.state,s=t.updatedUsers,c=t.callApiFn,i=t.userId,u=t.statusId,r("SWAP_USERS",s),n.prev=3,n.next=6,c();case 6:n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(3),n.abrupt("return");case 11:return n.prev=11,a("SearchUsers",{query:o.searchQuery,page:o.currentPage}),n.finish(11);case 14:u?a("FetchStatusAfterUserModeration",u):i&&a("FetchUserProfile",{userId:i,godmode:!1}),a("SuccessMessage");case 16:case"end":return n.stop()}},n,null,[[3,8,11,14]])}))()},AddRight:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t.right,c=t._userId,i=t._statusId,u=o.map(function(e){return e.local?Pr(Pr({},e),{},{roles:Pr(Pr({},e.roles),{},P()({},s,!0))}):e}),l=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,$n(l,s,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:c,statusId:i});case 6:case"end":return n.stop()}},n)}))()},AddTag:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t.tag,c=t._userId,i=t._statusId,u=o.map(function(e){return Pr(Pr({},e),{},{tags:[].concat(ye()(e.tags),[s])})}),l=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,br(l,[s],a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:c,statusId:i});case 6:case"end":return n.stop()}},n)}))()},ApproveUsersAccount:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t._userId,c=t._statusId,i=o.map(function(e){return Pr(Pr({},e),{},{approval_pending:!1})}),u=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:i,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Tr(u,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s,statusId:c});case 6:case"end":return n.stop()}},n)}))()},ClearUsersState:function(e){var t=e.commit;t("SET_SEARCH_QUERY",""),t("SET_USERS_FILTERS",{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1})},ClearFilters:function(e){return g()(f.a.mark(function t(){var n,r,a;return f.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:n=e.commit,r=e.dispatch,a=e.state,n("CLEAR_USERS_FILTERS"),r("SearchUsers",{query:a.searchQuery,page:1});case 3:case"end":return t.stop()}},t)}))()},ConfirmUsersEmail:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t._userId,c=t._statusId,i=o.map(function(e){return Pr(Pr({},e),{},{confirmation_pending:!1})}),u=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:i,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,kr(u,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s,statusId:c});case 6:case"end":return n.stop()}},n)}))()},CreateNewAccount:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=e.state,s=t.nickname,c=t.email,i=t.password,n.prev=2,n.next=5,Kn(s,c,i,a.authHost,a.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:return n.prev=10,r("SearchUsers",{query:o.searchQuery,page:o.currentPage}),n.finish(10);case 13:r("SuccessMessage");case 14:case"end":return n.stop()}},n,null,[[2,7,10,13]])}))()},DeactivateUsers:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t._userId,c=o.map(function(e){return Pr(Pr({},e),{},{deactivated:!0})}),i=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:c,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Zn(i,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:s});case 6:case"end":return n.stop()}},n)}))()},DisableMfa:function(e,t){return g()(f.a.mark(function n(){var r,a;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,n.prev=1,n.next=4,nr(t,a.authHost,a.token);case 4:n.next=9;break;case 6:return n.prev=6,n.t0=n.catch(1),n.abrupt("return");case 9:r("SuccessMessage");case 10:case"end":return n.stop()}},n,null,[[1,6]])}))()},DeleteRight:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t.right,c=t._userId,i=t._statusId,u=o.map(function(e){return e.local?Pr(Pr({},e),{},{roles:Pr(Pr({},e.roles),{},P()({},s,!1))}):e}),l=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Jn(l,s,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:c,statusId:i});case 6:case"end":return n.stop()}},n)}))()},DeleteUsers:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,e.state,s=t.users,c=t._userId,i=s.map(function(e){return e.nickname}),n.prev=3,n.next=6,er(i,o.authHost,o.token);case 6:n.next=11;break;case 8:return n.prev=8,n.t0=n.catch(3),n.abrupt("return");case 11:u=s.map(function(e){return Pr(Pr({},e),{},{deactivated:!0})}),r("SWAP_USERS",u),c&&a("FetchUserProfile",{userId:c,godmode:!1}),a("SuccessMessage");case 15:case"end":return n.stop()}},n,null,[[3,8]])}))()},FetchUsers:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.dispatch,o=e.getters,s=e.state,c=t.page,r("SET_LOADING",!0),i=Object.keys(s.filters).filter(function(e){return s.filters[e]}).join(),n.next=6,lr(i,o.authHost,o.token,c);case 6:return u=n.sent,n.next=9,a("GetNodeInfo");case 9:Dr(r,c,u.data);case 10:case"end":return n.stop()}},n)}))()},GetPasswordResetToken:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.commit,a=e.getters,n.next=3,dr(t,a.authHost,a.token);case 3:o=n.sent,s=o.data,r("SET_PASSWORD_RESET_TOKEN",s);case 6:case"end":return n.stop()}},n)}))()},RemovePasswordToken:function(e){(0,e.commit)("SET_PASSWORD_RESET_TOKEN",{link:"",token:""})},RemoveTag:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.users,s=t.tag,c=t._userId,i=t._statusId,u=o.map(function(e){return Pr(Pr({},e),{},{tags:e.tags.filter(function(e){return e!==s})})}),l=o.map(function(e){return e.nickname}),r("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,yr(l,[s],a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:c,statusId:i});case 6:case"end":return n.stop()}},n)}))()},RequirePasswordReset:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=t.map(function(e){return e.nickname}),n.prev=2,n.next=5,mr(o,a.authHost,a.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:r("SuccessMessage");case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},ResendConfirmationEmail:function(e,t){return g()(f.a.mark(function n(){var r,a,o;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=e.dispatch,a=e.getters,o=t.map(function(e){return e.nickname}),n.prev=2,n.next=5,_r(o,a.authHost,a.token);case 5:n.next=10;break;case 7:return n.prev=7,n.t0=n.catch(2),n.abrupt("return");case 10:r("SuccessMessage");case 11:case"end":return n.stop()}},n,null,[[2,7]])}))()},SearchUsers:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=e.commit,a=e.dispatch,o=e.state,s=e.getters,c=t.query,i=t.page,0!==c.length){n.next=7;break}r("SET_SEARCH_QUERY",c),a("FetchUsers",{page:i}),n.next=14;break;case 7:return r("SET_LOADING",!0),r("SET_SEARCH_QUERY",c),u=Object.keys(o.filters).filter(function(e){return o.filters[e]}).join(),n.next=12,vr(c,u,s.authHost,s.token,i);case 12:l=n.sent,Dr(r,i,l.data);case 14:case"end":return n.stop()}},n)}))()},SuccessMessage:function(){c.Message.success({message:D.a.t("users.completed"),duration:5e3})},ToggleUsersFilter:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.commit,a=e.dispatch,o=e.state,s=Pr(Pr({},{local:!1,external:!1,active:!1,need_approval:!1,deactivated:!1}),t),r("SET_USERS_FILTERS",s),a("SearchUsers",{query:o.searchQuery,page:1});case 5:case"end":return n.stop()}},n)}))()},UpdateActorType:function(e,t){return g()(f.a.mark(function n(){var r,a,o,s,c,i,u,l;return f.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:r=e.dispatch,a=e.getters,o=t.user,s=t.type,c=t._userId,i=t._statusId,u=[Pr(Pr({},o),{},{actor_type:s})],l={actor_type:s},r("ApplyChanges",{updatedUsers:u,callApiFn:function(){var e=g()(f.a.mark(function e(){return f.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ir(o.nickname,l,a.authHost,a.token);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}(),userId:c,statusId:i});case 6:case"end":return n.stop()}},n)}))()}}},Dr=function(e,t,n){var r=n.users,a=n.count,o=n.page_size;e("SET_USERS",r),e("SET_COUNT",a),e("SET_PAGE",t),e("SET_PAGE_SIZE",o),e("SET_LOADING",!1)},Rr=Cr;a.default.use(h.a);var Ur=new h.a.Store({modules:{app:O,errorLog:V,emojiPacks:M,invites:Z,mediaProxyCache:se,moderationLog:be,peers:xe,permission:Vt,relays:qt,reports:rn,settings:bn,status:Pn,tagsView:zn,user:Fn,userProfile:jr,users:Rr},getters:H}),zr=n("zT9a");a.default.component("svg-icon",zr.a);!function(e){e.keys().map(e)}(n("Uf/o")),a.default.config.errorHandler=function(e,t,n,r){a.default.nextTick(function(){Ur.dispatch("addErrorLog",{err:e,vm:t,info:n,url:window.location.href}),console.error(e,n)})};var Mr=n("Mj6V"),Vr=n.n(Mr);n("pdi6");function Hr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Br(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Hr(Object(n),!0).forEach(function(t){P()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Hr(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}Vr.a.configure({showSpinner:!1});var Nr=["/login","/auth-redirect","/login-pleroma"];function Fr(e,t){return 1===e?e+t:e+t+"s"}function Gr(e){var t=Date.now()/1e3-Number(e);return t<3600?Fr(~~(t/60)," minute"):t<86400?Fr(~~(t/3600)," hour"):Fr(~~(t/86400)," day")}function Yr(e,t){for(var n=[{value:1e18,symbol:"E"},{value:1e15,symbol:"P"},{value:1e12,symbol:"T"},{value:1e9,symbol:"G"},{value:1e6,symbol:"M"},{value:1e3,symbol:"k"}],r=0;r<n.length;r++)if(e>=n[r].value)return(e/n[r].value+.1).toFixed(t).replace(/\.0+$|(\.[0-9]*[1-9])0+$/,"$1")+n[r].symbol;return e.toString()}function $r(e){return(+e||0).toString().replace(/^-?\d+/g,function(e){return e.replace(/(?=(?!\b)(\d{3})+$)/g,",")})}Rt.beforeEach(function(e,t,n){Vr.a.start(),Object(w.b)()?"/login"===e.path?(n({path:"/"}),Vr.a.done()):0===Ur.getters.roles.length?Ur.dispatch("GetUserInfo").then(function(t){var r=t.data.pleroma.is_admin?["admin"]:[];Ur.dispatch("GenerateRoutes",{roles:r}).then(function(){Rt.addRoutes(Ur.getters.addRouters),n(Br(Br({},e),{},{replace:!0}))})}).catch(function(e){Ur.dispatch("FedLogOut").then(function(){Object(c.Message)({dangerouslyUseHTMLString:!0,message:e,type:"error",duration:1e4}),n({path:"/"})})}):function(e,t){return e.indexOf("admin")>=0||!t||e.some(function(e){return t.indexOf(e)>=0})}(Ur.getters.roles,e.meta.roles)?n():n({path:"/401",replace:!0,query:{noGoBack:!0}}):-1!==Nr.indexOf(e.path)?n():(n("/login?redirect=".concat(e.path)),Vr.a.done())}),Rt.afterEach(function(){Vr.a.done()}),a.default.use(i.a,{size:s.a.get("size")||"medium",i18n:function(e,t){return D.a.t(e,t)}}),Object.keys(r).forEach(function(e){a.default.filter(e,r[e])}),a.default.config.productionTip=!1,new a.default({el:"#app",router:Rt,store:Ur,i18n:D.a,render:function(e){return e(d)}})},X4fA:function(e,t,n){"use strict";n.d(t,"b",function(){return c}),n.d(t,"f",function(){return i}),n.d(t,"d",function(){return u}),n.d(t,"a",function(){return l}),n.d(t,"e",function(){return p}),n.d(t,"c",function(){return d});var r=n("p46w"),a=n.n(r),o="Admin-Token",s="Auth-Host";function c(){return a.a.get(o)}function i(e){return a.a.set(o,e)}function u(){return a.a.remove(o)}function l(){return a.a.get(s)}function p(e){return a.a.set(s,e)}function d(){return a.a.remove(s)}},Xm3t:function(e,t,n){},Yymj:function(e,t,n){"use strict";var r=n("jf83");n.n(r).a},"Z+gY":function(e,t,n){"use strict";var r=n("Kcm3");n.n(r).a},ZZmv:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-excel",use:"icon-excel-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-excel"><path d="M78.208 16.576v8.384h38.72v5.376h-38.72v8.704h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.512h38.72v5.376h-38.72v11.136H128v-94.72H78.208zM0 114.368L72.128 128V0L0 13.632v100.736z" /><path d="M28.672 82.56h-11.2l14.784-23.488-14.08-22.592h11.52l8.192 14.976 8.448-14.976h11.136l-14.08 22.208L58.368 82.56H46.656l-8.768-15.68z" /></symbol>'});s.a.add(c);t.default=c},ZoO1:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-guide",use:"icon-guide-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-guide"><path d="M1.482 70.131l36.204 16.18 69.932-65.485-61.38 70.594 46.435 18.735c1.119.425 2.397-.17 2.797-1.363v-.085L127.998.047 1.322 65.874c-1.12.597-1.519 1.959-1.04 3.151.32.511.72.937 1.2 1.107zm44.676 57.821L64.22 107.26l-18.062-7.834v28.527z" /></symbol>'});s.a.add(c);t.default=c},cIpu:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-star",use:"icon-star-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-star"><path d="M70.66 4.328l14.01 29.693c1.088 2.29 3.177 3.882 5.603 4.25l31.347 4.76c6.087.926 8.528 8.756 4.117 13.247L103.05 79.395c-1.75 1.78-2.544 4.352-2.132 6.867l5.352 32.641c1.043 6.337-5.33 11.182-10.778 8.19l-28.039-15.409a7.13 7.13 0 0 0-6.91 0l-28.039 15.41c-5.448 2.99-11.821-1.854-10.777-8.19l5.352-32.642c.415-2.515-.387-5.088-2.136-6.867L2.264 56.278C-2.146 51.787.286 43.957 6.38 43.031l31.343-4.76c2.419-.368 4.51-1.96 5.595-4.25L57.334 4.328c2.728-5.77 10.605-5.77 13.325 0z" /></symbol>'});s.a.add(c);t.default=c},fhHp:function(e,t,n){"use strict";var r=n("lt0h");n.n(r).a},gNoN:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-wechat",use:"icon-wechat-usage",viewBox:"0 0 128 110",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 110" id="icon-wechat"><path d="M86.635 33.334c1.467 0 2.917.113 4.358.283C87.078 14.392 67.58.111 45.321.111 20.44.111.055 17.987.055 40.687c0 13.104 6.781 23.863 18.115 32.209l-4.527 14.352 15.82-8.364c5.666 1.182 10.207 2.395 15.858 2.395 1.42 0 2.829-.073 4.227-.189-.886-3.19-1.398-6.53-1.398-9.996 0-20.845 16.98-37.76 38.485-37.76zm-24.34-12.936c3.407 0 5.665 2.363 5.665 5.954 0 3.576-2.258 5.97-5.666 5.97-3.392 0-6.795-2.395-6.795-5.97 0-3.591 3.403-5.954 6.795-5.954zM30.616 32.323c-3.393 0-6.818-2.395-6.818-5.971 0-3.591 3.425-5.954 6.818-5.954 3.392 0 5.65 2.363 5.65 5.954 0 3.576-2.258 5.97-5.65 5.97z" /><path d="M127.945 70.52c0-19.075-18.108-34.623-38.448-34.623-21.537 0-38.5 15.548-38.5 34.623 0 19.108 16.963 34.622 38.5 34.622 4.508 0 9.058-1.2 13.584-2.395l12.414 7.167-3.404-11.923c9.087-7.184 15.854-16.712 15.854-27.471zm-50.928-5.97c-2.254 0-4.53-2.362-4.53-4.773 0-2.378 2.276-4.771 4.53-4.771 3.422 0 5.665 2.393 5.665 4.771 0 2.41-2.243 4.773-5.665 4.773zm24.897 0c-2.24 0-4.498-2.362-4.498-4.773 0-2.378 2.258-4.771 4.498-4.771 3.392 0 5.665 2.393 5.665 4.771 0 2.41-2.273 4.773-5.665 4.773z" /></symbol>'});s.a.add(c);t.default=c},h74u:function(e,t,n){"use strict";n.d(t,"b",function(){return g}),n.d(t,"c",function(){return w}),n.d(t,"d",function(){return y}),n.d(t,"e",function(){return x}),n.d(t,"f",function(){return O}),n.d(t,"g",function(){return _}),n.d(t,"a",function(){return L});var r=n("RIqP"),a=n.n(r),o=n("cDf5"),s=n.n(o),c=n("lSNA"),i=n.n(c),u=n("J4zp"),l=n.n(u),p=n("SA+Z"),d=n.n(p),h=n("LvDl"),m=n.n(h);function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?f(Object(n),!0).forEach(function(t){i()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var g=function(e){return"true"===e||"false"!==e&&e},b=function(e,t,n){if("state"===e)return m.a.get(t,n);var r=d()(n),a=r[0],o=r.slice(1),s=t[a];if(0!==o.length&&s){return function e(t,n){var r=d()(n),a=r[0],o=r.slice(1);return 0===n.length?t:e(t[1][a],o)}(s,o)}return s||!1},w=function(e,t){if(":backends"===e){var n=t.findIndex(function(e){return"object"===s()(e)&&e.tuple.includes(":ex_syslogger")});return t.map(function(e,t){return t===n?":ex_syslogger":e})}return":args"===e&&"string"==typeof t?[t]:t},y=function e(t,n){return t.reduce(function(t,r){return":rate_limit"===n?t[r.tuple[0]]=Array.isArray(r.tuple[1])?r.tuple[1].map(function(e){return e.tuple}):r.tuple[1].tuple:":mascots"===r.tuple[0]?t[r.tuple[0]]=r.tuple[1].reduce(function(e,t){return[].concat(a()(e),[i()({},t.tuple[0],v(v({},t.tuple[1]),{},{id:"f".concat((~~(1e8*Math.random())).toString(16))}))])},[]):Array.isArray(r.tuple[1])&&(":groups"===r.tuple[0]||":replace"===r.tuple[0]||":retries"===r.tuple[0]||":headers"===r.tuple[0]&&"Pleroma.Web.MediaProxy.Invalidation.Http"===n||":crontab"===r.tuple[0])?":crontab"===r.tuple[0]?t[r.tuple[0]]=r.tuple[1].reduce(function(e,t){return[].concat(a()(e),[i()({},t.tuple[1],{value:t.tuple[0],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):t[r.tuple[0]]=r.tuple[1].reduce(function(e,t){return[].concat(a()(e),[i()({},t.tuple[0],{value:t.tuple[1],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):":icons"===r.tuple[0]?t[r.tuple[0]]=r.tuple[1].map(function(e){return Object.keys(e).map(function(t){return{key:t,value:e[t],id:"f".concat((~~(1e8*Math.random())).toString(16))}})},[]):":prune"===r.tuple[0]?t[r.tuple[0]]=":disabled"===r.tuple[1]?[r.tuple[1]]:r.tuple[1].tuple:":proxy_url"===r.tuple[0]||":sender"===r.tuple[0]?t[r.tuple[0]]=E(r.tuple[0],r.tuple[1]):":args"===r.tuple[0]?t[r.tuple[0]]=w(r.tuple[0],r.tuple[1]):Array.isArray(r.tuple[1])&&"object"===s()(r.tuple[1][0])&&!Array.isArray(r.tuple[1][0])&&r.tuple[1][0].tuple?t[r.tuple[0]]=e(r.tuple[1],r.tuple[0]):Array.isArray(r.tuple[1])?t[r.tuple[0]]=r.tuple[1]:":ip"===r.tuple[0]?t[r.tuple[0]]=r.tuple[1].tuple.join("."):r.tuple[1]&&"object"===s()(r.tuple[1])?":params"===r.tuple[0]||":match_actor"===r.tuple[0]?t[r.tuple[0]]=Object.keys(r.tuple[1]).reduce(function(e,t){return[].concat(a()(e),[i()({},t,{value:r.tuple[1][t],id:"f".concat((~~(1e8*Math.random())).toString(16))})])},[]):t[r.tuple[0]]=S(r.tuple[1]):t[r.tuple[0]]=r.tuple[1],t},{})},S=function(e){return Object.keys(e).reduce(function(t,n){return t[n]=e[n],t},{})},E=function(e,t){if(":proxy_url"===e){if(t&&!Array.isArray(t)&&"object"===s()(t)&&3===t.tuple.length&&":socks5"===t.tuple[0]){var n=l()(t.tuple,3);return{socks5:!0,host:n[1],port:n[2]}}if("string"==typeof t){var r=t.split(":"),a=l()(r,2);return{socks5:!1,host:a[0],port:a[1]}}return{socks5:!1,host:null,port:null}}if(":sender"===e){if("string"==typeof t)return{email:t};if(t&&"object"===s()(t)&&2===t.tuple.length){var o=l()(t.tuple,2);return{nickname:o[0],email:o[1]}}}},T=function(e,t){return"atom"===e&&t.length>0||Array.isArray(e)&&e.includes("boolean")&&e.includes("atom")&&"string"==typeof t},x=function e(t,n,r,o,s,c,u){var l=d()(s),p=l[0],h=p.key,m=p.type,f=l.slice(1),g=[r,o].concat(a()(s.reverse().map(function(e){return e.key}).slice(0,-1))),w=k("state",c,g)?v(v({},b("state",c[r][o],s.map(function(e){return e.key}).slice(0,-1))),i()({},h,t)):i()({},h,t),y=k("updatedSettings",u,g)?v(v({},b("updatedSettings",u[r][o],s.map(function(e){return e.key}).slice(0,-1))[1]),i()({},h,[m,n])):i()({},h,[m,n]);return":mime"===r&&":types"===s[0].key&&(w=c[r][s[0].key]?v(v({},c[r][s[0].key].value),w):w,y=c[r][s[0].key]?v(v({},Object.keys(c[r][s[0].key].value).reduce(function(e,t){return v(v({},e),{},i()({},t,[m,c[r][s[0].key].value[t]]))},{})),y):y),1===f.length?{valueForState:w,valueForUpdatedSettings:y,setting:f[0]}:e(w,y,r,o,f,c,u)},k=function(e,t,n){if("state"===e)return m.a.get(t,n);var r=d()(n),a=r[0],o=r[1],s=r[2],c=r.slice(3),i=m.a.get(t,[a,o,s]);if(0!==c.length&&i){return function e(t,n){if(0===n.length)return!0;var r=d()(n),a=r[0],o=r.slice(1);return!!t[1][a]&&e(t[1][a],o)}(i,c)}return i||!1},O=function(e,t){var n=Array.isArray(t)&&t.length>0&&t.every(function(e){return"object"!==s()(e)});return":meta"===e||":types"===e||":backends"===e||":compiled_template_engines"===e||":compiled_format_encoders"===e||"string"==typeof t||"number"==typeof t||"boolean"==typeof t||null===t||n},_=function(e,t,n){return Object.keys(t).map(function(r){return t[r]._value?{group:e,key:r,value:function(e,t){var n=l()(t,2),r=n[0],a=n[1];if(T(r,a))return":".concat(a);if(":backends"===e){var o=a.findIndex(function(e){return":ex_syslogger"===e}),s=a.slice();return-1!==o&&(s[o]={tuple:["ExSyslogger",":ex_syslogger"]}),s}return":types"===e?Object.keys(a).reduce(function(e,t){return v(v({},e),{},i()({},t,a[t][1]))},{}):a}(r,t[r]._value)}:{group:e,key:r,value:A(t[r],n[e][r])}})},A=function e(t,n){return Object.keys(t).map(function(r){var a=l()(t[r],2),o=a[0],s=a[1];if("keyword"===o||Array.isArray(o)&&(o.includes("keyword")||o.includes("tuple")&&o.includes("list")))return{tuple:[r,e(s,n)]};if(T(o,s))return{tuple:[r,":".concat(s)]};if(o.includes("tuple")&&(o.includes("string")||o.includes("atom")))return"string"==typeof s?{tuple:[r,s]}:{tuple:[r,{tuple:s}]};if("reversed_tuple"===o)return{tuple:[s,r]};if("map"===o){var c=Object.keys(s).reduce(function(e,t){return e[t]=s[t][1],e},{});return{tuple:[r,v(v({},n[r]),c)]}}return o.includes("map")&&!o.includes("list")?{tuple:[r,Object.keys(s).reduce(function(e,t){return e[t]=s[t][1],e},{})]}:":ip"===r?{tuple:[r,{tuple:s.split(".").map(function(e){return parseInt(e,10)})}]}:{tuple:[r,s]}})},L=function(e){return e.reduce(function(e,t){var n=m.a.compact([t.key,t.label,t.description]).map(function(e){return e.toLowerCase()}),r={label:t.label,key:t.key||t.group,groupKey:t.key||t.group,groupLabel:t.label,search:n};if(t.children){var o=t.key||":pleroma"!==t.group?[].concat(a()(e),[r]):e;return[].concat(a()(o),a()(function e(t,n,r){return t.reduce(function(t,o){var s=m.a.compact([o.key,o.label,o.description]).map(function(e){return e.toLowerCase()}),c={label:o.label,key:o.key||o.group,groupKey:r,groupLabel:n,search:s};if(o.children){var i=[].concat(a()(t),[c]);return[].concat(a()(i),a()(e(o.children,n,r)))}return[].concat(a()(t),[c])},[])}(t.children,t.label,t.key||t.group)))}return t.key||":pleroma"!==t.group?[].concat(a()(e),[r]):e},[])}},hkRB:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-size",use:"icon-size-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-size"><path d="M0 54.857h54.796v18.286H36.531V128H18.265V73.143H0V54.857zm127.857-36.571H91.935V128H72.456V18.286H36.534V0h91.326l-.003 18.286z" /></symbol>'});s.a.add(c);t.default=c},iqZD:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-zip",use:"icon-zip-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-zip"><path d="M78.527 116.793c.178.008.348.024.527.024h40.233c4.711-.005 8.53-3.677 8.534-8.21V18.895c-.004-4.532-3.823-8.204-8.534-8.209H79.054c-.179 0-.353.016-.527.024V0L0 10.082v107.406l78.527 10.342v-11.037zm0-101.362c.174-.024.348-.052.527-.052h40.233c2.018 0 3.659 1.578 3.659 3.52v89.713c-.003 1.942-1.64 3.517-3.659 3.519H79.054c-.179 0-.353-.028-.527-.052V15.431zM30.262 75.757l-18.721-.46V72.37l11.3-16.673v-.148l-10.266.164v-4.51l17.504-.44v3.264L18.696 70.76v.144l11.566.176v4.678zm9.419.231l-5.823-.144V50.671l5.823-.144v25.461zm22.255-11.632c-2.168 1.922-5.353 2.76-9.02 2.736-.702.004-1.402-.04-2.097-.131v9.303l-5.997-.148V50.743c1.852-.352 4.473-.647 8.218-.743 3.838-.096 6.608.539 8.48 1.913 1.807 1.306 3.032 3.5 3.032 6.112s-.926 4.833-2.612 6.331h-.004zM53.36 54.45c-.856-.01-1.71.083-2.541.275v7.682c.523.116 1.167.152 2.06.152 3.301-.004 5.36-1.614 5.36-4.314 0-2.425-1.772-3.843-4.875-3.791l-.004-.004zm39.847-37.066h9.564v3.795h-9.564v-3.795zm-9.568 5.68h9.564v3.8h-9.564v-3.8zm9.568 6.216h9.564v3.799h-9.564V29.28zm0 12h9.564v3.794h-9.564V41.28zm-9.568-6.096h9.564v3.795h-9.564v-3.795zm9.472 47.064c2.512 0 4.921-.96 6.697-2.67 1.776-1.708 2.773-4.026 2.772-6.442l-1.748-15.263c0-5.033-2.492-9.112-7.725-9.112-5.232 0-7.72 4.079-7.72 9.112l-1.752 15.263c-.001 2.417.996 4.735 2.773 6.444 1.777 1.71 4.187 2.669 6.7 2.668h.003zm-3.135-16.75h6.27v12.743h-6.27V65.5z" /></symbol>'});s.a.add(c);t.default=c},j7e1:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-tab",use:"icon-tab-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-tab"><path d="M78.921.052H49.08c-1.865 0-3.198 1.599-3.198 3.464v6.661c0 1.865 1.6 3.464 3.198 3.464h29.84c1.865 0 3.198-1.599 3.198-3.464V3.516C82.385 1.65 80.786.052 78.92.052zm45.563 0H94.642c-1.865 0-3.464 1.599-3.464 3.464v6.661c0 1.865 1.599 3.464 3.464 3.464h29.842c1.865-.266 3.464-1.599 3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464zm0 22.382H40.02c-1.866 0-3.464-1.599-3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464H3.516C1.65.052.052 1.651.052 3.516V124.75c0 1.598 1.599 3.197 3.464 3.197h120.968c1.865 0 3.464-1.599 3.464-3.464V25.898c0-1.865-1.599-3.464-3.464-3.464z" /></symbol>'});s.a.add(c);t.default=c},jf83:function(e,t,n){},jo2x:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-search",use:"icon-search-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-search"><path d="M124.884 109.812L94.256 79.166c-.357-.357-.757-.629-1.129-.914a50.366 50.366 0 0 0 8.186-27.59C101.327 22.689 78.656 0 50.67 0 22.685 0 0 22.688 0 50.663c0 27.989 22.685 50.663 50.656 50.663 10.186 0 19.643-3.03 27.6-8.201.286.385.557.771.9 1.114l30.628 30.632a10.633 10.633 0 0 0 7.543 3.129c2.728 0 5.457-1.043 7.543-3.115 4.171-4.157 4.171-10.915.014-15.073M50.671 85.338C31.557 85.338 16 69.78 16 50.663c0-19.102 15.557-34.661 34.67-34.661 19.115 0 34.657 15.559 34.657 34.675 0 19.102-15.557 34.661-34.656 34.661" /></symbol>'});s.a.add(c);t.default=c},k80C:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-tree",use:"icon-tree-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-tree"><path d="M126.713 90.023c.858.985 1.287 2.134 1.287 3.447v29.553c0 1.423-.429 2.6-1.287 3.53-.858.93-1.907 1.395-3.146 1.395H97.824c-1.145 0-2.146-.465-3.004-1.395-.858-.93-1.287-2.107-1.287-3.53V93.47c0-.875.19-1.696.572-2.462.382-.766.906-1.368 1.573-1.806a3.84 3.84 0 0 1 2.146-.657h9.725V69.007a3.84 3.84 0 0 0-.43-1.806 3.569 3.569 0 0 0-1.143-1.313 2.714 2.714 0 0 0-1.573-.492h-36.47v23.149h9.725c1.144 0 2.145.492 3.004 1.478.858.985 1.287 2.134 1.287 3.447v29.553c0 .876-.191 1.696-.573 2.463-.38.766-.905 1.368-1.573 1.806a3.84 3.84 0 0 1-2.145.656H51.915a3.84 3.84 0 0 1-2.145-.656c-.668-.438-1.216-1.04-1.645-1.806a4.96 4.96 0 0 1-.644-2.463V93.47c0-1.313.43-2.462 1.288-3.447.858-.986 1.907-1.478 3.146-1.478h9.582v-23.15h-37.9c-.953 0-1.74.356-2.359 1.068-.62.711-.93 1.56-.93 2.544v19.538h9.726c1.239 0 2.264.492 3.074 1.478.81.985 1.216 2.134 1.216 3.447v29.553c0 1.423-.405 2.6-1.216 3.53-.81.93-1.835 1.395-3.074 1.395H4.29c-.476 0-.93-.082-1.358-.246a4.1 4.1 0 0 1-1.144-.657 4.658 4.658 0 0 1-.93-1.067 5.186 5.186 0 0 1-.643-1.395 5.566 5.566 0 0 1-.215-1.56V93.47c0-.437.048-.875.143-1.313a3.95 3.95 0 0 1 .429-1.15c.19-.328.429-.656.715-.984.286-.329.572-.602.858-.821.286-.22.62-.383 1.001-.493.382-.11.763-.164 1.144-.164h9.726V61.619c0-.985.31-1.833.93-2.544.619-.712 1.358-1.068 2.216-1.068h44.335V39.62h-9.582c-1.24 0-2.288-.492-3.146-1.477a5.09 5.09 0 0 1-1.287-3.448V5.14c0-1.423.429-2.627 1.287-3.612.858-.985 1.907-1.477 3.146-1.477h25.743c.763 0 1.478.246 2.145.739a5.17 5.17 0 0 1 1.573 1.888c.382.766.573 1.587.573 2.462v29.553c0 1.313-.43 2.463-1.287 3.448-.859.985-1.86 1.477-3.004 1.477h-9.725v18.389h42.762c.954 0 1.74.355 2.36 1.067.62.711.93 1.56.93 2.545v26.925h9.582c1.239 0 2.288.492 3.146 1.478z" /></symbol>'});s.a.add(c);t.default=c},kPu2:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-documentation",use:"icon-documentation-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-documentation"><path d="M71.984 44.815H115.9L71.984 9.642v35.173zM16.094.05h63.875l47.906 38.37v76.74c0 3.392-1.682 6.645-4.677 9.044-2.995 2.399-7.056 3.746-11.292 3.746H16.094c-4.236 0-8.297-1.347-11.292-3.746-2.995-2.399-4.677-5.652-4.677-9.044V12.84C.125 5.742 7.23.05 16.094.05zm71.86 102.32V89.58h-71.86v12.79h71.86zm23.952-25.58V64H16.094v12.79h95.812z" /></symbol>'});s.a.add(c);t.default=c},lt0h:function(e,t,n){},"m7++":function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-drag",use:"icon-drag-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-drag"><path d="M73.137 29.08h-9.209 29.7L63.886.093 34.373 29.08h20.49v27.035H27.238v17.948h27.625v27.133h18.274V74.063h27.41V56.115h-27.41V29.08zm-9.245 98.827l27.518-26.711H36.59l27.302 26.71zM.042 64.982l27.196 27.029V38.167L.042 64.982zm100.505-26.815V92.01l27.41-27.029-27.41-26.815z" /></symbol>'});s.a.add(c);t.default=c},mDMp:function(e,t,n){"use strict";var r=n("Tfa4");n.n(r).a},mSHS:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-fullscreen",use:"icon-fullscreen-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-fullscreen"><path d="M38.47 52L52 38.462l-23.648-23.67L43.209 0H.035L0 43.137l14.757-14.865L38.47 52zm74.773 47.726L89.526 76 76 89.536l23.648 23.672L84.795 128h43.174L128 84.863l-14.757 14.863zM89.538 52l23.668-23.648L128 43.207V.038L84.866 0 99.73 14.76 76 38.472 89.538 52zM38.46 76L14.792 99.651 0 84.794v43.173l43.137.033-14.865-14.757L52 89.53 38.46 76z" /></symbol>'});s.a.add(c);t.default=c},mSNy:function(e,t,n){"use strict";var r=n("lSNA"),a=n.n(r),o=n("Kw5r"),s=n("qSUR"),c=n("p46w"),i=n.n(c),u=n("stYL"),l=n.n(u),p=n("8NkQ"),d=n.n(p),h=n("PtZe"),m=n.n(h);function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function v(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?f(Object(n),!0).forEach(function(t){a()(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}o.default.use(s.a);var g={en:v(v({},{route:{dashboard:"Dashboard",introduction:"Introduction",documentation:"Documentation",guide:"Guide",permission:"Permission",pagePermission:"Page Permission",directivePermission:"Directive Permission",icons:"Icons",components:"Components",componentIndex:"Introduction",markdown:"Markdown",jsonEditor:"JSON Editor",dndList:"Dnd List",splitPane:"SplitPane",avatarUpload:"Avatar Upload",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"BackToTop",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Charts",keyboardChart:"Keyboard Chart",lineChart:"Line Chart",mixChart:"Mix Chart",example:"Example",nested:"Nested Routes",menu1:"Menu 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menu 2",Table:"Table",dynamicTable:"Dynamic Table",dragTable:"Drag Table",inlineEditTable:"Inline Edit",complexTable:"Complex Table",treeTable:"Tree Table",customTreeTable:"Custom TreeTable",tab:"Tab",form:"Form",createArticle:"Create Article",editArticle:"Edit Article",articleList:"Article List",errorPages:"Error Pages",page401:"401",page404:"404",errorLog:"Error Log",excel:"Excel",exportExcel:"Export Excel",selectExcel:"Export Selected",uploadExcel:"Upload Excel",zip:"Zip",pdf:"PDF",exportZip:"Export Zip",theme:"Theme",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"External Link",users:"Users",reports:"Reports",invites:"Invites",statuses:"Statuses",settings:"Settings",moderationLog:"Moderation Log",mediaProxyCache:"MediaProxy Cache","emoji-packs":"Emoji packs"},navbar:{logOut:"Log Out",dashboard:"Dashboard",github:"Github",theme:"Theme",size:"Global Size"},login:{title:"Login Form",logIn:"Log in",logInViaPleromaFE:"Log in via PleromaFE",username:"username@host",password:"password",omitHostname:"omit hostname if Pleroma is located on this domain",errorMessage:"Username must contain username and host, e.g. john@pleroma.social",any:"any",thirdparty:"Or connect with",pleromaFELoginFailed:"Failed to login via PleromaFE, please login with username/password",pleromaFELoginSucceed:"Logged in via PleromaFE"},mediaProxyCache:{mediaProxyCache:"MediaProxy Cache",ban:"Ban",url:"URL",evict:"Evict",evictedMessage:"This URL was evicted",actions:"Actions",remove:"Remove from Cachex",evictObjectsHeader:"Evict object from the MediaProxy cache",listBannedUrlsHeader:"List of all banned MediaProxy URLs",multipleInput:"You can enter a single URL or several comma separated links",removeSelected:"Remove Selected"},documentation:{documentation:"Documentation",github:"Github Repository"},permission:{roles:"Your roles",switchRoles:"Switch roles",tips:"In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if."},guide:{description:"The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ",button:"Show Guide"},components:{documentation:"Documentation",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Fixed header, sorted by header order",dynamicTips2:"Not fixed header, sorted by click order",dragTips1:"The default order",dragTips2:"The after dragging order",title:"Title",importance:"Imp",type:"Type",remark:"Remark",search:"Search",add:"Add",export:"Export",reviewer:"reviewer",id:"ID",date:"Date",author:"Author",readings:"Readings",status:"Status",actions:"Actions",edit:"Edit",publish:"Publish",draft:"Draft",delete:"Delete",cancel:"Cancel",confirm:"Confirm",unfollow:"Unfollow"},errorLog:{tips:"Please click the bug icon in the upper right corner",description:"Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.",documentation:"Document introduction"},excel:{export:"Export",selectedExport:"Export Selected Items",placeholder:"Please enter the file name(default excel-list)"},zip:{export:"Export",placeholder:"Please enter the file name(default file)"},pdf:{tips:"Here we use window.print() to implement the feature of downloading pdf."},theme:{change:"Change Theme",documentation:"Theme documentation",tips:"Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details."},tagsView:{refresh:"Refresh",close:"Close",closeOthers:"Close Others",closeAll:"Close All"},users:{users:"Users",localUsersOnly:"Local users only",search:"Search",id:"ID",name:"Name",status:"Status",local:"Local",external:"External",deactivated:"Deactivated",active:"Active",unapproved:"Pending",unconfirmed:"Unconfirmed",actions:"Actions",activate:"Activate",deactivate:"Deactivate",admin:"Admin",moderator:"Moderator",moderation:"Moderation",revokeAdmin:"Revoke Admin",grantAdmin:"Grant Admin",revokeModerator:"Revoke Moderator",grantModerator:"Grant Moderator",activateAccount:"Activate Account",activateAccounts:"Activate Accounts",deactivateAccount:"Deactivate Account",deactivateAccounts:"Deactivate Accounts",deleteAccount:"Delete Account",deleteAccounts:"Delete Accounts",forceNsfw:"Force posts to be NSFW",stripMedia:"Force posts to not have media",forceUnlisted:"Force posts to be unlisted",sandbox:"Force posts to be followers-only",disableRemoteSubscription:"Disallow following user from remote instances",disableRemoteSubscriptionForMultiple:"Disallow following users from remote instances",disableAnySubscription:"Disallow following user at all",disableAnySubscriptionForMultiple:"Disallow following users at all",requirePasswordReset:"Require password reset on next login",disableMfa:"Disable multi-factor authentication",selectUsers:"Select users to apply actions to multiple users",moderateUser:"Moderate user",moderateUsers:"Moderate multiple users",createAccount:"Create new account",apply:"Apply",remove:"Remove",grantRightConfirmation:"Are you sure you want to grant {right} rights to all selected users?",revokeRightConfirmation:"Are you sure you want to revoke {right} rights from all selected users?",activateMultipleUsersConfirmation:"Are you sure you want to activate accounts of all selected users?",deactivateMultipleUsersConfirmation:"Are you sure you want to deactivate accounts of all selected users?",deleteUserConfirmation:"Are you sure you want to delete this account? This action cannot be undone.",rejectAccountConfirmation:"Are you sure you want to reject this account? This account will be deleted and it cannot be undone.",deleteMultipleUsersConfirmation:"Are you sure you want to delete accounts of all selected users? This action cannot be undone.",addTagForMultipleUsersConfirmation:"Are you sure you want to apply tag to all selected users?",removeTagFromMultipleUsersConfirmation:"Are you sure you want to remove tag from all selected users?",requirePasswordResetConfirmation:"Are you sure you want to require password reset for all selected users?",approveAccountsConfirmation:"Are you sure you want to approve accounts for all selected users?",rejectAccountsConfirmation:"Are you sure you want to reject accounts for all selected users? These accounts will be deleted and it cannot be undone.",confirmAccountsConfirmation:"Are you sure you want to confirm emails for all selected users?",resendEmailConfirmation:"Are you sure you want to resend confirmation email for all selected users?",mailerMustBeEnabled:"To require user's password reset you must enable mailer.",ok:"Okay",completed:"Completed",cancel:"Cancel",canceled:"Canceled",username:"Username",email:"E-mail",password:"Password",create:"Create",submitFormError:"There are invalid values in the form. Please fix them before continuing.",emptyEmailError:"Please input the e-mail",invalidEmailError:"Please input valid e-mail",emptyPasswordError:"Please input the password",emptyNicknameError:"Please input the username",invalidNicknameError:'Username can include "a-z", "A-Z" and "0-9" characters',getPasswordResetToken:"Get password reset token",passwordResetTokenCreated:"Password reset token was created",accountCreated:"New account was created!",approveAccount:"Approve account",approveAccounts:"Approve accounts",unapprovedAccount:"User account is pending approval",unconfirmedEmail:"User didn't confirm the email",confirmAccount:"Confirm account",confirmAccounts:"Confirm accounts",rejectAccount:"Reject account",rejectAccounts:"Reject accounts",resendConfirmation:"Resend confirmation email",invalidAccount:"This account has invalid nickname and can't be modified",invalidNickname:"invalid nickname",passwordResetTokenGenerated:"Password reset token was generated:",linkToResetPassword:"You can also use this link to reset password:",registrationReason:"Registration Reason",service:"Service",person:"Person"},statuses:{statuses:"Statuses",instanceFilter:"Instance filter",loadMore:"Load more",noInstances:"No other instances found",onlyLocalStatuses:"Show only local statuses",showPrivateStatuses:"Show private statuses",direct:"Direct",private:"Private",public:"Public",unlisted:"Unlisted",openStatusInInstance:"Open status in instance"},userProfile:{tags:"Tags",moderator:"Moderator",admin:"Admin",local:"Local",external:"External",accountType:"Account Type",actorType:"Actor Type",nickname:"Nickname",recentStatuses:"Recent Statuses",roles:"Roles",active:"Active",status:"Status",reason:"Registration Reason",deactivated:"Deactivated",pending:"Pending",noStatuses:"No statuses to show",openAccountInInstance:"Open account in instance",securitySettings:{email:"Email",password:"Password",securitySettings:"Security settings",passwordChangeWarning1:"Setting a new password will cause the user to be signed out from any client they have used before.",passwordChangeWarning2:"When the user signs in with this password, they will be asked to set a new one.",passwordLengthNotice:"Make sure it's at least {minLength} characters long.",inputNewEmail:"Input new email",inputNewPassword:"Input new password",passwordUpdated:"The password has been updated",emailUpdated:"The email has been updated",success:"Success",submit:"Submit",close:"Close"}},usersFilter:{inputPlaceholder:"Select filter",byAccountType:"By account type",local:"Local",external:"External",byStatus:"By status",active:"Active",pending:"Pending Approval",deactivated:"Deactivated"},reports:{reports:"Reports",report:"Report",reply:"Reply",from:"From",showNotes:"Show notes",newNote:"New note",submit:"Submit",confirmMsg:"Are you sure you want to delete this note?",delete:"Delete",cancel:"Cancel",deleteCompleted:"Delete comleted",deleteCanceled:"Delete canceled",noNotes:"No notes to display",changeState:"Change report's state",changeAllReports:"Change all reports",changeScope:"Change scope",moderateUser:"Moderate user",resolve:"Resolve",reopen:"Reopen",close:"Close",resolveAll:"Resolve all",reopenAll:"Reopen all",closeAll:"Close all",addSensitive:"Add Sensitive flag",removeSensitive:"Remove Sensitive flag",public:"Make status public",private:"Make status private",unlisted:"Make status unlisted",sensitive:"Sensitive",deleteStatus:"Delete status",reportOn:"Report on",reportsOn:"Reports on",id:"ID",account:"Account",actor:"Actor",actors:"Actors",content:"Content",reportedStatus:"Reported status",statusDeleted:"This status has been deleted",leaveNote:"Leave a note",postNote:"Send",deleteNote:"Delete",notFound:"account not found"},reportsFilter:{inputPlaceholder:"Select filter",open:"Open",closed:"Closed",resolved:"Resolved"},moderationLog:{moderationLog:"Moderation Log"},settings:{settings:"Settings",instance:"Instance",upload:"Upload",mailer:"Mailer",linkFormatter:"Link Formatter",logger:"Logger",activityPub:"ActivityPub",auth:"Authentication",captcha:"Captcha",frontend:"Frontend",http:"HTTP",mrf:"MRF",mediaProxy:"Media Proxy",metadata:"Metadata",gopher:"Gopher",jobQueue:"Job queue",webPush:"Web push encryption",esshd:"BBS / SSH access",rateLimiters:"Rate limiters",other:"Other",relays:"Relays",follow:"Follow",followRelay:"Follow new relay",followedBack:"Followed Back",instanceUrl:"Instance URL",success:"Settings changed successfully!",description:"Description",removeFromDB:"Remove setting from the DB",successfullyDownloaded:"Successfully downloaded",successfullyImported:"Successfully imported",nowNewPacksToImport:"No new packs to import",successfullyUpdated:"Successfully updated",metadatLowerCase:"metadata",files:"files",successfullyRemoved:"Setting removed successfully!",seeDocs:"See Documentation",instanceReboot:"Reboot Instance",restartApp:"You must restart the instance to apply settings",restartSuccess:"Instance rebooted successfully!",removeSettingConfirmation:"Are you sure you want to remove this setting's value from the database?",changeImage:"Change image",uploadImage:"Upload image",remove:"Remove"},invites:{inviteTokens:"Invite tokens",createInviteToken:"Generate invite token",pickDate:"Pick a date",maxUse:"Max use",expiresAt:"Expires at",tokenCreated:"Invite token was created",token:"Token",inviteLink:"Invite link",uses:"Uses",used:"Used",cancel:"Cancel",create:"Create",revoke:"Revoke",id:"ID",actions:"Actions",active:"Active",inviteUserViaEmail:"Invite user via email",sendRegistration:"Send registration invite via email",email:"Email",name:"Name",emptyEmailError:"Please input the e-mail",invalidEmailError:"Please input valid e-mail",emailSent:"Invite was sent",submitFormError:"There are invalid values in the form. Please fix them before continuing.",inviteViaEmailAlert:"To send invite via email make sure to enable `invites_enabled` and disable `registrations_open`"},emoji:{emojiPacks:"Emoji packs",reloaded:"Emoji reloaded successfully!",refreshed:"Emoji refreshed successfully!",importEmojiTooltip:"Importing from the filesystem will scan the directories and import those without pack.json but with emoji.txt or without neither",reloadEmoji:"Reload emoji",importPacks:"Import packs from the server filesystem",localPacks:"Local packs",refreshLocalPacks:"Refresh local packs",createLocalPack:"Create a new local pack",remotePacks:"Remote packs",remoteInstanceAddress:"Remote instance address",refreshRemote:"Refresh remote packs",sharePack:"Share pack",required:"required",homepage:"Homepage",description:"Description",packs:"Packs",license:"License",shortcode:"Shortcode",fallbackSrc:"Fallback source",fallbackSrcSha:"Fallback source SHA",saveMetadata:"Save metadata",deletePack:"Delete pack",downloadPack:"Download pack",downloadPackArchive:"Download pack archive",addNewEmoji:"Add new emoji to the pack",manageEmoji:"Manage existing emoji",thisWillDownload:"This will download the",downloadToCurrentInstance:"pack to the current instance under the name",canBeChanged:"can be changed below",willBeUsable:"It will then be usable and shareable from the current instance",downloadAsOptional:"Download as (optional)",downloadSharedPack:"Download shared pack to current instance",downloadSharedPackMobile:"Download pack to instance",optional:"optional",uploadFile:"Upload a file",url:"URL",clickToUpload:"Click to upload",upload:"Upload",customFilename:"Custom filename",customFilenameDesc:"Custom file name (optional)",file:"File",localPack:"Local pack",leaveEmptyShortcode:"leave empty to use the same shortcode",leaveEmptyFilename:"leave empty to use the same filename",update:"Update",remove:"Remove",selectLocalPack:"Select the local pack to copy to",specifyShortcode:"Specify a custom shortcode",specifyFilename:"Specify a custom filename",copy:"Copy",copyToLocalPack:"Copy to local pack",emptyPack:"This emoji pack is empty"}}),l.a),zh:v(v({},{route:{dashboard:"首页",introduction:"简述",documentation:"文档",guide:"引导页",permission:"权限测试页",pagePermission:"页面权限",directivePermission:"指令权限",icons:"图标",components:"组件",componentIndex:"介绍",markdown:"Markdown",jsonEditor:"JSON编辑器",dndList:"列表拖拽",splitPane:"Splitpane",avatarUpload:"头像上传",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"小组件",backToTop:"返回顶部",dragDialog:"拖拽 Dialog",dragSelect:"拖拽 Select",dragKanban:"可拖拽看板",charts:"图表",keyboardChart:"键盘图表",lineChart:"折线图",mixChart:"混合图表",example:"综合实例",nested:"路由嵌套",menu1:"菜单1","menu1-1":"菜单1-1","menu1-2":"菜单1-2","menu1-2-1":"菜单1-2-1","menu1-2-2":"菜单1-2-2","menu1-3":"菜单1-3",menu2:"菜单2",Table:"Table",dynamicTable:"动态Table",dragTable:"拖拽Table",inlineEditTable:"Table内编辑",complexTable:"综合Table",treeTable:"树形表格",customTreeTable:"自定义树表",tab:"Tab",form:"表单",createArticle:"创建文章",editArticle:"编辑文章",articleList:"文章列表",errorPages:"错误页面",page401:"401",page404:"404",errorLog:"错误日志",excel:"Excel",exportExcel:"Export Excel",selectExcel:"Export Selected",uploadExcel:"Upload Excel",zip:"Zip",pdf:"PDF",exportZip:"Export Zip",theme:"换肤",clipboardDemo:"Clipboard",i18n:"国际化",externalLink:"外链"},navbar:{logOut:"退出登录",dashboard:"首页",github:"项目地址",theme:"换肤",size:"布局大小"},login:{title:"系统登录",logIn:"登录",username:"账号",password:"密码",any:"随便填",thirdparty:"第三方登录",thirdpartyTips:"本地不能模拟,请结合自己业务进行模拟!!!"},documentation:{documentation:"文档",github:"Github 地址"},permission:{roles:"你的权限",switchRoles:"切换权限",tips:"在某些情况下,不适合使用 v-permission。例如:Element-UI 的 Tab 组件或 el-table-column 以及其它动态渲染 dom 的场景。你只能通过手动设置 v-if 来实现。"},guide:{description:"引导页对于一些第一次进入项目的人很有用,你可以简单介绍下项目的功能。本 Demo 是基于",button:"打开引导"},components:{documentation:"文档",dropzoneTips:"由于我司业务有特殊需求,而且要传七牛 所以没用第三方,选择了自己封装。代码非常的简单,具体代码你可以在这里看到 @/components/element-ui/Dropzone",stickyTips:"当页面滚动到预设的位置会吸附在顶部",backToTopTips1:"页面滚动到指定位置会在右下角出现返回顶部按钮",backToTopTips2:"可自定义按钮的样式、show/hide、出现的高度、返回的位置 如需文字提示,可在外部使用Element的el-tooltip元素",imageUploadTips:"由于我在使用时它只有vue@1版本,而且和mockjs不兼容,所以自己改造了一下,如果大家要使用的话,优先还是使用官方版本。"},table:{dynamicTips1:"固定表头, 按照表头顺序排序",dynamicTips2:"不固定表头, 按照点击顺序排序",dragTips1:"默认顺序",dragTips2:"拖拽后顺序",title:"标题",importance:"重要性",type:"类型",remark:"点评",search:"搜索",add:"添加",export:"导出",reviewer:"审核人",id:"序号",date:"时间",author:"作者",readings:"阅读数",status:"状态",actions:"操作",edit:"编辑",publish:"发布",draft:"草稿",delete:"删除",cancel:"取 消",confirm:"确 定"},errorLog:{tips:"请点击右上角bug小图标",description:"现在的管理后台基本都是spa的形式了,它增强了用户体验,但同时也会增加页面出问题的可能性,可能一个小小的疏忽就导致整个页面的死锁。好在 Vue 官网提供了一个方法来捕获处理异常,你可以在其中进行错误处理或者异常上报。",documentation:"文档介绍"},excel:{export:"导出",selectedExport:"导出已选择项",placeholder:"请输入文件名(默认excel-list)"},zip:{export:"导出",placeholder:"请输入文件名(默认file)"},pdf:{tips:"这里使用 window.print() 来实现下载pdf的功能"},theme:{change:"换肤",documentation:"换肤文档",tips:"Tips: 它区别于 navbar 上的 theme-pick, 是两种不同的换肤方法,各自有不同的应用场景,具体请参考文档。"},tagsView:{refresh:"刷新",close:"关闭",closeOthers:"关闭其它",closeAll:"关闭所有"}}),d.a),es:v(v({},{route:{dashboard:"Panel de control",introduction:"Introducción",documentation:"Documentación",guide:"Guía",permission:"Permisos",pagePermission:"Permisos de la página",directivePermission:"Permisos de la directiva",icons:"Iconos",components:"Componentes",componentIndex:"Introducción",markdown:"Markdown",jsonEditor:"Editor JSON",dndList:"Lista Dnd",splitPane:"Panel dividido",avatarUpload:"Subir avatar",dropzone:"Subir ficheros",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"Ir arriba",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Gráficos",keyboardChart:"Keyboard Chart",lineChart:"Gráfico de líneas",mixChart:"Mix Chart",example:"Ejemplo",nested:"Rutas anidadass",menu1:"Menu 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menu 2",Table:"Tabla",dynamicTable:"Tabla dinámica",dragTable:"Arrastrar tabla",inlineEditTable:"Editor",complexTable:"Complex Table",treeTable:"Tree Table",customTreeTable:"Custom TreeTable",tab:"Pestaña",form:"Formulario",createArticle:"Crear artículo",editArticle:"Editar artículo",articleList:"Listado de artículos",errorPages:"Páginas de error",page401:"401",page404:"404",errorLog:"Registro de errores",excel:"Excel",exportExcel:"Exportar a Excel",selectExcel:"Export seleccionado",uploadExcel:"Subir Excel",zip:"Zip",pdf:"PDF",exportZip:"Exportar a Zip",theme:"Tema",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"Enlace externo"},navbar:{logOut:"Salir",dashboard:"Panel de control",github:"Github",theme:"Tema",size:"Tamaño global"},login:{title:"Formulario de acceso",logIn:"Acceso",username:"Usuario",password:"Contraseña",any:"nada",thirdparty:"Conectar con",thirdpartyTips:"No se puede simular en local, así que combine su propia simulación de negocios. ! !"},documentation:{documentation:"Documentación",github:"Repositorio Github"},permission:{roles:"Tus permisos",switchRoles:"Cambiar permisos",tips:"In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if."},guide:{description:"The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ",button:"Ver guía"},components:{documentation:"Documentación",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Fixed header, sorted by header order",dynamicTips2:"Not fixed header, sorted by click order",dragTips1:"Orden por defecto",dragTips2:"The after dragging order",title:"Título",importance:"Importancia",type:"Tipo",remark:"Remark",search:"Buscar",add:"Añadir",export:"Exportar",reviewer:"reviewer",id:"ID",date:"Fecha",author:"Autor",readings:"Lector",status:"Estado",actions:"Acciones",edit:"Editar",publish:"Publicar",draft:"Draft",delete:"Eliminar",cancel:"Cancelar",confirm:"Confirmar"},errorLog:{tips:"Please click the bug icon in the upper right corner",description:"Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.",documentation:"Documento de introducción"},excel:{export:"Exportar",selectedExport:"Exportar seleccionados",placeholder:"Por favor escribe un nombre de fichero"},zip:{export:"Exportar",placeholder:"Por favor escribe un nombre de fichero"},pdf:{tips:"Here we use window.print() to implement the feature of downloading pdf."},theme:{change:"Cambiar tema",documentation:"Documentación del tema",tips:"Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details."},tagsView:{refresh:"Actualizar",close:"Cerrar",closeOthers:"Cerrar otros",closeAll:"Cerrar todos"}}),m.a),oc:v({},{route:{dashboard:"Tablèu de bòrd",introduction:"Introduccion",documentation:"Documentacion",guide:"Guida",permission:"Autorizacions",pagePermission:"Pagina d’autorizacion",directivePermission:"Politica d’autorizacion",icons:"Icònas",components:"Compausants",componentIndex:"Introduccion",markdown:"Markdown",jsonEditor:"JSON Editor",dndList:"Dnd List",splitPane:"SplitPane",avatarUpload:"Mandadís d’avatar",dropzone:"Dropzone",sticky:"Sticky",countTo:"CountTo",componentMixin:"Mixin",backToTop:"BackToTop",dragDialog:"Drag Dialog",dragSelect:"Drag Select",dragKanban:"Drag Kanban",charts:"Charts",keyboardChart:"Keyboard Chart",lineChart:"Line Chart",mixChart:"Mix Chart",example:"Exemple",nested:"Rotas imbricadas",menu1:"Menú 1","menu1-1":"Menu 1-1","menu1-2":"Menu 1-2","menu1-2-1":"Menu 1-2-1","menu1-2-2":"Menu 1-2-2","menu1-3":"Menu 1-3",menu2:"Menú 2",Table:"Tablèu",dynamicTable:"Tablèu dinamic",dragTable:"Drag Table",inlineEditTable:"Inline Edit",complexTable:"Tablèu complèx",treeTable:"Arborescéncia",customTreeTable:"Arborescéncia personalizada",tab:"Onglet",form:"Formulari",createArticle:"Crear un article",editArticle:"Modificar l’article",articleList:"Lista d’articles",errorPages:"Paginas d’error",page401:"401",page404:"404",errorLog:"Jornal d’error",excel:"Excel",exportExcel:"Exportacion Excel",selectExcel:"Exportar los seleccionats",uploadExcel:"Importacion Excel",zip:"Zip",pdf:"PDF",exportZip:"Exportacion Zip",theme:"Tèma",clipboardDemo:"Clipboard",i18n:"I18n",externalLink:"Ligams extèrnes",users:"Utilizaires"},navbar:{logOut:"Desconnexion",dashboard:"Tablèu de bòrd",github:"Github",theme:"Tèma",size:"Talha totala"},login:{title:"Formulari de connexion",logIn:"Se connectar",username:"Nom d’’utilizaire",password:"Senhal",any:"qual que siá",thirdparty:"O se connectar amb",thirdpartyTips:"Pòt pas èsser simulat en local, doncas montatz vòstra pròpria simulacion ! ! !"},documentation:{documentation:"Documentacion",github:"Repertòri Github"},permission:{roles:"Vòstres ròtles",switchRoles:"Cambiar de ròtle",tips:"Dins qualques cases es pas de bon far d’utilizar v-permission, coma element d’onglet compausant, el-table-column o d’autres renduts dom asincròns que pòdon pas que foncionar amb un parametratge manual de v-if."},guide:{description:"La pagina de guida es utila pel monde que dintran dins lo projècte pel primièr còp. Podètz presentar en un mot las foncionalitats del projèctes. La demo es fondada sus ",button:"Mostrar la guida"},components:{documentation:"Documentacion",dropzoneTips:"Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.",stickyTips:"when the page is scrolled to the preset position will be sticky on the top.",backToTopTips1:"When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner",backToTopTips2:"You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally",imageUploadTips:"Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version."},table:{dynamicTips1:"Bandièra fixa, triada per òrdre de bandièra",dynamicTips2:"Bandièra pas fixa, triada per òrdre de clic",dragTips1:"L’’òrdre per defaut",dragTips2:"L’’òrdre aprèp lisar-depausar",title:"Títol",importance:"Imp",type:"Tipe",remark:"Remarca",search:"Recercar",add:"Ajustar",export:"Exportar",reviewer:"examinator",id:"ID",date:"Data",author:"Autor",readings:"Lecturas",status:"Estatuts",actions:"Accions",edit:"Modificar",publish:"Publicar",draft:"Ensag",delete:"Suprimir",cancel:"Anullar",confirm:"Confirmar"},errorLog:{tips:"Mercés de clicar l’’icòna del babau amont a man drecha",description:"Ara que lo sistèma de gestion es coma un spa, melhora l’experiéncia dels utilizaire mas aumenta tanben lo risc de problèmas sus la pagina, una pichona negligéncia pòt menar a un blocatge complèt de la pagina. Urosament Vue fornís de manièras per gerir las excepcions, trobar las errors o senhalar las excepcions.",documentation:"Presentacion del document"},excel:{export:"Exportar",selectedExport:"Exportar los elements seleccionats",placeholder:"Mercés de picar lo nom de fichièr (per defaut excel-list)"},zip:{export:"Exportar",placeholder:"Mercés de picar lo nom de fichièr (per defaut file)"},pdf:{tips:"Aquí utilizam window.print() per prepausar lo telecargament de pdf."},theme:{change:"Cambiar lo tèma",documentation:"Documentacion dels tèmas",tips:"Astúcia : es diferent del theme-pick de la barra de navigacion, i a dos metòdes de personalizacion, caduna amb un biais de far diferent. Referiscam a la documentacion per mai de detalhs."},tagsView:{refresh:"Actualizar",close:"Tampar",closeOthers:"Tampar los autres",closeAll:"Los tampar totes"}})},b=new s.a({locale:i.a.get("language")||"en",messages:g});t.a=b},mm8V:function(e,t,n){"use strict";n.d(t,"a",function(){return l}),n.d(t,"b",function(){return d}),n.d(t,"c",function(){return h}),n.d(t,"d",function(){return f}),n.d(t,"e",function(){return g}),n.d(t,"f",function(){return w}),n.d(t,"g",function(){return S}),n.d(t,"h",function(){return T}),n.d(t,"i",function(){return k}),n.d(t,"j",function(){return _}),n.d(t,"k",function(){return L}),n.d(t,"l",function(){return I}),n.d(t,"m",function(){return C});var r=n("o0o1"),a=n.n(r),o=n("yXPU"),s=n.n(o),c=n("t3Un"),i=n("X4fA"),u=n("9i3r");function l(e,t,n,r,a,o){return p.apply(this,arguments)}function p(){return(p=s()(a.a.mark(function e(t,n,r,o,s,i){var l;return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return l=new FormData,""!==o.trim()&&l.set("filename",o),""!==r.trim()&&l.set("shortcode",r),l.set("file",n),e.next=6,Object(c.a)({baseURL:Object(u.a)(s),url:"/api/pleroma/emoji/packs/".concat(t,"/files"),method:"post",headers:R(i),data:l});case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function d(e,t,n){return"".concat(Object(u.a)(e),"/emoji/").concat(t,"/").concat(n)}function h(e,t,n){return m.apply(this,arguments)}function m(){return(m=s()(a.a.mark(function e(t,n,r){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/".concat(r),method:"post",headers:R(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function f(e,t,n,r){return v.apply(this,arguments)}function v(){return(v=s()(a.a.mark(function e(t,n,r,o){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(r),url:"/api/pleroma/emoji/packs/".concat(t,"/files?shortcode=").concat(n),method:"delete",headers:R(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function g(e,t,n){return b.apply(this,arguments)}function b(){return(b=s()(a.a.mark(function e(t,n,r){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/".concat(r),method:"delete",headers:R(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function w(e,t,n,r,a){return y.apply(this,arguments)}function y(){return(y=s()(a.a.mark(function e(t,n,r,o,s){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(o),url:"/api/pleroma/emoji/packs/download",method:"post",headers:R(s),data:""===r.trim()?{url:Object(u.a)(t),name:n}:{url:Object(u.a)(t),name:n,as:r},timeout:0});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function S(e,t,n,r,a){return E.apply(this,arguments)}function E(){return(E=s()(a.a.mark(function e(t,n,r,o,s){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(o),url:"/api/pleroma/emoji/packs/".concat(t,"?page=").concat(n,"&page_size=").concat(r),method:"get",headers:R(s)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function T(e,t){return x.apply(this,arguments)}function x(){return(x=s()(a.a.mark(function e(t,n){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/import",method:"get",headers:R(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function k(e,t,n,r){return O.apply(this,arguments)}function O(){return(O=s()(a.a.mark(function e(t,n,r,o){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(r),url:"/api/pleroma/emoji/packs?page=".concat(t,"&page_size=").concat(n),method:"get",headers:R(o)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _(e,t,n){return A.apply(this,arguments)}function A(){return(A=s()(a.a.mark(function e(t,n,r){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/remote?url=".concat(Object(u.a)(r)),method:"get",headers:R(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function L(e,t){return j.apply(this,arguments)}function j(){return(j=s()(a.a.mark(function e(t,n){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/admin/reload_emoji",method:"post",headers:R(n)});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function I(e,t,n,r){return P.apply(this,arguments)}function P(){return(P=s()(a.a.mark(function e(t,n,r,o){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(t),url:"/api/pleroma/emoji/packs/".concat(r),method:"patch",headers:R(n),data:{metadata:o},timeout:0});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function C(e,t,n,r,a,o,s){return D.apply(this,arguments)}function D(){return(D=s()(a.a.mark(function e(t,n,r,o,s,i,l){return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Object(c.a)({baseURL:Object(u.a)(i),url:"/api/pleroma/emoji/packs/".concat(t,"/files"),method:"patch",headers:R(l),data:{shortcode:n,new_shortcode:r,new_filename:o,force:s}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var R=function(e){return e?{Authorization:"Bearer ".concat(Object(i.b)())}:{}}},nZHn:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-icon",use:"icon-icon-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-icon"><path d="M115.147.062a13 13 0 0 1 4.94.945c1.55.63 2.907 1.526 4.069 2.688a13.148 13.148 0 0 1 2.761 4.069c.678 1.55 1.017 3.245 1.017 5.086v102.3c0 3.681-1.187 6.733-3.56 9.155-2.373 2.422-5.352 3.633-8.937 3.633H12.992c-3.875 0-7-1.26-9.373-3.779-2.373-2.518-3.56-5.667-3.56-9.445V12.704c0-3.39 1.163-6.345 3.488-8.863C5.872 1.32 8.972.062 12.847.062h102.3zM81.434 109.047c1.744 0 3.003-.412 3.778-1.235.775-.824 1.163-1.914 1.163-3.27 0-1.26-.388-2.325-1.163-3.197-.775-.872-2.034-1.307-3.778-1.307H72.57c.097-.194.145-.485.145-.872V27.09h9.01c1.743 0 2.954-.436 3.633-1.308.678-.872 1.017-1.938 1.017-3.197 0-1.26-.34-2.325-1.017-3.197-.679-.872-1.89-1.308-3.633-1.308H46.268c-1.743 0-2.954.436-3.632 1.308-.678.872-1.018 1.938-1.018 3.197 0 1.26.34 2.325 1.018 3.197.678.872 1.889 1.308 3.632 1.308h8.138v72.075c0 .193.024.339.073.436.048.096.072.242.072.436H46.56c-1.744 0-3.003.435-3.778 1.307-.775.872-1.163 1.938-1.163 3.197 0 1.356.388 2.446 1.163 3.27.775.823 2.034 1.235 3.778 1.235h34.875z" /></symbol>'});s.a.add(c);t.default=c},oUrx:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-404",use:"icon-404-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-404"><path d="M121.718 73.272v9.953c3.957-7.584 6.199-16.05 6.199-24.995C127.917 26.079 99.273 0 63.958 0 28.644 0 0 26.079 0 58.23c0 .403.028.806.028 1.21l22.97-25.953h13.34l-19.76 27.187h6.42V53.77l13.728-19.477v49.361H22.998V73.272H2.158c5.951 20.284 23.608 36.208 45.998 41.399-1.44 3.3-5.618 11.263-12.565 12.674-8.607 1.764 23.358.428 46.163-13.178 17.519-4.611 31.938-15.849 39.77-30.513h-13.506V73.272H85.02V59.464l22.998-25.977h13.008l-19.429 27.187h6.421v-7.433l13.727-19.402v39.433h-.027zm-78.24 2.822a10.516 10.516 0 0 1-.996-4.535V44.548c0-1.613.332-3.124.996-4.535a11.66 11.66 0 0 1 2.713-3.68c1.134-1.032 2.49-1.864 4.04-2.468 1.55-.605 3.21-.908 4.982-.908h11.292c1.77 0 3.431.303 4.981.908 1.522.604 2.85 1.41 3.986 2.418l-12.26 16.303v-2.898a1.96 1.96 0 0 0-.665-1.512c-.443-.403-.996-.604-1.66-.604-.665 0-1.218.201-1.661.604a1.96 1.96 0 0 0-.664 1.512v9.071L44.364 77.606a10.556 10.556 0 0 1-.886-1.512zm35.73-4.535c0 1.613-.332 3.124-.997 4.535a11.66 11.66 0 0 1-2.712 3.68c-1.134 1.032-2.49 1.864-4.04 2.469-1.55.604-3.21.907-4.982.907H55.185c-1.77 0-3.431-.303-4.981-.907-1.55-.605-2.906-1.437-4.041-2.47a12.49 12.49 0 0 1-1.384-1.512l13.727-18.217v6.375c0 .605.222 1.109.665 1.512.442.403.996.604 1.66.604.664 0 1.218-.201 1.66-.604a1.96 1.96 0 0 0 .665-1.512V53.87L75.97 36.838c.913.932 1.66 1.99 2.214 3.175.664 1.41.996 2.922.996 4.535v27.011h.028z" /></symbol>'});s.a.add(c);t.default=c},qkZ8:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-edit",use:"icon-edit-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-edit"><path d="M106.133 67.2a4.797 4.797 0 0 0-4.8 4.8c0 .187.014.36.027.533h-.027V118.4H9.6V26.667h50.133c2.654 0 4.8-2.147 4.8-4.8 0-2.654-2.146-4.8-4.8-4.8H9.6a9.594 9.594 0 0 0-9.6 9.6V118.4c0 5.307 4.293 9.6 9.6 9.6h91.733c5.307 0 9.6-4.293 9.6-9.6V72.533h-.026c.013-.173.026-.346.026-.533 0-2.653-2.146-4.8-4.8-4.8z" /><path d="M125.16 13.373L114.587 2.8c-3.747-3.747-9.854-3.72-13.6.027l-52.96 52.96a4.264 4.264 0 0 0-.907 1.36L33.813 88.533c-.746 1.76-.226 3.534.907 4.68 1.133 1.147 2.92 1.667 4.693.92l31.4-13.293c.507-.213.96-.52 1.36-.907l52.96-52.96c3.747-3.746 3.774-9.853.027-13.6zM66.107 72.4l-18.32 7.76 7.76-18.32L92.72 24.667l10.56 10.56L66.107 72.4zm52.226-52.227l-8.266 8.267-10.56-10.56 8.266-8.267.027-.026 10.56 10.56-.027.026z" /></symbol>'});s.a.add(c);t.default=c},qwAt:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-lock",use:"icon-lock-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-lock"><path d="M119.88 49.674h-7.987V39.52C111.893 17.738 90.45.08 63.996.08 37.543.08 16.1 17.738 16.1 39.52v10.154H8.113c-4.408 0-7.987 2.94-7.987 6.577v65.13c0 3.637 3.57 6.577 7.987 6.577H119.88c4.407 0 7.987-2.94 7.987-6.577v-65.13c-.008-3.636-3.58-6.577-7.987-6.577zm-23.953 0H32.065V39.52c0-14.524 14.301-26.295 31.931-26.295 17.63 0 31.932 11.777 31.932 26.295v10.153z" /></symbol>'});s.a.add(c);t.default=c},s7Vf:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-user",use:"icon-user-usage",viewBox:"0 0 130 130",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 130 130" id="icon-user"><path d="M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z" stroke="#979797" /></symbol>'});s.a.add(c);t.default=c},"sg+I":function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409EFF",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"180px"}},t3Un:function(e,t,n){"use strict";var r=n("vDqi"),a=n.n(r),o=n("XJYT"),s=a.a.create({timeout:6e4});s.interceptors.response.use(function(e){return e},function(e){var t;if(console.log("Error ".concat(e)),e.response){var n=e.response.data.error?e.response.data.error:e.response.data;t=e.response.headers["content-type"].includes("application/json")?"".concat(e.message," - ").concat(n):"".concat(e.message)}else t=e;return Object(o.Message)({message:t,type:"error",duration:5e3}),Promise.reject(e)}),t.a=s},vDVG:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-clipboard",use:"icon-clipboard-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-clipboard"><path d="M54.857 118.857h64V73.143H89.143c-1.902 0-3.52-.668-4.855-2.002-1.335-1.335-2.002-2.954-2.002-4.855V36.57H54.857v82.286zM73.143 16v-4.571a2.2 2.2 0 0 0-.677-1.61 2.198 2.198 0 0 0-1.609-.676H20.571c-.621 0-1.158.225-1.609.676a2.198 2.198 0 0 0-.676 1.61V16a2.2 2.2 0 0 0 .676 1.61c.451.45.988.676 1.61.676h50.285c.622 0 1.158-.226 1.61-.677.45-.45.676-.987.676-1.609zm18.286 48h21.357L91.43 42.642V64zM128 73.143v48c0 1.902-.667 3.52-2.002 4.855-1.335 1.335-2.953 2.002-4.855 2.002H52.57c-1.901 0-3.52-.667-4.854-2.002-1.335-1.335-2.003-2.953-2.003-4.855v-11.429H6.857c-1.902 0-3.52-.667-4.855-2.002C.667 106.377 0 104.759 0 102.857v-96c0-1.902.667-3.52 2.002-4.855C3.337.667 4.955 0 6.857 0h77.714c1.902 0 3.52.667 4.855 2.002 1.335 1.335 2.003 2.953 2.003 4.855V30.29c1 .622 1.856 1.29 2.569 2.003l29.147 29.147c1.335 1.335 2.478 3.145 3.429 5.43.95 2.287 1.426 4.383 1.426 6.291v-.018z" /></symbol>'});s.a.add(c);t.default=c},y7eQ:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-email",use:"icon-email-usage",viewBox:"0 0 128 96",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 96" id="icon-email"><path d="M64.125 56.975L120.188.912A12.476 12.476 0 0 0 115.5 0h-103c-1.588 0-3.113.3-4.513.838l56.138 56.137z" /><path d="M64.125 68.287l-62.3-62.3A12.42 12.42 0 0 0 0 12.5v71C0 90.4 5.6 96 12.5 96h103c6.9 0 12.5-5.6 12.5-12.5v-71a12.47 12.47 0 0 0-1.737-6.35L64.125 68.287z" /></symbol>'});s.a.add(c);t.default=c},yCkv:function(e,t,n){"use strict";n.r(t);var r=n("4BeY"),a=n.n(r),o=n("IaFt"),s=n.n(o),c=new a.a({id:"icon-chart",use:"icon-chart-usage",viewBox:"0 0 128 128",content:'<symbol xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" id="icon-chart"><path d="M0 54.857h36.571V128H0V54.857zM91.429 27.43H128V128H91.429V27.429zM45.714 0h36.572v128H45.714V0z" /></symbol>'});s.a.add(c);t.default=c},zEvO:function(e,t,n){"use strict";var r=n("9NTF");n.n(r).a},zT9a:function(e,t,n){"use strict";var r={name:"SvgIcon",props:{iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{iconName:function(){return"#icon-".concat(this.iconClass)},svgClass:function(){return this.className?"svg-icon "+this.className:"svg-icon"}}},a=(n("mDMp"),n("KHd+")),o=Object(a.a)(r,function(){var e=this.$createElement,t=this._self._c||e;return t("svg",this._g({class:this.svgClass,attrs:{"aria-hidden":"true"}},this.$listeners),[t("use",{attrs:{"xlink:href":this.iconName}})])},[],!1,null,"17178ffc",null);o.options.__file="index.vue";t.a=o.exports},zx4i:function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409EFF",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"180px"}}},[["Vtdi","runtime","chunk-elementUI","chunk-libs"]]]); +//# sourceMappingURL=app.ac1962ee.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/app.ac1962ee.js.map b/priv/static/adminfe/static/js/app.ac1962ee.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/icons/svg/pdf.svg","webpack:///./src/icons/svg/people.svg","webpack:///./src/icons/svg/eye-open.svg","webpack:///./src/components/element-ui/Hamburger/index.vue?8f92","webpack:///./src/icons/svg/exit-fullscreen.svg","webpack:///./src/icons/svg/nested.svg","webpack:///./src/icons/svg/theme.svg","webpack:///./src/icons/svg/form.svg","webpack:///./src/icons/svg/dashboard.svg","webpack:///./src/api/utils.js","webpack:///./src/icons/svg/shopping.svg","webpack:///./src/icons/svg/bug.svg","webpack:///./src/icons/svg/international.svg","webpack:///./src/icons/svg/qq.svg","webpack:///./src/icons/svg/link.svg","webpack:///./src/components/element-ui/ScrollPane/index.vue?8407","webpack:///./src/views/layout/components/TagsView.vue?6ab0","webpack:///./src/icons/svg/guide 2.svg","webpack:///./src/icons/svg/language.svg","webpack:///./src/icons/svg/password.svg","webpack:///./src/icons/svg/peoples.svg","webpack:///./src/icons/svg/money.svg","webpack:///./src/icons/svg/example.svg","webpack:///./src/icons/svg/list.svg","webpack:///./src/icons/svg/settings.svg","webpack:///./src/icons/svg/message.svg","webpack:///./src/icons/svg/table.svg","webpack:///./src/views/layout/Layout.vue?d1f6","webpack:///./src/icons/svg/eye.svg","webpack:///./src/icons/svg sync nonrecursive \\.svg$","webpack:///./src/icons/svg/component.svg","webpack:///./src/App.vue?9edb","webpack:///src/App.vue","webpack:///./src/App.vue","webpack:///./src/App.vue?1e50","webpack:///./src/api/app.js","webpack:///./src/store/modules/app.js","webpack:///./src/store/modules/emojiPacks.js","webpack:///./src/store/modules/errorLog.js","webpack:///./src/store/getters.js","webpack:///./src/api/invites.js","webpack:///./src/store/modules/invites.js","webpack:///./src/api/mediaProxyCache.js","webpack:///./src/store/modules/mediaProxyCache.js","webpack:///./src/api/moderationLog.js","webpack:///./src/store/modules/moderationLog.js","webpack:///./src/api/peers.js","webpack:///./src/store/modules/peers.js","webpack:///./src/components/element-ui/Hamburger/index.vue?1751","webpack:///src/components/element-ui/Hamburger/index.vue","webpack:///./src/components/element-ui/Hamburger/index.vue","webpack:///./src/components/element-ui/Hamburger/index.vue?78c1","webpack:///src/views/layout/components/Navbar.vue","webpack:///./src/views/layout/components/Navbar.vue?138b","webpack:///./src/views/layout/components/Navbar.vue","webpack:///./src/views/layout/components/Navbar.vue?b672","webpack:///./src/utils/i18n.js","webpack:///./src/utils/index.js","webpack:///./src/views/layout/components/Sidebar/Item.vue?9f99","webpack:///./src/views/layout/components/Sidebar/Item.vue?425b","webpack:///src/views/layout/components/Sidebar/Item.vue","webpack:///./src/views/layout/components/Sidebar/Item.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue?a99f","webpack:///src/views/layout/components/Sidebar/Link.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue","webpack:///./src/views/layout/components/Sidebar/Link.vue?d88c","webpack:///src/views/layout/components/Sidebar/SidebarItem.vue","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue?f0b2","webpack:///./src/views/layout/components/Sidebar/FixiOSBug.js","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue","webpack:///./src/views/layout/components/Sidebar/SidebarItem.vue?e550","webpack:///src/views/layout/components/Sidebar/index.vue","webpack:///./src/views/layout/components/Sidebar/index.vue?3b50","webpack:///./src/views/layout/components/Sidebar/index.vue","webpack:///./src/views/layout/components/Sidebar/index.vue?d021","webpack:///./src/components/element-ui/ScrollPane/index.vue?a39e","webpack:///src/components/element-ui/ScrollPane/index.vue","webpack:///./src/components/element-ui/ScrollPane/index.vue","webpack:///./src/components/element-ui/ScrollPane/index.vue?7344","webpack:///src/views/layout/components/TagsView.vue","webpack:///./src/views/layout/components/TagsView.vue?f016","webpack:///./src/views/layout/components/TagsView.vue","webpack:///./src/views/layout/components/TagsView.vue?d863","webpack:///./src/views/layout/components/AppMain.vue?4460","webpack:///src/views/layout/components/AppMain.vue","webpack:///./src/views/layout/components/AppMain.vue","webpack:///./src/views/layout/components/AppMain.vue?367b","webpack:///./src/views/layout/mixin/ResizeHandler.js","webpack:///./src/views/layout/Layout.vue?de6d","webpack:///src/views/layout/Layout.vue","webpack:///./src/views/layout/Layout.vue","webpack:///./src/views/layout/Layout.vue?9516","webpack:///./src/router/index.js","webpack:///./src/store/modules/permission.js","webpack:///./src/api/relays.js","webpack:///./src/store/modules/relays.js","webpack:///./src/api/reports.js","webpack:///./src/store/modules/reports.js","webpack:///./src/api/settings.js","webpack:///./src/store/modules/settings.js","webpack:///./src/api/status.js","webpack:///./src/store/modules/status.js","webpack:///./src/store/modules/tagsView.js","webpack:///./src/api/login.js","webpack:///./src/api/nodeInfo.js","webpack:///./src/store/modules/user.js","webpack:///./src/api/users.js","webpack:///./src/store/modules/userProfile.js","webpack:///./src/store/modules/users.js","webpack:///./src/store/index.js","webpack:///./src/icons/index.js","webpack:///./src/errorLog.js","webpack:///./src/permission.js","webpack:///./src/filters/index.js","webpack:///./src/main.js","webpack:///./src/utils/auth.js","webpack:///./src/views/layout/components/TagsView.vue?da45","webpack:///./src/views/layout/components/AppMain.vue?2c3a","webpack:///./src/icons/svg/excel.svg","webpack:///./src/icons/svg/guide.svg","webpack:///./src/icons/svg/star.svg","webpack:///./src/views/layout/components/Navbar.vue?a40e","webpack:///./src/icons/svg/wechat.svg","webpack:///./src/store/modules/normalizers.js","webpack:///./src/icons/svg/size.svg","webpack:///./src/icons/svg/zip.svg","webpack:///./src/icons/svg/tab.svg","webpack:///./src/icons/svg/search.svg","webpack:///./src/icons/svg/tree.svg","webpack:///./src/icons/svg/documentation.svg","webpack:///./src/icons/svg/drag.svg","webpack:///./src/components/element-ui/SvgIcon/index.vue?928c","webpack:///./src/icons/svg/fullscreen.svg","webpack:///./src/lang/index.js","webpack:///./src/lang/en.js","webpack:///./src/lang/zh.js","webpack:///./src/lang/es.js","webpack:///./src/lang/oc.js","webpack:///./src/api/emojiPacks.js","webpack:///./src/icons/svg/icon.svg","webpack:///./src/icons/svg/404.svg","webpack:///./src/icons/svg/edit.svg","webpack:///./src/icons/svg/lock.svg","webpack:///./src/icons/svg/user.svg","webpack:///./src/styles/index.scss","webpack:///./src/utils/request.js","webpack:///./src/icons/svg/clipboard.svg","webpack:///./src/icons/svg/email.svg","webpack:///./src/icons/svg/chart.svg","webpack:///./src/views/layout/components/Sidebar/Item.vue?895e","webpack:///./src/components/element-ui/SvgIcon/index.vue?8767","webpack:///./src/components/element-ui/SvgIcon/index.vue?c01f","webpack:///src/components/element-ui/SvgIcon/index.vue","webpack:///./src/components/element-ui/SvgIcon/index.vue","webpack:///./src/styles/variables.scss"],"names":["__webpack_require__","r","__webpack_exports__","svg_baker_runtime_browser_symbol__WEBPACK_IMPORTED_MODULE_0__","svg_baker_runtime_browser_symbol__WEBPACK_IMPORTED_MODULE_0___default","n","svg_sprite_loader_runtime_browser_sprite_build__WEBPACK_IMPORTED_MODULE_1__","svg_sprite_loader_runtime_browser_sprite_build__WEBPACK_IMPORTED_MODULE_1___default","symbol","a","id","use","viewBox","content","add","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_69c6c5c4_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","d","baseName","instanceName","arguments","length","undefined","match","startsWith","isLocalhost","concat","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_591d6778_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TagsView_vue_vue_type_style_index_0_id_e1cdb714_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Layout_vue_vue_type_style_index_0_id_767d264f_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","map","./404.svg","./bug.svg","./chart.svg","./clipboard.svg","./component.svg","./dashboard.svg","./documentation.svg","./drag.svg","./edit.svg","./email.svg","./example.svg","./excel.svg","./exit-fullscreen.svg","./eye-open.svg","./eye.svg","./form.svg","./fullscreen.svg","./guide 2.svg","./guide.svg","./icon.svg","./international.svg","./language.svg","./link.svg","./list.svg","./lock.svg","./message.svg","./money.svg","./nested.svg","./password.svg","./pdf.svg","./people.svg","./peoples.svg","./qq.svg","./search.svg","./settings.svg","./shopping.svg","./size.svg","./star.svg","./tab.svg","./table.svg","./theme.svg","./tree.svg","./user.svg","./wechat.svg","./zip.svg","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","src_Appvue_type_script_lang_js_","name","component","componentNormalizer","_h","this","$createElement","_c","_self","attrs","options","__file","App","needReboot","_x","_x2","_needReboot","apply","_callee","authHost","token","regenerator_default","wrap","_context","prev","next","request","baseURL","url","method","headers","authHeaders","abrupt","sent","stop","restartApp","_x3","_x4","_restartApp","_callee2","_context2","Authorization","getToken","app","state","sidebar","opened","Cookies","get","withoutAnimation","device","language","size","invitesEnabled","mutations","TOGGLE_SIDEBAR","set","CLOSE_SIDEBAR","TOGGLE_DEVICE","SET_INVITES_ENABLED","SET_LANGUAGE","TOGGLE_REBOOT","SET_SIZE","actions","closeSideBar","_ref","_ref2","commit","NeedReboot","_ref3","asyncToGenerator_default","mark","getters","response","data","RestartApplication","_ref4","SetInvitesEnabled","_ref5","setLanguage","_ref6","setSize","_ref7","toggleDevice","_ref8","toggleSideBar","_ref9","emojiPacks","activeTab","currentFilesPage","currentPage","filesPageSize","localPackFilesCount","localPacks","localPacksCount","pageSize","remoteInstance","remotePacks","SET_ACTIVE_TAB","tab","SET_FILES_COUNT","count","SET_FILES_PAGE","page","SET_LOCAL_PACKS","packs","SET_LOCAL_PACKS_COUNT","SET_PACK_FILES","files","_objectSpread","defineProperty_default","SET_PAGE","SET_REMOTE_INSTANCE","SET_REMOTE_PACKS","UPDATE_LOCAL_PACK_VAL","key","value","Vue","UPDATE_LOCAL_PACK_PACK","pack","UPDATE_LOCAL_PACK_FILES","AddNewEmojiFile","packName","file","shortcode","filename","result","addNewEmojiFile","t0","Message","message","i18n","t","type","duration","DeleteEmojiFile","dispatch","_state$localPacks$pac","updatedPackFiles","objectWithoutProperties_default","_toPropertyKey","deleteEmojiFile","CreatePack","_ref10","_callee3","_context3","createPack","DeletePack","_ref11","_ref12","_callee4","_context4","deletePack","DownloadFrom","_ref13","_ref14","_callee5","instanceAddress","as","_context5","downloadFrom","FetchLocalEmojiPacks","_ref15","_callee6","_yield$listPacks","updatedPacks","_context6","listPacks","reduce","acc","_packs$packName","FetchSinglePack","_ref16","_ref17","_callee7","_yield$fetchPack","files_count","_context7","fetchPack","ImportFromFS","_ref18","_callee8","_context8","importFromFS","status","ReloadEmoji","_ref19","_callee9","_context9","reloadEmoji","SavePackMetadata","_ref20","_ref21","_callee10","_context10","savePackMetadata","SetActiveTab","_ref22","SetRemoteEmojiPacks","_ref23","_ref24","_callee11","_yield$listRemotePack","_context11","listRemotePacks","SetRemoteInstance","_ref25","instance","UpdateEmojiFile","_ref26","_ref27","_callee12","newShortcode","newFilename","force","_context12","el","updateEmojiFile","UpdateLocalPackVal","_ref28","args","_callee13","_context13","errorLog","logs","ADD_ERROR_LOG","log","push","addErrorLog","visitedViews","tagsView","cachedViews","user","avatar","introduction","roles","setting","permission_routers","permission","routers","addRouters","errorLogs","users","fetchedUsers","settings","generateInviteToken","_generateInviteToken","max_use","expires_at","inviteViaEmail","_x5","_x6","_x7","_x8","_inviteViaEmail","email","listInviteTokens","_x9","_x10","_listInviteTokens","revokeToken","_x11","_x12","_x13","_revokeToken","tokenToRevoke","invites","inviteTokens","loading","newToken","SET_LOADING","SET_NEW_TOKEN","SET_TOKENS","tokens","FetchInviteTokens","reverse","GenerateInviteToken","maxUse","expiresAt","_yield$generateInvite","InviteUserViaEmail","RemoveNewToken","RevokeToken","listBannedUrls","_listBannedUrls","purgeUrls","_purgeUrls","urls","ban","removeBannedUrls","_removeBannedUrls","searchBannedUrls","_x14","_x15","_x16","_searchBannedUrls","query","mediaProxyCache","bannedUrls","totalUrlsCount","SET_BANNED_URLS","SET_TOTAL_URLS_COUNT","ListBannedUrls","PurgeUrls","RemoveBannedUrls","SearchUrls","fetchLog","_fetchLog","params","normalizedParams","_args","URLSearchParams","_","omitBy","moderationLog_objectSpread","isUndefined","toString","fetchAdmins","_fetchAdmins","fetchModerators","_fetchModerators","moderationLog","fetchedLog","logItemsCount","admins","moderators","logLoading","adminsLoading","SET_LOG_LOADING","SET_ADMINS_LOADING","SET_MODERATION_LOG","SET_MODERATION_LOG_COUNT","SET_ADMINS","SET_MODERATORS","FetchModerationLog","_arguments","opts","items","total","FetchAdmins","adminsResponse","moderatorsResponse","fetchPeers","_fetchPeers","peers","fetchedPeers","SET_PEERS","FetchPeers","toConsumableArray_default","sort","element_ui_Hamburgervue_type_script_lang_js_","props","isActive","Boolean","default","toggleClick","Function","Hamburger_component","staticStyle","padding","on","click","staticClass","class","is-active","xmlns","width","height","components_Navbarvue_type_script_lang_js_","components","Hamburger","computed","Navbarvue_type_script_lang_js_objectSpread","vuex_esm","methods","$store","logout","then","location","reload","Navbar_component","_vm","toggle-click","_v","trigger","src","slot","display","_s","$t","Navbar","generateTitle","title","$te","parseTime","time","cFormat","date","format","typeof_default","test","parseInt","Date","formatObj","y","getFullYear","m","getMonth","getDate","h","getHours","i","getMinutes","s","getSeconds","getDay","replace","formatTime","option","diff","now","Math","ceil","isExternal","path","Sidebar_Itemvue_type_script_lang_js_","String","icon","Item_component","icon-class","Item","Sidebar_Linkvue_type_script_lang_js_","to","required","linkProps","is","href","target","rel","Link_component","_b","_t","Link","Sidebar_SidebarItemvue_type_script_lang_js_","AppLink","mixins","mounted","fixBugIniOS","_this","$subMenu","$refs","subMenu","handleMouseleave","item","isNest","basePath","onlyOneChild","normalizedReportsCount","numeral_default","reports","openReportsCount","hasOneShowingChild","children","parent","showingChildren","filter","hidden","SidebarItemvue_type_script_lang_js_objectSpread","noShowingChildren","resolvePath","routePath","isExternalLink","path_browserify_default","showCount","SidebarItem_component","alwaysShow","ref","index","meta","_e","_l","child","is-nest","base-path","submenu-title-noDropdown","SidebarItem","components_Sidebarvue_type_script_lang_js_","Sidebarvue_type_script_lang_js_objectSpread","variables","variables_default","isCollapse","Sidebar_component","wrap-class","default-active","$route","collapse","background-color","menuBg","text-color","menuText","active-text-color","menuActiveText","mode","route","Sidebar","element_ui_ScrollPanevue_type_script_lang_js_","left","handleScroll","eventDelta","wheelDelta","deltaY","$scrollWrapper","scrollContainer","scrollLeft","moveToTarget","currentTag","$containerWidth","$el","offsetWidth","tagList","$parent","tag","firstTag","lastTag","scrollWidth","currentIndex","findIndex","prevTag","nextTag","afterNextTagOffsetLeft","offsetLeft","beforePrevTagOffsetLeft","ScrollPane_component","vertical","nativeOn","wheel","$event","preventDefault","components_TagsViewvue_type_script_lang_js_","ScrollPane","visible","top","selectedTag","affixTags","watch","addTags","moveToCurrentTag","document","body","addEventListener","closeMenu","removeEventListener","initTags","filterAffixTags","routes","tags","forEach","affix","TagsViewvue_type_script_lang_js_objectSpread","tempTags","_step","_iterator","_createForOfIteratorHelper","done","err","f","_this2","$nextTick","_step2","_iterator2","scrollPane","fullPath","refreshSelectedTag","view","_this3","$router","closeSelectedTag","_this4","toLastView","closeOthersTags","_this5","closeAllTags","_this6","some","latestView","slice","openMenu","getBoundingClientRect","maxLeft","clientX","clientY","TagsView_component","refInFor","mouseup","button","contextmenu","stopPropagation","directives","rawName","expression","style","TagsView","components_AppMainvue_type_script_lang_js_","AppMain_component","include","AppMain","layout_Layoutvue_type_script_lang_js_","store","beforeMount","window","resizeHandler","isMobile","isTablet","rect","classObj","hideSidebar","openSidebar","mobile","handleClickOutside","Layout_component","Layout","Router","disabledFeatures","process","settingsDisabled","includes","Promise","all","bind","noCache","statusesDisabled","statuses","reportsDisabled","invitesDisabled","emojiPacksDisabled","moderationLogDisabled","mediaProxyCacheDisabled","constantRouterMap","redirect","router","scrollBehavior","asyncRouterMap","filterAsyncRouter","res","tmp","permission_objectSpread","role","hasPermission","SET_ROUTERS","GenerateRoutes","accessedRouters","fetchRelays","_fetchRelays","addRelay","_addRelay","relay_url","deleteRelay","_deleteRelay","relays","fetchedRelays","SET_RELAYS","ADD_RELAY","relay","actor","DELETE_RELAY","fetchedRelay","FetchRelays","_yield$fetchRelays","AddRelay","finish","DeleteRelay","changeState","_changeState","fetchReports","_fetchReports","reportID","noteID","fetchedReports","stateFilter","totalReportsCount","SET_LAST_REPORT_ID","idOfLastReport","SET_OPEN_REPORTS_COUNT","SET_REPORTS","SET_REPORTS_COUNT","SET_REPORTS_FILTER","ChangeReportState","reportsData","updatedReports","report","reports_objectSpread","ClearFetchedReports","FetchReports","_yield$fetchReports","FetchOpenReportsCount","_yield$fetchReports2","SetReportsFilter","CreateReportNote","rootState","_createNote","createNote","optimisticNote","nickname","created_at","getTime","notes","DeleteReportNote","_deleteNote","deleteNote","note","fetchDescription","_fetchDescription","fetchSettings","_fetchSettings","updateSettings","_updateSettings","configs","removeSettings","_removeSettings","configDisabled","db","description","searchData","updatedSettings","CLEAR_UPDATED_SETTINGS","REMOVE_SETTING_FROM_UPDATED","group","subkeys","_state$updatedSetting","_subkeys$","settings_toPropertyKey","SET_DESCRIPTION","SET_SEARCH","searchObject","SET_SETTINGS","newSettings","parsedValue","valueHasTuples","parseNonTuples","parseTuples","settings_objectSpread","newDbSettings","TOGGLE_TABS","UPDATE_SETTINGS","input","updatedSetting","UPDATE_STATE","updatedState","FetchSettings","formSearchObject","RemoveSetting","_configs$","need_reboot","SubmitChanges","wrapUpdatedSettings","UpdateSettings","UpdateState","deletedKey","delete","changeStatusScope","_changeStatusScope","sensitive","visibility","deleteStatus","_deleteStatus","fetchStatus","_fetchStatus","fetchStatuses","_fetchStatuses","godmode","localOnly","fetchStatusesCount","_fetchStatusesCount","fetchStatusesByInstance","_fetchStatusesByInstance","fetchedStatus","fetchedStatuses","statusAuthor","statusesByInstance","selectedInstance","showLocal","showPrivate","buttonLoading","allLoaded","statusVisibility","CHANGE_GODMODE_CHECKBOX_VALUE","CHANGE_LOCAL_CHECKBOX_VALUE","CHANGE_PAGE","CHANGE_SELECTED_INSTANCE","SET_STATUS","SET_STATUSES_BY_INSTANCE","PUSH_STATUSES","SET_ALL_LOADED","SET_BUTTON_LOADING","SET_STATUS_VISIBILITY","SET_STATUS_AUTHOR","ChangeStatusScope","statusId","isSensitive","reportCurrentPage","userId","ClearState","DeleteStatus","FetchStatus","account","FetchStatusAfterUserModeration","FetchStatusesCount","_yield$fetchStatusesC","status_visibility","FetchStatusesByInstance","FetchStatusesPageByInstance","HandleGodmodeCheckboxChange","HandleLocalCheckboxChange","HandleFilterChange","HandlePageChange","SetStatus","ADD_VISITED_VIEW","v","assign","ADD_CACHED_VIEW","DEL_VISITED_VIEW","tagsView_createForOfIteratorHelper","entries","_step$value","slicedToArray_default","splice","DEL_CACHED_VIEW","indexOf","DEL_OTHERS_VISITED_VIEWS","DEL_OTHERS_CACHED_VIEWS","_step3","_iterator3","DEL_ALL_VISITED_VIEWS","DEL_ALL_CACHED_VIEWS","UPDATE_VISITED_VIEW","_step4","_iterator4","addView","addVisitedView","addCachedView","delView","delVisitedView","delCachedView","delOthersViews","delOthersVisitedViews","delOthersCachedViews","delAllViews","delAllVisitedViews","delAllCachedViews","updateVisitedView","loginByUsername","_loginByUsername","username","password","appsRequest","client_name","random","redirect_uris","origin","scopes","client_id","client_secret","grant_type","getUserInfo","getNodeInfo","_getNodeInfo","getAuthHost","articlePlatform","nodeInfo","SET_CODE","SET_TOKEN","SET_INTRODUCTION","SET_SETTING","SET_NAME","SET_AVATAR","SET_ROLES","SET_ID","SET_AUTH_HOST","SET_NODE_INFO","LoginByUsername","reject","access_token","setToken","setAuthHost","catch","error","GetNodeInfo","metadata","GetUserInfo","pleroma","is_admin","LogOut","removeToken","removeAuthHost","FedLogOut","LoginByPleromaFE","host","activateUsers","_activateUsers","nicknames","addRight","_addRight","right","createNewAccount","_createNewAccount","deactivateUsers","_deactivateUsers","deleteRight","_x17","_x18","_x19","_deleteRight","deleteUsers","_x20","_x21","_x22","_deleteUsers","disableMfa","_x23","_x24","_x25","_disableMfa","fetchUser","_x26","_x27","_x28","_fetchUser","fetchUserCredentials","_x29","_x30","_x31","_fetchUserCredentials","updateUserCredentials","_x32","_x33","_x34","_x35","_updateUserCredentials","credentials","fetchUsers","_x36","_x37","_x38","_fetchUsers","filters","_args11","getPasswordResetToken","_x39","_x40","_x41","_getPasswordResetToken","forcePasswordReset","_x42","_x43","_x44","_forcePasswordReset","searchUsers","_x45","_x46","_x47","_x48","_searchUsers","_callee14","_args14","_context14","tagUser","_x49","_x50","_x51","_x52","_tagUser","_callee15","_context15","untagUser","_x53","_x54","_x55","_x56","_untagUser","_callee16","_context16","_callee17","_context17","approveUserAccount","_x61","_x62","_x63","_approveUserAccount","_callee18","_context18","confirmUserEmail","_x64","_x65","_x66","_confirmUserEmail","_callee19","_context19","resendConfirmationEmail","_x67","_x68","_x69","_resendConfirmationEmail","_callee20","_context20","userProfile","statusesLoading","userCredentials","userProfileLoading","SET_STATUSES","SET_STATUSES_LOADING","SET_USER","SET_USER_PROFILE_LOADING","SET_USER_CREDENTIALS","FetchUserProfile","userResponse","FetchUserStatuses","_x57","_x58","_x59","_x60","_fetchUserStatuses","fetchUserStatuses","FetchUserCredentials","SetStatuses","UpdateUserCredentials","searchQuery","totalUsersCount","local","external","active","need_approval","deactivated","passwordResetToken","link","SET_USERS","SWAP_USERS","usersWithoutSwapped","u","updatedUsers","b","localeCompare","SET_COUNT","SET_PAGE_SIZE","SET_PASSWORD_RESET_TOKEN","SET_SEARCH_QUERY","SET_USERS_FILTERS","ActivateUsers","_userId","users_objectSpread","callApiFn","ApplyChanges","AddRight","_statusId","AddTag","ApproveUsersAccount","approval_pending","ClearUsersState","ClearFilters","ConfirmUsersEmail","confirmation_pending","CreateNewAccount","DeactivateUsers","DisableMfa","DeleteRight","_ref29","DeleteUsers","_ref30","_ref31","usersNicknames","FetchUsers","_ref32","_ref33","join","loadUsers","GetPasswordResetToken","_ref34","_callee21","_yield$getPasswordRes","_context21","RemovePasswordToken","_ref35","RemoveTag","_ref36","_ref37","_callee23","_context23","userTag","_ref38","_callee22","_context22","RequirePasswordReset","_ref39","_callee24","_context24","ResendConfirmationEmail","_ref40","_callee25","_context25","SearchUsers","_ref41","_ref42","_callee26","_context26","SuccessMessage","success","ToggleUsersFilter","_ref43","_callee27","currentFilters","_context27","UpdateActorType","_ref44","_ref45","_callee29","_context29","actor_type","_ref46","_callee28","_context28","_ref47","page_size","Vuex","Store","modules","SvgIcon","requireContext","requireAll","require","config","errorHandler","vm","info","nextTick","console","NProgress","configure","showSpinner","whiteList","pluralize","label","timeAgo","between","Number","numberFormatter","num","digits","si","toFixed","toThousandFilter","beforeEach","from","start","addRoutes","src_permission_objectSpread","dangerouslyUseHTMLString","permissionRoles","noGoBack","afterEach","Element","productionTip","render","js_cookie__WEBPACK_IMPORTED_MODULE_0__","js_cookie__WEBPACK_IMPORTED_MODULE_0___default","TokenKey","AuthHostKey","remove","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_TagsView_vue_vue_type_style_index_1_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_AppMain_vue_vue_type_style_index_0_id_f852c4f2_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Navbar_vue_vue_type_style_index_0_id_28de7ff2_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","getBooleanValue","getCurrentValue","_path","_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_4___default","firstSettingName","restKeys","firstSegment","secondSegment","_keys","element","rest","_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_1___default","tuple","tuples","accum","Array","isArray","mascot","_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_0___default","_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default","parseStringOrTupleValue","parseObject","object","_value$tuple","_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_3___default","socks5","port","_value$split","split","_value$split2","_value$tuple2","prependWithСolon","processNested","valueForState","valueForUpdatedSettings","parentKey","parents","_parents","_parents$","otherParents","updatedValueForState","valueExists","updatedValueForUpdatedSettings","_path2","_keys2","valueIsArrayOfNonObjects","every","currentState","_value","updatedArray","getValueWithoutKey","wrapValues","_settings$setting","mapValue","searchArray","compact","toLowerCase","resultObject","groupKey","groupLabel","search","updatedAcc","parseNestedSettings","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_17178ffc_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","VueI18n","messages","en","dashboard","documentation","guide","pagePermission","directivePermission","icons","componentIndex","markdown","jsonEditor","dndList","splitPane","avatarUpload","dropzone","sticky","countTo","componentMixin","backToTop","dragDialog","dragSelect","dragKanban","charts","keyboardChart","lineChart","mixChart","example","nested","menu1","menu1-1","menu1-2","menu1-2-1","menu1-2-2","menu1-3","menu2","Table","dynamicTable","dragTable","inlineEditTable","complexTable","treeTable","customTreeTable","form","createArticle","editArticle","articleList","errorPages","page401","page404","excel","exportExcel","selectExcel","uploadExcel","zip","pdf","exportZip","theme","clipboardDemo","externalLink","emoji-packs","navbar","logOut","github","login","logIn","logInViaPleromaFE","omitHostname","errorMessage","any","thirdparty","pleromaFELoginFailed","pleromaFELoginSucceed","evict","evictedMessage","evictObjectsHeader","listBannedUrlsHeader","multipleInput","removeSelected","switchRoles","tips","dropzoneTips","stickyTips","backToTopTips1","backToTopTips2","imageUploadTips","table","dynamicTips1","dynamicTips2","dragTips1","dragTips2","importance","remark","export","reviewer","author","readings","edit","publish","draft","cancel","confirm","unfollow","selectedExport","placeholder","change","refresh","close","closeOthers","closeAll","localUsersOnly","unapproved","unconfirmed","activate","deactivate","admin","moderator","moderation","revokeAdmin","grantAdmin","revokeModerator","grantModerator","activateAccount","activateAccounts","deactivateAccount","deactivateAccounts","deleteAccount","deleteAccounts","forceNsfw","stripMedia","forceUnlisted","sandbox","disableRemoteSubscription","disableRemoteSubscriptionForMultiple","disableAnySubscription","disableAnySubscriptionForMultiple","requirePasswordReset","selectUsers","moderateUser","moderateUsers","createAccount","grantRightConfirmation","revokeRightConfirmation","activateMultipleUsersConfirmation","deactivateMultipleUsersConfirmation","deleteUserConfirmation","rejectAccountConfirmation","deleteMultipleUsersConfirmation","addTagForMultipleUsersConfirmation","removeTagFromMultipleUsersConfirmation","requirePasswordResetConfirmation","approveAccountsConfirmation","rejectAccountsConfirmation","confirmAccountsConfirmation","resendEmailConfirmation","mailerMustBeEnabled","ok","completed","canceled","create","submitFormError","emptyEmailError","invalidEmailError","emptyPasswordError","emptyNicknameError","invalidNicknameError","passwordResetTokenCreated","accountCreated","approveAccount","approveAccounts","unapprovedAccount","unconfirmedEmail","confirmAccount","confirmAccounts","rejectAccount","rejectAccounts","resendConfirmation","invalidAccount","invalidNickname","passwordResetTokenGenerated","linkToResetPassword","registrationReason","service","person","instanceFilter","loadMore","noInstances","onlyLocalStatuses","showPrivateStatuses","direct","private","public","unlisted","openStatusInInstance","accountType","actorType","recentStatuses","reason","pending","noStatuses","openAccountInInstance","securitySettings","passwordChangeWarning1","passwordChangeWarning2","passwordLengthNotice","inputNewEmail","inputNewPassword","passwordUpdated","emailUpdated","submit","usersFilter","inputPlaceholder","byAccountType","byStatus","reply","showNotes","newNote","confirmMsg","deleteCompleted","deleteCanceled","noNotes","changeAllReports","changeScope","reopen","resolveAll","reopenAll","addSensitive","removeSensitive","reportOn","reportsOn","actors","reportedStatus","statusDeleted","leaveNote","postNote","notFound","reportsFilter","open","closed","resolved","upload","mailer","linkFormatter","logger","activityPub","auth","captcha","frontend","http","mrf","mediaProxy","gopher","jobQueue","webPush","esshd","rateLimiters","other","follow","followRelay","followedBack","instanceUrl","removeFromDB","successfullyDownloaded","successfullyImported","nowNewPacksToImport","successfullyUpdated","metadatLowerCase","successfullyRemoved","seeDocs","instanceReboot","restartSuccess","removeSettingConfirmation","changeImage","uploadImage","createInviteToken","pickDate","tokenCreated","inviteLink","uses","used","revoke","inviteUserViaEmail","sendRegistration","emailSent","inviteViaEmailAlert","emoji","reloaded","refreshed","importEmojiTooltip","importPacks","refreshLocalPacks","createLocalPack","remoteInstanceAddress","refreshRemote","sharePack","homepage","license","fallbackSrc","fallbackSrcSha","saveMetadata","downloadPack","downloadPackArchive","addNewEmoji","manageEmoji","thisWillDownload","downloadToCurrentInstance","canBeChanged","willBeUsable","downloadAsOptional","downloadSharedPack","downloadSharedPackMobile","optional","uploadFile","clickToUpload","customFilename","customFilenameDesc","localPack","leaveEmptyShortcode","leaveEmptyFilename","update","selectLocalPack","specifyShortcode","specifyFilename","copy","copyToLocalPack","emptyPack","elementEnLocale","zh","thirdpartyTips","elementZhLocale","es","elementEsLocale","oc","locale","_addNewEmojiFile","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","FormData","trim","addressOfEmojiInPack","_createPack","_deleteEmojiFile","_deletePack","_downloadFrom","timeout","_fetchPack","_importFromFS","_listPacks","_listRemotePacks","_reloadEmoji","_savePackMetadata","_updateEmojiFile","new_shortcode","new_filename","subMenuActiveText","menuHover","subMenuBg","subMenuHover","sideBarWidth","axios__WEBPACK_IMPORTED_MODULE_0__","axios__WEBPACK_IMPORTED_MODULE_0___default","element_ui__WEBPACK_IMPORTED_MODULE_1__","axios","interceptors","edata","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Item_vue_vue_type_style_index_0_id_52140d98_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","element_ui_SvgIconvue_type_script_lang_js_","iconClass","className","iconName","svgClass","_g","aria-hidden","$listeners","xlink:href"],"mappings":"iGAAAA,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,gBACAC,QAAA,mrDAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,cACAC,IAAA,oBACAC,QAAA,cACAC,QAAA,itCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,gBACAC,IAAA,sBACAC,QAAA,gBACAC,QAAA,uxCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTf,IAAAa,EAAAf,EAAA,QAAAA,EAAAK,EAAAU,GAA0a,uCCA1af,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,uBACAC,IAAA,6BACAC,QAAA,cACAC,QAAA,8yDAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,cACAC,IAAA,oBACAC,QAAA,cACAC,QAAA,+0BAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,0sBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,s9EAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,iBACAC,IAAA,uBACAC,QAAA,cACAC,QAAA,4zEAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,wECTfF,EAAAgB,EAAAd,EAAA,sBAAAe,IAAA,IAGaA,EAAW,WAAgC,IAA/BC,EAA+BC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAhB,YACtC,OAAID,EAAaI,MAAM,eACdJ,EALS,SAACA,GAAD,OAClBA,EAAaK,WAAW,eAAiBL,EAAaK,WAAW,cAMxDC,CAAYN,GAAZ,UAAAO,OAAsCP,GAAtC,WAAAO,OAAkEP,8DCP7ElB,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,gBACAC,IAAA,sBACAC,QAAA,cACAC,QAAA,wtEAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,cACAC,QAAA,8jDAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,qBACAC,IAAA,2BACAC,QAAA,cACAC,QAAA,8nCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,UACAC,IAAA,gBACAC,QAAA,cACAC,QAAA,inHAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,uTAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTf,IAAAwB,EAAA1B,EAAA,QAAAA,EAAAK,EAAAqB,GAAigB,qCCAjgB,IAAAC,EAAA3B,EAAA,QAAAA,EAAAK,EAAAsB,GAAogB,qCCApgB3B,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,eACAC,IAAA,qBACAC,QAAA,gBACAC,QAAA,oZAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,gBACAC,IAAA,sBACAC,QAAA,cACAC,QAAA,wwCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,oECTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,gBACAC,IAAA,sBACAC,QAAA,cACAC,QAAA,2oBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,eACAC,IAAA,qBACAC,QAAA,cACAC,QAAA,uvBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,wWAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,eACAC,IAAA,qBACAC,QAAA,cACAC,QAAA,4gBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,oECTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,ihCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,gBACAC,IAAA,sBACAC,QAAA,kBACAC,QAAA,m/EAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,eACAC,IAAA,qBACAC,QAAA,cACAC,QAAA,wrBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,+CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,+mBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTf,IAAA0B,EAAA5B,EAAA,QAAAA,EAAAK,EAAAuB,GAAgf,qCCAhf5B,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,aACAC,QAAA,u8BAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,yDCTf,IAAA2B,GACAC,YAAA,OACAC,YAAA,OACAC,cAAA,OACAC,kBAAA,OACAC,kBAAA,OACAC,kBAAA,OACAC,sBAAA,OACAC,aAAA,OACAC,aAAA,OACAC,cAAA,OACAC,gBAAA,OACAC,cAAA,OACAC,wBAAA,OACAC,iBAAA,OACAC,YAAA,OACAC,aAAA,OACAC,mBAAA,OACAC,gBAAA,OACAC,cAAA,OACAC,aAAA,OACAC,sBAAA,OACAC,iBAAA,OACAC,aAAA,OACAC,aAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,cAAA,OACAC,eAAA,OACAC,iBAAA,OACAC,YAAA,OACAC,eAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,eAAA,OACAC,iBAAA,OACAC,iBAAA,OACAC,aAAA,OACAC,aAAA,OACAC,YAAA,OACAC,cAAA,OACAC,cAAA,OACAC,aAAA,OACAC,aAAA,OACAC,eAAA,OACAC,YAAA,QAIA,SAAAC,EAAAC,GACA,IAAAlE,EAAAmE,EAAAD,GACA,OAAA5E,EAAAU,GAEA,SAAAmE,EAAAD,GACA,IAAA5E,EAAA8E,EAAAjD,EAAA+C,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAAlD,EAAA+C,GAEAD,EAAAO,KAAA,WACA,OAAAC,OAAAD,KAAArD,IAEA8C,EAAAS,QAAAP,EACAQ,EAAAC,QAAAX,EACAA,EAAAjE,GAAA,mEClEAV,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,iBACAC,IAAA,uBACAC,QAAA,cACAC,QAAA,4VAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,mWCT6KqF,wBCQ5LC,KAAA,oBCDAC,EAAgBN,OAAAO,EAAA,EAAAP,CACdI,ECRQ,WAAgB,IAAaI,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBE,OAAOtF,GAAA,SAAYoF,EAAA,wBDW7H,EACA,KACA,KACA,MAIAL,EAAAQ,QAAAC,OAAA,UACe,IAAAC,EAAAV,oGEfR,SAAeW,EAAtBC,EAAAC,GAAA,OAAAC,EAAAC,MAAAZ,KAAAzE,8CAAO,SAAAsF,EAA0BC,EAAUC,GAApC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,iCACHC,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BASA,SAAeiB,EAAtBC,EAAAC,GAAA,OAAAC,EAAArB,MAAAZ,KAAAzE,8CAAO,SAAA2G,EAA0BpB,EAAUC,GAApC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,6BACHC,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BASP,IAAMR,EAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCwDrDC,GA1EbC,OACEC,SACEC,QAAQC,IAAQC,IAAI,qBAAsBD,IAAQC,IAAI,iBACtDC,kBAAkB,GAEpBC,OAAQ,UACRC,SAAUJ,IAAQC,IAAI,aAAe,KACrCnC,YAAY,EACZuC,KAAML,IAAQC,IAAI,SAAW,SAC7BK,gBAAgB,GAElBC,WACEC,eAAgB,SAAAX,GACdA,EAAMC,QAAQC,QAAUF,EAAMC,QAAQC,OACtCF,EAAMC,QAAQI,kBAAmB,EAC7BL,EAAMC,QAAQC,OAChBC,IAAQS,IAAI,gBAAiB,GAE7BT,IAAQS,IAAI,gBAAiB,IAGjCC,cAAe,SAACb,EAAOK,GACrBF,IAAQS,IAAI,gBAAiB,GAC7BZ,EAAMC,QAAQC,QAAS,EACvBF,EAAMC,QAAQI,iBAAmBA,GAEnCS,cAAe,SAACd,EAAOM,GACrBN,EAAMM,OAASA,GAEjBS,oBAAqB,SAACf,EAAOS,GAC3BT,EAAMS,eAAiBA,GAEzBO,aAAc,SAAChB,EAAOO,GACpBP,EAAMO,SAAWA,EACjBJ,IAAQS,IAAI,WAAYL,IAE1BU,cAAe,SAACjB,EAAO/B,GACrB+B,EAAM/B,WAAaA,GAErBiD,SAAU,SAAClB,EAAOQ,GAChBR,EAAMQ,KAAOA,EACbL,IAAQS,IAAI,OAAQJ,KAGxBW,SACEC,aADO,SAAAC,EAAAC,IAELC,EAD6CF,EAAhCE,QACN,gBADsCD,EAApBjB,mBAGrBmB,WAJC,SAAAC,GAI+B,OAAAC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAC,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAnB0C,EAAmBE,EAAnBF,OAAQK,EAAWH,EAAXG,QAAWjD,EAAAE,KAAA,EACbZ,EAAW2D,EAAQrD,SAAUqD,EAAQpD,OADxB,OAC9BqD,EAD8BlD,EAAAU,KAEpCkC,EAAO,gBAAiBM,EAASC,KAAT,aAFY,wBAAAnD,EAAAW,SAAAhB,KAAAoD,IAIhCK,mBARC,SAAAC,GAQuC,OAAAN,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAK,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAnB0C,EAAmBS,EAAnBT,OAAQK,EAAWI,EAAXJ,QAAWhC,EAAAf,KAAA,EACtCU,EAAWqC,EAAQrD,SAAUqD,EAAQpD,OADC,OAE5C+C,EAAO,iBAAiB,GAFoB,wBAAA3B,EAAAN,SAAAK,KAAA+B,IAI9CO,kBAZO,SAAAC,EAYuBzB,IAC5Bc,EAD4CW,EAA1BX,QACX,sBAAuBd,IAEhC0B,YAfO,SAAAC,EAeiB7B,IACtBgB,EADgCa,EAApBb,QACL,eAAgBhB,IAEzB8B,QAlBO,SAAAC,EAkBa9B,IAClBe,EADwBe,EAAhBf,QACD,WAAYf,IAErB+B,aArBO,SAAAC,EAqBkBlC,IACvBiB,EAD+BiB,EAAlBjB,QACN,gBAAiBjB,IAE1BmC,cAxBO,SAAAC,IAyBLnB,EADwBmB,EAAVnB,QACP,k/BCtDb,IA+MeoB,GA9Mb3C,OACE4C,UAAW,GACXC,iBAAkB,EAClBC,YAAa,EACbC,cAAe,GACfC,oBAAqB,EACrBC,cACAC,gBAAiB,EACjBC,SAAU,GACVC,eAAgB,GAChBC,gBAEF3C,WACE4C,eAAgB,SAACtD,EAAOuD,GACtBvD,EAAM4C,UAAYW,GAEpBC,gBAAiB,SAACxD,EAAOyD,GACvBzD,EAAMgD,oBAAsBS,GAE9BC,eAAgB,SAAC1D,EAAO2D,GACtB3D,EAAM6C,iBAAmBc,GAE3BC,gBAAiB,SAAC5D,EAAO6D,GACvB7D,EAAMiD,WAAaY,GAErBC,sBAAuB,SAAC9D,EAAOyD,GAC7BzD,EAAMkD,gBAAkBO,GAE1BM,eAAgB,SAAC/D,EAADqB,GAA4B,IAAlBhE,EAAkBgE,EAAlBhE,KAAM2G,EAAY3C,EAAZ2C,MAC9BhE,EAAMiD,WAANgB,OAAwBjE,EAAMiD,eAA9BiB,OAA2C7G,EAA3C4G,OAAuDjE,EAAMiD,WAAW5F,QAAO2G,aAEjFG,SAAU,SAACnE,EAAO2D,GAChB3D,EAAM8C,YAAca,GAEtBS,oBAAqB,SAACpE,EAAO3C,GAC3B2C,EAAMoD,eAAiB/F,GAEzBgH,iBAAkB,SAACrE,EAAO6D,GACxB7D,EAAMqD,YAAcQ,GAEtBS,sBAAuB,SAACtE,EAADsB,GAAiC,IAAvBjE,EAAuBiE,EAAvBjE,KAAMkH,EAAiBjD,EAAjBiD,IAAKC,EAAYlD,EAAZkD,MAC1CC,UAAI7D,IAAIZ,EAAMiD,WAAW5F,GAAjB,KAAgCkH,EAAKC,IAE/CE,uBAAwB,SAAC1E,EAADyB,GAA2B,IAAjBpE,EAAiBoE,EAAjBpE,KAAMsH,EAAWlD,EAAXkD,KACtC3E,EAAMiD,WAAW5F,GAAjB,KAAiCsH,GAEnCC,wBAAyB,SAAC5E,EAADgC,GAA4B,IAAlB3E,EAAkB2E,EAAlB3E,KAAM2G,EAAYhC,EAAZgC,MAEvCS,UAAI7D,IACFZ,EAAMiD,WAAW5F,GACjB,QACA2G,KAIN7C,SACQ0D,gBADC,SAAA3C,EAAAE,GAC6E,OAAAV,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAkD,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,OAAAzG,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAA5D0C,EAA4DW,EAA5DX,OAAQK,EAAoDM,EAApDN,QAAakD,EAAuC1C,EAAvC0C,SAAUC,EAA6B3C,EAA7B2C,KAAMC,EAAuB5C,EAAvB4C,UAAWC,EAAY7C,EAAZ6C,SAAYtG,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAGjEsG,YAAgBL,EAAUC,EAAMC,EAAWC,EAAUrD,EAAQrD,SAAUqD,EAAQpD,OAHd,OAGhF0G,EAHgFvG,EAAAU,KAAAV,EAAAE,KAAA,uBAAAF,EAAAC,KAAA,EAAAD,EAAAyG,GAAAzG,EAAA,SAAAA,EAAAS,OAAA,kBAOlFiG,mBACEC,QAAO,GAAAhM,OAAKiM,IAAKC,EAAE,gCAAZ,KAAAlM,OAA+CwL,EAA/C,KAAAxL,OAA2DiM,IAAKC,EAAE,8BACzEC,KAAM,UACNC,SAAU,MAGZnE,EAAO,2BAA6BlE,KAAMyH,EAAUd,MAAOkB,EAAOpD,OAbgB,yBAAAnD,EAAAW,SAAAhB,EAAA,gBAAAoD,IAe9EiE,gBAhBC,SAAArD,EAAAE,GAgB8E,OAAAd,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAqE,EAAAhE,EAAA5B,EAAA8E,EAAAE,EAAAa,EAAAC,EAAA,OAAArH,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAA7D0C,EAA6De,EAA7Df,OAAQqE,EAAqDtD,EAArDsD,SAAUhE,EAA2CU,EAA3CV,QAAS5B,EAAkCsC,EAAlCtC,MAAW8E,EAAuBtC,EAAvBsC,SAAUE,EAAaxC,EAAbwC,UAAaa,EAC/B7F,EAAMiD,WAAW6B,GAAUd,MADI6B,EAC1Eb,GAAsBc,EADoDC,IAAAF,GAC1Eb,GAD0EtL,IAAAsM,IAEnFzE,EAAO,2BAA6BlE,KAAMyH,EAAUd,MAAO8B,IAFwBlG,EAAAhB,KAAA,EAAAgB,EAAAf,KAAA,EAK3EoH,YAAgBnB,EAAUE,EAAWpD,EAAQrD,SAAUqD,EAAQpD,OALY,OAAAoB,EAAAf,KAAA,uBAAAe,EAAAhB,KAAA,EAAAgB,EAAAwF,GAAAxF,EAAA,SAAAA,EAAAR,OAAA,kBASnFiG,mBACEC,QAAO,GAAAhM,OAAKiM,IAAKC,EAAE,gCAAZ,KAAAlM,OAA+CwL,EAA/C,KAAAxL,OAA2DiM,IAAKC,EAAE,8BACzEC,KAAM,UACNC,SAAU,MAEiC,IAAzC1I,OAAOD,KAAK+I,GAAkB7M,QAAgB+G,EAAM6C,iBAAmB,EACzE+C,EAAS,mBAAqBvI,KAAMyH,EAAUnB,KAAM3D,EAAM6C,iBAAmB,IAE7E+C,EAAS,mBAAqBvI,KAAMyH,EAAUnB,KAAM3D,EAAM6C,mBAjBuB,yBAAAjD,EAAAN,SAAAK,EAAA,gBAAA+B,IAoB/EwE,WApCC,SAAAxD,EAAAyD,GAoCiC,OAAAzE,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAAxE,EAAAvE,EAAA,OAAAoB,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAArB+C,EAAqBc,EAArBd,QAAavE,EAAQ8I,EAAR9I,KAAQgJ,EAAAxH,KAAA,EAChCyH,YAAW1E,EAAQrD,SAAUqD,EAAQpD,MAAOnB,GADZ,wBAAAgJ,EAAA/G,SAAA8G,KAAA1E,IAGlC6E,WAvCC,SAAAC,EAAAC,GAuCiC,OAAA/E,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA+E,IAAA,IAAA9E,EAAAvE,EAAA,OAAAoB,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAArB+C,EAAqB4E,EAArB5E,QAAavE,EAAQoJ,EAARpJ,KAAQsJ,EAAA9H,KAAA,EAChC+H,YAAWhF,EAAQrD,SAAUqD,EAAQpD,MAAOnB,GADZ,wBAAAsJ,EAAArH,SAAAoH,KAAAhF,IAGlCmF,aA1CC,SAAAC,EAAAC,GA0C4D,OAAArF,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAqF,IAAA,IAAApF,EAAAqF,EAAAnC,EAAAoC,EAAA,OAAAzI,EAAAnG,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,cAA9C+C,EAA8CkF,EAA9ClF,QAAaqF,EAAiCF,EAAjCE,gBAAiBnC,EAAgBiC,EAAhBjC,SAAUoC,EAAMH,EAANG,GAAMC,EAAAtI,KAAA,EAC5CuI,YAAaH,EAAiBnC,EAAUoC,EAAItF,EAAQrD,SAAUqD,EAAQpD,OAD1B,OAG7C,OAH6C2I,EAAA9H,KAGtDyC,MACTuD,mBACEC,QAAO,GAAAhM,OAAKiM,IAAKC,EAAE,mCAAZ,KAAAlM,OAAkDwL,GACzDW,KAAM,UACNC,SAAU,MAPmD,wBAAAyB,EAAA7H,SAAA0H,KAAAtF,IAW7D2F,qBArDC,SAAAC,EAqDgD3D,GAAM,OAAAjC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA4F,IAAA,IAAAhG,EAAAK,EAAA5B,EAAAwH,EAAA1F,EAAA+B,EAAAJ,EAAAgE,EAAA,OAAAhJ,EAAAnG,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,cAAhC0C,EAAgC+F,EAAhC/F,OAAQK,EAAwB0F,EAAxB1F,QAAS5B,EAAesH,EAAftH,MAAe0H,EAAA7I,KAAA,EACpC8I,YAAUhE,EAAM3D,EAAMmD,SAAUvB,EAAQrD,SAAUqD,EAAQpD,OADtB,OAAAgJ,EAAAE,EAAArI,KACnDyC,EADmD0F,EACnD1F,KACA+B,EAAiB/B,EAAjB+B,MAAOJ,EAAU3B,EAAV2B,MACTgE,EAAezK,OAAOD,KAAK8G,GAAO+D,OAAO,SAACC,EAAK/C,GAAa,IAAAgD,EACrCjE,EAAMiB,GAAfH,GAD8CmD,EACxD9D,MADwD+B,IAAA+B,GAAA,WAGhE,OADAD,EAAI/C,GAAYH,EACTkD,OAETtG,EAAO,kBAAmBkG,GAC1BlG,EAAO,wBAAyBkC,GAChClC,EAAO,WAAYoC,GAVwC,yBAAA+D,EAAApI,SAAAiI,KAAA7F,IAYvDqG,gBAjEC,SAAAC,EAAAC,GAiE2D,OAAAvG,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAuG,IAAA,IAAAtG,EAAAL,EAAAvB,EAAA3C,EAAAsG,EAAAwE,EAAArG,EAAAkC,EAAAoE,EAAA,OAAA3J,EAAAnG,EAAAoG,KAAA,SAAA2J,GAAA,cAAAA,EAAAzJ,KAAAyJ,EAAAxJ,MAAA,cAA1C+C,EAA0CoG,EAA1CpG,QAASL,EAAiCyG,EAAjCzG,OAAQvB,EAAyBgI,EAAzBhI,MAAW3C,EAAc4K,EAAd5K,KAAMsG,EAAQsE,EAARtE,KAAQ0E,EAAAxJ,KAAA,EACzCyJ,YAAUjL,EAAMsG,EAAM3D,EAAM+C,cAAenB,EAAQrD,SAAUqD,EAAQpD,OAD5B,OAAA2J,EAAAE,EAAAhJ,KACxDyC,EADwDqG,EACxDrG,KACAkC,EAAuBlC,EAAvBkC,MAAOoE,EAAgBtG,EAAhBsG,YACf7G,EAAO,kBAAoBlE,OAAM2G,UACjCzC,EAAO,kBAAmB6G,GAC1B7G,EAAO,iBAAkBoC,GALuC,yBAAA0E,EAAA/I,SAAA4I,KAAAxG,IAO5D6G,aAxEC,SAAAC,GAwEyB,OAAA9G,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA8G,IAAA,IAAA7G,EAAAsD,EAAAI,EAAA,OAAA7G,EAAAnG,EAAAoG,KAAA,SAAAgK,GAAA,cAAAA,EAAA9J,KAAA8J,EAAA7J,MAAA,cAAX+C,EAAW4G,EAAX5G,QAAW8G,EAAA7J,KAAA,EACT8J,YAAa/G,EAAQrD,SAAUqD,EAAQpD,OAD9B,OAGR,OAFhB0G,EADwBwD,EAAArJ,MAGnBuJ,SACHtD,EAAUJ,EAAOpD,KAAK7I,OAAS,EAArB,GAAAK,OACTiM,IAAKC,EAAE,iCADE,KAAAlM,OACkC4L,EAAOpD,MACrDyD,IAAKC,EAAE,gCAEXH,mBACEC,UACAG,KAAM,UACNC,SAAU,OAXgB,wBAAAgD,EAAApJ,SAAAmJ,KAAA/G,IAe1BmH,YAvFC,SAAAC,GAuFwB,OAAApH,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAoH,IAAA,IAAAnH,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAAsK,GAAA,cAAAA,EAAApK,KAAAoK,EAAAnK,MAAA,cAAX+C,EAAWkH,EAAXlH,QAAWoH,EAAAnK,KAAA,EACvBoK,YAAYrH,EAAQrD,SAAUqD,EAAQpD,OADf,wBAAAwK,EAAA1J,SAAAyJ,KAAArH,IAGzBwH,iBA1FC,SAAAC,EAAAC,GA0F0D,OAAA1H,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA0H,IAAA,IAAA9H,EAAAK,EAAA5B,EAAA8E,EAAAI,EAAA,OAAAzG,EAAAnG,EAAAoG,KAAA,SAAA4K,GAAA,cAAAA,EAAA1K,KAAA0K,EAAAzK,MAAA,cAAxC0C,EAAwC4H,EAAxC5H,OAAQK,EAAgCuH,EAAhCvH,QAAS5B,EAAuBmJ,EAAvBnJ,MAAW8E,EAAYsE,EAAZtE,SAAYwE,EAAAzK,KAAA,EAEvD0K,YACJ3H,EAAQrD,SACRqD,EAAQpD,MACRsG,EACA9E,EAAMiD,WAAW6B,GAAjB,MAN2D,OASzC,OARhBI,EADyDoE,EAAAjK,MASpDuJ,SACTvD,mBACEC,QAAO,GAAAhM,OAAKiM,IAAKC,EAAE,gCAAZ,KAAAlM,OAA+CwL,EAA/C,KAAAxL,OAA2DiM,IAAKC,EAAE,8BACzEC,KAAM,UACNC,SAAU,MAGZnE,EAAO,0BAA4BlE,KAAMyH,EAAUH,KAAMO,EAAOpD,QAhBH,wBAAAwH,EAAAhK,SAAA+J,KAAA3H,IAmBjE8H,aA7GO,SAAAC,EA6GkB7G,IACvBrB,EADkCkI,EAArBlI,QACN,iBAAkBqB,IAErB8G,oBAhHC,SAAAC,EAAAC,GAgH4D,OAAAlI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAkI,IAAA,IAAAtI,EAAAK,EAAAwB,EAAA0G,EAAAhI,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAqL,GAAA,cAAAA,EAAAnL,KAAAmL,EAAAlL,MAAA,cAAvC0C,EAAuCoI,EAAvCpI,OAAQK,EAA+B+H,EAA/B/H,QAAawB,EAAkBwG,EAAlBxG,eAAkB2G,EAAAlL,KAAA,EAC1CmL,YAAgBpI,EAAQrD,SAAUqD,EAAQpD,MAAO4E,GADP,OAAA0G,EAAAC,EAAA1K,KACzDyC,EADyDgI,EACzDhI,KAERP,EAAO,sBAAuB6B,GAC9B7B,EAAO,mBAAoBO,EAAK+B,OAJiC,wBAAAkG,EAAAzK,SAAAuK,KAAAnI,IAMnEuI,kBAtHO,SAAAC,EAsHuBC,IAC5B5I,EADsC2I,EAApB3I,QACX,sBAAuB4I,IAE1BC,gBAzHC,SAAAC,EAAAC,GAyHgH,OAAA5I,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA4I,IAAA,IAAAhJ,EAAAqE,EAAAhE,EAAA5B,EAAA8E,EAAAE,EAAAwF,EAAAC,EAAAC,EAAA5E,EAAA,OAAArH,EAAAnG,EAAAoG,KAAA,SAAAiM,GAAA,cAAAA,EAAA/L,KAAA+L,EAAA9L,MAAA,cAA/F0C,EAA+F8I,EAA/F9I,OAAQqE,EAAuFyE,EAAvFzE,SAAUhE,EAA6EyI,EAA7EzI,QAAS5B,EAAoEqK,EAApErK,MAAW8E,EAAyDwF,EAAzDxF,SAAUE,EAA+CsF,EAA/CtF,UAAWwF,EAAoCF,EAApCE,aAAcC,EAAsBH,EAAtBG,YAAaC,EAASJ,EAATI,MACtG5E,EAAmB9I,OAAOD,KAAKiD,EAAMiD,WAAW6B,GAAUd,OAAO4D,OAAO,SAACC,EAAK+C,GAMlF,OALIA,IAAO5F,EACT6C,EAAI2C,GAAgBC,EAEpB5C,EAAI+C,GAAM5K,EAAMiD,WAAW6B,GAAUd,MAAM4G,GAEtC/C,OAETtG,EAAO,2BAA6BlE,KAAMyH,EAAUd,MAAO8B,IAT0D6E,EAAA/L,KAAA,EAAA+L,EAAA9L,KAAA,EAY7GgM,YAAgB/F,EAAUE,EAAWwF,EAAcC,EAAaC,EAAO9I,EAAQrD,SAAUqD,EAAQpD,OAZY,OAAAmM,EAAA9L,KAAA,uBAAA8L,EAAA/L,KAAA,EAAA+L,EAAAvF,GAAAuF,EAAA,SAAAA,EAAAvL,OAAA,kBAgBrHiG,mBACEC,QAAO,GAAAhM,OAAKiM,IAAKC,EAAE,gCAAZ,KAAAlM,OAA+CwL,EAA/C,KAAAxL,OAA2DiM,IAAKC,EAAE,8BACzEC,KAAM,UACNC,SAAU,MAGZE,EAAS,mBAAqBvI,KAAMyH,EAAUnB,KAAM3D,EAAM6C,mBAtB2D,yBAAA8H,EAAArL,SAAAiL,EAAA,gBAAA7I,IAwBjHoJ,mBAjJC,SAAAC,EAiJ8BC,GAAM,OAAAtJ,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAsJ,IAAA,OAAAxM,EAAAnG,EAAAoG,KAAA,SAAAwM,GAAA,cAAAA,EAAAtM,KAAAsM,EAAArM,MAAA,QAAhB0C,EAAgBwJ,EAAhBxJ,QAClB,wBAAyByJ,GADS,wBAAAE,EAAA5L,SAAA2L,KAAAvJ,MC5MhCyJ,GAfbnL,OACEoL,SAEF1K,WACE2K,cAAe,SAACrL,EAAOsL,GACrBtL,EAAMoL,KAAKG,KAAKD,KAGpBnK,SACEqK,YADO,SAAAnK,EACiBiK,IACtB/J,EAD2BF,EAAfE,QACL,gBAAiB+J,MCUf1J,GApBb3B,QAAS,SAAAD,GAAK,OAAIA,EAAMD,IAAIE,SAC5BM,SAAU,SAAAP,GAAK,OAAIA,EAAMD,IAAIQ,UAC7BC,KAAM,SAAAR,GAAK,OAAIA,EAAMD,IAAIS,MACzBF,OAAQ,SAAAN,GAAK,OAAIA,EAAMD,IAAIO,QAC3BmL,aAAc,SAAAzL,GAAK,OAAIA,EAAM0L,SAASD,cACtCE,YAAa,SAAA3L,GAAK,OAAIA,EAAM0L,SAASC,aACrCnN,MAAO,SAAAwB,GAAK,OAAIA,EAAM4L,KAAKpN,OAC3BqN,OAAQ,SAAA7L,GAAK,OAAIA,EAAM4L,KAAKC,QAC5BxO,KAAM,SAAA2C,GAAK,OAAIA,EAAM4L,KAAKvO,MAC1ByO,aAAc,SAAA9L,GAAK,OAAIA,EAAM4L,KAAKE,cAClClD,OAAQ,SAAA5I,GAAK,OAAIA,EAAM4L,KAAKhD,QAC5BmD,MAAO,SAAA/L,GAAK,OAAIA,EAAM4L,KAAKG,OAC3BC,QAAS,SAAAhM,GAAK,OAAIA,EAAM4L,KAAKI,SAC7BC,mBAAoB,SAAAjM,GAAK,OAAIA,EAAMkM,WAAWC,SAC9CC,WAAY,SAAApM,GAAK,OAAIA,EAAMkM,WAAWE,YACtCC,UAAW,SAAArM,GAAK,OAAIA,EAAMmL,SAASC,MACnCkB,MAAO,SAAAtM,GAAK,OAAIA,EAAMsM,MAAMC,cAC5BhO,SAAU,SAAAyB,GAAK,OAAIA,EAAM4L,KAAKrN,UAC9BiO,SAAU,SAAAxM,GAAK,OAAIA,EAAMwM,WCfpB,SAAeC,EAAtBvO,EAAAC,EAAAqB,EAAAC,GAAA,OAAAiN,EAAArO,MAAAZ,KAAAzE,8CAAO,SAAAsF,EAAmCqO,EAASC,EAAYrO,EAAUC,GAAlE,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,wCACHC,OAAQ,OACRC,QAASC,EAAYX,GACrBsD,KAAM8K,GAAcA,EAAW3T,OAAS,GAAM0T,UAASC,eAAiBD,aANrE,cAAAhO,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAUA,SAAeuO,EAAtBC,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,EAAA7O,MAAAZ,KAAAzE,8CAAO,SAAA2G,EAA8BwN,EAAO9P,EAAMkB,EAAUC,GAArD,IAAAsD,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cACCiD,EAAOzE,EAAKpE,OAAS,GAAMkU,QAAO9P,SAAW8P,SAD9CvN,EAAAf,KAAA,EAEQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,wCACLC,OAAQ,OACRC,QAASC,EAAYX,GACrBsD,SAPG,cAAAlC,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BAWA,SAAeyN,EAAtBC,EAAAC,GAAA,OAAAC,EAAAlP,MAAAZ,KAAAzE,8CAAO,SAAAoN,EAAgC7H,EAAUC,GAA1C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,mCACHC,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAA6H,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BASA,SAAeoH,EAAtBC,EAAAC,EAAAC,GAAA,OAAAC,EAAAvP,MAAAZ,KAAAzE,8CAAO,SAAA0N,EAA2BmH,EAAetP,EAAUC,GAApD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,yCACHC,OAAQ,OACRC,QAASC,EAAYX,GACrBsD,MAAQtD,MAAOqP,KANZ,cAAAlH,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BAUP,IAAMvH,EAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCmBrDgO,GA1Db9N,OACE+N,gBACAC,SAAS,EACTC,aAEFvN,WACEwN,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBuF,cAAe,SAACnO,EAAOxB,GACrBwB,EAAMiO,SAAWzP,GAEnB4P,WAAY,SAACpO,EAAOqO,GAClBrO,EAAM+N,aAAeM,IAGzBlN,SACQmN,kBADC,SAAAjN,GACsC,OAAAK,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAC,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAnB0C,EAAmBF,EAAnBE,OAAQK,EAAWP,EAAXO,QAChCL,EAAO,eAAe,GADqB5C,EAAAE,KAAA,EAEpBuO,EAAiBxL,EAAQrD,SAAUqD,EAAQpD,OAFvB,OAErCqD,EAFqClD,EAAAU,KAG3CkC,EAAO,aAAcM,EAASC,KAAKgM,QAAQS,WAC3ChN,EAAO,eAAe,GAJqB,wBAAA5C,EAAAW,SAAAhB,KAAAoD,IAMvC8M,oBAPC,SAAAlN,EAAAG,GAOyE,OAAAC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAqE,EAAAhE,EAAA6M,EAAAC,EAAAC,EAAA7M,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAApD0C,EAAoDD,EAApDC,OAAQqE,EAA4CtE,EAA5CsE,SAAUhE,EAAkCN,EAAlCM,QAAa6M,EAAqBhN,EAArBgN,OAAQC,EAAajN,EAAbiN,UAAa9O,EAAAhB,KAAA,EAAAgB,EAAAf,KAAA,EAErD4N,EAAoBgC,EAAQC,EAAW9M,EAAQrD,SAAUqD,EAAQpD,OAFZ,OAAAmQ,EAAA/O,EAAAP,KAEpEyC,EAFoE6M,EAEpE7M,KACRP,EAAO,iBAAmB/C,MAAOsD,EAAKtD,MAAOiQ,OAAQ3M,EAAK6K,QAAS+B,UAAW5M,EAAK8K,aAHPhN,EAAAf,KAAA,wBAAAe,EAAAhB,KAAA,GAAAgB,EAAAwF,GAAAxF,EAAA,SAAAA,EAAAR,OAAA,kBAO9EwG,EAAS,qBAPqE,yBAAAhG,EAAAN,SAAAK,EAAA,iBAAA+B,IAS1EkN,mBAhBC,SAAA5M,EAAAE,GAgBkE,OAAAR,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAAxE,EAAAuL,EAAA9P,EAAA,OAAAoB,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAmD,EAA9CT,OAA8CS,EAAtC4D,SAAUhE,EAA4BI,EAA5BJ,QAAauL,EAAejL,EAAfiL,MAAO9P,EAAQ6E,EAAR7E,KAAQgJ,EAAAzH,KAAA,EAAAyH,EAAAxH,KAAA,EAE/DgO,EAAeM,EAAO9P,EAAMuE,EAAQrD,SAAUqD,EAAQpD,OAFS,OAAA6H,EAAAxH,KAAA,uBAAAwH,EAAAzH,KAAA,EAAAyH,EAAAjB,GAAAiB,EAAA,SAAAA,EAAAjH,OAAA,kBAMvEiG,mBACEC,QAASC,IAAKC,EAAE,qBAChBC,KAAM,UACNC,SAAU,MAT2D,yBAAAW,EAAA/G,SAAA8G,EAAA,gBAAA1E,IAYzEmN,eA5BO,SAAAzM,IA6BLb,EADyBa,EAAVb,QACR,qBAEHuN,YA/BC,SAAAxM,EA+B0C9D,GAAO,OAAAkD,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA+E,IAAA,IAAAd,EAAAhE,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAAyD,EAApCf,OAAQqE,EAA4BtD,EAA5BsD,SAAUhE,EAAkBU,EAAlBV,QAAkB+E,EAAA/H,KAAA,EAAA+H,EAAA9H,KAAA,EAE9C2O,EAAYhP,EAAOoD,EAAQrD,SAAUqD,EAAQpD,OAFC,OAAAmI,EAAA9H,KAAA,sBAAA8H,EAAA/H,KAAA,EAAA+H,EAAAvB,GAAAuB,EAAA,SAAAA,EAAAvH,OAAA,iBAMtDwG,EAAS,qBAN6C,yBAAAe,EAAArH,SAAAoH,EAAA,gBAAAhF,MChDrD,SAAeqN,EAAtB7Q,EAAAC,EAAAqB,EAAAC,GAAA,OAAAuP,EAAA3Q,MAAAZ,KAAAzE,8CAAO,SAAAsF,EAA8BqF,EAAMR,EAAU5E,EAAUC,GAAxD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,8CAAA1F,OAAgDqK,EAAhD,eAAArK,OAAkE6J,GACrElE,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BASA,SAAe2Q,EAAtBnC,EAAAC,EAAAC,EAAAC,GAAA,OAAAiC,GAAA7Q,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAAyBwP,EAAMC,EAAK7Q,EAAUC,GAA9C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,8CACHC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQqN,OAAMC,SANX,cAAAxP,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BAUA,SAAe0P,GAAtBhC,EAAAC,EAAAG,GAAA,OAAA6B,GAAAjR,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAAgC+I,EAAM5Q,EAAUC,GAAhD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,+CACHC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQqN,UANL,cAAA9I,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BAUA,SAAemJ,GAAtB7B,EAAAC,EAAA6B,EAAAC,EAAAC,GAAA,OAAAC,GAAAtR,MAAAZ,KAAAzE,gDAAO,SAAA0N,EAAgCkJ,EAAOjM,EAAMR,EAAU5E,EAAUC,GAAjE,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,+CAAA1F,OAAiDsW,EAAjD,UAAAtW,OAA+DqK,EAA/D,eAAArK,OAAiF6J,GACpFlE,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAmI,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BASP,IAAMvH,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBC0BrD+P,IA/Db7P,OACE8P,cACAhN,YAAa,EACbkL,SAAS,EACT7K,SAAU,GACV4M,eAAgB,GAElBrP,WACEsP,gBAAiB,SAAChQ,EAAOmP,GACvBnP,EAAM8P,WAAaX,EAAKzV,IAAI,SAAAkR,GAAQ,OAAS5L,IAAK4L,MAEpDqF,qBAAsB,SAACjQ,EAAOyD,GAC5BzD,EAAM+P,eAAiBtM,GAEzByK,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBzE,SAAU,SAACnE,EAAO2D,GAChB3D,EAAM8C,YAAca,IAGxBxC,SACQ+O,eADC,SAAA7O,EAAAC,GACoD,OAAAI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAA5B,EAAA2D,EAAA9B,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAApC0C,EAAoCF,EAApCE,OAAQK,EAA4BP,EAA5BO,QAAS5B,EAAmBqB,EAAnBrB,MAAW2D,EAAQrC,EAARqC,KACjDpC,EAAO,eAAe,GADmC5C,EAAAE,KAAA,EAElCkQ,EAAepL,EAAM3D,EAAMmD,SAAUvB,EAAQrD,SAAUqD,EAAQpD,OAF7B,OAEnDqD,EAFmDlD,EAAAU,KAGzDkC,EAAO,kBAAmBM,EAASC,KAAKqN,MACxC5N,EAAO,uBAAwBM,EAASC,KAAK2B,OAC7ClC,EAAO,WAAYoC,GACnBpC,EAAO,eAAe,GANmC,yBAAA5C,EAAAW,SAAAhB,KAAAoD,IAQrDyO,UATC,SAAA1O,EAAAO,GASsD,OAAAN,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAAiG,EAAAhE,EAAA5B,EAAAmP,EAAAC,EAAA,OAAA3Q,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAA3C+G,EAA2CnE,EAA3CmE,SAAUhE,EAAiCH,EAAjCG,QAAS5B,EAAwByB,EAAxBzB,MAAWmP,EAAanN,EAAbmN,KAAMC,EAAOpN,EAAPoN,IAAOxP,EAAAf,KAAA,EACrDoQ,EAAUE,EAAMC,EAAKxN,EAAQrD,SAAUqD,EAAQpD,OADM,OAE3D6G,mBACEC,QAASC,IAAKC,EAAE,kCAChBC,KAAM,UACNC,SAAU,MAER0J,GACFxJ,EAAS,kBAAoBjC,KAAM3D,EAAM8C,cARgB,wBAAAlD,EAAAN,SAAAK,KAAA+B,IAWvD0O,iBApBC,SAAAlO,EAoB8CiN,GAAM,OAAAzN,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAAR,EAAAhE,EAAA5B,EAAA,OAAAvB,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAlC+G,EAAkC1D,EAAlC0D,SAAUhE,EAAwBM,EAAxBN,QAAS5B,EAAekC,EAAflC,MAAeqG,EAAAxH,KAAA,EACnDwQ,GAAiBF,EAAMvN,EAAQrD,SAAUqD,EAAQpD,OADE,OAEzDoH,EAAS,kBAAoBjC,KAAM3D,EAAM8C,cAFgB,wBAAAuD,EAAA/G,SAAA8G,KAAA1E,IAIrD2O,WAxBC,SAAAjO,EAAAE,GAwBiE,OAAAZ,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA+E,IAAA,IAAAnF,EAAAqE,EAAAhE,EAAA5B,EAAA4P,EAAAjM,EAAA9B,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,UAArD0C,EAAqDa,EAArDb,OAAQqE,EAA6CxD,EAA7CwD,SAAUhE,EAAmCQ,EAAnCR,QAAS5B,EAA0BoC,EAA1BpC,MAAW4P,EAAetN,EAAfsN,MAAOjM,EAAQrB,EAARqB,KACzC,IAAjBiM,EAAM3W,OAD4D,CAAA0N,EAAA9H,KAAA,QAEpE0C,EAAO,mBAAoBqO,GAC3BhK,EAAS,kBAAoBjC,SAHuCgD,EAAA9H,KAAA,uBAKpE0C,EAAO,eAAe,GACtBA,EAAO,mBAAoBqO,GANyCjJ,EAAA9H,KAAA,GAQ7C0Q,GAAiBK,EAAOjM,EAAM3D,EAAMmD,SAAUvB,EAAQrD,SAAUqD,EAAQpD,OAR3B,QAQ9DqD,EAR8D8E,EAAAtH,KASpEkC,EAAO,kBAAmBM,EAASC,KAAKqN,MACxC5N,EAAO,uBAAwBM,EAASC,KAAK2B,OAC7ClC,EAAO,WAAYoC,GACnBpC,EAAO,eAAe,GAZ8C,yBAAAoF,EAAArH,SAAAoH,KAAAhF,6lBC5CrE,SAAe4O,GAAtBpS,EAAAC,EAAAqB,GAAA,OAAA+Q,GAAAlS,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAAwBC,EAAUC,EAAOgS,GAAzC,IAAA7M,EAAA8M,EAAAC,EAAA1X,UAAA,OAAAyF,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAiD8E,EAAjD+M,EAAAzX,OAAA,QAAAC,IAAAwX,EAAA,GAAAA,EAAA,GAAwD,EACvDD,EAAmB,IAAIE,gBAC3BC,KAAEC,OAAFC,SAAcN,OAAQ7M,SAAQiN,KAAEG,cAChCC,WAHGrS,EAAAE,KAAA,EAKQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,qCAAA1F,OAAuCmX,GAC1CxR,OAAQ,MACRC,QAASC,GAAYX,KATlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAaA,SAAe2S,GAAtBxR,EAAAqN,GAAA,OAAAoE,GAAA7S,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAA2BpB,EAAUC,GAArC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4CACHC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BASA,SAAewR,GAAtBpE,EAAAC,GAAA,OAAAoE,GAAA/S,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAA+B7H,EAAUC,GAAzC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,gDACHC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAA6H,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BASP,IAAMjH,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCarDuR,IA/CbrR,OACEsR,cACAC,cAAe,EACfC,UACAC,cACAC,YAAY,EACZC,eAAe,GAEjBjR,WACEkR,gBAAiB,SAAC5R,EAAO4I,GACvB5I,EAAM0R,WAAa9I,GAErBiJ,mBAAoB,SAAC7R,EAAO4I,GAC1B5I,EAAM2R,cAAgB/I,GAExBkJ,mBAAoB,SAAC9R,EAAOsL,GAC1BtL,EAAMsR,WAAahG,GAErByG,yBAA0B,SAAC/R,EAAOyD,GAChCzD,EAAMuR,cAAgB9N,GAExBuO,WAAY,SAAChS,EAAOwR,GAClBxR,EAAMwR,OAASA,GAEjBS,eAAgB,SAACjS,EAAOyR,GACtBzR,EAAMyR,WAAaA,IAGvBtQ,SACQ+Q,mBADC,SAAA7Q,GACkD,IAAA8Q,EAAAnZ,UAAA,OAAA0I,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAwQ,EAAAvQ,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAA9B0C,EAA8BF,EAA9BE,OAAQK,EAAsBP,EAAtBO,QAAWwQ,EAAWD,EAAAlZ,OAAA,QAAAC,IAAAiZ,EAAA,GAAAA,EAAA,MAAAxT,EAAAE,KAAA,EAChCyR,GAAS1O,EAAQrD,SAAUqD,EAAQpD,MAAO4T,GADV,OACjDvQ,EADiDlD,EAAAU,KAGvDkC,EAAO,qBAAsBM,EAASC,KAAKuQ,OAC3C9Q,EAAO,2BAA4BM,EAASC,KAAKwQ,OACjD/Q,EAAO,mBAAmB,GAL6B,wBAAA5C,EAAAW,SAAAhB,KAAAoD,IAOnD6Q,YARC,SAAAjR,GAQgC,OAAAI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAK,EAAA4Q,EAAAC,EAAA,OAAAhU,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAnB0C,EAAmBD,EAAnBC,OAAQK,EAAWN,EAAXM,QAAWhC,EAAAf,KAAA,EACRoS,GAAYrP,EAAQrD,SAAUqD,EAAQpD,OAD9B,cAC/BgU,EAD+B5S,EAAAP,KAAAO,EAAAf,KAAA,EAEJsS,GAAgBvP,EAAQrD,SAAUqD,EAAQpD,OAFtC,OAE/BiU,EAF+B7S,EAAAP,KAIrCkC,EAAO,aAAciR,EAAe1Q,MACpCP,EAAO,iBAAkBkR,EAAmB3Q,MAC5CP,EAAO,sBAAsB,GANQ,yBAAA3B,EAAAN,SAAAK,KAAA+B,8BCnCpC,SAAegR,GAAtBxU,EAAAC,GAAA,OAAAwU,GAAAtU,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA0BC,EAAUC,GAApC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,yBACHC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BASP,IAAMa,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCcrD8S,IAxBb5S,OACE6S,gBACA7E,SAAS,GAGXtN,WACEoS,UAAW,SAAC9S,EAAO4S,GACjB5S,EAAM6S,aAAeD,GAEvB1E,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,IAIpBzH,SACQ4R,WADC,SAAA1R,GAC+B,OAAAK,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAgR,EAAA,OAAAnU,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAnB0C,EAAmBF,EAAnBE,OAAQK,EAAWP,EAAXO,QAAWjD,EAAAE,KAAA,EAChB6T,GAAW9Q,EAAQrD,SAAUqD,EAAQpD,OADrB,OAC9BoU,EAD8BjU,EAAAU,KAGpCkC,EAAO,YAAayR,KAAIJ,EAAM9Q,MAAMmR,QACpC1R,EAAO,eAAe,GAJc,wBAAA5C,EAAAW,SAAAhB,KAAAoD,mBClBsKwR,ICiBhN7V,KAAA,YACA8V,OACAC,UACA3N,KAAA4N,QACAC,SAAA,GAEAC,aACA9N,KAAA+N,SACAF,QAAA,QCjBIG,cAAYzW,OAAAO,EAAA,EAAAP,CACdkW,GCTQ,WAAgB,IAAa1V,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiB+V,aAAaC,QAAA,UAAmBC,IAAKC,MAArHpW,KAAqH8V,eAAyB5V,EAAA,OAAYmW,YAAA,YAAAC,OAA+BC,YAAzLvW,KAAyL2V,UAAyBvV,OAAQpF,QAAA,gBAAAwb,MAAA,6BAAAC,MAAA,KAAAC,OAAA,QAA2FxW,EAAA,QAAaE,OAAOhF,EAAA,+dDYnW,EACA,KACA,WACA,oOAIA4a,GAAS3V,QAAAC,OAAA,YEGT,ICtBiNqW,IDuBjNC,YACAC,UFJeb,YEMfc,wWAAAC,IACAxX,OAAAyX,EAAA,EAAAzX,EACA,UACA,OACA,SACA,YAGA0X,SACAjS,cADA,WAEAhF,KAAAkX,OAAA/O,SAAA,kBAEAgP,OAJA,WAKAnX,KAAAkX,OAAA/O,SAAA,UAAAiP,KAAA,WACAC,SAAAC,cEhCIC,cAAYhY,OAAAO,EAAA,EAAAP,CACdoX,GCTQ,WAAgB,IAAAa,EAAAxX,KAAaD,EAAAyX,EAAAvX,eAA0BC,EAAAsX,EAAArX,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBmW,YAAA,WAAqBnW,EAAA,aAAkBmW,YAAA,sBAAAjW,OAAyCqX,eAAAD,EAAAxS,cAAAuR,YAAAiB,EAAAhV,QAAAC,UAAiE+U,EAAAE,GAAA,KAAAxX,EAAA,OAAwBmW,YAAA,eAAyBnW,EAAA,eAAoBmW,YAAA,gDAAAjW,OAAmEuX,QAAA,WAAmBzX,EAAA,OAAYmW,YAAA,mBAA6BnW,EAAA,OAAYmW,YAAA,cAAAjW,OAAiCwX,IAAAJ,EAAApJ,OAAA,+BAA4CoJ,EAAAE,GAAA,KAAAxX,EAAA,oBAAuCE,OAAOyX,KAAA,YAAkBA,KAAA,aAAiB3X,EAAA,oBAAAA,EAAA,QAAoC+V,aAAa6B,QAAA,SAAkB3B,IAAKC,MAAAoB,EAAAL,UAAoBK,EAAAE,GAAAF,EAAAO,GAAAP,EAAAQ,GAAA,4CDYrsB,EACA,KACA,WACA,OAIAT,GAASlX,QAAAC,OAAA,aACM,IAAA2X,GAAAV,mCEnBR,SAASW,GAAcC,GAG5B,OAFenY,KAAKoY,IAAI,SAAWD,GAITnY,KAAKgY,GAAG,SAAWG,GAItCA,ECNF,SAASE,GAAUC,EAAMC,GAC9B,GAAyB,IAArBhd,UAAUC,OACZ,OAAO,KAET,IACIgd,EADEC,EAASF,GAAW,0BAEN,WAAhBG,IAAOJ,GACTE,EAAOF,GAEc,iBAATA,GAAuB,WAAWK,KAAKL,KACjDA,EAAOM,SAASN,IAEG,iBAATA,GAAkD,KAA3BA,EAAK/E,WAAW/X,SACjD8c,GAAc,KAEhBE,EAAO,IAAIK,KAAKP,IAElB,IAAMQ,GACJC,EAAGP,EAAKQ,cACRC,EAAGT,EAAKU,WAAa,EACrB9d,EAAGod,EAAKW,UACRC,EAAGZ,EAAKa,WACRC,EAAGd,EAAKe,aACRC,EAAGhB,EAAKiB,aACR5e,EAAG2d,EAAKkB,UAWV,OATiBjB,EAAOkB,QAAQ,sBAAuB,SAAClS,EAAQX,GAC9D,IAAIC,EAAQ+R,EAAUhS,GAEtB,MAAY,MAARA,GAAuB,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAKC,IAC1DU,EAAOjM,OAAS,GAAKuL,EAAQ,KAC/BA,EAAQ,IAAMA,GAETA,GAAS,KAKb,SAAS6S,GAAWtB,EAAMuB,GAC/BvB,EAAe,KAAPA,EACR,IAAMld,EAAI,IAAIyd,KAAKP,GAGbwB,GAFMjB,KAAKkB,MAEG3e,GAAK,IAEzB,OAAI0e,EAAO,GACF,KACEA,EAAO,KAETE,KAAKC,KAAKH,EAAO,IAAM,MACrBA,EAAO,MACTE,KAAKC,KAAKH,EAAO,MAAQ,MACvBA,EAAO,OACT,MAELD,EACKxB,GAAUC,EAAMuB,GAGrBze,EAAE8d,WACF,EACA,IACA9d,EAAE+d,UACF,IACA/d,EAAEie,WACF,IACAje,EAAEme,aACF,IA8NC,SAASW,GAAWC,GACzB,MAAO,0BAA0BxB,KAAKwB,GCtSxC,ICAqNC,ICUrNxa,KAAA,OACA8V,OACA1P,OACAgC,KAAAqS,OACAxE,QAAA,MAEAyE,MACAtS,KAAAqS,OACAxE,QAAA,IAEAsC,OACAnQ,KAAAqS,OACAxE,QAAA,MCdI0E,cAAYhb,OAAAO,EAAA,EAAAP,CACd6a,GHTQ,WAAgB,IAAara,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,QAAAA,EAAA,YAAiCE,OAAOoa,aAAvGxa,KAAuGsa,QAAvGta,KAA8H0X,GAAA,KAAAxX,EAAA,QAAyBE,OAAOyX,KAAA,SAAeA,KAAA,UAA7K7X,KAA2L0X,GAA3L1X,KAA2L+X,GAA3L/X,KAA2LmY,UAA3LnY,KAA2L0X,GAAA,KAAAxX,EAAA,YAAyDmW,YAAA,cAAAjW,OAAiC2G,MAArR/G,KAAqRgG,MAAAgC,KAAA,cAAoC,QGYnV,EACA,KACA,WACA,OAIAuS,GAASla,QAAAC,OAAA,WACM,IAAAma,GAAAF,WCpBsMG,ICYrNhF,OACAiF,IACA3S,KAAAqS,OACAO,UAAA,IAGA3D,SACA4D,UADA,SACAtZ,GACA,OAAA2Y,GAAA3Y,IAEAuZ,GAAA,IACAC,KAAAxZ,EACAyZ,OAAA,SACAC,IAAA,aAIAH,GAAA,cACAH,GAAApZ,MCvBI2Z,GAAY3b,OAAAO,EAAA,EAAAP,CACdmb,GCRQ,WAAgB,IAAa3a,EAAbC,KAAaC,eAAkD,OAA/DD,KAAuCG,MAAAD,IAAAH,GAAwB,YAA/DC,KAA+Dmb,MAA+B,YAA9Fnb,KAA8F6a,UAA9F7a,KAA8F2a,KAAA,IAA9F3a,KAA8Fob,GAAA,oBDWxH,EACA,KACA,KACA,MAIAF,GAAS7a,QAAAC,OAAA,WACM,IAAA+a,GAAAH,kmBEuCf,IC1D4NI,ID2D5N1b,KAAA,cACAgX,YAAA6D,QAAAc,QAAAF,IACAG,SE5DE1E,UACEjU,OADQ,WAEN,OAAO7C,KAAKkX,OAAO3U,MAAMD,IAAIO,SAGjC4Y,QANa,WASXzb,KAAK0b,eAEPzE,SACEyE,YADO,WACO,IAAAC,EAAA3b,KACN4b,EAAW5b,KAAK6b,MAAMC,QAC5B,GAAIF,EAAU,CACZ,IAAMG,EAAmBH,EAASG,iBAClCH,EAASG,iBAAmB,SAAC5c,GACP,WAAhBwc,EAAK9Y,QAGTkZ,EAAiB5c,SF0C3BuW,OAEAsG,MACAhU,KAAAzI,OACAqb,UAAA,GAEAqB,QACAjU,KAAA4N,QACAC,SAAA,GAEAqG,UACAlU,KAAAqS,OACAxE,QAAA,KAGAxR,KAAA,WACA,OACA8X,aAAA,OAGArF,UACA9T,eADA,WAEA,mBAAAhD,KAAAkc,UAAAlc,KAAAkX,OAAA3U,MAAAD,IAAAU,gBAEAoZ,uBAJA,WAKA,OAAAC,KAAArc,KAAAkX,OAAA3U,MAAA+Z,QAAAC,kBAAA9D,OAAA,QAGAxB,SACAuF,mBADA,SACAC,EAAAC,GAAA,IAAAf,EAAA3b,KACA2c,EAAAF,EAAAG,OAAA,SAAAZ,GACA,OAAAA,EAAAa,SAIAlB,EAAAQ,aAAAH,GACA,KAKA,WAAAW,EAAAnhB,QAKA,IAAAmhB,EAAAnhB,SACAwE,KAAAmc,aAAAW,SAAAJ,OAAAvC,KAAA,GAAA4C,mBAAA,KACA,IAKAC,YAzBA,SAyBAC,GACA,OAAAjd,KAAAkd,eAAAD,GACAA,EAEAE,GAAAtiB,EAAA2E,QAAAQ,KAAAkc,SAAAe,IAEAG,UA/BA,SA+BApB,GACA,mBAAAA,EAAA7B,MAEA+C,eAlCA,SAkCAD,GACA,OAAA/C,GAAA+C,IAEA/E,mBGxHImF,GAAY9d,OAAAO,EAAA,EAAAP,CACd+b,GCRQ,WAAgB,IAAA9D,EAAAxX,KAAaD,EAAAyX,EAAAvX,eAA0BC,EAAAsX,EAAArX,MAAAD,IAAAH,EAAwB,OAAAyX,EAAAwE,KAAAa,QAAArF,EAAAwE,KAAAS,UAAAjF,EAAAxU,eAAA9C,EAAA,OAA+EmW,YAAA,kBAA2BmB,EAAAgF,mBAAAhF,EAAAwE,KAAAS,SAAAjF,EAAAwE,OAAAxE,EAAA2E,aAAAM,WAAAjF,EAAA2E,aAAAY,mBAAAvF,EAAAwE,KAAAsB,WAA8iBpd,EAAA,cAAqCqd,IAAA,UAAAnd,OAAqBod,MAAAhG,EAAAwF,YAAAxF,EAAAwE,KAAA7B,SAAwCja,EAAA,YAAiB2X,KAAA,UAAaL,EAAAwE,KAAA,KAAA9b,EAAA,QAA6BE,OAAO4F,MAAAwR,EAAA4F,UAAA5F,EAAAwE,MAAAxE,EAAA4E,uBAAA,KAAA9B,KAAA9C,EAAAwE,KAAAyB,KAAAnD,KAAAnC,MAAAX,EAAAU,cAAAV,EAAAwE,KAAAyB,KAAAtF,UAA8IX,EAAAkG,MAAA,GAAAlG,EAAAE,GAAA,KAAAF,EAAAmG,GAAAnG,EAAAwE,KAAA,kBAAA4B,GAAsE,OAAAA,EAAAf,OAA4frF,EAAAkG,MAA5fE,EAAAnB,UAAAmB,EAAAnB,SAAAjhB,OAAA,EAAA0E,EAAA,gBAAsF4G,IAAA8W,EAAAzD,KAAA9D,YAAA,YAAAjW,OAA8Cyd,WAAA,EAAA7B,KAAA4B,EAAAE,YAAAtG,EAAAwF,YAAAY,EAAAzD,SAAqEja,EAAA,YAAiB4G,IAAA8W,EAAAhe,KAAAQ,OAAsBua,GAAAnD,EAAAwF,YAAAY,EAAAzD,SAAkCja,EAAA,gBAAqBE,OAAOod,MAAAhG,EAAAwF,YAAAY,EAAAzD,SAAqCyD,EAAA,KAAA1d,EAAA,QAA0BE,OAAO4F,MAAAwR,EAAA4F,UAAA5F,EAAAwE,MAAAxE,EAAA4E,uBAAA,KAAA9B,KAAAsD,EAAAH,KAAAnD,KAAAnC,MAAAX,EAAAU,cAAA0F,EAAAH,KAAAtF,UAAwIX,EAAAkG,MAAA,YAA8B,IAAh8Cxd,EAAA,YAAiKE,OAAOua,GAAAnD,EAAAwF,YAAAxF,EAAA2E,aAAAhC,SAA6Cja,EAAA,gBAAqBoW,OAAOyH,4BAAAvG,EAAAyE,QAAuC7b,OAAQod,MAAAhG,EAAAwF,YAAAxF,EAAA2E,aAAAhC,SAAgD3C,EAAA2E,aAAA,KAAAjc,EAAA,QAAqCE,OAAO4F,MAAAwR,EAAA4F,UAAA5F,EAAAwE,MAAAxE,EAAA4E,uBAAA,KAAA9B,KAAA9C,EAAA2E,aAAAsB,KAAAnD,MAAA9C,EAAAwE,KAAAyB,KAAAnD,KAAAnC,MAAAX,EAAAU,cAAAV,EAAA2E,aAAAsB,KAAAtF,UAAkLX,EAAAkG,MAAA,SAAk5B,GAAAlG,EAAAkG,UDWnoD,EACA,KACA,KACA,MAIAL,GAAShd,QAAAC,OAAA,kBACM,IAAA0d,GAAAX,kmBECf,ICpBsNY,IDqBtNrH,YAAAoH,gBACAlH,SAAAoH,SACA3e,OAAAyX,EAAA,EAAAzX,EACA,qBACA,iBAEA4e,UALA,WAMA,OAAAC,GAAAvjB,GAEAwjB,WARA,WASA,OAAAre,KAAAwC,QAAAC,UAGAgZ,QAdA,WAeAzb,KAAAkX,OAAA/O,SAAA,2BE5BImW,GAAY/e,OAAAO,EAAA,EAAAP,CACd0e,GCRQ,WAAgB,IAAale,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,gBAA0BE,OAAOme,aAAA,uBAAkCre,EAAA,WAAgBE,OAAOoe,iBAAzJxe,KAAyJye,OAAAtE,KAAAuE,SAAzJ1e,KAAyJqe,WAAAM,mBAAzJ3e,KAAyJme,UAAAS,OAAAC,aAAzJ7e,KAAyJme,UAAAW,SAAAC,oBAAzJ/e,KAAyJme,UAAAa,eAAAC,KAAA,aAAzJjf,KAAoW2d,GAApW3d,KAAoW,4BAAAkf,GAAiD,OAAAhf,EAAA,gBAA0B4G,IAAAoY,EAAA/E,KAAA/Z,OAAsB4b,KAAAkD,EAAApB,YAAAoB,EAAA/E,UAAuC,YDWtgB,EACA,KACA,KACA,MAIAmE,GAASje,QAAAC,OAAA,YACM,IAAA6e,GAAAb,WEnBiMc,ICUhNxf,KAAA,aACAyE,KAAA,WACA,OACAgb,KAAA,IAGApI,SACAqI,aADA,SACAngB,GACA,IAAAogB,EAAApgB,EAAAqgB,YAAA,IAAArgB,EAAAsgB,OACAC,EAAA1f,KAAA6b,MAAA8D,gBAAA9D,MAAA5a,KACAye,EAAAE,WAAAF,EAAAE,WAAAL,EAAA,GAEAM,aANA,SAMAC,GACA,IACAC,EADA/f,KAAA6b,MAAA8D,gBAAAK,IACAC,YACAP,EAAA1f,KAAA6b,MAAA8D,gBAAA9D,MAAA5a,KACAif,EAAAlgB,KAAAmgB,QAAAtE,MAAAuE,IAEAC,EAAA,KACAC,EAAA,KAQA,GALAJ,EAAA1kB,OAAA,IACA6kB,EAAAH,EAAA,GACAI,EAAAJ,IAAA1kB,OAAA,IAGA6kB,IAAAP,EACAJ,EAAAE,WAAA,OACA,GAAAU,IAAAR,EACAJ,EAAAE,WAAAF,EAAAa,YAAAR,MACA,CAEA,IAAAS,EAAAN,EAAAO,UAAA,SAAAzE,GAAA,OAAAA,IAAA8D,IACAY,EAAAR,EAAAM,EAAA,GACAG,EAAAT,EAAAM,EAAA,GAEAI,EAAAD,EAAAX,IAAAa,WAAAF,EAAAX,IAAAC,YAxCA,EA2CAa,EAAAJ,EAAAV,IAAAa,WA3CA,EA6CAD,EAAAlB,EAAAE,WAAAG,EACAL,EAAAE,WAAAgB,EAAAb,EACAe,EAAApB,EAAAE,aACAF,EAAAE,WAAAkB,OC/CIC,cAAYxhB,OAAAO,EAAA,EAAAP,CACd6f,GCTQ,WAAgB,IAAA5H,EAAAxX,KAAaD,EAAAyX,EAAAvX,eAAkD,OAAxBuX,EAAArX,MAAAD,IAAAH,GAAwB,gBAA0Bwd,IAAA,kBAAAlH,YAAA,mBAAAjW,OAA4D4gB,UAAA,GAAiBC,UAAWC,MAAA,SAAAC,GAAiD,OAAxBA,EAAAC,iBAAwB5J,EAAA8H,aAAA6B,OAAkC3J,EAAA4D,GAAA,oBDY9R,EACA,KACA,WACA,yvCAIA2F,GAAS1gB,QAAAC,OAAA,YEaT,IChCmN+gB,IDiCnNzK,YAAA0K,WFbeP,YEcf1c,KAAA,WACA,OACAkd,SAAA,EACAC,IAAA,EACAnC,KAAA,EACAoC,eACAC,eAGA5K,UACA9I,aADA,WAEA,OAAAhO,KAAAkX,OAAA3U,MAAA0L,SAAAD,cAEAU,QAJA,WAKA,OAAA1O,KAAAkX,OAAA3U,MAAAkM,WAAAC,UAGAiT,OACAlD,OADA,WAEAze,KAAA4hB,UACA5hB,KAAA6hB,oBAEAN,QALA,SAKAxa,GACAA,EACA+a,SAAAC,KAAAC,iBAAA,QAAAhiB,KAAAiiB,WAEAH,SAAAC,KAAAG,oBAAA,QAAAliB,KAAAiiB,aAIAxG,QAhCA,WAiCAzb,KAAAmiB,WACAniB,KAAA4hB,WAEA3K,SACAiB,iBACAvC,SAFA,SAEAuJ,GACA,OAAAA,EAAA/E,OAAAna,KAAAye,OAAAtE,MAEAiI,gBALA,SAKAC,GAAA,IAAA1G,EAAA3b,KAAAkc,EAAA3gB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,OACA+mB,KAiBA,OAhBAD,EAAAE,QAAA,SAAArD,GAQA,GAPAA,EAAAzB,MAAAyB,EAAAzB,KAAA+E,OACAF,EAAAxU,MACAqM,KAAAgD,GAAAtiB,EAAA2E,QAAA0c,EAAAgD,EAAA/E,MACAva,KAAAsf,EAAAtf,KACA6d,oWAAAgF,IAAAvD,EAAAzB,QAGAyB,EAAAzC,SAAA,CACA,IAAAiG,EAAA/G,EAAAyG,gBAAAlD,EAAAzC,SAAAyC,EAAA/E,MACAuI,EAAAlnB,QAAA,IACA8mB,KAAAzmB,OAAA0Z,KAAA+M,GAAA/M,KAAAmN,QAKAJ,GAEAH,SAzBA,WA0BA,IADAQ,EAAAC,EAAAC,GACA7iB,KAAA0hB,UAAA1hB,KAAAoiB,gBAAApiB,KAAA0O,UADA,IAEA,IAAAkU,EAAApJ,MAAAmJ,EAAAC,EAAAnoB,KAAAqoB,MAAA,KAAA1C,EAAAuC,EAAA5b,MAEAqZ,EAAAxgB,MACAI,KAAAkX,OAAA/O,SAAA,iBAAAiY,IALA,MAAA2C,GAAAH,EAAAzjB,EAAA4jB,GAAA,QAAAH,EAAAI,MASApB,QAlCA,WAuCA,OAJA5hB,KAAAye,OAAA7e,MAEAI,KAAAkX,OAAA/O,SAAA,UAAAnI,KAAAye,SAEA,GAEAoD,iBAzCA,WAyCA,IAAAoB,EAAAjjB,KACAsiB,EAAAtiB,KAAA6b,MAAAuE,IACApgB,KAAAkjB,UAAA,eAAAC,EAAAC,EAAAP,GACAP,GADA,IACA,IAAAc,EAAA5J,MAAA2J,EAAAC,EAAA3oB,KAAAqoB,MAAA,KAAA1C,EAAA+C,EAAApc,MACA,GAAAqZ,EAAAzF,GAAAR,OAAA8I,EAAAxE,OAAAtE,KAAA,CACA8I,EAAApH,MAAAwH,WAAAxD,aAAAO,GAGAA,EAAAzF,GAAA2I,WAAAL,EAAAxE,OAAA6E,UACAL,EAAA/L,OAAA/O,SAAA,oBAAA8a,EAAAxE,QAGA,QAVA,MAAAsE,GAAAK,EAAAjkB,EAAA4jB,GAAA,QAAAK,EAAAJ,QAeAO,mBA1DA,SA0DAC,GAAA,IAAAC,EAAAzjB,KACAA,KAAAkX,OAAA/O,SAAA,gBAAAqb,GAAApM,KAAA,eACAkM,EAAAE,EAAAF,SACAG,EAAAP,UAAA,WACAO,EAAAC,QAAA/J,SACAQ,KAAA,YAAAmJ,SAKAK,iBApEA,SAoEAH,GAAA,IAAAI,EAAA5jB,KACAA,KAAAkX,OAAA/O,SAAA,UAAAqb,GAAApM,KAAA,SAAAxT,GAAA,IAAAoK,EAAApK,EAAAoK,aACA4V,EAAAjO,SAAA6N,IACAI,EAAAC,WAAA7V,MAIA8V,gBA3EA,WA2EA,IAAAC,EAAA/jB,KACAA,KAAA0jB,QAAA5V,KAAA9N,KAAAyhB,aACAzhB,KAAAkX,OAAA/O,SAAA,iBAAAnI,KAAAyhB,aAAArK,KAAA,WACA2M,EAAAlC,sBAGAmC,aAjFA,SAiFAR,GAAA,IAAAS,EAAAjkB,KACAA,KAAAkX,OAAA/O,SAAA,eAAAiP,KAAA,SAAAvT,GAAA,IAAAmK,EAAAnK,EAAAmK,aACAiW,EAAAvC,UAAAwC,KAAA,SAAA9D,GAAA,OAAAA,EAAAjG,OAAAqJ,EAAArJ,QAGA8J,EAAAJ,WAAA7V,MAGA6V,WAzFA,SAyFA7V,GACA,IAAAmW,EAAAnW,EAAAoW,OAAA,MACAD,EACAnkB,KAAA0jB,QAAA5V,KAAAqW,GAGAnkB,KAAA0jB,QAAA5V,KAAA,MAGAuW,SAlGA,SAkGAjE,EAAAjhB,GACA,IACA0hB,EAAA7gB,KAAAggB,IAAAsE,wBAAAjF,KAEAkF,EADAvkB,KAAAggB,IAAAC,YAFA,IAIAZ,EAAAlgB,EAAAqlB,QAAA3D,EAAA,GAGA7gB,KAAAqf,KADAA,EAAAkF,EACAA,EAEAlF,EAEArf,KAAAwhB,IAAAriB,EAAAslB,QAEAzkB,KAAAuhB,SAAA,EACAvhB,KAAAyhB,YAAArB,GAEA6B,UAnHA,WAoHAjiB,KAAAuhB,SAAA,KE/KImD,wBAAYnlB,OAAAO,EAAA,EAAAP,CACd8hB,GCVQ,WAAgB,IAAA7J,EAAAxX,KAAaD,EAAAyX,EAAAvX,eAA0BC,EAAAsX,EAAArX,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBmW,YAAA,wBAAkCnW,EAAA,eAAoBqd,IAAA,aAAAlH,YAAA,qBAAiDmB,EAAAmG,GAAAnG,EAAA,sBAAA4I,GAAyC,OAAAlgB,EAAA,eAAyB4G,IAAAsZ,EAAAjG,KAAAoD,IAAA,MAAAoH,UAAA,EAAAtO,YAAA,iBAAAC,MAAAkB,EAAA7B,SAAAyK,GAAA,YAAAhgB,OAA6Gua,IAAMR,KAAAiG,EAAAjG,KAAAhI,MAAAiO,EAAAjO,MAAAmR,SAAAlD,EAAAkD,UAA2DlD,IAAA,QAAca,UAAW2D,QAAA,SAAAzD,GAA2B,iBAAAA,GAAA,IAAAA,EAAA0D,OAA8C,KAAerN,EAAAmM,iBAAAvD,IAAiC0E,YAAA,SAAA3D,GAAwD,OAAxBA,EAAAC,iBAAwB5J,EAAA6M,SAAAjE,EAAAe,OAAkC3J,EAAAE,GAAA,WAAAF,EAAAO,GAAAP,EAAAU,cAAAkI,EAAAjI,QAAA,YAAAiI,EAAA3C,KAAA+E,MAA+OhL,EAAAkG,KAA/Oxd,EAAA,QAAkGmW,YAAA,gBAAAF,IAAgCC,MAAA,SAAA+K,GAA0E,OAAjDA,EAAAC,iBAAwBD,EAAA4D,kBAAyBvN,EAAAmM,iBAAAvD,WAAgD,GAAA5I,EAAAE,GAAA,KAAAxX,EAAA,MAA0B8kB,aAAaplB,KAAA,OAAAqlB,QAAA,SAAAle,MAAAyQ,EAAA,QAAA0N,WAAA,YAAsE7O,YAAA,cAAA8O,OAAoC9F,KAAA7H,EAAA6H,KAAA,KAAAmC,IAAAhK,EAAAgK,IAAA,QAAsCthB,EAAA,MAAWiW,IAAIC,MAAA,SAAA+K,GAAyB,OAAA3J,EAAA+L,mBAAA/L,EAAAiK,iBAAiDjK,EAAAE,GAAAF,EAAAO,GAAAP,EAAAQ,GAAA,wBAAAR,EAAAE,GAAA,KAAAF,EAAAiK,YAAAhE,MAAAjG,EAAAiK,YAAAhE,KAAA+E,MAAsMhL,EAAAkG,KAAtMxd,EAAA,MAA0HiW,IAAIC,MAAA,SAAA+K,GAAyB,OAAA3J,EAAAmM,iBAAAnM,EAAAiK,iBAA+CjK,EAAAE,GAAAF,EAAAO,GAAAP,EAAAQ,GAAA,sBAAAR,EAAAE,GAAA,KAAAxX,EAAA,MAA2EiW,IAAIC,MAAAoB,EAAAsM,mBAA6BtM,EAAAE,GAAAF,EAAAO,GAAAP,EAAAQ,GAAA,4BAAAR,EAAAE,GAAA,KAAAxX,EAAA,MAAwEiW,IAAIC,MAAA,SAAA+K,GAAyB,OAAA3J,EAAAwM,aAAAxM,EAAAiK,iBAA2CjK,EAAAE,GAAAF,EAAAO,GAAAP,EAAAQ,GAAA,oCDa3nD,EACA,KACA,WACA,OAIA0M,GAASrkB,QAAAC,OAAA,eACM,IAAA8kB,GAAAV,WErBmMW,ICYlNzlB,KAAA,UACAkX,UACA5I,YADA,WAEA,OAAAlO,KAAAkX,OAAA3U,MAAA0L,SAAAC,aAEApH,IAJA,WAKA,OAAA9G,KAAAye,OAAA6E,YCVIgC,cAAY/lB,OAAAO,EAAA,EAAAP,CACd8lB,GCTQ,WAAgB,IAAatlB,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,WAAqBmW,YAAA,aAAuBnW,EAAA,cAAmBE,OAAOR,KAAA,iBAAAqf,KAAA,YAAyC/e,EAAA,cAAmBE,OAAOmlB,QAAxMvlB,KAAwMkO,eAA2BhO,EAAA,eAAoB4G,IAAvP9G,KAAuP8G,OAAY,gBDY7R,EACA,KACA,WACA,OAIAwe,GAASjlB,QAAAC,OAAA,cACM,IAAAklB,GAAAF,WElBPvD,GAASD,SAATC,KCFmM0D,ICgB3M7lB,KAAA,SACAgX,YACAqB,UACAkH,WACAqG,WACAJ,aAEA5J,SFfEmG,OACElD,OADK,SACES,GACe,WAAhBlf,KAAK6C,QAAuB7C,KAAKwC,QAAQC,QAC3CijB,GAAMvd,SAAS,gBAAkBvF,kBAAkB,MAIzD+iB,YARa,WASXC,OAAO5D,iBAAiB,SAAUhiB,KAAK6lB,gBAEzCpK,QAXa,WAYX,IAAMqK,EAAW9lB,KAAK8lB,WAChBC,EAAW/lB,KAAK+lB,YAClBD,GAAYC,KACdL,GAAMvd,SAAS,eAAgB2d,EAAW,SAAW,UACrDJ,GAAMvd,SAAS,gBAAkBvF,kBAAkB,MAGvDqU,SACE6O,SADO,WAGL,OADa/D,GAAKuC,wBACN7N,MAxBJ,EAFM,KA4BhBsP,SALO,WAML,IAAMC,EAAOjE,GAAKuC,wBAClB,OAAO0B,EAAKvP,MA5BJ,EADM,KA6B6BuP,EAAKvP,MA5BxC,EAFM,KAgChBoP,cATO,WAUL,IAAK/D,SAASjF,OAAQ,CACpB,IAAMiJ,EAAW9lB,KAAK8lB,WAChBC,EAAW/lB,KAAK+lB,WAElBD,GAAYC,GACdL,GAAMvd,SAAS,eAAgB2d,EAAW,SAAW,UACrDJ,GAAMvd,SAAS,gBAAkBvF,kBAAkB,KAEnD8iB,GAAMvd,SAAS,eAAgB,gBEpBzC2O,UACAtU,QADA,WAEA,OAAAxC,KAAAkX,OAAA3U,MAAAD,IAAAE,SAEAK,OAJA,WAKA,OAAA7C,KAAAkX,OAAA3U,MAAAD,IAAAO,QAEAojB,SAPA,WAQA,OACAC,aAAAlmB,KAAAwC,QAAAC,OACA0jB,YAAAnmB,KAAAwC,QAAAC,OACAG,iBAAA5C,KAAAwC,QAAAI,iBACAwjB,OAAA,WAAApmB,KAAA6C,UAIAoU,SACAoP,mBADA,WAEArmB,KAAAkX,OAAA/O,SAAA,gBAAAvF,kBAAA,OClCI0jB,cAAY/mB,OAAAO,EAAA,EAAAP,CACdkmB,GCTQ,WAAgB,IAAAjO,EAAAxX,KAAaD,EAAAyX,EAAAvX,eAA0BC,EAAAsX,EAAArX,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBmW,YAAA,cAAAC,MAAAkB,EAAAyO,WAA6C,WAAAzO,EAAA3U,QAAA2U,EAAAhV,QAAAC,OAAAvC,EAAA,OAAwDmW,YAAA,YAAAF,IAA4BC,MAAAoB,EAAA6O,sBAAgC7O,EAAAkG,KAAAlG,EAAAE,GAAA,KAAAxX,EAAA,WAAqCmW,YAAA,sBAAgCmB,EAAAE,GAAA,KAAAxX,EAAA,OAAwBmW,YAAA,mBAA6BnW,EAAA,UAAAsX,EAAAE,GAAA,KAAAxX,EAAA,yBDYrY,EACA,KACA,WACA,OAIAomB,GAASjmB,QAAAC,OAAA,aACM,IAAAimB,GAAAD,WEjBftf,UAAIjM,IAAIyrB,MAKR,IAAMC,IAAmBC,MAAiC,EACpDC,GAAmBF,GAAiBG,SAAS,YAC7C7X,IACJoL,KAAM,YACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,WACN6d,MAAQtF,MAAO,WAAYmC,KAAM,WAAY0M,SAAS,MAKtDC,GAAmBR,GAAiBG,SAAS,YAC7CM,IACJ/M,KAAM,YACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,WACN6d,MAAQtF,MAAO,WAAYmC,KAAM,OAAQ0M,SAAS,MAKlDG,GAAkBV,GAAiBG,SAAS,WAC5CtK,IACJnC,KAAM,WACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,UACN6d,MAAQtF,MAAO,UAAWmC,KAAM,gBAAiB0M,SAAS,MAK1DI,GAAkBX,GAAiBG,SAAS,WAC5CvW,IACJ8J,KAAM,WACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,UACN6d,MAAQtF,MAAO,UAAWmC,KAAM,QAAS0M,SAAS,MAKlDK,GAAqBZ,GAAiBG,SAAS,eAC/C1hB,IACJiV,KAAM,eACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,cACN6d,MAAQtF,MAAO,cAAemC,KAAM,WAAY0M,SAAS,MAKzDM,GAAwBb,GAAiBG,SAAS,kBAClDhT,IACJuG,KAAM,kBACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,iBACN6d,MAAQtF,MAAO,gBAAiBmC,KAAM,OAAQ0M,SAAS,MAKvDO,GAA0Bd,GAAiBG,SAAS,qBACpDxU,IACJ+H,KAAM,qBACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,mBACN6d,MAAQtF,MAAO,kBAAmBmC,KAAM,UAAW0M,SAAS,MAKrDQ,KAETrN,KAAM,YACNta,UAAW0mB,GACX1J,QAAQ,EACRJ,WAEItC,KAAM,mBACNta,UAAW,kBAAMzF,EAAA+E,EAAA,QAAAiY,KAAAhd,EAAA2sB,KAAA,mBAKrB5M,KAAM,iBACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,QAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBlK,QAAQ,IAGR1C,KAAM,SACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,QAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBlK,QAAQ,IAGR1C,KAAM,iBACNta,UAAW,kBAAMzF,EAAA+E,EAAA,QAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBlK,QAAQ,IAGR1C,KAAM,OACNta,UAAW,kBAAMzF,EAAA+E,EAAA,cAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBlK,QAAQ,IAGR1C,KAAM,OACNta,UAAW,kBAAMzF,EAAA+E,EAAA,cAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBlK,QAAQ,IAGR1C,KAAM,GACNta,UAAW0mB,GACXkB,SAAU,iBAICC,GAAA,IAAIlB,MAEjBmB,eAAgB,kBAAS5O,EAAG,IAC5BsJ,OAAQmF,KAGGI,KAETzN,KAAM,SACNta,UAAW0mB,GACX9J,WAEItC,KAAM,QACNta,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,eACjBnnB,KAAM,QACN6d,MAAQtF,MAAO,QAASmC,KAAM,UAAW0M,SAAS,OAT/BnrB,OAAA0Z,KAarB0R,OAAyBC,KAbJ3R,KAcrB4R,OAAwB7K,KAdH/G,KAerB6R,OAAwB/W,KAfHkF,KAgBrB8R,OAA2BniB,KAhBNqQ,KAiBrB+R,OAA8B1T,KAjBT2B,KAkBrBgS,OAAgCnV,KAlBXmD,KAmBrBoR,OAAyB5X,OAE3BoL,KAAM,aACNta,UAAW0mB,GACX9J,WAEItC,KAAM,GACNva,KAAM,YACNC,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,iBAGrBlK,QAAQ,IAGR1C,KAAM,gBACNta,UAAW0mB,GACX9J,WAEItC,KAAM,GACNva,KAAM,aACNC,UAAW,kBAAMgnB,QAAAC,KAAA1sB,EAAA+E,EAAA,iBAAA/E,EAAA+E,EAAA,cAAA/E,EAAA+E,EAAA,gBAAAiY,KAAAhd,EAAA2sB,KAAA,iBAGrBlK,QAAQ,IAER1C,KAAM,IAAKsN,SAAU,OAAQ5K,QAAQ,kOCrLzC,SAASgL,GAAkBxF,EAAQ/T,GACjC,IAAMwZ,KAYN,OAVAzF,EAAOE,QAAQ,SAAArD,GACb,IAAM6I,iWAAMC,IAAK9I,IAjBrB,SAAuB5Q,EAAO4Q,GAC5B,OAAIA,EAAMzB,OAAQyB,EAAMzB,KAAKnP,OACpBA,EAAM4V,KAAK,SAAA+D,GAAI,OAAI/I,EAAMzB,KAAKnP,MAAMsY,SAASqB,MAgBhDC,CAAc5Z,EAAOyZ,KACnBA,EAAItL,WACNsL,EAAItL,SAAWoL,GAAkBE,EAAItL,SAAUnO,IAEjDwZ,EAAIha,KAAKia,MAIND,EAGT,IA4BerZ,IA3BblM,OACEmM,WACAC,eAEF1L,WACEklB,YAAa,SAAC5lB,EAAOmM,GACnBnM,EAAMoM,WAAaD,EACnBnM,EAAMmM,QAAU8Y,GAAkB3rB,OAAO6S,KAG7ChL,SACE0kB,eADO,SAAAxkB,EACoBS,GAAM,IAAhBP,EAAgBF,EAAhBE,OACf,OAAO,IAAI+iB,QAAQ,SAAArnB,GAAW,IAExB6oB,EADI/Z,EAAUjK,EAAViK,MAGN+Z,EADE/Z,EAAMsY,SAAS,SACCgB,GAEAC,GAAkBD,GAAgBtZ,GAEtDxK,EAAO,cAAeukB,GACtB7oB,SCtDD,SAAe8oB,GAAtB7nB,EAAAC,GAAA,OAAA6nB,GAAA3nB,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA2BC,EAAUC,GAArC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,2BACLC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BASA,SAAe2nB,GAAtBzmB,EAAAC,EAAAqN,GAAA,OAAAoZ,GAAA7nB,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAAwBwmB,EAAW5nB,EAAUC,GAA7C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,2BACLC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQqkB,eANL,cAAAvmB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BAUA,SAAeymB,GAAtBrZ,EAAAC,EAAAC,GAAA,OAAAoZ,GAAAhoB,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAA2B+f,EAAW5nB,EAAUC,GAAhD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,2BACLC,OAAQ,SACRC,QAASC,GAAYX,GACrBsD,MAAQqkB,eANL,cAAA9f,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BAUP,IAAMjH,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCqBrDwmB,IAnDbtmB,OACEumB,iBACAvY,SAAS,GAEXtN,WACEwN,YAAa,SAAClO,EAAOgO,GACnBhO,EAAMgO,QAAUA,GAElBwY,WAAY,SAACxmB,EAAOsmB,GAClBtmB,EAAMumB,cAAgBD,GAExBG,UAAW,SAACzmB,EAAO0mB,GACjB1mB,EAAMumB,iBAANjtB,OAAA0Z,KAA0BhT,EAAMumB,iBAAiBI,MAAOD,MAE1DE,aAAc,SAAC5mB,EAAO0mB,GACpB1mB,EAAMumB,cAAgBvmB,EAAMumB,cAAclM,OAAO,SAAAwM,GAAY,OAAIA,EAAaF,QAAUD,MAG5FvlB,SACQ2lB,YADC,SAAAzlB,GACgC,OAAAK,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAmlB,EAAAjlB,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAnB0C,EAAmBF,EAAnBE,OAAQK,EAAWP,EAAXO,QAC1BL,EAAO,eAAe,GADe5C,EAAAE,KAAA,EAGdknB,GAAYnkB,EAAQrD,SAAUqD,EAAQpD,OAHxB,OAAAuoB,EAAApoB,EAAAU,KAG7ByC,EAH6BilB,EAG7BjlB,KACRP,EAAO,aAAcO,EAAKwkB,QAC1B/kB,EAAO,eAAe,GALe,wBAAA5C,EAAAW,SAAAhB,KAAAoD,IAOjCslB,SARC,SAAA1lB,EAQuColB,GAAO,OAAAhlB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAqE,EAAAhE,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAApC0C,EAAoCD,EAApCC,OAAQqE,EAA4BtE,EAA5BsE,SAAUhE,EAAkBN,EAAlBM,QACjCL,EAAO,YAAamlB,GAD+B9mB,EAAAhB,KAAA,EAAAgB,EAAAf,KAAA,EAI3ConB,GAASS,EAAO9kB,EAAQrD,SAAUqD,EAAQpD,OAJC,OAAAoB,EAAAf,KAAA,uBAAAe,EAAAhB,KAAA,EAAAgB,EAAAwF,GAAAxF,EAAA,SAAAA,EAAAR,OAAA,yBAAAQ,EAAAhB,KAAA,GAQjDgH,EAAS,eARwChG,EAAAqnB,OAAA,6BAAArnB,EAAAN,SAAAK,EAAA,sBAAA+B,IAW/CwlB,YAnBC,SAAAzlB,EAmB0CilB,GAAO,OAAAhlB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAA7E,EAAAqE,EAAAhE,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAApC0C,EAAoCE,EAApCF,OAAQqE,EAA4BnE,EAA5BmE,SAAUhE,EAAkBH,EAAlBG,QACpCL,EAAO,eAAgBmlB,GAD+BrgB,EAAAzH,KAAA,EAAAyH,EAAAxH,KAAA,EAI9CunB,GAAYM,EAAO9kB,EAAQrD,SAAUqD,EAAQpD,OAJC,OAAA6H,EAAAxH,KAAA,uBAAAwH,EAAAzH,KAAA,EAAAyH,EAAAjB,GAAAiB,EAAA,SAAAA,EAAAjH,OAAA,yBAAAiH,EAAAzH,KAAA,GAQpDgH,EAAS,eAR2CS,EAAA4gB,OAAA,6BAAA5gB,EAAA/G,SAAA8G,EAAA,sBAAA1E,MCpCrD,SAAeylB,GAAtBjpB,EAAAC,EAAAqB,GAAA,OAAA4nB,GAAA/oB,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA2Byb,EAASxb,EAAUC,GAA9C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,6BACHC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQiY,aANL,cAAApb,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAUA,SAAe+oB,GAAtB5nB,EAAAqN,EAAAC,EAAAC,EAAAC,GAAA,OAAAqa,GAAAjpB,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAA4B0a,EAAQ1W,EAAMR,EAAU5E,EAAUC,GAA9D,IAAAQ,EAAA,OAAAP,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cACCG,EAAMqb,EAAOphB,OAAS,EAAhB,oCAAAK,OAC4B+gB,EAD5B,UAAA/gB,OAC2CqK,EAD3C,eAAArK,OAC6D6J,GAD7D,mCAAA7J,OAE2BqK,EAF3B,eAAArK,OAE6C6J,GAHpDvD,EAAAf,KAAA,EAIQC,aACXC,QAASjG,YAASyF,GAClBS,MACAC,OAAQ,MACRC,QAASC,GAAYX,KARlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,kEAYA,SAAAyG,EAA0B1N,EAAS6uB,EAAUhpB,EAAUC,GAAvD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,8BAAA1F,OAAgCiuB,EAAhC,UACHtoB,OAAM,OACNC,QAASC,GAAYX,GACrBsD,MAAQpJ,aANL,cAAA2N,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,kEAUA,SAAAM,EAA0B8gB,EAAQD,EAAUhpB,EAAUC,GAAtD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,8BAAA1F,OAAgCiuB,EAAhC,WAAAjuB,OAAkDkuB,GACrDvoB,OAAM,SACNC,QAASC,GAAYX,KALlB,cAAAmI,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BASP,IAAMvH,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,mlBC3CpE,IA0Geia,IAzGb/Z,OACE8C,YAAa,EACb2kB,kBACAzZ,SAAS,EACTgM,iBAAkB,EAClB7W,SAAU,GACVukB,YAAa,GACbC,kBAAmB,GAErBjnB,WACEknB,mBAAoB,SAAC5nB,EAAOzH,GAC1ByH,EAAM6nB,eAAiBtvB,GAEzB2V,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBkf,uBAAwB,SAAC9nB,EAAOsS,GAC9BtS,EAAMga,iBAAmB1H,GAE3BnO,SAAU,SAACnE,EAAO2D,GAChB3D,EAAM8C,YAAca,GAEtBokB,YAAa,SAAC/nB,EAAO+Z,GACnB/Z,EAAMynB,eAAiB1N,GAEzBiO,kBAAmB,SAAChoB,EAAOsS,GACzBtS,EAAM2nB,kBAAoBrV,GAE5B2V,mBAAoB,SAACjoB,EAAOqa,GAC1Bra,EAAM0nB,YAAcrN,IAGxBlZ,SACQ+mB,kBADC,SAAA7mB,EACuD8mB,GAAa,OAAAzmB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAqE,EAAAhE,EAAA5B,EAAAooB,EAAA,OAAA3pB,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OAAjD0C,EAAiDF,EAAjDE,OAAQqE,EAAyCvE,EAAzCuE,SAAUhE,EAA+BP,EAA/BO,QAAS5B,EAAsBqB,EAAtBrB,MACnDmnB,GAAYgB,EAAavmB,EAAQrD,SAAUqD,EAAQpD,OAE7C4pB,EAAiBpoB,EAAMynB,eAAe/tB,IAAI,SAAA2uB,GAE9C,OAD0BF,EAAYzuB,IAAI,SAAA4H,GAAA,OAAAA,EAAG/I,KACpB8rB,SAASgE,EAAO9vB,IAAlC+vB,SAA6CD,OAAQroB,MAAOmoB,EAAY,GAAGnoB,QAAUqoB,IAG9F9mB,EAAO,cAAe6mB,GACtBxiB,EAAS,yBATgE,wBAAAjH,EAAAW,SAAAhB,KAAAoD,IAW3E6mB,oBAZO,SAAA9mB,IAaLF,EAD8BE,EAAVF,QACb,mBAEHinB,aAfC,SAAAxmB,EAewC2B,GAAM,OAAAjC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAK,EAAA5B,EAAAyoB,EAAA3mB,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAhC0C,EAAgCS,EAAhCT,OAAQK,EAAwBI,EAAxBJ,QAAS5B,EAAegC,EAAfhC,MACpCuB,EAAO,eAAe,GAD6B3B,EAAAf,KAAA,EAE5BwoB,GAAarnB,EAAM0nB,YAAa/jB,EAAM3D,EAAMmD,SAAUvB,EAAQrD,SAAUqD,EAAQpD,OAFpD,OAAAiqB,EAAA7oB,EAAAP,KAE3CyC,EAF2C2mB,EAE3C3mB,KAERP,EAAO,cAAeO,EAAKiY,SAC3BxY,EAAO,oBAAqBO,EAAKwQ,OACjC/Q,EAAO,WAAYoC,GACnBpC,EAAO,eAAe,GAP6B,yBAAA3B,EAAAN,SAAAK,KAAA+B,IAS/CgnB,sBAxBC,SAAAxmB,GAwBiD,OAAAR,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAA7E,EAAAK,EAAA5B,EAAA2oB,EAAA7mB,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAA1B0C,EAA0BW,EAA1BX,OAAQK,EAAkBM,EAAlBN,QAAS5B,EAASkC,EAATlC,MAC7CuB,EAAO,eAAe,GADgC8E,EAAAxH,KAAA,EAE/BwoB,GAAa,OAAQrnB,EAAM8C,YAAa9C,EAAMmD,SAAUvB,EAAQrD,SAAUqD,EAAQpD,OAFnD,OAAAmqB,EAAAtiB,EAAAhH,KAE9CyC,EAF8C6mB,EAE9C7mB,KAERP,EAAO,yBAA0BO,EAAKwQ,OACtC/Q,EAAO,eAAe,GALgC,wBAAA8E,EAAA/G,SAAA8G,KAAA1E,IAOxDknB,iBA/BO,SAAAxmB,EA+BsBiY,IAC3B9Y,EADmCa,EAAlBb,QACV,qBAAsB8Y,IAE/BwO,iBAlCO,SAAAvmB,EAAAE,GAkCwE,IAA5DjB,EAA4De,EAA5Df,OAAQK,EAAoDU,EAApDV,QAAS5B,EAA2CsC,EAA3CtC,MAAO8oB,EAAoCxmB,EAApCwmB,UAAepwB,EAAqB8J,EAArB9J,QAAS6uB,EAAY/kB,EAAZ+kB,UD3ChE,SAAPla,EAAAC,EAAAG,EAAAC,GAAAqb,GAAA1qB,MAAAZ,KAAAzE,WC4CMgwB,CAAWtwB,EAAS6uB,EAAU3lB,EAAQrD,SAAUqD,EAAQpD,OAExD,IAAMyqB,GACJrd,MACEC,OAAQid,EAAUld,KAAKC,OACvBqd,SAAUJ,EAAUld,KAAKvO,KACzB9E,GAAIuwB,EAAUld,KAAKrT,IAErBG,QAASA,EACTywB,YAAY,IAAI7S,MAAO8S,WAWzB7nB,EAAO,cARgBvB,EAAMynB,eAAe/tB,IAAI,SAAA2uB,GAK9C,OAJIA,EAAO9vB,KAAOgvB,IAChBc,EAAOgB,SAAP/vB,OAAA0Z,KAAmBqV,EAAOgB,QAAOJ,KAG5BZ,MAKXiB,iBAzDO,SAAA5mB,EAAAyD,GAyD4D,IAAhD5E,EAAgDmB,EAAhDnB,OAAQK,EAAwCc,EAAxCd,QAAS5B,EAA+B0C,EAA/B1C,MAAWwnB,EAAoBrhB,EAApBqhB,OAAQD,EAAYphB,EAAZohB,UDxDpD,SAAP5Z,EAAA6B,EAAAC,EAAAC,GAAA6Z,GAAAlrB,MAAAZ,KAAAzE,WCyDMwwB,CAAWhC,EAAQD,EAAU3lB,EAAQrD,SAAUqD,EAAQpD,OAUvD+C,EAAO,cARgBvB,EAAMynB,eAAe/tB,IAAI,SAAA2uB,GAK9C,OAJIA,EAAO9vB,KAAOgvB,IAChBc,EAAOgB,MAAQhB,EAAOgB,MAAMhP,OAAO,SAAAoP,GAAI,OAAIA,EAAKlxB,KAAOivB,KAGlDa,QChGR,SAAeqB,GAAtBxrB,EAAAC,GAAA,OAAAwrB,GAAAtrB,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAAgCC,EAAUC,GAA1C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,yCACHC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BASA,SAAesrB,GAAtBpqB,EAAAC,GAAA,OAAAoqB,GAAAxrB,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAA6BpB,EAAUC,GAAvC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BACHC,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BASA,SAAemqB,GAAtBhd,EAAAC,EAAAC,GAAA,OAAA+c,GAAA1rB,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAA8B4jB,EAASzrB,EAAUC,GAAjD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BACHC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQkoB,aANL,cAAA3jB,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BAUA,SAAe6jB,GAAtBhd,EAAAI,EAAAC,GAAA,OAAA4c,GAAA7rB,MAAAZ,KAAAzE,gDAAO,SAAA0N,EAA8BsjB,EAASzrB,EAAUC,GAAjD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BACHC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQkoB,aANL,cAAArjB,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BAUP,IAAMvH,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,46BCtCpE,IAiIe0M,IAhIbxM,OACE4C,UAAW,WACXunB,gBAAgB,EAChBC,MACAC,eACArc,SAAS,EACTsc,cACA9d,YACA+d,oBAEF7pB,WACE8pB,uBAAwB,SAACxqB,GACvBA,EAAMuqB,oBAERE,4BAA6B,SAACzqB,EAADqB,GAAoC,IAA1BqpB,EAA0BrpB,EAA1BqpB,MAAOnmB,EAAmBlD,EAAnBkD,IAAKomB,EAActpB,EAAdspB,QACjD,GAAI/Z,KAAExQ,IAAIJ,EAAMuqB,iBAAkBG,EAAOnmB,EAAKomB,EAAQ,KAAM,KAAAC,EACN5qB,EAAMuqB,gBAAgBG,GAAOnmB,GADvBsmB,EACjDF,EAAQ,GAAeJ,GAD0BK,EAAAC,GAAA9kB,IAAA6kB,GAAAC,GAAAnxB,IAAAoxB,MAE1D9qB,EAAMuqB,gBAAkBA,IAG5BjnB,eAAgB,SAACtD,EAAOuD,GACtBvD,EAAM4C,UAAYW,GAEpBwnB,gBAAiB,SAAC/qB,EAAO8B,GACvB9B,EAAMqqB,YAAcvoB,GAEtBoM,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBoiB,WAAY,SAAChrB,EAAOirB,GAClBjrB,EAAMsqB,WAAaW,GAErBC,aAAc,SAAClrB,EAAO8B,GACpB,IAAMqpB,EAAcrpB,EAAK8F,OAAO,SAACC,EAADvG,GAAgC,IAAxBopB,EAAwBppB,EAAxBopB,MAAOnmB,EAAiBjD,EAAjBiD,IAAKC,EAAYlD,EAAZkD,MAC5C4mB,EAAcC,aAAe9mB,EAAKC,IAClCA,MAAO8mB,aAAe/mB,EAAKC,IAC7B+mB,aAAY/mB,EAAOD,GAEvB,OADAsD,EAAI6iB,GAAS7iB,EAAI6iB,GAAJc,SAAkB3jB,EAAI6iB,OAAtBxmB,OAA+BK,EAAM6mB,IAArClnB,OAAwDK,EAAM6mB,GACpEvjB,OAGH4jB,EAAgB3pB,EAAK8F,OAAO,SAACC,EAAD7F,GAA6B,IAArB0oB,EAAqB1oB,EAArB0oB,MAAOnmB,EAAcvC,EAAduC,IAAK6lB,EAASpoB,EAATooB,GAIpD,OAHIA,IACFviB,EAAI6iB,GAAS7iB,EAAI6iB,GAAJc,SAAkB3jB,EAAI6iB,OAAtBxmB,OAA+BK,EAAM6lB,IAArClmB,OAA+CK,EAAM6lB,IAE7DviB,OAGT7H,EAAMwM,SAAW2e,EACjBnrB,EAAMoqB,GAAKqB,GAEbC,YAAa,SAAC1rB,EAAO4I,GACnB5I,EAAMmqB,eAAiBvhB,GAEzB+iB,gBAAiB,SAAC3rB,EAADoC,GAA+C,IAArCsoB,EAAqCtoB,EAArCsoB,MAAOnmB,EAA8BnC,EAA9BmC,IAAKqnB,EAAyBxpB,EAAzBwpB,MAAOpnB,EAAkBpC,EAAlBoC,MAAOiB,EAAWrD,EAAXqD,KAC7ComB,GAAkB7rB,EAAMuqB,gBAAgBG,IAAmB,0BAARnmB,GAA6C,aAAVqnB,EAArE1nB,OAChBK,EADgBL,OACP0nB,GAASnmB,EAAMjB,KADRN,OAEhBK,EAFgBinB,SAELxrB,EAAMuqB,gBAAgBG,GAAOnmB,IAFxBL,OAEoC0nB,GAASnmB,EAAMjB,MAC1ExE,EAAMuqB,gBAAgBG,GAAtBc,SAAoCxrB,EAAMuqB,gBAAgBG,IAAWmB,IAEvEC,aAAc,SAAC9rB,EAAD0C,GAAyC,IAA/BgoB,EAA+BhoB,EAA/BgoB,MAAOnmB,EAAwB7B,EAAxB6B,IAAKqnB,EAAmBlpB,EAAnBkpB,MAAOpnB,EAAY9B,EAAZ8B,MACnCunB,EAAuB,0BAARxnB,GAA6C,aAAVqnB,EAAnC1nB,OACdK,EADcL,OACL0nB,EAAQpnB,IADHN,OAEdK,EAFcinB,SAEHxrB,EAAMwM,SAASke,GAAOnmB,IAFnBL,OAE+B0nB,EAAQpnB,KAC5DxE,EAAMwM,SAASke,GAAfc,SAA6BxrB,EAAMwM,SAASke,IAAWqB,KAG3D5qB,SACQ6qB,cADC,SAAAvlB,GACkC,OAAA/E,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAK,EAAAC,EAAAwoB,EAAAY,EAAA,OAAAxsB,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAnB0C,EAAmBkF,EAAnBlF,OAAQK,EAAW6E,EAAX7E,QAC5BL,EAAO,eAAe,GADiB5C,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAGd+qB,GAAchoB,EAAQrD,SAAUqD,EAAQpD,OAH1B,cAG/BqD,EAH+BlD,EAAAU,KAAAV,EAAAE,KAAA,EAIX6qB,GAAiB9nB,EAAQrD,SAAUqD,EAAQpD,OAJhC,OAI/B6rB,EAJ+B1rB,EAAAU,KAKrCkC,EAAO,kBAAmB8oB,EAAYvoB,MAChCmpB,EAAegB,aAAiB5B,EAAYvoB,MAClDP,EAAO,aAAc0pB,GACrB1pB,EAAO,eAAgBM,EAASC,KAAKkoB,SARArrB,EAAAE,KAAA,wBAAAF,EAAAC,KAAA,GAAAD,EAAAyG,GAAAzG,EAAA,SAUrC4C,EAAO,eAAe,GACtBA,EAAO,iBAAkB,UACzBA,EAAO,eAAe,GAZe5C,EAAAS,OAAA,kBAevCmC,EAAO,eAAe,GACtBA,EAAO,eAAe,GAhBiB,yBAAA5C,EAAAW,SAAAhB,EAAA,iBAAAoD,IAkBnCwqB,cAnBC,SAAAplB,EAmBkCkjB,GAAS,OAAAtoB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAK,EAAAC,EAAAsqB,EAAAzB,EAAAnmB,EAAAomB,EAAA,OAAAlsB,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAA5B0C,EAA4BuF,EAA5BvF,OAAQK,EAAoBkF,EAApBlF,QAAoBhC,EAAAf,KAAA,EAC1CorB,GAAeD,EAASpoB,EAAQrD,SAAUqD,EAAQpD,OADR,cAAAoB,EAAAf,KAAA,EAEzB+qB,GAAchoB,EAAQrD,SAAUqD,EAAQpD,OAFf,OAE1CqD,EAF0CjC,EAAAP,KAAA8sB,EAGhBnC,EAAQ,GAAhCU,EAHwCyB,EAGxCzB,MAAOnmB,EAHiC4nB,EAGjC5nB,IAAKomB,EAH4BwB,EAG5BxB,QACpBppB,EAAO,eAAgBM,EAASC,KAAKkoB,SACrCzoB,EAAO,gBAAiBM,EAASC,KAAKsqB,aACtC7qB,EAAO,+BAAiCmpB,QAAOnmB,MAAKomB,QAASA,QANb,yBAAA/qB,EAAAN,SAAAK,KAAA+B,IAQlD8H,aA3BO,SAAAzC,EA2BkBxD,IACvBhC,EAD4BwF,EAAfxF,QACN,iBAAkBgC,IAErB8oB,cA9BC,SAAA/kB,GA8ByC,OAAA5F,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAAxE,EAAAL,EAAAvB,EAAAgqB,EAAAnoB,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAA1B+C,EAA0B0F,EAA1B1F,QAASL,EAAiB+F,EAAjB/F,OAAQvB,EAASsH,EAATtH,MAC/BgqB,EAAUhtB,OAAOD,KAAKiD,EAAMuqB,iBAAiB3iB,OAAO,SAACC,EAAK6iB,GAC9D,SAAApxB,OAAA0Z,KAAWnL,GAAXmL,KAAmBsZ,aAAoB5B,EAAO1qB,EAAMuqB,gBAAgBG,GAAQ1qB,EAAMwM,iBAFtCnG,EAAAxH,KAAA,EAKxCirB,GAAeE,EAASpoB,EAAQrD,SAAUqD,EAAQpD,OALV,cAAA6H,EAAAxH,KAAA,EAMvB+qB,GAAchoB,EAAQrD,SAAUqD,EAAQpD,OANjB,OAMxCqD,EANwCwE,EAAAhH,KAO9CkC,EAAO,eAAgBM,EAASC,KAAKkoB,SACrCzoB,EAAO,gBAAiBM,EAASC,KAAKsqB,aACtC7qB,EAAO,0BATuC,yBAAA8E,EAAA/G,SAAA8G,KAAA1E,IAWhD6qB,eAzCO,SAAAvkB,EAAAC,GAyCwD,IAA9C1G,EAA8CyG,EAA9CzG,OAAYmpB,EAAkCziB,EAAlCyiB,MAAOnmB,EAA2B0D,EAA3B1D,IAAKqnB,EAAsB3jB,EAAtB2jB,MAAOpnB,EAAeyD,EAAfzD,MAAOiB,EAAQwC,EAARxC,KAEjDlE,EAAO,kBADXgD,GACgCmmB,QAAOnmB,MAAKqnB,QAAOpnB,QAAOiB,SAC1BilB,QAAOnmB,IAAKqnB,EAAOA,MAAO,SAAUpnB,QAAOiB,UAEvE+mB,YA9CC,SAAAhkB,EAAAM,GA8CqE,OAAApH,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA+E,IAAA,IAAAnF,EAAAK,EAAA5B,EAAA0qB,EAAAnmB,EAAAqnB,EAAApnB,EAAAmmB,EAAA8B,EAAA,OAAAhuB,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,UAAxD0C,EAAwDiH,EAAxDjH,OAAQK,EAAgD4G,EAAhD5G,QAAS5B,EAAuCwI,EAAvCxI,MAAW0qB,EAA4B5hB,EAA5B4hB,MAAOnmB,EAAqBuE,EAArBvE,IAAKqnB,EAAgB9iB,EAAhB8iB,MAAOpnB,EAASsE,EAATtE,MACrD,0BAARD,GAA6C,aAAVqnB,EADmC,CAAAjlB,EAAA9H,KAAA,eAElE8rB,EAAU3tB,OAAOD,KAAKiD,EAAMwM,SAASke,GAAOnmB,IAAM8V,OAAO,SAAAzP,GAAE,MAAW,aAAPA,IAFGjE,EAAA9H,KAAA,EAGlEorB,KAAkBS,QAAOnmB,MAAKmoB,QAAQ,EAAM/B,YAAY/oB,EAAQrD,SAAUqD,EAAQpD,OAHhB,OAAAmI,EAAA9H,KAAA,mBAIvD,mBAAR0F,GAAsC,cAAVqnB,EAJmC,CAAAjlB,EAAA9H,KAAA,gBAKlE4tB,EAAuB,4BAAVjoB,EAAsC,uBAAyB,0BALVmC,EAAA9H,KAAA,GAMlEorB,KAAkBS,QAAOnmB,IAAKkoB,EAAYC,QAAQ,IAAS9qB,EAAQrD,SAAUqD,EAAQpD,OANnB,QAStE+C,EAAO,eADXgD,GAC6BmmB,QAAOnmB,MAAKqnB,QAAOpnB,UACnBkmB,QAAOnmB,IAAKqnB,EAAOA,MAAO,QAASpnB,UAVU,yBAAAmC,EAAArH,SAAAoH,KAAAhF,MClHzE,SAAeirB,GAAtBzuB,EAAAC,EAAAqB,EAAAC,EAAAqN,GAAA,OAAA8f,GAAAvuB,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAAiC/F,EAAIs0B,EAAWC,EAAYvuB,EAAUC,GAAtE,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,+BAAA1F,OAAiCf,GACpC0G,OAAQ,MACRC,QAASC,GAAYX,GACrBsD,MAAQ+qB,YAAWC,gBANhB,cAAAnuB,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAUA,SAAeyuB,GAAtBhgB,EAAAC,EAAAC,GAAA,OAAA+f,GAAA3uB,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAA4BpH,EAAIgG,EAAUC,GAA1C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,+BAAA1F,OAAiCf,GACpC0G,OAAQ,SACRC,QAASC,GAAYX,KALlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BASA,SAAestB,GAAtB5f,EAAAC,EAAAG,GAAA,OAAAyf,GAAA7uB,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAA2B7N,EAAIgG,EAAUC,GAAzC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,+BAAA1F,OAAiCf,GACpC0G,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAA6H,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BASA,SAAe+mB,GAAtBzf,GAAA,OAAA0f,GAAA/uB,MAAAZ,KAAAzE,gDAAO,SAAA0N,EAAArF,GAAA,IAAAgsB,EAAAC,EAAA/uB,EAAAC,EAAA2E,EAAAQ,EAAA,OAAAlF,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAA+BwuB,EAA/BhsB,EAA+BgsB,QAASC,EAAxCjsB,EAAwCisB,UAAW/uB,EAAnD8C,EAAmD9C,SAAUC,EAA7D6C,EAA6D7C,MAAO2E,EAApE9B,EAAoE8B,SAAUQ,EAA9EtC,EAA8EsC,KAA9EgD,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,uCAAA1F,OAAyC+zB,EAAzC,gBAAA/zB,OAA+Dg0B,EAA/D,UAAAh0B,OAAiFqK,EAAjF,eAAArK,OAAmG6J,GACtGlE,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAmI,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BASA,SAAe6mB,GAAtB5f,EAAA6B,EAAAC,GAAA,OAAA+d,GAAAnvB,MAAAZ,KAAAzE,gDAAO,SAAAgO,EAAkCmD,EAAU5L,EAAUC,GAAtD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,cAAAsI,EAAAtI,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAKmL,EAAQ,qCAAA7Q,OAAwC6Q,GAAxC,2BACblL,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAA2I,EAAA/H,OAAA,SAAA+H,EAAA9H,MAAA,wBAAA8H,EAAA7H,SAAA0H,6BASA,SAAeymB,GAAtB/d,GAAA,OAAAge,GAAArvB,MAAAZ,KAAAzE,gDAAO,SAAAuO,EAAAjG,GAAA,IAAA6I,EAAA5L,EAAAC,EAAA2E,EAAAQ,EAAA,OAAAlF,EAAAnG,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,cAAyCsL,EAAzC7I,EAAyC6I,SAAU5L,EAAnD+C,EAAmD/C,SAAUC,EAA7D8C,EAA6D9C,MAAO2E,EAApE7B,EAAoE6B,SAAUQ,EAA9ErC,EAA8EqC,KAA9E+D,EAAA7I,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,gCAAA1F,OAAkC6Q,EAAlC,mBAAA7Q,OAA4DqK,EAA5D,eAAArK,OAA8E6J,GACjFlE,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAkJ,EAAAtI,OAAA,SAAAsI,EAAArI,MAAA,wBAAAqI,EAAApI,SAAAiI,6BASP,IAAMpI,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBCuIrD8I,IA/Lb5I,OACE2tB,iBACAC,mBACA5f,SAAS,EACT6f,gBACAC,oBACEC,iBAAkB,GAClBC,WAAW,EACXC,aAAa,EACbtqB,KAAM,EACNR,SAAU,GACV+qB,eAAe,EACfC,WAAW,GAEbC,qBAEF1tB,WACE2tB,8BAA+B,SAACruB,EAAOwE,GACrCxE,EAAM8tB,mBAAmBG,YAAczpB,GAEzC8pB,4BAA6B,SAACtuB,EAAOwE,GACnCxE,EAAM8tB,mBAAmBE,UAAYxpB,GAEvC+pB,YAAa,SAACvuB,EAAO2D,GACnB3D,EAAM8tB,mBAAmBnqB,KAAOA,GAElC6qB,yBAA0B,SAACxuB,EAAOmK,GAChCnK,EAAM8tB,mBAAmBC,iBAAmB5jB,GAE9CskB,WAAY,SAACzuB,EAAO4I,GAClB5I,EAAM2tB,cAAgB/kB,GAExB8lB,yBAA0B,SAAC1uB,EAAO2kB,GAChC3kB,EAAM4tB,gBAAkBjJ,GAE1BgK,cAAe,SAAC3uB,EAAO2kB,GACrB3kB,EAAM4tB,mBAANt0B,OAAA0Z,KAA4BhT,EAAM4tB,iBAAlC5a,KAAsD2R,KAExDiK,eAAgB,SAAC5uB,EAAO4I,GACtB5I,EAAM8tB,mBAAmBK,UAAYvlB,GAEvCimB,mBAAoB,SAAC7uB,EAAO4I,GAC1B5I,EAAM8tB,mBAAmBI,cAAgBtlB,GAE3CsF,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBkmB,sBAAuB,SAAC9uB,EAAO8sB,GAC7B9sB,EAAMouB,iBAAmBtB,GAE3BiC,kBAAmB,SAAC/uB,EAAO4L,GACzB5L,EAAM6tB,aAAejiB,IAGzBzK,SACQ6tB,kBADC,SAAA3tB,EAAAC,GAC4I,OAAAI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAsH,EAAAhE,EAAAqtB,EAAAC,EAAApC,EAAAqC,EAAAC,EAAA/B,EAAAI,EAAA,OAAAhvB,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAzH+G,EAAyHvE,EAAzHuE,SAAUhE,EAA+GP,EAA/GO,QAAaqtB,EAAkG3tB,EAAlG2tB,SAAUC,EAAwF5tB,EAAxF4tB,YAAapC,EAA2ExrB,EAA3EwrB,WAAYqC,EAA+D7tB,EAA/D6tB,kBAAmBC,EAA4C9tB,EAA5C8tB,OAAQ/B,EAAoC/rB,EAApC+rB,QAASI,EAA2BnsB,EAA3BmsB,wBAA2B9uB,EAAAE,KAAA,EAC3I8tB,GAAkBsC,EAAUC,EAAapC,EAAYlrB,EAAQrD,SAAUqD,EAAQpD,OAD4D,OAEvH,IAAtB2wB,EACFvpB,EAAS,eAAgBupB,GAChBC,EAAOn2B,OAAS,EACzB2M,EAAS,qBAAuBwpB,SAAQ/B,YAC/BI,EACT7nB,EAAS,2BAETA,EAAS,iCAAkCqpB,GAToG,wBAAAtwB,EAAAW,SAAAhB,KAAAoD,IAYnJ2tB,WAbO,SAAA5tB,GAagB,IAAVF,EAAUE,EAAVF,OACXA,EAAO,2BAA4B,IACnCA,EAAO,+BACPA,EAAO,+BAA+B,GACtCA,EAAO,iCAAiC,GACxCA,EAAO,kBAAkB,GACzBA,EAAO,cAAe,IAElB+tB,aArBC,SAAAttB,EAAAE,GAqB8G,OAAAR,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAAiG,EAAAhE,EAAAqtB,EAAAE,EAAAC,EAAA/B,EAAAI,EAAA,OAAAhvB,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAhG+G,EAAgG5D,EAAhG4D,SAAUhE,EAAsFI,EAAtFJ,QAAaqtB,EAAyE/sB,EAAzE+sB,SAAUE,EAA+DjtB,EAA/DitB,kBAAmBC,EAA4CltB,EAA5CktB,OAAQ/B,EAAoCnrB,EAApCmrB,QAASI,EAA2BvrB,EAA3BurB,wBAA2B7tB,EAAAf,KAAA,EAC7GkuB,GAAakC,EAAUrtB,EAAQrD,SAAUqD,EAAQpD,OAD4D,OAEzF,IAAtB2wB,EACFvpB,EAAS,eAAgBupB,GAChBC,EAAOn2B,OAAS,EACzB2M,EAAS,qBAAuBwpB,SAAQ/B,YAC/BI,GACT7nB,EAAS,2BAPwG,wBAAAhG,EAAAN,SAAAK,KAAA+B,IAU/G6tB,YA/BC,SAAAntB,EA+BiD7J,GAAI,OAAAmJ,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAA7E,EAAAqE,EAAAhE,EAAA5B,EAAA4I,EAAA,OAAAnK,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAxC0C,EAAwCa,EAAxCb,OAAQqE,EAAgCxD,EAAhCwD,SAAUhE,EAAsBQ,EAAtBR,QAAS5B,EAAaoC,EAAbpC,MAC7CuB,EAAO,eAAe,GADoC8E,EAAAxH,KAAA,EAErCouB,GAAY10B,EAAIqJ,EAAQrD,SAAUqD,EAAQpD,OAFL,OAEpDoK,EAFoDvC,EAAAhH,KAI1DkC,EAAO,aAAcqH,EAAO9G,MAC5BP,EAAO,oBAAqBqH,EAAO9G,KAAK0tB,SACxCjuB,EAAO,eAAe,GACtBqE,EAAS,qBAAuBwpB,OAAQpvB,EAAM2tB,cAAc6B,QAAQj3B,GAAI80B,SAAS,IAPvB,wBAAAhnB,EAAA/G,SAAA8G,KAAA1E,IAS5D+tB,+BAxCO,SAAAntB,EAwC8D/J,GAAI,IAAxCgJ,EAAwCe,EAAxCf,OAAQqE,EAAgCtD,EAAhCsD,SAAUhE,EAAsBU,EAAtBV,QAAsBU,EAAbtC,MAC1DuB,EAAO,eAAe,GACtB0rB,GAAY10B,EAAIqJ,EAAQrD,SAAUqD,EAAQpD,OACvCqW,KAAK,SAAAjM,GAAM,OAAIhD,EAAS,YAAagD,EAAO9G,QAC/CP,EAAO,eAAe,IAElBmuB,mBA9CC,SAAAltB,EA8CuC2H,GAAU,OAAAzI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA+E,IAAA,IAAAnF,EAAAK,EAAA+tB,EAAA7tB,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAA7B0C,EAA6BiB,EAA7BjB,OAAQK,EAAqBY,EAArBZ,QACjCL,EAAO,eAAe,GADgCoF,EAAA9H,KAAA,EAE/B0uB,GAAmBpjB,EAAUvI,EAAQrD,SAAUqD,EAAQpD,OAFxB,OAAAmxB,EAAAhpB,EAAAtH,KAE9CyC,EAF8C6tB,EAE9C7tB,KACRP,EAAO,wBAAyBO,EAAK8tB,mBACrCruB,EAAO,eAAe,GAJgC,wBAAAoF,EAAArH,SAAAoH,KAAAhF,IAMlDmuB,wBApDC,SAAAntB,GAoDwE,OAAAhB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAqF,IAAA,IAAAzF,EAAAqE,EAAAhE,EAAA5B,EAAA8oB,EAAAnE,EAAA,OAAAlmB,EAAAnG,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,UAA/C0C,EAA+CmB,EAA/CnB,OAAQqE,EAAuClD,EAAvCkD,SAAUhE,EAA6Bc,EAA7Bd,QAAS5B,EAAoB0C,EAApB1C,MAAO8oB,EAAapmB,EAAbomB,UAChEvnB,EAAO,eAAe,GACtBqE,EAAS,qBAAsB5F,EAAM8tB,mBAAmBC,kBACN,KAA9C/tB,EAAM8tB,mBAAmBC,iBAHgD,CAAA5mB,EAAAtI,KAAA,QAI3E0C,EAAO,+BAJoE4F,EAAAtI,KAAA,mBAM1DmB,EAAM8tB,mBAAmBC,mBAAqBjF,EAAUld,KAAKrN,SANH,CAAA4I,EAAAtI,KAAA,gBAAAsI,EAAAtI,KAAA,GAOjEsuB,IAEJE,QAASrtB,EAAM8tB,mBAAmBG,YAClCX,UAAWttB,EAAM8tB,mBAAmBE,UACpCzvB,SAAUqD,EAAQrD,SAClBC,MAAOoD,EAAQpD,MACf2E,SAAUnD,EAAM8tB,mBAAmB3qB,SACnCQ,KAAM3D,EAAM8tB,mBAAmBnqB,OAdsC,QAAAwD,EAAA/B,GAAA+B,EAAA9H,KAAA8H,EAAAtI,KAAA,wBAAAsI,EAAAtI,KAAA,GAgBjE4uB,IAEJtjB,SAAUnK,EAAM8tB,mBAAmBC,iBACnCxvB,SAAUqD,EAAQrD,SAClBC,MAAOoD,EAAQpD,MACf2E,SAAUnD,EAAM8tB,mBAAmB3qB,SACnCQ,KAAM3D,EAAM8tB,mBAAmBnqB,OAtBsC,QAAAwD,EAAA/B,GAAA+B,EAAA9H,KAAA,QAMrEslB,EANqExd,EAAA/B,GAwB3E7D,EAAO,2BAA4BojB,EAAS7iB,MACxC6iB,EAAS7iB,KAAK7I,OAAS+G,EAAM8tB,mBAAmB3qB,UAClD5B,EAAO,kBAAkB,GA1BgD,QA6B7EA,EAAO,eAAe,GA7BuD,yBAAA4F,EAAA7H,SAAA0H,KAAAtF,IA+BzEouB,4BAnFC,SAAA3pB,GAmFkE,OAAAzE,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA4F,IAAA,IAAAhG,EAAAK,EAAAknB,EAAA9oB,EAAA2kB,EAAA,OAAAlmB,EAAAnG,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,UAArC0C,EAAqC4E,EAArC5E,OAAQK,EAA6BuE,EAA7BvE,QAASknB,EAAoB3iB,EAApB2iB,UAAW9oB,EAASmG,EAATnG,MAC9DuB,EAAO,sBAAsB,GACZvB,EAAM8tB,mBAAmBC,mBAAqBjF,EAAUld,KAAKrN,SAFP,CAAAmJ,EAAA7I,KAAA,eAAA6I,EAAA7I,KAAA,EAG7DsuB,IAEJE,QAASrtB,EAAM8tB,mBAAmBG,YAClCX,UAAWttB,EAAM8tB,mBAAmBE,UACpCzvB,SAAUqD,EAAQrD,SAClBC,MAAOoD,EAAQpD,MACf2E,SAAUnD,EAAM8tB,mBAAmB3qB,SACnCQ,KAAM3D,EAAM8tB,mBAAmBnqB,OAVkC,OAAA+D,EAAAtC,GAAAsC,EAAArI,KAAAqI,EAAA7I,KAAA,uBAAA6I,EAAA7I,KAAA,GAY7D4uB,IAEJtjB,SAAUnK,EAAM8tB,mBAAmBC,iBACnCxvB,SAAUqD,EAAQrD,SAClBC,MAAOoD,EAAQpD,MACf2E,SAAUnD,EAAM8tB,mBAAmB3qB,SACnCQ,KAAM3D,EAAM8tB,mBAAmBnqB,OAlBkC,QAAA+D,EAAAtC,GAAAsC,EAAArI,KAAA,QAEjEslB,EAFiEjd,EAAAtC,GAoBvE7D,EAAO,gBAAiBojB,EAAS7iB,MACjCP,EAAO,sBAAsB,GACzBojB,EAAS7iB,KAAK7I,OAAS+G,EAAM8tB,mBAAmB3qB,UAClD5B,EAAO,kBAAkB,GAvB4C,yBAAAmG,EAAApI,SAAAiI,KAAA7F,IA0BzEquB,4BA7GO,SAAAvpB,EA6G2ChC,GAAO,IAA3BjD,EAA2BiF,EAA3BjF,OAAQqE,EAAmBY,EAAnBZ,SACpCA,EAAS,mBAAoB,GAC7BrE,EAAO,kBAAkB,GAEzBA,EAAO,gCAAiCiD,GACxCoB,EAAS,4BAEXoqB,0BApHO,SAAAvpB,EAoHyCjC,GAAO,IAA3BjD,EAA2BkF,EAA3BlF,OAAQqE,EAAmBa,EAAnBb,SAClCA,EAAS,mBAAoB,GAC7BrE,EAAO,kBAAkB,GAEzBA,EAAO,8BAA+BiD,GACtCoB,EAAS,4BAEXqqB,mBA3HO,SAAAnpB,EA2HwBqD,GAAU,IAApB5I,EAAoBuF,EAApBvF,OACnBA,EAAO,2BAA4B4I,GACnC5I,EAAO,kBAAkB,IAE3B2uB,iBA/HO,SAAAnpB,EA+HsBpD,IAC3BpC,EADiCwF,EAAhBxF,QACV,cAAeoC,IAExBwsB,UAlIO,SAAA7oB,EAkIesB,GAAQ,IAAlBrH,EAAkB+F,EAAlB/F,OACVA,EAAO,aAAcqH,GACrBrH,EAAO,oBAAqBqH,EAAO4mB,yjCC7LzC,IAgKe9jB,IA/Jb1L,OACEyL,gBACAE,gBAEFjL,WACE0vB,iBAAkB,SAACpwB,EAAOihB,GACpBjhB,EAAMyL,aAAakW,KAAK,SAAA0O,GAAC,OAAIA,EAAEzY,OAASqJ,EAAKrJ,QACjD5X,EAAMyL,aAAaF,KACjBvO,OAAOszB,UAAWrP,GAChBrL,MAAOqL,EAAK/F,KAAKtF,OAAS,cAIhC2a,gBAAiB,SAACvwB,EAAOihB,GACnBjhB,EAAM2L,YAAY0Y,SAASpD,EAAK5jB,OAC/B4jB,EAAK/F,KAAKuJ,SACbzkB,EAAM2L,YAAYJ,KAAK0V,EAAK5jB,OAIhCmzB,iBAAkB,SAACxwB,EAAOihB,GAAS,IAAAb,EAAAC,EAAAoQ,GACZzwB,EAAMyL,aAAailB,WADP,IACjC,IAAArQ,EAAApJ,MAAAmJ,EAAAC,EAAAnoB,KAAAqoB,MAAmD,KAAAoQ,EAAAC,KAAAxQ,EAAA5b,MAAA,GAAvCuS,EAAuC4Z,EAAA,GACjD,GADiDA,EAAA,GAC3C/Y,OAASqJ,EAAKrJ,KAAM,CACxB5X,EAAMyL,aAAaolB,OAAO9Z,EAAG,GAC7B,QAJ6B,MAAAyJ,GAAAH,EAAAzjB,EAAA4jB,GAAA,QAAAH,EAAAI,MAQnCqQ,gBAAiB,SAAC9wB,EAAOihB,GAAS,IAAAL,EAAAC,EAAA4P,GAChBzwB,EAAM2L,aADU,IAChC,IAAAkV,EAAA5J,MAAA2J,EAAAC,EAAA3oB,KAAAqoB,MAAmC,KAAxBxJ,EAAwB6J,EAAApc,MACjC,GAAIuS,IAAMkK,EAAK5jB,KAAM,CACnB,IAAM4d,EAAQjb,EAAM2L,YAAYolB,QAAQha,GACxC/W,EAAM2L,YAAYklB,OAAO5V,EAAO,GAChC,QAL4B,MAAAuF,GAAAK,EAAAjkB,EAAA4jB,GAAA,QAAAK,EAAAJ,MAUlCuQ,yBAA0B,SAAChxB,EAAOihB,GAChCjhB,EAAMyL,aAAezL,EAAMyL,aAAa4O,OAAO,SAAAgW,GAC7C,OAAOA,EAAEnV,KAAK+E,OAASoQ,EAAEzY,OAASqJ,EAAKrJ,QAG3CqZ,wBAAyB,SAACjxB,EAAOihB,GAAS,IAAAiQ,EAAAC,EAAAV,GACxBzwB,EAAM2L,aADkB,IACxC,IAAAwlB,EAAAla,MAAAia,EAAAC,EAAAj5B,KAAAqoB,MAAmC,KAAxBxJ,EAAwBma,EAAA1sB,MACjC,GAAIuS,IAAMkK,EAAK5jB,KAAM,CACnB,IAAM4d,EAAQjb,EAAM2L,YAAYolB,QAAQha,GACxC/W,EAAM2L,YAAc3L,EAAM2L,YAAYkW,MAAM5G,EAAOA,EAAQ,GAC3D,QALoC,MAAAuF,GAAA2Q,EAAAv0B,EAAA4jB,GAAA,QAAA2Q,EAAA1Q,MAU1C2Q,sBAAuB,SAAApxB,GAErB,IAAMmf,EAAYnf,EAAMyL,aAAa4O,OAAO,SAAAwD,GAAG,OAAIA,EAAI3C,KAAK+E,QAC5DjgB,EAAMyL,aAAe0T,GAEvBkS,qBAAsB,SAAArxB,GACpBA,EAAM2L,gBAGR2lB,oBAAqB,SAACtxB,EAAOihB,GAAS,IAAAsQ,EAAAC,EAAAf,GACtBzwB,EAAMyL,cADgB,IACpC,IAAA+lB,EAAAva,MAAAsa,EAAAC,EAAAt5B,KAAAqoB,MAAkC,KAAzB8P,EAAyBkB,EAAA/sB,MAChC,GAAI6rB,EAAEzY,OAASqJ,EAAKrJ,KAAM,CACxByY,EAAIrzB,OAAOszB,OAAOD,EAAGpP,GACrB,QAJgC,MAAAT,GAAAgR,EAAA50B,EAAA4jB,GAAA,QAAAgR,EAAA/Q,OAUxCtf,SACEswB,QADO,SAAApwB,EACe4f,GAAM,IAAlBrb,EAAkBvE,EAAlBuE,SACRA,EAAS,iBAAkBqb,GAC3Brb,EAAS,gBAAiBqb,IAE5ByQ,eALO,SAAApwB,EAKoB2f,IACzB1f,EAD+BD,EAAhBC,QACR,mBAAoB0f,IAE7B0Q,cARO,SAAAlwB,EAQmBwf,IACxB1f,EAD8BE,EAAhBF,QACP,kBAAmB0f,IAG5B2Q,QAZO,SAAA5vB,EAYsBif,GAAM,IAAzBrb,EAAyB5D,EAAzB4D,SAAU5F,EAAegC,EAAfhC,MAClB,OAAO,IAAIskB,QAAQ,SAAArnB,GACjB2I,EAAS,iBAAkBqb,GAC3Brb,EAAS,gBAAiBqb,GAC1BhkB,GACEwO,aAAcuH,KAAIhT,EAAMyL,cACxBE,YAAaqH,KAAIhT,EAAM2L,kBAI7BkmB,eAtBO,SAAA3vB,EAsB2B+e,GAAM,IAAvB1f,EAAuBW,EAAvBX,OAAQvB,EAAekC,EAAflC,MACvB,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,mBAAoB0f,GAC3BhkB,EAAQ+V,KAAIhT,EAAMyL,kBAGtBqmB,cA5BO,SAAA1vB,EA4B0B6e,GAAM,IAAvB1f,EAAuBa,EAAvBb,OAAQvB,EAAeoC,EAAfpC,MACtB,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,kBAAmB0f,GAC1BhkB,EAAQ+V,KAAIhT,EAAM2L,iBAItBomB,eAnCO,SAAAzvB,EAmC6B2e,GAAM,IAAzBrb,EAAyBtD,EAAzBsD,SAAU5F,EAAesC,EAAftC,MACzB,OAAO,IAAIskB,QAAQ,SAAArnB,GACjB2I,EAAS,wBAAyBqb,GAClCrb,EAAS,uBAAwBqb,GACjChkB,GACEwO,aAAcuH,KAAIhT,EAAMyL,cACxBE,YAAaqH,KAAIhT,EAAM2L,kBAI7BqmB,sBA7CO,SAAAxvB,EA6CkCye,GAAM,IAAvB1f,EAAuBiB,EAAvBjB,OAAQvB,EAAewC,EAAfxC,MAC9B,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,2BAA4B0f,GACnChkB,EAAQ+V,KAAIhT,EAAMyL,kBAGtBwmB,qBAnDO,SAAAvvB,EAmDiCue,GAAM,IAAvB1f,EAAuBmB,EAAvBnB,OAAQvB,EAAe0C,EAAf1C,MAC7B,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,0BAA2B0f,GAClChkB,EAAQ+V,KAAIhT,EAAM2L,iBAItBumB,YA1DO,SAAA/rB,EA0D0B8a,GAAM,IAAzBrb,EAAyBO,EAAzBP,SAAU5F,EAAemG,EAAfnG,MACtB,OAAO,IAAIskB,QAAQ,SAAArnB,GACjB2I,EAAS,qBAAsBqb,GAC/Brb,EAAS,oBAAqBqb,GAC9BhkB,GACEwO,aAAcuH,KAAIhT,EAAMyL,cACxBE,YAAaqH,KAAIhT,EAAM2L,kBAI7BwmB,mBApEO,SAAA3rB,GAoE+B,IAAjBjF,EAAiBiF,EAAjBjF,OAAQvB,EAASwG,EAATxG,MAC3B,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,yBACPtE,EAAQ+V,KAAIhT,EAAMyL,kBAGtB2mB,kBA1EO,SAAA3rB,GA0E8B,IAAjBlF,EAAiBkF,EAAjBlF,OAAQvB,EAASyG,EAATzG,MAC1B,OAAO,IAAIskB,QAAQ,SAAArnB,GACjBsE,EAAO,wBACPtE,EAAQ+V,KAAIhT,EAAM2L,iBAItB0mB,kBAjFO,SAAAvrB,EAiFuBma,IAC5B1f,EADkCuF,EAAhBvF,QACX,sBAAuB0f,MCxJ7B,SAAeqR,GAAtBp0B,EAAAC,EAAAqB,GAAA,OAAA+yB,GAAAl0B,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA+Bk0B,EAAUC,EAAUl0B,GAAnD,IAAAm0B,EAAA3yB,EAAA,OAAAtB,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACqBC,aACxBC,QAASjG,YAASyF,GAClBS,IAAK,eACLC,OAAQ,OACR6C,MACE6wB,YAAW,WAAAr5B,OAAame,KAAKmb,UAC7BC,cAAa,GAAAv5B,OAAK+pB,OAAOvO,SAASge,OAArB,mBACbC,OAAQ,kCARP,cACCL,EADD/zB,EAAAU,KAYCU,EAAM2yB,EAAY5wB,KAZnBnD,EAAAS,OAAA,SAcEN,aACLC,QAASjG,YAASyF,GAClBS,IAAK,eACLC,OAAQ,OACR6C,MACEkxB,UAAWjzB,EAAIizB,UACfC,cAAelzB,EAAIkzB,cACnBC,WAAY,WACZV,SAAUA,EACVC,SAAUA,MAvBT,wBAAA9zB,EAAAW,SAAAhB,6BA4BA,SAAS60B,GAAY30B,EAAOD,GACjC,OAAOO,aACLC,QAASjG,YAASyF,GAClBS,IAAK,sCACLC,OAAQ,MACRC,QAASV,GAAUqB,cAAA,UAAAvG,OAA2BkF,SCjC3C,SAAe40B,GAAtBl1B,GAAA,OAAAm1B,GAAAh1B,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA2BC,GAA3B,OAAAE,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,qBACHC,OAAQ,QAJL,cAAAN,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BCCP,IAiIesN,IAhIb5L,OACE4L,KAAM,GACNrT,GAAI,GACJqQ,OAAQ,GACR9L,KAAM,GACN0B,MAAOsB,cACPvB,SAAU+0B,cACVj2B,KAAM,GACNwO,OAAQ,GACRC,aAAc,GACdC,SACAC,SACEunB,oBAEFC,aAGF9yB,WACE+yB,SAAU,SAACzzB,EAAOlD,GAChBkD,EAAMlD,KAAOA,GAEf42B,UAAW,SAAC1zB,EAAOxB,GACjBwB,EAAMxB,MAAQA,GAEhBm1B,iBAAkB,SAAC3zB,EAAO8L,GACxB9L,EAAM8L,aAAeA,GAEvB8nB,YAAa,SAAC5zB,EAAOgM,GACnBhM,EAAMgM,QAAUA,GAElByiB,WAAY,SAACzuB,EAAO4I,GAClB5I,EAAM4I,OAASA,GAEjBirB,SAAU,SAAC7zB,EAAO3C,GAChB2C,EAAM3C,KAAOA,GAEfy2B,WAAY,SAAC9zB,EAAO6L,GAClB7L,EAAM6L,OAASA,GAEjBkoB,UAAW,SAAC/zB,EAAO+L,GACjB/L,EAAM+L,MAAQA,GAEhBioB,OAAQ,SAACh0B,EAAOzH,GACdyH,EAAMzH,GAAKA,GAEb07B,cAAe,SAACj0B,EAAOzB,GACrByB,EAAMzB,SAAWA,GAEnB21B,cAAe,SAACl0B,EAAOwzB,GACrBxzB,EAAMwzB,SAAWA,IAIrBryB,SACEgzB,gBADO,SAAA9yB,EAAAC,GACiE,IAAtDC,EAAsDF,EAAtDE,OAAQqE,EAA8CvE,EAA9CuE,SAAc4sB,EAAgClxB,EAAhCkxB,SAAUj0B,EAAsB+C,EAAtB/C,SAAUk0B,EAAYnxB,EAAZmxB,SAC1D,OAAO,IAAInO,QAAQ,SAACrnB,EAASm3B,GAC3B9B,GAAgBE,EAAUC,EAAUl0B,GAAUsW,KAAK,SAAAhT,GACjD,IAAMC,EAAOD,EAASC,KACtBP,EAAO,YAAaO,EAAKuyB,cACzB9yB,EAAO,gBAAiBhD,GACxB+1B,YAASxyB,EAAKuyB,cACdE,YAAYh2B,GACZtB,MACCu3B,MAAM,SAAAC,GACP7uB,EAAS,eAAiBN,QAASmvB,EAAMnvB,UACzC8uB,EAAOK,QAIPC,YAhBC,SAAAjzB,GAgBwC,OAAAC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAqE,EAAA5F,EAAAwzB,EAAA,OAAA/0B,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAA3B0C,EAA2BE,EAA3BF,OAAQqE,EAAmBnE,EAAnBmE,SAAU5F,EAASyB,EAATzB,MAASrB,EAAAE,KAAA,EACtBu0B,GAAYpzB,EAAMzB,UADI,OACvCi1B,EADuC70B,EAAAU,KAG7CkC,EAAO,gBAAiBiyB,EAAS1xB,MACjC8D,EAAS,oBAAqB4tB,EAAS1xB,KAAK6yB,SAASl0B,gBAJR,wBAAA9B,EAAAW,SAAAhB,KAAAoD,IAM/CkzB,YAtBO,SAAA5yB,GAsBwB,IAAjBT,EAAiBS,EAAjBT,OAAQvB,EAASgC,EAAThC,MACpB,OAAO,IAAIskB,QAAQ,SAACrnB,EAASm3B,GAC3BjB,GAAYnzB,EAAMxB,MAAOwB,EAAMzB,UAAUsW,KAAK,SAAAhT,GAC5C,IAAMC,EAAOD,EAASC,KAKjBA,GACHsyB,EAAO,4CAGLtyB,EAAK+yB,SAAW/yB,EAAK+yB,QAAQC,SAC/BvzB,EAAO,aAAc,UAErB6yB,EAXc,uSAchB7yB,EAAO,WAAYO,EAAK0wB,UACxBjxB,EAAO,SAAUO,EAAKvJ,IACtBgJ,EAAO,aAAcO,EAAK+J,QAC1BtK,EAAO,mBAAoB,IAC3BtE,EAAQ4E,KACP2yB,MAAM,SAAAC,GACPL,EAAOK,QAIbM,OAlDO,SAAA7yB,GAkDY,IAAVX,EAAUW,EAAVX,OACPA,EAAO,YAAa,IACpBA,EAAO,gBACPyzB,cACAC,eAEFC,UAxDO,SAAA9yB,GAwDe,IAAVb,EAAUa,EAAVb,OACV,OAAO,IAAI+iB,QAAQ,SAAArnB,GACjBsE,EAAO,YAAa,IACpByzB,cACAC,cACAh4B,OAGEk4B,iBAhEC,SAAA7yB,EAAAE,GAgEiD,OAAAd,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAqE,EAAApH,EAAA,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,OAA/B0C,EAA+Be,EAA/Bf,OAAQqE,EAAuBtD,EAAvBsD,SAAcpH,EAASgE,EAAThE,MAC7C+C,EAAO,YAAa/C,GACpB81B,YAAS91B,GACT+C,EAAO,gBAAiB8hB,OAAOvO,SAASsgB,MACxCb,YAAYlR,OAAOvO,SAASsgB,MAE5BxvB,EAAS,eAN6C,wBAAAhG,EAAAN,SAAAK,KAAA+B,MCtHrD,SAAe2zB,GAAtBn3B,EAAAC,EAAAqB,GAAA,OAAA81B,GAAAj3B,MAAAZ,KAAAzE,gDAAO,SAAAsF,EAA6Bi3B,EAAWh3B,EAAUC,GAAlD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,oCACHC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAA52B,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAUA,SAAek3B,GAAtB/1B,EAAAqN,EAAAC,EAAAC,GAAA,OAAAyoB,GAAAp3B,MAAAZ,KAAAzE,gDAAO,SAAA2G,EAAwB41B,EAAWG,EAAOn3B,EAAUC,GAApD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,6CAAA1F,OAA+Co8B,GAClDz2B,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAA31B,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BAUA,SAAeg2B,GAAtB1oB,EAAAI,EAAAC,EAAAG,EAAAC,GAAA,OAAAkoB,GAAAv3B,MAAAZ,KAAAzE,gDAAO,SAAAoN,EAAgC8iB,EAAU/b,EAAOslB,EAAUl0B,EAAUC,GAArE,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,2BACLC,OAAQ,OACRC,QAASC,GAAYX,GACrBsD,MAAQwK,QAAU4c,WAAU/b,QAAOslB,gBANhC,cAAApsB,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BAUA,SAAeyvB,GAAtBloB,EAAA6B,EAAAC,GAAA,OAAAqmB,GAAAz3B,MAAAZ,KAAAzE,gDAAO,SAAA0N,EAA+B6uB,EAAWh3B,EAAUC,GAApD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,sCACHC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAA5uB,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BAUA,SAAeqvB,GAAtBrmB,EAAAsmB,EAAAC,EAAAC,GAAA,OAAAC,GAAA93B,MAAAZ,KAAAzE,gDAAO,SAAAgO,EAA2BuuB,EAAWG,EAAOn3B,EAAUC,GAAvD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,cAAAsI,EAAAtI,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,6CAAA1F,OAA+Co8B,GAClDz2B,OAAQ,SACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAApuB,EAAA/H,OAAA,SAAA+H,EAAA9H,MAAA,wBAAA8H,EAAA7H,SAAA0H,6BAUA,SAAeovB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAn4B,MAAAZ,KAAAzE,gDAAO,SAAAuO,EAA2BguB,EAAWh3B,EAAUC,GAAhD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,cAAA6I,EAAA7I,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,2BACHC,OAAQ,SACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAA7tB,EAAAtI,OAAA,SAAAsI,EAAArI,MAAA,wBAAAqI,EAAApI,SAAAiI,6BAUA,SAAekvB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAx4B,MAAAZ,KAAAzE,gDAAO,SAAAkP,EAA0BghB,EAAU3qB,EAAUC,GAA9C,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA2J,GAAA,cAAAA,EAAAzJ,KAAAyJ,EAAAxJ,MAAA,cAAAwJ,EAAAxJ,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,uCACHC,OAAQ,MACRC,QAASC,GAAYX,GACrBsD,MAAQonB,cANL,cAAA7gB,EAAAjJ,OAAA,SAAAiJ,EAAAhJ,MAAA,wBAAAgJ,EAAA/I,SAAA4I,6BAUA,SAAe4uB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAA74B,MAAAZ,KAAAzE,gDAAO,SAAAyP,EAAyBlQ,EAAIgG,EAAUC,GAAvC,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAgK,GAAA,cAAAA,EAAA9J,KAAA8J,EAAA7J,MAAA,cAAA6J,EAAA7J,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BAAA1F,OAA8Bf,GACjC0G,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAkK,EAAAtJ,OAAA,SAAAsJ,EAAArJ,MAAA,wBAAAqJ,EAAApJ,SAAAmJ,6BASA,SAAe0uB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAl5B,MAAAZ,KAAAzE,gDAAO,SAAA+P,EAAoCmgB,EAAU3qB,EAAUC,GAAxD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAsK,GAAA,cAAAA,EAAApK,KAAAoK,EAAAnK,MAAA,cAAAmK,EAAAnK,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BAAA1F,OAA8B4vB,EAA9B,gBACHjqB,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAwK,EAAA5J,OAAA,SAAA4J,EAAA3J,MAAA,wBAAA2J,EAAA1J,SAAAyJ,6BASA,SAAeyuB,GAAtBC,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,GAAAx5B,MAAAZ,KAAAzE,gDAAO,SAAAqQ,EAAqC6f,EAAU4O,EAAav5B,EAAUC,GAAtE,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA4K,GAAA,cAAAA,EAAA1K,KAAA0K,EAAAzK,MAAA,cAAAyK,EAAAzK,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BAAA1F,OAA8B4vB,EAA9B,gBACHjqB,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,KAAMg2B,IANH,cAAAxuB,EAAAlK,OAAA,SAAAkK,EAAAjK,MAAA,wBAAAiK,EAAAhK,SAAA+J,6BAUA,SAAe0uB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAA95B,MAAAZ,KAAAzE,gDAAO,SAAA6Q,EAA0BuuB,EAAS75B,EAAUC,GAA7C,IAAAmF,EAAA00B,EAAAr/B,UAAA,OAAAyF,EAAAnG,EAAAoG,KAAA,SAAAqL,GAAA,cAAAA,EAAAnL,KAAAmL,EAAAlL,MAAA,cAAoD8E,EAApD00B,EAAAp/B,OAAA,QAAAC,IAAAm/B,EAAA,GAAAA,EAAA,GAA2D,EAA3DtuB,EAAAlL,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,iCAAA1F,OAAmCqK,EAAnC,aAAArK,OAAmD8+B,GACtDn5B,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAuL,EAAA3K,OAAA,SAAA2K,EAAA1K,MAAA,wBAAA0K,EAAAzK,SAAAuK,6BASA,SAAeyuB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAr6B,MAAAZ,KAAAzE,gDAAO,SAAAuR,EAAqC2e,EAAU3qB,EAAUC,GAAzD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAiM,GAAA,cAAAA,EAAA/L,KAAA+L,EAAA9L,MAAA,cAAA8L,EAAA9L,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BAAA1F,OAA8B4vB,EAA9B,mBACHjqB,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAmM,EAAAvL,OAAA,SAAAuL,EAAAtL,MAAA,wBAAAsL,EAAArL,SAAAiL,6BASA,SAAeouB,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAA16B,MAAAZ,KAAAzE,gDAAO,SAAAiS,EAAkCsqB,EAAWh3B,EAAUC,GAAvD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAwM,GAAA,cAAAA,EAAAtM,KAAAsM,EAAArM,MAAA,cAAAqM,EAAArM,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,gDACHC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAArqB,EAAA9L,OAAA,SAAA8L,EAAA7L,MAAA,wBAAA6L,EAAA5L,SAAA2L,6BAUA,SAAe+tB,GAAtBC,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,GAAAh7B,MAAAZ,KAAAzE,gDAAO,SAAAsgC,EAA2B1pB,EAAOwoB,EAAS75B,EAAUC,GAArD,IAAAmF,EAAA41B,EAAAvgC,UAAA,OAAAyF,EAAAnG,EAAAoG,KAAA,SAAA86B,GAAA,cAAAA,EAAA56B,KAAA46B,EAAA36B,MAAA,cAA4D8E,EAA5D41B,EAAAtgC,OAAA,QAAAC,IAAAqgC,EAAA,GAAAA,EAAA,GAAmE,EAAnEC,EAAA36B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,kCAAA1F,OAAoCsW,EAApC,UAAAtW,OAAkDqK,EAAlD,aAAArK,OAAkE8+B,GACrEn5B,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAg7B,EAAAp6B,OAAA,SAAAo6B,EAAAn6B,MAAA,wBAAAm6B,EAAAl6B,SAAAg6B,6BASA,SAAeG,GAAtBC,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,GAAAz7B,MAAAZ,KAAAzE,gDAAO,SAAA+gC,EAAuBxE,EAAWxV,EAAMxhB,EAAUC,GAAlD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAs7B,GAAA,cAAAA,EAAAp7B,KAAAo7B,EAAAn7B,MAAA,cAAAm7B,EAAAn7B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,+BACLC,OAAQ,MACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,YAAWxV,UANhB,cAAAia,EAAA56B,OAAA,SAAA46B,EAAA36B,MAAA,wBAAA26B,EAAA16B,SAAAy6B,6BAUA,SAAeE,GAAtBC,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,GAAAj8B,MAAAZ,KAAAzE,gDAAO,SAAAuhC,EAAyBhF,EAAWxV,EAAMxhB,EAAUC,GAApD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA87B,GAAA,cAAAA,EAAA57B,KAAA47B,EAAA37B,MAAA,cAAA27B,EAAA37B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,+BACLC,OAAQ,SACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,YAAWxV,UANhB,cAAAya,EAAAp7B,OAAA,SAAAo7B,EAAAn7B,MAAA,wBAAAm7B,EAAAl7B,SAAAi7B,kEAUA,SAAAE,EAAiCliC,EAAIgG,EAAU8uB,EAAS7uB,GAAxD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAg8B,GAAA,cAAAA,EAAA97B,KAAA87B,EAAA77B,MAAA,cAAA67B,EAAA77B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAG,4BAAA1F,OAA8Bf,EAA9B,sBAAAe,OAAqD+zB,GACxDpuB,OAAQ,MACRC,QAASC,GAAYX,KALlB,cAAAk8B,EAAAt7B,OAAA,SAAAs7B,EAAAr7B,MAAA,wBAAAq7B,EAAAp7B,SAAAm7B,6BASA,SAAeE,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAA18B,MAAAZ,KAAAzE,gDAAO,SAAAgiC,EAAkCzF,EAAWh3B,EAAUC,GAAvD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAu8B,GAAA,cAAAA,EAAAr8B,KAAAq8B,EAAAp8B,MAAA,cAAAo8B,EAAAp8B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,mCACLC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAA0F,EAAA77B,OAAA,SAAA67B,EAAA57B,MAAA,wBAAA47B,EAAA37B,SAAA07B,6BAUA,SAAeE,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAj9B,MAAAZ,KAAAzE,gDAAO,SAAAuiC,EAAgChG,EAAWh3B,EAAUC,GAArD,OAAAC,EAAAnG,EAAAoG,KAAA,SAAA88B,GAAA,cAAAA,EAAA58B,KAAA48B,EAAA38B,MAAA,cAAA28B,EAAA38B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,yCACLC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAAiG,EAAAp8B,OAAA,SAAAo8B,EAAAn8B,MAAA,wBAAAm8B,EAAAl8B,SAAAi8B,6BAUA,SAAeE,GAAtBC,EAAAC,EAAAC,GAAA,OAAAC,GAAAx9B,MAAAZ,KAAAzE,gDAAO,SAAA8iC,EAAuCvG,EAAWh3B,EAAUC,GAA5D,OAAAC,EAAAnG,EAAAoG,KAAA,SAAAq9B,GAAA,cAAAA,EAAAn9B,KAAAm9B,EAAAl9B,MAAA,cAAAk9B,EAAAl9B,KAAA,EACQC,aACXC,QAASjG,YAASyF,GAClBS,IAAK,qDACLC,OAAQ,QACRC,QAASC,GAAYX,GACrBsD,MAAQyzB,eANL,cAAAwG,EAAA38B,OAAA,SAAA28B,EAAA18B,MAAA,wBAAA08B,EAAAz8B,SAAAw8B,6BAUP,IAAM38B,GAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,oBC3IrDk8B,IAxDbh8B,OACE2kB,YACAsX,iBAAiB,EACjBrwB,QACAswB,mBACAC,oBAAoB,GAEtBz7B,WACE07B,aAAc,SAACp8B,EAAO2kB,GACpB3kB,EAAM2kB,SAAWA,GAEnB0X,qBAAsB,SAACr8B,EAAO4I,GAC5B5I,EAAMi8B,gBAAkBrzB,GAE1B0zB,SAAU,SAACt8B,EAAO4L,GAChB5L,EAAM4L,KAAOA,GAEf2wB,yBAA0B,SAACv8B,EAAO4I,GAChC5I,EAAMm8B,mBAAqBvzB,GAE7B4zB,qBAAsB,SAACx8B,EAAOk8B,GAC5Bl8B,EAAMk8B,gBAAkBA,IAG5B/6B,SACQs7B,iBADC,SAAAp7B,EAAAC,GACoE,OAAAI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAArD,IAAA,IAAAiD,EAAAqE,EAAAhE,EAAAwtB,EAAA/B,EAAAqP,EAAA,OAAAj+B,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAlD0C,EAAkDF,EAAlDE,OAAQqE,EAA0CvE,EAA1CuE,SAAUhE,EAAgCP,EAAhCO,QAAawtB,EAAmB9tB,EAAnB8tB,OAAQ/B,EAAW/rB,EAAX+rB,QAC9D9rB,EAAO,4BAA4B,GADsC5C,EAAAE,KAAA,EAG9Ci4B,GAAU1H,EAAQxtB,EAAQrD,SAAUqD,EAAQpD,OAHE,OAGnEk+B,EAHmE/9B,EAAAU,KAIzEkC,EAAO,WAAYm7B,EAAa56B,MAChCP,EAAO,4BAA4B,GAEnCqE,EAAS,qBAAuBwpB,SAAQ/B,YAPiC,wBAAA1uB,EAAAW,SAAAhB,KAAAoD,IAS3Ei7B,kBAVO,SAAAl7B,EAAAO,GAU+D,IAAlDT,EAAkDE,EAAlDF,OAAQqE,EAA0CnE,EAA1CmE,SAAUhE,EAAgCH,EAAhCG,QAAawtB,EAAmBptB,EAAnBotB,OAAQ/B,EAAWrrB,EAAXqrB,QACzD9rB,EAAO,wBAAwB,GDyH9B,SAAPq7B,EAAAC,EAAAC,EAAAC,GAAA,OAAAC,GAAA3+B,MAAAZ,KAAAzE,WCvHMikC,CAAkB7N,EAAQxtB,EAAQrD,SAAU8uB,EAASzrB,EAAQpD,OAC1DqW,KAAK,SAAA8P,GAAQ,OAAI/e,EAAS,cAAe+e,EAAS7iB,QAErDP,EAAO,wBAAwB,IAE3B27B,qBAlBC,SAAAh7B,EAAAE,GAkBuD,OAAAV,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAA4B,EAAAK,EAAAsnB,EAAAwT,EAAA,OAAAj+B,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAjC0C,EAAiCW,EAAjCX,OAAQK,EAAyBM,EAAzBN,QAAasnB,EAAY9mB,EAAZ8mB,SAAYtpB,EAAAf,KAAA,EACjCs4B,GAAqBjO,EAAUtnB,EAAQrD,SAAUqD,EAAQpD,OADxB,OACtDk+B,EADsD98B,EAAAP,KAE5DkC,EAAO,uBAAwBm7B,EAAa56B,MAFgB,wBAAAlC,EAAAN,SAAAK,KAAA+B,IAI9Dy7B,YAtBO,SAAA76B,EAsBiBqiB,IACtBpjB,EADgCe,EAApBf,QACL,eAAgBojB,IAEnByY,sBAzBC,SAAA56B,EAAAE,GAyBuE,OAAAhB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAAR,EAAAhE,EAAAsnB,EAAA4O,EAAA,OAAAr5B,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAhD+G,EAAgDpD,EAAhDoD,SAAUhE,EAAsCY,EAAtCZ,QAAasnB,EAAyBxmB,EAAzBwmB,SAAU4O,EAAep1B,EAAfo1B,YAAezxB,EAAAxH,KAAA,EACtE24B,GAAsBtO,EAAU4O,EAAal2B,EAAQrD,SAAUqD,EAAQpD,OADD,OAE5EoH,EAAS,wBAA0BsjB,aAFyC,wBAAA7iB,EAAA/G,SAAA8G,KAAA1E,qkBC9BlF,IAAM4K,IACJtM,OACEuM,gBACAyB,SAAS,EACTqvB,YAAa,GACbC,gBAAiB,EACjBx6B,YAAa,EACbK,SAAU,GACVi1B,SACEmF,OAAO,EACPC,UAAU,EACVC,QAAQ,EACRC,eAAe,EACfC,aAAa,GAEfC,oBACEp/B,MAAO,GACPq/B,KAAM,KAGVn9B,WACEo9B,UAAW,SAAC99B,EAAOsM,GACjBtM,EAAMuM,aAAeD,GAEvB4B,YAAa,SAAClO,EAAO4I,GACnB5I,EAAMgO,QAAUpF,GAElBm1B,WAAY,SAAC/9B,EAAOsM,GAClB,IAAM0xB,EAAsB1xB,EAAM1E,OAAO,SAACC,EAAK+D,GAC7C,OAAO/D,EAAIwS,OAAO,SAAA4jB,GAAC,OAAIA,EAAE1lC,KAAOqT,EAAKrT,MACpCyH,EAAMuM,cAET,GAAkC,IAA9BvM,EAAMuM,aAAatT,OAAvB,CAIA,IAAMilC,KAAY5kC,OAAA0Z,KAAOgrB,GAAPhrB,KAA+B1G,IACjDtM,EAAMuM,aAAe2xB,EAClB7jB,OAAO,SAAAzO,GAAI,OAAIA,EAAKsd,UAAYtd,EAAKrT,KACrC0a,KAAK,SAAC3a,EAAG6lC,GAAJ,OAAU7lC,EAAE4wB,SAASkV,cAAcD,EAAEjV,YAC1C5vB,OAAO4kC,EAAa7jB,OAAO,SAAAzO,GAAI,OAAKA,EAAKsd,WAAatd,EAAKrT,QAEhE8lC,UAAW,SAACr+B,EAAOyD,GACjBzD,EAAMs9B,gBAAkB75B,GAE1BU,SAAU,SAACnE,EAAO2D,GAChB3D,EAAM8C,YAAca,GAEtB26B,cAAe,SAACt+B,EAAOmD,GACrBnD,EAAMmD,SAAWA,GAEnBo7B,yBAA0B,SAACv+B,EAADqB,GAA4B,IAAlB7C,EAAkB6C,EAAlB7C,MAAOq/B,EAAWx8B,EAAXw8B,KACzC79B,EAAM49B,mBAAmBp/B,MAAQA,EACjCwB,EAAM49B,mBAAmBC,KAAOA,GAElCW,iBAAkB,SAACx+B,EAAO4P,GACxB5P,EAAMq9B,YAAcztB,GAEtB6uB,kBAAmB,SAACz+B,EAAOo4B,GACzBp4B,EAAMo4B,QAAUA,IAGpBj3B,SACQu9B,cADC,SAAAp9B,EAAAG,GACwD,OAAAC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAhC,IAAA,IAAAiG,EAAAhE,EAAA0K,EAAAqyB,EAAAT,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,OAAzC+G,EAAyCtE,EAAzCsE,SAAUhE,EAA+BN,EAA/BM,QAAa0K,EAAkB7K,EAAlB6K,MAAOqyB,EAAWl9B,EAAXk9B,QAC5CT,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAM+xB,aAAa,MAE3BpI,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPoB,eAAA78B,EAAAN,IAAAjD,EAAAnG,EAAAqJ,KAK3C,SAAArD,IAAA,OAAAG,EAAAnG,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EAAiBw2B,GAAcE,EAAW3zB,EAAQrD,SAAUqD,EAAQpD,OAApE,cAAAG,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,MAL2C,yBAAA0D,EAAA3D,MAAAZ,KAAAzE,YAAA,GAOTo2B,OAAQuP,IAPC,wBAAA/+B,EAAAN,SAAAK,KAAA+B,IASzDo9B,aAVC,SAAA58B,EAAAE,GAUwF,OAAAV,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAyE,IAAA,IAAA7E,EAAAqE,EAAA5F,EAAAk+B,EAAAW,EAAAzP,EAAAH,EAAA,OAAAxwB,EAAAnG,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAA1E0C,EAA0EW,EAA1EX,OAAQqE,EAAkE1D,EAAlE0D,SAAU5F,EAAwDkC,EAAxDlC,MAAWk+B,EAA6C97B,EAA7C87B,aAAcW,EAA+Bz8B,EAA/By8B,UAAWzP,EAAoBhtB,EAApBgtB,OAAQH,EAAY7sB,EAAZ6sB,SACjF1tB,EAAO,aAAc28B,GADwE73B,EAAAzH,KAAA,EAAAyH,EAAAxH,KAAA,EAIrFggC,IAJqF,OAAAx4B,EAAAxH,KAAA,uBAAAwH,EAAAzH,KAAA,EAAAyH,EAAAjB,GAAAiB,EAAA,SAAAA,EAAAjH,OAAA,yBAAAiH,EAAAzH,KAAA,GAQ3FgH,EAAS,eAAiBgK,MAAO5P,EAAMq9B,YAAa15B,KAAM3D,EAAM8C,cAR2BuD,EAAA4gB,OAAA,YAUzFgI,EACFrpB,EAAS,iCAAkCqpB,GAClCG,GACTxpB,EAAS,oBAAsBwpB,SAAQ/B,SAAS,IAElDznB,EAAS,kBAfoF,yBAAAS,EAAA/G,SAAA8G,EAAA,sBAAA1E,IAiBzFq9B,SA3BC,SAAAz8B,EAAAE,GA2BqE,OAAAd,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAqF,IAAA,IAAApB,EAAAhE,EAAA0K,EAAAopB,EAAAiJ,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,OAA3D+G,EAA2DtD,EAA3DsD,SAAUhE,EAAiDU,EAAjDV,QAAa0K,EAAoC9J,EAApC8J,MAAOopB,EAA6BlzB,EAA7BkzB,MAAOiJ,EAAsBn8B,EAAtBm8B,QAASK,EAAax8B,EAAbw8B,UACvDd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAOA,EAAK2xB,MAALqB,SAAkBhzB,OAAMG,MAAO6yB,SAAKhzB,EAAKG,UAAZ7H,OAAoBwxB,GAAQ,MAAU9pB,IAEtE2pB,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPiC,eAAAn8B,EAAAhB,IAAAjD,EAAAnG,EAAAqJ,KAKxD,SAAA+E,IAAA,OAAAjI,EAAAnG,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EAAiB22B,GAASD,EAAWG,EAAO9zB,EAAQrD,SAAUqD,EAAQpD,OAAtE,cAAAmI,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,MALwD,yBAAAhE,EAAArE,MAAAZ,KAAAzE,YAAA,GAOtBo2B,OAAQuP,EAAS1P,SAAU+P,IAPL,wBAAA73B,EAAA7H,SAAA0H,KAAAtF,IAStEu9B,OApCC,SAAA94B,EAAAK,GAoCiE,OAAA9E,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAuG,IAAA,IAAAtC,EAAAhE,EAAA0K,EAAAuR,EAAA8gB,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAA2J,GAAA,cAAAA,EAAAzJ,KAAAyJ,EAAAxJ,MAAA,OAAzD+G,EAAyDO,EAAzDP,SAAUhE,EAA+CuE,EAA/CvE,QAAa0K,EAAkC9F,EAAlC8F,MAAOuR,EAA2BrX,EAA3BqX,IAAK8gB,EAAsBn4B,EAAtBm4B,QAASK,EAAax4B,EAAbw4B,UACnDd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAMmU,QAAIzmB,OAAA0Z,KAAMpH,EAAKmU,OAAMlC,QAEnC0X,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAP6B,eAAAp4B,EAAA/E,IAAAjD,EAAAnG,EAAAqJ,KAKpD,SAAA4F,IAAA,OAAA9I,EAAAnG,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,cAAA6I,EAAA7I,KAAA,EAAiB46B,GAAQlE,GAAY1X,GAAMjc,EAAQrD,SAAUqD,EAAQpD,OAArE,cAAAkJ,EAAAtI,OAAA,SAAAsI,EAAArI,MAAA,wBAAAqI,EAAApI,SAAAiI,MALoD,yBAAAd,EAAApI,MAAAZ,KAAAzE,YAAA,GAOlBo2B,OAAQuP,EAAS1P,SAAU+P,IAPT,wBAAA32B,EAAA/I,SAAA4I,KAAAxG,IASlEw9B,oBA7CC,SAAAp4B,EAAAC,GA6CyE,OAAArF,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAoH,IAAA,IAAAnD,EAAAhE,EAAA0K,EAAAqyB,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAsK,GAAA,cAAAA,EAAApK,KAAAoK,EAAAnK,MAAA,OAApD+G,EAAoDkB,EAApDlB,SAAUhE,EAA0CkF,EAA1ClF,QAAa0K,EAA6BvF,EAA7BuF,MAAOqyB,EAAsB53B,EAAtB43B,QAASK,EAAaj4B,EAAbi4B,UAC3Dd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAMuzB,kBAAkB,MAEhC5J,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPqC,eAAAv3B,EAAA5F,IAAAjD,EAAAnG,EAAAqJ,KAK5D,SAAA8G,IAAA,OAAAhK,EAAAnG,EAAAoG,KAAA,SAAAgK,GAAA,cAAAA,EAAA9J,KAAA8J,EAAA7J,MAAA,cAAA6J,EAAA7J,KAAA,EAAiB87B,GAAmBpF,EAAW3zB,EAAQrD,SAAUqD,EAAQpD,OAAzE,cAAAkK,EAAAtJ,OAAA,SAAAsJ,EAAArJ,MAAA,wBAAAqJ,EAAApJ,SAAAmJ,MAL4D,yBAAAnB,EAAAjJ,MAAAZ,KAAAzE,YAAA,GAO1Bo2B,OAAQuP,EAAS1P,SAAU+P,IAPD,wBAAAh2B,EAAA1J,SAAAyJ,KAAArH,IAShF09B,gBAtDO,SAAAp3B,GAsDqB,IAAVzG,EAAUyG,EAAVzG,OAChBA,EAAO,mBAAoB,IAC3BA,EAAO,qBAAuBg8B,OAAO,EAAOC,UAAU,EAAOC,QAAQ,EAAOC,eAAe,EAAOC,aAAa,KAE3G0B,aA1DC,SAAAp3B,GA0DyC,OAAAvG,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA0H,IAAA,IAAA9H,EAAAqE,EAAA5F,EAAA,OAAAvB,EAAAnG,EAAAoG,KAAA,SAAA4K,GAAA,cAAAA,EAAA1K,KAAA0K,EAAAzK,MAAA,OAA3B0C,EAA2B0G,EAA3B1G,OAAQqE,EAAmBqC,EAAnBrC,SAAU5F,EAASiI,EAATjI,MACrCuB,EAAO,uBACPqE,EAAS,eAAiBgK,MAAO5P,EAAMq9B,YAAa15B,KAAM,IAFZ,wBAAA2F,EAAAhK,SAAA+J,KAAA3H,IAI1C49B,kBA9DC,SAAA92B,EAAAM,GA8DuE,OAAApH,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA4I,IAAA,IAAA3E,EAAAhE,EAAA0K,EAAAqyB,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAiM,GAAA,cAAAA,EAAA/L,KAAA+L,EAAA9L,MAAA,OAApD+G,EAAoD4C,EAApD5C,SAAUhE,EAA0C4G,EAA1C5G,QAAa0K,EAA6BxD,EAA7BwD,MAAOqyB,EAAsB71B,EAAtB61B,QAASK,EAAal2B,EAAbk2B,UACzDd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAM2zB,sBAAsB,MAEpChK,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPmC,eAAA11B,EAAAzH,IAAAjD,EAAAnG,EAAAqJ,KAK1D,SAAAkI,IAAA,OAAApL,EAAAnG,EAAAoG,KAAA,SAAAqL,GAAA,cAAAA,EAAAnL,KAAAmL,EAAAlL,MAAA,cAAAkL,EAAAlL,KAAA,EAAiBq8B,GAAiB3F,EAAW3zB,EAAQrD,SAAUqD,EAAQpD,OAAvE,cAAAuL,EAAA3K,OAAA,SAAA2K,EAAA1K,MAAA,wBAAA0K,EAAAzK,SAAAuK,MAL0D,yBAAAV,EAAA9K,MAAAZ,KAAAzE,YAAA,GAOxBo2B,OAAQuP,EAAS1P,SAAU+P,IAPH,wBAAAr0B,EAAArL,SAAAiL,KAAA7I,IASxE89B,iBAvEC,SAAAp2B,EAAAK,GAuE6E,OAAA/H,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAsJ,IAAA,IAAArF,EAAAhE,EAAA5B,EAAAkpB,EAAA/b,EAAAslB,EAAA,OAAAh0B,EAAAnG,EAAAoG,KAAA,SAAAwM,GAAA,cAAAA,EAAAtM,KAAAsM,EAAArM,MAAA,cAA3D+G,EAA2DwD,EAA3DxD,SAAUhE,EAAiDwH,EAAjDxH,QAAS5B,EAAwCoJ,EAAxCpJ,MAAWkpB,EAA6Bzf,EAA7Byf,SAAU/b,EAAmB1D,EAAnB0D,MAAOslB,EAAYhpB,EAAZgpB,SAAYvnB,EAAAtM,KAAA,EAAAsM,EAAArM,KAAA,EAE1E82B,GAAiBzM,EAAU/b,EAAOslB,EAAU7wB,EAAQrD,SAAUqD,EAAQpD,OAFI,OAAA0M,EAAArM,KAAA,uBAAAqM,EAAAtM,KAAA,EAAAsM,EAAA9F,GAAA8F,EAAA,SAAAA,EAAA9L,OAAA,yBAAA8L,EAAAtM,KAAA,GAMhFgH,EAAS,eAAiBgK,MAAO5P,EAAMq9B,YAAa15B,KAAM3D,EAAM8C,cANgBoI,EAAA+b,OAAA,YAQlFrhB,EAAS,kBARyE,yBAAAsF,EAAA5L,SAAA2L,EAAA,sBAAAvJ,IAU9E+9B,gBAjFC,SAAA91B,EAAAC,GAiF0D,OAAAlI,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAo4B,IAAA,IAAAn0B,EAAAhE,EAAA0K,EAAAqyB,EAAAT,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAs7B,GAAA,cAAAA,EAAAp7B,KAAAo7B,EAAAn7B,MAAA,OAAzC+G,EAAyC+D,EAAzC/D,SAAUhE,EAA+B+H,EAA/B/H,QAAa0K,EAAkB1C,EAAlB0C,MAAOqyB,EAAW/0B,EAAX+0B,QAC9CT,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAM+xB,aAAa,MAE3BpI,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPsB,eAAA30B,EAAAxI,IAAAjD,EAAAnG,EAAAqJ,KAK7C,SAAA23B,IAAA,OAAA76B,EAAAnG,EAAAoG,KAAA,SAAA86B,GAAA,cAAAA,EAAA56B,KAAA46B,EAAA36B,MAAA,cAAA26B,EAAA36B,KAAA,EAAiBg3B,GAAgBN,EAAW3zB,EAAQrD,SAAUqD,EAAQpD,OAAtE,cAAAg7B,EAAAp6B,OAAA,SAAAo6B,EAAAn6B,MAAA,wBAAAm6B,EAAAl6B,SAAAg6B,MAL6C,yBAAApvB,EAAA7L,MAAAZ,KAAAzE,YAAA,GAOXo2B,OAAQuP,IAPG,wBAAA3E,EAAA16B,SAAAy6B,KAAAr4B,IAS3Dg+B,WA1FC,SAAAr1B,EA0FiC6e,GAAU,OAAAxnB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA44B,IAAA,IAAA30B,EAAAhE,EAAA,OAAAnD,EAAAnG,EAAAoG,KAAA,SAAA87B,GAAA,cAAAA,EAAA57B,KAAA47B,EAAA37B,MAAA,cAA/B+G,EAA+ByE,EAA/BzE,SAAUhE,EAAqByI,EAArBzI,QAAqB44B,EAAA57B,KAAA,EAAA47B,EAAA37B,KAAA,EAExC43B,GAAWvN,EAAUtnB,EAAQrD,SAAUqD,EAAQpD,OAFP,OAAAg8B,EAAA37B,KAAA,sBAAA27B,EAAA57B,KAAA,EAAA47B,EAAAp1B,GAAAo1B,EAAA,SAAAA,EAAAp7B,OAAA,iBAMhDwG,EAAS,kBANuC,yBAAA40B,EAAAl7B,SAAAi7B,EAAA,gBAAA74B,IAQ5Ci+B,YAlGC,SAAAr1B,EAAAS,GAkGwE,OAAArJ,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAq5B,IAAA,IAAAp1B,EAAAhE,EAAA0K,EAAAopB,EAAAiJ,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAu8B,GAAA,cAAAA,EAAAr8B,KAAAq8B,EAAAp8B,MAAA,OAA3D+G,EAA2D0E,EAA3D1E,SAAUhE,EAAiD0I,EAAjD1I,QAAa0K,EAAoCvB,EAApCuB,MAAOopB,EAA6B3qB,EAA7B2qB,MAAOiJ,EAAsB5zB,EAAtB4zB,QAASK,EAAaj0B,EAAbi0B,UAC1Dd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAOA,EAAK2xB,MAALqB,SAAkBhzB,OAAMG,MAAO6yB,SAAKhzB,EAAKG,UAAZ7H,OAAoBwxB,GAAQ,MAAW9pB,IAEvE2pB,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPoC,eAAAe,EAAAl+B,IAAAjD,EAAAnG,EAAAqJ,KAK3D,SAAA84B,IAAA,OAAAh8B,EAAAnG,EAAAoG,KAAA,SAAAg8B,GAAA,cAAAA,EAAA97B,KAAA87B,EAAA77B,MAAA,cAAA67B,EAAA77B,KAAA,EAAiBk3B,GAAYR,EAAWG,EAAO9zB,EAAQrD,SAAUqD,EAAQpD,OAAzE,cAAAk8B,EAAAt7B,OAAA,SAAAs7B,EAAAr7B,MAAA,wBAAAq7B,EAAAp7B,SAAAm7B,MAL2D,yBAAAmF,EAAAvhC,MAAAZ,KAAAzE,YAAA,GAOzBo2B,OAAQuP,EAAS1P,SAAU+P,IAPF,wBAAA/D,EAAA37B,SAAA07B,KAAAt5B,IASzEm+B,YA3GC,SAAAC,EAAAC,GA2GqE,OAAAr+B,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA45B,IAAA,IAAAh6B,EAAAqE,EAAAhE,EAAA0K,EAAAqyB,EAAAqB,EAAA9B,EAAA,OAAAz/B,EAAAnG,EAAAoG,KAAA,SAAA88B,GAAA,cAAAA,EAAA58B,KAAA48B,EAAA38B,MAAA,cAAxD0C,EAAwDu+B,EAAxDv+B,OAAQqE,EAAgDk6B,EAAhDl6B,SAAUhE,EAAsCk+B,EAAtCl+B,QAAsCk+B,EAA7B9/B,MAAWsM,EAAkByzB,EAAlBzzB,MAAOqyB,EAAWoB,EAAXpB,QACzDqB,EAAiB1zB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAD4BsS,EAAA58B,KAAA,EAAA48B,EAAA38B,KAAA,EAGlEu3B,GAAY4J,EAAgBp+B,EAAQrD,SAAUqD,EAAQpD,OAHY,OAAAg9B,EAAA38B,KAAA,uBAAA28B,EAAA58B,KAAA,EAAA48B,EAAAp2B,GAAAo2B,EAAA,SAAAA,EAAAp8B,OAAA,kBAOpE8+B,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAM+xB,aAAa,MAEjCp8B,EAAO,aAAc28B,GAEjBS,GACF/4B,EAAS,oBAAsBwpB,OAAQuP,EAAStR,SAAS,IAE3DznB,EAAS,kBAfiE,yBAAA41B,EAAAl8B,SAAAi8B,EAAA,gBAAA75B,IAiBtEu+B,WA5HC,SAAAC,EAAAC,GA4H0D,OAAAz+B,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAm6B,IAAA,IAAAv6B,EAAAqE,EAAAhE,EAAA5B,EAAA2D,EAAAy0B,EAAAv2B,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAq9B,GAAA,cAAAA,EAAAn9B,KAAAm9B,EAAAl9B,MAAA,cAA9C0C,EAA8C2+B,EAA9C3+B,OAAQqE,EAAsCs6B,EAAtCt6B,SAAUhE,EAA4Bs+B,EAA5Bt+B,QAAS5B,EAAmBkgC,EAAnBlgC,MAAW2D,EAAQw8B,EAARx8B,KACvDpC,EAAO,eAAe,GAChB62B,EAAUp7B,OAAOD,KAAKiD,EAAMo4B,SAAS/d,OAAO,SAAAA,GAAM,OAAIra,EAAMo4B,QAAQ/d,KAAS+lB,OAFpBrE,EAAAl9B,KAAA,EAGxCk5B,GAAWK,EAASx2B,EAAQrD,SAAUqD,EAAQpD,MAAOmF,GAHb,cAGzD9B,EAHyDk6B,EAAA18B,KAAA08B,EAAAl9B,KAAA,EAIzD+G,EAAS,eAJgD,OAK/Dy6B,GAAU9+B,EAAQoC,EAAM9B,EAASC,MAL8B,yBAAAi6B,EAAAz8B,SAAAw8B,KAAAp6B,IAO3D4+B,sBAnIC,SAAAC,EAmI0CrX,GAAU,OAAAxnB,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA6+B,IAAA,IAAAj/B,EAAAK,EAAA6+B,EAAA3+B,EAAA,OAAArD,EAAAnG,EAAAoG,KAAA,SAAAgiC,GAAA,cAAAA,EAAA9hC,KAAA8hC,EAAA7hC,MAAA,cAA7B0C,EAA6Bg/B,EAA7Bh/B,OAAQK,EAAqB2+B,EAArB3+B,QAAqB8+B,EAAA7hC,KAAA,EAClCy5B,GAAsBpP,EAAUtnB,EAAQrD,SAAUqD,EAAQpD,OADxB,OAAAiiC,EAAAC,EAAArhC,KACjDyC,EADiD2+B,EACjD3+B,KACRP,EAAO,2BAA4BO,GAFsB,wBAAA4+B,EAAAphC,SAAAkhC,KAAA9+B,IAI3Di/B,oBAvIO,SAAAC,IAwILr/B,EAD8Bq/B,EAAVr/B,QACb,4BAA8Bs8B,KAAM,GAAIr/B,MAAO,MAElDqiC,UA1IC,SAAAC,EAAAC,GA0IoE,OAAAr/B,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAq/B,IAAA,IAAAp7B,EAAAhE,EAAA0K,EAAAuR,EAAA8gB,EAAAK,EAAAd,EAAA3I,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAAuiC,GAAA,cAAAA,EAAAriC,KAAAqiC,EAAApiC,MAAA,OAAzD+G,EAAyDk7B,EAAzDl7B,SAAUhE,EAA+Ck/B,EAA/Cl/B,QAAa0K,EAAkCy0B,EAAlCz0B,MAAOuR,EAA2BkjB,EAA3BljB,IAAK8gB,EAAsBoC,EAAtBpC,QAASK,EAAa+B,EAAb/B,UACtDd,EAAe5xB,EAAM5S,IAAI,SAAAkS,GAC7B,OAAAgzB,SAAYhzB,OAAMmU,KAAMnU,EAAKmU,KAAK1F,OAAO,SAAA6mB,GAAO,OAAIA,IAAYrjB,QAE5D0X,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WAGzCtjB,EAAS,gBAAkBs4B,eAAcW,UAPgC,eAAAsC,EAAAz/B,IAAAjD,EAAAnG,EAAAqJ,KAKvD,SAAAy/B,IAAA,OAAA3iC,EAAAnG,EAAAoG,KAAA,SAAA2iC,GAAA,cAAAA,EAAAziC,KAAAyiC,EAAAxiC,MAAA,cAAAwiC,EAAAxiC,KAAA,EAAiBo7B,GAAU1E,GAAY1X,GAAMjc,EAAQrD,SAAUqD,EAAQpD,OAAvE,cAAA6iC,EAAAjiC,OAAA,SAAAiiC,EAAAhiC,MAAA,wBAAAgiC,EAAA/hC,SAAA8hC,MALuD,yBAAAD,EAAA9iC,MAAAZ,KAAAzE,YAAA,GAOrBo2B,OAAQuP,EAAS1P,SAAU+P,IAPN,wBAAAiC,EAAA3hC,SAAA0hC,KAAAt/B,IASrE4/B,qBAnJC,SAAAC,EAmJ2Cj1B,GAAO,OAAA5K,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA6/B,IAAA,IAAA57B,EAAAhE,EAAA2zB,EAAA,OAAA92B,EAAAnG,EAAAoG,KAAA,SAAA+iC,GAAA,cAAAA,EAAA7iC,KAAA6iC,EAAA5iC,MAAA,cAA5B+G,EAA4B27B,EAA5B37B,SAAUhE,EAAkB2/B,EAAlB3/B,QAC/B2zB,EAAYjpB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WADcuY,EAAA7iC,KAAA,EAAA6iC,EAAA5iC,KAAA,EAG/C85B,GAAmBpD,EAAW3zB,EAAQrD,SAAUqD,EAAQpD,OAHT,OAAAijC,EAAA5iC,KAAA,uBAAA4iC,EAAA7iC,KAAA,EAAA6iC,EAAAr8B,GAAAq8B,EAAA,SAAAA,EAAAriC,OAAA,kBAOvDwG,EAAS,kBAP8C,yBAAA67B,EAAAniC,SAAAkiC,EAAA,gBAAA9/B,IASnDggC,wBA5JC,SAAAC,EA4J8Cr1B,GAAO,OAAA5K,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAigC,IAAA,IAAAh8B,EAAAhE,EAAAo+B,EAAA,OAAAvhC,EAAAnG,EAAAoG,KAAA,SAAAmjC,GAAA,cAAAA,EAAAjjC,KAAAijC,EAAAhjC,MAAA,cAA5B+G,EAA4B+7B,EAA5B/7B,SAAUhE,EAAkB+/B,EAAlB//B,QAClCo+B,EAAiB1zB,EAAM5S,IAAI,SAAAkS,GAAI,OAAIA,EAAKsd,WADY2Y,EAAAjjC,KAAA,EAAAijC,EAAAhjC,KAAA,EAGlD48B,GAAwBuE,EAAgBp+B,EAAQrD,SAAUqD,EAAQpD,OAHhB,OAAAqjC,EAAAhjC,KAAA,uBAAAgjC,EAAAjjC,KAAA,EAAAijC,EAAAz8B,GAAAy8B,EAAA,SAAAA,EAAAziC,OAAA,kBAO1DwG,EAAS,kBAPiD,yBAAAi8B,EAAAviC,SAAAsiC,EAAA,gBAAAlgC,IAStDogC,YArKC,SAAAC,EAAAC,GAqKkE,OAAAtgC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAsgC,IAAA,IAAA1gC,EAAAqE,EAAA5F,EAAA4B,EAAAgO,EAAAjM,EAAAy0B,EAAAv2B,EAAA,OAAApD,EAAAnG,EAAAoG,KAAA,SAAAwjC,GAAA,cAAAA,EAAAtjC,KAAAsjC,EAAArjC,MAAA,UAArD0C,EAAqDwgC,EAArDxgC,OAAQqE,EAA6Cm8B,EAA7Cn8B,SAAU5F,EAAmC+hC,EAAnC/hC,MAAO4B,EAA4BmgC,EAA5BngC,QAAagO,EAAeoyB,EAAfpyB,MAAOjM,EAAQq+B,EAARr+B,KAC1C,IAAjBiM,EAAM3W,OAD6D,CAAAipC,EAAArjC,KAAA,QAErE0C,EAAO,mBAAoBqO,GAC3BhK,EAAS,cAAgBjC,SAH4Cu+B,EAAArjC,KAAA,uBAKrE0C,EAAO,eAAe,GACtBA,EAAO,mBAAoBqO,GAErBwoB,EAAUp7B,OAAOD,KAAKiD,EAAMo4B,SAAS/d,OAAO,SAAAA,GAAM,OAAIra,EAAMo4B,QAAQ/d,KAAS+lB,OARd8B,EAAArjC,KAAA,GAS9Cm6B,GAAYppB,EAAOwoB,EAASx2B,EAAQrD,SAAUqD,EAAQpD,MAAOmF,GATf,QAS/D9B,EAT+DqgC,EAAA7iC,KAWrEghC,GAAU9+B,EAAQoC,EAAM9B,EAASC,MAXoC,yBAAAogC,EAAA5iC,SAAA2iC,KAAAvgC,IAczEygC,eAnLO,WAoLL98B,UAAQ+8B,SACN98B,QAASC,IAAKC,EAAE,mBAChBE,SAAU,OAGR28B,kBAzLC,SAAAC,EAyL8ClK,GAAS,OAAA12B,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAA4gC,IAAA,IAAAhhC,EAAAqE,EAAA5F,EAAAwiC,EAAA,OAAA/jC,EAAAnG,EAAAoG,KAAA,SAAA+jC,GAAA,cAAAA,EAAA7jC,KAAA6jC,EAAA5jC,MAAA,OAApC0C,EAAoC+gC,EAApC/gC,OAAQqE,EAA4B08B,EAA5B18B,SAAU5F,EAAkBsiC,EAAlBtiC,MAQpCwiC,EARsD5D,UAE1DrB,OAAO,EACPC,UAAU,EACVC,QAAQ,EACRC,eAAe,EACfC,aAAa,IAEgCvF,GAC/C72B,EAAO,oBAAqBihC,GAC5B58B,EAAS,eAAiBgK,MAAO5P,EAAMq9B,YAAa15B,KAAM,IAVE,wBAAA8+B,EAAAnjC,SAAAijC,KAAA7gC,IAYxDghC,gBArMC,SAAAC,EAAAC,GAqM0E,OAAAlhC,IAAAjD,EAAAnG,EAAAqJ,KAAA,SAAAkhC,IAAA,IAAAj9B,EAAAhE,EAAAgK,EAAAnG,EAAAk5B,EAAAK,EAAAd,EAAApG,EAAA,OAAAr5B,EAAAnG,EAAAoG,KAAA,SAAAokC,GAAA,cAAAA,EAAAlkC,KAAAkkC,EAAAjkC,MAAA,OAAzD+G,EAAyD+8B,EAAzD/8B,SAAUhE,EAA+C+gC,EAA/C/gC,QAAagK,EAAkCg3B,EAAlCh3B,KAAMnG,EAA4Bm9B,EAA5Bn9B,KAAMk5B,EAAsBiE,EAAtBjE,QAASK,EAAa4D,EAAb5D,UAC5Dd,GAAgBU,SAAKhzB,OAAMm3B,WAAYt9B,KACvCqyB,GAAgBiL,WAAYt9B,GAIlCG,EAAS,gBAAkBs4B,eAAcW,UANsC,eAAAmE,EAAAthC,IAAAjD,EAAAnG,EAAAqJ,KAI7D,SAAAshC,IAAA,OAAAxkC,EAAAnG,EAAAoG,KAAA,SAAAwkC,GAAA,cAAAA,EAAAtkC,KAAAskC,EAAArkC,MAAA,cAAAqkC,EAAArkC,KAAA,EAAiB24B,GAAsB5rB,EAAKsd,SAAU4O,EAAal2B,EAAQrD,SAAUqD,EAAQpD,OAA7F,cAAA0kC,EAAA9jC,OAAA,SAAA8jC,EAAA7jC,MAAA,wBAAA6jC,EAAA5jC,SAAA2jC,MAJ6D,yBAAAD,EAAA3kC,MAAAZ,KAAAzE,YAAA,GAM3Bo2B,OAAQuP,EAAS1P,SAAU+P,IANA,wBAAA8D,EAAAxjC,SAAAujC,KAAAnhC,MAW/E2+B,GAAY,SAAC9+B,EAAQoC,EAATw/B,GAA+C,IAA9B72B,EAA8B62B,EAA9B72B,MAAO7I,EAAuB0/B,EAAvB1/B,MAAO2/B,EAAgBD,EAAhBC,UAC/C7hC,EAAO,YAAa+K,GACpB/K,EAAO,YAAakC,GACpBlC,EAAO,WAAYoC,GACnBpC,EAAO,gBAAiB6hC,GACxB7hC,EAAO,eAAe,IAGT+K,MCxRf7H,UAAIjM,IAAI6qC,KAER,IAsBelgB,GAtBD,IAAIkgB,IAAKC,OACrBC,SACExjC,MACAoL,WACAxI,aACAmL,UACA+B,mBACAwB,iBACAuB,SACA1G,cACAoa,UACAvM,WACAvN,YACA5D,UACA8C,YACAE,QACAowB,eACA1vB,UAEF1K,yBCrCF6C,UAAInH,UAAU,WAAYkmC,OAGP,SAAAC,GAAkBA,EAAe1mC,OAAOrD,IAAI+pC,GAC/DC,CAFYC,WCDVl/B,UAAIm/B,OAAOC,aAAe,SAASrjB,EAAKsjB,EAAIC,EAAMzrC,GAGhDmM,UAAIu/B,SAAS,WACX7gB,GAAMvd,SAAS,eACb4a,MACAsjB,KACAC,OACA/kC,IAAKqkB,OAAOvO,SAAS0D,OAEvByrB,QAAQxP,MAAMjU,EAAKujB,2mBCRzBG,KAAUC,WAAYC,aAAa,IASnC,IAAMC,IAAa,SAAU,iBAAkB,kBCb/C,SAASC,GAAUvuB,EAAMwuB,GACvB,OAAa,IAATxuB,EACKA,EAAOwuB,EAETxuB,EAAOwuB,EAAQ,IAGjB,SAASC,GAAQzuB,GACtB,IAAM0uB,EAAUnuB,KAAKkB,MAAQ,IAAOktB,OAAO3uB,GAC3C,OAAI0uB,EAAU,KACLH,MAAaG,EAAU,IAAK,WAC1BA,EAAU,MACZH,MAAaG,EAAU,MAAO,SAE9BH,MAAaG,EAAU,OAAQ,QAKnC,SAASE,GAAgBC,EAAKC,GASnC,IARA,IAAMC,IACFtgC,MAAO,KAAMnM,OAAQ,MACrBmM,MAAO,KAAMnM,OAAQ,MACrBmM,MAAO,KAAMnM,OAAQ,MACrBmM,MAAO,IAAKnM,OAAQ,MACpBmM,MAAO,IAAKnM,OAAQ,MACpBmM,MAAO,IAAKnM,OAAQ,MAEf0e,EAAI,EAAGA,EAAI+tB,EAAG7rC,OAAQ8d,IAC7B,GAAI6tB,GAAOE,EAAG/tB,GAAGvS,MACf,OAAQogC,EAAME,EAAG/tB,GAAGvS,MAAQ,IAAKugC,QAAQF,GAAQztB,QAAQ,2BAA4B,MAAQ0tB,EAAG/tB,GAAG1e,OAGvG,OAAOusC,EAAI5zB,WAGN,SAASg0B,GAAiBJ,GAC/B,QAASA,GAAO,GAAG5zB,WAAWoG,QAAQ,UAAW,SAAAV,GAAC,OAAIA,EAAEU,QAAQ,uBAAwB,ODsB1F+N,GAAO8f,WA5CwB,SAAC7sB,EAAI8sB,EAAMrmC,GACxCqlC,KAAUiB,QACNrlC,cAEc,WAAZsY,EAAGR,MACL/Y,GAAO+Y,KAAM,MACbssB,KAAU3jB,QAEyB,IAA/B4C,GAAMvhB,QAAQmK,MAAM9S,OACtBkqB,GAAMvd,SAAS,eAAeiP,KAAK,SAAA0Q,GACjC,IAAMxZ,EAAQwZ,EAAIzjB,KAAK+yB,QAAQC,UAAY,YAC3C3R,GAAMvd,SAAS,kBAAoBmG,UAAS8I,KAAK,WAC/CsQ,GAAOigB,UAAUjiB,GAAMvhB,QAAQwK,YAC/BvN,EAAKwmC,SAAKjtB,OAAIhB,SAAS,SAExBod,MAAM,SAAChU,GACR2C,GAAMvd,SAAS,aAAaiP,KAAK,WAC/BxP,mBACEigC,0BAA0B,EAC1BhgC,QAASkb,EACT/a,KAAM,QACNC,SAAU,MAEZ7G,GAAO+Y,KAAM,UA/BzB,SAAuB7L,EAAOw5B,GAC5B,OAAIx5B,EAAMglB,QAAQ,UAAY,IACzBwU,GACEx5B,EAAM4V,KAAK,SAAA+D,GAAI,OAAI6f,EAAgBxU,QAAQrL,IAAS,IAgCjDC,CAAcxC,GAAMvhB,QAAQmK,MAAOqM,EAAG8C,KAAKnP,OAC7ClN,IAEAA,GAAO+Y,KAAM,OAAQR,SAAS,EAAMxH,OAAS41B,UAAU,MAMzB,IAAhCnB,GAAUtT,QAAQ3Y,EAAGR,MACvB/Y,KAEAA,EAAI,mBAAAvF,OAAoB8e,EAAGR,OAC3BssB,KAAU3jB,UAMhB4E,GAAOsgB,UAAU,WACfvB,KAAU3jB,SE3CZ9b,UAAIjM,IAAIktC,KACNllC,KAAML,IAAQC,IAAI,SAAW,SAC7BmF,KAAM,SAAChB,EAAKC,GAAN,OAAgBe,IAAKC,EAAEjB,EAAKC,MAIpCxH,OAAOD,KAAKq7B,GAASpY,QAAQ,SAAAzb,GAC3BE,UAAI4V,OAAO9V,EAAK6zB,EAAQ7zB,MAG1BE,UAAIm/B,OAAO+B,eAAgB,EAE3B,IAAIlhC,WACFmG,GAAI,OACJua,UACAhC,SACA5d,SACAqgC,OAAQ,SAAA/uB,GAAC,OAAIA,EAAE7Y,yCCvCjBnG,EAAAgB,EAAAd,EAAA,sBAAA+H,IAAAjI,EAAAgB,EAAAd,EAAA,sBAAAu8B,IAAAz8B,EAAAgB,EAAAd,EAAA,sBAAAi9B,IAAAn9B,EAAAgB,EAAAd,EAAA,sBAAAu7B,IAAAz7B,EAAAgB,EAAAd,EAAA,sBAAAw8B,IAAA18B,EAAAgB,EAAAd,EAAA,sBAAAk9B,IAAA,IAAA4Q,EAAAhuC,EAAA,QAAAiuC,EAAAjuC,EAAAK,EAAA2tC,GAEME,EAAW,cACXC,EAAc,YAEb,SAASlmC,IACd,OAAOK,IAAQC,IAAI2lC,GAGd,SAASzR,EAAS91B,GACvB,OAAO2B,IAAQS,IAAImlC,EAAUvnC,GAGxB,SAASw2B,IACd,OAAO70B,IAAQ8lC,OAAOF,GAGjB,SAASzS,IACd,OAAOnzB,IAAQC,IAAI4lC,GAGd,SAASzR,EAAY/1B,GAC1B,OAAO2B,IAAQS,IAAIolC,EAAaxnC,GAG3B,SAASy2B,IACd,OAAO90B,IAAQ8lC,OAAOD,8DC1BxB,IAAAE,EAAAruC,EAAA,QAAAA,EAAAK,EAAAguC,GAA4e,uCCA5e,IAAAC,EAAAtuC,EAAA,QAAAA,EAAAK,EAAAiuC,GAA4a,qCCA5atuC,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,qeAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,yVAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,2kBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTf,IAAAquC,EAAAvuC,EAAA,QAAAA,EAAAK,EAAAkuC,GAAkgB,qCCAlgBvuC,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,cACAC,IAAA,oBACAC,QAAA,cACAC,QAAA,grCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,08BCPR,IAAMsuC,EAAkB,SAAA7hC,GAC7B,MAAc,SAAVA,GAEiB,UAAVA,GAGJA,GAGH8hC,EAAkB,SAAC7gC,EAAMjB,EAAOoT,GACpC,GAAa,UAATnS,EACF,OAAOmL,IAAExQ,IAAIoE,EAAOoT,GACf,IAAA2uB,EAAAC,IACmC5uB,GAAjC6uB,EADFF,EAAA,GACuBG,EADvBH,EAAA1kB,MAAA,GAEC8kB,EAAeniC,EAAMiiC,GAC3B,GAAwB,IAApBC,EAASztC,QAAiB0tC,EAEvB,CAKL,OAJsB,SAAhBC,EAAiBpiC,EAAOzH,GAAS,IAAA8pC,EAAAL,IACVzpC,GAApB+pC,EAD8BD,EAAA,GAClBE,EADkBF,EAAAhlB,MAAA,GAErC,OAAuB,IAAhB9kB,EAAK9D,OAAeuL,EAAQoiC,EAAcpiC,EAAM,GAAGsiC,GAAUC,GAE/DH,CAAcD,EAAcD,GANnC,OAAOC,IAAgB,GA2BhBrb,EAAiB,SAAC/mB,EAAKC,GAClC,GAAY,cAARD,EAAqB,CACvB,IAAM0W,EAAQzW,EAAM0Z,UAAU,SAAAtT,GAAE,MAAkB,WAAdo8B,IAAOp8B,IAAmBA,EAAGq8B,MAAM5iB,SAAS,mBAEhF,OADgB7f,EAAM9K,IAAI,SAACkR,EAAImM,GAAL,OAAWA,IAAMkE,EAAQ,gBAAkBrQ,IAGvE,MAAY,UAARrG,GACsB,iBAAVC,GAAsBA,GAE/BA,GAGI+mB,EAAc,SAAdA,EAAe2b,EAAQ3iC,GAClC,OAAO2iC,EAAOt/B,OAAO,SAACu/B,EAAO1tB,GAsD3B,MArDY,gBAARlV,EACF4iC,EAAM1tB,EAAKwtB,MAAM,IAAMG,MAAMC,QAAQ5tB,EAAKwtB,MAAM,IAC5CxtB,EAAKwtB,MAAM,GAAGvtC,IAAI,SAAAkR,GAAE,OAAIA,EAAGq8B,QAC3BxtB,EAAKwtB,MAAM,GAAGA,MACS,aAAlBxtB,EAAKwtB,MAAM,GACpBE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGr/B,OAAO,SAACC,EAAKy/B,GAChD,SAAAhuC,OAAAiuC,IAAW1/B,IAAX2/B,OAAmBF,EAAOL,MAAM,GAAhChjC,OAA0CqjC,EAAOL,MAAM,QAAI1uC,GAAE,IAAAe,WAA0B,IAAhBme,KAAKmb,WAAiB5hB,SAAS,eAE/Fo2B,MAAMC,QAAQ5tB,EAAKwtB,MAAM,MACf,YAAlBxtB,EAAKwtB,MAAM,IACM,aAAlBxtB,EAAKwtB,MAAM,IACO,aAAlBxtB,EAAKwtB,MAAM,IACQ,aAAlBxtB,EAAKwtB,MAAM,IAA6B,6CAAR1iC,GACf,aAAlBkV,EAAKwtB,MAAM,IACW,aAAlBxtB,EAAKwtB,MAAM,GACbE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGr/B,OAAO,SAACC,EAAK6iB,GAChD,SAAApxB,OAAAiuC,IAAW1/B,IAAX2/B,OAAmB9c,EAAMuc,MAAM,IAAOziC,MAAOkmB,EAAMuc,MAAM,GAAI1uC,GAAE,IAAAe,WAA0B,IAAhBme,KAAKmb,WAAiB5hB,SAAS,cAG1Gm2B,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGr/B,OAAO,SAACC,EAAK6iB,GAChD,SAAApxB,OAAAiuC,IAAW1/B,IAAX2/B,OAAmB9c,EAAMuc,MAAM,IAAOziC,MAAOkmB,EAAMuc,MAAM,GAAI1uC,GAAE,IAAAe,WAA0B,IAAhBme,KAAKmb,WAAiB5hB,SAAS,cAGjF,WAAlByI,EAAKwtB,MAAM,GACpBE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGvtC,IAAI,SAAAqe,GACvC,OAAO/a,OAAOD,KAAKgb,GAAMre,IAAI,SAAA2D,GAC3B,OAASkH,IAAKlH,EAAMmH,MAAOuT,EAAK1a,GAAO9E,GAAE,IAAAe,WAA0B,IAAhBme,KAAKmb,WAAiB5hB,SAAS,aAG3D,WAAlByI,EAAKwtB,MAAM,GACpBE,EAAM1tB,EAAKwtB,MAAM,IAAwB,cAAlBxtB,EAAKwtB,MAAM,IAAsBxtB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGA,MAC5D,eAAlBxtB,EAAKwtB,MAAM,IAAyC,YAAlBxtB,EAAKwtB,MAAM,GACtDE,EAAM1tB,EAAKwtB,MAAM,IAAMQ,EAAwBhuB,EAAKwtB,MAAM,GAAIxtB,EAAKwtB,MAAM,IAC9C,UAAlBxtB,EAAKwtB,MAAM,GACpBE,EAAM1tB,EAAKwtB,MAAM,IAAM3b,EAAe7R,EAAKwtB,MAAM,GAAIxtB,EAAKwtB,MAAM,IACvDG,MAAMC,QAAQ5tB,EAAKwtB,MAAM,KACL,WAA5BD,IAAOvtB,EAAKwtB,MAAM,GAAG,MAAoBG,MAAMC,QAAQ5tB,EAAKwtB,MAAM,GAAG,KAAQxtB,EAAKwtB,MAAM,GAAG,GAAd,MAC9EE,EAAM1tB,EAAKwtB,MAAM,IAAM1b,EAAY9R,EAAKwtB,MAAM,GAAIxtB,EAAKwtB,MAAM,IACpDG,MAAMC,QAAQ5tB,EAAKwtB,MAAM,IAClCE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GACP,QAAlBxtB,EAAKwtB,MAAM,GACpBE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAAGA,MAAM7G,KAAK,KACvC3mB,EAAKwtB,MAAM,IAA+B,WAAzBD,IAAOvtB,EAAKwtB,MAAM,IACtB,YAAlBxtB,EAAKwtB,MAAM,IAAsC,iBAAlBxtB,EAAKwtB,MAAM,GAC5CE,EAAM1tB,EAAKwtB,MAAM,IAAMjqC,OAAOD,KAAK0c,EAAKwtB,MAAM,IAAIr/B,OAAO,SAACC,EAAKtD,GAC7D,SAAAjL,OAAAiuC,IAAW1/B,IAAX2/B,OAAmBjjC,GAAQC,MAAOiV,EAAKwtB,MAAM,GAAG1iC,GAAMhM,GAAE,IAAAe,WAA0B,IAAhBme,KAAKmb,WAAiB5hB,SAAS,cAGnGm2B,EAAM1tB,EAAKwtB,MAAM,IAAMS,EAAYjuB,EAAKwtB,MAAM,IAGhDE,EAAM1tB,EAAKwtB,MAAM,IAAMxtB,EAAKwtB,MAAM,GAE7BE,QAILO,EAAc,SAAAC,GAClB,OAAO3qC,OAAOD,KAAK4qC,GAAQ//B,OAAO,SAACC,EAAK4R,GAEtC,OADA5R,EAAI4R,GAAQkuB,EAAOluB,GACZ5R,QAIL4/B,EAA0B,SAACljC,EAAKC,GACpC,GAAY,eAARD,EAAsB,CACxB,GAAIC,IAAU4iC,MAAMC,QAAQ7iC,IACT,WAAjBwiC,IAAOxiC,IACgB,IAAvBA,EAAMyiC,MAAMhuC,QACO,YAAnBuL,EAAMyiC,MAAM,GAAkB,KAAAW,EAAAC,IACPrjC,EAAMyiC,MADC,GAE9B,OAASa,QAAQ,EAAM1S,KAFOwS,EAAA,GAEDG,KAFCH,EAAA,IAGzB,GAAqB,iBAAVpjC,EAAoB,KAAAwjC,EACfxjC,EAAMyjC,MAAM,KADGC,EAAAL,IAAAG,EAAA,GAEpC,OAASF,QAAQ,EAAO1S,KAFY8S,EAAA,GAENH,KAFMG,EAAA,IAItC,OAASJ,QAAQ,EAAO1S,KAAM,KAAM2S,KAAM,MACrC,GAAY,YAARxjC,EAAmB,CAC5B,GAAqB,iBAAVC,EACT,OAAS2I,MAAO3I,GACX,GAAIA,GACQ,WAAjBwiC,IAAOxiC,IACgB,IAAvBA,EAAMyiC,MAAMhuC,OAAc,KAAAkvC,EAAAN,IACArjC,EAAMyiC,MADN,GAE1B,OAAS/d,SAFiBif,EAAA,GAEPh7B,MAFOg7B,EAAA,OAO1BC,EAAmB,SAAC3iC,EAAMjB,GAC9B,MAAiB,SAATiB,GAAmBjB,EAAMvL,OAAS,GACvCmuC,MAAMC,QAAQ5hC,IAASA,EAAK4e,SAAS,YAAc5e,EAAK4e,SAAS,SAA4B,iBAAV7f,GAG3E6jC,EAAgB,SAAhBA,EAAiBC,EAAeC,EAAyB7d,EAAO8d,EAAWC,EAASj8B,EAAU+d,GAAoB,IAAAme,EAAAlC,IACpFiC,GADoFE,EAAAD,EAAA,GACpHnkC,EADoHokC,EACpHpkC,IAAKkB,EAD+GkjC,EAC/GljC,KAAWmjC,EADoGF,EAAA7mB,MAAA,GAEvHjK,GAAQ8S,EAAO8d,GAAXlvC,OAAAiuC,IAAyBkB,EAAQl6B,UAAU7U,IAAI,SAAAygB,GAAM,OAAIA,EAAO5V,MAAKsd,MAAM,GAAI,KAErFgnB,EAAuBC,EAAY,QAASt8B,EAAUoL,GAA/B3T,OAClBqiC,EAAgB,QAAS95B,EAASke,GAAO8d,GAAYC,EAAQ/uC,IAAI,SAAAkR,GAAE,OAAIA,EAAGrG,MAAKsd,MAAM,GAAI,KADvE2lB,OAEjBjjC,EAAM+jC,IAFWd,OAGpBjjC,EAAM+jC,GACTS,EAAiCD,EAAY,kBAAmBve,EAAiB3S,GAAhD3T,OAC5BqiC,EAAgB,kBAAmB/b,EAAgBG,GAAO8d,GAAYC,EAAQ/uC,IAAI,SAAAkR,GAAE,OAAIA,EAAGrG,MAAKsd,MAAM,GAAI,IAAI,IADlF2lB,OAE3BjjC,GAAOkB,EAAM8iC,KAFcf,OAG9BjjC,GAAOkB,EAAM8iC,IAepB,MAbc,UAAV7d,GAAwC,WAAnB+d,EAAQ,GAAGlkC,MAClCskC,EAAuBr8B,EAASke,GAAO+d,EAAQ,GAAGlkC,KAA3BN,OACduI,EAASke,GAAO+d,EAAQ,GAAGlkC,KAAKC,OAAUqkC,GAC/CA,EACJE,EAAiCv8B,EAASke,GAAO+d,EAAQ,GAAGlkC,KAA3BN,OACxBjH,OAAOD,KAAKyP,EAASke,GAAO+d,EAAQ,GAAGlkC,KAAKC,OAChDoD,OAAO,SAACC,EAAK+C,GACZ,OAAA3G,OAAY4D,MAAZ2/B,OAAkB58B,GAAMnF,EAAM+G,EAASke,GAAO+d,EAAQ,GAAGlkC,KAAKC,MAAMoG,YAErEm+B,GACDA,GAGyB,IAAxBH,EAAa3vC,QACdqvC,cAAeO,EAAsBN,wBAAyBQ,EAAgC/8B,QAAS48B,EAAa,IACtHP,EAAcQ,EAAsBE,EAAgCre,EAAO8d,EAAWI,EAAcp8B,EAAU+d,IAG9Gue,EAAc,SAACrjC,EAAMjB,EAAOoT,GAChC,GAAa,UAATnS,EACF,OAAOmL,IAAExQ,IAAIoE,EAAOoT,GACf,IAAAoxB,EAAAxC,IAC+C5uB,GAA7C8S,EADFse,EAAA,GACSzkC,EADTykC,EAAA,GACcvC,EADduC,EAAA,GACmCtC,EADnCsC,EAAAnnB,MAAA,GAEC8kB,EAAe/1B,IAAExQ,IAAIoE,GAAQkmB,EAAOnmB,EAAKkiC,IAC/C,GAAwB,IAApBC,EAASztC,QAAiB0tC,EAEvB,CAQL,OAPsB,SAAhBC,EAAiBpiC,EAAOzH,GAC5B,GAAoB,IAAhBA,EAAK9D,OACP,OAAO,EAF4B,IAAAgwC,EAAAzC,IAIVzpC,GAApB+pC,EAJ8BmC,EAAA,GAIlBlC,EAJkBkC,EAAApnB,MAAA,GAKrC,QAAOrd,EAAM,GAAGsiC,IAAWF,EAAcpiC,EAAM,GAAGsiC,GAAUC,GAEvDH,CAAcD,EAAcD,GATnC,OAAOC,IAAgB,GAchBtb,EAAiB,SAAC9mB,EAAKC,GAClC,IAAM0kC,EAA2B9B,MAAMC,QAAQ7iC,IAAUA,EAAMvL,OAAS,GAAKuL,EAAM2kC,MAAM,SAAAv+B,GAAE,MAAkB,WAAdo8B,IAAOp8B,KACtG,MAAe,UAARrG,GACG,WAARA,GACQ,cAARA,GACQ,+BAARA,GACQ,8BAARA,GACiB,iBAAVC,GACU,iBAAVA,GACU,kBAAVA,GACG,OAAVA,GACA0kC,GAGS5c,EAAsB,SAAC5B,EAAOle,EAAU48B,GACnD,OAAOpsC,OAAOD,KAAKyP,GAAU9S,IAAI,SAAC6K,GAChC,OAAOiI,EAASjI,GAAK8kC,QACf3e,QAAOnmB,MAAKC,MAjMK,SAACD,EAADlD,GAAwB,IAAAC,EAAAumC,IAAAxmC,EAAA,GAAjBoE,EAAiBnE,EAAA,GAAXkD,EAAWlD,EAAA,GACjD,GAAI8mC,EAAiB3iC,EAAMjB,GACzB,UAAAlL,OAAWkL,GACN,GAAY,cAARD,EAAqB,CAC9B,IAAM0W,EAAQzW,EAAM0Z,UAAU,SAAAtT,GAAE,MAAW,kBAAPA,IAC9B0+B,EAAe9kC,EAAMqd,QAI3B,OAHe,IAAX5G,IACFquB,EAAaruB,IAAWgsB,OAAU,cAAe,mBAE5CqC,EACF,MAAY,WAAR/kC,EACFvH,OAAOD,KAAKyH,GAAOoD,OAAO,SAACC,EAAKtD,GAAU,OAAAN,OAAY4D,MAAZ2/B,OAAkBjjC,EAAMC,EAAMD,GAAK,UAE/EC,EAoLoB+kC,CAAmBhlC,EAAKiI,EAASjI,GAAK8kC,UACzD3e,QAAOnmB,MAAKC,MAAOglC,EAAWh9B,EAASjI,GAAM6kC,EAAa1e,GAAOnmB,QAIrEilC,EAAa,SAAbA,EAAch9B,EAAU48B,GAC5B,OAAOpsC,OAAOD,KAAKyP,GAAU9S,IAAI,SAAAsS,GAAW,IAAAy9B,EAAA5B,IACpBr7B,EAASR,GADW,GACnCvG,EADmCgkC,EAAA,GAC7BjlC,EAD6BilC,EAAA,GAE1C,GAAa,YAAThkC,GACD2hC,MAAMC,QAAQ5hC,KACbA,EAAK4e,SAAS,YACb5e,EAAK4e,SAAS,UAAY5e,EAAK4e,SAAS,SAG3C,OAAS4iB,OAAUj7B,EAASw9B,EAAWhlC,EAAO4kC,KACzC,GAAIhB,EAAiB3iC,EAAMjB,GAChC,OAASyiC,OAAUj7B,EAAD,IAAA1S,OAAckL,KAC3B,GAAIiB,EAAK4e,SAAS,WAAa5e,EAAK4e,SAAS,WAAa5e,EAAK4e,SAAS,SAC7E,MAAwB,iBAAV7f,GACRyiC,OAAUj7B,EAASxH,KACnByiC,OAAUj7B,GAAWi7B,MAASziC,KAC/B,GAAa,mBAATiB,EACT,OAASwhC,OAAUziC,EAAOwH,IACrB,GAAa,QAATvG,EAAgB,CACzB,IAAMikC,EAAW1sC,OAAOD,KAAKyH,GAAOoD,OAAO,SAACC,EAAKtD,GAE/C,OADAsD,EAAItD,GAAOC,EAAMD,GAAK,GACfsD,OAET,OAASo/B,OAAUj7B,EAAD/H,OAAemlC,EAAap9B,IAAa09B,KACtD,OAAIjkC,EAAK4e,SAAS,SAAW5e,EAAK4e,SAAS,SAKvC4iB,OAAUj7B,EAJFhP,OAAOD,KAAKyH,GAAOoD,OAAO,SAACC,EAAKtD,GAE/C,OADAsD,EAAItD,GAAOC,EAAMD,GAAK,GACfsD,SAGY,QAAZmE,GAEAi7B,OAAUj7B,GAAWi7B,MADnBziC,EAAMyjC,MAAM,KAAKvuC,IAAI,SAAAud,GAAC,OAAIZ,SAASY,EAAG,UAGxCgwB,OAAUj7B,EAASxH,OAKrBynB,EAAmB,SAAA5B,GAW9B,OAAOA,EAAYziB,OAAO,SAACC,EAAKmE,GAC9B,IAAM29B,EAAc/4B,IAAEg5B,SAAS59B,EAAQzH,IAAKyH,EAAQu4B,MAAOv4B,EAAQqe,cAAc3wB,IAAI,SAAAkR,GAAE,OAAIA,EAAGi/B,gBACxFC,GAAiBvF,MAAOv4B,EAAQu4B,MAAOhgC,IAAKyH,EAAQzH,KAAOyH,EAAQ0e,MAAOqf,SAAU/9B,EAAQzH,KAAOyH,EAAQ0e,MAAOsf,WAAYh+B,EAAQu4B,MAAO0F,OAAQN,GAC3J,GAAI39B,EAAQkO,SAAU,CACpB,IAAMgwB,EAAcl+B,EAAQzH,KAAyB,aAAlByH,EAAQ0e,SAAxBpxB,OAAAiuC,IAAyD1/B,IAAKiiC,IAAfjiC,EAClE,SAAAvO,OAAAiuC,IAAW2C,GAAX3C,IAfwB,SAAtB4C,EAAuB9f,EAAaka,EAAOhgC,GAArB,OAA6B8lB,EAAYziB,OAAO,SAACC,EAAKmE,GAChF,IAAM29B,EAAc/4B,IAAEg5B,SAAS59B,EAAQzH,IAAKyH,EAAQu4B,MAAOv4B,EAAQqe,cAAc3wB,IAAI,SAAAkR,GAAE,OAAIA,EAAGi/B,gBACxFC,GAAiBvF,MAAOv4B,EAAQu4B,MAAOhgC,IAAKyH,EAAQzH,KAAOyH,EAAQ0e,MAAOqf,SAAUxlC,EAAKylC,WAAYzF,EAAO0F,OAAQN,GAC1H,GAAI39B,EAAQkO,SAAU,CACpB,IAAMgwB,KAAU5wC,OAAAiuC,IAAO1/B,IAAKiiC,IAC5B,SAAAxwC,OAAAiuC,IAAW2C,GAAX3C,IAA0B4C,EAAoBn+B,EAAQkO,SAAUqqB,EAAOhgC,KAEzE,SAAAjL,OAAAiuC,IAAW1/B,IAAKiiC,SAQYK,CAAoBn+B,EAAQkO,SAAUlO,EAAQu4B,MAAOv4B,EAAQzH,KAAOyH,EAAQ0e,SAExG,OAAQ1e,EAAQzH,KAAyB,aAAlByH,EAAQ0e,SAAxBpxB,OAAAiuC,IAAyD1/B,IAAKiiC,IAAfjiC,2CC5R1DhQ,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,2OAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,cACAC,QAAA,28CAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,cACAC,QAAA,sqBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,oECTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,cACAC,IAAA,oBACAC,QAAA,cACAC,QAAA,knBAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,8yDAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,qBACAC,IAAA,2BACAC,QAAA,cACAC,QAAA,mcAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,sECTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,4XAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTf,IAAAqyC,EAAAvyC,EAAA,QAAAA,EAAAK,EAAAkyC,GAA0a,qCCA1avyC,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,kBACAC,IAAA,wBACAC,QAAA,cACAC,QAAA,mcAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6uBCEf0M,UAAIjM,IAAI6xC,KAER,IAAMC,GACJC,GAAEtmC,QCbF0Y,OACE6tB,UAAW,YACX1+B,aAAc,eACd2+B,cAAe,gBACfC,MAAO,QACPx+B,WAAY,aACZy+B,eAAgB,kBAChBC,oBAAqB,uBACrBC,MAAO,QACPx2B,WAAY,aACZy2B,eAAgB,eAChBC,SAAU,WACVC,WAAY,cACZC,QAAS,WACTC,UAAW,YACXC,aAAc,gBACdC,SAAU,WACVC,OAAQ,SACRC,QAAS,UACTC,eAAgB,QAChBC,UAAW,YACXC,WAAY,cACZC,WAAY,cACZC,WAAY,cACZC,OAAQ,SACRC,cAAe,iBACfC,UAAW,aACXC,SAAU,YACVC,QAAS,UACTC,OAAQ,gBACRC,MAAO,SACPC,UAAW,WACXC,UAAW,WACXC,YAAa,aACbC,YAAa,aACbC,UAAW,WACXC,MAAO,SACPC,MAAO,QACPC,aAAc,gBACdC,UAAW,aACXC,gBAAiB,cACjBC,aAAc,gBACdC,UAAW,aACXC,gBAAiB,mBACjBxpC,IAAK,MACLypC,KAAM,OACNC,cAAe,iBACfC,YAAa,eACbC,YAAa,eACbC,WAAY,cACZC,QAAS,MACTC,QAAS,MACTniC,SAAU,YACVoiC,MAAO,QACPC,YAAa,eACbC,YAAa,kBACbC,YAAa,eACbC,IAAK,MACLC,IAAK,MACLC,UAAW,aACXC,MAAO,QACPC,cAAe,YACfxoC,KAAM,OACNyoC,aAAc,gBACd1hC,MAAO,QACPyN,QAAS,UACTjM,QAAS,UACT6W,SAAU,WACVnY,SAAU,WACV6E,cAAe,iBACfxB,gBAAiB,mBACjBo+B,cAAe,eAEjBC,QACEC,OAAQ,UACR3D,UAAW,YACX4D,OAAQ,SACRN,MAAO,QACPttC,KAAM,eAER6tC,OACEz4B,MAAO,aACP04B,MAAO,SACPC,kBAAmB,uBACnB/b,SAAU,gBACVC,SAAU,WACV+b,aAAc,qDACdC,aAAc,oEACdC,IAAK,MACLC,WAAY,kBACZC,qBAAsB,qEACtBC,sBAAuB,2BAEzBh/B,iBACEA,gBAAiB,mBACjBT,IAAK,MACLpQ,IAAK,MACL8vC,MAAO,QACPC,eAAgB,uBAChB5tC,QAAS,UACT8kC,OAAQ,qBACR+I,mBAAoB,yCACpBC,qBAAsB,qCACtBC,cAAe,8DACfC,eAAgB,mBAElB1E,eACEA,cAAe,gBACf2D,OAAQ,qBAEVliC,YACEH,MAAO,aACPqjC,YAAa,eACbC,KAAM,8MAER3E,OACErgB,YAAa,gKACb/H,OAAQ,cAEVjO,YACEo2B,cAAe,gBACf6E,aAAc,+NACdC,WAAY,8EACZC,eAAgB,gHAChBC,eAAgB,uLAChBC,gBAAiB,6LAEnBC,OACEC,aAAc,uCACdC,aAAc,0CACdC,UAAW,oBACXC,UAAW,2BACXn6B,MAAO,QACPo6B,WAAY,MACZvqC,KAAM,OACNwqC,OAAQ,SACRhG,OAAQ,SACRtxC,IAAK,MACLu3C,OAAQ,SACRC,SAAU,WACV53C,GAAI,KACJ0d,KAAM,OACNm6B,OAAQ,SACRC,SAAU,WACVznC,OAAQ,SACRzH,QAAS,UACTmvC,KAAM,OACNC,QAAS,UACTC,MAAO,QACP9jB,OAAQ,SACR+jB,OAAQ,SACRC,QAAS,UACTC,SAAU,YAEZxlC,UACEkkC,KAAM,sDACNhlB,YAAa,gUACbogB,cAAe,yBAEjB8C,OACE2C,OAAQ,SACRU,eAAgB,wBAChBC,YAAa,kDAEflD,KACEuC,OAAQ,SACRW,YAAa,4CAEfjD,KACEyB,KAAM,2EAERvB,OACEgD,OAAQ,eACRrG,cAAe,sBACf4E,KAAM,iLAER3jC,UACEqlC,QAAS,UACTC,MAAO,QACPC,YAAa,eACbC,SAAU,aAEZ5kC,OACEA,MAAO,QACP6kC,eAAgB,mBAChBlH,OAAQ,SACR1xC,GAAI,KACJ8E,KAAM,OACNuL,OAAQ,SACR20B,MAAO,QACPC,SAAU,WACVG,YAAa,cACbF,OAAQ,SACR2T,WAAY,UACZC,YAAa,cACblwC,QAAS,UACTmwC,SAAU,WACVC,WAAY,aACZC,MAAO,QACPC,UAAW,YACXC,WAAY,aACZC,YAAa,eACbC,WAAY,cACZC,gBAAiB,mBACjBC,eAAgB,kBAChBC,gBAAiB,mBACjBC,iBAAkB,oBAClBC,kBAAmB,qBACnBC,mBAAoB,sBACpBC,cAAe,iBACfC,eAAgB,kBAChBC,UAAW,yBACXC,WAAY,gCACZC,cAAe,6BACfC,QAAS,mCACTC,0BAA2B,gDAC3BC,qCAAsC,iDACtCC,uBAAwB,iCACxBC,kCAAmC,kCACnCC,qBAAsB,uCACtBpc,WAAY,sCACZqc,YAAa,kDACbC,aAAc,gBACdC,cAAe,0BACfC,cAAe,qBACf50C,MAAO,QACP4nC,OAAQ,SACRiN,uBAAwB,uEACxBC,wBAAyB,0EACzBC,kCAAmC,oEACnCC,oCAAqC,sEACrCC,uBAAwB,8EACxBC,0BAA2B,sGAC3BC,gCAAiC,gGACjCC,mCAAoC,4DACpCC,uCAAwC,+DACxCC,iCAAkC,0EAClCC,4BAA6B,oEAC7BC,2BAA4B,2HAC5BC,4BAA6B,kEAC7BC,wBAAyB,6EACzBC,oBAAqB,2DACrBC,GAAI,OACJC,UAAW,YACXzD,OAAQ,SACR0D,SAAU,WACV3hB,SAAU,WACVrlB,MAAO,SACPslB,SAAU,WACV2hB,OAAQ,SACRC,gBAAiB,2EACjBC,gBAAiB,0BACjBC,kBAAmB,4BACnBC,mBAAoB,4BACpBC,mBAAoB,4BACpBC,qBAAsB,yDACtBpc,sBAAuB,2BACvBqc,0BAA2B,mCAC3BC,eAAgB,2BAChBC,eAAgB,kBAChBC,gBAAiB,mBACjBC,kBAAmB,mCACnBC,iBAAkB,gCAClBC,eAAgB,kBAChBC,gBAAiB,mBACjBC,cAAe,iBACfC,eAAgB,kBAChBC,mBAAoB,4BACpBC,eAAgB,0DAChBC,gBAAiB,mBACjBC,4BAA6B,sCAC7BC,oBAAqB,gDACrBC,mBAAoB,sBACpBC,QAAS,UACTC,OAAQ,UAEVjxB,UACEA,SAAU,WACVkxB,eAAgB,kBAChBC,SAAU,YACVC,YAAa,2BACbC,kBAAmB,2BACnBC,oBAAqB,wBACrBC,OAAQ,SACRC,QAAS,UACTC,OAAQ,SACRC,SAAU,WACVC,qBAAsB,2BAExBta,aACEjc,KAAM,OACN0xB,UAAW,YACXD,MAAO,QACPjU,MAAO,QACPC,SAAU,WACV+Y,YAAa,eACbC,UAAW,aACXttB,SAAU,WACVutB,eAAgB,kBAChB1qC,MAAO,QACP0xB,OAAQ,SACR70B,OAAQ,SACR8tC,OAAQ,sBACR/Y,YAAa,cACbgZ,QAAS,UACTC,WAAY,sBACZC,sBAAuB,2BACvBC,kBACE3pC,MAAO,QACPslB,SAAU,WACVqkB,iBAAkB,oBAClBC,uBAAwB,qGACxBC,uBAAwB,kFACxBC,qBAAsB,uDACtBC,cAAe,kBACfC,iBAAkB,qBAClBC,gBAAiB,gCACjBC,aAAc,6BACdjV,QAAS,UACTkV,OAAQ,SACRtG,MAAO,UAGXuG,aACEC,iBAAkB,gBAClBC,cAAe,kBACfla,MAAO,QACPC,SAAU,WACVka,SAAU,YACVja,OAAQ,SACRkZ,QAAS,mBACThZ,YAAa,eAEf5jB,SACEA,QAAS,UACTsO,OAAQ,SACRsvB,MAAO,QACPzS,KAAM,OACN0S,UAAW,aACXC,QAAS,WACTP,OAAQ,SACRQ,WAAY,6CACZprB,OAAQ,SACR+jB,OAAQ,SACRsH,gBAAiB,kBACjBC,eAAgB,kBAChBC,QAAS,sBACT9wB,YAAa,wBACb+wB,iBAAkB,qBAClBC,YAAa,eACbpF,aAAc,gBACd91C,QAAS,UACTm7C,OAAQ,SACRpH,MAAO,QACPqH,WAAY,cACZC,UAAW,aACXpH,SAAU,YACVqH,aAAc,qBACdC,gBAAiB,wBACjBpC,OAAQ,qBACRD,QAAS,sBACTE,SAAU,uBACVxpB,UAAW,YACXE,aAAc,gBACd0rB,SAAU,YACVC,UAAW,aACXngD,GAAI,KACJi3B,QAAS,UACT7I,MAAO,QACPgyB,OAAQ,SACRjgD,QAAS,UACTkgD,eAAgB,kBAChBC,cAAe,+BACfC,UAAW,eACXC,SAAU,OACVvvB,WAAY,SACZwvB,SAAU,qBAEZC,eACEzB,iBAAkB,gBAClB0B,KAAM,OACNC,OAAQ,SACRC,SAAU,YAEZ/nC,eACEA,cAAe,kBAEjB7E,UACEA,SAAU,WACVrC,SAAU,WACVkvC,OAAQ,SACRC,OAAQ,SACRC,cAAe,iBACfC,OAAQ,SACRC,YAAa,cACbC,KAAM,iBACNC,QAAS,UACTC,SAAU,WACVC,KAAM,OACNC,IAAK,MACLC,WAAY,cACZplB,SAAU,WACVqlB,OAAQ,SACRC,SAAU,YACVC,QAAS,sBACTC,MAAO,mBACPC,aAAc,gBACdC,MAAO,QACP/zB,OAAQ,SACRg0B,OAAQ,SACRC,YAAa,mBACbC,aAAc,gBACdC,YAAa,eACbrY,QAAS,iCACT/X,YAAa,cACbqwB,aAAc,6BACdC,uBAAwB,0BACxBC,qBAAsB,wBACtBC,oBAAqB,yBACrBC,oBAAqB,uBACrBC,iBAAkB,WAClB/2C,MAAO,QACPg3C,oBAAqB,gCACrBC,QAAS,oBACTC,eAAgB,kBAChB37C,WAAY,kDACZ47C,eAAgB,kCAChBC,0BAA2B,0EAC3BC,YAAa,eACbC,YAAa,eACbrV,OAAQ,UAEVn4B,SACEC,aAAc,gBACdwtC,kBAAmB,wBACnBC,SAAU,cACV/sC,OAAQ,UACRC,UAAW,aACX+sC,aAAc,2BACdj9C,MAAO,QACPk9C,WAAY,cACZC,KAAM,OACNC,KAAM,OACNnL,OAAQ,SACR2D,OAAQ,SACRyH,OAAQ,SACRtjD,GAAI,KACJ4I,QAAS,UACTs8B,OAAQ,SACRqe,mBAAoB,wBACpBC,iBAAkB,qCAClB5uC,MAAO,QACP9P,KAAM,OACNi3C,gBAAiB,0BACjBC,kBAAmB,4BACnByH,UAAW,kBACX3H,gBAAiB,2EACjB4H,oBAAqB,mGAEvBC,OACEv5C,WAAY,cACZw5C,SAAU,+BACVC,UAAW,gCACXC,mBAAoB,mIACpBpzC,YAAa,eACbqzC,YAAa,0CACbr5C,WAAY,cACZs5C,kBAAmB,sBACnBC,gBAAiB,0BACjBn5C,YAAa,eACbo5C,sBAAuB,0BACvBC,cAAe,uBACfC,UAAW,aACXtkC,SAAU,WACVukC,SAAU,WACVvyB,YAAa,cACbxmB,MAAO,QACPg5C,QAAS,UACT73C,UAAW,YACX83C,YAAa,kBACbC,eAAgB,sBAChBC,aAAc,gBACdp2C,WAAY,cACZq2C,aAAc,gBACdC,oBAAqB,wBACrBC,YAAa,4BACbC,YAAa,wBACbC,iBAAkB,yBAClBC,0BAA2B,8CAC3BC,aAAc,uBACdC,aAAc,iEACdC,mBAAoB,yBACpBC,mBAAoB,2CACpBC,yBAA0B,4BAC1BC,SAAU,WACVC,WAAY,gBACZ7+C,IAAK,MACL8+C,cAAe,kBACfzE,OAAQ,SACR0E,eAAgB,kBAChBC,mBAAoB,8BACpBj5C,KAAM,OACNk5C,UAAW,aACXC,oBAAqB,wCACrBC,mBAAoB,uCACpBC,OAAQ,SACRnY,OAAQ,SACRoY,gBAAiB,mCACjBC,iBAAkB,6BAClBC,gBAAiB,4BACjBC,KAAM,OACNC,gBAAiB,qBACjBC,UAAW,8BDjfRC,KAELC,GAAE36C,QEjBF0Y,OACE6tB,UAAW,KACX1+B,aAAc,KACd2+B,cAAe,KACfC,MAAO,MACPx+B,WAAY,QACZy+B,eAAgB,OAChBC,oBAAqB,OACrBC,MAAO,KACPx2B,WAAY,KACZy2B,eAAgB,KAChBC,SAAU,WACVC,WAAY,UACZC,QAAS,OACTC,UAAW,YACXC,aAAc,OACdC,SAAU,WACVC,OAAQ,SACRC,QAAS,UACTC,eAAgB,MAChBC,UAAW,OACXC,WAAY,YACZC,WAAY,YACZC,WAAY,QACZC,OAAQ,KACRC,cAAe,OACfC,UAAW,MACXC,SAAU,OACVC,QAAS,OACTC,OAAQ,OACRC,MAAO,MACPC,UAAW,QACXC,UAAW,QACXC,YAAa,UACbC,YAAa,UACbC,UAAW,QACXC,MAAO,MACPC,MAAO,QACPC,aAAc,UACdC,UAAW,UACXC,gBAAiB,WACjBC,aAAc,UACdC,UAAW,OACXC,gBAAiB,QACjBxpC,IAAK,MACLypC,KAAM,KACNC,cAAe,OACfC,YAAa,OACbC,YAAa,OACbC,WAAY,OACZC,QAAS,MACTC,QAAS,MACTniC,SAAU,OACVoiC,MAAO,QACPC,YAAa,eACbC,YAAa,kBACbC,YAAa,eACbC,IAAK,MACLC,IAAK,MACLC,UAAW,aACXC,MAAO,KACPC,cAAe,YACfxoC,KAAM,MACNyoC,aAAc,MAEhBE,QACEC,OAAQ,OACR3D,UAAW,KACX4D,OAAQ,OACRN,MAAO,KACPttC,KAAM,QAER6tC,OACEz4B,MAAO,OACP04B,MAAO,KACP9b,SAAU,KACVC,SAAU,KACVic,IAAK,MACLC,WAAY,QACZkQ,eAAgB,yBAElBpU,eACEA,cAAe,KACf2D,OAAQ,aAEVliC,YACEH,MAAO,OACPqjC,YAAa,OACbC,KAAM,0GAER3E,OACErgB,YAAa,+CACb/H,OAAQ,QAEVjO,YACEo2B,cAAe,KACf6E,aAAc,2FACdC,WAAY,oBACZC,eAAgB,yBAChBC,eAAgB,oEAChBC,gBAAiB,kEAEnBC,OACEC,aAAc,iBACdC,aAAc,kBACdC,UAAW,OACXC,UAAW,QACXn6B,MAAO,KACPo6B,WAAY,MACZvqC,KAAM,KACNwqC,OAAQ,KACRhG,OAAQ,KACRtxC,IAAK,KACLu3C,OAAQ,KACRC,SAAU,MACV53C,GAAI,KACJ0d,KAAM,KACNm6B,OAAQ,KACRC,SAAU,MACVznC,OAAQ,KACRzH,QAAS,KACTmvC,KAAM,KACNC,QAAS,KACTC,MAAO,KACP9jB,OAAQ,KACR+jB,OAAQ,MACRC,QAAS,OAEXvlC,UACEkkC,KAAM,eACNhlB,YAAa,+GACbogB,cAAe,QAEjB8C,OACE2C,OAAQ,KACRU,eAAgB,SAChBC,YAAa,wBAEflD,KACEuC,OAAQ,KACRW,YAAa,kBAEfjD,KACEyB,KAAM,qCAERvB,OACEgD,OAAQ,KACRrG,cAAe,OACf4E,KAAM,mEAER3jC,UACEqlC,QAAS,KACTC,MAAO,KACPC,YAAa,OACbC,SAAU,UFvIP4N,KAELC,GAAE96C,QGrBF0Y,OACE6tB,UAAW,mBACX1+B,aAAc,eACd2+B,cAAe,gBACfC,MAAO,OACPx+B,WAAY,WACZy+B,eAAgB,wBAChBC,oBAAqB,2BACrBC,MAAO,SACPx2B,WAAY,cACZy2B,eAAgB,eAChBC,SAAU,WACVC,WAAY,cACZC,QAAS,YACTC,UAAW,iBACXC,aAAc,eACdC,SAAU,iBACVC,OAAQ,SACRC,QAAS,UACTC,eAAgB,QAChBC,UAAW,YACXC,WAAY,cACZC,WAAY,cACZC,WAAY,cACZC,OAAQ,WACRC,cAAe,iBACfC,UAAW,oBACXC,SAAU,YACVC,QAAS,UACTC,OAAQ,kBACRC,MAAO,SACPC,UAAW,WACXC,UAAW,WACXC,YAAa,aACbC,YAAa,aACbC,UAAW,WACXC,MAAO,SACPC,MAAO,QACPC,aAAc,iBACdC,UAAW,kBACXC,gBAAiB,SACjBC,aAAc,gBACdC,UAAW,aACXC,gBAAiB,mBACjBxpC,IAAK,UACLypC,KAAM,aACNC,cAAe,iBACfC,YAAa,kBACbC,YAAa,uBACbC,WAAY,mBACZC,QAAS,MACTC,QAAS,MACTniC,SAAU,sBACVoiC,MAAO,QACPC,YAAa,mBACbC,YAAa,sBACbC,YAAa,cACbC,IAAK,MACLC,IAAK,MACLC,UAAW,iBACXC,MAAO,OACPC,cAAe,YACfxoC,KAAM,OACNyoC,aAAc,kBAEhBE,QACEC,OAAQ,QACR3D,UAAW,mBACX4D,OAAQ,SACRN,MAAO,OACPttC,KAAM,iBAER6tC,OACEz4B,MAAO,uBACP04B,MAAO,SACP9b,SAAU,UACVC,SAAU,aACVic,IAAK,OACLC,WAAY,eACZkQ,eAAgB,uFAElBpU,eACEA,cAAe,gBACf2D,OAAQ,sBAEVliC,YACEH,MAAO,eACPqjC,YAAa,mBACbC,KAAM,8MAER3E,OACErgB,YAAa,gKACb/H,OAAQ,YAEVjO,YACEo2B,cAAe,gBACf6E,aAAc,+NACdC,WAAY,8EACZC,eAAgB,gHAChBC,eAAgB,uLAChBC,gBAAiB,6LAEnBC,OACEC,aAAc,uCACdC,aAAc,0CACdC,UAAW,oBACXC,UAAW,2BACXn6B,MAAO,SACPo6B,WAAY,cACZvqC,KAAM,OACNwqC,OAAQ,SACRhG,OAAQ,SACRtxC,IAAK,SACLu3C,OAAQ,WACRC,SAAU,WACV53C,GAAI,KACJ0d,KAAM,QACNm6B,OAAQ,QACRC,SAAU,SACVznC,OAAQ,SACRzH,QAAS,WACTmvC,KAAM,SACNC,QAAS,WACTC,MAAO,QACP9jB,OAAQ,WACR+jB,OAAQ,WACRC,QAAS,aAEXvlC,UACEkkC,KAAM,sDACNhlB,YAAa,gUACbogB,cAAe,6BAEjB8C,OACE2C,OAAQ,WACRU,eAAgB,yBAChBC,YAAa,0CAEflD,KACEuC,OAAQ,WACRW,YAAa,0CAEfjD,KACEyB,KAAM,2EAERvB,OACEgD,OAAQ,eACRrG,cAAe,yBACf4E,KAAM,iLAER3jC,UACEqlC,QAAS,aACTC,MAAO,SACPC,YAAa,eACbC,SAAU,kBHnIP8N,KAELC,GAAEh7C,MIzBF0Y,OACE6tB,UAAW,iBACX1+B,aAAc,eACd2+B,cAAe,gBACfC,MAAO,QACPx+B,WAAY,gBACZy+B,eAAgB,wBAChBC,oBAAqB,0BACrBC,MAAO,SACPx2B,WAAY,cACZy2B,eAAgB,eAChBC,SAAU,WACVC,WAAY,cACZC,QAAS,WACTC,UAAW,YACXC,aAAc,oBACdC,SAAU,WACVC,OAAQ,SACRC,QAAS,UACTC,eAAgB,QAChBC,UAAW,YACXC,WAAY,cACZC,WAAY,cACZC,WAAY,cACZC,OAAQ,SACRC,cAAe,iBACfC,UAAW,aACXC,SAAU,YACVC,QAAS,UACTC,OAAQ,mBACRC,MAAO,SACPC,UAAW,WACXC,UAAW,WACXC,YAAa,aACbC,YAAa,aACbC,UAAW,WACXC,MAAO,SACPC,MAAO,SACPC,aAAc,iBACdC,UAAW,aACXC,gBAAiB,cACjBC,aAAc,iBACdC,UAAW,gBACXC,gBAAiB,8BACjBxpC,IAAK,SACLypC,KAAM,YACNC,cAAe,mBACfC,YAAa,sBACbC,YAAa,mBACbC,WAAY,kBACZC,QAAS,MACTC,QAAS,MACTniC,SAAU,iBACVoiC,MAAO,QACPC,YAAa,oBACbC,YAAa,4BACbC,YAAa,oBACbC,IAAK,MACLC,IAAK,MACLC,UAAW,kBACXC,MAAO,OACPC,cAAe,YACfxoC,KAAM,OACNyoC,aAAc,kBACd1hC,MAAO,eAET4hC,QACEC,OAAQ,eACR3D,UAAW,iBACX4D,OAAQ,SACRN,MAAO,OACPttC,KAAM,gBAER6tC,OACEz4B,MAAO,yBACP04B,MAAO,eACP9b,SAAU,oBACVC,SAAU,SACVic,IAAK,eACLC,WAAY,qBACZkQ,eAAgB,kFAElBpU,eACEA,cAAe,gBACf2D,OAAQ,oBAEVliC,YACEH,MAAO,iBACPqjC,YAAa,mBACbC,KAAM,qNAER3E,OACErgB,YAAa,2KACb/H,OAAQ,oBAEVjO,YACEo2B,cAAe,gBACf6E,aAAc,+NACdC,WAAY,8EACZC,eAAgB,gHAChBC,eAAgB,uLAChBC,gBAAiB,6LAEnBC,OACEC,aAAc,8CACdC,aAAc,8CACdC,UAAW,sBACXC,UAAW,gCACXn6B,MAAO,QACPo6B,WAAY,MACZvqC,KAAM,OACNwqC,OAAQ,UACRhG,OAAQ,WACRtxC,IAAK,UACLu3C,OAAQ,WACRC,SAAU,aACV53C,GAAI,KACJ0d,KAAM,OACNm6B,OAAQ,QACRC,SAAU,WACVznC,OAAQ,WACRzH,QAAS,UACTmvC,KAAM,YACNC,QAAS,WACTC,MAAO,QACP9jB,OAAQ,WACR+jB,OAAQ,UACRC,QAAS,aAEXvlC,UACEkkC,KAAM,yDACNhlB,YAAa,2TACbogB,cAAe,6BAEjB8C,OACE2C,OAAQ,WACRU,eAAgB,qCAChBC,YAAa,6DAEflD,KACEuC,OAAQ,WACRW,YAAa,uDAEfjD,KACEyB,KAAM,uEAERvB,OACEgD,OAAQ,kBACRrG,cAAe,2BACf4E,KAAM,8LAER3jC,UACEqlC,QAAS,aACTC,MAAO,SACPC,YAAa,oBACbC,SAAU,uBJ7HR3rC,EAAO,IAAI8kC,KAGf6U,OAAQ/+C,IAAQC,IAAI,aAAe,KAEnCkqC,aAGa/kC,2hBKnCR,SAAeJ,EAAtBjH,EAAAC,EAAAqB,EAAAC,EAAAqN,EAAAC,GAAA,OAAAoyC,EAAA9gD,MAAAZ,KAAAzE,8CAAO,SAAAsF,EAA+BwG,EAAUC,EAAMC,EAAWC,EAAUmwB,EAAM52B,GAA1E,IAAAsD,EAAA,OAAAs9C,EAAA9mD,EAAAoG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACCiD,EAAO,IAAIu9C,SACO,KAApBp6C,EAASq6C,QACXx9C,EAAKlB,IAAI,WAAYqE,GAEE,KAArBD,EAAUs6C,QACZx9C,EAAKlB,IAAI,YAAaoE,GAExBlD,EAAKlB,IAAI,OAAQmE,GARZpG,EAAAE,KAAA,EAUQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,EAA9B,UACH7F,OAAQ,OACRC,QAASC,EAAYX,GACrBsD,SAfG,cAAAnD,EAAAS,OAAA,SAAAT,EAAAU,MAAA,wBAAAV,EAAAW,SAAAhB,6BAmBA,SAASihD,EAAqBnqB,EAAMtwB,EAAUzH,GACnD,SAAA/D,OAAUR,YAASs8B,GAAnB,WAAA97B,OAAkCwL,EAAlC,KAAAxL,OAA8C+D,GAGzC,SAAeiJ,EAAtB0G,EAAAC,EAAAI,GAAA,OAAAmyC,EAAAnhD,MAAAZ,KAAAzE,8CAAO,SAAA2G,EAA0By1B,EAAM52B,EAAOsG,GAAvC,OAAAs6C,EAAA9mD,EAAAoG,KAAA,SAAAkB,GAAA,cAAAA,EAAAhB,KAAAgB,EAAAf,MAAA,cAAAe,EAAAf,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,GACjC7F,OAAQ,OACRC,QAASC,EAAYX,KALlB,cAAAoB,EAAAR,OAAA,SAAAQ,EAAAP,MAAA,wBAAAO,EAAAN,SAAAK,6BASA,SAAesG,EAAtBqH,EAAAG,EAAAC,EAAAC,GAAA,OAAA8xC,EAAAphD,MAAAZ,KAAAzE,8CAAO,SAAAoN,EAA+BtB,EAAUE,EAAWowB,EAAM52B,GAA1D,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAA2H,GAAA,cAAAA,EAAAzH,KAAAyH,EAAAxH,MAAA,cAAAwH,EAAAxH,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,EAA9B,qBAAAxL,OAA0D0L,GAC7D/F,OAAQ,SACRC,QAASC,EAAYX,KALlB,cAAA6H,EAAAjH,OAAA,SAAAiH,EAAAhH,MAAA,wBAAAgH,EAAA/G,SAAA8G,6BASA,SAAeQ,EAAtB4I,EAAAC,EAAAC,GAAA,OAAAgwC,EAAArhD,MAAAZ,KAAAzE,8CAAO,SAAA0N,EAA0B0uB,EAAM52B,EAAOsG,GAAvC,OAAAs6C,EAAA9mD,EAAAoG,KAAA,SAAAiI,GAAA,cAAAA,EAAA/H,KAAA+H,EAAA9H,MAAA,cAAA8H,EAAA9H,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,GACjC7F,OAAQ,SACRC,QAASC,EAAYX,KALlB,cAAAmI,EAAAvH,OAAA,SAAAuH,EAAAtH,MAAA,wBAAAsH,EAAArH,SAAAoH,6BASA,SAAeU,EAAtB4uB,EAAAC,EAAAC,EAAAG,EAAAC,GAAA,OAAAqpB,EAAAthD,MAAAZ,KAAAzE,8CAAO,SAAAgO,EAA4BC,EAAiBnC,EAAUoC,EAAIkuB,EAAM52B,GAAjE,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAAyI,GAAA,cAAAA,EAAAvI,KAAAuI,EAAAtI,MAAA,cAAAsI,EAAAtI,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAK,oCACLC,OAAQ,OACRC,QAASC,EAAYX,GACrBsD,KAAoB,KAAdoF,EAAGo4C,QACHtgD,IAAKlG,YAASmO,GAAkB5J,KAAMyH,IACtC9F,IAAKlG,YAASmO,GAAkB5J,KAAMyH,EAAUoC,MACtD04C,QAAS,IATN,cAAAz4C,EAAA/H,OAAA,SAAA+H,EAAA9H,MAAA,wBAAA8H,EAAA7H,SAAA0H,6BAaA,SAAesB,EAAtBiuB,EAAAG,EAAAC,EAAAC,EAAAG,GAAA,OAAA8oB,EAAAxhD,MAAAZ,KAAAzE,8CAAO,SAAAuO,EAAyBzC,EAAUnB,EAAMR,EAAUiyB,EAAM52B,GAAzD,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAAgJ,GAAA,cAAAA,EAAA9I,KAAA8I,EAAA7I,MAAA,cAAA6I,EAAA7I,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,EAA9B,UAAAxL,OAA+CqK,EAA/C,eAAArK,OAAiE6J,GACpElE,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAAkJ,EAAAtI,OAAA,SAAAsI,EAAArI,MAAA,wBAAAqI,EAAApI,SAAAiI,6BASA,SAAeoB,EAAtBquB,EAAAC,GAAA,OAAA6oB,EAAAzhD,MAAAZ,KAAAzE,8CAAO,SAAAkP,EAA4BktB,EAAM52B,GAAlC,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAA2J,GAAA,cAAAA,EAAAzJ,KAAAyJ,EAAAxJ,MAAA,cAAAwJ,EAAAxJ,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAK,kCACLC,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAA6J,EAAAjJ,OAAA,SAAAiJ,EAAAhJ,MAAA,wBAAAgJ,EAAA/I,SAAA4I,6BASA,SAAeP,EAAtByvB,EAAAC,EAAAC,EAAAG,GAAA,OAAAsoB,EAAA1hD,MAAAZ,KAAAzE,8CAAO,SAAAyP,EAAyB9E,EAAMR,EAAUiyB,EAAM52B,GAA/C,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAAgK,GAAA,cAAAA,EAAA9J,KAAA8J,EAAA7J,MAAA,cAAA6J,EAAA7J,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,iCAAA1F,OAAmCqK,EAAnC,eAAArK,OAAqD6J,GACxDlE,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAAkK,EAAAtJ,OAAA,SAAAsJ,EAAArJ,MAAA,wBAAAqJ,EAAApJ,SAAAmJ,6BASA,SAAeuB,EAAtB0tB,EAAAC,EAAAC,GAAA,OAAAooB,EAAA3hD,MAAAZ,KAAAzE,8CAAO,SAAA+P,EAA+BqsB,EAAM52B,EAAO2L,GAA5C,OAAAi1C,EAAA9mD,EAAAoG,KAAA,SAAAsK,GAAA,cAAAA,EAAApK,KAAAoK,EAAAnK,MAAA,cAAAmK,EAAAnK,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,uCAAA1F,OAAyCR,YAASqR,IACrDlL,OAAQ,MACRC,QAASC,EAAYX,KALlB,cAAAwK,EAAA5J,OAAA,SAAA4J,EAAA3J,MAAA,wBAAA2J,EAAA1J,SAAAyJ,6BASA,SAAeE,EAAtB+uB,EAAAC,GAAA,OAAAgoB,EAAA5hD,MAAAZ,KAAAzE,8CAAO,SAAAqQ,EAA2B+rB,EAAM52B,GAAjC,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAA4K,GAAA,cAAAA,EAAA1K,KAAA0K,EAAAzK,MAAA,cAAAyK,EAAAzK,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAK,kCACLC,OAAQ,OACRC,QAASC,EAAYX,KALlB,cAAA8K,EAAAlK,OAAA,SAAAkK,EAAAjK,MAAA,wBAAAiK,EAAAhK,SAAA+J,6BASA,SAAeE,EAAtB2uB,EAAAK,EAAAC,EAAAC,GAAA,OAAAynB,EAAA7hD,MAAAZ,KAAAzE,8CAAO,SAAA6Q,EAAgCurB,EAAM52B,EAAOsG,EAAU6vB,GAAvD,OAAAyqB,EAAA9mD,EAAAoG,KAAA,SAAAqL,GAAA,cAAAA,EAAAnL,KAAAmL,EAAAlL,MAAA,cAAAkL,EAAAlL,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,GACjC7F,OAAQ,QACRC,QAASC,EAAYX,GACrBsD,MAAQ6yB,YACRirB,QAAS,IAPN,cAAA71C,EAAA3K,OAAA,SAAA2K,EAAA1K,MAAA,wBAAA0K,EAAAzK,SAAAuK,6BAWA,SAAegB,EAAtB+tB,EAAAC,EAAAC,EAAAG,EAAAC,EAAAC,EAAAC,GAAA,OAAA+mB,EAAA9hD,MAAAZ,KAAAzE,8CAAO,SAAAuR,EAA+BzF,EAAUE,EAAWwF,EAAcC,EAAaC,EAAO0qB,EAAM52B,GAA5F,OAAA4gD,EAAA9mD,EAAAoG,KAAA,SAAAiM,GAAA,cAAAA,EAAA/L,KAAA+L,EAAA9L,MAAA,cAAA8L,EAAA9L,KAAA,EACQC,aACXC,QAASjG,YAASs8B,GAClBp2B,IAAG,4BAAA1F,OAA8BwL,EAA9B,UACH7F,OAAQ,QACRC,QAASC,EAAYX,GACrBsD,MAAQkD,YAAWo7C,cAAe51C,EAAc61C,aAAc51C,EAAaC,WANxE,cAAAC,EAAAvL,OAAA,SAAAuL,EAAAtL,MAAA,wBAAAsL,EAAArL,SAAAiL,6BAUP,IAAMpL,EAAc,SAACX,GAAD,OAAWA,GAAUqB,cAAA,UAAAvG,OAA2BwG,uDCrIpEjI,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,4kCAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,WACAC,IAAA,iBACAC,QAAA,cACAC,QAAA,27CAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,20BAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,odAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,YACAC,IAAA,kBACAC,QAAA,cACAC,QAAA,gdAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,kCCRfmF,EAAAC,SAAkBof,SAAA,UAAAE,eAAA,UAAA6jC,kBAAA,UAAAjkC,OAAA,UAAAkkC,UAAA,UAAAC,UAAA,UAAAC,aAAA,UAAAC,aAAA,4CCDlB,IAAAC,EAAA9oD,EAAA,QAAA+oD,EAAA/oD,EAAAK,EAAAyoD,GAAAE,EAAAhpD,EAAA,QAIM89C,EAAUmL,IAAM1M,QACpBwL,QAAS,MAIXjK,EAAQoL,aAAal/C,SAASrJ,IAC5B,SAAAqJ,GAAQ,OAAIA,GACZ,SAAA4yB,GACE,IAAIga,EAGJ,GAFAxK,QAAQ34B,IAAR,SAAAhS,OAAqBm7B,IAEjBA,EAAM5yB,SAAU,CAClB,IAAMm/C,EAAQvsB,EAAM5yB,SAASC,KAAK2yB,MAAQA,EAAM5yB,SAASC,KAAK2yB,MAAQA,EAAM5yB,SAASC,KACrF2sC,EAAgBha,EAAM5yB,SAAS3C,QAAQ,gBAAgBmlB,SAAS,oBAAjD,GAAA/qB,OAERm7B,EAAMnvB,QAFE,OAAAhM,OAEW0nD,GAFX,GAAA1nD,OACRm7B,EAAMnvB,cAGbmpC,EAAeha,EAQjB,OALApvB,mBACEC,QAASmpC,EACThpC,KAAM,QACNC,SAAU,MAEL4e,QAAQ8P,OAAOK,KAIXkhB,yCCjCf99C,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,iBACAC,IAAA,uBACAC,QAAA,cACAC,QAAA,w+BAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,aACAC,QAAA,qXAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTfF,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,QAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,QAAAO,EAAAP,EAAAK,EAAAC,GAEAE,EAAA,IAAiBJ,EAAAK,GACjBC,GAAA,aACAC,IAAA,mBACAC,QAAA,cACAC,QAAA,4MAEaN,EAAAE,EAAMK,IAAAN,GACJN,EAAA,6CCTf,IAAAkpD,EAAAppD,EAAA,QAAAA,EAAAK,EAAA+oD,GAAkhB,qCCAlhB,ICAgNC,GCQhN7jD,KAAA,UACA8V,OACAguC,WACA17C,KAAAqS,OACAO,UAAA,GAEA+oC,WACA37C,KAAAqS,OACAxE,QAAA,KAGAiB,UACA8sC,SADA,WAEA,eAAA/nD,OAAAmE,KAAA0jD,YAEAG,SAJA,WAKA,OAAA7jD,KAAA2jD,UACA,YAAA3jD,KAAA2jD,UAEA,sCCnBA9jD,EAAgBN,OAAAO,EAAA,EAAAP,CACdkkD,EHTF,WAA0B,IAAa1jD,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,MAA/DF,KAA+D8jD,IAAwBxtC,MAAvFtW,KAAuF6jD,SAAAzjD,OAA0B2jD,cAAA,SAAjH/jD,KAAuIgkD,aAAA9jD,EAAA,OAA4BE,OAAO6jD,aAA1KjkD,KAA0K4jD,mBGYpM,EACA,KACA,WACA,MAIA/jD,EAAAQ,QAAAC,OAAA,YACehG,EAAA,EAAAuF,gCCnBfJ,EAAAC,SAAkBof,SAAA,UAAAE,eAAA,UAAA6jC,kBAAA,UAAAjkC,OAAA,UAAAkkC,UAAA,UAAAC,UAAA,UAAAC,aAAA,UAAAC,aAAA","file":"static/js/app.ac1962ee.js","sourcesContent":["import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-pdf\",\n \"use\": \"icon-pdf-usage\",\n \"viewBox\": \"0 0 1024 1024\",\n \"content\": \"<symbol viewBox=\\\"0 0 1024 1024\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"icon-pdf\\\"><path d=\\\"M869.073 277.307H657.111V65.344l211.962 211.963zm-238.232 26.27V65.344l-476.498-.054v416.957h714.73v-178.67H630.841zm-335.836 360.57c-5.07-3.064-10.944-5.133-17.61-6.201-6.67-1.064-13.603-1.6-20.81-1.6h-48.821v85.641h48.822c7.206 0 14.14-.532 20.81-1.6 6.665-1.065 12.54-3.133 17.609-6.202 5.064-3.063 9.134-7.406 12.208-13.007 3.065-5.602 4.6-12.937 4.6-22.011 0-9.07-1.535-16.408-4.6-22.01-3.074-5.603-7.144-9.94-12.208-13.01zM35.82 541.805v416.904h952.358V541.805H35.821zm331.421 191.179c-3.6 11.071-9.343 20.879-17.209 29.413-7.874 8.542-18.078 15.408-30.617 20.61-12.544 5.206-27.747 7.807-45.621 7.807h-66.036v102.45h-62.831V607.517h128.867c17.874 0 33.077 2.6 45.62 7.802 12.541 5.207 22.745 12.076 30.618 20.615 7.866 8.538 13.604 18.277 17.21 29.212 3.6 10.943 5.401 22.278 5.401 34.018 0 11.477-1.8 22.752-5.402 33.819zM644.9 806.417c-5.343 17.61-13.408 32.818-24.212 45.627-10.807 12.803-24.283 22.879-40.423 30.213-16.146 7.343-35.155 11.007-57.03 11.007h-123.26V607.518h123.26c18.41 0 35.552 2.941 51.428 8.808 15.873 5.869 29.618 14.671 41.22 26.412 11.608 11.744 20.674 26.411 27.217 44.02 6.535 17.61 9.803 38.288 9.803 62.035 0 20.81-2.67 40.02-8.003 57.624zm245.362-146.07h-138.07v66.03h119.66v48.829h-119.66v118.058h-62.83V607.518h200.9v52.829h-.001zm-318.2 25.611c-6.402-8.266-14.877-14.604-25.412-19.01-10.544-4.402-23.551-6.602-39.019-6.602h-44.825v180.088h56.029c9.07 0 17.872-1.463 26.415-4.401 8.535-2.932 16.14-7.802 22.812-14.609 6.665-6.8 12.007-15.667 16.007-26.61 4.003-10.94 6.003-24.275 6.003-40.021 0-14.408-1.4-27.416-4.202-39.019-2.8-11.607-7.406-21.542-13.808-29.816zm0 0\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-people\",\n \"use\": \"icon-people-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-people\\\"><path d=\\\"M104.185 95.254c8.161 7.574 13.145 17.441 13.145 28.28 0 1.508-.098 2.998-.285 4.466h-10.784c.238-1.465.403-2.948.403-4.465 0-8.983-4.36-17.115-11.419-23.216C86 104.66 75.355 107.162 64 107.162c-11.344 0-21.98-2.495-31.22-6.83-7.064 6.099-11.444 14.218-11.444 23.203 0 1.517.165 3 .403 4.465H10.955a35.444 35.444 0 0 1-.285-4.465c0-10.838 4.974-20.713 13.127-28.291C9.294 85.42.003 70.417.003 53.58.003 23.99 28.656.001 64 .001s63.997 23.988 63.997 53.58c0 16.842-9.299 31.85-23.812 41.673zM64 36.867c-29.454 0-53.33-10.077-53.33 15.342 0 25.418 23.876 46.023 53.33 46.023 29.454 0 53.33-20.605 53.33-46.023 0-25.419-23.876-15.342-53.33-15.342zm24.888 25.644c-3.927 0-7.111-2.665-7.111-5.953 0-3.288 3.184-5.954 7.11-5.954 3.928 0 7.111 2.666 7.111 5.954s-3.183 5.953-7.11 5.953zm-3.556 16.372c0 4.11-9.55 7.442-21.332 7.442-11.781 0-21.332-3.332-21.332-7.442 0-1.06.656-2.064 1.8-2.976 3.295 2.626 10.79 4.465 19.532 4.465 8.743 0 16.237-1.84 19.531-4.465 1.145.912 1.801 1.916 1.801 2.976zm-46.22-16.372c-3.927 0-7.11-2.665-7.11-5.953 0-3.288 3.183-5.954 7.11-5.954 3.927 0 7.111 2.666 7.111 5.954s-3.184 5.953-7.11 5.953z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-eye-open\",\n \"use\": \"icon-eye-open-usage\",\n \"viewBox\": \"0 0 1024 1024\",\n \"content\": \"<symbol class=\\\"icon\\\" viewBox=\\\"0 0 1024 1024\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" id=\\\"icon-eye-open\\\"><defs><style></style></defs><path d=\\\"M512 128q69.675 0 135.51 21.163t115.498 54.997 93.483 74.837 73.685 82.006 51.67 74.837 32.17 54.827L1024 512q-2.347 4.992-6.315 13.483T998.87 560.17t-31.658 51.669-44.331 59.99-56.832 64.34-69.504 60.16-82.347 51.5-94.848 34.687T512 896q-69.675 0-135.51-21.163t-115.498-54.826-93.483-74.326-73.685-81.493-51.67-74.496-32.17-54.997L0 513.707q2.347-4.992 6.315-13.483t18.816-34.816 31.658-51.84 44.331-60.33 56.832-64.683 69.504-60.331 82.347-51.84 94.848-34.816T512 128.085zm0 85.333q-46.677 0-91.648 12.331t-81.152 31.83-70.656 47.146-59.648 54.485-48.853 57.686-37.675 52.821-26.325 43.99q12.33 21.674 26.325 43.52t37.675 52.351 48.853 57.003 59.648 53.845T339.2 767.02t81.152 31.488T512 810.667t91.648-12.331 81.152-31.659 70.656-46.848 59.648-54.186 48.853-57.344 37.675-52.651T927.957 512q-12.33-21.675-26.325-43.648t-37.675-52.65-48.853-57.345-59.648-54.186-70.656-46.848-81.152-31.659T512 213.334zm0 128q70.656 0 120.661 50.006T682.667 512 632.66 632.661 512 682.667 391.339 632.66 341.333 512t50.006-120.661T512 341.333zm0 85.334q-35.328 0-60.33 25.002T426.666 512t25.002 60.33T512 597.334t60.33-25.002T597.334 512t-25.002-60.33T512 426.666z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-exit-fullscreen\",\n \"use\": \"icon-exit-fullscreen-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-exit-fullscreen\\\"><path d=\\\"M49.217 41.329l-.136-35.24c-.06-2.715-2.302-4.345-5.022-4.405h-3.65c-2.712-.06-4.866 2.303-4.806 5.016l.152 19.164-24.151-23.79a6.698 6.698 0 0 0-9.499 0 6.76 6.76 0 0 0 0 9.526l23.93 23.713-18.345.074c-2.712-.069-5.228 1.813-5.64 5.02v3.462c.069 2.721 2.31 4.97 5.022 5.03l35.028-.207c.052.005.087.025.133.025l2.457.054a4.626 4.626 0 0 0 3.436-1.38c.88-.874 1.205-2.096 1.169-3.462l-.262-2.465c0-.048.182-.081.182-.136h.002zm52.523 51.212l18.32-.073c2.713.06 5.224-1.609 5.64-4.815v-3.462c-.068-2.722-2.317-4.97-5.021-5.04l-34.58.21c-.053 0-.086-.021-.138-.021l-2.451-.06a4.64 4.64 0 0 0-3.445 1.381c-.885.868-1.201 2.094-1.174 3.46l.27 2.46c.005.06-.177.095-.177.141l.141 34.697c.069 2.713 2.31 4.338 5.022 4.397l3.45.006c2.705.062 4.867-2.31 4.8-5.026l-.153-18.752 24.151 23.946a6.69 6.69 0 0 0 9.494 0 6.747 6.747 0 0 0 0-9.523L101.74 92.54v.001zM48.125 80.662a4.636 4.636 0 0 0-3.437-1.382l-2.457.06c-.05 0-.082.022-.137.022l-35.025-.21c-2.712.07-4.957 2.318-5.022 5.04v3.462c.409 3.206 2.925 4.874 5.633 4.814l18.554.06-24.132 23.928c-2.62 2.626-2.62 6.89 0 9.524a6.694 6.694 0 0 0 9.496 0l24.155-23.79-.155 18.866c-.06 2.722 2.094 5.093 4.801 5.025h3.65c2.72-.069 4.962-1.685 5.022-4.406l.141-34.956c0-.05-.182-.082-.182-.136l.262-2.46c.03-1.366-.286-2.592-1.166-3.46h-.001zM80.08 47.397a4.62 4.62 0 0 0 3.443 1.374l2.45-.054c.055 0 .088-.02.143-.028l35.08.21c2.712-.062 4.953-2.312 5.021-5.033l.009-3.463c-.417-3.211-2.937-5.084-5.64-5.025l-18.615-.073 23.917-23.715c2.63-2.623 2.63-6.879.008-9.513a6.691 6.691 0 0 0-9.494 0L92.251 26.016l.155-19.312c.065-2.713-2.097-5.085-4.802-5.025h-3.45c-2.713.069-4.954 1.693-5.022 4.406l-.139 35.247c0 .054.18.088.18.136l-.267 2.465c-.028 1.366.288 2.588 1.174 3.463v.001z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-nested\",\n \"use\": \"icon-nested-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-nested\\\"><path d=\\\"M.002 9.2c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-5.043-3.58-9.132-7.997-9.132S.002 4.157.002 9.2zM31.997.066h95.981V18.33H31.997V.066zm0 45.669c0 5.044 3.58 9.132 7.998 9.132 4.417 0 7.997-4.088 7.997-9.132 0-3.263-1.524-6.278-3.998-7.91-2.475-1.63-5.524-1.63-7.998 0-2.475 1.632-4 4.647-4 7.91zM63.992 36.6h63.986v18.265H63.992V36.6zm-31.995 82.2c0 5.043 3.58 9.132 7.998 9.132 4.417 0 7.997-4.089 7.997-9.132 0-5.044-3.58-9.133-7.997-9.133s-7.998 4.089-7.998 9.133zm31.995-9.131h63.986v18.265H63.992V109.67zm0-27.404c0 5.044 3.58 9.133 7.998 9.133 4.417 0 7.997-4.089 7.997-9.133 0-3.263-1.524-6.277-3.998-7.909-2.475-1.631-5.524-1.631-7.998 0-2.475 1.632-4 4.646-4 7.91zm31.995-9.13h31.991V91.4H95.987V73.135z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-theme\",\n \"use\": \"icon-theme-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-theme\\\"><path d=\\\"M125.5 36.984L95.336 2.83C93.735 1.018 91.565 0 89.3 0c-2.263 0-4.433 1.018-6.033 2.83l-3.786 4.286c-1.6 1.812-3.77 2.83-6.032 2.831H54.553c-2.263 0-4.434-1.018-6.033-2.83L44.734 2.83C43.134 1.018 40.964 0 38.701 0c-2.263 0-4.434 1.018-6.034 2.83L2.5 36.984C.9 38.796 0 41.254 0 43.815c0 2.562.899 5.02 2.5 6.831L14.565 64.31c2.178 2.468 5.367 3.403 8.33 2.444 1.35-.435 2.709.592 2.709 2.18v49.407c0 5.313 3.84 9.66 8.532 9.66h59.726c4.693 0 8.532-4.347 8.532-9.66V68.934c0-1.59 1.36-2.616 2.71-2.181 2.962.96 6.15.024 8.329-2.444L125.5 50.646c1.6-1.811 2.499-4.269 2.499-6.83 0-2.563-.899-5.02-2.5-6.832z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-form\",\n \"use\": \"icon-form-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-form\\\"><path d=\\\"M84.068 23.784c-1.02 0-1.877-.32-2.572-.96a8.588 8.588 0 0 1-1.738-2.237 11.524 11.524 0 0 1-1.042-2.621c-.232-.895-.348-1.641-.348-2.238V0h.278c.834 0 1.622.085 2.363.256.742.17 1.645.575 2.711 1.214 1.066.64 2.363 1.535 3.892 2.686 1.53 1.15 3.453 2.664 5.77 4.54 2.502 2.045 4.494 3.771 5.977 5.178 1.483 1.406 2.618 2.6 3.406 3.58.787.98 1.274 1.812 1.46 2.494.185.682.277 1.278.277 1.79v2.046H84.068zM127.3 84.01c.278.682.464 1.535.556 2.558.093 1.023-.37 2.003-1.39 2.94-.463.427-.88.832-1.25 1.215-.372.384-.696.704-.974.96a6.69 6.69 0 0 1-.973.767l-11.816-10.741a44.331 44.331 0 0 0 1.877-1.535 31.028 31.028 0 0 1 1.737-1.406c1.112-.938 2.317-1.343 3.615-1.215 1.297.128 2.363.405 3.197.83.927.427 1.923 1.173 2.989 2.239 1.065 1.065 1.876 2.195 2.432 3.388zM78.23 95.902c2.038 0 3.752-.511 5.143-1.534l-26.969 25.83H18.037c-1.761 0-3.684-.47-5.77-1.407a24.549 24.549 0 0 1-5.838-3.709 21.373 21.373 0 0 1-4.518-5.306c-1.204-2.003-1.807-4.07-1.807-6.202V16.495c0-1.79.44-3.665 1.32-5.626A18.41 18.41 0 0 1 5.04 5.562a21.798 21.798 0 0 1 5.213-3.964C12.198.533 14.237 0 16.37 0h53.24v15.984c0 1.62.278 3.367.834 5.242a16.704 16.704 0 0 0 2.572 5.179c1.159 1.577 2.665 2.898 4.518 3.964 1.853 1.066 4.078 1.598 6.673 1.598h20.295v42.325L85.458 92.45c1.02-1.364 1.529-2.856 1.529-4.476 0-2.216-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1c-2.409 0-4.448.789-6.116 2.366-1.668 1.577-2.502 3.474-2.502 5.69 0 2.217.834 4.092 2.502 5.626 1.668 1.535 3.707 2.302 6.117 2.302h52.13zM26.1 47.951c-2.41 0-4.449.789-6.117 2.366-1.668 1.577-2.502 3.473-2.502 5.69 0 2.216.834 4.092 2.502 5.626 1.668 1.534 3.707 2.302 6.117 2.302h52.13c2.409 0 4.47-.768 6.185-2.302 1.715-1.534 2.572-3.41 2.572-5.626 0-2.217-.857-4.113-2.572-5.69-1.714-1.577-3.776-2.366-6.186-2.366H26.1zm52.407 64.063l1.807-1.663 3.476-3.196a479.75 479.75 0 0 0 4.587-4.284 500.757 500.757 0 0 1 5.004-4.667c3.985-3.666 8.48-7.758 13.485-12.276l11.677 10.741-13.485 12.404-5.004 4.603-4.587 4.22a179.46 179.46 0 0 0-3.267 3.068c-.88.853-1.367 1.322-1.46 1.407-.463.341-.973.703-1.529 1.087-.556.383-1.112.703-1.668.959-.556.256-1.413.575-2.572.959a83.5 83.5 0 0 1-3.545 1.087 72.2 72.2 0 0 1-3.475.895c-1.112.256-1.946.426-2.502.511-1.112.17-1.854.043-2.224-.383-.371-.426-.464-1.151-.278-2.174.092-.511.278-1.279.556-2.302.278-1.023.602-2.067.973-3.132l1.042-3.005c.325-.938.58-1.577.765-1.918a10.157 10.157 0 0 1 2.224-2.941z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-dashboard\",\n \"use\": \"icon-dashboard-usage\",\n \"viewBox\": \"0 0 128 100\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 100\\\" id=\\\"icon-dashboard\\\"><path d=\\\"M27.429 63.638c0-2.508-.893-4.65-2.679-6.424-1.786-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.465 2.662-1.785 1.774-2.678 3.916-2.678 6.424 0 2.508.893 4.65 2.678 6.424 1.786 1.775 3.94 2.662 6.465 2.662 2.524 0 4.678-.887 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm13.714-31.801c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM71.714 65.98l7.215-27.116c.285-1.23.107-2.378-.536-3.443-.643-1.064-1.56-1.762-2.75-2.094-1.19-.33-2.333-.177-3.429.462-1.095.639-1.81 1.573-2.143 2.804l-7.214 27.116c-2.857.237-5.405 1.266-7.643 3.088-2.238 1.822-3.738 4.152-4.5 6.992-.952 3.644-.476 7.098 1.429 10.364 1.905 3.265 4.69 5.37 8.357 6.317 3.667.947 7.143.474 10.429-1.42 3.285-1.892 5.404-4.66 6.357-8.305.762-2.84.619-5.607-.429-8.305-1.047-2.697-2.762-4.85-5.143-6.46zm47.143-2.342c0-2.508-.893-4.65-2.678-6.424-1.786-1.775-3.94-2.662-6.465-2.662-2.524 0-4.678.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.786 1.775 3.94 2.662 6.464 2.662 2.524 0 4.679-.887 6.465-2.662 1.785-1.775 2.678-3.916 2.678-6.424zm-45.714-45.43c0-2.509-.893-4.65-2.679-6.425C68.68 10.01 66.524 9.122 64 9.122c-2.524 0-4.679.887-6.464 2.661-1.786 1.775-2.679 3.916-2.679 6.425 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zm32 13.629c0-2.508-.893-4.65-2.679-6.424-1.785-1.775-3.94-2.662-6.464-2.662-2.524 0-4.679.887-6.464 2.662-1.786 1.774-2.679 3.916-2.679 6.424 0 2.508.893 4.65 2.679 6.424 1.785 1.774 3.94 2.662 6.464 2.662 2.524 0 4.679-.888 6.464-2.662 1.786-1.775 2.679-3.916 2.679-6.424zM128 63.638c0 12.351-3.357 23.78-10.071 34.286-.905 1.372-2.19 2.058-3.858 2.058H13.93c-1.667 0-2.953-.686-3.858-2.058C3.357 87.465 0 76.037 0 63.638c0-8.613 1.69-16.847 5.071-24.703C8.452 31.08 13 24.312 18.714 18.634c5.715-5.68 12.524-10.199 20.429-13.559C47.048 1.715 55.333.035 64 .035c8.667 0 16.952 1.68 24.857 5.04 7.905 3.36 14.714 7.88 20.429 13.559 5.714 5.678 10.262 12.446 13.643 20.301 3.38 7.856 5.071 16.09 5.071 24.703z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","const isLocalhost = (instanceName) =>\n instanceName.startsWith('localhost:') || instanceName.startsWith('127.0.0.1:')\n\nexport const baseName = (instanceName = 'localhost') => {\n if (instanceName.match(/https?:\\/\\//)) {\n return instanceName\n } else {\n return isLocalhost(instanceName) ? `http://${instanceName}` : `https://${instanceName}`\n }\n}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-shopping\",\n \"use\": \"icon-shopping-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-shopping\\\"><path d=\\\"M42.913 101.36c1.642 0 3.198.332 4.667.996a12.28 12.28 0 0 1 3.89 2.772c1.123 1.184 1.987 2.582 2.592 4.193.605 1.612.908 3.318.908 5.118 0 1.8-.303 3.507-.908 5.118-.605 1.611-1.469 3.01-2.593 4.194a13.3 13.3 0 0 1-3.889 2.843 10.582 10.582 0 0 1-4.667 1.066c-1.729 0-3.306-.355-4.732-1.066a13.604 13.604 0 0 1-3.825-2.843c-1.123-1.185-1.988-2.583-2.593-4.194a14.437 14.437 0 0 1-.907-5.118c0-1.8.302-3.506.907-5.118.605-1.61 1.47-3.009 2.593-4.193a12.515 12.515 0 0 1 3.825-2.772c1.426-.664 3.003-.996 4.732-.996zm53.932.285c1.643 0 3.22.331 4.733.995a11.386 11.386 0 0 1 3.889 2.772c1.08 1.185 1.945 2.583 2.593 4.194.648 1.61.972 3.317.972 5.118 0 1.8-.324 3.506-.972 5.117-.648 1.611-1.513 3.01-2.593 4.194a12.253 12.253 0 0 1-3.89 2.843 11 11 0 0 1-4.732 1.066 10.58 10.58 0 0 1-4.667-1.066 12.478 12.478 0 0 1-3.824-2.843c-1.08-1.185-1.945-2.583-2.593-4.194a13.581 13.581 0 0 1-.973-5.117c0-1.801.325-3.507.973-5.118.648-1.611 1.512-3.01 2.593-4.194a11.559 11.559 0 0 1 3.824-2.772 11.212 11.212 0 0 1 4.667-.995zm21.781-80.747c2.42 0 4.3.355 5.64 1.066 1.34.71 2.29 1.587 2.852 2.63a6.427 6.427 0 0 1 .778 3.34c-.044 1.185-.195 2.204-.454 3.057-.26.853-.8 2.606-1.62 5.26a589.268 589.268 0 0 1-2.788 8.743 1236.373 1236.373 0 0 0-3.047 9.453c-.994 3.128-1.75 5.592-2.269 7.393-1.123 3.79-2.55 6.42-4.278 7.89-1.728 1.469-3.846 2.203-6.352 2.203H39.023l1.945 12.795h65.342c4.148 0 6.223 1.943 6.223 5.828 0 1.896-.41 3.53-1.232 4.905-.821 1.374-2.442 2.061-4.862 2.061H38.505c-1.729 0-3.176-.426-4.343-1.28-1.167-.852-2.14-1.966-2.917-3.34a21.277 21.277 0 0 1-1.88-4.478 44.128 44.128 0 0 1-1.102-4.55c-.087-.568-.324-1.942-.713-4.122-.39-2.18-.865-4.904-1.426-8.174l-1.88-10.947c-.692-4.027-1.383-8.079-2.075-12.154-1.642-9.572-3.5-20.234-5.574-31.986H6.87c-1.296 0-2.377-.356-3.24-1.067a9.024 9.024 0 0 1-2.14-2.558 10.416 10.416 0 0 1-1.167-3.2C.108 8.53 0 7.488 0 6.54c0-1.896.583-3.46 1.75-4.69C2.917.615 4.494 0 6.482 0h13.095c1.728 0 3.111.284 4.148.853 1.037.569 1.858 1.28 2.463 2.132a8.548 8.548 0 0 1 1.297 2.701c.26.948.475 1.754.648 2.417.173.758.346 1.825.519 3.199.173 1.374.345 2.772.518 4.193.26 1.706.519 3.507.778 5.403h88.678z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-bug\",\n \"use\": \"icon-bug-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-bug\\\"><path d=\\\"M127.88 73.143c0 1.412-.506 2.635-1.518 3.669-1.011 1.033-2.209 1.55-3.592 1.55h-17.887c0 9.296-1.783 17.178-5.35 23.645l16.609 17.044c1.011 1.034 1.517 2.257 1.517 3.67 0 1.412-.506 2.635-1.517 3.668-.958 1.033-2.155 1.55-3.593 1.55-1.438 0-2.635-.517-3.593-1.55l-15.811-16.063a15.49 15.49 0 0 1-1.196 1.06c-.532.434-1.65 1.208-3.353 2.322a50.104 50.104 0 0 1-5.192 2.974c-1.758.87-3.94 1.658-6.546 2.364-2.607.706-5.189 1.06-7.748 1.06V47.044H58.89v73.062c-2.716 0-5.417-.367-8.106-1.102-2.688-.734-5.003-1.631-6.945-2.692a66.769 66.769 0 0 1-5.268-3.179c-1.571-1.057-2.73-1.94-3.476-2.65L33.9 109.34l-14.611 16.877c-1.066 1.14-2.344 1.711-3.833 1.711-1.277 0-2.422-.434-3.434-1.304-1.012-.978-1.557-2.187-1.635-3.627-.079-1.44.333-2.705 1.236-3.794l16.129-18.51c-3.087-6.197-4.63-13.644-4.63-22.342H5.235c-1.383 0-2.58-.517-3.592-1.55S.125 74.545.125 73.132c0-1.412.506-2.635 1.518-3.668 1.012-1.034 2.21-1.55 3.592-1.55h17.887V43.939L9.308 29.833c-1.012-1.033-1.517-2.256-1.517-3.669 0-1.412.505-2.635 1.517-3.668 1.012-1.034 2.21-1.55 3.593-1.55s2.58.516 3.593 1.55l13.813 14.106h67.396l13.814-14.106c1.012-1.034 2.21-1.55 3.592-1.55 1.384 0 2.581.516 3.593 1.55 1.012 1.033 1.518 2.256 1.518 3.668 0 1.413-.506 2.636-1.518 3.67l-13.814 14.105v23.975h17.887c1.383 0 2.58.516 3.593 1.55 1.011 1.033 1.517 2.256 1.517 3.668l-.005.01zM89.552 26.175H38.448c0-7.23 2.489-13.386 7.466-18.469C50.892 2.623 56.92.082 64 .082c7.08 0 13.108 2.541 18.086 7.624 4.977 5.083 7.466 11.24 7.466 18.469z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-international\",\n \"use\": \"icon-international-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-international\\\"><path d=\\\"M83.287 103.01c-1.57-3.84-6.778-10.414-15.447-19.548-2.327-2.444-2.182-4.306-1.338-9.862v-.64c.553-3.81 1.513-6.05 14.313-8.087 6.516-1.018 8.203 1.57 10.589 5.178l.785 1.193a12.625 12.625 0 0 0 6.43 5.207c1.134.524 2.53 1.164 4.421 2.24 4.596 2.53 4.596 5.41 4.596 11.753v.727a26.91 26.91 0 0 1-5.178 17.454 59.055 59.055 0 0 1-19.025 11.026c3.49-6.546.814-14.313 0-16.553l-.146-.087zM64 5.12a58.502 58.502 0 0 1 25.484 5.818 54.313 54.313 0 0 0-12.859 10.327c-.93 1.28-1.716 2.473-2.472 3.579-2.444 3.694-3.637 5.352-5.818 5.614a25.105 25.105 0 0 1-4.219 0c-4.276-.29-10.094-.64-11.956 4.422-1.193 3.23-1.396 11.956 2.444 16.495.66 1.077.778 2.4.32 3.578a7.01 7.01 0 0 1-2.066 3.229 18.938 18.938 0 0 1-2.909-2.91 18.91 18.91 0 0 0-8.32-6.603c-1.25-.349-2.647-.64-3.985-.93-3.782-.786-8.03-1.688-9.019-3.812a14.895 14.895 0 0 1-.727-5.818 21.935 21.935 0 0 0-1.396-9.25 8.873 8.873 0 0 0-5.557-4.946A58.705 58.705 0 0 1 64 5.12zM0 64c0 35.346 28.654 64 64 64 35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-qq\",\n \"use\": \"icon-qq-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-qq\\\"><path d=\\\"M18.448 57.545l-.244-.744-.198-.968-.132-.53v-2.181l.236-.859.24-.908.317-.953.428-1.06.561-1.103.794-1.104v-.773l.077-.724.123-.984.34-1.106.313-1.194.25-.548.289-.511.371-.569.405-.423v-2.73l.234-1.407.236-1.633.42-1.955.577-2.035.43-1.118.426-1.217.468-1.135.559-1.216.57-1.332.655-1.247.737-1.331.929-1.33.43-.762.457-.624.995-1.406 1.025-1.403 1.163-1.444 1.246-1.405 1.352-1.384 1.41-1.423 1.708-1.536 1.083-.934 1.322-1.008 1.34-.89 1.448-.855 1.392-.76 1.57-.63 1.667-.775 1.657-.532 1.653-.552 1.787-.548 1.785-.417 1.876-.347L59.128.68l1.879-.245 1.876-.252 2.002-.106h5.912l1.97.243 1.981.231 2.019.207 1.874.441 1.979.413 1.857.475 2.035.53 1.862.646 1.782.738 1.904.78 1.736.853 1.689.95 1.655 1.044 1.425.971.662.548.693.401 1.323 1.1 1.115 1.064 1.112 1.1 1.083 1.214.894 1.178 1.064 1.217.74 1.306.752 1.162.798 1.352.661 1.175 1.113 2.489.546 1.286.428 1.192.428 1.294.384 1.217.267 1.047.347 1.231.607 2.198.388 1.924.253 1.861.217 1.497.342 2.28.077.362.274.41.737 1.18.473.8.42.832.534.892.472 1.07.307 1.093.334 1.2.252 1.232.115.605.106.746v.648l-.106.643v.8l-.192.774-.35 1.5-.403.76-.299.852v.213l.142.264.4.623 1.746 2.53 1.377 1.9.66 1.267.889 1.389.774 1.52.893 1.627.894 1.828 1.006 2.069.567 1.268.518 1.239.447 1.307.44 1.175.336 1.235.342 1.16.432 2.261.343 2.31.235 2.05v2.891l-.158 1.025-.226 1.768-.308 1.59-.48 1.44-.18.588-.336.707-.28.493-.375.607-.33.383-.42.494-.375.4-.401.34-.48.207-.432.207-.355.114h-.543l-.346-.114-.66-.32-.302-.212-.317-.223-.347-.304-.35-.342-.579-.63-.684-.89-.539-.917-.538-.734-.526-.855-.741-1.517-.833-1.579-.098-.055h-.138l-.338.247-.196.415-.326.516-.567 1.533-.856 2.182-1.096 2.626-.824 1.308-.864 1.366-1.027 1.536-1.09 1.503-.557.68-.676.743-1.555 1.497.136.135.21.214.777.446 3.235 1.524 1.41.779 1.347.756 1.332.953 1.187.982.574.443.432.511.445.593.367.643.198.533.242.64.105.554.115.647-.115.433v.44l-.105.454-.242.415-.092.325-.22.394-.587.784-.543.627-.42.47-.35.348-.893.638-1.01.556-1.077.532-1.155.511-1.287.495-.693.207-.608.167-1.496.342-1.545.325-1.552.323-1.689.27-1.74.072-1.785.21h-5.539l-1.998-.114-1.86-.168-2.005-.27-1.99-.209-2.095-.286-2.03-.495-1.981-.374-1.968-.552-2.019-.707-1.98-.585-1.044-.342-.927-.323-.586-.223-.582-.12h-1.647l-1.904-.131-.962-.096-1.24-.135-.795.705-1.085.665-1.471.701-1.628.875-.99.475-1.033.376-2.281.914-1.24.305-1.3.343-1.803.344-1.13.086-1.193.1-1.246.135-1.45.053h-5.926l-3.346-.053-3.25-.321-1.644-.23-1.589-.23-1.546-.227-1.547-.305-1.442-.456-1.434-.325-1.294-.51-1.223-.474-1.142-.533-.99-.583-.984-.71-.336-.343-.44-.415-.334-.362-.3-.417-.278-.415-.215-.42-.311-.89-.109-.46-.138-.51v-.473l.138-.533v-.53l.109-.53v-1.069l.052-.564.259-.647.215-.646.39-.779.286-.3.236-.348.615-.738.49-.38.464-.266.428-.338.676-.21.543-.324.676-.341.77-.227.775-.231.897-.192.85-.11 1.008-.13 1.093-.081.284-.092h.063l.137-.115v-.13l-.2-.266-.58-.27-1.45-1.231-.975-.761-1.127-.967-1.136-1.082-1.181-1.382-1.36-1.558-.508-.843-.672-.87-.58-1.007-.522-1.1-.704-1.047-.459-1.194-.547-1.192-.546-1.33-.397-1.273-.378-1.575-.112-.057h-.115l-.059-.113h-.14l-.23.113-.114.057-.158.264-.057.321-.119.286-.206.477-.664 1.157-.345.701-.546.612-.58.736-.641.816-.677.724-.795.701-.734.658-.814.524-.89.546-.855.325-1.008.247-.99.095h-.233l-.228-.095-.18-.384-.29-.188-.38-.912-.237-.493-.255-.707-.21-.734-.113-.724-.313-1.648-.12-.972v-3.185l.12-2.379.196-1.214.23-1.252.21-1.347.374-1.254.42-1.443.431-1.407.578-1.448.545-1.38.754-1.4.699-1.52.855-1.425 1.006-1.538 1.023-1.382 1.069-1.538.891-1.071 1.142-1.227 1.202-1.237.56-.59.678-.662.985-.836 1.012-.853 1.647-1.446 1.242-.889z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-link\",\n \"use\": \"icon-link-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-link\\\"><path d=\\\"M115.625 127.937H.063V12.375h57.781v12.374H12.438v90.813h90.813V70.156h12.374z\\\" /><path d=\\\"M116.426 2.821l8.753 8.753-56.734 56.734-8.753-8.745z\\\" /><path d=\\\"M127.893 37.982h-12.375V12.375H88.706V0h39.187z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-guide 2\",\n \"use\": \"icon-guide 2-usage\",\n \"viewBox\": \"0 0 1000 1000\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 1000 1000\\\" id=\\\"icon-guide 2\\\"><path d=\\\"M11.576 547.9l282.848 126.404 409.285-383.26 137.057-128.341L361.234 714.22l362.77 146.362c8.742 3.327 18.733-1.33 21.855-10.644v-.666L999.985.374 10.327 514.636c-8.742 4.657-11.864 15.302-8.117 24.616 2.497 3.991 5.62 7.318 9.366 8.648zM360.61 999.626l141.112-161.663-141.112-61.206v222.869z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-language\",\n \"use\": \"icon-language-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-language\\\"><path d=\\\"M84.742 36.8c2.398 7.2 5.595 12.8 11.19 18.4 4.795-4.8 7.992-11.2 10.39-18.4h-21.58zm-52.748 40h20.78l-10.39-28-10.39 28z\\\" /><path d=\\\"M111.916 0H16.009C7.218 0 .025 7.2.025 16v96c0 8.8 7.193 16 15.984 16h95.907c8.791 0 15.984-7.2 15.984-16V16c0-8.8-6.394-16-15.984-16zM72.754 103.2c-1.598 1.6-3.197 1.6-4.795 1.6-.8 0-2.398 0-3.197-.8-.8-.8-1.599 0-1.599-.8s-.799-1.6-1.598-3.2c-.8-1.6-.8-2.4-1.599-4l-3.196-8.8H28.797L25.6 96c-1.598 3.2-2.398 5.6-3.197 7.2-.8 1.6-2.398 1.6-4.795 1.6-1.599 0-3.197-.8-4.796-1.6-1.598-1.6-2.397-2.4-2.397-4 0-.8 0-1.6.799-3.2.8-1.6.8-2.4 1.598-4l17.583-44.8c.8-1.6.8-3.2 1.599-4.8.799-1.6 1.598-3.2 2.397-4 .8-.8 1.599-2.4 3.197-3.2 1.599-.8 3.197-.8 4.796-.8 1.598 0 3.196 0 4.795.8 1.598.8 2.398 1.6 3.197 3.2.799.8 1.598 2.4 2.397 4 .8 1.6 1.599 3.2 2.398 5.6l17.583 44c1.598 3.2 2.398 5.6 2.398 7.2-.8.8-1.599 2.4-2.398 4zM116.711 72c-8.791-3.2-15.185-7.2-20.78-12-5.594 5.6-12.787 9.6-21.579 12l-2.397-4c8.791-2.4 15.984-5.6 21.579-11.2C87.939 51.2 83.144 44 81.545 36h-7.992v-3.2h21.58c-1.6-2.4-3.198-5.6-4.796-8l2.397-.8c1.599 2.4 3.997 5.6 5.595 8.8h19.98v4h-7.992c-2.397 8-6.393 15.2-11.189 20 5.595 4.8 11.988 8.8 20.78 11.2l-3.197 4z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-password\",\n \"use\": \"icon-password-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-password\\\"><path d=\\\"M108.8 44.322H89.6v-5.36c0-9.04-3.308-24.163-25.6-24.163-23.145 0-25.6 16.881-25.6 24.162v5.361H19.2v-5.36C19.2 15.281 36.798 0 64 0c27.202 0 44.8 15.281 44.8 38.961v5.361zm-32 39.356c0-5.44-5.763-9.832-12.8-9.832-7.037 0-12.8 4.392-12.8 9.832 0 3.682 2.567 6.808 6.407 8.477v11.205c0 2.718 2.875 4.962 6.4 4.962 3.524 0 6.4-2.244 6.4-4.962V92.155c3.833-1.669 6.393-4.795 6.393-8.477zM128 64v49.201c0 8.158-8.645 14.799-19.2 14.799H19.2C8.651 128 0 121.359 0 113.201V64c0-8.153 8.645-14.799 19.2-14.799h89.6c10.555 0 19.2 6.646 19.2 14.799z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-peoples\",\n \"use\": \"icon-peoples-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-peoples\\\"><path d=\\\"M95.648 118.762c0 5.035-3.563 9.121-7.979 9.121H7.98c-4.416 0-7.979-4.086-7.979-9.121C0 100.519 15.408 83.47 31.152 76.75c-9.099-6.43-15.216-17.863-15.216-30.987v-9.128c0-20.16 14.293-36.518 31.893-36.518s31.894 16.358 31.894 36.518v9.122c0 13.137-6.123 24.556-15.216 30.993 15.738 6.726 31.141 23.769 31.141 42.012z\\\" /><path d=\\\"M106.032 118.252h15.867c3.376 0 6.101-3.125 6.101-6.972 0-13.957-11.787-26.984-23.819-32.123 6.955-4.919 11.638-13.66 11.638-23.704v-6.985c0-15.416-10.928-27.926-24.39-27.926-1.674 0-3.306.193-4.89.561 1.936 4.713 3.018 9.974 3.018 15.526v9.121c0 13.137-3.056 23.111-11.066 30.993 14.842 4.41 27.312 23.42 27.541 41.509z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-money\",\n \"use\": \"icon-money-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-money\\\"><path d=\\\"M54.122 127.892v-28.68H7.513V87.274h46.609v-12.4H7.513v-12.86h38.003L.099 0h22.6l32.556 45.07c3.617 5.144 6.44 9.611 8.487 13.385 1.788-3.05 4.89-7.779 9.301-14.186L103.93 0h24.01L82.385 62.013h38.34v12.862h-46.41v12.4h46.41v11.937h-46.41v28.68H54.123z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-example\",\n \"use\": \"icon-example-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-example\\\"><path d=\\\"M96.258 57.462h31.421C124.794 27.323 100.426 2.956 70.287.07v31.422a32.856 32.856 0 0 1 25.971 25.97zm-38.796-25.97V.07C27.323 2.956 2.956 27.323.07 57.462h31.422a32.856 32.856 0 0 1 25.97-25.97zm12.825 64.766v31.421c30.46-2.885 54.507-27.253 57.713-57.712H96.579c-2.886 13.466-13.146 23.726-26.292 26.291zM31.492 70.287H.07c2.886 30.46 27.253 54.507 57.713 57.713V96.579c-13.466-2.886-23.726-13.146-26.291-26.292z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-list\",\n \"use\": \"icon-list-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-list\\\"><path d=\\\"M1.585 12.087c0 6.616 3.974 11.98 8.877 11.98 4.902 0 8.877-5.364 8.877-11.98 0-6.616-3.975-11.98-8.877-11.98-4.903 0-8.877 5.364-8.877 11.98zM125.86.107H35.613c-1.268 0-2.114 1.426-2.114 2.852v18.255c0 1.712 1.057 2.853 2.114 2.853h90.247c1.268 0 2.114-1.426 2.114-2.853V2.96c0-1.711-1.057-2.852-2.114-2.852zM.106 62.86c0 6.615 3.974 11.979 8.876 11.979 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zM124.17 50.88H33.921c-1.268 0-2.114 1.425-2.114 2.851v18.256c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852V53.73c0-1.426-.846-2.852-2.114-2.852zM.106 115.913c0 6.616 3.974 11.98 8.876 11.98 4.903 0 8.877-5.364 8.877-11.98 0-6.616-3.974-11.98-8.877-11.98-4.902 0-8.876 5.364-8.876 11.98zm124.064-11.98H33.921c-1.268 0-2.114 1.426-2.114 2.853v18.255c0 1.711 1.057 2.852 2.114 2.852h90.247c1.268 0 2.114-1.426 2.114-2.852v-18.255c0-1.427-.846-2.853-2.114-2.853z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-settings\",\n \"use\": \"icon-settings-usage\",\n \"viewBox\": \"0 0 490.2 490.2\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" viewBox=\\\"0 0 490.2 490.2\\\" id=\\\"icon-settings\\\">\\r\\n<g>\\r\\n\\t<g>\\r\\n\\t\\t<g>\\r\\n\\t\\t\\t<path d=\\\"M469.1,173.1h-37.5c-1-3.1-3.1-6.3-4.2-9.4l26.1-26.1c8.3-8.3,8.3-20.9,0-29.2l-71.9-71.9c-8.3-8.3-20.9-8.3-29.2,0\\r\\n\\t\\t\\t\\tl-26.1,26.1c-3.1-2.1-6.3-3.1-9.4-4.2V20.9C316.9,9.4,307.5,0,296,0H193.9C182.4,0,173,9.4,173,20.9v37.5c-3.1,1-6.3,3.1-9.4,4.2\\r\\n\\t\\t\\t\\tl-26.1-26.1c-8.3-8.3-20.9-8.3-29.2,0l-71.9,71.9c-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l26.1,26.1\\r\\n\\t\\t\\t\\tc-2.1,3.1-3.1,6.3-4.2,9.4H20.9C9.4,173.1,0,182.5,0,194v102.2c0,11.5,9.4,20.9,20.9,20.9h37.5c1,3.1,3.1,6.3,4.2,9.4l-26.1,26.1\\r\\n\\t\\t\\t\\tc-4.2,4.2-6.3,9.4-6.3,14.6s2.1,10.4,6.3,14.6l71.9,71.9c8.3,8.3,20.9,8.3,29.2,0l26.1-26.1c3.1,2.1,6.3,3.1,9.4,4.2v37.5\\r\\n\\t\\t\\t\\tc0,11.5,9.4,20.9,20.9,20.9h102.2c11.5,0,20.9-9.4,20.9-20.9v-37.5c3.1-1,6.3-3.1,9.4-4.2l26.1,26.1c8.3,8.3,20.9,8.3,29.2,0\\r\\n\\t\\t\\t\\tl71.9-71.9c8.3-8.3,8.3-20.9,0-29.2l-26.1-26.1c2.1-3.1,3.1-6.3,4.2-9.4h37.5c11.5,0,20.9-9.4,20.9-20.9V193.9\\r\\n\\t\\t\\t\\tC490,182.4,480.6,173.1,469.1,173.1z M448.3,275.2H417c-9.4,0-16.7,6.3-19.8,14.6c-3.1,10.4-7.3,20.9-12.5,30.2\\r\\n\\t\\t\\t\\tc-5.2,8.3-3.1,18.8,3.1,25l21.9,21.9L367,409.7l-21.9-21.9c-7.3-6.3-16.7-7.3-25-3.1c-9.4,5.2-19.8,9.4-30.2,12.5\\r\\n\\t\\t\\t\\tc-8.3,2.1-14.6,10.4-14.6,19.8v31.3h-60.5l0,0V417c0-9.4-6.3-16.7-14.6-19.8c-10.4-3.1-20.9-7.3-30.2-12.5\\r\\n\\t\\t\\t\\tc-8.3-5.2-18.8-3.1-25,3.1l-22,21.9L80.3,367l21.9-21.9c6.3-7.3,7.3-16.7,3.1-25c-5.2-9.4-9.4-19.8-12.5-30.2\\r\\n\\t\\t\\t\\tc-2.1-8.3-10.4-14.6-19.8-14.6H41.7v-60.5H73c9.4,0,16.7-6.3,19.8-14.6c3.1-10.4,7.3-20.9,12.5-30.2c5.2-8.3,3.1-18.8-3.1-25\\r\\n\\t\\t\\t\\tl-21.9-22L123,80.3l21.9,21.9c7.3,6.3,16.7,7.3,25,3.1c9.4-5.2,19.8-9.4,30.2-12.5c8.3-2.1,14.6-10.4,14.6-19.8V41.7h60.5V73\\r\\n\\t\\t\\t\\tc0,9.4,6.3,16.7,14.6,19.8c10.4,3.1,20.9,7.3,30.2,12.5c8.3,5.2,18.8,3.1,25-3.1l22-21.9l42.7,42.7l-21.9,21.9\\r\\n\\t\\t\\t\\tc-6.3,7.3-7.3,16.7-3.1,25c5.2,9.4,9.4,19.8,12.5,30.2c2.1,8.3,10.4,14.6,19.8,14.6h31.3L448.3,275.2L448.3,275.2z\\\" />\\r\\n\\t\\t\\t<path d=\\\"M245,131.4c-62.6,0-113.6,51.1-113.6,113.6s51,113.6,113.6,113.6s113.6-51,113.6-113.6S307.6,131.4,245,131.4z\\r\\n\\t\\t\\t\\t M245,316.9c-39.6,0-71.9-32.3-71.9-71.9s32.3-71.9,71.9-71.9s71.9,32.3,71.9,71.9S284.6,316.9,245,316.9z\\\" />\\r\\n\\t\\t</g>\\r\\n\\t</g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n<g>\\r\\n</g>\\r\\n</symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-message\",\n \"use\": \"icon-message-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-message\\\"><path d=\\\"M0 20.967v59.59c0 11.59 8.537 20.966 19.075 20.966h28.613l1 26.477L76.8 101.523h32.125c10.538 0 19.075-9.377 19.075-20.966v-59.59C128 9.377 119.463 0 108.925 0h-89.85C8.538 0 0 9.377 0 20.967zm82.325 33.1c0-5.524 4.013-9.935 9.037-9.935 5.026 0 9.038 4.41 9.038 9.934 0 5.524-4.025 9.934-9.038 9.934-5.024 0-9.037-4.41-9.037-9.934zm-27.613 0c0-5.524 4.013-9.935 9.038-9.935s9.037 4.41 9.037 9.934c0 5.524-4.025 9.934-9.037 9.934-5.025 0-9.038-4.41-9.038-9.934zm-27.1 0c0-5.524 4.013-9.935 9.038-9.935s9.038 4.41 9.038 9.934c0 5.524-4.026 9.934-9.05 9.934-5.013 0-9.025-4.41-9.025-9.934z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-table\",\n \"use\": \"icon-table-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-table\\\"><path d=\\\"M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z\\\" /><path d=\\\"M.006.064h127.988v31.104H.006V.064zm0 38.016h38.396v41.472H.006V38.08zm0 48.384h38.396v41.472H.006V86.464zM44.802 38.08h38.396v41.472H44.802V38.08zm0 48.384h38.396v41.472H44.802V86.464zM89.598 38.08h38.396v41.472H89.598zm0 48.384h38.396v41.472H89.598z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-eye\",\n \"use\": \"icon-eye-usage\",\n \"viewBox\": \"0 0 128 64\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 64\\\" id=\\\"icon-eye\\\"><path d=\\\"M127.072 7.994c1.37-2.208.914-5.152-.914-6.87-2.056-1.717-4.797-1.226-6.396.982-.229.245-25.586 32.382-55.74 32.382-29.24 0-55.74-32.382-55.968-32.627-1.6-1.963-4.57-2.208-6.397-.49C-.17 3.086-.399 6.275 1.2 8.238c.457.736 5.94 7.36 14.62 14.72L4.17 35.96c-1.828 1.963-1.6 5.152.228 6.87.457.98 1.6 1.471 2.742 1.471s2.284-.49 3.198-1.472l12.564-13.983c5.94 4.416 13.021 8.587 20.788 11.53l-4.797 17.418c-.685 2.699.686 5.397 3.198 6.133h1.37c2.057 0 3.884-1.472 4.341-3.68L52.6 42.83c3.655.736 7.538 1.227 11.422 1.227 3.883 0 7.767-.49 11.422-1.227l4.797 17.173c.457 2.208 2.513 3.68 4.34 3.68.457 0 .914 0 1.143-.246 2.513-.736 3.883-3.434 3.198-6.133l-4.797-17.172c7.767-2.944 14.848-7.114 20.788-11.53l12.336 13.738c.913.981 2.056 1.472 3.198 1.472s2.284-.49 3.198-1.472c1.828-1.963 1.828-4.906.228-6.87l-11.65-13.001c9.366-7.36 14.849-14.474 14.849-14.474z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","var map = {\n\t\"./404.svg\": \"oUrx\",\n\t\"./bug.svg\": \"F3lI\",\n\t\"./chart.svg\": \"yCkv\",\n\t\"./clipboard.svg\": \"vDVG\",\n\t\"./component.svg\": \"VtY+\",\n\t\"./dashboard.svg\": \"94Jb\",\n\t\"./documentation.svg\": \"kPu2\",\n\t\"./drag.svg\": \"m7++\",\n\t\"./edit.svg\": \"qkZ8\",\n\t\"./email.svg\": \"y7eQ\",\n\t\"./example.svg\": \"MMMJ\",\n\t\"./excel.svg\": \"ZZmv\",\n\t\"./exit-fullscreen.svg\": \"28eg\",\n\t\"./eye-open.svg\": \"1+ww\",\n\t\"./eye.svg\": \"TfVu\",\n\t\"./form.svg\": \"6xvN\",\n\t\"./fullscreen.svg\": \"mSHS\",\n\t\"./guide 2.svg\": \"ICep\",\n\t\"./guide.svg\": \"ZoO1\",\n\t\"./icon.svg\": \"nZHn\",\n\t\"./international.svg\": \"F9+T\",\n\t\"./language.svg\": \"JYDz\",\n\t\"./link.svg\": \"GPBF\",\n\t\"./list.svg\": \"MokB\",\n\t\"./lock.svg\": \"qwAt\",\n\t\"./message.svg\": \"R/8a\",\n\t\"./money.svg\": \"MEYL\",\n\t\"./nested.svg\": \"3PhE\",\n\t\"./password.svg\": \"Kj24\",\n\t\"./pdf.svg\": \"+aF5\",\n\t\"./people.svg\": \"0Fbn\",\n\t\"./peoples.svg\": \"LxGF\",\n\t\"./qq.svg\": \"FDDl\",\n\t\"./search.svg\": \"jo2x\",\n\t\"./settings.svg\": \"P8iQ\",\n\t\"./shopping.svg\": \"EqXK\",\n\t\"./size.svg\": \"hkRB\",\n\t\"./star.svg\": \"cIpu\",\n\t\"./tab.svg\": \"j7e1\",\n\t\"./table.svg\": \"R/Hx\",\n\t\"./theme.svg\": \"5TQQ\",\n\t\"./tree.svg\": \"k80C\",\n\t\"./user.svg\": \"s7Vf\",\n\t\"./wechat.svg\": \"gNoN\",\n\t\"./zip.svg\": \"iqZD\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"Uf/o\";","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-component\",\n \"use\": \"icon-component-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-component\\\"><path d=\\\"M0 0h54.857v54.857H0V0zm0 73.143h54.857V128H0V73.143zm73.143 0H128V128H73.143V73.143zm27.428-18.286C115.72 54.857 128 42.577 128 27.43 128 12.28 115.72 0 100.571 0 85.423 0 73.143 12.28 73.143 27.429c0 15.148 12.28 27.428 27.428 27.428z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../node_modules/babel-loader/lib/index.js?cacheDirectory!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/babel-loader/lib/index.js?cacheDirectory!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","<template>\n <div id=\"app\">\n <router-view/>\n </div>\n</template>\n\n<script>\nexport default{\n name: 'App'\n}\n</script>\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=6b42edcf&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"App.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function needReboot(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/need_reboot`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function restartApp(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/restart`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import Cookies from 'js-cookie'\nimport { needReboot, restartApp } from '@/api/app'\n\nconst app = {\n state: {\n sidebar: {\n opened: Cookies.get('sidebarStatus') ? !!+Cookies.get('sidebarStatus') : true,\n withoutAnimation: false\n },\n device: 'desktop',\n language: Cookies.get('language') || 'en',\n needReboot: false,\n size: Cookies.get('size') || 'medium',\n invitesEnabled: false\n },\n mutations: {\n TOGGLE_SIDEBAR: state => {\n state.sidebar.opened = !state.sidebar.opened\n state.sidebar.withoutAnimation = false\n if (state.sidebar.opened) {\n Cookies.set('sidebarStatus', 1)\n } else {\n Cookies.set('sidebarStatus', 0)\n }\n },\n CLOSE_SIDEBAR: (state, withoutAnimation) => {\n Cookies.set('sidebarStatus', 0)\n state.sidebar.opened = false\n state.sidebar.withoutAnimation = withoutAnimation\n },\n TOGGLE_DEVICE: (state, device) => {\n state.device = device\n },\n SET_INVITES_ENABLED: (state, invitesEnabled) => {\n state.invitesEnabled = invitesEnabled\n },\n SET_LANGUAGE: (state, language) => {\n state.language = language\n Cookies.set('language', language)\n },\n TOGGLE_REBOOT: (state, needReboot) => {\n state.needReboot = needReboot\n },\n SET_SIZE: (state, size) => {\n state.size = size\n Cookies.set('size', size)\n }\n },\n actions: {\n closeSideBar({ commit }, { withoutAnimation }) {\n commit('CLOSE_SIDEBAR', withoutAnimation)\n },\n async NeedReboot({ commit, getters }) {\n const response = await needReboot(getters.authHost, getters.token)\n commit('TOGGLE_REBOOT', response.data['need_reboot'])\n },\n async RestartApplication({ commit, getters }) {\n await restartApp(getters.authHost, getters.token)\n commit('TOGGLE_REBOOT', false)\n },\n SetInvitesEnabled({ commit }, invitesEnabled) {\n commit('SET_INVITES_ENABLED', invitesEnabled)\n },\n setLanguage({ commit }, language) {\n commit('SET_LANGUAGE', language)\n },\n setSize({ commit }, size) {\n commit('SET_SIZE', size)\n },\n toggleDevice({ commit }, device) {\n commit('TOGGLE_DEVICE', device)\n },\n toggleSideBar({ commit }) {\n commit('TOGGLE_SIDEBAR')\n }\n }\n}\n\nexport default app\n","import {\n addNewEmojiFile,\n createPack,\n deleteEmojiFile,\n deletePack,\n downloadFrom,\n fetchPack,\n importFromFS,\n listPacks,\n listRemotePacks,\n reloadEmoji,\n savePackMetadata,\n updateEmojiFile\n} from '@/api/emojiPacks'\nimport i18n from '@/lang'\nimport { Message } from 'element-ui'\n\nimport Vue from 'vue'\n\nconst emojiPacks = {\n state: {\n activeTab: '',\n currentFilesPage: 1,\n currentPage: 1,\n filesPageSize: 30,\n localPackFilesCount: 0,\n localPacks: {},\n localPacksCount: 0,\n pageSize: 50,\n remoteInstance: '',\n remotePacks: {}\n },\n mutations: {\n SET_ACTIVE_TAB: (state, tab) => {\n state.activeTab = tab\n },\n SET_FILES_COUNT: (state, count) => {\n state.localPackFilesCount = count\n },\n SET_FILES_PAGE: (state, page) => {\n state.currentFilesPage = page\n },\n SET_LOCAL_PACKS: (state, packs) => {\n state.localPacks = packs\n },\n SET_LOCAL_PACKS_COUNT: (state, count) => {\n state.localPacksCount = count\n },\n SET_PACK_FILES: (state, { name, files }) => {\n state.localPacks = { ...state.localPacks, [name]: { ...state.localPacks[name], files }}\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_REMOTE_INSTANCE: (state, name) => {\n state.remoteInstance = name\n },\n SET_REMOTE_PACKS: (state, packs) => {\n state.remotePacks = packs\n },\n UPDATE_LOCAL_PACK_VAL: (state, { name, key, value }) => {\n Vue.set(state.localPacks[name]['pack'], key, value)\n },\n UPDATE_LOCAL_PACK_PACK: (state, { name, pack }) => {\n state.localPacks[name]['pack'] = pack\n },\n UPDATE_LOCAL_PACK_FILES: (state, { name, files }) => {\n // Use vue.set in case \"files\" was null\n Vue.set(\n state.localPacks[name],\n 'files',\n files\n )\n }\n },\n actions: {\n async AddNewEmojiFile({ commit, getters }, { packName, file, shortcode, filename }) {\n let result\n try {\n result = await addNewEmojiFile(packName, file, shortcode, filename, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: result.data })\n },\n async DeleteEmojiFile({ commit, dispatch, getters, state }, { packName, shortcode }) {\n const { [shortcode]: value, ...updatedPackFiles } = state.localPacks[packName].files\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: updatedPackFiles })\n\n try {\n await deleteEmojiFile(packName, shortcode, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n if (Object.keys(updatedPackFiles).length === 0 && state.currentFilesPage > 1) {\n dispatch('FetchSinglePack', { name: packName, page: state.currentFilesPage - 1 })\n } else {\n dispatch('FetchSinglePack', { name: packName, page: state.currentFilesPage })\n }\n },\n async CreatePack({ getters }, { name }) {\n await createPack(getters.authHost, getters.token, name)\n },\n async DeletePack({ getters }, { name }) {\n await deletePack(getters.authHost, getters.token, name)\n },\n async DownloadFrom({ getters }, { instanceAddress, packName, as }) {\n const result = await downloadFrom(instanceAddress, packName, as, getters.authHost, getters.token)\n\n if (result.data === 'ok') {\n Message({\n message: `${i18n.t('settings.successfullyDownloaded')} ${packName}`,\n type: 'success',\n duration: 5 * 1000\n })\n }\n },\n async FetchLocalEmojiPacks({ commit, getters, state }, page) {\n const { data } = await listPacks(page, state.pageSize, getters.authHost, getters.token)\n const { packs, count } = data\n const updatedPacks = Object.keys(packs).reduce((acc, packName) => {\n const { files, ...pack } = packs[packName]\n acc[packName] = pack\n return acc\n }, {})\n commit('SET_LOCAL_PACKS', updatedPacks)\n commit('SET_LOCAL_PACKS_COUNT', count)\n commit('SET_PAGE', page)\n },\n async FetchSinglePack({ getters, commit, state }, { name, page }) {\n const { data } = await fetchPack(name, page, state.filesPageSize, getters.authHost, getters.token)\n const { files, files_count } = data\n commit('SET_PACK_FILES', { name, files })\n commit('SET_FILES_COUNT', files_count)\n commit('SET_FILES_PAGE', page)\n },\n async ImportFromFS({ getters }) {\n const result = await importFromFS(getters.authHost, getters.token)\n\n if (result.status === 200) {\n const message = result.data.length > 0\n ? `${i18n.t('settings.successfullyImported')} ${result.data}`\n : i18n.t('settings.nowNewPacksToImport')\n\n Message({\n message,\n type: 'success',\n duration: 5 * 1000\n })\n }\n },\n async ReloadEmoji({ getters }) {\n await reloadEmoji(getters.authHost, getters.token)\n },\n async SavePackMetadata({ commit, getters, state }, { packName }) {\n const result =\n await savePackMetadata(\n getters.authHost,\n getters.token,\n packName,\n state.localPacks[packName]['pack']\n )\n\n if (result.status === 200) {\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n commit('UPDATE_LOCAL_PACK_PACK', { name: packName, pack: result.data })\n }\n },\n SetActiveTab({ commit }, activeTab) {\n commit('SET_ACTIVE_TAB', activeTab)\n },\n async SetRemoteEmojiPacks({ commit, getters }, { remoteInstance }) {\n const { data } = await listRemotePacks(getters.authHost, getters.token, remoteInstance)\n\n commit('SET_REMOTE_INSTANCE', remoteInstance)\n commit('SET_REMOTE_PACKS', data.packs)\n },\n SetRemoteInstance({ commit }, instance) {\n commit('SET_REMOTE_INSTANCE', instance)\n },\n async UpdateEmojiFile({ commit, dispatch, getters, state }, { packName, shortcode, newShortcode, newFilename, force }) {\n const updatedPackFiles = Object.keys(state.localPacks[packName].files).reduce((acc, el) => {\n if (el === shortcode) {\n acc[newShortcode] = newFilename\n } else {\n acc[el] = state.localPacks[packName].files[el]\n }\n return acc\n }, {})\n commit('UPDATE_LOCAL_PACK_FILES', { name: packName, files: updatedPackFiles })\n\n try {\n await updateEmojiFile(packName, shortcode, newShortcode, newFilename, force, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: `${i18n.t('settings.successfullyUpdated')} ${packName} ${i18n.t('settings.metadatLowerCase')}`,\n type: 'success',\n duration: 5 * 1000\n })\n\n dispatch('FetchSinglePack', { name: packName, page: state.currentFilesPage })\n },\n async UpdateLocalPackVal({ commit }, args) {\n commit('UPDATE_LOCAL_PACK_VAL', args)\n }\n }\n}\n\nexport default emojiPacks\n","const errorLog = {\n state: {\n logs: []\n },\n mutations: {\n ADD_ERROR_LOG: (state, log) => {\n state.logs.push(log)\n }\n },\n actions: {\n addErrorLog({ commit }, log) {\n commit('ADD_ERROR_LOG', log)\n }\n }\n}\n\nexport default errorLog\n","const getters = {\n sidebar: state => state.app.sidebar,\n language: state => state.app.language,\n size: state => state.app.size,\n device: state => state.app.device,\n visitedViews: state => state.tagsView.visitedViews,\n cachedViews: state => state.tagsView.cachedViews,\n token: state => state.user.token,\n avatar: state => state.user.avatar,\n name: state => state.user.name,\n introduction: state => state.user.introduction,\n status: state => state.user.status,\n roles: state => state.user.roles,\n setting: state => state.user.setting,\n permission_routers: state => state.permission.routers,\n addRouters: state => state.permission.addRouters,\n errorLogs: state => state.errorLog.logs,\n users: state => state.users.fetchedUsers,\n authHost: state => state.user.authHost,\n settings: state => state.settings\n}\nexport default getters\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function generateInviteToken(max_use, expires_at, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/invite_token`,\n method: 'post',\n headers: authHeaders(token),\n data: expires_at && expires_at.length > 0 ? { max_use, expires_at } : { max_use }\n })\n}\n\nexport async function inviteViaEmail(email, name, authHost, token) {\n const data = name.length > 0 ? { email, name } : { email }\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/email_invite',\n method: 'post',\n headers: authHeaders(token),\n data\n })\n}\n\nexport async function listInviteTokens(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/invites`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function revokeToken(tokenToRevoke, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/revoke_invite`,\n method: 'post',\n headers: authHeaders(token),\n data: { token: tokenToRevoke }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { generateInviteToken, inviteViaEmail, listInviteTokens, revokeToken } from '@/api/invites'\nimport { Message } from 'element-ui'\nimport i18n from '@/lang'\n\nconst invites = {\n state: {\n inviteTokens: [],\n loading: false,\n newToken: {}\n },\n mutations: {\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_NEW_TOKEN: (state, token) => {\n state.newToken = token\n },\n SET_TOKENS: (state, tokens) => {\n state.inviteTokens = tokens\n }\n },\n actions: {\n async FetchInviteTokens({ commit, getters }) {\n commit('SET_LOADING', true)\n const response = await listInviteTokens(getters.authHost, getters.token)\n commit('SET_TOKENS', response.data.invites.reverse())\n commit('SET_LOADING', false)\n },\n async GenerateInviteToken({ commit, dispatch, getters }, { maxUse, expiresAt }) {\n try {\n const { data } = await generateInviteToken(maxUse, expiresAt, getters.authHost, getters.token)\n commit('SET_NEW_TOKEN', { token: data.token, maxUse: data.max_use, expiresAt: data.expires_at })\n } catch (_e) {\n return\n }\n dispatch('FetchInviteTokens')\n },\n async InviteUserViaEmail({ commit, dispatch, getters }, { email, name }) {\n try {\n await inviteViaEmail(email, name, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n Message({\n message: i18n.t('invites.emailSent'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n RemoveNewToken({ commit }) {\n commit('SET_NEW_TOKEN', {})\n },\n async RevokeToken({ commit, dispatch, getters }, token) {\n try {\n await revokeToken(token, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('FetchInviteTokens')\n }\n }\n}\n\nexport default invites\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function listBannedUrls(page, pageSize, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function purgeUrls(urls, ban, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches/purge`,\n method: 'post',\n headers: authHeaders(token),\n data: { urls, ban }\n })\n}\n\nexport async function removeBannedUrls(urls, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches/delete`,\n method: 'post',\n headers: authHeaders(token),\n data: { urls }\n })\n}\n\nexport async function searchBannedUrls(query, page, pageSize, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/media_proxy_caches?query=${query}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { listBannedUrls, purgeUrls, removeBannedUrls, searchBannedUrls } from '@/api/mediaProxyCache'\nimport { Message } from 'element-ui'\nimport i18n from '@/lang'\n\nconst mediaProxyCache = {\n state: {\n bannedUrls: [],\n currentPage: 1,\n loading: false,\n pageSize: 50,\n totalUrlsCount: 0\n },\n mutations: {\n SET_BANNED_URLS: (state, urls) => {\n state.bannedUrls = urls.map(el => { return { url: el } })\n },\n SET_TOTAL_URLS_COUNT: (state, count) => {\n state.totalUrlsCount = count\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n }\n },\n actions: {\n async ListBannedUrls({ commit, getters, state }, { page }) {\n commit('SET_LOADING', true)\n const response = await listBannedUrls(page, state.pageSize, getters.authHost, getters.token)\n commit('SET_BANNED_URLS', response.data.urls)\n commit('SET_TOTAL_URLS_COUNT', response.data.count)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n },\n async PurgeUrls({ dispatch, getters, state }, { urls, ban }) {\n await purgeUrls(urls, ban, getters.authHost, getters.token)\n Message({\n message: i18n.t('mediaProxyCache.evictedMessage'),\n type: 'success',\n duration: 5 * 1000\n })\n if (ban) {\n dispatch('ListBannedUrls', { page: state.currentPage })\n }\n },\n async RemoveBannedUrls({ dispatch, getters, state }, urls) {\n await removeBannedUrls(urls, getters.authHost, getters.token)\n dispatch('ListBannedUrls', { page: state.currentPage })\n },\n async SearchUrls({ commit, dispatch, getters, state }, { query, page }) {\n if (query.length === 0) {\n commit('SET_SEARCH_QUERY', query)\n dispatch('ListBannedUrls', { page })\n } else {\n commit('SET_LOADING', true)\n commit('SET_SEARCH_QUERY', query)\n\n const response = await searchBannedUrls(query, page, state.pageSize, getters.authHost, getters.token)\n commit('SET_BANNED_URLS', response.data.urls)\n commit('SET_TOTAL_URLS_COUNT', response.data.count)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n }\n }\n }\n}\n\nexport default mediaProxyCache\n","import _ from 'lodash'\n\nimport request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchLog(authHost, token, params, page = 1) {\n const normalizedParams = new URLSearchParams(\n _.omitBy({ ...params, page }, _.isUndefined)\n ).toString()\n\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/moderation_log?${normalizedParams}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchAdmins(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?filters=is_admin`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchModerators(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?filters=is_moderator`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchLog, fetchAdmins, fetchModerators } from '@/api/moderationLog'\n\nconst moderationLog = {\n state: {\n fetchedLog: [],\n logItemsCount: 0,\n admins: [],\n moderators: [],\n logLoading: true,\n adminsLoading: true\n },\n mutations: {\n SET_LOG_LOADING: (state, status) => {\n state.logLoading = status\n },\n SET_ADMINS_LOADING: (state, status) => {\n state.adminsLoading = status\n },\n SET_MODERATION_LOG: (state, log) => {\n state.fetchedLog = log\n },\n SET_MODERATION_LOG_COUNT: (state, count) => {\n state.logItemsCount = count\n },\n SET_ADMINS: (state, admins) => {\n state.admins = admins\n },\n SET_MODERATORS: (state, moderators) => {\n state.moderators = moderators\n }\n },\n actions: {\n async FetchModerationLog({ commit, getters }, opts = {}) {\n const response = await fetchLog(getters.authHost, getters.token, opts)\n\n commit('SET_MODERATION_LOG', response.data.items)\n commit('SET_MODERATION_LOG_COUNT', response.data.total)\n commit('SET_LOG_LOADING', false)\n },\n async FetchAdmins({ commit, getters }) {\n const adminsResponse = await fetchAdmins(getters.authHost, getters.token)\n const moderatorsResponse = await fetchModerators(getters.authHost, getters.token)\n\n commit('SET_ADMINS', adminsResponse.data)\n commit('SET_MODERATORS', moderatorsResponse.data)\n commit('SET_ADMINS_LOADING', false)\n }\n }\n}\n\nexport default moderationLog\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchPeers(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/v1/instance/peers`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchPeers } from '@/api/peers'\n\nconst peers = {\n state: {\n fetchedPeers: [],\n loading: true\n },\n\n mutations: {\n SET_PEERS: (state, peers) => {\n state.fetchedPeers = peers\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n }\n },\n\n actions: {\n async FetchPeers({ commit, getters }) {\n const peers = await fetchPeers(getters.authHost, getters.token)\n\n commit('SET_PEERS', [...peers.data].sort())\n commit('SET_LOADING', false)\n }\n }\n}\n\nexport default peers\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div style=\"padding: 0 15px;\" @click=\"toggleClick\">\n <svg\n :class=\"{'is-active':isActive}\"\n class=\"hamburger\"\n viewBox=\"0 0 1024 1024\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"64\"\n height=\"64\"\n >\n <path d=\"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z\" />\n </svg>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'Hamburger',\n props: {\n isActive: {\n type: Boolean,\n default: false\n },\n toggleClick: {\n type: Function,\n default: null\n }\n }\n}\n</script>\n\n<style scoped>\n.hamburger {\n display: inline-block;\n vertical-align: middle;\n width: 20px;\n height: 20px;\n}\n\n.hamburger.is-active {\n transform: rotate(180deg);\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=69c6c5c4&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=69c6c5c4&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"69c6c5c4\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"padding\":\"0 15px\"},on:{\"click\":_vm.toggleClick}},[_c('svg',{staticClass:\"hamburger\",class:{'is-active':_vm.isActive},attrs:{\"viewBox\":\"0 0 1024 1024\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"64\",\"height\":\"64\"}},[_c('path',{attrs:{\"d\":\"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"navbar\">\n <hamburger :toggle-click=\"toggleSideBar\" :is-active=\"sidebar.opened\" class=\"hamburger-container\"/>\n <div class=\"right-menu\">\n <el-dropdown class=\"avatar-container right-menu-item hover-effect\" trigger=\"click\">\n <div class=\"avatar-wrapper\">\n <img :src=\"avatar+'?imageView2/1/w/80/h/80'\" class=\"user-avatar\">\n </div>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item>\n <span style=\"display:block;\" @click=\"logout\">{{ $t('navbar.logOut') }}</span>\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport Hamburger from '@/components/element-ui/Hamburger'\n\nexport default {\n components: {\n Hamburger\n },\n computed: {\n ...mapGetters([\n 'sidebar',\n 'name',\n 'avatar',\n 'device'\n ])\n },\n methods: {\n toggleSideBar() {\n this.$store.dispatch('toggleSideBar')\n },\n logout() {\n this.$store.dispatch('LogOut').then(() => {\n location.reload()// In order to re-instantiate the vue-router object to avoid bugs\n })\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.navbar {\n height: 50px;\n overflow: hidden;\n\n .hamburger-container {\n line-height: 46px;\n height: 100%;\n float: left;\n cursor: pointer;\n transition: background .3s;\n\n &:hover {\n background: rgba(0, 0, 0, .025)\n }\n }\n\n .breadcrumb-container {\n float: left;\n }\n\n .errLog-container {\n display: inline-block;\n vertical-align: top;\n }\n\n .right-menu {\n float: right;\n height: 100%;\n line-height: 50px;\n\n &:focus {\n outline: none;\n }\n\n .right-menu-item {\n display: inline-block;\n padding: 0 15px;\n height: 100%;\n font-size: 18px;\n color: #5a5e66;\n vertical-align: text-bottom;\n\n &.hover-effect {\n cursor: pointer;\n transition: background .3s;\n\n &:hover {\n background: rgba(0, 0, 0, .025)\n }\n }\n }\n\n .avatar-container {\n .avatar-wrapper {\n margin-top: 5px;\n position: relative;\n\n .user-avatar {\n cursor: pointer;\n width: 40px;\n height: 40px;\n border-radius: 10px;\n }\n\n .el-icon-caret-bottom {\n cursor: pointer;\n position: absolute;\n right: -20px;\n top: 25px;\n font-size: 12px;\n }\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Navbar.vue?vue&type=template&id=28de7ff2&scoped=true&\"\nimport script from \"./Navbar.vue?vue&type=script&lang=js&\"\nexport * from \"./Navbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28de7ff2\",\n null\n \n)\n\ncomponent.options.__file = \"Navbar.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"navbar\"},[_c('hamburger',{staticClass:\"hamburger-container\",attrs:{\"toggle-click\":_vm.toggleSideBar,\"is-active\":_vm.sidebar.opened}}),_vm._v(\" \"),_c('div',{staticClass:\"right-menu\"},[_c('el-dropdown',{staticClass:\"avatar-container right-menu-item hover-effect\",attrs:{\"trigger\":\"click\"}},[_c('div',{staticClass:\"avatar-wrapper\"},[_c('img',{staticClass:\"user-avatar\",attrs:{\"src\":_vm.avatar+'?imageView2/1/w/80/h/80'}})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',[_c('span',{staticStyle:{\"display\":\"block\"},on:{\"click\":_vm.logout}},[_vm._v(_vm._s(_vm.$t('navbar.logOut')))])])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// translate router.meta.title, be used in breadcrumb sidebar tagsview\nexport function generateTitle(title) {\n const hasKey = this.$te('route.' + title)\n\n if (hasKey) {\n // $t :this method from vue-i18n, inject in @/lang/index.js\n const translatedTitle = this.$t('route.' + title)\n\n return translatedTitle\n }\n return title\n}\n","/**\n * Created by jiachenpan on 16/11/18.\n */\n\nexport function parseTime(time, cFormat) {\n if (arguments.length === 0) {\n return null\n }\n const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'\n let date\n if (typeof time === 'object') {\n date = time\n } else {\n if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {\n time = parseInt(time)\n }\n if ((typeof time === 'number') && (time.toString().length === 10)) {\n time = time * 1000\n }\n date = new Date(time)\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n }\n const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {\n let value = formatObj[key]\n // Note: getDay() returns 0 on Sunday\n if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }\n if (result.length > 0 && value < 10) {\n value = '0' + value\n }\n return value || 0\n })\n return time_str\n}\n\nexport function formatTime(time, option) {\n time = +time * 1000\n const d = new Date(time)\n const now = Date.now()\n\n const diff = (now - d) / 1000\n\n if (diff < 30) {\n return '刚刚'\n } else if (diff < 3600) {\n // less 1 hour\n return Math.ceil(diff / 60) + '分钟前'\n } else if (diff < 3600 * 24) {\n return Math.ceil(diff / 3600) + '小时前'\n } else if (diff < 3600 * 24 * 2) {\n return '1天前'\n }\n if (option) {\n return parseTime(time, option)\n } else {\n return (\n d.getMonth() +\n 1 +\n '月' +\n d.getDate() +\n '日' +\n d.getHours() +\n '时' +\n d.getMinutes() +\n '分'\n )\n }\n}\n\n// 格式化时间\nexport function getQueryObject(url) {\n url = url == null ? window.location.href : url\n const search = url.substring(url.lastIndexOf('?') + 1)\n const obj = {}\n const reg = /([^?&=]+)=([^?&=]*)/g\n search.replace(reg, (rs, $1, $2) => {\n const name = decodeURIComponent($1)\n let val = decodeURIComponent($2)\n val = String(val)\n obj[name] = val\n return rs\n })\n return obj\n}\n\n/**\n *get getByteLen\n * @param {Sting} val input value\n * @returns {number} output value\n */\nexport function getByteLen(val) {\n let len = 0\n for (let i = 0; i < val.length; i++) {\n if (val[i].match(/[^\\x00-\\xff]/gi) != null) {\n len += 1\n } else {\n len += 0.5\n }\n }\n return Math.floor(len)\n}\n\nexport function cleanArray(actual) {\n const newArray = []\n for (let i = 0; i < actual.length; i++) {\n if (actual[i]) {\n newArray.push(actual[i])\n }\n }\n return newArray\n}\n\nexport function param(json) {\n if (!json) return ''\n return cleanArray(\n Object.keys(json).map(key => {\n if (json[key] === undefined) return ''\n return encodeURIComponent(key) + '=' + encodeURIComponent(json[key])\n })\n ).join('&')\n}\n\nexport function param2Obj(url) {\n const search = url.split('?')[1]\n if (!search) {\n return {}\n }\n return JSON.parse(\n '{\"' +\n decodeURIComponent(search)\n .replace(/\"/g, '\\\\\"')\n .replace(/&/g, '\",\"')\n .replace(/=/g, '\":\"') +\n '\"}'\n )\n}\n\nexport function html2Text(val) {\n const div = document.createElement('div')\n div.innerHTML = val\n return div.textContent || div.innerText\n}\n\nexport function objectMerge(target, source) {\n /* Merges two objects,\n giving the last one precedence */\n\n if (typeof target !== 'object') {\n target = {}\n }\n if (Array.isArray(source)) {\n return source.slice()\n }\n Object.keys(source).forEach(property => {\n const sourceProperty = source[property]\n if (typeof sourceProperty === 'object') {\n target[property] = objectMerge(target[property], sourceProperty)\n } else {\n target[property] = sourceProperty\n }\n })\n return target\n}\n\nexport function toggleClass(element, className) {\n if (!element || !className) {\n return\n }\n let classString = element.className\n const nameIndex = classString.indexOf(className)\n if (nameIndex === -1) {\n classString += '' + className\n } else {\n classString =\n classString.substr(0, nameIndex) +\n classString.substr(nameIndex + className.length)\n }\n element.className = classString\n}\n\nexport const pickerOptions = [\n {\n text: '今天',\n onClick(picker) {\n const end = new Date()\n const start = new Date(new Date().toDateString())\n end.setTime(start.getTime())\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近一周',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(end.getTime() - 3600 * 1000 * 24 * 7)\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近一个月',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)\n picker.$emit('pick', [start, end])\n }\n },\n {\n text: '最近三个月',\n onClick(picker) {\n const end = new Date(new Date().toDateString())\n const start = new Date()\n start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)\n picker.$emit('pick', [start, end])\n }\n }\n]\n\nexport function getTime(type) {\n if (type === 'start') {\n return new Date().getTime() - 3600 * 1000 * 24 * 90\n } else {\n return new Date(new Date().toDateString())\n }\n}\n\nexport function debounce(func, wait, immediate) {\n let timeout, args, context, timestamp, result\n\n const later = function() {\n // 据上一次触发时间间隔\n const last = +new Date() - timestamp\n\n // 上次被包装函数被调用时间间隔last小于设定时间间隔wait\n if (last < wait && last > 0) {\n timeout = setTimeout(later, wait - last)\n } else {\n timeout = null\n // 如果设定为immediate===true,因为开始边界已经调用过了此处无需调用\n if (!immediate) {\n result = func.apply(context, args)\n if (!timeout) context = args = null\n }\n }\n }\n\n return function(...args) {\n context = this\n timestamp = +new Date()\n const callNow = immediate && !timeout\n // 如果延时不存在,重新设定延时\n if (!timeout) timeout = setTimeout(later, wait)\n if (callNow) {\n result = func.apply(context, args)\n context = args = null\n }\n\n return result\n }\n}\n\n/**\n * This is just a simple version of deep copy\n * Has a lot of edge cases bug\n * If you want to use a perfect deep copy, use lodash's _.cloneDeep\n */\nexport function deepClone(source) {\n if (!source && typeof source !== 'object') {\n throw new Error('error arguments', 'shallowClone')\n }\n const targetObj = source.constructor === Array ? [] : {}\n Object.keys(source).forEach(keys => {\n if (source[keys] && typeof source[keys] === 'object') {\n targetObj[keys] = deepClone(source[keys])\n } else {\n targetObj[keys] = source[keys]\n }\n })\n return targetObj\n}\n\nexport function uniqueArr(arr) {\n return Array.from(new Set(arr))\n}\n\nexport function isExternal(path) {\n return /^(https?:|mailto:|tel:)/.test(path)\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('svg-icon',{attrs:{\"icon-class\":_vm.icon}}),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"title\"},slot:\"title\"},[_vm._v(_vm._s(_vm.title))]),_vm._v(\" \"),_c('el-badge',{staticClass:\"count-badge\",attrs:{\"value\":_vm.count,\"type\":\"primary\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=script&lang=js&\"","<template>\n <span>\n <svg-icon :icon-class=\"icon\"/>\n <span slot=\"title\">{{ title }}</span>\n <el-badge :value=\"count\" type=\"primary\" class=\"count-badge\" />\n </span>\n</template>\n\n<script>\nexport default {\n name: 'Item',\n props: {\n count: {\n type: String,\n default: null\n },\n icon: {\n type: String,\n default: ''\n },\n title: {\n type: String,\n default: ''\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.count-badge {\n margin-left: 5px;\n height: 48px;\n}\n</style>\n","import { render, staticRenderFns } from \"./Item.vue?vue&type=template&id=52140d98&scoped=true&\"\nimport script from \"./Item.vue?vue&type=script&lang=js&\"\nexport * from \"./Item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"52140d98\",\n null\n \n)\n\ncomponent.options.__file = \"Item.vue\"\nexport default component.exports","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Link.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Link.vue?vue&type=script&lang=js&\"","\n<template>\n <!-- eslint-disable vue/require-component-is -->\n <component v-bind=\"linkProps(to)\">\n <slot/>\n </component>\n</template>\n\n<script>\nimport { isExternal } from '@/utils'\n\nexport default {\n props: {\n to: {\n type: String,\n required: true\n }\n },\n methods: {\n linkProps(url) {\n if (isExternal(url)) {\n return {\n is: 'a',\n href: url,\n target: '_blank',\n rel: 'noopener'\n }\n }\n return {\n is: 'router-link',\n to: url\n }\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./Link.vue?vue&type=template&id=4dde2217&\"\nimport script from \"./Link.vue?vue&type=script&lang=js&\"\nexport * from \"./Link.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Link.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('component',_vm._b({},'component',_vm.linkProps(_vm.to),false),[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!item.hidden && item.children && invitesEnabled\" class=\"menu-wrapper\">\n\n <template v-if=\"hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow\">\n <app-link :to=\"resolvePath(onlyOneChild.path)\">\n <el-menu-item :index=\"resolvePath(onlyOneChild.path)\" :class=\"{'submenu-title-noDropdown':!isNest}\">\n <item\n v-if=\"onlyOneChild.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"onlyOneChild.meta.icon||item.meta.icon\"\n :title=\"generateTitle(onlyOneChild.meta.title)\" />\n </el-menu-item>\n </app-link>\n </template>\n <el-submenu v-else ref=\"subMenu\" :index=\"resolvePath(item.path)\">\n <template slot=\"title\">\n <item\n v-if=\"item.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"item.meta.icon\"\n :title=\"generateTitle(item.meta.title)\" />\n </template>\n\n <template v-for=\"child in item.children\">\n <template v-if=\"!child.hidden\">\n <sidebar-item\n v-if=\"child.children&&child.children.length>0\"\n :is-nest=\"true\"\n :item=\"child\"\n :key=\"child.path\"\n :base-path=\"resolvePath(child.path)\"\n class=\"nest-menu\" />\n\n <app-link v-else :to=\"resolvePath(child.path)\" :key=\"child.name\">\n <el-menu-item :index=\"resolvePath(child.path)\">\n <item\n v-if=\"child.meta\"\n :count=\"showCount(item) ? normalizedReportsCount : null\"\n :icon=\"child.meta.icon\"\n :title=\"generateTitle(child.meta.title)\" />\n </el-menu-item>\n </app-link>\n </template>\n </template>\n </el-submenu>\n\n </div>\n</template>\n\n<script>\nimport path from 'path'\nimport { generateTitle } from '@/utils/i18n'\nimport { isExternal } from '@/utils'\nimport Item from './Item'\nimport AppLink from './Link'\nimport FixiOSBug from './FixiOSBug'\nimport numeral from 'numeral'\n\nexport default {\n name: 'SidebarItem',\n components: { Item, AppLink },\n mixins: [FixiOSBug],\n props: {\n // route object\n item: {\n type: Object,\n required: true\n },\n isNest: {\n type: Boolean,\n default: false\n },\n basePath: {\n type: String,\n default: ''\n }\n },\n data: function() {\n return {\n onlyOneChild: null\n }\n },\n computed: {\n invitesEnabled() {\n return this.basePath === '/invites' ? this.$store.state.app.invitesEnabled : true\n },\n normalizedReportsCount() {\n return numeral(this.$store.state.reports.openReportsCount).format('0a')\n }\n },\n methods: {\n hasOneShowingChild(children, parent) {\n const showingChildren = children.filter(item => {\n if (item.hidden) {\n return false\n } else {\n // Temp set(will be used if only has one showing child)\n this.onlyOneChild = item\n return true\n }\n })\n\n // When there is only one child router, the child router is displayed by default\n if (showingChildren.length === 1) {\n return true\n }\n\n // Show parent if there are no child router to display\n if (showingChildren.length === 0) {\n this.onlyOneChild = { ... parent, path: '', noShowingChildren: true }\n return true\n }\n\n return false\n },\n resolvePath(routePath) {\n if (this.isExternalLink(routePath)) {\n return routePath\n }\n return path.resolve(this.basePath, routePath)\n },\n showCount(item) {\n return item.path === '/reports'\n },\n isExternalLink(routePath) {\n return isExternal(routePath)\n },\n generateTitle\n }\n}\n</script>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarItem.vue?vue&type=script&lang=js&\"","export default {\n computed: {\n device() {\n return this.$store.state.app.device\n }\n },\n mounted() {\n // In order to fix the click on menu on the ios device will trigger the mouseleave bug\n // https://github.com/PanJiaChen/vue-element-admin/issues/1135\n this.fixBugIniOS()\n },\n methods: {\n fixBugIniOS() {\n const $subMenu = this.$refs.subMenu\n if ($subMenu) {\n const handleMouseleave = $subMenu.handleMouseleave\n $subMenu.handleMouseleave = (e) => {\n if (this.device === 'mobile') {\n return\n }\n handleMouseleave(e)\n }\n }\n }\n }\n}\n","import { render, staticRenderFns } from \"./SidebarItem.vue?vue&type=template&id=20c4709e&\"\nimport script from \"./SidebarItem.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarItem.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SidebarItem.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.item.hidden && _vm.item.children && _vm.invitesEnabled)?_c('div',{staticClass:\"menu-wrapper\"},[(_vm.hasOneShowingChild(_vm.item.children,_vm.item) && (!_vm.onlyOneChild.children||_vm.onlyOneChild.noShowingChildren)&&!_vm.item.alwaysShow)?[_c('app-link',{attrs:{\"to\":_vm.resolvePath(_vm.onlyOneChild.path)}},[_c('el-menu-item',{class:{'submenu-title-noDropdown':!_vm.isNest},attrs:{\"index\":_vm.resolvePath(_vm.onlyOneChild.path)}},[(_vm.onlyOneChild.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":_vm.onlyOneChild.meta.icon||_vm.item.meta.icon,\"title\":_vm.generateTitle(_vm.onlyOneChild.meta.title)}}):_vm._e()],1)],1)]:_c('el-submenu',{ref:\"subMenu\",attrs:{\"index\":_vm.resolvePath(_vm.item.path)}},[_c('template',{slot:\"title\"},[(_vm.item.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":_vm.item.meta.icon,\"title\":_vm.generateTitle(_vm.item.meta.title)}}):_vm._e()],1),_vm._v(\" \"),_vm._l((_vm.item.children),function(child){return [(!child.hidden)?[(child.children&&child.children.length>0)?_c('sidebar-item',{key:child.path,staticClass:\"nest-menu\",attrs:{\"is-nest\":true,\"item\":child,\"base-path\":_vm.resolvePath(child.path)}}):_c('app-link',{key:child.name,attrs:{\"to\":_vm.resolvePath(child.path)}},[_c('el-menu-item',{attrs:{\"index\":_vm.resolvePath(child.path)}},[(child.meta)?_c('item',{attrs:{\"count\":_vm.showCount(_vm.item) ? _vm.normalizedReportsCount : null,\"icon\":child.meta.icon,\"title\":_vm.generateTitle(child.meta.title)}}):_vm._e()],1)],1)]:_vm._e()]})],2)],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-scrollbar wrap-class=\"scrollbar-wrapper\">\n <el-menu\n :default-active=\"$route.path\"\n :collapse=\"isCollapse\"\n :background-color=\"variables.menuBg\"\n :text-color=\"variables.menuText\"\n :active-text-color=\"variables.menuActiveText\"\n mode=\"vertical\"\n >\n <sidebar-item v-for=\"route in permission_routers\" :key=\"route.path\" :item=\"route\" :base-path=\"route.path\"/>\n </el-menu>\n </el-scrollbar>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport SidebarItem from './SidebarItem'\nimport variables from '@/styles/variables.scss'\n\nexport default {\n components: { SidebarItem },\n computed: {\n ...mapGetters([\n 'permission_routers',\n 'sidebar'\n ]),\n variables() {\n return variables\n },\n isCollapse() {\n return !this.sidebar.opened\n }\n },\n mounted() {\n this.$store.dispatch('FetchOpenReportsCount')\n }\n}\n</script>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=d15499de&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-scrollbar',{attrs:{\"wrap-class\":\"scrollbar-wrapper\"}},[_c('el-menu',{attrs:{\"default-active\":_vm.$route.path,\"collapse\":_vm.isCollapse,\"background-color\":_vm.variables.menuBg,\"text-color\":_vm.variables.menuText,\"active-text-color\":_vm.variables.menuActiveText,\"mode\":\"vertical\"}},_vm._l((_vm.permission_routers),function(route){return _c('sidebar-item',{key:route.path,attrs:{\"item\":route,\"base-path\":route.path}})}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-scrollbar ref=\"scrollContainer\" :vertical=\"false\" class=\"scroll-container\" @wheel.native.prevent=\"handleScroll\">\n <slot/>\n </el-scrollbar>\n</template>\n\n<script>\nconst tagAndTagSpacing = 4 // tagAndTagSpacing\n\nexport default {\n name: 'ScrollPane',\n data: function() {\n return {\n left: 0\n }\n },\n methods: {\n handleScroll(e) {\n const eventDelta = e.wheelDelta || -e.deltaY * 40\n const $scrollWrapper = this.$refs.scrollContainer.$refs.wrap\n $scrollWrapper.scrollLeft = $scrollWrapper.scrollLeft + eventDelta / 4\n },\n moveToTarget(currentTag) {\n const $container = this.$refs.scrollContainer.$el\n const $containerWidth = $container.offsetWidth\n const $scrollWrapper = this.$refs.scrollContainer.$refs.wrap\n const tagList = this.$parent.$refs.tag\n\n let firstTag = null\n let lastTag = null\n\n // find first tag and last tag\n if (tagList.length > 0) {\n firstTag = tagList[0]\n lastTag = tagList[tagList.length - 1]\n }\n\n if (firstTag === currentTag) {\n $scrollWrapper.scrollLeft = 0\n } else if (lastTag === currentTag) {\n $scrollWrapper.scrollLeft = $scrollWrapper.scrollWidth - $containerWidth\n } else {\n // find preTag and nextTag\n const currentIndex = tagList.findIndex(item => item === currentTag)\n const prevTag = tagList[currentIndex - 1]\n const nextTag = tagList[currentIndex + 1]\n // the tag's offsetLeft after of nextTag\n const afterNextTagOffsetLeft = nextTag.$el.offsetLeft + nextTag.$el.offsetWidth + tagAndTagSpacing\n\n // the tag's offsetLeft before of prevTag\n const beforePrevTagOffsetLeft = prevTag.$el.offsetLeft - tagAndTagSpacing\n\n if (afterNextTagOffsetLeft > $scrollWrapper.scrollLeft + $containerWidth) {\n $scrollWrapper.scrollLeft = afterNextTagOffsetLeft - $containerWidth\n } else if (beforePrevTagOffsetLeft < $scrollWrapper.scrollLeft) {\n $scrollWrapper.scrollLeft = beforePrevTagOffsetLeft\n }\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.scroll-container {\n white-space: nowrap;\n position: relative;\n overflow: hidden;\n width: 100%;\n /deep/ {\n .el-scrollbar__bar {\n bottom: 0px;\n }\n .el-scrollbar__wrap {\n height: 49px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=591d6778&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=591d6778&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"591d6778\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-scrollbar',{ref:\"scrollContainer\",staticClass:\"scroll-container\",attrs:{\"vertical\":false},nativeOn:{\"wheel\":function($event){$event.preventDefault();return _vm.handleScroll($event)}}},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"tags-view-container\">\n <scroll-pane ref=\"scrollPane\" class=\"tags-view-wrapper\">\n <router-link\n v-for=\"tag in visitedViews\"\n ref=\"tag\"\n :class=\"isActive(tag)?'active':''\"\n :to=\"{ path: tag.path, query: tag.query, fullPath: tag.fullPath }\"\n :key=\"tag.path\"\n tag=\"span\"\n class=\"tags-view-item\"\n @click.middle.native=\"closeSelectedTag(tag)\"\n @contextmenu.prevent.native=\"openMenu(tag,$event)\">\n {{ generateTitle(tag.title) }}\n <span v-if=\"!tag.meta.affix\" class=\"el-icon-close\" @click.prevent.stop=\"closeSelectedTag(tag)\" />\n </router-link>\n </scroll-pane>\n <ul v-show=\"visible\" :style=\"{left:left+'px',top:top+'px'}\" class=\"contextmenu\">\n <li @click=\"refreshSelectedTag(selectedTag)\">{{ $t('tagsView.refresh') }}</li>\n <li v-if=\"!(selectedTag.meta&&selectedTag.meta.affix)\" @click=\"closeSelectedTag(selectedTag)\">{{\n $t('tagsView.close') }}</li>\n <li @click=\"closeOthersTags\">{{ $t('tagsView.closeOthers') }}</li>\n <li @click=\"closeAllTags(selectedTag)\">{{ $t('tagsView.closeAll') }}</li>\n </ul>\n </div>\n</template>\n\n<script>\nimport ScrollPane from '@/components/element-ui/ScrollPane'\nimport { generateTitle } from '@/utils/i18n'\nimport path from 'path'\n\nexport default {\n components: { ScrollPane },\n data: function() {\n return {\n visible: false,\n top: 0,\n left: 0,\n selectedTag: {},\n affixTags: []\n }\n },\n computed: {\n visitedViews() {\n return this.$store.state.tagsView.visitedViews\n },\n routers() {\n return this.$store.state.permission.routers\n }\n },\n watch: {\n $route() {\n this.addTags()\n this.moveToCurrentTag()\n },\n visible(value) {\n if (value) {\n document.body.addEventListener('click', this.closeMenu)\n } else {\n document.body.removeEventListener('click', this.closeMenu)\n }\n }\n },\n mounted() {\n this.initTags()\n this.addTags()\n },\n methods: {\n generateTitle, // generateTitle by vue-i18n\n isActive(route) {\n return route.path === this.$route.path\n },\n filterAffixTags(routes, basePath = '/') {\n let tags = []\n routes.forEach(route => {\n if (route.meta && route.meta.affix) {\n tags.push({\n path: path.resolve(basePath, route.path),\n name: route.name,\n meta: { ...route.meta }\n })\n }\n if (route.children) {\n const tempTags = this.filterAffixTags(route.children, route.path)\n if (tempTags.length >= 1) {\n tags = [...tags, ...tempTags]\n }\n }\n })\n\n return tags\n },\n initTags() {\n const affixTags = this.affixTags = this.filterAffixTags(this.routers)\n for (const tag of affixTags) {\n // Must have tag name\n if (tag.name) {\n this.$store.dispatch('addVisitedView', tag)\n }\n }\n },\n addTags() {\n const { name } = this.$route\n if (name) {\n this.$store.dispatch('addView', this.$route)\n }\n return false\n },\n moveToCurrentTag() {\n const tags = this.$refs.tag\n this.$nextTick(() => {\n for (const tag of tags) {\n if (tag.to.path === this.$route.path) {\n this.$refs.scrollPane.moveToTarget(tag)\n\n // when query is different then update\n if (tag.to.fullPath !== this.$route.fullPath) {\n this.$store.dispatch('updateVisitedView', this.$route)\n }\n\n break\n }\n }\n })\n },\n refreshSelectedTag(view) {\n this.$store.dispatch('delCachedView', view).then(() => {\n const { fullPath } = view\n this.$nextTick(() => {\n this.$router.replace({\n path: '/redirect' + fullPath\n })\n })\n })\n },\n closeSelectedTag(view) {\n this.$store.dispatch('delView', view).then(({ visitedViews }) => {\n if (this.isActive(view)) {\n this.toLastView(visitedViews)\n }\n })\n },\n closeOthersTags() {\n this.$router.push(this.selectedTag)\n this.$store.dispatch('delOthersViews', this.selectedTag).then(() => {\n this.moveToCurrentTag()\n })\n },\n closeAllTags(view) {\n this.$store.dispatch('delAllViews').then(({ visitedViews }) => {\n if (this.affixTags.some(tag => tag.path === view.path)) {\n return\n }\n this.toLastView(visitedViews)\n })\n },\n toLastView(visitedViews) {\n const latestView = visitedViews.slice(-1)[0]\n if (latestView) {\n this.$router.push(latestView)\n } else {\n // You can set another route\n this.$router.push('/')\n }\n },\n openMenu(tag, e) {\n const menuMinWidth = 105\n const offsetLeft = this.$el.getBoundingClientRect().left // container margin left\n const offsetWidth = this.$el.offsetWidth // container width\n const maxLeft = offsetWidth - menuMinWidth // left boundary\n const left = e.clientX - offsetLeft + 15 // 15: margin right\n\n if (left > maxLeft) {\n this.left = maxLeft\n } else {\n this.left = left\n }\n this.top = e.clientY\n\n this.visible = true\n this.selectedTag = tag\n },\n closeMenu() {\n this.visible = false\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.tags-view-container {\n height: 34px;\n width: 100%;\n background: #fff;\n border-bottom: 1px solid #d8dce5;\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04);\n .tags-view-wrapper {\n .tags-view-item {\n display: inline-block;\n position: relative;\n cursor: pointer;\n height: 26px;\n line-height: 26px;\n border: 1px solid #d8dce5;\n color: #495060;\n background: #fff;\n padding: 0 8px;\n font-size: 12px;\n margin-left: 5px;\n margin-top: 4px;\n &:first-of-type {\n margin-left: 15px;\n }\n &:last-of-type {\n margin-right: 15px;\n }\n &.active {\n background-color: #42b983;\n color: #fff;\n border-color: #42b983;\n &::before {\n content: '';\n background: #fff;\n display: inline-block;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n position: relative;\n margin-right: 2px;\n }\n }\n }\n }\n .contextmenu {\n margin: 0;\n background: #fff;\n z-index: 100;\n position: absolute;\n list-style-type: none;\n padding: 5px 0;\n border-radius: 4px;\n font-size: 12px;\n font-weight: 400;\n color: #333;\n box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);\n li {\n margin: 0;\n padding: 7px 16px;\n cursor: pointer;\n &:hover {\n background: #eee;\n }\n }\n }\n}\n</style>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\">\n//reset element css of el-icon-close\n.tags-view-wrapper {\n .tags-view-item {\n .el-icon-close {\n width: 16px;\n height: 16px;\n vertical-align: 2px;\n border-radius: 50%;\n text-align: center;\n transition: all .3s cubic-bezier(.645, .045, .355, 1);\n transform-origin: 100% 50%;\n &:before {\n transform: scale(.6);\n display: inline-block;\n vertical-align: -3px;\n }\n &:hover {\n background-color: #b4bccc;\n color: #fff;\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TagsView.vue?vue&type=template&id=e1cdb714&scoped=true&\"\nimport script from \"./TagsView.vue?vue&type=script&lang=js&\"\nexport * from \"./TagsView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TagsView.vue?vue&type=style&index=0&id=e1cdb714&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\nimport style1 from \"./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e1cdb714\",\n null\n \n)\n\ncomponent.options.__file = \"TagsView.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tags-view-container\"},[_c('scroll-pane',{ref:\"scrollPane\",staticClass:\"tags-view-wrapper\"},_vm._l((_vm.visitedViews),function(tag){return _c('router-link',{key:tag.path,ref:\"tag\",refInFor:true,staticClass:\"tags-view-item\",class:_vm.isActive(tag)?'active':'',attrs:{\"to\":{ path: tag.path, query: tag.query, fullPath: tag.fullPath },\"tag\":\"span\"},nativeOn:{\"mouseup\":function($event){if('button' in $event && $event.button !== 1){ return null; }return _vm.closeSelectedTag(tag)},\"contextmenu\":function($event){$event.preventDefault();return _vm.openMenu(tag,$event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.generateTitle(tag.title))+\"\\n \"),(!tag.meta.affix)?_c('span',{staticClass:\"el-icon-close\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.closeSelectedTag(tag)}}}):_vm._e()])}),1),_vm._v(\" \"),_c('ul',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.visible),expression:\"visible\"}],staticClass:\"contextmenu\",style:({left:_vm.left+'px',top:_vm.top+'px'})},[_c('li',{on:{\"click\":function($event){return _vm.refreshSelectedTag(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.refresh')))]),_vm._v(\" \"),(!(_vm.selectedTag.meta&&_vm.selectedTag.meta.affix))?_c('li',{on:{\"click\":function($event){return _vm.closeSelectedTag(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.close')))]):_vm._e(),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.closeOthersTags}},[_vm._v(_vm._s(_vm.$t('tagsView.closeOthers')))]),_vm._v(\" \"),_c('li',{on:{\"click\":function($event){return _vm.closeAllTags(_vm.selectedTag)}}},[_vm._v(_vm._s(_vm.$t('tagsView.closeAll')))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=script&lang=js&\"","<template>\n <section class=\"app-main\">\n <transition name=\"fade-transform\" mode=\"out-in\">\n <keep-alive :include=\"cachedViews\">\n <router-view :key=\"key\"/>\n </keep-alive>\n </transition>\n </section>\n</template>\n\n<script>\nexport default {\n name: 'AppMain',\n computed: {\n cachedViews() {\n return this.$store.state.tagsView.cachedViews\n },\n key() {\n return this.$route.fullPath\n }\n }\n}\n</script>\n\n<style scoped>\n.app-main {\n /*84 = navbar + tags-view = 50 +34 */\n min-height: calc(100vh - 84px);\n width: 100%;\n position: relative;\n overflow: hidden;\n}\n</style>\n\n","import { render, staticRenderFns } from \"./AppMain.vue?vue&type=template&id=f852c4f2&scoped=true&\"\nimport script from \"./AppMain.vue?vue&type=script&lang=js&\"\nexport * from \"./AppMain.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f852c4f2\",\n null\n \n)\n\ncomponent.options.__file = \"AppMain.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('section',{staticClass:\"app-main\"},[_c('transition',{attrs:{\"name\":\"fade-transform\",\"mode\":\"out-in\"}},[_c('keep-alive',{attrs:{\"include\":_vm.cachedViews}},[_c('router-view',{key:_vm.key})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import store from '@/store'\n\nconst { body } = document\nconst mobileWidth = 480\nconst tabletWidth = 801\nconst ratio = 3\n\nexport default {\n watch: {\n $route(route) {\n if (this.device === 'mobile' && this.sidebar.opened) {\n store.dispatch('closeSideBar', { withoutAnimation: false })\n }\n }\n },\n beforeMount() {\n window.addEventListener('resize', this.resizeHandler)\n },\n mounted() {\n const isMobile = this.isMobile()\n const isTablet = this.isTablet()\n if (isMobile || isTablet) {\n store.dispatch('toggleDevice', isMobile ? 'mobile' : 'tablet')\n store.dispatch('closeSideBar', { withoutAnimation: true })\n }\n },\n methods: {\n isMobile() {\n const rect = body.getBoundingClientRect()\n return rect.width - ratio < mobileWidth\n },\n isTablet() {\n const rect = body.getBoundingClientRect()\n return rect.width - ratio < tabletWidth && rect.width - ratio > mobileWidth\n },\n resizeHandler() {\n if (!document.hidden) {\n const isMobile = this.isMobile()\n const isTablet = this.isTablet()\n\n if (isMobile || isTablet) {\n store.dispatch('toggleDevice', isMobile ? 'mobile' : 'tablet')\n store.dispatch('closeSideBar', { withoutAnimation: true })\n } else {\n store.dispatch('toggleDevice', 'desktop')\n }\n }\n }\n }\n}\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Layout.vue?vue&type=script&lang=js&\"","<template>\n <div :class=\"classObj\" class=\"app-wrapper\">\n <div v-if=\"device==='mobile'&&sidebar.opened\" class=\"drawer-bg\" @click=\"handleClickOutside\"/>\n <sidebar class=\"sidebar-container\"/>\n <div class=\"main-container\">\n <navbar/>\n <app-main/>\n </div>\n </div>\n</template>\n\n<script>\nimport { Navbar, Sidebar, AppMain, TagsView } from './components'\nimport ResizeMixin from './mixin/ResizeHandler'\n\nexport default {\n name: 'Layout',\n components: {\n Navbar,\n Sidebar,\n AppMain,\n TagsView\n },\n mixins: [ResizeMixin],\n computed: {\n sidebar() {\n return this.$store.state.app.sidebar\n },\n device() {\n return this.$store.state.app.device\n },\n classObj() {\n return {\n hideSidebar: !this.sidebar.opened,\n openSidebar: this.sidebar.opened,\n withoutAnimation: this.sidebar.withoutAnimation,\n mobile: this.device === 'mobile'\n }\n }\n },\n methods: {\n handleClickOutside() {\n this.$store.dispatch('closeSideBar', { withoutAnimation: false })\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n @import \"~@/styles/mixin.scss\";\n .app-wrapper {\n @include clearfix;\n position: relative;\n height: 100%;\n width: 100%;\n &.mobile.openSidebar{\n position: fixed;\n top: 0;\n }\n }\n .drawer-bg {\n background: #000;\n opacity: 0.3;\n width: 100%;\n top: 0;\n height: 100%;\n position: absolute;\n z-index: 999;\n }\n</style>\n","import { render, staticRenderFns } from \"./Layout.vue?vue&type=template&id=767d264f&scoped=true&\"\nimport script from \"./Layout.vue?vue&type=script&lang=js&\"\nexport * from \"./Layout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Layout.vue?vue&type=style&index=0&id=767d264f&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"767d264f\",\n null\n \n)\n\ncomponent.options.__file = \"Layout.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-wrapper\",class:_vm.classObj},[(_vm.device==='mobile'&&_vm.sidebar.opened)?_c('div',{staticClass:\"drawer-bg\",on:{\"click\":_vm.handleClickOutside}}):_vm._e(),_vm._v(\" \"),_c('sidebar',{staticClass:\"sidebar-container\"}),_vm._v(\" \"),_c('div',{staticClass:\"main-container\"},[_c('navbar'),_vm._v(\" \"),_c('app-main')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport Router from 'vue-router'\n\nVue.use(Router)\n\n/* Layout */\nimport Layout from '@/views/layout/Layout'\n\nconst disabledFeatures = process.env.DISABLED_FEATURES || []\nconst settingsDisabled = disabledFeatures.includes('settings')\nconst settings = {\n path: '/settings',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/settings/index'),\n name: 'Settings',\n meta: { title: 'settings', icon: 'settings', noCache: true }\n }\n ]\n}\n\nconst statusesDisabled = disabledFeatures.includes('statuses')\nconst statuses = {\n path: '/statuses',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/statuses/index'),\n name: 'Statuses',\n meta: { title: 'statuses', icon: 'form', noCache: true }\n }\n ]\n}\n\nconst reportsDisabled = disabledFeatures.includes('reports')\nconst reports = {\n path: '/reports',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/reports/index'),\n name: 'Reports',\n meta: { title: 'reports', icon: 'documentation', noCache: true }\n }\n ]\n}\n\nconst invitesDisabled = disabledFeatures.includes('invites')\nconst invites = {\n path: '/invites',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/invites/index'),\n name: 'Invites',\n meta: { title: 'invites', icon: 'guide', noCache: true }\n }\n ]\n}\n\nconst emojiPacksDisabled = disabledFeatures.includes('emoji-packs')\nconst emojiPacks = {\n path: '/emoji_packs',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/emojiPacks/index'),\n name: 'Emoji Packs',\n meta: { title: 'emoji-packs', icon: 'eye-open', noCache: true }\n }\n ]\n}\n\nconst moderationLogDisabled = disabledFeatures.includes('moderation-log')\nconst moderationLog = {\n path: '/moderation_log',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/moderation_log/index'),\n name: 'Moderation Log',\n meta: { title: 'moderationLog', icon: 'list', noCache: true }\n }\n ]\n}\n\nconst mediaProxyCacheDisabled = disabledFeatures.includes('media-proxy-cache')\nconst mediaProxyCache = {\n path: '/media_proxy_cache',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/mediaProxyCache/index'),\n name: 'MediaProxy Cache',\n meta: { title: 'mediaProxyCache', icon: 'example', noCache: true }\n }\n ]\n}\n\nexport const constantRouterMap = [\n {\n path: '/redirect',\n component: Layout,\n hidden: true,\n children: [\n {\n path: '/redirect/:path*',\n component: () => import('@/views/redirect/index')\n }\n ]\n },\n {\n path: '/login-pleroma',\n component: () => import('@/views/login/pleroma'),\n hidden: true\n },\n {\n path: '/login',\n component: () => import('@/views/login/index'),\n hidden: true\n },\n {\n path: '/auth-redirect',\n component: () => import('@/views/login/authredirect'),\n hidden: true\n },\n {\n path: '/404',\n component: () => import('@/views/errorPage/404'),\n hidden: true\n },\n {\n path: '/401',\n component: () => import('@/views/errorPage/401'),\n hidden: true\n },\n {\n path: '',\n component: Layout,\n redirect: '/users/index'\n }\n]\n\nexport default new Router({\n // mode: 'history', // require service support\n scrollBehavior: () => ({ y: 0 }),\n routes: constantRouterMap\n})\n\nexport const asyncRouterMap = [\n {\n path: '/users',\n component: Layout,\n children: [\n {\n path: 'index',\n component: () => import('@/views/users/index'),\n name: 'Users',\n meta: { title: 'users', icon: 'peoples', noCache: true }\n }\n ]\n },\n ...(statusesDisabled ? [] : [statuses]),\n ...(reportsDisabled ? [] : [reports]),\n ...(invitesDisabled ? [] : [invites]),\n ...(emojiPacksDisabled ? [] : [emojiPacks]),\n ...(moderationLogDisabled ? [] : [moderationLog]),\n ...(mediaProxyCacheDisabled ? [] : [mediaProxyCache]),\n ...(settingsDisabled ? [] : [settings]),\n {\n path: '/users/:id',\n component: Layout,\n children: [\n {\n path: '',\n name: 'UsersShow',\n component: () => import('@/views/users/show')\n }\n ],\n hidden: true\n },\n {\n path: '/statuses/:id',\n component: Layout,\n children: [\n {\n path: '',\n name: 'StatusShow',\n component: () => import('@/views/statuses/show')\n }\n ],\n hidden: true\n },\n { path: '*', redirect: '/404', hidden: true }\n]\n","import { asyncRouterMap, constantRouterMap } from '@/router'\n\n/**\n * 通过meta.role判断是否与当前用户权限匹配\n * @param roles\n * @param route\n */\nfunction hasPermission(roles, route) {\n if (route.meta && route.meta.roles) {\n return roles.some(role => route.meta.roles.includes(role))\n } else {\n return true\n }\n}\n\n/**\n * 递归过滤异步路由表,返回符合用户角色权限的路由表\n * @param routes asyncRouterMap\n * @param roles\n */\nfunction filterAsyncRouter(routes, roles) {\n const res = []\n\n routes.forEach(route => {\n const tmp = { ...route }\n if (hasPermission(roles, tmp)) {\n if (tmp.children) {\n tmp.children = filterAsyncRouter(tmp.children, roles)\n }\n res.push(tmp)\n }\n })\n\n return res\n}\n\nconst permission = {\n state: {\n routers: [],\n addRouters: []\n },\n mutations: {\n SET_ROUTERS: (state, routers) => {\n state.addRouters = routers\n state.routers = constantRouterMap.concat(routers)\n }\n },\n actions: {\n GenerateRoutes({ commit }, data) {\n return new Promise(resolve => {\n const { roles } = data\n let accessedRouters\n if (roles.includes('admin')) {\n accessedRouters = asyncRouterMap\n } else {\n accessedRouters = filterAsyncRouter(asyncRouterMap, roles)\n }\n commit('SET_ROUTERS', accessedRouters)\n resolve()\n })\n }\n }\n}\n\nexport default permission\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchRelays(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function addRelay(relay_url, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'post',\n headers: authHeaders(token),\n data: { relay_url }\n })\n}\n\nexport async function deleteRelay(relay_url, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/relay',\n method: 'delete',\n headers: authHeaders(token),\n data: { relay_url }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchRelays, addRelay, deleteRelay } from '@/api/relays'\n\nconst relays = {\n state: {\n fetchedRelays: [],\n loading: true\n },\n mutations: {\n SET_LOADING: (state, loading) => {\n state.loading = loading\n },\n SET_RELAYS: (state, relays) => {\n state.fetchedRelays = relays\n },\n ADD_RELAY: (state, relay) => {\n state.fetchedRelays = [...state.fetchedRelays, { actor: relay }]\n },\n DELETE_RELAY: (state, relay) => {\n state.fetchedRelays = state.fetchedRelays.filter(fetchedRelay => fetchedRelay.actor !== relay)\n }\n },\n actions: {\n async FetchRelays({ commit, getters }) {\n commit('SET_LOADING', true)\n\n const { data } = await fetchRelays(getters.authHost, getters.token)\n commit('SET_RELAYS', data.relays)\n commit('SET_LOADING', false)\n },\n async AddRelay({ commit, dispatch, getters }, relay) {\n commit('ADD_RELAY', relay)\n\n try {\n await addRelay(relay, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('FetchRelays')\n }\n },\n async DeleteRelay({ commit, dispatch, getters }, relay) {\n commit('DELETE_RELAY', relay)\n\n try {\n await deleteRelay(relay, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('FetchRelays')\n }\n }\n }\n}\n\nexport default relays\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function changeState(reports, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports`,\n method: 'patch',\n headers: authHeaders(token),\n data: { reports }\n })\n}\n\nexport async function fetchReports(filter, page, pageSize, authHost, token) {\n const url = filter.length > 0\n ? `/api/pleroma/admin/reports?state=${filter}&page=${page}&page_size=${pageSize}`\n : `/api/pleroma/admin/reports?page=${page}&page_size=${pageSize}`\n return await request({\n baseURL: baseName(authHost),\n url,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function createNote(content, reportID, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports/${reportID}/notes`,\n method: `post`,\n headers: authHeaders(token),\n data: { content }\n })\n}\n\nexport async function deleteNote(noteID, reportID, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/reports/${reportID}/notes/${noteID}`,\n method: `delete`,\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { changeState, fetchReports, createNote, deleteNote } from '@/api/reports'\n\nconst reports = {\n state: {\n currentPage: 1,\n fetchedReports: [],\n loading: true,\n openReportsCount: 0,\n pageSize: 50,\n stateFilter: '',\n totalReportsCount: 0\n },\n mutations: {\n SET_LAST_REPORT_ID: (state, id) => {\n state.idOfLastReport = id\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_OPEN_REPORTS_COUNT: (state, total) => {\n state.openReportsCount = total\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_REPORTS: (state, reports) => {\n state.fetchedReports = reports\n },\n SET_REPORTS_COUNT: (state, total) => {\n state.totalReportsCount = total\n },\n SET_REPORTS_FILTER: (state, filter) => {\n state.stateFilter = filter\n }\n },\n actions: {\n async ChangeReportState({ commit, dispatch, getters, state }, reportsData) {\n changeState(reportsData, getters.authHost, getters.token)\n\n const updatedReports = state.fetchedReports.map(report => {\n const updatedReportsIds = reportsData.map(({ id }) => id)\n return updatedReportsIds.includes(report.id) ? { ...report, state: reportsData[0].state } : report\n })\n\n commit('SET_REPORTS', updatedReports)\n dispatch('FetchOpenReportsCount')\n },\n ClearFetchedReports({ commit }) {\n commit('SET_REPORTS', [])\n },\n async FetchReports({ commit, getters, state }, page) {\n commit('SET_LOADING', true)\n const { data } = await fetchReports(state.stateFilter, page, state.pageSize, getters.authHost, getters.token)\n\n commit('SET_REPORTS', data.reports)\n commit('SET_REPORTS_COUNT', data.total)\n commit('SET_PAGE', page)\n commit('SET_LOADING', false)\n },\n async FetchOpenReportsCount({ commit, getters, state }) {\n commit('SET_LOADING', true)\n const { data } = await fetchReports('open', state.currentPage, state.pageSize, getters.authHost, getters.token)\n\n commit('SET_OPEN_REPORTS_COUNT', data.total)\n commit('SET_LOADING', false)\n },\n SetReportsFilter({ commit }, filter) {\n commit('SET_REPORTS_FILTER', filter)\n },\n CreateReportNote({ commit, getters, state, rootState }, { content, reportID }) {\n createNote(content, reportID, getters.authHost, getters.token)\n\n const optimisticNote = {\n user: {\n avatar: rootState.user.avatar,\n nickname: rootState.user.name,\n id: rootState.user.id\n },\n content: content,\n created_at: new Date().getTime()\n }\n\n const updatedReports = state.fetchedReports.map(report => {\n if (report.id === reportID) {\n report.notes = [...report.notes, optimisticNote]\n }\n\n return report\n })\n\n commit('SET_REPORTS', updatedReports)\n },\n DeleteReportNote({ commit, getters, state }, { noteID, reportID }) {\n deleteNote(noteID, reportID, getters.authHost, getters.token)\n\n const updatedReports = state.fetchedReports.map(report => {\n if (report.id === reportID) {\n report.notes = report.notes.filter(note => note.id !== noteID)\n }\n\n return report\n })\n\n commit('SET_REPORTS', updatedReports)\n }\n }\n}\n\nexport default reports\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function fetchDescription(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config/descriptions`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchSettings(authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function updateSettings(configs, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'post',\n headers: authHeaders(token),\n data: { configs }\n })\n}\n\nexport async function removeSettings(configs, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/config`,\n method: 'post',\n headers: authHeaders(token),\n data: { configs }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchDescription, fetchSettings, removeSettings, updateSettings } from '@/api/settings'\nimport { formSearchObject, parseNonTuples, parseTuples, valueHasTuples, wrapUpdatedSettings } from './normalizers'\nimport _ from 'lodash'\n\nconst settings = {\n state: {\n activeTab: 'instance',\n configDisabled: true,\n db: {},\n description: [],\n loading: true,\n searchData: {},\n settings: {},\n updatedSettings: {}\n },\n mutations: {\n CLEAR_UPDATED_SETTINGS: (state) => {\n state.updatedSettings = {}\n },\n REMOVE_SETTING_FROM_UPDATED: (state, { group, key, subkeys }) => {\n if (_.get(state.updatedSettings, [group, key, subkeys[0]])) {\n const { [subkeys[0]]: value, ...updatedSettings } = state.updatedSettings[group][key]\n state.updatedSettings = updatedSettings\n }\n },\n SET_ACTIVE_TAB: (state, tab) => {\n state.activeTab = tab\n },\n SET_DESCRIPTION: (state, data) => {\n state.description = data\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_SEARCH: (state, searchObject) => {\n state.searchData = searchObject\n },\n SET_SETTINGS: (state, data) => {\n const newSettings = data.reduce((acc, { group, key, value }) => {\n const parsedValue = valueHasTuples(key, value)\n ? { value: parseNonTuples(key, value) }\n : parseTuples(value, key)\n acc[group] = acc[group] ? { ...acc[group], [key]: parsedValue } : { [key]: parsedValue }\n return acc\n }, {})\n\n const newDbSettings = data.reduce((acc, { group, key, db }) => {\n if (db) {\n acc[group] = acc[group] ? { ...acc[group], [key]: db } : { [key]: db }\n }\n return acc\n }, {})\n\n state.settings = newSettings\n state.db = newDbSettings\n },\n TOGGLE_TABS: (state, status) => {\n state.configDisabled = status\n },\n UPDATE_SETTINGS: (state, { group, key, input, value, type }) => {\n const updatedSetting = !state.updatedSettings[group] || (key === 'Pleroma.Emails.Mailer' && input === ':adapter')\n ? { [key]: { [input]: [type, value] }}\n : { [key]: { ...state.updatedSettings[group][key], ...{ [input]: [type, value] }}}\n state.updatedSettings[group] = { ...state.updatedSettings[group], ...updatedSetting }\n },\n UPDATE_STATE: (state, { group, key, input, value }) => {\n const updatedState = key === 'Pleroma.Emails.Mailer' && input === ':adapter'\n ? { [key]: { [input]: value }}\n : { [key]: { ...state.settings[group][key], ...{ [input]: value }}}\n state.settings[group] = { ...state.settings[group], ...updatedState }\n }\n },\n actions: {\n async FetchSettings({ commit, getters }) {\n commit('SET_LOADING', true)\n try {\n const response = await fetchSettings(getters.authHost, getters.token)\n const description = await fetchDescription(getters.authHost, getters.token)\n commit('SET_DESCRIPTION', description.data)\n const searchObject = formSearchObject(description.data)\n commit('SET_SEARCH', searchObject)\n commit('SET_SETTINGS', response.data.configs)\n } catch (_e) {\n commit('TOGGLE_TABS', true)\n commit('SET_ACTIVE_TAB', 'relays')\n commit('SET_LOADING', false)\n return\n }\n commit('TOGGLE_TABS', false)\n commit('SET_LOADING', false)\n },\n async RemoveSetting({ commit, getters }, configs) {\n await removeSettings(configs, getters.authHost, getters.token)\n const response = await fetchSettings(getters.authHost, getters.token)\n const { group, key, subkeys } = configs[0]\n commit('SET_SETTINGS', response.data.configs)\n commit('TOGGLE_REBOOT', response.data.need_reboot)\n commit('REMOVE_SETTING_FROM_UPDATED', { group, key, subkeys: subkeys || [] })\n },\n SetActiveTab({ commit }, tab) {\n commit('SET_ACTIVE_TAB', tab)\n },\n async SubmitChanges({ getters, commit, state }) {\n const configs = Object.keys(state.updatedSettings).reduce((acc, group) => {\n return [...acc, ...wrapUpdatedSettings(group, state.updatedSettings[group], state.settings)]\n }, [])\n\n await updateSettings(configs, getters.authHost, getters.token)\n const response = await fetchSettings(getters.authHost, getters.token)\n commit('SET_SETTINGS', response.data.configs)\n commit('TOGGLE_REBOOT', response.data.need_reboot)\n commit('CLEAR_UPDATED_SETTINGS')\n },\n UpdateSettings({ commit }, { group, key, input, value, type }) {\n key\n ? commit('UPDATE_SETTINGS', { group, key, input, value, type })\n : commit('UPDATE_SETTINGS', { group, key: input, input: '_value', value, type })\n },\n async UpdateState({ commit, getters, state }, { group, key, input, value }) {\n if (key === 'Pleroma.Emails.Mailer' && input === ':adapter') {\n const subkeys = Object.keys(state.settings[group][key]).filter(el => el !== ':adapter')\n await removeSettings([{ group, key, delete: true, subkeys }], getters.authHost, getters.token)\n } else if (key === 'Pleroma.Upload' && input === ':uploader') {\n const deletedKey = value === 'Pleroma.Uploaders.Local' ? 'Pleroma.Uploaders.S3' : 'Pleroma.Uploaders.Local'\n await removeSettings([{ group, key: deletedKey, delete: true }], getters.authHost, getters.token)\n }\n key\n ? commit('UPDATE_STATE', { group, key, input, value })\n : commit('UPDATE_STATE', { group, key: input, input: 'value', value })\n }\n }\n}\n\nexport default settings\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function changeStatusScope(id, sensitive, visibility, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'put',\n headers: authHeaders(token),\n data: { sensitive, visibility }\n })\n}\n\nexport async function deleteStatus(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatus(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses/${id}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatuses({ godmode, localOnly, authHost, token, pageSize, page }) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/statuses?godmode=${godmode}&local_only=${localOnly}&page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatusesCount(instance, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: instance ? `/api/pleroma/admin/stats?instance=${instance}` : `/api/pleroma/admin/stats`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchStatusesByInstance({ instance, authHost, token, pageSize, page }) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/instances/${instance}/statuses?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { changeStatusScope, deleteStatus, fetchStatus, fetchStatuses, fetchStatusesCount, fetchStatusesByInstance } from '@/api/status'\n\nconst status = {\n state: {\n fetchedStatus: {},\n fetchedStatuses: [],\n loading: false,\n statusAuthor: {},\n statusesByInstance: {\n selectedInstance: '',\n showLocal: false,\n showPrivate: false,\n page: 1,\n pageSize: 20,\n buttonLoading: false,\n allLoaded: false\n },\n statusVisibility: {}\n },\n mutations: {\n CHANGE_GODMODE_CHECKBOX_VALUE: (state, value) => {\n state.statusesByInstance.showPrivate = value\n },\n CHANGE_LOCAL_CHECKBOX_VALUE: (state, value) => {\n state.statusesByInstance.showLocal = value\n },\n CHANGE_PAGE: (state, page) => {\n state.statusesByInstance.page = page\n },\n CHANGE_SELECTED_INSTANCE: (state, instance) => {\n state.statusesByInstance.selectedInstance = instance\n },\n SET_STATUS: (state, status) => {\n state.fetchedStatus = status\n },\n SET_STATUSES_BY_INSTANCE: (state, statuses) => {\n state.fetchedStatuses = statuses\n },\n PUSH_STATUSES: (state, statuses) => {\n state.fetchedStatuses = [...state.fetchedStatuses, ...statuses]\n },\n SET_ALL_LOADED: (state, status) => {\n state.statusesByInstance.allLoaded = status\n },\n SET_BUTTON_LOADING: (state, status) => {\n state.statusesByInstance.buttonLoading = status\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SET_STATUS_VISIBILITY: (state, visibility) => {\n state.statusVisibility = visibility\n },\n SET_STATUS_AUTHOR: (state, user) => {\n state.statusAuthor = user\n }\n },\n actions: {\n async ChangeStatusScope({ dispatch, getters }, { statusId, isSensitive, visibility, reportCurrentPage, userId, godmode, fetchStatusesByInstance }) {\n await changeStatusScope(statusId, isSensitive, visibility, getters.authHost, getters.token)\n if (reportCurrentPage !== 0) { // called from Reports\n dispatch('FetchReports', reportCurrentPage)\n } else if (userId.length > 0) { // called from User profile\n dispatch('FetchUserStatuses', { userId, godmode })\n } else if (fetchStatusesByInstance) { // called from Statuses by Instance\n dispatch('FetchStatusesByInstance')\n } else { // called from Status show page\n dispatch('FetchStatusAfterUserModeration', statusId)\n }\n },\n ClearState({ commit }) {\n commit('CHANGE_SELECTED_INSTANCE', '')\n commit('SET_STATUSES_BY_INSTANCE', [])\n commit('CHANGE_LOCAL_CHECKBOX_VALUE', false)\n commit('CHANGE_GODMODE_CHECKBOX_VALUE', false)\n commit('SET_ALL_LOADED', false)\n commit('CHANGE_PAGE', 1)\n },\n async DeleteStatus({ dispatch, getters }, { statusId, reportCurrentPage, userId, godmode, fetchStatusesByInstance }) {\n await deleteStatus(statusId, getters.authHost, getters.token)\n if (reportCurrentPage !== 0) { // called from Reports\n dispatch('FetchReports', reportCurrentPage)\n } else if (userId.length > 0) { // called from User profile\n dispatch('FetchUserStatuses', { userId, godmode })\n } else if (fetchStatusesByInstance) { // called from Statuses by Instance\n dispatch('FetchStatusesByInstance')\n }\n },\n async FetchStatus({ commit, dispatch, getters, state }, id) {\n commit('SET_LOADING', true)\n const status = await fetchStatus(id, getters.authHost, getters.token)\n\n commit('SET_STATUS', status.data)\n commit('SET_STATUS_AUTHOR', status.data.account)\n commit('SET_LOADING', false)\n dispatch('FetchUserStatuses', { userId: state.fetchedStatus.account.id, godmode: false })\n },\n FetchStatusAfterUserModeration({ commit, dispatch, getters, state }, id) {\n commit('SET_LOADING', true)\n fetchStatus(id, getters.authHost, getters.token)\n .then(status => dispatch('SetStatus', status.data))\n commit('SET_LOADING', false)\n },\n async FetchStatusesCount({ commit, getters }, instance) {\n commit('SET_LOADING', true)\n const { data } = await fetchStatusesCount(instance, getters.authHost, getters.token)\n commit('SET_STATUS_VISIBILITY', data.status_visibility)\n commit('SET_LOADING', false)\n },\n async FetchStatusesByInstance({ commit, dispatch, getters, state, rootState }) {\n commit('SET_LOADING', true)\n dispatch('FetchStatusesCount', state.statusesByInstance.selectedInstance)\n if (state.statusesByInstance.selectedInstance === '') {\n commit('SET_STATUSES_BY_INSTANCE', [])\n } else {\n const statuses = state.statusesByInstance.selectedInstance === rootState.user.authHost\n ? await fetchStatuses(\n {\n godmode: state.statusesByInstance.showPrivate,\n localOnly: state.statusesByInstance.showLocal,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n : await fetchStatusesByInstance(\n {\n instance: state.statusesByInstance.selectedInstance,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n commit('SET_STATUSES_BY_INSTANCE', statuses.data)\n if (statuses.data.length < state.statusesByInstance.pageSize) {\n commit('SET_ALL_LOADED', true)\n }\n }\n commit('SET_LOADING', false)\n },\n async FetchStatusesPageByInstance({ commit, getters, rootState, state }) {\n commit('SET_BUTTON_LOADING', true)\n const statuses = state.statusesByInstance.selectedInstance === rootState.user.authHost\n ? await fetchStatuses(\n {\n godmode: state.statusesByInstance.showPrivate,\n localOnly: state.statusesByInstance.showLocal,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n : await fetchStatusesByInstance(\n {\n instance: state.statusesByInstance.selectedInstance,\n authHost: getters.authHost,\n token: getters.token,\n pageSize: state.statusesByInstance.pageSize,\n page: state.statusesByInstance.page\n })\n commit('PUSH_STATUSES', statuses.data)\n commit('SET_BUTTON_LOADING', false)\n if (statuses.data.length < state.statusesByInstance.pageSize) {\n commit('SET_ALL_LOADED', true)\n }\n },\n HandleGodmodeCheckboxChange({ commit, dispatch }, value) {\n dispatch('HandlePageChange', 1)\n commit('SET_ALL_LOADED', false)\n\n commit('CHANGE_GODMODE_CHECKBOX_VALUE', value)\n dispatch('FetchStatusesByInstance')\n },\n HandleLocalCheckboxChange({ commit, dispatch }, value) {\n dispatch('HandlePageChange', 1)\n commit('SET_ALL_LOADED', false)\n\n commit('CHANGE_LOCAL_CHECKBOX_VALUE', value)\n dispatch('FetchStatusesByInstance')\n },\n HandleFilterChange({ commit }, instance) {\n commit('CHANGE_SELECTED_INSTANCE', instance)\n commit('SET_ALL_LOADED', false)\n },\n HandlePageChange({ commit }, page) {\n commit('CHANGE_PAGE', page)\n },\n SetStatus({ commit }, status) {\n commit('SET_STATUS', status)\n commit('SET_STATUS_AUTHOR', status.account)\n }\n }\n}\n\nexport default status\n","const tagsView = {\n state: {\n visitedViews: [],\n cachedViews: []\n },\n mutations: {\n ADD_VISITED_VIEW: (state, view) => {\n if (state.visitedViews.some(v => v.path === view.path)) return\n state.visitedViews.push(\n Object.assign({}, view, {\n title: view.meta.title || 'no-name'\n })\n )\n },\n ADD_CACHED_VIEW: (state, view) => {\n if (state.cachedViews.includes(view.name)) return\n if (!view.meta.noCache) {\n state.cachedViews.push(view.name)\n }\n },\n\n DEL_VISITED_VIEW: (state, view) => {\n for (const [i, v] of state.visitedViews.entries()) {\n if (v.path === view.path) {\n state.visitedViews.splice(i, 1)\n break\n }\n }\n },\n DEL_CACHED_VIEW: (state, view) => {\n for (const i of state.cachedViews) {\n if (i === view.name) {\n const index = state.cachedViews.indexOf(i)\n state.cachedViews.splice(index, 1)\n break\n }\n }\n },\n\n DEL_OTHERS_VISITED_VIEWS: (state, view) => {\n state.visitedViews = state.visitedViews.filter(v => {\n return v.meta.affix || v.path === view.path\n })\n },\n DEL_OTHERS_CACHED_VIEWS: (state, view) => {\n for (const i of state.cachedViews) {\n if (i === view.name) {\n const index = state.cachedViews.indexOf(i)\n state.cachedViews = state.cachedViews.slice(index, index + 1)\n break\n }\n }\n },\n\n DEL_ALL_VISITED_VIEWS: state => {\n // keep affix tags\n const affixTags = state.visitedViews.filter(tag => tag.meta.affix)\n state.visitedViews = affixTags\n },\n DEL_ALL_CACHED_VIEWS: state => {\n state.cachedViews = []\n },\n\n UPDATE_VISITED_VIEW: (state, view) => {\n for (let v of state.visitedViews) {\n if (v.path === view.path) {\n v = Object.assign(v, view)\n break\n }\n }\n }\n\n },\n actions: {\n addView({ dispatch }, view) {\n dispatch('addVisitedView', view)\n dispatch('addCachedView', view)\n },\n addVisitedView({ commit }, view) {\n commit('ADD_VISITED_VIEW', view)\n },\n addCachedView({ commit }, view) {\n commit('ADD_CACHED_VIEW', view)\n },\n\n delView({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delVisitedView', view)\n dispatch('delCachedView', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delVisitedView({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_VISITED_VIEW', view)\n resolve([...state.visitedViews])\n })\n },\n delCachedView({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_CACHED_VIEW', view)\n resolve([...state.cachedViews])\n })\n },\n\n delOthersViews({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delOthersVisitedViews', view)\n dispatch('delOthersCachedViews', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delOthersVisitedViews({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_OTHERS_VISITED_VIEWS', view)\n resolve([...state.visitedViews])\n })\n },\n delOthersCachedViews({ commit, state }, view) {\n return new Promise(resolve => {\n commit('DEL_OTHERS_CACHED_VIEWS', view)\n resolve([...state.cachedViews])\n })\n },\n\n delAllViews({ dispatch, state }, view) {\n return new Promise(resolve => {\n dispatch('delAllVisitedViews', view)\n dispatch('delAllCachedViews', view)\n resolve({\n visitedViews: [...state.visitedViews],\n cachedViews: [...state.cachedViews]\n })\n })\n },\n delAllVisitedViews({ commit, state }) {\n return new Promise(resolve => {\n commit('DEL_ALL_VISITED_VIEWS')\n resolve([...state.visitedViews])\n })\n },\n delAllCachedViews({ commit, state }) {\n return new Promise(resolve => {\n commit('DEL_ALL_CACHED_VIEWS')\n resolve([...state.cachedViews])\n })\n },\n\n updateVisitedView({ commit }, view) {\n commit('UPDATE_VISITED_VIEW', view)\n }\n }\n}\n\nexport default tagsView\n","import request from '@/utils/request'\nimport { baseName } from './utils'\n\nexport async function loginByUsername(username, password, authHost) {\n const appsRequest = await request({\n baseURL: baseName(authHost),\n url: '/api/v1/apps',\n method: 'post',\n data: {\n client_name: `AdminFE_${Math.random()}`,\n redirect_uris: `${window.location.origin}/oauth-callback`,\n scopes: 'read write follow push admin'\n }\n })\n\n const app = appsRequest.data\n\n return request({\n baseURL: baseName(authHost),\n url: '/oauth/token',\n method: 'post',\n data: {\n client_id: app.client_id,\n client_secret: app.client_secret,\n grant_type: 'password',\n username: username,\n password: password\n }\n })\n}\n\nexport function getUserInfo(token, authHost) {\n return request({\n baseURL: baseName(authHost),\n url: '/api/v1/accounts/verify_credentials',\n method: 'get',\n headers: token ? { 'Authorization': `Bearer ${token}` } : {}\n })\n}\n\nconst oauth = { loginByUsername, getUserInfo }\n\nexport default oauth\n","import request from '@/utils/request'\nimport { baseName } from './utils'\n\nexport async function getNodeInfo(authHost) {\n return await request({\n baseURL: baseName(authHost),\n url: `/nodeinfo/2.0.json`,\n method: 'get'\n })\n}\n","import { loginByUsername, getUserInfo } from '@/api/login'\nimport { getNodeInfo } from '@/api/nodeInfo'\nimport { getToken, setToken, removeToken, getAuthHost, setAuthHost, removeAuthHost } from '@/utils/auth'\n\nconst user = {\n state: {\n user: '',\n id: '',\n status: '',\n code: '',\n token: getToken(),\n authHost: getAuthHost(),\n name: '',\n avatar: '',\n introduction: '',\n roles: [],\n setting: {\n articlePlatform: []\n },\n nodeInfo: {}\n },\n\n mutations: {\n SET_CODE: (state, code) => {\n state.code = code\n },\n SET_TOKEN: (state, token) => {\n state.token = token\n },\n SET_INTRODUCTION: (state, introduction) => {\n state.introduction = introduction\n },\n SET_SETTING: (state, setting) => {\n state.setting = setting\n },\n SET_STATUS: (state, status) => {\n state.status = status\n },\n SET_NAME: (state, name) => {\n state.name = name\n },\n SET_AVATAR: (state, avatar) => {\n state.avatar = avatar\n },\n SET_ROLES: (state, roles) => {\n state.roles = roles\n },\n SET_ID: (state, id) => {\n state.id = id\n },\n SET_AUTH_HOST: (state, authHost) => {\n state.authHost = authHost\n },\n SET_NODE_INFO: (state, nodeInfo) => {\n state.nodeInfo = nodeInfo\n }\n },\n\n actions: {\n LoginByUsername({ commit, dispatch }, { username, authHost, password }) {\n return new Promise((resolve, reject) => {\n loginByUsername(username, password, authHost).then(response => {\n const data = response.data\n commit('SET_TOKEN', data.access_token)\n commit('SET_AUTH_HOST', authHost)\n setToken(data.access_token)\n setAuthHost(authHost)\n resolve()\n }).catch(error => {\n dispatch('addErrorLog', { message: error.message })\n reject(error)\n })\n })\n },\n async GetNodeInfo({ commit, dispatch, state }) {\n const nodeInfo = await getNodeInfo(state.authHost)\n\n commit('SET_NODE_INFO', nodeInfo.data)\n dispatch('SetInvitesEnabled', nodeInfo.data.metadata.invitesEnabled)\n },\n GetUserInfo({ commit, state }) {\n return new Promise((resolve, reject) => {\n getUserInfo(state.token, state.authHost).then(response => {\n const data = response.data\n const message = '<span>This user doesn\\`t have admin rights. Try another credentials or see the </span>' +\n '<u><a target=\"_blank\" href=\"https://docs.pleroma.social/backend/administration/CLI_tasks/user/#set-the-value-of-the-given-users-settings\">docs</a></u>' +\n '<span> to find out how to make this user an admin</span>'\n\n if (!data) {\n reject('Verification failed, please login again.')\n }\n\n if (data.pleroma && data.pleroma.is_admin) {\n commit('SET_ROLES', ['admin'])\n } else {\n reject(message)\n }\n\n commit('SET_NAME', data.username)\n commit('SET_ID', data.id)\n commit('SET_AVATAR', data.avatar)\n commit('SET_INTRODUCTION', '')\n resolve(response)\n }).catch(error => {\n reject(error)\n })\n })\n },\n LogOut({ commit }) {\n commit('SET_TOKEN', '')\n commit('SET_ROLES', [])\n removeToken()\n removeAuthHost()\n },\n FedLogOut({ commit }) {\n return new Promise(resolve => {\n commit('SET_TOKEN', '')\n removeToken()\n removeAuthHost()\n resolve()\n })\n },\n async LoginByPleromaFE({ commit, dispatch }, { token }) {\n commit('SET_TOKEN', token)\n setToken(token)\n commit('SET_AUTH_HOST', window.location.host)\n setAuthHost(window.location.host)\n\n dispatch('GetUserInfo')\n }\n }\n}\n\nexport default user\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function activateUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/activate`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function addRight(nicknames, right, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/permission_group/${right}`,\n method: 'post',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function createNewAccount(nickname, email, password, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users',\n method: 'post',\n headers: authHeaders(token),\n data: { users: [{ nickname, email, password }] }\n })\n}\n\nexport async function deactivateUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/deactivate`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function deleteRight(nicknames, right, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/permission_group/${right}`,\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function deleteUsers(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users`,\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function disableMfa(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/disable_mfa`,\n method: 'put',\n headers: authHeaders(token),\n data: { nickname }\n })\n}\n\nexport async function fetchUser(id, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${id}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function fetchUserCredentials(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/credentials`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function updateUserCredentials(nickname, credentials, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/credentials`,\n method: 'patch',\n headers: authHeaders(token),\n data: credentials\n })\n}\n\nexport async function fetchUsers(filters, authHost, token, page = 1) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?page=${page}&filters=${filters}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function getPasswordResetToken(nickname, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${nickname}/password_reset`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function forcePasswordReset(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/force_password_reset`,\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function searchUsers(query, filters, authHost, token, page = 1) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users?query=${query}&page=${page}&filters=${filters}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function tagUser(nicknames, tags, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/tag',\n method: 'put',\n headers: authHeaders(token),\n data: { nicknames, tags }\n })\n}\n\nexport async function untagUser(nicknames, tags, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/tag',\n method: 'delete',\n headers: authHeaders(token),\n data: { nicknames, tags }\n })\n}\n\nexport async function fetchUserStatuses(id, authHost, godmode, token) {\n return await request({\n baseURL: baseName(authHost),\n url: `/api/pleroma/admin/users/${id}/statuses?godmode=${godmode}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function approveUserAccount(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/approve',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function confirmUserEmail(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/confirm_email',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nexport async function resendConfirmationEmail(nicknames, authHost, token) {\n return await request({\n baseURL: baseName(authHost),\n url: '/api/pleroma/admin/users/resend_confirmation_email',\n method: 'patch',\n headers: authHeaders(token),\n data: { nicknames }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import { fetchUser, fetchUserStatuses, fetchUserCredentials, updateUserCredentials } from '@/api/users'\n\nconst userProfile = {\n state: {\n statuses: [],\n statusesLoading: true,\n user: {},\n userCredentials: {},\n userProfileLoading: true\n },\n mutations: {\n SET_STATUSES: (state, statuses) => {\n state.statuses = statuses\n },\n SET_STATUSES_LOADING: (state, status) => {\n state.statusesLoading = status\n },\n SET_USER: (state, user) => {\n state.user = user\n },\n SET_USER_PROFILE_LOADING: (state, status) => {\n state.userProfileLoading = status\n },\n SET_USER_CREDENTIALS: (state, userCredentials) => {\n state.userCredentials = userCredentials\n }\n },\n actions: {\n async FetchUserProfile({ commit, dispatch, getters }, { userId, godmode }) {\n commit('SET_USER_PROFILE_LOADING', true)\n\n const userResponse = await fetchUser(userId, getters.authHost, getters.token)\n commit('SET_USER', userResponse.data)\n commit('SET_USER_PROFILE_LOADING', false)\n\n dispatch('FetchUserStatuses', { userId, godmode })\n },\n FetchUserStatuses({ commit, dispatch, getters }, { userId, godmode }) {\n commit('SET_STATUSES_LOADING', true)\n\n fetchUserStatuses(userId, getters.authHost, godmode, getters.token)\n .then(statuses => dispatch('SetStatuses', statuses.data))\n\n commit('SET_STATUSES_LOADING', false)\n },\n async FetchUserCredentials({ commit, getters }, { nickname }) {\n const userResponse = await fetchUserCredentials(nickname, getters.authHost, getters.token)\n commit('SET_USER_CREDENTIALS', userResponse.data)\n },\n SetStatuses({ commit }, statuses) {\n commit('SET_STATUSES', statuses)\n },\n async UpdateUserCredentials({ dispatch, getters }, { nickname, credentials }) {\n await updateUserCredentials(nickname, credentials, getters.authHost, getters.token)\n dispatch('FetchUserCredentials', { nickname })\n }\n }\n}\n\nexport default userProfile\n","import { Message } from 'element-ui'\nimport i18n from '@/lang'\nimport {\n activateUsers,\n addRight,\n createNewAccount,\n deactivateUsers,\n deleteRight,\n deleteUsers,\n disableMfa,\n fetchUsers,\n getPasswordResetToken,\n searchUsers,\n tagUser,\n untagUser,\n forcePasswordReset,\n approveUserAccount,\n confirmUserEmail,\n resendConfirmationEmail,\n updateUserCredentials\n} from '@/api/users'\n\nconst users = {\n state: {\n fetchedUsers: [],\n loading: true,\n searchQuery: '',\n totalUsersCount: 0,\n currentPage: 1,\n pageSize: 50,\n filters: {\n local: false,\n external: false,\n active: false,\n need_approval: false,\n deactivated: false\n },\n passwordResetToken: {\n token: '',\n link: ''\n }\n },\n mutations: {\n SET_USERS: (state, users) => {\n state.fetchedUsers = users\n },\n SET_LOADING: (state, status) => {\n state.loading = status\n },\n SWAP_USERS: (state, users) => {\n const usersWithoutSwapped = users.reduce((acc, user) => {\n return acc.filter(u => u.id !== user.id)\n }, state.fetchedUsers)\n\n if (state.fetchedUsers.length === 0) {\n return\n }\n\n const updatedUsers = [...usersWithoutSwapped, ...users]\n state.fetchedUsers = updatedUsers\n .filter(user => user.nickname && user.id)\n .sort((a, b) => a.nickname.localeCompare(b.nickname))\n .concat(updatedUsers.filter(user => !user.nickname || !user.id))\n },\n SET_COUNT: (state, count) => {\n state.totalUsersCount = count\n },\n SET_PAGE: (state, page) => {\n state.currentPage = page\n },\n SET_PAGE_SIZE: (state, pageSize) => {\n state.pageSize = pageSize\n },\n SET_PASSWORD_RESET_TOKEN: (state, { token, link }) => {\n state.passwordResetToken.token = token\n state.passwordResetToken.link = link\n },\n SET_SEARCH_QUERY: (state, query) => {\n state.searchQuery = query\n },\n SET_USERS_FILTERS: (state, filters) => {\n state.filters = filters\n }\n },\n actions: {\n async ActivateUsers({ dispatch, getters }, { users, _userId }) {\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await activateUsers(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId })\n },\n async ApplyChanges({ commit, dispatch, state }, { updatedUsers, callApiFn, userId, statusId }) {\n commit('SWAP_USERS', updatedUsers)\n\n try {\n await callApiFn()\n } catch (_e) {\n return\n } finally {\n dispatch('SearchUsers', { query: state.searchQuery, page: state.currentPage })\n }\n if (statusId) {\n dispatch('FetchStatusAfterUserModeration', statusId)\n } else if (userId) {\n dispatch('FetchUserProfile', { userId, godmode: false })\n }\n dispatch('SuccessMessage')\n },\n async AddRight({ dispatch, getters }, { users, right, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return user.local ? { ...user, roles: { ...user.roles, [right]: true }} : user\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await addRight(nicknames, right, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async AddTag({ dispatch, getters }, { users, tag, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, tags: [...user.tags, tag] }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await tagUser(nicknames, [tag], getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async ApproveUsersAccount({ dispatch, getters }, { users, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, approval_pending: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await approveUserAccount(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n ClearUsersState({ commit }) {\n commit('SET_SEARCH_QUERY', '')\n commit('SET_USERS_FILTERS', { local: false, external: false, active: false, need_approval: false, deactivated: false })\n },\n async ClearFilters({ commit, dispatch, state }) {\n commit('CLEAR_USERS_FILTERS')\n dispatch('SearchUsers', { query: state.searchQuery, page: 1 })\n },\n async ConfirmUsersEmail({ dispatch, getters }, { users, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, confirmation_pending: false }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await confirmUserEmail(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async CreateNewAccount({ dispatch, getters, state }, { nickname, email, password }) {\n try {\n await createNewAccount(nickname, email, password, getters.authHost, getters.token)\n } catch (_e) {\n return\n } finally {\n dispatch('SearchUsers', { query: state.searchQuery, page: state.currentPage })\n }\n dispatch('SuccessMessage')\n },\n async DeactivateUsers({ dispatch, getters }, { users, _userId }) {\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: true }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await deactivateUsers(nicknames, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId })\n },\n async DisableMfa({ dispatch, getters }, nickname) {\n try {\n await disableMfa(nickname, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async DeleteRight({ dispatch, getters }, { users, right, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return user.local ? { ...user, roles: { ...user.roles, [right]: false }} : user\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await deleteRight(nicknames, right, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async DeleteUsers({ commit, dispatch, getters, state }, { users, _userId }) {\n const usersNicknames = users.map(user => user.nickname)\n try {\n await deleteUsers(usersNicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n const updatedUsers = users.map(user => {\n return { ...user, deactivated: true }\n })\n commit('SWAP_USERS', updatedUsers)\n\n if (_userId) {\n dispatch('FetchUserProfile', { userId: _userId, godmode: false })\n }\n dispatch('SuccessMessage')\n },\n async FetchUsers({ commit, dispatch, getters, state }, { page }) {\n commit('SET_LOADING', true)\n const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join()\n const response = await fetchUsers(filters, getters.authHost, getters.token, page)\n await dispatch('GetNodeInfo')\n loadUsers(commit, page, response.data)\n },\n async GetPasswordResetToken({ commit, getters }, nickname) {\n const { data } = await getPasswordResetToken(nickname, getters.authHost, getters.token)\n commit('SET_PASSWORD_RESET_TOKEN', data)\n },\n RemovePasswordToken({ commit }) {\n commit('SET_PASSWORD_RESET_TOKEN', { link: '', token: '' })\n },\n async RemoveTag({ dispatch, getters }, { users, tag, _userId, _statusId }) {\n const updatedUsers = users.map(user => {\n return { ...user, tags: user.tags.filter(userTag => userTag !== tag) }\n })\n const nicknames = users.map(user => user.nickname)\n const callApiFn = async() => await untagUser(nicknames, [tag], getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n },\n async RequirePasswordReset({ dispatch, getters }, users) {\n const nicknames = users.map(user => user.nickname)\n try {\n await forcePasswordReset(nicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async ResendConfirmationEmail({ dispatch, getters }, users) {\n const usersNicknames = users.map(user => user.nickname)\n try {\n await resendConfirmationEmail(usersNicknames, getters.authHost, getters.token)\n } catch (_e) {\n return\n }\n dispatch('SuccessMessage')\n },\n async SearchUsers({ commit, dispatch, state, getters }, { query, page }) {\n if (query.length === 0) {\n commit('SET_SEARCH_QUERY', query)\n dispatch('FetchUsers', { page })\n } else {\n commit('SET_LOADING', true)\n commit('SET_SEARCH_QUERY', query)\n\n const filters = Object.keys(state.filters).filter(filter => state.filters[filter]).join()\n const response = await searchUsers(query, filters, getters.authHost, getters.token, page)\n\n loadUsers(commit, page, response.data)\n }\n },\n SuccessMessage() {\n Message.success({\n message: i18n.t('users.completed'),\n duration: 5 * 1000\n })\n },\n async ToggleUsersFilter({ commit, dispatch, state }, filters) {\n const defaultFilters = {\n local: false,\n external: false,\n active: false,\n need_approval: false,\n deactivated: false\n }\n const currentFilters = { ...defaultFilters, ...filters }\n commit('SET_USERS_FILTERS', currentFilters)\n dispatch('SearchUsers', { query: state.searchQuery, page: 1 })\n },\n async UpdateActorType({ dispatch, getters }, { user, type, _userId, _statusId }) {\n const updatedUsers = [{ ...user, actor_type: type }]\n const credentials = { actor_type: type }\n\n const callApiFn = async() => await updateUserCredentials(user.nickname, credentials, getters.authHost, getters.token)\n\n dispatch('ApplyChanges', { updatedUsers, callApiFn, userId: _userId, statusId: _statusId })\n }\n }\n}\n\nconst loadUsers = (commit, page, { users, count, page_size }) => {\n commit('SET_USERS', users)\n commit('SET_COUNT', count)\n commit('SET_PAGE', page)\n commit('SET_PAGE_SIZE', page_size)\n commit('SET_LOADING', false)\n}\n\nexport default users\n","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport app from './modules/app'\nimport emojiPacks from './modules/emojiPacks'\nimport errorLog from './modules/errorLog'\nimport getters from './getters'\nimport invites from './modules/invites'\nimport mediaProxyCache from './modules/mediaProxyCache'\nimport moderationLog from './modules/moderationLog'\nimport peers from './modules/peers'\nimport permission from './modules/permission'\nimport relays from './modules/relays'\nimport reports from './modules/reports'\nimport settings from './modules/settings'\nimport status from './modules/status'\nimport tagsView from './modules/tagsView'\nimport user from './modules/user'\nimport userProfile from './modules/userProfile'\nimport users from './modules/users'\n\nVue.use(Vuex)\n\nconst store = new Vuex.Store({\n modules: {\n app,\n errorLog,\n emojiPacks,\n invites,\n mediaProxyCache,\n moderationLog,\n peers,\n permission,\n relays,\n reports,\n settings,\n status,\n tagsView,\n user,\n userProfile,\n users\n },\n getters\n})\n\nexport default store\n","import Vue from 'vue'\nimport SvgIcon from '@/components/element-ui/SvgIcon'// svg组件\n\n// register globally\nVue.component('svg-icon', SvgIcon)\n\nconst req = require.context('./svg', false, /\\.svg$/)\nconst requireAll = requireContext => requireContext.keys().map(requireContext)\nrequireAll(req)\n","import Vue from 'vue'\nimport store from './store'\n\n// you can set only in production env show the error-log\nif (process.env.NODE_ENV === 'production') {\n Vue.config.errorHandler = function(err, vm, info, a) {\n // Don't ask me why I use Vue.nextTick, it just a hack.\n // detail see https://forum.vuejs.org/t/dispatch-in-vue-config-errorhandler-has-some-problem/23500\n Vue.nextTick(() => {\n store.dispatch('addErrorLog', {\n err,\n vm,\n info,\n url: window.location.href\n })\n console.error(err, info)\n })\n }\n}\n","import router from './router'\nimport store from './store'\nimport { Message } from 'element-ui'\nimport NProgress from 'nprogress' // progress bar\nimport 'nprogress/nprogress.css'// progress bar style\nimport { getToken } from '@/utils/auth' // getToken from cookie\n\nNProgress.configure({ showSpinner: false })// NProgress Configuration\n\n// permission judge function\nfunction hasPermission(roles, permissionRoles) {\n if (roles.indexOf('admin') >= 0) return true // admin permission passed directly\n if (!permissionRoles) return true\n return roles.some(role => permissionRoles.indexOf(role) >= 0)\n}\n\nconst whiteList = ['/login', '/auth-redirect', '/login-pleroma']// no redirect whitelist\n\nexport const beforeEachRoute = (to, from, next) => {\n NProgress.start() // start progress bar\n if (getToken()) { // determine if there has token\n /* has token*/\n if (to.path === '/login') {\n next({ path: '/' })\n NProgress.done() // if current page is dashboard will not trigger\tafterEach hook, so manually handle it\n } else {\n if (store.getters.roles.length === 0) {\n store.dispatch('GetUserInfo').then(res => {\n const roles = res.data.pleroma.is_admin ? ['admin'] : []\n store.dispatch('GenerateRoutes', { roles }).then(() => {\n router.addRoutes(store.getters.addRouters)\n next({ ...to, replace: true })\n })\n }).catch((err) => {\n store.dispatch('FedLogOut').then(() => {\n Message({\n dangerouslyUseHTMLString: true,\n message: err,\n type: 'error',\n duration: 10 * 1000\n })\n next({ path: '/' })\n })\n })\n } else {\n if (hasPermission(store.getters.roles, to.meta.roles)) {\n next()\n } else {\n next({ path: '/401', replace: true, query: { noGoBack: true }})\n }\n }\n }\n } else {\n /* has no token*/\n if (whiteList.indexOf(to.path) !== -1) {\n next()\n } else {\n next(`/login?redirect=${to.path}`)\n NProgress.done() // if current page is login will not trigger afterEach hook, so manually handle it\n }\n }\n}\nrouter.beforeEach(beforeEachRoute)\n\nrouter.afterEach(() => {\n NProgress.done() // finish progress bar\n})\n","// set function parseTime,formatTime to filter\nexport { parseTime, formatTime } from '@/utils'\n\nfunction pluralize(time, label) {\n if (time === 1) {\n return time + label\n }\n return time + label + 's'\n}\n\nexport function timeAgo(time) {\n const between = Date.now() / 1000 - Number(time)\n if (between < 3600) {\n return pluralize(~~(between / 60), ' minute')\n } else if (between < 86400) {\n return pluralize(~~(between / 3600), ' hour')\n } else {\n return pluralize(~~(between / 86400), ' day')\n }\n}\n\n/* 数字 格式化*/\nexport function numberFormatter(num, digits) {\n const si = [\n { value: 1E18, symbol: 'E' },\n { value: 1E15, symbol: 'P' },\n { value: 1E12, symbol: 'T' },\n { value: 1E9, symbol: 'G' },\n { value: 1E6, symbol: 'M' },\n { value: 1E3, symbol: 'k' }\n ]\n for (let i = 0; i < si.length; i++) {\n if (num >= si[i].value) {\n return (num / si[i].value + 0.1).toFixed(digits).replace(/\\.0+$|(\\.[0-9]*[1-9])0+$/, '$1') + si[i].symbol\n }\n }\n return num.toString()\n}\n\nexport function toThousandFilter(num) {\n return (+num || 0).toString().replace(/^-?\\d+/g, m => m.replace(/(?=(?!\\b)(\\d{3})+$)/g, ','))\n}\n","import Vue from 'vue'\n\nimport Cookies from 'js-cookie'\n\nimport 'normalize.css/normalize.css' // A modern alternative to CSS resets\n\nimport Element from 'element-ui'\nimport 'element-ui/lib/theme-chalk/index.css'\n\nimport '@/styles/index.scss' // global css\n\nimport App from './App'\nimport store from './store'\nimport router from './router'\n\nimport i18n from './lang' // Internationalization\nimport './icons' // icon\nimport './errorLog' // error log\nimport './permission' // permission control\n\nimport * as filters from './filters' // global filters\n\nVue.use(Element, {\n size: Cookies.get('size') || 'medium', // set element-ui default size\n i18n: (key, value) => i18n.t(key, value)\n})\n\n// register global utility filters.\nObject.keys(filters).forEach(key => {\n Vue.filter(key, filters[key])\n})\n\nVue.config.productionTip = false\n\nnew Vue({\n el: '#app',\n router,\n store,\n i18n,\n render: h => h(App)\n})\n","import Cookies from 'js-cookie'\n\nconst TokenKey = 'Admin-Token'\nconst AuthHostKey = 'Auth-Host'\n\nexport function getToken() {\n return Cookies.get(TokenKey)\n}\n\nexport function setToken(token) {\n return Cookies.set(TokenKey, token)\n}\n\nexport function removeToken() {\n return Cookies.remove(TokenKey)\n}\n\nexport function getAuthHost() {\n return Cookies.get(AuthHostKey)\n}\n\nexport function setAuthHost(token) {\n return Cookies.set(AuthHostKey, token)\n}\n\nexport function removeAuthHost() {\n return Cookies.remove(AuthHostKey)\n}\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TagsView.vue?vue&type=style&index=1&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppMain.vue?vue&type=style&index=0&id=f852c4f2&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-excel\",\n \"use\": \"icon-excel-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-excel\\\"><path d=\\\"M78.208 16.576v8.384h38.72v5.376h-38.72v8.704h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.576h38.72v5.376h-38.72v8.512h38.72v5.376h-38.72v11.136H128v-94.72H78.208zM0 114.368L72.128 128V0L0 13.632v100.736z\\\" /><path d=\\\"M28.672 82.56h-11.2l14.784-23.488-14.08-22.592h11.52l8.192 14.976 8.448-14.976h11.136l-14.08 22.208L58.368 82.56H46.656l-8.768-15.68z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-guide\",\n \"use\": \"icon-guide-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-guide\\\"><path d=\\\"M1.482 70.131l36.204 16.18 69.932-65.485-61.38 70.594 46.435 18.735c1.119.425 2.397-.17 2.797-1.363v-.085L127.998.047 1.322 65.874c-1.12.597-1.519 1.959-1.04 3.151.32.511.72.937 1.2 1.107zm44.676 57.821L64.22 107.26l-18.062-7.834v28.527z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-star\",\n \"use\": \"icon-star-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-star\\\"><path d=\\\"M70.66 4.328l14.01 29.693c1.088 2.29 3.177 3.882 5.603 4.25l31.347 4.76c6.087.926 8.528 8.756 4.117 13.247L103.05 79.395c-1.75 1.78-2.544 4.352-2.132 6.867l5.352 32.641c1.043 6.337-5.33 11.182-10.778 8.19l-28.039-15.409a7.13 7.13 0 0 0-6.91 0l-28.039 15.41c-5.448 2.99-11.821-1.854-10.777-8.19l5.352-32.642c.415-2.515-.387-5.088-2.136-6.867L2.264 56.278C-2.146 51.787.286 43.957 6.38 43.031l31.343-4.76c2.419-.368 4.51-1.96 5.595-4.25L57.334 4.328c2.728-5.77 10.605-5.77 13.325 0z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Navbar.vue?vue&type=style&index=0&id=28de7ff2&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-wechat\",\n \"use\": \"icon-wechat-usage\",\n \"viewBox\": \"0 0 128 110\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 110\\\" id=\\\"icon-wechat\\\"><path d=\\\"M86.635 33.334c1.467 0 2.917.113 4.358.283C87.078 14.392 67.58.111 45.321.111 20.44.111.055 17.987.055 40.687c0 13.104 6.781 23.863 18.115 32.209l-4.527 14.352 15.82-8.364c5.666 1.182 10.207 2.395 15.858 2.395 1.42 0 2.829-.073 4.227-.189-.886-3.19-1.398-6.53-1.398-9.996 0-20.845 16.98-37.76 38.485-37.76zm-24.34-12.936c3.407 0 5.665 2.363 5.665 5.954 0 3.576-2.258 5.97-5.666 5.97-3.392 0-6.795-2.395-6.795-5.97 0-3.591 3.403-5.954 6.795-5.954zM30.616 32.323c-3.393 0-6.818-2.395-6.818-5.971 0-3.591 3.425-5.954 6.818-5.954 3.392 0 5.65 2.363 5.65 5.954 0 3.576-2.258 5.97-5.65 5.97z\\\" /><path d=\\\"M127.945 70.52c0-19.075-18.108-34.623-38.448-34.623-21.537 0-38.5 15.548-38.5 34.623 0 19.108 16.963 34.622 38.5 34.622 4.508 0 9.058-1.2 13.584-2.395l12.414 7.167-3.404-11.923c9.087-7.184 15.854-16.712 15.854-27.471zm-50.928-5.97c-2.254 0-4.53-2.362-4.53-4.773 0-2.378 2.276-4.771 4.53-4.771 3.422 0 5.665 2.393 5.665 4.771 0 2.41-2.243 4.773-5.665 4.773zm24.897 0c-2.24 0-4.498-2.362-4.498-4.773 0-2.378 2.258-4.771 4.498-4.771 3.392 0 5.665 2.393 5.665 4.771 0 2.41-2.273 4.773-5.665 4.773z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import _ from 'lodash'\n\nexport const getBooleanValue = value => {\n if (value === 'true') {\n return true\n } else if (value === 'false') {\n return false\n }\n return value\n}\n\nconst getCurrentValue = (type, value, path) => {\n if (type === 'state') {\n return _.get(value, path)\n } else {\n const [firstSettingName, ...restKeys] = path\n const firstSegment = value[firstSettingName]\n if (restKeys.length === 0 || !firstSegment) {\n return firstSegment || false\n } else {\n const secondSegment = (value, keys) => {\n const [element, ...rest] = keys\n return keys.length === 0 ? value : secondSegment(value[1][element], rest)\n }\n return secondSegment(firstSegment, restKeys)\n }\n }\n}\n\nconst getValueWithoutKey = (key, [type, value]) => {\n if (prependWithСolon(type, value)) {\n return `:${value}`\n } else if (key === ':backends') {\n const index = value.findIndex(el => el === ':ex_syslogger')\n const updatedArray = value.slice()\n if (index !== -1) {\n updatedArray[index] = { 'tuple': ['ExSyslogger', ':ex_syslogger'] }\n }\n return updatedArray\n } else if (key === ':types') {\n return Object.keys(value).reduce((acc, key) => { return { ...acc, [key]: value[key][1] } }, {})\n }\n return value\n}\n\nexport const parseNonTuples = (key, value) => {\n if (key === ':backends') {\n const index = value.findIndex(el => typeof el === 'object' && el.tuple.includes(':ex_syslogger'))\n const updated = value.map((el, i) => i === index ? ':ex_syslogger' : el)\n return updated\n }\n if (key === ':args') {\n return typeof value === 'string' ? [value] : value\n }\n return value\n}\n// REFACTOR\nexport const parseTuples = (tuples, key) => {\n return tuples.reduce((accum, item) => {\n if (key === ':rate_limit') {\n accum[item.tuple[0]] = Array.isArray(item.tuple[1])\n ? item.tuple[1].map(el => el.tuple)\n : item.tuple[1].tuple\n } else if (item.tuple[0] === ':mascots') {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, mascot) => {\n return [...acc, { [mascot.tuple[0]]: { ...mascot.tuple[1], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else if (Array.isArray(item.tuple[1]) &&\n (item.tuple[0] === ':groups' ||\n item.tuple[0] === ':replace' ||\n item.tuple[0] === ':retries' ||\n (item.tuple[0] === ':headers' && key === 'Pleroma.Web.MediaProxy.Invalidation.Http') ||\n item.tuple[0] === ':crontab')) {\n if (item.tuple[0] === ':crontab') {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, group) => {\n return [...acc, { [group.tuple[1]]: { value: group.tuple[0], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else {\n accum[item.tuple[0]] = item.tuple[1].reduce((acc, group) => {\n return [...acc, { [group.tuple[0]]: { value: group.tuple[1], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n }\n } else if (item.tuple[0] === ':icons') {\n accum[item.tuple[0]] = item.tuple[1].map(icon => {\n return Object.keys(icon).map(name => {\n return { key: name, value: icon[name], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }\n })\n }, [])\n } else if (item.tuple[0] === ':prune') {\n accum[item.tuple[0]] = item.tuple[1] === ':disabled' ? [item.tuple[1]] : item.tuple[1].tuple\n } else if (item.tuple[0] === ':proxy_url' || item.tuple[0] === ':sender') {\n accum[item.tuple[0]] = parseStringOrTupleValue(item.tuple[0], item.tuple[1])\n } else if (item.tuple[0] === ':args') {\n accum[item.tuple[0]] = parseNonTuples(item.tuple[0], item.tuple[1])\n } else if (Array.isArray(item.tuple[1]) &&\n (typeof item.tuple[1][0] === 'object' && !Array.isArray(item.tuple[1][0])) && item.tuple[1][0]['tuple']) {\n accum[item.tuple[0]] = parseTuples(item.tuple[1], item.tuple[0])\n } else if (Array.isArray(item.tuple[1])) {\n accum[item.tuple[0]] = item.tuple[1]\n } else if (item.tuple[0] === ':ip') {\n accum[item.tuple[0]] = item.tuple[1].tuple.join('.')\n } else if (item.tuple[1] && typeof item.tuple[1] === 'object') {\n if (item.tuple[0] === ':params' || item.tuple[0] === ':match_actor') {\n accum[item.tuple[0]] = Object.keys(item.tuple[1]).reduce((acc, key) => {\n return [...acc, { [key]: { value: item.tuple[1][key], id: `f${(~~(Math.random() * 1e8)).toString(16)}` }}]\n }, [])\n } else {\n accum[item.tuple[0]] = parseObject(item.tuple[1])\n }\n } else {\n accum[item.tuple[0]] = item.tuple[1]\n }\n return accum\n }, {})\n}\n\nconst parseObject = object => {\n return Object.keys(object).reduce((acc, item) => {\n acc[item] = object[item]\n return acc\n }, {})\n}\n\nconst parseStringOrTupleValue = (key, value) => {\n if (key === ':proxy_url') {\n if (value && !Array.isArray(value) &&\n typeof value === 'object' &&\n value.tuple.length === 3 &&\n value.tuple[0] === ':socks5') {\n const [, host, port] = value.tuple\n return { socks5: true, host, port }\n } else if (typeof value === 'string') {\n const [host, port] = value.split(':')\n return { socks5: false, host, port }\n }\n return { socks5: false, host: null, port: null }\n } else if (key === ':sender') {\n if (typeof value === 'string') {\n return { email: value }\n } else if (value &&\n typeof value === 'object' &&\n value.tuple.length === 2) {\n const [nickname, email] = value.tuple\n return { nickname, email }\n }\n }\n}\n\nconst prependWithСolon = (type, value) => {\n return (type === 'atom' && value.length > 0) ||\n (Array.isArray(type) && type.includes('boolean') && type.includes('atom') && typeof value === 'string')\n}\n\nexport const processNested = (valueForState, valueForUpdatedSettings, group, parentKey, parents, settings, updatedSettings) => {\n const [{ key, type }, ...otherParents] = parents\n const path = [group, parentKey, ...parents.reverse().map(parent => parent.key).slice(0, -1)]\n\n let updatedValueForState = valueExists('state', settings, path)\n ? { ...getCurrentValue('state', settings[group][parentKey], parents.map(el => el.key).slice(0, -1)),\n ...{ [key]: valueForState }}\n : { [key]: valueForState }\n let updatedValueForUpdatedSettings = valueExists('updatedSettings', updatedSettings, path)\n ? { ...getCurrentValue('updatedSettings', updatedSettings[group][parentKey], parents.map(el => el.key).slice(0, -1))[1],\n ...{ [key]: [type, valueForUpdatedSettings] }}\n : { [key]: [type, valueForUpdatedSettings] }\n\n if (group === ':mime' && parents[0].key === ':types') {\n updatedValueForState = settings[group][parents[0].key]\n ? { ...settings[group][parents[0].key].value, ...updatedValueForState }\n : updatedValueForState\n updatedValueForUpdatedSettings = settings[group][parents[0].key]\n ? { ...Object.keys(settings[group][parents[0].key].value)\n .reduce((acc, el) => {\n return { ...acc, [el]: [type, settings[group][parents[0].key].value[el]] }\n }, {}),\n ...updatedValueForUpdatedSettings }\n : updatedValueForUpdatedSettings\n }\n\n return otherParents.length === 1\n ? { valueForState: updatedValueForState, valueForUpdatedSettings: updatedValueForUpdatedSettings, setting: otherParents[0] }\n : processNested(updatedValueForState, updatedValueForUpdatedSettings, group, parentKey, otherParents, settings, updatedSettings)\n}\n\nconst valueExists = (type, value, path) => {\n if (type === 'state') {\n return _.get(value, path)\n } else {\n const [group, key, firstSettingName, ...restKeys] = path\n const firstSegment = _.get(value, [group, key, firstSettingName])\n if (restKeys.length === 0 || !firstSegment) {\n return firstSegment || false\n } else {\n const secondSegment = (value, keys) => {\n if (keys.length === 0) {\n return true\n }\n const [element, ...rest] = keys\n return value[1][element] ? secondSegment(value[1][element], rest) : false\n }\n return secondSegment(firstSegment, restKeys)\n }\n }\n}\n\nexport const valueHasTuples = (key, value) => {\n const valueIsArrayOfNonObjects = Array.isArray(value) && value.length > 0 && value.every(el => typeof el !== 'object')\n return key === ':meta' ||\n key === ':types' ||\n key === ':backends' ||\n key === ':compiled_template_engines' ||\n key === ':compiled_format_encoders' ||\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean' ||\n value === null ||\n valueIsArrayOfNonObjects\n}\n\nexport const wrapUpdatedSettings = (group, settings, currentState) => {\n return Object.keys(settings).map((key) => {\n return settings[key]._value\n ? { group, key, value: getValueWithoutKey(key, settings[key]._value) }\n : { group, key, value: wrapValues(settings[key], currentState[group][key]) }\n })\n}\n\nconst wrapValues = (settings, currentState) => {\n return Object.keys(settings).map(setting => {\n const [type, value] = settings[setting]\n if (type === 'keyword' ||\n (Array.isArray(type) && (\n type.includes('keyword') ||\n (type.includes('tuple') && type.includes('list'))\n ))\n ) {\n return { 'tuple': [setting, wrapValues(value, currentState)] }\n } else if (prependWithСolon(type, value)) {\n return { 'tuple': [setting, `:${value}`] }\n } else if (type.includes('tuple') && (type.includes('string') || type.includes('atom'))) {\n return typeof value === 'string'\n ? { 'tuple': [setting, value] }\n : { 'tuple': [setting, { 'tuple': value }] }\n } else if (type === 'reversed_tuple') {\n return { 'tuple': [value, setting] }\n } else if (type === 'map') {\n const mapValue = Object.keys(value).reduce((acc, key) => {\n acc[key] = value[key][1]\n return acc\n }, {})\n return { 'tuple': [setting, { ...currentState[setting], ...mapValue }] }\n } else if (type.includes('map') && !type.includes('list')) {\n const mapValue = Object.keys(value).reduce((acc, key) => {\n acc[key] = value[key][1]\n return acc\n }, {})\n return { 'tuple': [setting, mapValue] }\n } else if (setting === ':ip') {\n const ip = value.split('.').map(s => parseInt(s, 10))\n return { 'tuple': [setting, { 'tuple': ip }] }\n } else {\n return { 'tuple': [setting, value] }\n }\n })\n}\n\nexport const formSearchObject = description => {\n const parseNestedSettings = (description, label, key) => description.reduce((acc, setting) => {\n const searchArray = _.compact([setting.key, setting.label, setting.description]).map(el => el.toLowerCase())\n const resultObject = { label: setting.label, key: setting.key || setting.group, groupKey: key, groupLabel: label, search: searchArray }\n if (setting.children) {\n const updatedAcc = [...acc, resultObject]\n return [...updatedAcc, ...parseNestedSettings(setting.children, label, key)]\n }\n return [...acc, resultObject]\n }, [])\n\n return description.reduce((acc, setting) => {\n const searchArray = _.compact([setting.key, setting.label, setting.description]).map(el => el.toLowerCase())\n const resultObject = { label: setting.label, key: setting.key || setting.group, groupKey: setting.key || setting.group, groupLabel: setting.label, search: searchArray }\n if (setting.children) {\n const updatedAcc = !setting.key && setting.group === ':pleroma' ? acc : [...acc, resultObject]\n return [...updatedAcc, ...parseNestedSettings(setting.children, setting.label, setting.key || setting.group)]\n }\n return !setting.key && setting.group === ':pleroma' ? acc : [...acc, resultObject]\n }, [])\n}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-size\",\n \"use\": \"icon-size-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-size\\\"><path d=\\\"M0 54.857h54.796v18.286H36.531V128H18.265V73.143H0V54.857zm127.857-36.571H91.935V128H72.456V18.286H36.534V0h91.326l-.003 18.286z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-zip\",\n \"use\": \"icon-zip-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-zip\\\"><path d=\\\"M78.527 116.793c.178.008.348.024.527.024h40.233c4.711-.005 8.53-3.677 8.534-8.21V18.895c-.004-4.532-3.823-8.204-8.534-8.209H79.054c-.179 0-.353.016-.527.024V0L0 10.082v107.406l78.527 10.342v-11.037zm0-101.362c.174-.024.348-.052.527-.052h40.233c2.018 0 3.659 1.578 3.659 3.52v89.713c-.003 1.942-1.64 3.517-3.659 3.519H79.054c-.179 0-.353-.028-.527-.052V15.431zM30.262 75.757l-18.721-.46V72.37l11.3-16.673v-.148l-10.266.164v-4.51l17.504-.44v3.264L18.696 70.76v.144l11.566.176v4.678zm9.419.231l-5.823-.144V50.671l5.823-.144v25.461zm22.255-11.632c-2.168 1.922-5.353 2.76-9.02 2.736-.702.004-1.402-.04-2.097-.131v9.303l-5.997-.148V50.743c1.852-.352 4.473-.647 8.218-.743 3.838-.096 6.608.539 8.48 1.913 1.807 1.306 3.032 3.5 3.032 6.112s-.926 4.833-2.612 6.331h-.004zM53.36 54.45c-.856-.01-1.71.083-2.541.275v7.682c.523.116 1.167.152 2.06.152 3.301-.004 5.36-1.614 5.36-4.314 0-2.425-1.772-3.843-4.875-3.791l-.004-.004zm39.847-37.066h9.564v3.795h-9.564v-3.795zm-9.568 5.68h9.564v3.8h-9.564v-3.8zm9.568 6.216h9.564v3.799h-9.564V29.28zm0 12h9.564v3.794h-9.564V41.28zm-9.568-6.096h9.564v3.795h-9.564v-3.795zm9.472 47.064c2.512 0 4.921-.96 6.697-2.67 1.776-1.708 2.773-4.026 2.772-6.442l-1.748-15.263c0-5.033-2.492-9.112-7.725-9.112-5.232 0-7.72 4.079-7.72 9.112l-1.752 15.263c-.001 2.417.996 4.735 2.773 6.444 1.777 1.71 4.187 2.669 6.7 2.668h.003zm-3.135-16.75h6.27v12.743h-6.27V65.5z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tab\",\n \"use\": \"icon-tab-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-tab\\\"><path d=\\\"M78.921.052H49.08c-1.865 0-3.198 1.599-3.198 3.464v6.661c0 1.865 1.6 3.464 3.198 3.464h29.84c1.865 0 3.198-1.599 3.198-3.464V3.516C82.385 1.65 80.786.052 78.92.052zm45.563 0H94.642c-1.865 0-3.464 1.599-3.464 3.464v6.661c0 1.865 1.599 3.464 3.464 3.464h29.842c1.865-.266 3.464-1.599 3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464zm0 22.382H40.02c-1.866 0-3.464-1.599-3.464-3.464V3.516c0-1.865-1.599-3.464-3.464-3.464H3.516C1.65.052.052 1.651.052 3.516V124.75c0 1.598 1.599 3.197 3.464 3.197h120.968c1.865 0 3.464-1.599 3.464-3.464V25.898c0-1.865-1.599-3.464-3.464-3.464z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-search\",\n \"use\": \"icon-search-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-search\\\"><path d=\\\"M124.884 109.812L94.256 79.166c-.357-.357-.757-.629-1.129-.914a50.366 50.366 0 0 0 8.186-27.59C101.327 22.689 78.656 0 50.67 0 22.685 0 0 22.688 0 50.663c0 27.989 22.685 50.663 50.656 50.663 10.186 0 19.643-3.03 27.6-8.201.286.385.557.771.9 1.114l30.628 30.632a10.633 10.633 0 0 0 7.543 3.129c2.728 0 5.457-1.043 7.543-3.115 4.171-4.157 4.171-10.915.014-15.073M50.671 85.338C31.557 85.338 16 69.78 16 50.663c0-19.102 15.557-34.661 34.67-34.661 19.115 0 34.657 15.559 34.657 34.675 0 19.102-15.557 34.661-34.656 34.661\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-tree\",\n \"use\": \"icon-tree-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-tree\\\"><path d=\\\"M126.713 90.023c.858.985 1.287 2.134 1.287 3.447v29.553c0 1.423-.429 2.6-1.287 3.53-.858.93-1.907 1.395-3.146 1.395H97.824c-1.145 0-2.146-.465-3.004-1.395-.858-.93-1.287-2.107-1.287-3.53V93.47c0-.875.19-1.696.572-2.462.382-.766.906-1.368 1.573-1.806a3.84 3.84 0 0 1 2.146-.657h9.725V69.007a3.84 3.84 0 0 0-.43-1.806 3.569 3.569 0 0 0-1.143-1.313 2.714 2.714 0 0 0-1.573-.492h-36.47v23.149h9.725c1.144 0 2.145.492 3.004 1.478.858.985 1.287 2.134 1.287 3.447v29.553c0 .876-.191 1.696-.573 2.463-.38.766-.905 1.368-1.573 1.806a3.84 3.84 0 0 1-2.145.656H51.915a3.84 3.84 0 0 1-2.145-.656c-.668-.438-1.216-1.04-1.645-1.806a4.96 4.96 0 0 1-.644-2.463V93.47c0-1.313.43-2.462 1.288-3.447.858-.986 1.907-1.478 3.146-1.478h9.582v-23.15h-37.9c-.953 0-1.74.356-2.359 1.068-.62.711-.93 1.56-.93 2.544v19.538h9.726c1.239 0 2.264.492 3.074 1.478.81.985 1.216 2.134 1.216 3.447v29.553c0 1.423-.405 2.6-1.216 3.53-.81.93-1.835 1.395-3.074 1.395H4.29c-.476 0-.93-.082-1.358-.246a4.1 4.1 0 0 1-1.144-.657 4.658 4.658 0 0 1-.93-1.067 5.186 5.186 0 0 1-.643-1.395 5.566 5.566 0 0 1-.215-1.56V93.47c0-.437.048-.875.143-1.313a3.95 3.95 0 0 1 .429-1.15c.19-.328.429-.656.715-.984.286-.329.572-.602.858-.821.286-.22.62-.383 1.001-.493.382-.11.763-.164 1.144-.164h9.726V61.619c0-.985.31-1.833.93-2.544.619-.712 1.358-1.068 2.216-1.068h44.335V39.62h-9.582c-1.24 0-2.288-.492-3.146-1.477a5.09 5.09 0 0 1-1.287-3.448V5.14c0-1.423.429-2.627 1.287-3.612.858-.985 1.907-1.477 3.146-1.477h25.743c.763 0 1.478.246 2.145.739a5.17 5.17 0 0 1 1.573 1.888c.382.766.573 1.587.573 2.462v29.553c0 1.313-.43 2.463-1.287 3.448-.859.985-1.86 1.477-3.004 1.477h-9.725v18.389h42.762c.954 0 1.74.355 2.36 1.067.62.711.93 1.56.93 2.545v26.925h9.582c1.239 0 2.288.492 3.146 1.478z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-documentation\",\n \"use\": \"icon-documentation-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-documentation\\\"><path d=\\\"M71.984 44.815H115.9L71.984 9.642v35.173zM16.094.05h63.875l47.906 38.37v76.74c0 3.392-1.682 6.645-4.677 9.044-2.995 2.399-7.056 3.746-11.292 3.746H16.094c-4.236 0-8.297-1.347-11.292-3.746-2.995-2.399-4.677-5.652-4.677-9.044V12.84C.125 5.742 7.23.05 16.094.05zm71.86 102.32V89.58h-71.86v12.79h71.86zm23.952-25.58V64H16.094v12.79h95.812z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-drag\",\n \"use\": \"icon-drag-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-drag\\\"><path d=\\\"M73.137 29.08h-9.209 29.7L63.886.093 34.373 29.08h20.49v27.035H27.238v17.948h27.625v27.133h18.274V74.063h27.41V56.115h-27.41V29.08zm-9.245 98.827l27.518-26.711H36.59l27.302 26.71zM.042 64.982l27.196 27.029V38.167L.042 64.982zm100.505-26.815V92.01l27.41-27.029-27.41-26.815z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--7-2!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-fullscreen\",\n \"use\": \"icon-fullscreen-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-fullscreen\\\"><path d=\\\"M38.47 52L52 38.462l-23.648-23.67L43.209 0H.035L0 43.137l14.757-14.865L38.47 52zm74.773 47.726L89.526 76 76 89.536l23.648 23.672L84.795 128h43.174L128 84.863l-14.757 14.863zM89.538 52l23.668-23.648L128 43.207V.038L84.866 0 99.73 14.76 76 38.472 89.538 52zM38.46 76L14.792 99.651 0 84.794v43.173l43.137.033-14.865-14.757L52 89.53 38.46 76z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\nimport Cookies from 'js-cookie'\nimport elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang\nimport elementZhLocale from 'element-ui/lib/locale/lang/zh-CN' // element-ui lang\nimport elementEsLocale from 'element-ui/lib/locale/lang/es' // element-ui lang\nimport enLocale from './en'\nimport zhLocale from './zh'\nimport esLocale from './es'\nimport ocLocale from './oc'\n\nVue.use(VueI18n)\n\nconst messages = {\n en: {\n ...enLocale,\n ...elementEnLocale\n },\n zh: {\n ...zhLocale,\n ...elementZhLocale\n },\n es: {\n ...esLocale,\n ...elementEsLocale\n },\n oc: {\n ...ocLocale\n }\n}\n\nconst i18n = new VueI18n({\n // set locale\n // options: en | zh | es | oc\n locale: Cookies.get('language') || 'en',\n // set locale messages\n messages\n})\n\nexport default i18n\n","export default {\n route: {\n dashboard: 'Dashboard',\n introduction: 'Introduction',\n documentation: 'Documentation',\n guide: 'Guide',\n permission: 'Permission',\n pagePermission: 'Page Permission',\n directivePermission: 'Directive Permission',\n icons: 'Icons',\n components: 'Components',\n componentIndex: 'Introduction',\n markdown: 'Markdown',\n jsonEditor: 'JSON Editor',\n dndList: 'Dnd List',\n splitPane: 'SplitPane',\n avatarUpload: 'Avatar Upload',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'BackToTop',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Charts',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Line Chart',\n mixChart: 'Mix Chart',\n example: 'Example',\n nested: 'Nested Routes',\n menu1: 'Menu 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menu 2',\n Table: 'Table',\n dynamicTable: 'Dynamic Table',\n dragTable: 'Drag Table',\n inlineEditTable: 'Inline Edit',\n complexTable: 'Complex Table',\n treeTable: 'Tree Table',\n customTreeTable: 'Custom TreeTable',\n tab: 'Tab',\n form: 'Form',\n createArticle: 'Create Article',\n editArticle: 'Edit Article',\n articleList: 'Article List',\n errorPages: 'Error Pages',\n page401: '401',\n page404: '404',\n errorLog: 'Error Log',\n excel: 'Excel',\n exportExcel: 'Export Excel',\n selectExcel: 'Export Selected',\n uploadExcel: 'Upload Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Export Zip',\n theme: 'Theme',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'External Link',\n users: 'Users',\n reports: 'Reports',\n invites: 'Invites',\n statuses: 'Statuses',\n settings: 'Settings',\n moderationLog: 'Moderation Log',\n mediaProxyCache: 'MediaProxy Cache',\n 'emoji-packs': 'Emoji packs'\n },\n navbar: {\n logOut: 'Log Out',\n dashboard: 'Dashboard',\n github: 'Github',\n theme: 'Theme',\n size: 'Global Size'\n },\n login: {\n title: 'Login Form',\n logIn: 'Log in',\n logInViaPleromaFE: 'Log in via PleromaFE',\n username: 'username@host',\n password: 'password',\n omitHostname: 'omit hostname if Pleroma is located on this domain',\n errorMessage: 'Username must contain username and host, e.g. john@pleroma.social',\n any: 'any',\n thirdparty: 'Or connect with',\n pleromaFELoginFailed: 'Failed to login via PleromaFE, please login with username/password',\n pleromaFELoginSucceed: 'Logged in via PleromaFE'\n },\n mediaProxyCache: {\n mediaProxyCache: 'MediaProxy Cache',\n ban: 'Ban',\n url: 'URL',\n evict: 'Evict',\n evictedMessage: 'This URL was evicted',\n actions: 'Actions',\n remove: 'Remove from Cachex',\n evictObjectsHeader: 'Evict object from the MediaProxy cache',\n listBannedUrlsHeader: 'List of all banned MediaProxy URLs',\n multipleInput: 'You can enter a single URL or several comma separated links',\n removeSelected: 'Remove Selected'\n },\n documentation: {\n documentation: 'Documentation',\n github: 'Github Repository'\n },\n permission: {\n roles: 'Your roles',\n switchRoles: 'Switch roles',\n tips: 'In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if.'\n },\n guide: {\n description: 'The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ',\n button: 'Show Guide'\n },\n components: {\n documentation: 'Documentation',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Fixed header, sorted by header order',\n dynamicTips2: 'Not fixed header, sorted by click order',\n dragTips1: 'The default order',\n dragTips2: 'The after dragging order',\n title: 'Title',\n importance: 'Imp',\n type: 'Type',\n remark: 'Remark',\n search: 'Search',\n add: 'Add',\n export: 'Export',\n reviewer: 'reviewer',\n id: 'ID',\n date: 'Date',\n author: 'Author',\n readings: 'Readings',\n status: 'Status',\n actions: 'Actions',\n edit: 'Edit',\n publish: 'Publish',\n draft: 'Draft',\n delete: 'Delete',\n cancel: 'Cancel',\n confirm: 'Confirm',\n unfollow: 'Unfollow'\n },\n errorLog: {\n tips: 'Please click the bug icon in the upper right corner',\n description: 'Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.',\n documentation: 'Document introduction'\n },\n excel: {\n export: 'Export',\n selectedExport: 'Export Selected Items',\n placeholder: 'Please enter the file name(default excel-list)'\n },\n zip: {\n export: 'Export',\n placeholder: 'Please enter the file name(default file)'\n },\n pdf: {\n tips: 'Here we use window.print() to implement the feature of downloading pdf.'\n },\n theme: {\n change: 'Change Theme',\n documentation: 'Theme documentation',\n tips: 'Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details.'\n },\n tagsView: {\n refresh: 'Refresh',\n close: 'Close',\n closeOthers: 'Close Others',\n closeAll: 'Close All'\n },\n users: {\n users: 'Users',\n localUsersOnly: 'Local users only',\n search: 'Search',\n id: 'ID',\n name: 'Name',\n status: 'Status',\n local: 'Local',\n external: 'External',\n deactivated: 'Deactivated',\n active: 'Active',\n unapproved: 'Pending',\n unconfirmed: 'Unconfirmed',\n actions: 'Actions',\n activate: 'Activate',\n deactivate: 'Deactivate',\n admin: 'Admin',\n moderator: 'Moderator',\n moderation: 'Moderation',\n revokeAdmin: 'Revoke Admin',\n grantAdmin: 'Grant Admin',\n revokeModerator: 'Revoke Moderator',\n grantModerator: 'Grant Moderator',\n activateAccount: 'Activate Account',\n activateAccounts: 'Activate Accounts',\n deactivateAccount: 'Deactivate Account',\n deactivateAccounts: 'Deactivate Accounts',\n deleteAccount: 'Delete Account',\n deleteAccounts: 'Delete Accounts',\n forceNsfw: 'Force posts to be NSFW',\n stripMedia: 'Force posts to not have media',\n forceUnlisted: 'Force posts to be unlisted',\n sandbox: 'Force posts to be followers-only',\n disableRemoteSubscription: 'Disallow following user from remote instances',\n disableRemoteSubscriptionForMultiple: 'Disallow following users from remote instances',\n disableAnySubscription: 'Disallow following user at all',\n disableAnySubscriptionForMultiple: 'Disallow following users at all',\n requirePasswordReset: 'Require password reset on next login',\n disableMfa: 'Disable multi-factor authentication',\n selectUsers: 'Select users to apply actions to multiple users',\n moderateUser: 'Moderate user',\n moderateUsers: 'Moderate multiple users',\n createAccount: 'Create new account',\n apply: 'Apply',\n remove: 'Remove',\n grantRightConfirmation: 'Are you sure you want to grant {right} rights to all selected users?',\n revokeRightConfirmation: 'Are you sure you want to revoke {right} rights from all selected users?',\n activateMultipleUsersConfirmation: 'Are you sure you want to activate accounts of all selected users?',\n deactivateMultipleUsersConfirmation: 'Are you sure you want to deactivate accounts of all selected users?',\n deleteUserConfirmation: 'Are you sure you want to delete this account? This action cannot be undone.',\n rejectAccountConfirmation: 'Are you sure you want to reject this account? This account will be deleted and it cannot be undone.',\n deleteMultipleUsersConfirmation: 'Are you sure you want to delete accounts of all selected users? This action cannot be undone.',\n addTagForMultipleUsersConfirmation: 'Are you sure you want to apply tag to all selected users?',\n removeTagFromMultipleUsersConfirmation: 'Are you sure you want to remove tag from all selected users?',\n requirePasswordResetConfirmation: 'Are you sure you want to require password reset for all selected users?',\n approveAccountsConfirmation: 'Are you sure you want to approve accounts for all selected users?',\n rejectAccountsConfirmation: 'Are you sure you want to reject accounts for all selected users? These accounts will be deleted and it cannot be undone.',\n confirmAccountsConfirmation: 'Are you sure you want to confirm emails for all selected users?',\n resendEmailConfirmation: 'Are you sure you want to resend confirmation email for all selected users?',\n mailerMustBeEnabled: 'To require user\\'s password reset you must enable mailer.',\n ok: 'Okay',\n completed: 'Completed',\n cancel: 'Cancel',\n canceled: 'Canceled',\n username: 'Username',\n email: 'E-mail',\n password: 'Password',\n create: 'Create',\n submitFormError: 'There are invalid values in the form. Please fix them before continuing.',\n emptyEmailError: 'Please input the e-mail',\n invalidEmailError: 'Please input valid e-mail',\n emptyPasswordError: 'Please input the password',\n emptyNicknameError: 'Please input the username',\n invalidNicknameError: 'Username can include \"a-z\", \"A-Z\" and \"0-9\" characters',\n getPasswordResetToken: 'Get password reset token',\n passwordResetTokenCreated: 'Password reset token was created',\n accountCreated: 'New account was created!',\n approveAccount: 'Approve account',\n approveAccounts: 'Approve accounts',\n unapprovedAccount: 'User account is pending approval',\n unconfirmedEmail: 'User didn\\'t confirm the email',\n confirmAccount: 'Confirm account',\n confirmAccounts: 'Confirm accounts',\n rejectAccount: 'Reject account',\n rejectAccounts: 'Reject accounts',\n resendConfirmation: 'Resend confirmation email',\n invalidAccount: 'This account has invalid nickname and can\\'t be modified',\n invalidNickname: 'invalid nickname',\n passwordResetTokenGenerated: 'Password reset token was generated:',\n linkToResetPassword: 'You can also use this link to reset password:',\n registrationReason: 'Registration Reason',\n service: 'Service',\n person: 'Person'\n },\n statuses: {\n statuses: 'Statuses',\n instanceFilter: 'Instance filter',\n loadMore: 'Load more',\n noInstances: 'No other instances found',\n onlyLocalStatuses: 'Show only local statuses',\n showPrivateStatuses: 'Show private statuses',\n direct: 'Direct',\n private: 'Private',\n public: 'Public',\n unlisted: 'Unlisted',\n openStatusInInstance: 'Open status in instance'\n },\n userProfile: {\n tags: 'Tags',\n moderator: 'Moderator',\n admin: 'Admin',\n local: 'Local',\n external: 'External',\n accountType: 'Account Type',\n actorType: 'Actor Type',\n nickname: 'Nickname',\n recentStatuses: 'Recent Statuses',\n roles: 'Roles',\n active: 'Active',\n status: 'Status',\n reason: 'Registration Reason',\n deactivated: 'Deactivated',\n pending: 'Pending',\n noStatuses: 'No statuses to show',\n openAccountInInstance: 'Open account in instance',\n securitySettings: {\n email: 'Email',\n password: 'Password',\n securitySettings: 'Security settings',\n passwordChangeWarning1: 'Setting a new password will cause the user to be signed out from any client they have used before.',\n passwordChangeWarning2: 'When the user signs in with this password, they will be asked to set a new one.',\n passwordLengthNotice: 'Make sure it\\'s at least {minLength} characters long.',\n inputNewEmail: 'Input new email',\n inputNewPassword: 'Input new password',\n passwordUpdated: 'The password has been updated',\n emailUpdated: 'The email has been updated',\n success: 'Success',\n submit: 'Submit',\n close: 'Close'\n }\n },\n usersFilter: {\n inputPlaceholder: 'Select filter',\n byAccountType: 'By account type',\n local: 'Local',\n external: 'External',\n byStatus: 'By status',\n active: 'Active',\n pending: 'Pending Approval',\n deactivated: 'Deactivated'\n },\n reports: {\n reports: 'Reports',\n report: 'Report',\n reply: 'Reply',\n from: 'From',\n showNotes: 'Show notes',\n newNote: 'New note',\n submit: 'Submit',\n confirmMsg: 'Are you sure you want to delete this note?',\n delete: 'Delete',\n cancel: 'Cancel',\n deleteCompleted: 'Delete comleted',\n deleteCanceled: 'Delete canceled',\n noNotes: 'No notes to display',\n changeState: \"Change report's state\",\n changeAllReports: 'Change all reports',\n changeScope: 'Change scope',\n moderateUser: 'Moderate user',\n resolve: 'Resolve',\n reopen: 'Reopen',\n close: 'Close',\n resolveAll: 'Resolve all',\n reopenAll: 'Reopen all',\n closeAll: 'Close all',\n addSensitive: 'Add Sensitive flag',\n removeSensitive: 'Remove Sensitive flag',\n public: 'Make status public',\n private: 'Make status private',\n unlisted: 'Make status unlisted',\n sensitive: 'Sensitive',\n deleteStatus: 'Delete status',\n reportOn: 'Report on',\n reportsOn: 'Reports on',\n id: 'ID',\n account: 'Account',\n actor: 'Actor',\n actors: 'Actors',\n content: 'Content',\n reportedStatus: 'Reported status',\n statusDeleted: 'This status has been deleted',\n leaveNote: 'Leave a note',\n postNote: 'Send',\n deleteNote: 'Delete',\n notFound: 'account not found'\n },\n reportsFilter: {\n inputPlaceholder: 'Select filter',\n open: 'Open',\n closed: 'Closed',\n resolved: 'Resolved'\n },\n moderationLog: {\n moderationLog: 'Moderation Log'\n },\n settings: {\n settings: 'Settings',\n instance: 'Instance',\n upload: 'Upload',\n mailer: 'Mailer',\n linkFormatter: 'Link Formatter',\n logger: 'Logger',\n activityPub: 'ActivityPub',\n auth: 'Authentication',\n captcha: 'Captcha',\n frontend: 'Frontend',\n http: 'HTTP',\n mrf: 'MRF',\n mediaProxy: 'Media Proxy',\n metadata: 'Metadata',\n gopher: 'Gopher',\n jobQueue: 'Job queue',\n webPush: 'Web push encryption',\n esshd: 'BBS / SSH access',\n rateLimiters: 'Rate limiters',\n other: 'Other',\n relays: 'Relays',\n follow: 'Follow',\n followRelay: 'Follow new relay',\n followedBack: 'Followed Back',\n instanceUrl: 'Instance URL',\n success: 'Settings changed successfully!',\n description: 'Description',\n removeFromDB: 'Remove setting from the DB',\n successfullyDownloaded: 'Successfully downloaded',\n successfullyImported: 'Successfully imported',\n nowNewPacksToImport: 'No new packs to import',\n successfullyUpdated: 'Successfully updated',\n metadatLowerCase: 'metadata',\n files: 'files',\n successfullyRemoved: 'Setting removed successfully!',\n seeDocs: 'See Documentation',\n instanceReboot: 'Reboot Instance',\n restartApp: 'You must restart the instance to apply settings',\n restartSuccess: 'Instance rebooted successfully!',\n removeSettingConfirmation: 'Are you sure you want to remove this setting\\'s value from the database?',\n changeImage: 'Change image',\n uploadImage: 'Upload image',\n remove: 'Remove'\n },\n invites: {\n inviteTokens: 'Invite tokens',\n createInviteToken: 'Generate invite token',\n pickDate: 'Pick a date',\n maxUse: 'Max use',\n expiresAt: 'Expires at',\n tokenCreated: 'Invite token was created',\n token: 'Token',\n inviteLink: 'Invite link',\n uses: 'Uses',\n used: 'Used',\n cancel: 'Cancel',\n create: 'Create',\n revoke: 'Revoke',\n id: 'ID',\n actions: 'Actions',\n active: 'Active',\n inviteUserViaEmail: 'Invite user via email',\n sendRegistration: 'Send registration invite via email',\n email: 'Email',\n name: 'Name',\n emptyEmailError: 'Please input the e-mail',\n invalidEmailError: 'Please input valid e-mail',\n emailSent: 'Invite was sent',\n submitFormError: 'There are invalid values in the form. Please fix them before continuing.',\n inviteViaEmailAlert: 'To send invite via email make sure to enable `invites_enabled` and disable `registrations_open`'\n },\n emoji: {\n emojiPacks: 'Emoji packs',\n reloaded: 'Emoji reloaded successfully!',\n refreshed: 'Emoji refreshed successfully!',\n importEmojiTooltip: 'Importing from the filesystem will scan the directories and import those without pack.json but with emoji.txt or without neither',\n reloadEmoji: 'Reload emoji',\n importPacks: 'Import packs from the server filesystem',\n localPacks: 'Local packs',\n refreshLocalPacks: 'Refresh local packs',\n createLocalPack: 'Create a new local pack',\n remotePacks: 'Remote packs',\n remoteInstanceAddress: 'Remote instance address',\n refreshRemote: 'Refresh remote packs',\n sharePack: 'Share pack',\n required: 'required',\n homepage: 'Homepage',\n description: 'Description',\n packs: 'Packs',\n license: 'License',\n shortcode: 'Shortcode',\n fallbackSrc: 'Fallback source',\n fallbackSrcSha: 'Fallback source SHA',\n saveMetadata: 'Save metadata',\n deletePack: 'Delete pack',\n downloadPack: 'Download pack',\n downloadPackArchive: 'Download pack archive',\n addNewEmoji: 'Add new emoji to the pack',\n manageEmoji: 'Manage existing emoji',\n thisWillDownload: 'This will download the',\n downloadToCurrentInstance: 'pack to the current instance under the name',\n canBeChanged: 'can be changed below',\n willBeUsable: 'It will then be usable and shareable from the current instance',\n downloadAsOptional: 'Download as (optional)',\n downloadSharedPack: 'Download shared pack to current instance',\n downloadSharedPackMobile: 'Download pack to instance',\n optional: 'optional',\n uploadFile: 'Upload a file',\n url: 'URL',\n clickToUpload: 'Click to upload',\n upload: 'Upload',\n customFilename: 'Custom filename',\n customFilenameDesc: 'Custom file name (optional)',\n file: 'File',\n localPack: 'Local pack',\n leaveEmptyShortcode: 'leave empty to use the same shortcode',\n leaveEmptyFilename: 'leave empty to use the same filename',\n update: 'Update',\n remove: 'Remove',\n selectLocalPack: 'Select the local pack to copy to',\n specifyShortcode: 'Specify a custom shortcode',\n specifyFilename: 'Specify a custom filename',\n copy: 'Copy',\n copyToLocalPack: 'Copy to local pack',\n emptyPack: 'This emoji pack is empty'\n }\n}\n","export default {\n route: {\n dashboard: '首页',\n introduction: '简述',\n documentation: '文档',\n guide: '引导页',\n permission: '权限测试页',\n pagePermission: '页面权限',\n directivePermission: '指令权限',\n icons: '图标',\n components: '组件',\n componentIndex: '介绍',\n markdown: 'Markdown',\n jsonEditor: 'JSON编辑器',\n dndList: '列表拖拽',\n splitPane: 'Splitpane',\n avatarUpload: '头像上传',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: '小组件',\n backToTop: '返回顶部',\n dragDialog: '拖拽 Dialog',\n dragSelect: '拖拽 Select',\n dragKanban: '可拖拽看板',\n charts: '图表',\n keyboardChart: '键盘图表',\n lineChart: '折线图',\n mixChart: '混合图表',\n example: '综合实例',\n nested: '路由嵌套',\n menu1: '菜单1',\n 'menu1-1': '菜单1-1',\n 'menu1-2': '菜单1-2',\n 'menu1-2-1': '菜单1-2-1',\n 'menu1-2-2': '菜单1-2-2',\n 'menu1-3': '菜单1-3',\n menu2: '菜单2',\n Table: 'Table',\n dynamicTable: '动态Table',\n dragTable: '拖拽Table',\n inlineEditTable: 'Table内编辑',\n complexTable: '综合Table',\n treeTable: '树形表格',\n customTreeTable: '自定义树表',\n tab: 'Tab',\n form: '表单',\n createArticle: '创建文章',\n editArticle: '编辑文章',\n articleList: '文章列表',\n errorPages: '错误页面',\n page401: '401',\n page404: '404',\n errorLog: '错误日志',\n excel: 'Excel',\n exportExcel: 'Export Excel',\n selectExcel: 'Export Selected',\n uploadExcel: 'Upload Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Export Zip',\n theme: '换肤',\n clipboardDemo: 'Clipboard',\n i18n: '国际化',\n externalLink: '外链'\n },\n navbar: {\n logOut: '退出登录',\n dashboard: '首页',\n github: '项目地址',\n theme: '换肤',\n size: '布局大小'\n },\n login: {\n title: '系统登录',\n logIn: '登录',\n username: '账号',\n password: '密码',\n any: '随便填',\n thirdparty: '第三方登录',\n thirdpartyTips: '本地不能模拟,请结合自己业务进行模拟!!!'\n },\n documentation: {\n documentation: '文档',\n github: 'Github 地址'\n },\n permission: {\n roles: '你的权限',\n switchRoles: '切换权限',\n tips: '在某些情况下,不适合使用 v-permission。例如:Element-UI 的 Tab 组件或 el-table-column 以及其它动态渲染 dom 的场景。你只能通过手动设置 v-if 来实现。'\n },\n guide: {\n description: '引导页对于一些第一次进入项目的人很有用,你可以简单介绍下项目的功能。本 Demo 是基于',\n button: '打开引导'\n },\n components: {\n documentation: '文档',\n dropzoneTips: '由于我司业务有特殊需求,而且要传七牛 所以没用第三方,选择了自己封装。代码非常的简单,具体代码你可以在这里看到 @/components/element-ui/Dropzone',\n stickyTips: '当页面滚动到预设的位置会吸附在顶部',\n backToTopTips1: '页面滚动到指定位置会在右下角出现返回顶部按钮',\n backToTopTips2: '可自定义按钮的样式、show/hide、出现的高度、返回的位置 如需文字提示,可在外部使用Element的el-tooltip元素',\n imageUploadTips: '由于我在使用时它只有vue@1版本,而且和mockjs不兼容,所以自己改造了一下,如果大家要使用的话,优先还是使用官方版本。'\n },\n table: {\n dynamicTips1: '固定表头, 按照表头顺序排序',\n dynamicTips2: '不固定表头, 按照点击顺序排序',\n dragTips1: '默认顺序',\n dragTips2: '拖拽后顺序',\n title: '标题',\n importance: '重要性',\n type: '类型',\n remark: '点评',\n search: '搜索',\n add: '添加',\n export: '导出',\n reviewer: '审核人',\n id: '序号',\n date: '时间',\n author: '作者',\n readings: '阅读数',\n status: '状态',\n actions: '操作',\n edit: '编辑',\n publish: '发布',\n draft: '草稿',\n delete: '删除',\n cancel: '取 消',\n confirm: '确 定'\n },\n errorLog: {\n tips: '请点击右上角bug小图标',\n description: '现在的管理后台基本都是spa的形式了,它增强了用户体验,但同时也会增加页面出问题的可能性,可能一个小小的疏忽就导致整个页面的死锁。好在 Vue 官网提供了一个方法来捕获处理异常,你可以在其中进行错误处理或者异常上报。',\n documentation: '文档介绍'\n },\n excel: {\n export: '导出',\n selectedExport: '导出已选择项',\n placeholder: '请输入文件名(默认excel-list)'\n },\n zip: {\n export: '导出',\n placeholder: '请输入文件名(默认file)'\n },\n pdf: {\n tips: '这里使用 window.print() 来实现下载pdf的功能'\n },\n theme: {\n change: '换肤',\n documentation: '换肤文档',\n tips: 'Tips: 它区别于 navbar 上的 theme-pick, 是两种不同的换肤方法,各自有不同的应用场景,具体请参考文档。'\n },\n tagsView: {\n refresh: '刷新',\n close: '关闭',\n closeOthers: '关闭其它',\n closeAll: '关闭所有'\n }\n}\n","export default {\n route: {\n dashboard: 'Panel de control',\n introduction: 'Introducción',\n documentation: 'Documentación',\n guide: 'Guía',\n permission: 'Permisos',\n pagePermission: 'Permisos de la página',\n directivePermission: 'Permisos de la directiva',\n icons: 'Iconos',\n components: 'Componentes',\n componentIndex: 'Introducción',\n markdown: 'Markdown',\n jsonEditor: 'Editor JSON',\n dndList: 'Lista Dnd',\n splitPane: 'Panel dividido',\n avatarUpload: 'Subir avatar',\n dropzone: 'Subir ficheros',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'Ir arriba',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Gráficos',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Gráfico de líneas',\n mixChart: 'Mix Chart',\n example: 'Ejemplo',\n nested: 'Rutas anidadass',\n menu1: 'Menu 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menu 2',\n Table: 'Tabla',\n dynamicTable: 'Tabla dinámica',\n dragTable: 'Arrastrar tabla',\n inlineEditTable: 'Editor',\n complexTable: 'Complex Table',\n treeTable: 'Tree Table',\n customTreeTable: 'Custom TreeTable',\n tab: 'Pestaña',\n form: 'Formulario',\n createArticle: 'Crear artículo',\n editArticle: 'Editar artículo',\n articleList: 'Listado de artículos',\n errorPages: 'Páginas de error',\n page401: '401',\n page404: '404',\n errorLog: 'Registro de errores',\n excel: 'Excel',\n exportExcel: 'Exportar a Excel',\n selectExcel: 'Export seleccionado',\n uploadExcel: 'Subir Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Exportar a Zip',\n theme: 'Tema',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'Enlace externo'\n },\n navbar: {\n logOut: 'Salir',\n dashboard: 'Panel de control',\n github: 'Github',\n theme: 'Tema',\n size: 'Tamaño global'\n },\n login: {\n title: 'Formulario de acceso',\n logIn: 'Acceso',\n username: 'Usuario',\n password: 'Contraseña',\n any: 'nada',\n thirdparty: 'Conectar con',\n thirdpartyTips: 'No se puede simular en local, así que combine su propia simulación de negocios. ! !'\n },\n documentation: {\n documentation: 'Documentación',\n github: 'Repositorio Github'\n },\n permission: {\n roles: 'Tus permisos',\n switchRoles: 'Cambiar permisos',\n tips: 'In some cases it is not suitable to use v-permission, such as element Tab component or el-table-column and other asynchronous rendering dom cases which can only be achieved by manually setting the v-if.'\n },\n guide: {\n description: 'The guide page is useful for some people who entered the project for the first time. You can briefly introduce the features of the project. Demo is based on ',\n button: 'Ver guía'\n },\n components: {\n documentation: 'Documentación',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Fixed header, sorted by header order',\n dynamicTips2: 'Not fixed header, sorted by click order',\n dragTips1: 'Orden por defecto',\n dragTips2: 'The after dragging order',\n title: 'Título',\n importance: 'Importancia',\n type: 'Tipo',\n remark: 'Remark',\n search: 'Buscar',\n add: 'Añadir',\n export: 'Exportar',\n reviewer: 'reviewer',\n id: 'ID',\n date: 'Fecha',\n author: 'Autor',\n readings: 'Lector',\n status: 'Estado',\n actions: 'Acciones',\n edit: 'Editar',\n publish: 'Publicar',\n draft: 'Draft',\n delete: 'Eliminar',\n cancel: 'Cancelar',\n confirm: 'Confirmar'\n },\n errorLog: {\n tips: 'Please click the bug icon in the upper right corner',\n description: 'Now the management system are basically the form of the spa, it enhances the user experience, but it also increases the possibility of page problems, a small negligence may lead to the entire page deadlock. Fortunately Vue provides a way to catch handling exceptions, where you can handle errors or report exceptions.',\n documentation: 'Documento de introducción'\n },\n excel: {\n export: 'Exportar',\n selectedExport: 'Exportar seleccionados',\n placeholder: 'Por favor escribe un nombre de fichero'\n },\n zip: {\n export: 'Exportar',\n placeholder: 'Por favor escribe un nombre de fichero'\n },\n pdf: {\n tips: 'Here we use window.print() to implement the feature of downloading pdf.'\n },\n theme: {\n change: 'Cambiar tema',\n documentation: 'Documentación del tema',\n tips: 'Tips: It is different from the theme-pick on the navbar is two different skinning methods, each with different application scenarios. Refer to the documentation for details.'\n },\n tagsView: {\n refresh: 'Actualizar',\n close: 'Cerrar',\n closeOthers: 'Cerrar otros',\n closeAll: 'Cerrar todos'\n }\n}\n","export default {\n route: {\n dashboard: 'Tablèu de bòrd',\n introduction: 'Introduccion',\n documentation: 'Documentacion',\n guide: 'Guida',\n permission: 'Autorizacions',\n pagePermission: 'Pagina d’autorizacion',\n directivePermission: 'Politica d’autorizacion',\n icons: 'Icònas',\n components: 'Compausants',\n componentIndex: 'Introduccion',\n markdown: 'Markdown',\n jsonEditor: 'JSON Editor',\n dndList: 'Dnd List',\n splitPane: 'SplitPane',\n avatarUpload: 'Mandadís d’avatar',\n dropzone: 'Dropzone',\n sticky: 'Sticky',\n countTo: 'CountTo',\n componentMixin: 'Mixin',\n backToTop: 'BackToTop',\n dragDialog: 'Drag Dialog',\n dragSelect: 'Drag Select',\n dragKanban: 'Drag Kanban',\n charts: 'Charts',\n keyboardChart: 'Keyboard Chart',\n lineChart: 'Line Chart',\n mixChart: 'Mix Chart',\n example: 'Exemple',\n nested: 'Rotas imbricadas',\n menu1: 'Menú 1',\n 'menu1-1': 'Menu 1-1',\n 'menu1-2': 'Menu 1-2',\n 'menu1-2-1': 'Menu 1-2-1',\n 'menu1-2-2': 'Menu 1-2-2',\n 'menu1-3': 'Menu 1-3',\n menu2: 'Menú 2',\n Table: 'Tablèu',\n dynamicTable: 'Tablèu dinamic',\n dragTable: 'Drag Table',\n inlineEditTable: 'Inline Edit',\n complexTable: 'Tablèu complèx',\n treeTable: 'Arborescéncia',\n customTreeTable: 'Arborescéncia personalizada',\n tab: 'Onglet',\n form: 'Formulari',\n createArticle: 'Crear un article',\n editArticle: 'Modificar l’article',\n articleList: 'Lista d’articles',\n errorPages: 'Paginas d’error',\n page401: '401',\n page404: '404',\n errorLog: 'Jornal d’error',\n excel: 'Excel',\n exportExcel: 'Exportacion Excel',\n selectExcel: 'Exportar los seleccionats',\n uploadExcel: 'Importacion Excel',\n zip: 'Zip',\n pdf: 'PDF',\n exportZip: 'Exportacion Zip',\n theme: 'Tèma',\n clipboardDemo: 'Clipboard',\n i18n: 'I18n',\n externalLink: 'Ligams extèrnes',\n users: 'Utilizaires'\n },\n navbar: {\n logOut: 'Desconnexion',\n dashboard: 'Tablèu de bòrd',\n github: 'Github',\n theme: 'Tèma',\n size: 'Talha totala'\n },\n login: {\n title: 'Formulari de connexion',\n logIn: 'Se connectar',\n username: 'Nom d’’utilizaire',\n password: 'Senhal',\n any: 'qual que siá',\n thirdparty: 'O se connectar amb',\n thirdpartyTips: 'Pòt pas èsser simulat en local, doncas montatz vòstra pròpria simulacion ! ! !'\n },\n documentation: {\n documentation: 'Documentacion',\n github: 'Repertòri Github'\n },\n permission: {\n roles: 'Vòstres ròtles',\n switchRoles: 'Cambiar de ròtle',\n tips: 'Dins qualques cases es pas de bon far d’utilizar v-permission, coma element d’onglet compausant, el-table-column o d’autres renduts dom asincròns que pòdon pas que foncionar amb un parametratge manual de v-if.'\n },\n guide: {\n description: 'La pagina de guida es utila pel monde que dintran dins lo projècte pel primièr còp. Podètz presentar en un mot las foncionalitats del projèctes. La demo es fondada sus ',\n button: 'Mostrar la guida'\n },\n components: {\n documentation: 'Documentacion',\n dropzoneTips: 'Because my business has special needs, and has to upload images to qiniu, so instead of a third party, I chose encapsulate it by myself. It is very simple, you can see the detail code in @/components/element-ui/Dropzone.',\n stickyTips: 'when the page is scrolled to the preset position will be sticky on the top.',\n backToTopTips1: 'When the page is scrolled to the specified position, the Back to Top button appears in the lower right corner',\n backToTopTips2: 'You can customize the style of the button, show / hide, height of appearance, height of the return. If you need a text prompt, you can use element-ui el-tooltip elements externally',\n imageUploadTips: 'Since I was using only the vue@1 version, and it is not compatible with mockjs at the moment, I modified it myself, and if you are going to use it, it is better to use official version.'\n },\n table: {\n dynamicTips1: 'Bandièra fixa, triada per òrdre de bandièra',\n dynamicTips2: 'Bandièra pas fixa, triada per òrdre de clic',\n dragTips1: 'L’’òrdre per defaut',\n dragTips2: 'L’’òrdre aprèp lisar-depausar',\n title: 'Títol',\n importance: 'Imp',\n type: 'Tipe',\n remark: 'Remarca',\n search: 'Recercar',\n add: 'Ajustar',\n export: 'Exportar',\n reviewer: 'examinator',\n id: 'ID',\n date: 'Data',\n author: 'Autor',\n readings: 'Lecturas',\n status: 'Estatuts',\n actions: 'Accions',\n edit: 'Modificar',\n publish: 'Publicar',\n draft: 'Ensag',\n delete: 'Suprimir',\n cancel: 'Anullar',\n confirm: 'Confirmar'\n },\n errorLog: {\n tips: 'Mercés de clicar l’’icòna del babau amont a man drecha',\n description: 'Ara que lo sistèma de gestion es coma un spa, melhora l’experiéncia dels utilizaire mas aumenta tanben lo risc de problèmas sus la pagina, una pichona negligéncia pòt menar a un blocatge complèt de la pagina. Urosament Vue fornís de manièras per gerir las excepcions, trobar las errors o senhalar las excepcions.',\n documentation: 'Presentacion del document'\n },\n excel: {\n export: 'Exportar',\n selectedExport: 'Exportar los elements seleccionats',\n placeholder: 'Mercés de picar lo nom de fichièr (per defaut excel-list)'\n },\n zip: {\n export: 'Exportar',\n placeholder: 'Mercés de picar lo nom de fichièr (per defaut file)'\n },\n pdf: {\n tips: 'Aquí utilizam window.print() per prepausar lo telecargament de pdf.'\n },\n theme: {\n change: 'Cambiar lo tèma',\n documentation: 'Documentacion dels tèmas',\n tips: 'Astúcia : es diferent del theme-pick de la barra de navigacion, i a dos metòdes de personalizacion, caduna amb un biais de far diferent. Referiscam a la documentacion per mai de detalhs.'\n },\n tagsView: {\n refresh: 'Actualizar',\n close: 'Tampar',\n closeOthers: 'Tampar los autres',\n closeAll: 'Los tampar totes'\n }\n}\n","import request from '@/utils/request'\nimport { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nexport async function addNewEmojiFile(packName, file, shortcode, filename, host, token) {\n const data = new FormData()\n if (filename.trim() !== '') {\n data.set('filename', filename)\n }\n if (shortcode.trim() !== '') {\n data.set('shortcode', shortcode)\n }\n data.set('file', file)\n\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}/files`,\n method: 'post',\n headers: authHeaders(token),\n data\n })\n}\n\nexport function addressOfEmojiInPack(host, packName, name) {\n return `${baseName(host)}/emoji/${packName}/${name}`\n}\n\nexport async function createPack(host, token, packName) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}`,\n method: 'post',\n headers: authHeaders(token)\n })\n}\n\nexport async function deleteEmojiFile(packName, shortcode, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}/files?shortcode=${shortcode}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function deletePack(host, token, packName) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}`,\n method: 'delete',\n headers: authHeaders(token)\n })\n}\n\nexport async function downloadFrom(instanceAddress, packName, as, host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/emoji/packs/download',\n method: 'post',\n headers: authHeaders(token),\n data: as.trim() === ''\n ? { url: baseName(instanceAddress), name: packName }\n : { url: baseName(instanceAddress), name: packName, as },\n timeout: 0\n })\n}\n\nexport async function fetchPack(packName, page, pageSize, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function importFromFS(host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/emoji/packs/import',\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function listPacks(page, pageSize, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs?page=${page}&page_size=${pageSize}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function listRemotePacks(host, token, instance) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/remote?url=${baseName(instance)}`,\n method: 'get',\n headers: authHeaders(token)\n })\n}\n\nexport async function reloadEmoji(host, token) {\n return await request({\n baseURL: baseName(host),\n url: '/api/pleroma/admin/reload_emoji',\n method: 'post',\n headers: authHeaders(token)\n })\n}\n\nexport async function savePackMetadata(host, token, packName, metadata) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}`,\n method: 'patch',\n headers: authHeaders(token),\n data: { metadata },\n timeout: 0 // This might take a long time\n })\n}\n\nexport async function updateEmojiFile(packName, shortcode, newShortcode, newFilename, force, host, token) {\n return await request({\n baseURL: baseName(host),\n url: `/api/pleroma/emoji/packs/${packName}/files`,\n method: 'patch',\n headers: authHeaders(token),\n data: { shortcode, new_shortcode: newShortcode, new_filename: newFilename, force }\n })\n}\n\nconst authHeaders = (token) => token ? { 'Authorization': `Bearer ${getToken()}` } : {}\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-icon\",\n \"use\": \"icon-icon-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-icon\\\"><path d=\\\"M115.147.062a13 13 0 0 1 4.94.945c1.55.63 2.907 1.526 4.069 2.688a13.148 13.148 0 0 1 2.761 4.069c.678 1.55 1.017 3.245 1.017 5.086v102.3c0 3.681-1.187 6.733-3.56 9.155-2.373 2.422-5.352 3.633-8.937 3.633H12.992c-3.875 0-7-1.26-9.373-3.779-2.373-2.518-3.56-5.667-3.56-9.445V12.704c0-3.39 1.163-6.345 3.488-8.863C5.872 1.32 8.972.062 12.847.062h102.3zM81.434 109.047c1.744 0 3.003-.412 3.778-1.235.775-.824 1.163-1.914 1.163-3.27 0-1.26-.388-2.325-1.163-3.197-.775-.872-2.034-1.307-3.778-1.307H72.57c.097-.194.145-.485.145-.872V27.09h9.01c1.743 0 2.954-.436 3.633-1.308.678-.872 1.017-1.938 1.017-3.197 0-1.26-.34-2.325-1.017-3.197-.679-.872-1.89-1.308-3.633-1.308H46.268c-1.743 0-2.954.436-3.632 1.308-.678.872-1.018 1.938-1.018 3.197 0 1.26.34 2.325 1.018 3.197.678.872 1.889 1.308 3.632 1.308h8.138v72.075c0 .193.024.339.073.436.048.096.072.242.072.436H46.56c-1.744 0-3.003.435-3.778 1.307-.775.872-1.163 1.938-1.163 3.197 0 1.356.388 2.446 1.163 3.27.775.823 2.034 1.235 3.778 1.235h34.875z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-404\",\n \"use\": \"icon-404-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-404\\\"><path d=\\\"M121.718 73.272v9.953c3.957-7.584 6.199-16.05 6.199-24.995C127.917 26.079 99.273 0 63.958 0 28.644 0 0 26.079 0 58.23c0 .403.028.806.028 1.21l22.97-25.953h13.34l-19.76 27.187h6.42V53.77l13.728-19.477v49.361H22.998V73.272H2.158c5.951 20.284 23.608 36.208 45.998 41.399-1.44 3.3-5.618 11.263-12.565 12.674-8.607 1.764 23.358.428 46.163-13.178 17.519-4.611 31.938-15.849 39.77-30.513h-13.506V73.272H85.02V59.464l22.998-25.977h13.008l-19.429 27.187h6.421v-7.433l13.727-19.402v39.433h-.027zm-78.24 2.822a10.516 10.516 0 0 1-.996-4.535V44.548c0-1.613.332-3.124.996-4.535a11.66 11.66 0 0 1 2.713-3.68c1.134-1.032 2.49-1.864 4.04-2.468 1.55-.605 3.21-.908 4.982-.908h11.292c1.77 0 3.431.303 4.981.908 1.522.604 2.85 1.41 3.986 2.418l-12.26 16.303v-2.898a1.96 1.96 0 0 0-.665-1.512c-.443-.403-.996-.604-1.66-.604-.665 0-1.218.201-1.661.604a1.96 1.96 0 0 0-.664 1.512v9.071L44.364 77.606a10.556 10.556 0 0 1-.886-1.512zm35.73-4.535c0 1.613-.332 3.124-.997 4.535a11.66 11.66 0 0 1-2.712 3.68c-1.134 1.032-2.49 1.864-4.04 2.469-1.55.604-3.21.907-4.982.907H55.185c-1.77 0-3.431-.303-4.981-.907-1.55-.605-2.906-1.437-4.041-2.47a12.49 12.49 0 0 1-1.384-1.512l13.727-18.217v6.375c0 .605.222 1.109.665 1.512.442.403.996.604 1.66.604.664 0 1.218-.201 1.66-.604a1.96 1.96 0 0 0 .665-1.512V53.87L75.97 36.838c.913.932 1.66 1.99 2.214 3.175.664 1.41.996 2.922.996 4.535v27.011h.028z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-edit\",\n \"use\": \"icon-edit-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-edit\\\"><path d=\\\"M106.133 67.2a4.797 4.797 0 0 0-4.8 4.8c0 .187.014.36.027.533h-.027V118.4H9.6V26.667h50.133c2.654 0 4.8-2.147 4.8-4.8 0-2.654-2.146-4.8-4.8-4.8H9.6a9.594 9.594 0 0 0-9.6 9.6V118.4c0 5.307 4.293 9.6 9.6 9.6h91.733c5.307 0 9.6-4.293 9.6-9.6V72.533h-.026c.013-.173.026-.346.026-.533 0-2.653-2.146-4.8-4.8-4.8z\\\" /><path d=\\\"M125.16 13.373L114.587 2.8c-3.747-3.747-9.854-3.72-13.6.027l-52.96 52.96a4.264 4.264 0 0 0-.907 1.36L33.813 88.533c-.746 1.76-.226 3.534.907 4.68 1.133 1.147 2.92 1.667 4.693.92l31.4-13.293c.507-.213.96-.52 1.36-.907l52.96-52.96c3.747-3.746 3.774-9.853.027-13.6zM66.107 72.4l-18.32 7.76 7.76-18.32L92.72 24.667l10.56 10.56L66.107 72.4zm52.226-52.227l-8.266 8.267-10.56-10.56 8.266-8.267.027-.026 10.56 10.56-.027.026z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-lock\",\n \"use\": \"icon-lock-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-lock\\\"><path d=\\\"M119.88 49.674h-7.987V39.52C111.893 17.738 90.45.08 63.996.08 37.543.08 16.1 17.738 16.1 39.52v10.154H8.113c-4.408 0-7.987 2.94-7.987 6.577v65.13c0 3.637 3.57 6.577 7.987 6.577H119.88c4.407 0 7.987-2.94 7.987-6.577v-65.13c-.008-3.636-3.58-6.577-7.987-6.577zm-23.953 0H32.065V39.52c0-14.524 14.301-26.295 31.931-26.295 17.63 0 31.932 11.777 31.932 26.295v10.153z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-user\",\n \"use\": \"icon-user-usage\",\n \"viewBox\": \"0 0 130 130\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 130 130\\\" id=\\\"icon-user\\\"><path d=\\\"M63.444 64.996c20.633 0 37.359-14.308 37.359-31.953 0-17.649-16.726-31.952-37.359-31.952-20.631 0-37.36 14.303-37.358 31.952 0 17.645 16.727 31.953 37.359 31.953zM80.57 75.65H49.434c-26.652 0-48.26 18.477-48.26 41.27v2.664c0 9.316 21.608 9.325 48.26 9.325H80.57c26.649 0 48.256-.344 48.256-9.325v-2.663c0-22.794-21.605-41.271-48.256-41.271z\\\" stroke=\\\"#979797\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menuText\":\"#bfcbd9\",\"menuActiveText\":\"#409EFF\",\"subMenuActiveText\":\"#f4f4f5\",\"menuBg\":\"#304156\",\"menuHover\":\"#263445\",\"subMenuBg\":\"#1f2d3d\",\"subMenuHover\":\"#001528\",\"sideBarWidth\":\"180px\"};","import axios from 'axios'\nimport { Message } from 'element-ui'\n\n// create an axios instance\nconst service = axios.create({\n timeout: 60000 // request timeout\n})\n\n// response interceptor\nservice.interceptors.response.use(\n response => response,\n error => {\n let errorMessage\n console.log(`Error ${error}`)\n\n if (error.response) {\n const edata = error.response.data.error ? error.response.data.error : error.response.data\n errorMessage = !error.response.headers['content-type'].includes('application/json')\n ? `${error.message}`\n : `${error.message} - ${edata}`\n } else {\n errorMessage = error\n }\n\n Message({\n message: errorMessage,\n type: 'error',\n duration: 5 * 1000\n })\n return Promise.reject(error)\n }\n)\n\nexport default service\n","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-clipboard\",\n \"use\": \"icon-clipboard-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-clipboard\\\"><path d=\\\"M54.857 118.857h64V73.143H89.143c-1.902 0-3.52-.668-4.855-2.002-1.335-1.335-2.002-2.954-2.002-4.855V36.57H54.857v82.286zM73.143 16v-4.571a2.2 2.2 0 0 0-.677-1.61 2.198 2.198 0 0 0-1.609-.676H20.571c-.621 0-1.158.225-1.609.676a2.198 2.198 0 0 0-.676 1.61V16a2.2 2.2 0 0 0 .676 1.61c.451.45.988.676 1.61.676h50.285c.622 0 1.158-.226 1.61-.677.45-.45.676-.987.676-1.609zm18.286 48h21.357L91.43 42.642V64zM128 73.143v48c0 1.902-.667 3.52-2.002 4.855-1.335 1.335-2.953 2.002-4.855 2.002H52.57c-1.901 0-3.52-.667-4.854-2.002-1.335-1.335-2.003-2.953-2.003-4.855v-11.429H6.857c-1.902 0-3.52-.667-4.855-2.002C.667 106.377 0 104.759 0 102.857v-96c0-1.902.667-3.52 2.002-4.855C3.337.667 4.955 0 6.857 0h77.714c1.902 0 3.52.667 4.855 2.002 1.335 1.335 2.003 2.953 2.003 4.855V30.29c1 .622 1.856 1.29 2.569 2.003l29.147 29.147c1.335 1.335 2.478 3.145 3.429 5.43.95 2.287 1.426 4.383 1.426 6.291v-.018z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-email\",\n \"use\": \"icon-email-usage\",\n \"viewBox\": \"0 0 128 96\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 96\\\" id=\\\"icon-email\\\"><path d=\\\"M64.125 56.975L120.188.912A12.476 12.476 0 0 0 115.5 0h-103c-1.588 0-3.113.3-4.513.838l56.138 56.137z\\\" /><path d=\\\"M64.125 68.287l-62.3-62.3A12.42 12.42 0 0 0 0 12.5v71C0 90.4 5.6 96 12.5 96h103c6.9 0 12.5-5.6 12.5-12.5v-71a12.47 12.47 0 0 0-1.737-6.35L64.125 68.287z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"svg-baker-runtime/browser-symbol\";\nimport sprite from \"svg-sprite-loader/runtime/browser-sprite.build\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-chart\",\n \"use\": \"icon-chart-usage\",\n \"viewBox\": \"0 0 128 128\",\n \"content\": \"<symbol xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 128 128\\\" id=\\\"icon-chart\\\"><path d=\\\"M0 54.857h36.571V128H0V54.857zM91.429 27.43H128V128H91.429V27.429zM45.714 0h36.572v128H45.714V0z\\\" /></symbol>\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Item.vue?vue&type=style&index=0&id=52140d98&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',_vm._g({class:_vm.svgClass,attrs:{\"aria-hidden\":\"true\"}},_vm.$listeners),[_c('use',{attrs:{\"xlink:href\":_vm.iconName}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <svg :class=\"svgClass\" aria-hidden=\"true\" v-on=\"$listeners\">\n <use :xlink:href=\"iconName\"/>\n </svg>\n</template>\n\n<script>\nexport default {\n name: 'SvgIcon',\n props: {\n iconClass: {\n type: String,\n required: true\n },\n className: {\n type: String,\n default: ''\n }\n },\n computed: {\n iconName() {\n return `#icon-${this.iconClass}`\n },\n svgClass() {\n if (this.className) {\n return 'svg-icon ' + this.className\n } else {\n return 'svg-icon'\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.svg-icon {\n width: 1em;\n height: 1em;\n vertical-align: -0.15em;\n fill: currentColor;\n overflow: hidden;\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=17178ffc&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=17178ffc&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17178ffc\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","// extracted by mini-css-extract-plugin\nmodule.exports = {\"menuText\":\"#bfcbd9\",\"menuActiveText\":\"#409EFF\",\"subMenuActiveText\":\"#f4f4f5\",\"menuBg\":\"#304156\",\"menuHover\":\"#263445\",\"subMenuBg\":\"#1f2d3d\",\"subMenuHover\":\"#001528\",\"sideBarWidth\":\"180px\"};"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-0171.2384d81d.js b/priv/static/adminfe/static/js/chunk-0171.2384d81d.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0171"],{"53Av":function(e,t,s){"use strict";var r=s("lOBV");s.n(r).a},"6eCR":function(e,t,s){"use strict";var r=s("Jdpf");s.n(r).a},"9/5/":function(e,t,s){(function(t){var s="Expected a function",r=NaN,n="[object Symbol]",a=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt,u="object"==typeof t&&t&&t.Object===Object&&t,d="object"==typeof self&&self&&self.Object===Object&&self,p=u||d||Function("return this")(),f=Object.prototype.toString,v=Math.max,m=Math.min,g=function(){return p.Date.now()};function h(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function _(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&f.call(e)==n}(e))return r;if(h(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=h(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(a,"");var s=o.test(e);return s||c.test(e)?l(e.slice(2),s?2:8):i.test(e)?r:+e}e.exports=function(e,t,r){var n,a,i,o,c,l,u=0,d=!1,p=!1,f=!0;if("function"!=typeof e)throw new TypeError(s);function w(t){var s=n,r=a;return n=a=void 0,u=t,o=e.apply(r,s)}function $(e){var s=e-l;return void 0===l||s>=t||s<0||p&&e-u>=i}function b(){var e=g();if($(e))return k(e);c=setTimeout(b,function(e){var s=t-(e-l);return p?m(s,i-(e-u)):s}(e))}function k(e){return c=void 0,f&&n?w(e):(n=a=void 0,o)}function y(){var e=g(),s=$(e);if(n=arguments,a=this,l=e,s){if(void 0===c)return function(e){return u=e,c=setTimeout(b,t),d?w(e):o}(l);if(p)return c=setTimeout(b,t),w(l)}return void 0===c&&(c=setTimeout(b,t)),o}return t=_(t)||0,h(r)&&(d=!!r.leading,i=(p="maxWait"in r)?v(_(r.maxWait)||0,t):i,f="trailing"in r?!!r.trailing:f),y.cancel=function(){void 0!==c&&clearTimeout(c),u=0,n=l=a=c=void 0},y.flush=function(){return void 0===c?o:k(g())},y}}).call(this,s("yLpj"))},DPTh:function(e,t,s){"use strict";var r=s("vg5t");s.n(r).a},GGbL:function(e,t,s){},Jdpf:function(e,t,s){},RGjw:function(e,t,s){"use strict";s.r(t);var r=s("o0o1"),n=s.n(r),a=s("yXPU"),i=s.n(a),o=s("9/5/"),c=s.n(o),l=s("ZhIB"),u=s.n(l),d=s("lSNA"),p=s.n(d);function f(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,r)}return s}function v(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?f(Object(s),!0).forEach(function(t){p()(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):f(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}var m={data:function(){return{value:["local","active"]}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},created:function(){var e=this.$data.value.reduce(function(e,t){return v(v({},e),{},p()({},t,!0))},{});this.$store.dispatch("ToggleUsersFilter",e)},methods:{removeOppositeFilters:function(){var e=Object.keys(this.$store.state.users.filters).length,t=[],s=this.$data.value.indexOf("local"),r=this.$data.value.indexOf("external"),n=this.$data.value.indexOf("active"),a=this.$data.value.indexOf("deactivated"),i=this.$data.value.indexOf("need_approval");return this.$data.value.length===e?[]:(Math.max(s,r)>-1&&t.push(this.$data.value[Math.max(s,r)]),Math.max(n,a,i)>-1&&t.push(this.$data.value[Math.max(n,a,i)]),t)},toggleFilters:function(){this.$data.value=this.removeOppositeFilters();var e=this.$data.value.reduce(function(e,t){return v(v({},e),{},p()({},t,!0))},{});this.$store.dispatch("ToggleUsersFilter",e)}}},g=(s("xAET"),s("KHd+")),h=Object(g.a)(m,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-select",{staticClass:"select-field",attrs:{clearable:e.isDesktop,placeholder:e.$t("usersFilter.inputPlaceholder"),multiple:""},on:{change:e.toggleFilters},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}},[s("el-option-group",{attrs:{label:e.$t("usersFilter.byAccountType")}},[s("el-option",{attrs:{value:"local",label:"Local"}},[e._v(e._s(e.$t("usersFilter.local")))]),e._v(" "),s("el-option",{attrs:{value:"external",label:"External"}},[e._v(e._s(e.$t("usersFilter.external")))])],1),e._v(" "),s("el-option-group",{attrs:{label:e.$t("usersFilter.byStatus")}},[s("el-option",{attrs:{value:"active",label:"Active"}},[e._v(e._s(e.$t("usersFilter.active")))]),e._v(" "),s("el-option",{attrs:{value:"need_approval",label:"Need Approval"}},[e._v(e._s(e.$t("usersFilter.pending")))]),e._v(" "),s("el-option",{attrs:{value:"deactivated",label:"Deactivated"}},[e._v(e._s(e.$t("usersFilter.deactivated")))])],1)],1)},[],!1,null,"377d5068",null);h.options.__file="UsersFilter.vue";var _=h.exports,w=s("i7Kn"),$={name:"NewAccountDialog",props:{dialogFormVisible:{type:Boolean,default:function(){return!1}}},data:function(){return{newUserForm:{nickname:"",email:"",password:""},rules:{nickname:[{validator:this.validateUsername,trigger:"blur"}],email:[{validator:this.validateEmail,trigger:"blur"}],password:[{validator:this.validatePassword,trigger:"blur"}]}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isVisible:{get:function(){return this.$props.dialogFormVisible},set:function(){this.closeDialogWindow()}},getLabelWidth:function(){return this.isDesktop?"120px":"85px"}},methods:{closeDialogWindow:function(){this.$emit("closeWindow")},resetForm:function(){var e=this;this.$nextTick(function(){e.$refs.newUserForm.resetFields()})},submitForm:function(e){var t=this;this.$refs[e].validate(function(e){if(!e)return t.$message({type:"error",message:t.$t("users.submitFormError")}),!1;t.$emit("createNewAccount",t.$data.newUserForm)})},validateEmail:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyEmailError"))):this.validEmail(t)?s():s(new Error(this.$t("users.invalidEmailError")))},validatePassword:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyPasswordError"))):s()},validateUsername:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyNicknameError"))):this.validNickname(t)?s():s(new Error(this.$t("users.invalidNicknameError")))},validEmail:function(e){return/^[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])?)*$/.test(e)},validNickname:function(e){return/^[a-zA-Z\d]+$/.test(e)}}},b=(s("DPTh"),Object(g.a)($,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dialog",{attrs:{visible:e.isVisible,"show-close":!1,title:e.$t("users.createAccount"),"custom-class":"create-user-dialog"},on:{"update:visible":function(t){e.isVisible=t},open:e.resetForm}},[s("el-form",{ref:"newUserForm",attrs:{model:e.newUserForm,rules:e.rules,"label-width":e.getLabelWidth,"status-icon":""}},[s("el-form-item",{staticClass:"create-account-form-item",attrs:{label:e.$t("users.username"),prop:"nickname"}},[s("el-input",{attrs:{name:"nickname",autofocus:""},model:{value:e.newUserForm.nickname,callback:function(t){e.$set(e.newUserForm,"nickname",t)},expression:"newUserForm.nickname"}})],1),e._v(" "),s("el-form-item",{staticClass:"create-account-form-item",attrs:{label:e.$t("users.email"),prop:"email"}},[s("el-input",{attrs:{name:"email",type:"email"},model:{value:e.newUserForm.email,callback:function(t){e.$set(e.newUserForm,"email",t)},expression:"newUserForm.email"}})],1),e._v(" "),s("el-form-item",{staticClass:"create-account-form-item-without-margin",attrs:{label:e.$t("users.password"),prop:"password"}},[s("el-input",{attrs:{type:"password",name:"password",autocomplete:"off"},model:{value:e.newUserForm.password,callback:function(t){e.$set(e.newUserForm,"password",t)},expression:"newUserForm.password"}})],1)],1),e._v(" "),s("span",{attrs:{slot:"footer"},slot:"footer"},[s("el-button",{on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("users.cancel")))]),e._v(" "),s("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.submitForm("newUserForm")}}},[e._v(e._s(e.$t("users.create")))])],1)],1)},[],!1,null,null,null));b.options.__file="NewAccountDialog.vue";var k=b.exports,y=s("tPM3"),O=s("rIUS"),D=s("WjBP"),A={name:"Users",components:{NewAccountDialog:k,ModerationDropdown:y.a,MultipleUsersMenu:w.a,RebootButton:O.a,ResetPasswordDialog:D.a,UsersFilter:_},filters:{truncate:function(e,t,s){return e.length<t?e:e.substring(0,t)+s}},data:function(){return{search:"",selectedUsers:[],createAccountDialogOpen:!1,resetPasswordDialogOpen:!1}},computed:{loading:function(){return this.$store.state.users.loading},normalizedUsersCount:function(){return u()(this.$store.state.users.totalUsersCount).format("0a")},pageSize:function(){return this.$store.state.users.pageSize},currentPage:function(){return this.$store.state.users.currentPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},users:function(){return this.$store.state.users.fetchedUsers},usersCount:function(){return this.$store.state.users.totalUsersCount},pendingView:function(){return this.$store.state.users.filters.need_approval},width:function(){return!!this.isMobile&&55}},created:function(){var e=this;this.handleDebounceSearchInput=c()(function(t){e.$store.dispatch("SearchUsers",{query:t,page:1})},500)},mounted:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchUsers",{page:1})},destroyed:function(){this.$store.dispatch("ClearUsersState")},methods:{clearSelection:function(){this.$refs.usersTable.clearSelection()},closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},createNewAccount:function(e){var t=this;return i()(n.a.mark(function s(){return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,t.$store.dispatch("CreateNewAccount",e);case 2:t.createAccountDialogOpen=!1;case 3:case"end":return s.stop()}},s)}))()},getFirstLetter:function(e){return e.charAt(0).toUpperCase()},handlePageChange:function(e){var t=this.$store.state.users.searchQuery;""===t?this.$store.dispatch("FetchUsers",{page:e}):this.$store.dispatch("SearchUsers",{query:t,page:e})},handleRowClick:function(e){e.id&&this.$router.push({name:"UsersShow",params:{id:e.id}})},handleSelectionChange:function(e){this.$data.selectedUsers=e},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(e,t){return e[t]},regReason:function(e){return e&&e.length>0},showDeactivatedButton:function(e){return this.$store.state.user.id!==e}}},C=(s("6eCR"),Object(g.a)(A,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"users-container"},[s("div",{staticClass:"users-header-container"},[s("h1",[e._v("\n "+e._s(e.$t("users.users"))+"\n "),s("span",{staticClass:"user-count"},[e._v("("+e._s(e.normalizedUsersCount)+")")])]),e._v(" "),s("reboot-button")],1),e._v(" "),s("div",{staticClass:"filter-container"},[s("users-filter"),e._v(" "),s("el-input",{staticClass:"search",attrs:{placeholder:e.$t("users.search"),"prefix-icon":"el-icon-search"},on:{input:e.handleDebounceSearchInput},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})],1),e._v(" "),s("div",{staticClass:"actions-container"},[s("el-button",{staticClass:"actions-button",on:{click:function(t){e.createAccountDialogOpen=!0}}},[s("span",{staticClass:"create-account"},[s("i",{staticClass:"el-icon-plus"}),e._v("\n "+e._s(e.$t("users.createAccount"))+"\n ")])]),e._v(" "),s("multiple-users-menu",{attrs:{"selected-users":e.selectedUsers},on:{"apply-action":e.clearSelection}})],1),e._v(" "),s("new-account-dialog",{attrs:{"dialog-form-visible":e.createAccountDialogOpen},on:{createNewAccount:e.createNewAccount,closeWindow:function(t){e.createAccountDialogOpen=!1}}}),e._v(" "),s("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],ref:"usersTable",staticStyle:{width:"100%"},attrs:{data:e.users,"row-key":"id"},on:{"row-click":function(t){return e.handleRowClick(t)},"selection-change":e.handleSelectionChange}},[e.isDesktop?s("el-table-column",{attrs:{type:"selection","reserve-selection":"",width:"44",align:"center"}}):e._e(),e._v(" "),s("el-table-column",{attrs:{"min-width":e.width,label:e.$t("users.id"),prop:"id"}}),e._v(" "),s("el-table-column",{attrs:{label:e.$t("users.name"),prop:"nickname"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v("\n "+e._s(t.row.nickname)+"\n "),e.isDesktop?s("el-tag",{attrs:{type:"info",size:"mini"}},[s("span",[e._v(e._s(t.row.local?e.$t("users.local"):e.$t("users.external")))])]):e._e()]}}])}),e._v(" "),s("el-table-column",{attrs:{"min-width":e.width,label:e.$t("users.status")},scopedSlots:e._u([{key:"default",fn:function(t){return[!t.row.deactivated&!t.row.approval_pending?s("el-tag",{attrs:{type:"success"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.active")))]):s("i",{staticClass:"el-icon-circle-check"})]):e._e(),e._v(" "),t.row.deactivated&!t.row.approval_pending?s("el-tag",{attrs:{type:"danger"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.deactivated")))]):s("i",{staticClass:"el-icon-circle-close"})]):e._e(),e._v(" "),s("el-tooltip",{attrs:{content:e.$t("users.unapprovedAccount"),effect:"dark"}},[t.row.approval_pending?s("el-tag",{attrs:{type:"info"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.unapproved")))]):s("i",{staticClass:"el-icon-warning-outline"})]):e._e()],1),e._v(" "),t.row.roles.admin?s("el-tag",[s("span",[e._v(e._s(e.isDesktop?e.$t("users.admin"):e.getFirstLetter(e.$t("users.admin"))))])]):e._e(),e._v(" "),t.row.roles.moderator?s("el-tag",[s("span",[e._v(e._s(e.isDesktop?e.$t("users.moderator"):e.getFirstLetter(e.$t("users.moderator"))))])]):e._e(),e._v(" "),s("el-tooltip",{attrs:{content:e.$t("users.unconfirmedEmail"),effect:"dark"}},[t.row.confirmation_pending?s("el-tag",{attrs:{type:"info"}},[e._v("\n "+e._s(e.isDesktop?e.$t("users.unconfirmed"):e.getFirstLetter(e.$t("users.unconfirmed")))+"\n ")]):e._e()],1)]}}])}),e._v(" "),e.pendingView&&e.isDesktop?s("el-table-column",{attrs:{label:e.$t("users.registrationReason")},scopedSlots:e._u([{key:"default",fn:function(t){return[e.regReason(t.row.registration_reason)?s("el-tooltip",{attrs:{content:t.row.registration_reason,"popper-class":"reason-tooltip",effect:"dark"}},[s("span",[e._v('\n "'+e._s(e._f("truncate")(t.row.registration_reason,100,"..."))+'"\n ')])]):e._e()]}}],null,!1,975858353)}):e._e(),e._v(" "),s("el-table-column",{attrs:{label:e.$t("users.actions"),fixed:"right"},scopedSlots:e._u([{key:"default",fn:function(t){return[e.propertyExists(t.row,"nickname")?s("moderation-dropdown",{attrs:{user:t.row,page:"users"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):s("el-button",{attrs:{type:"text",disabled:""}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?s("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()])]}}])})],1),e._v(" "),s("reset-password-dialog",{attrs:{"reset-password-dialog-open":e.resetPasswordDialogOpen},on:{"close-reset-token-dialog":e.closeResetPasswordDialog}}),e._v(" "),e.loading?e._e():s("div",{staticClass:"pagination"},[s("el-pagination",{attrs:{total:e.usersCount,"current-page":e.currentPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handlePageChange}})],1)],1)},[],!1,null,null,null));C.options.__file="index.vue";t.default=C.exports},WjBP:function(e,t,s){"use strict";var r={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},n=s("KHd+"),a=Object(n.a)(r,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{visible:e.dialogOpen,title:e.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:e.closeResetPasswordDialog}},[s("div",[s("p",{staticClass:"password-reset-token"},[e._v(e._s(e.$t("users.passwordResetTokenGenerated"))+" "+e._s(e.passwordResetToken))]),e._v(" "),s("p",[e._v(e._s(e.$t("users.linkToResetPassword"))+"\n "),s("a",{staticClass:"reset-password-link",attrs:{href:e.passwordResetLink,target:"_blank"}},[e._v(e._s(e.passwordResetLink))])])])])},[],!1,null,null,null);a.options.__file="ResetPasswordDialog.vue";t.a=a.exports},lOBV:function(e,t,s){},tPM3:function(e,t,s){"use strict";var r={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(e){this.$store.dispatch("UpdateActorType",{user:this.user,type:e,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{disableMfa:function(e){this.$store.dispatch("DisableMfa",e)},getPasswordResetToken:function(e){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",e)},handleConfirmationResend:function(e){this.$store.dispatch("ResendConfirmationEmail",[e])},handleDeletion:function(e){var t=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){t.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(e){this.$store.dispatch("ApproveUsersAccount",{users:[e],_userId:e.id,_statusId:this.statusId})},handleAccountRejection:function(e){var t=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){t.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(e){this.$store.dispatch("ConfirmUsersEmail",{users:[e],_userId:e.id,_statusId:this.statusId})},requirePasswordReset:function(e){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[e]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(e){var t=e.local,s=e.id;return t&&this.showDeactivatedButton(s)},showDeactivatedButton:function(e){return this.$store.state.user.id!==e},toggleActivation:function(e){e.deactivated?this.$store.dispatch("ActivateUsers",{users:[e],_userId:e.id}):this.$store.dispatch("DeactivateUsers",{users:[e],_userId:e.id})},toggleTag:function(e,t){e.tags.includes(t)?this.$store.dispatch("RemoveTag",{users:[e],tag:t,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[e],tag:t,_userId:e.id,_statusId:this.statusId})},toggleUserRight:function(e,t){e.roles[t]?this.$store.dispatch("DeleteRight",{users:[e],right:t,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[e],right:t,_userId:e.id,_statusId:this.statusId})}}},n=(s("53Av"),s("KHd+")),a=Object(n.a)(r,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(e){e.stopPropagation()}}},[s("div",["users"===e.page?s("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?s("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()]):e._e(),e._v(" "),"userPage"===e.page||"statusPage"===e.page?s("el-button",{staticClass:"moderate-user-button"},[s("span",{staticClass:"moderate-user-button-container"},[s("span",[s("i",{staticClass:"el-icon-edit"}),e._v("\n "+e._s(e.$t("users.moderateUser"))+"\n ")]),e._v(" "),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):e._e()],1),e._v(" "),s("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[s("el-dropdown-item",{staticClass:"actor-type-dropdown"},[s("el-select",{staticClass:"actor-type-select",attrs:{placeholder:e.$t("userProfile.actorType")},model:{value:e.actorType,callback:function(t){e.actorType=t},expression:"actorType"}},[s("el-option",{attrs:{label:e.$t("users.service"),value:"Service"}}),e._v(" "),s("el-option",{attrs:{label:e.$t("users.person"),value:"Person"}})],1)],1),e._v(" "),e.showAdminAction(e.user)?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.toggleUserRight(e.user,"admin")}}},[e._v("\n "+e._s(e.user.roles.admin?e.$t("users.revokeAdmin"):e.$t("users.grantAdmin"))+"\n ")]):e._e(),e._v(" "),e.showAdminAction(e.user)?s("el-dropdown-item",{nativeOn:{click:function(t){return e.toggleUserRight(e.user,"moderator")}}},[e._v("\n "+e._s(e.user.roles.moderator?e.$t("users.revokeModerator"):e.$t("users.grantModerator"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?s("el-dropdown-item",{attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(t){return e.toggleActivation(e.user)}}},[e._v("\n "+e._s(e.user.deactivated?e.$t("users.activateAccount"):e.$t("users.deactivateAccount"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleDeletion(e.user)}}},[e._v("\n "+e._s(e.$t("users.deleteAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.handleAccountApproval(e.user)}}},[e._v("\n "+e._s(e.$t("users.approveAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleAccountRejection(e.user)}}},[e._v("\n "+e._s(e.$t("users.rejectAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.handleEmailConfirmation(e.user)}}},[e._v("\n "+e._s(e.$t("users.confirmAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleConfirmationResend(e.user)}}},[e._v("\n "+e._s(e.$t("users.resendConfirmation"))+"\n ")]):e._e(),e._v(" "),s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:media-force-nsfw")}}},[e._v("\n "+e._s(e.$t("users.forceNsfw"))+"\n "),e.user.tags.includes("mrf_tag:media-force-nsfw")?s("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:media-strip")}}},[e._v("\n "+e._s(e.$t("users.stripMedia"))+"\n "),e.user.tags.includes("mrf_tag:media-strip")?s("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:force-unlisted")}}},[e._v("\n "+e._s(e.$t("users.forceUnlisted"))+"\n "),e.user.tags.includes("mrf_tag:force-unlisted")?s("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:sandbox")}}},[e._v("\n "+e._s(e.$t("users.sandbox"))+"\n "),e.user.tags.includes("mrf_tag:sandbox")?s("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),e.user.local?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:disable-remote-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableRemoteSubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-remote-subscription")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:disable-any-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableAnySubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-any-subscription")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.getPasswordResetToken(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.getPasswordResetToken"))+"\n ")]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{nativeOn:{click:function(t){return e.requirePasswordReset(e.user)}}},[e._v("\n "+e._s(e.$t("users.requirePasswordReset"))+"\n ")]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{nativeOn:{click:function(t){return e.disableMfa(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.disableMfa"))+"\n ")]):e._e()],1)],1)},[],!1,null,null,null);a.options.__file="ModerationDropdown.vue";t.a=a.exports},vg5t:function(e,t,s){},xAET:function(e,t,s){"use strict";var r=s("GGbL");s.n(r).a}}]); +//# sourceMappingURL=chunk-0171.2384d81d.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-0171.2384d81d.js.map b/priv/static/adminfe/static/js/chunk-0171.2384d81d.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./src/views/users/index.vue?1afe","webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/users/components/NewAccountDialog.vue?d353","webpack:///./src/views/users/index.vue?5636","webpack:///src/views/users/components/UsersFilter.vue","webpack:///./src/views/users/components/UsersFilter.vue?6a82","webpack:///./src/views/users/components/UsersFilter.vue","webpack:///./src/views/users/components/UsersFilter.vue?4ed7","webpack:///./src/views/users/components/NewAccountDialog.vue?9018","webpack:///src/views/users/components/NewAccountDialog.vue","webpack:///./src/views/users/components/NewAccountDialog.vue","webpack:///./src/views/users/components/NewAccountDialog.vue?43a7","webpack:///./src/views/users/index.vue?0a29","webpack:///src/views/users/index.vue","webpack:///./src/views/users/index.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?93ed","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/UsersFilter.vue?52bf"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NewAccountDialog_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","components_UsersFiltervue_type_script_lang_js_","data","computed","isDesktop","$store","state","app","device","created","currentFilters","$data","reduce","acc","filter","_objectSpread","defineProperty_default","dispatch","methods","removeOppositeFilters","filtersQuantity","keys","users","filters","length","indexOfLocal","indexOf","indexOfExternal","indexOfActive","indexOfDeactivated","indexOfPending","push","toggleFilters","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","clearable","placeholder","$t","multiple","on","change","model","callback","$$v","expression","label","_v","_s","__file","UsersFilter","components_NewAccountDialogvue_type_script_lang_js_","name","props","dialogFormVisible","Boolean","default","newUserForm","nickname","email","password","rules","validator","validateUsername","trigger","validateEmail","validatePassword","isVisible","get","$props","set","closeDialogWindow","getLabelWidth","$emit","resetForm","_this","$nextTick","$refs","resetFields","submitForm","formName","_this2","validate","valid","$message","message","rule","Error","validEmail","validNickname","NewAccountDialog_component","visible","show-close","title","custom-class","update:visible","$event","open","ref","label-width","status-icon","prop","autofocus","$set","autocomplete","slot","click","NewAccountDialog","views_usersvue_type_script_lang_js_","components","ModerationDropdown","MultipleUsersMenu","RebootButton","ResetPasswordDialog","truncate","text","suffix","substring","search","selectedUsers","createAccountDialogOpen","resetPasswordDialogOpen","loading","normalizedUsersCount","numeral_default","totalUsersCount","format","pageSize","currentPage","isMobile","fetchedUsers","usersCount","pendingView","width","handleDebounceSearchInput","lodash_debounce_default","query","page","mounted","destroyed","clearSelection","usersTable","closeResetPasswordDialog","createNewAccount","accountData","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","stop","getFirstLetter","str","charAt","toUpperCase","handlePageChange","searchQuery","handleRowClick","row","id","$router","params","handleSelectionChange","openResetPasswordDialog","propertyExists","account","property","regReason","reason","showDeactivatedButton","user","users_component","prefix-icon","input","selected-users","apply-action","dialog-form-visible","closeWindow","directives","rawName","staticStyle","row-key","row-click","selection-change","reserve-selection","align","_e","min-width","scopedSlots","_u","key","fn","scope","size","local","deactivated","approval_pending","content","effect","roles","registration_reason","popper-class","_f","fixed","open-reset-token-dialog","disabled","reset-password-dialog-open","close-reset-token-dialog","total","current-page","page-size","hide-on-single-page","layout","current-change","__webpack_exports__","components_ResetPasswordDialogvue_type_script_lang_js_","dialogOpen","passwordResetLink","passwordResetToken","link","token","close","href","target","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","actor_type","_userId","_statusId","disableMfa","getPasswordResetToken","handleConfirmationResend","handleDeletion","$confirm","confirmButtonText","cancelButtonText","then","catch","handleAccountApproval","handleAccountRejection","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","toggleActivation","toggleTag","tag","tags","includes","toggleUserRight","right","hide-on-click","placement","nativeOn","stopPropagation","divided","admin","moderator","confirmation_pending","class","active-tag","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_UsersFilter_vue_vue_type_style_index_0_id_377d5068_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-0171.2384d81d.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"users-container\"},[_c('div',{staticClass:\"users-header-container\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.users'))+\"\\n \"),_c('span',{staticClass:\"user-count\"},[_vm._v(\"(\"+_vm._s(_vm.normalizedUsersCount)+\")\")])]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"filter-container\"},[_c('users-filter'),_vm._v(\" \"),_c('el-input',{staticClass:\"search\",attrs:{\"placeholder\":_vm.$t('users.search'),\"prefix-icon\":\"el-icon-search\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"actions-container\"},[_c('el-button',{staticClass:\"actions-button\",on:{\"click\":function($event){_vm.createAccountDialogOpen = true}}},[_c('span',{staticClass:\"create-account\"},[_c('i',{staticClass:\"el-icon-plus\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.createAccount'))+\"\\n \")])]),_vm._v(\" \"),_c('multiple-users-menu',{attrs:{\"selected-users\":_vm.selectedUsers},on:{\"apply-action\":_vm.clearSelection}})],1),_vm._v(\" \"),_c('new-account-dialog',{attrs:{\"dialog-form-visible\":_vm.createAccountDialogOpen},on:{\"createNewAccount\":_vm.createNewAccount,\"closeWindow\":function($event){_vm.createAccountDialogOpen = false}}}),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],ref:\"usersTable\",staticStyle:{\"width\":\"100%\"},attrs:{\"data\":_vm.users,\"row-key\":\"id\"},on:{\"row-click\":function($event){return _vm.handleRowClick($event)},\"selection-change\":_vm.handleSelectionChange}},[(_vm.isDesktop)?_c('el-table-column',{attrs:{\"type\":\"selection\",\"reserve-selection\":\"\",\"width\":\"44\",\"align\":\"center\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.width,\"label\":_vm.$t('users.id'),\"prop\":\"id\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('users.name'),\"prop\":\"nickname\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\"\\n \"+_vm._s(scope.row.nickname)+\"\\n \"),(_vm.isDesktop)?_c('el-tag',{attrs:{\"type\":\"info\",\"size\":\"mini\"}},[_c('span',[_vm._v(_vm._s(scope.row.local ? _vm.$t('users.local') : _vm.$t('users.external')))])]):_vm._e()]}}])}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.width,\"label\":_vm.$t('users.status')},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(!scope.row.deactivated & !scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"success\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.active')))]):_c('i',{staticClass:\"el-icon-circle-check\"})]):_vm._e(),_vm._v(\" \"),(scope.row.deactivated & !scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"danger\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.deactivated')))]):_c('i',{staticClass:\"el-icon-circle-close\"})]):_vm._e(),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('users.unapprovedAccount'),\"effect\":\"dark\"}},[(scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.unapproved')))]):_c('i',{staticClass:\"el-icon-warning-outline\"})]):_vm._e()],1),_vm._v(\" \"),(scope.row.roles.admin)?_c('el-tag',[_c('span',[_vm._v(_vm._s(_vm.isDesktop ? _vm.$t('users.admin') : _vm.getFirstLetter(_vm.$t('users.admin'))))])]):_vm._e(),_vm._v(\" \"),(scope.row.roles.moderator)?_c('el-tag',[_c('span',[_vm._v(_vm._s(_vm.isDesktop ? _vm.$t('users.moderator') : _vm.getFirstLetter(_vm.$t('users.moderator'))))])]):_vm._e(),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('users.unconfirmedEmail'),\"effect\":\"dark\"}},[(scope.row.confirmation_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(\"\\n \"+_vm._s(_vm.isDesktop ? _vm.$t('users.unconfirmed') : _vm.getFirstLetter(_vm.$t('users.unconfirmed')))+\"\\n \")]):_vm._e()],1)]}}])}),_vm._v(\" \"),(_vm.pendingView && _vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('users.registrationReason')},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(_vm.regReason(scope.row.registration_reason))?_c('el-tooltip',{attrs:{\"content\":scope.row.registration_reason,\"popper-class\":\"reason-tooltip\",\"effect\":\"dark\"}},[_c('span',[_vm._v(\"\\n \\\"\"+_vm._s(_vm._f(\"truncate\")(scope.row.registration_reason,100, '...'))+\"\\\"\\n \")])]):_vm._e()]}}],null,false,975858353)}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('users.actions'),\"fixed\":\"right\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(_vm.propertyExists(scope.row, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":scope.row,\"page\":'users'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_c('el-button',{attrs:{\"type\":\"text\",\"disabled\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()])]}}])})],1),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.usersCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-select\n v-model=\"value\"\n :clearable=\"isDesktop\"\n :placeholder=\"$t('usersFilter.inputPlaceholder')\"\n multiple\n class=\"select-field\"\n @change=\"toggleFilters\">\n <el-option-group :label=\"$t('usersFilter.byAccountType')\">\n <el-option value=\"local\" label=\"Local\">{{ $t('usersFilter.local') }}</el-option>\n <el-option value=\"external\" label=\"External\">{{ $t('usersFilter.external') }}</el-option>\n </el-option-group>\n <el-option-group :label=\"$t('usersFilter.byStatus')\">\n <el-option value=\"active\" label=\"Active\">{{ $t('usersFilter.active') }}</el-option>\n <el-option value=\"need_approval\" label=\"Need Approval\">{{ $t('usersFilter.pending') }}</el-option>\n <el-option value=\"deactivated\" label=\"Deactivated\">{{ $t('usersFilter.deactivated') }}</el-option>\n </el-option-group>\n </el-select>\n</template>\n\n<script>\nexport default {\n data() {\n return {\n value: ['local', 'active']\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n created() {\n const currentFilters = this.$data.value.reduce((acc, filter) => ({ ...acc, [filter]: true }), {})\n this.$store.dispatch('ToggleUsersFilter', currentFilters)\n },\n methods: {\n removeOppositeFilters() {\n const filtersQuantity = Object.keys(this.$store.state.users.filters).length\n const currentFilters = []\n const indexOfLocal = this.$data.value.indexOf('local')\n const indexOfExternal = this.$data.value.indexOf('external')\n const indexOfActive = this.$data.value.indexOf('active')\n const indexOfDeactivated = this.$data.value.indexOf('deactivated')\n const indexOfPending = this.$data.value.indexOf('need_approval')\n\n if (this.$data.value.length === filtersQuantity) {\n return []\n }\n\n Math.max(indexOfLocal, indexOfExternal) > -1\n ? currentFilters.push(this.$data.value[Math.max(indexOfLocal, indexOfExternal)])\n : currentFilters\n\n Math.max(indexOfActive, indexOfDeactivated, indexOfPending) > -1\n ? currentFilters.push(this.$data.value[Math.max(indexOfActive, indexOfDeactivated, indexOfPending)])\n : currentFilters\n\n return currentFilters\n },\n toggleFilters() {\n this.$data.value = this.removeOppositeFilters()\n const currentFilters = this.$data.value.reduce((acc, filter) => ({ ...acc, [filter]: true }), {})\n this.$store.dispatch('ToggleUsersFilter', currentFilters)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.select-field {\n width: 350px;\n}\n\n@media only screen and (max-width:480px) {\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./UsersFilter.vue?vue&type=template&id=377d5068&scoped=true&\"\nimport script from \"./UsersFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./UsersFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"377d5068\",\n null\n \n)\n\ncomponent.options.__file = \"UsersFilter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-select',{staticClass:\"select-field\",attrs:{\"clearable\":_vm.isDesktop,\"placeholder\":_vm.$t('usersFilter.inputPlaceholder'),\"multiple\":\"\"},on:{\"change\":_vm.toggleFilters},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}},[_c('el-option-group',{attrs:{\"label\":_vm.$t('usersFilter.byAccountType')}},[_c('el-option',{attrs:{\"value\":\"local\",\"label\":\"Local\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.local')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"external\",\"label\":\"External\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.external')))])],1),_vm._v(\" \"),_c('el-option-group',{attrs:{\"label\":_vm.$t('usersFilter.byStatus')}},[_c('el-option',{attrs:{\"value\":\"active\",\"label\":\"Active\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.active')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"need_approval\",\"label\":\"Need Approval\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.pending')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"deactivated\",\"label\":\"Deactivated\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.deactivated')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n :visible.sync=\"isVisible\"\n :show-close=\"false\"\n :title=\"$t('users.createAccount')\"\n custom-class=\"create-user-dialog\"\n @open=\"resetForm\">\n <el-form ref=\"newUserForm\" :model=\"newUserForm\" :rules=\"rules\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('users.username')\" prop=\"nickname\" class=\"create-account-form-item\">\n <el-input v-model=\"newUserForm.nickname\" name=\"nickname\" autofocus/>\n </el-form-item>\n <el-form-item :label=\"$t('users.email')\" prop=\"email\" class=\"create-account-form-item\">\n <el-input v-model=\"newUserForm.email\" name=\"email\" type=\"email\"/>\n </el-form-item>\n <el-form-item :label=\"$t('users.password')\" prop=\"password\" class=\"create-account-form-item-without-margin\">\n <el-input v-model=\"newUserForm.password\" type=\"password\" name=\"password\" autocomplete=\"off\"/>\n </el-form-item>\n </el-form>\n <span slot=\"footer\">\n <el-button @click=\"closeDialogWindow\">{{ $t('users.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"submitForm('newUserForm')\">{{ $t('users.create') }}</el-button>\n </span>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'NewAccountDialog',\n props: {\n dialogFormVisible: {\n type: Boolean,\n default: function() {\n return false\n }\n }\n },\n data() {\n return {\n newUserForm: {\n nickname: '',\n email: '',\n password: ''\n },\n rules: {\n nickname: [\n { validator: this.validateUsername, trigger: 'blur' }\n ],\n email: [\n { validator: this.validateEmail, trigger: 'blur' }\n ],\n password: [\n { validator: this.validatePassword, trigger: 'blur' }\n ]\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isVisible: {\n get() {\n return this.$props.dialogFormVisible\n },\n set() {\n this.closeDialogWindow()\n }\n },\n getLabelWidth() {\n return this.isDesktop ? '120px' : '85px'\n }\n },\n methods: {\n closeDialogWindow() {\n this.$emit('closeWindow')\n },\n resetForm() {\n this.$nextTick(() => {\n this.$refs['newUserForm'].resetFields()\n })\n },\n submitForm(formName) {\n this.$refs[formName].validate((valid) => {\n if (valid) {\n this.$emit('createNewAccount', this.$data.newUserForm)\n } else {\n this.$message({\n type: 'error',\n message: this.$t('users.submitFormError')\n })\n return false\n }\n })\n },\n validateEmail(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyEmailError')))\n } else if (!this.validEmail(value)) {\n return callback(new Error(this.$t('users.invalidEmailError')))\n } else {\n return callback()\n }\n },\n validatePassword(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyPasswordError')))\n } else {\n return callback()\n }\n },\n validateUsername(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyNicknameError')))\n } else if (!this.validNickname(value)) {\n return callback(new Error(this.$t('users.invalidNicknameError')))\n } else {\n return callback()\n }\n },\n validEmail(email) {\n var re = /^[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])?)*$/\n return re.test(email)\n },\n validNickname(nickname) {\n var re = /^[a-zA-Z\\d]+$/\n return re.test(nickname)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.el-dialog__body {\n padding: 20px 20px 20px 20px\n}\n.create-account-form-item {\n margin-bottom: 20px;\n}\n.create-account-form-item-without-margin {\n margin-bottom: 0px;\n}\n\n@media only screen and (max-width:480px) {\n .create-user-dialog {\n width: 85%\n }\n .create-account-form-item {\n margin-bottom: 20px;\n }\n .el-dialog__body {\n padding: 20px 20px 20px 20px\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./NewAccountDialog.vue?vue&type=template&id=c89e4c22&\"\nimport script from \"./NewAccountDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./NewAccountDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NewAccountDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{attrs:{\"visible\":_vm.isVisible,\"show-close\":false,\"title\":_vm.$t('users.createAccount'),\"custom-class\":\"create-user-dialog\"},on:{\"update:visible\":function($event){_vm.isVisible=$event},\"open\":_vm.resetForm}},[_c('el-form',{ref:\"newUserForm\",attrs:{\"model\":_vm.newUserForm,\"rules\":_vm.rules,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{staticClass:\"create-account-form-item\",attrs:{\"label\":_vm.$t('users.username'),\"prop\":\"nickname\"}},[_c('el-input',{attrs:{\"name\":\"nickname\",\"autofocus\":\"\"},model:{value:(_vm.newUserForm.nickname),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"nickname\", $$v)},expression:\"newUserForm.nickname\"}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"create-account-form-item\",attrs:{\"label\":_vm.$t('users.email'),\"prop\":\"email\"}},[_c('el-input',{attrs:{\"name\":\"email\",\"type\":\"email\"},model:{value:(_vm.newUserForm.email),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"email\", $$v)},expression:\"newUserForm.email\"}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"create-account-form-item-without-margin\",attrs:{\"label\":_vm.$t('users.password'),\"prop\":\"password\"}},[_c('el-input',{attrs:{\"type\":\"password\",\"name\":\"password\",\"autocomplete\":\"off\"},model:{value:(_vm.newUserForm.password),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"password\", $$v)},expression:\"newUserForm.password\"}})],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('users.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submitForm('newUserForm')}}},[_vm._v(_vm._s(_vm.$t('users.create')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"users-container\">\n <div class=\"users-header-container\">\n <h1>\n {{ $t('users.users') }}\n <span class=\"user-count\">({{ normalizedUsersCount }})</span>\n </h1>\n <reboot-button/>\n </div>\n <div class=\"filter-container\">\n <users-filter/>\n <el-input\n :placeholder=\"$t('users.search')\"\n v-model=\"search\"\n prefix-icon=\"el-icon-search\"\n class=\"search\"\n @input=\"handleDebounceSearchInput\"/>\n </div>\n <div class=\"actions-container\">\n <el-button class=\"actions-button\" @click=\"createAccountDialogOpen = true\">\n <span class=\"create-account\">\n <i class=\"el-icon-plus\"/>\n {{ $t('users.createAccount') }}\n </span>\n </el-button>\n <multiple-users-menu\n :selected-users=\"selectedUsers\"\n @apply-action=\"clearSelection\"/>\n </div>\n <new-account-dialog\n :dialog-form-visible=\"createAccountDialogOpen\"\n @createNewAccount=\"createNewAccount\"\n @closeWindow=\"createAccountDialogOpen = false\"/>\n <el-table\n v-loading=\"loading\"\n ref=\"usersTable\"\n :data=\"users\"\n row-key=\"id\"\n style=\"width: 100%\"\n @row-click=\"handleRowClick($event)\"\n @selection-change=\"handleSelectionChange\">\n <el-table-column\n v-if=\"isDesktop\"\n type=\"selection\"\n reserve-selection\n width=\"44\"\n align=\"center\"/>\n <el-table-column :min-width=\"width\" :label=\"$t('users.id')\" prop=\"id\" />\n <el-table-column :label=\"$t('users.name')\" prop=\"nickname\">\n <template slot-scope=\"scope\">\n {{ scope.row.nickname }}\n <el-tag v-if=\"isDesktop\" type=\"info\" size=\"mini\">\n <span>{{ scope.row.local ? $t('users.local') : $t('users.external') }}</span>\n </el-tag>\n </template>\n </el-table-column>\n <el-table-column :min-width=\"width\" :label=\"$t('users.status')\">\n <template slot-scope=\"scope\">\n <el-tag v-if=\"!scope.row.deactivated & !scope.row.approval_pending\" type=\"success\">\n <span v-if=\"isDesktop\">{{ $t('users.active') }}</span>\n <i v-else class=\"el-icon-circle-check\"/>\n </el-tag>\n <el-tag v-if=\"scope.row.deactivated & !scope.row.approval_pending\" type=\"danger\">\n <span v-if=\"isDesktop\">{{ $t('users.deactivated') }}</span>\n <i v-else class=\"el-icon-circle-close\"/>\n </el-tag>\n <el-tooltip :content=\"$t('users.unapprovedAccount')\" effect=\"dark\">\n <el-tag v-if=\"scope.row.approval_pending\" type=\"info\">\n <span v-if=\"isDesktop\">{{ $t('users.unapproved') }}</span>\n <i v-else class=\"el-icon-warning-outline\"/>\n </el-tag>\n </el-tooltip>\n <el-tag v-if=\"scope.row.roles.admin\">\n <span>{{ isDesktop ? $t('users.admin') : getFirstLetter($t('users.admin')) }}</span>\n </el-tag>\n <el-tag v-if=\"scope.row.roles.moderator\">\n <span>{{ isDesktop ? $t('users.moderator') : getFirstLetter($t('users.moderator')) }}</span>\n </el-tag>\n <el-tooltip :content=\"$t('users.unconfirmedEmail')\" effect=\"dark\">\n <el-tag v-if=\"scope.row.confirmation_pending\" type=\"info\">\n {{ isDesktop ? $t('users.unconfirmed') : getFirstLetter($t('users.unconfirmed')) }}\n </el-tag>\n </el-tooltip>\n </template>\n </el-table-column>\n <el-table-column v-if=\"pendingView && isDesktop\" :label=\"$t('users.registrationReason')\">\n <template slot-scope=\"scope\">\n <el-tooltip\n v-if=\"regReason(scope.row.registration_reason)\"\n :content=\"scope.row.registration_reason\"\n popper-class=\"reason-tooltip\"\n effect=\"dark\">\n <span>\n \"{{ scope.row.registration_reason | truncate(100, '...') }}\"\n </span>\n </el-tooltip>\n </template>\n </el-table-column>\n <el-table-column :label=\"$t('users.actions')\" fixed=\"right\">\n <template slot-scope=\"scope\">\n <moderation-dropdown\n v-if=\"propertyExists(scope.row, 'nickname')\"\n :user=\"scope.row\"\n :page=\"'users'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <el-button v-else type=\"text\" disabled>\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div v-if=\"!loading\" class=\"pagination\">\n <el-pagination\n :total=\"usersCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport debounce from 'lodash.debounce'\nimport numeral from 'numeral'\nimport UsersFilter from './components/UsersFilter'\nimport MultipleUsersMenu from './components/MultipleUsersMenu'\nimport NewAccountDialog from './components/NewAccountDialog'\nimport ModerationDropdown from './components/ModerationDropdown'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from './components/ResetPasswordDialog'\n\nexport default {\n name: 'Users',\n components: {\n NewAccountDialog,\n ModerationDropdown,\n MultipleUsersMenu,\n RebootButton,\n ResetPasswordDialog,\n UsersFilter\n },\n filters: {\n truncate: function(text, length, suffix) {\n return text.length < length ? text : text.substring(0, length) + suffix\n }\n },\n data() {\n return {\n search: '',\n selectedUsers: [],\n createAccountDialogOpen: false,\n resetPasswordDialogOpen: false\n }\n },\n computed: {\n loading() {\n return this.$store.state.users.loading\n },\n normalizedUsersCount() {\n return numeral(this.$store.state.users.totalUsersCount).format('0a')\n },\n pageSize() {\n return this.$store.state.users.pageSize\n },\n currentPage() {\n return this.$store.state.users.currentPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n users() {\n return this.$store.state.users.fetchedUsers\n },\n usersCount() {\n return this.$store.state.users.totalUsersCount\n },\n pendingView() {\n return this.$store.state.users.filters['need_approval']\n },\n width() {\n return this.isMobile ? 55 : false\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.$store.dispatch('SearchUsers', { query, page: 1 })\n }, 500)\n },\n mounted: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchUsers', { page: 1 })\n },\n destroyed() {\n this.$store.dispatch('ClearUsersState')\n },\n methods: {\n clearSelection() {\n this.$refs.usersTable.clearSelection()\n },\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n async createNewAccount(accountData) {\n await this.$store.dispatch('CreateNewAccount', accountData)\n this.createAccountDialogOpen = false\n },\n getFirstLetter(str) {\n return str.charAt(0).toUpperCase()\n },\n handlePageChange(page) {\n const searchQuery = this.$store.state.users.searchQuery\n if (searchQuery === '') {\n this.$store.dispatch('FetchUsers', { page })\n } else {\n this.$store.dispatch('SearchUsers', { query: searchQuery, page })\n }\n },\n handleRowClick(row) {\n if (row.id) {\n this.$router.push({ name: 'UsersShow', params: { id: row.id }})\n }\n },\n handleSelectionChange(value) {\n this.$data.selectedUsers = value\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n },\n regReason(reason) {\n return reason && reason.length > 0\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.actions-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n}\n.actions-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 0 15px 10px 15px;\n .el-dropdown {\n margin-left: 10px;\n }\n}\n.active-tag {\n color: #409EFF;\n font-weight: 700;\n .el-icon-check {\n color: #409EFF;\n float: right;\n margin: 7px 0 0 15px;\n }\n}\n.el-dropdown-link:hover {\n cursor: pointer;\n color: #409EFF;\n }\n.create-account > .el-icon-plus {\n margin-right: 5px;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.reason-tooltip {\n max-width: 450px;\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.users-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.users-container {\n h1 {\n margin: 10px 0 0 15px;\n height: 40px;\n }\n .cell {\n word-break: break-word;\n }\n .el-table__row:hover {\n cursor: pointer;\n }\n .pagination {\n margin: 25px 0;\n text-align: center;\n }\n .reboot-button {\n margin: 0 15px 0 0;\n padding: 10px;\n width: 145px;\n }\n .search {\n width: 350px;\n float: right;\n margin-left: 10px;\n }\n .filter-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 15px\n }\n .user-count {\n color: gray;\n font-size: 28px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .password-reset-token-dialog {\n width: 85%\n }\n .users-container {\n h1 {\n margin: 0;\n }\n .actions-button {\n width: 100%;\n }\n .actions-container {\n display: flex;\n flex-direction: column;\n margin: 0 10px 7px 10px\n }\n .el-icon-arrow-down {\n font-size: 12px;\n }\n .search {\n width: 100%;\n margin-left: 0;\n }\n .filter-container {\n display: flex;\n height: 82px;\n flex-direction: column;\n margin: 0 10px\n }\n .el-table__row {\n .el-tag {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 30px;\n margin-bottom: 4px;\n font-weight: bold;\n }\n }\n .reboot-button {\n margin: 0;\n }\n .users-header-container {\n margin: 7px 10px 12px 10px;\n }\n .user-count {\n color: gray;\n font-size: 22px;\n }\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .actions-button {\n width: 49%;\n }\n .search {\n width: 49%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=7bdc8aed&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=439555de&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\""],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-03c5.1c694c49.js b/priv/static/adminfe/static/js/chunk-03c5.1c694c49.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-03c5"],{"9/5/":function(e,t,n){(function(t){var n="Expected a function",a=NaN,i="[object Symbol]",r=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt,u="object"==typeof t&&t&&t.Object===Object&&t,d="object"==typeof self&&self&&self.Object===Object&&self,h=u||d||Function("return this")(),p=Object.prototype.toString,f=Math.max,v=Math.min,m=function(){return h.Date.now()};function b(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function y(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&p.call(e)==i}(e))return a;if(b(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=b(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(r,"");var n=s.test(e);return n||c.test(e)?l(e.slice(2),n?2:8):o.test(e)?a:+e}e.exports=function(e,t,a){var i,r,o,s,c,l,u=0,d=!1,h=!1,p=!0;if("function"!=typeof e)throw new TypeError(n);function x(t){var n=i,a=r;return i=r=void 0,u=t,s=e.apply(a,n)}function g(e){var n=e-l;return void 0===l||n>=t||n<0||h&&e-u>=o}function C(){var e=m();if(g(e))return $(e);c=setTimeout(C,function(e){var n=t-(e-l);return h?v(n,o-(e-u)):n}(e))}function $(e){return c=void 0,p&&i?x(e):(i=r=void 0,s)}function _(){var e=m(),n=g(e);if(i=arguments,r=this,l=e,n){if(void 0===c)return function(e){return u=e,c=setTimeout(C,t),d?x(e):s}(l);if(h)return c=setTimeout(C,t),x(l)}return void 0===c&&(c=setTimeout(C,t)),s}return t=y(t)||0,b(a)&&(d=!!a.leading,o=(h="maxWait"in a)?f(y(a.maxWait)||0,t):o,p="trailing"in a?!!a.trailing:p),_.cancel=function(){void 0!==c&&clearTimeout(c),u=0,i=l=r=c=void 0},_.flush=function(){return void 0===c?s:$(m())},_}}).call(this,n("yLpj"))},ZlJG:function(e,t,n){"use strict";var a=n("c79v");n.n(a).a},c79v:function(e,t,n){},mAEd:function(e,t,n){"use strict";n.r(t);var a=n("9/5/"),i=n.n(a),r={name:"MediaProxyCache",components:{RebootButton:n("rIUS").a},data:function(){return{urls:"",ban:!1,search:"",selectedUrls:[]}},computed:{bannedUrls:function(){return this.$store.state.mediaProxyCache.bannedUrls},currentPage:function(){return this.$store.state.mediaProxyCache.currentPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.mediaProxyCache.loading},mediaProxyEnabled:function(){return this.$store.state.mediaProxyCache.mediaProxyEnabled},pageSize:function(){return this.$store.state.mediaProxyCache.pageSize},removeSelectedDisabled:function(){return 0===this.selectedUrls.length},urlsCount:function(){return this.$store.state.mediaProxyCache.totalUrlsCount}},created:function(){var e=this;this.handleDebounceSearchInput=i()(function(t){e.$store.dispatch("SearchUrls",{query:t,page:1})},500)},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchMediaProxySetting"),this.$store.dispatch("ListBannedUrls",{page:1})},methods:{enableMediaProxy:function(){var e=this;this.$confirm(this.$t("mediaProxyCache.confirmEnablingMediaProxy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$message({type:"success",message:e.$t("mediaProxyCache.enableMediaProxySuccessMessage")}),e.$store.dispatch("EnableMediaProxy")}).catch(function(){e.$message({type:"info",message:"Canceled"})})},evictURL:function(){var e=this.splitUrls(this.urls);this.$store.dispatch("PurgeUrls",{urls:e,ban:this.ban}),this.urls=""},handlePageChange:function(e){this.$store.dispatch("ListBannedUrls",{page:e})},handleSelectionChange:function(e){this.$data.selectedUrls=e},removeSelected:function(){var e=this.selectedUrls.map(function(e){return e.url});this.$store.dispatch("RemoveBannedUrls",e),this.selectedUrls=[]},removeUrl:function(e){this.$store.dispatch("RemoveBannedUrls",[e])},splitUrls:function(e){return e.split(",").map(function(e){return e.trim()}).filter(function(e){return e.length>0})}}},o=(n("ZlJG"),n("KHd+")),s=Object(o.a)(r,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"media-proxy-cache-container"},[n("div",{staticClass:"media-proxy-cache-header-container"},[n("h1",[e._v(e._s(e.$t("mediaProxyCache.mediaProxyCache")))]),e._v(" "),n("reboot-button")],1),e._v(" "),e.mediaProxyEnabled?n("div",[n("p",{staticClass:"media-proxy-cache-header"},[e._v(e._s(e.$t("mediaProxyCache.evictObjectsHeader")))]),e._v(" "),n("div",{staticClass:"url-input-container"},[n("el-input",{staticClass:"url-input",attrs:{placeholder:e.$t("mediaProxyCache.url"),type:"textarea",autosize:"",clearable:""},model:{value:e.urls,callback:function(t){e.urls=t},expression:"urls"}}),e._v(" "),n("el-checkbox",{model:{value:e.ban,callback:function(t){e.ban=t},expression:"ban"}},[e._v(e._s(e.$t("mediaProxyCache.ban")))]),e._v(" "),n("el-button",{staticClass:"evict-button",on:{click:e.evictURL}},[e._v(e._s(e.$t("mediaProxyCache.evict")))])],1),e._v(" "),n("span",{staticClass:"expl url-input-expl"},[e._v(e._s(e.$t("mediaProxyCache.multipleInput")))]),e._v(" "),n("p",{staticClass:"media-proxy-cache-header"},[e._v(e._s(e.$t("mediaProxyCache.listBannedUrlsHeader")))]),e._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],staticClass:"banned-urls-table",attrs:{data:e.bannedUrls},on:{"selection-change":e.handleSelectionChange}},[e._v(">\n "),n("el-table-column",{attrs:{type:"selection",align:"center",width:"55"}}),e._v(" "),n("el-table-column",{attrs:{"min-width":e.isDesktop?320:120,prop:"url"},scopedSlots:e._u([{key:"header",fn:function(t){return[n("el-input",{attrs:{placeholder:e.$t("users.search"),size:"mini","prefix-icon":"el-icon-search"},on:{input:e.handleDebounceSearchInput},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})]}}],null,!1,2430623903)}),e._v(" "),n("el-table-column",{scopedSlots:e._u([{key:"default",fn:function(t){return[n("el-button",{staticClass:"remove-url-button",attrs:{size:"mini"},on:{click:function(n){return e.removeUrl(t.row.url)}}},[e._v(e._s(e.$t("mediaProxyCache.remove")))])]}}],null,!1,3837797105)},[n("template",{slot:"header"},[n("el-button",{staticClass:"remove-url-button",attrs:{disabled:e.removeSelectedDisabled,size:"mini"},on:{click:function(t){return e.removeSelected()}}},[e._v(e._s(e.$t("mediaProxyCache.removeSelected")))])],1)],2)],1),e._v(" "),e.loading?e._e():n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:e.urlsCount,"current-page":e.currentPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handlePageChange}})],1)],1):n("div",{staticClass:"enable-mediaproxy-container"},[n("el-button",{attrs:{type:"text"},on:{click:e.enableMediaProxy}},[e._v(e._s(e.$t("mediaProxyCache.enable")))]),e._v("\n "+e._s(e.$t("mediaProxyCache.invalidationAndMediaProxy"))+"\n ")],1)])},[],!1,null,"4ee576de",null);s.options.__file="index.vue";t.default=s.exports}}]); -//# sourceMappingURL=chunk-03c5.1c694c49.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-03c5.1c694c49.js.map b/priv/static/adminfe/static/js/chunk-03c5.1c694c49.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/mediaProxyCache/index.vue?3e91","webpack:///./src/views/mediaProxyCache/index.vue?1a22","webpack:///./src/views/mediaProxyCache/index.vue?888e","webpack:///src/views/mediaProxyCache/index.vue","webpack:///./src/views/mediaProxyCache/index.vue"],"names":["global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_4ee576de_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","views_mediaProxyCachevue_type_script_lang_js_","name","components","RebootButton","data","urls","ban","search","selectedUrls","computed","bannedUrls","$store","state","mediaProxyCache","currentPage","isDesktop","app","device","loading","mediaProxyEnabled","pageSize","removeSelectedDisabled","length","urlsCount","totalUrlsCount","created","_this","handleDebounceSearchInput","lodash_debounce_default","query","dispatch","page","mounted","methods","enableMediaProxy","_this2","$confirm","$t","confirmButtonText","cancelButtonText","then","$message","message","catch","evictURL","splitUrls","handlePageChange","handleSelectionChange","$data","removeSelected","map","el","url","removeUrl","split","trim","filter","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","attrs","placeholder","autosize","clearable","model","callback","$$v","expression","on","click","directives","rawName","selection-change","align","width","min-width","prop","scopedSlots","_u","key","fn","scope","size","prefix-icon","input","$event","row","slot","disabled","_e","total","current-page","page-size","hide-on-single-page","layout","current-change","__file","__webpack_exports__"],"mappings":"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","file":"static/js/chunk-03c5.1c694c49.js","sourcesContent":["/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=4ee576de&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=4ee576de&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"media-proxy-cache-container\"},[_c('div',{staticClass:\"media-proxy-cache-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('mediaProxyCache.mediaProxyCache')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),(_vm.mediaProxyEnabled)?_c('div',[_c('p',{staticClass:\"media-proxy-cache-header\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.evictObjectsHeader')))]),_vm._v(\" \"),_c('div',{staticClass:\"url-input-container\"},[_c('el-input',{staticClass:\"url-input\",attrs:{\"placeholder\":_vm.$t('mediaProxyCache.url'),\"type\":\"textarea\",\"autosize\":\"\",\"clearable\":\"\"},model:{value:(_vm.urls),callback:function ($$v) {_vm.urls=$$v},expression:\"urls\"}}),_vm._v(\" \"),_c('el-checkbox',{model:{value:(_vm.ban),callback:function ($$v) {_vm.ban=$$v},expression:\"ban\"}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.ban')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"evict-button\",on:{\"click\":_vm.evictURL}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.evict')))])],1),_vm._v(\" \"),_c('span',{staticClass:\"expl url-input-expl\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.multipleInput')))]),_vm._v(\" \"),_c('p',{staticClass:\"media-proxy-cache-header\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.listBannedUrlsHeader')))]),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"banned-urls-table\",attrs:{\"data\":_vm.bannedUrls},on:{\"selection-change\":_vm.handleSelectionChange}},[_vm._v(\">\\n \"),_c('el-table-column',{attrs:{\"type\":\"selection\",\"align\":\"center\",\"width\":\"55\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.isDesktop ? 320 : 120,\"prop\":\"url\"},scopedSlots:_vm._u([{key:\"header\",fn:function(scope){return [_c('el-input',{attrs:{\"placeholder\":_vm.$t('users.search'),\"size\":\"mini\",\"prefix-icon\":\"el-icon-search\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})]}}],null,false,2430623903)}),_vm._v(\" \"),_c('el-table-column',{scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{staticClass:\"remove-url-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeUrl(scope.row.url)}}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.remove')))])]}}],null,false,3837797105)},[_c('template',{slot:\"header\"},[_c('el-button',{staticClass:\"remove-url-button\",attrs:{\"disabled\":_vm.removeSelectedDisabled,\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSelected()}}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.removeSelected')))])],1)],2)],1),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.urlsCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1):_c('div',{staticClass:\"enable-mediaproxy-container\"},[_c('el-button',{attrs:{\"type\":\"text\"},on:{\"click\":_vm.enableMediaProxy}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.enable')))]),_vm._v(\"\\n \"+_vm._s(_vm.$t('mediaProxyCache.invalidationAndMediaProxy'))+\"\\n \")],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"media-proxy-cache-container\">\n <div class=\"media-proxy-cache-header-container\">\n <h1>{{ $t('mediaProxyCache.mediaProxyCache') }}</h1>\n <reboot-button/>\n </div>\n <div v-if=\"mediaProxyEnabled\">\n <p class=\"media-proxy-cache-header\">{{ $t('mediaProxyCache.evictObjectsHeader') }}</p>\n <div class=\"url-input-container\">\n <el-input\n :placeholder=\"$t('mediaProxyCache.url')\"\n v-model=\"urls\"\n type=\"textarea\"\n autosize\n clearable\n class=\"url-input\"/>\n <el-checkbox v-model=\"ban\">{{ $t('mediaProxyCache.ban') }}</el-checkbox>\n <el-button class=\"evict-button\" @click=\"evictURL\">{{ $t('mediaProxyCache.evict') }}</el-button>\n </div>\n <span class=\"expl url-input-expl\">{{ $t('mediaProxyCache.multipleInput') }}</span>\n <p class=\"media-proxy-cache-header\">{{ $t('mediaProxyCache.listBannedUrlsHeader') }}</p>\n <el-table\n v-loading=\"loading\"\n :data=\"bannedUrls\"\n class=\"banned-urls-table\"\n @selection-change=\"handleSelectionChange\">>\n <el-table-column\n type=\"selection\"\n align=\"center\"\n width=\"55\"/>\n <el-table-column :min-width=\"isDesktop ? 320 : 120\" prop=\"url\">\n <template slot=\"header\" slot-scope=\"scope\">\n <el-input\n :placeholder=\"$t('users.search')\"\n v-model=\"search\"\n size=\"mini\"\n prefix-icon=\"el-icon-search\"\n @input=\"handleDebounceSearchInput\"/>\n </template>\n </el-table-column>\n <el-table-column>\n <template slot=\"header\">\n <el-button\n :disabled=\"removeSelectedDisabled\"\n size=\"mini\"\n class=\"remove-url-button\"\n @click=\"removeSelected()\">{{ $t('mediaProxyCache.removeSelected') }}</el-button>\n </template>\n <template slot-scope=\"scope\">\n <el-button\n size=\"mini\"\n class=\"remove-url-button\"\n @click=\"removeUrl(scope.row.url)\">{{ $t('mediaProxyCache.remove') }}</el-button>\n </template>\n </el-table-column>\n </el-table>\n <div v-if=\"!loading\" class=\"pagination\">\n <el-pagination\n :total=\"urlsCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n <div v-else class=\"enable-mediaproxy-container\">\n <el-button type=\"text\" @click=\"enableMediaProxy\">{{ $t('mediaProxyCache.enable') }}</el-button>\n {{ $t('mediaProxyCache.invalidationAndMediaProxy') }}\n </div>\n </div>\n</template>\n\n<script>\nimport debounce from 'lodash.debounce'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n name: 'MediaProxyCache',\n components: { RebootButton },\n data() {\n return {\n urls: '',\n ban: false,\n search: '',\n selectedUrls: []\n }\n },\n computed: {\n bannedUrls() {\n return this.$store.state.mediaProxyCache.bannedUrls\n },\n currentPage() {\n return this.$store.state.mediaProxyCache.currentPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.mediaProxyCache.loading\n },\n mediaProxyEnabled() {\n return this.$store.state.mediaProxyCache.mediaProxyEnabled\n },\n pageSize() {\n return this.$store.state.mediaProxyCache.pageSize\n },\n removeSelectedDisabled() {\n return this.selectedUrls.length === 0\n },\n urlsCount() {\n return this.$store.state.mediaProxyCache.totalUrlsCount\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.$store.dispatch('SearchUrls', { query, page: 1 })\n }, 500)\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchMediaProxySetting')\n this.$store.dispatch('ListBannedUrls', { page: 1 })\n },\n methods: {\n enableMediaProxy() {\n this.$confirm(\n this.$t('mediaProxyCache.confirmEnablingMediaProxy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('mediaProxyCache.enableMediaProxySuccessMessage')\n })\n this.$store.dispatch('EnableMediaProxy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n evictURL() {\n const urls = this.splitUrls(this.urls)\n this.$store.dispatch('PurgeUrls', { urls, ban: this.ban })\n this.urls = ''\n },\n handlePageChange(page) {\n this.$store.dispatch('ListBannedUrls', { page })\n },\n handleSelectionChange(value) {\n this.$data.selectedUrls = value\n },\n removeSelected() {\n const urls = this.selectedUrls.map(el => el.url)\n this.$store.dispatch('RemoveBannedUrls', urls)\n this.selectedUrls = []\n },\n removeUrl(url) {\n this.$store.dispatch('RemoveBannedUrls', [url])\n },\n splitUrls(urls) {\n return urls.split(',').map(url => url.trim()).filter(el => el.length > 0)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\nh1 {\n margin: 0;\n}\n.enable-mediaproxy-container {\n margin: 10px 15px;\n button {\n font-size: 16px;\n }\n}\n.expl {\n color: #666666;\n font-size: 13px;\n line-height: 22px;\n margin: 5px 0 0 0;\n overflow-wrap: break-word;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.banned-urls-table {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n.evict-button {\n margin-left: 15px;\n}\n.media-proxy-cache-header {\n margin-left: 15px;\n margin-top: 22px;\n font-weight: 500;\n}\n.media-proxy-cache-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n}\n.pagination {\n margin: 25px 0;\n text-align: center;\n}\n.remove-url-button {\n width: 150px;\n}\n.url-input {\n margin-right: 15px;\n}\n.url-input-container {\n display: flex;\n align-items: baseline;\n margin: 15px 15px 5px 15px;\n}\n.url-input-expl {\n margin-left: 15px;\n}\n\n@media only screen and (max-width:480px) {\n .url-input {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4ee576de&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=4ee576de&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4ee576de\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-176e.5334cbff.js b/priv/static/adminfe/static/js/chunk-176e.5334cbff.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-176e"],{FtQ1:function(s,t,e){"use strict";e.r(t);var n=e("RIqP"),a=e.n(n),i=e("i7Kn"),o=e("ot3S"),r=e("rIUS"),c=e("ZhIB"),u=e.n(c),l={name:"Statuses",components:{MultipleUsersMenu:i.a,RebootButton:r.a,Status:o.a},data:function(){return{selectedUsers:[]}},computed:{allLoaded:function(){return this.$store.state.status.statusesByInstance.allLoaded},buttonLoading:function(){return this.$store.state.status.statusesByInstance.buttonLoading},currentInstance:function(){return this.selectedInstance===this.$store.state.user.authHost},instances:function(){return[this.$store.state.user.authHost].concat(a()(this.$store.state.peers.fetchedPeers))},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loadingPeers:function(){return this.$store.state.peers.loading},page:function(){return this.$store.state.status.statusesByInstance.page},pageSize:function(){return this.$store.state.status.statusesByInstance.pageSize},selectedInstance:{get:function(){return this.$store.state.status.statusesByInstance.selectedInstance},set:function(s){this.$store.dispatch("HandleFilterChange",s)}},showLocal:{get:function(){return this.$store.state.status.statusesByInstance.showLocal},set:function(s){this.$store.dispatch("HandleLocalCheckboxChange",s)}},showPrivate:{get:function(){return this.$store.state.status.statusesByInstance.showPrivate},set:function(s){this.$store.dispatch("HandleGodmodeCheckboxChange",s)}},statuses:function(){return this.$store.state.status.fetchedStatuses},statusVisibility:function(){return this.$store.state.status.statusVisibility}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchPeers"),this.$store.dispatch("FetchStatusesCount")},destroyed:function(){this.clearSelection(),this.$store.dispatch("ClearState")},methods:{clearSelection:function(){this.selectedUsers=[]},handleFilterChange:function(){this.$store.dispatch("HandlePageChange",1),this.$store.dispatch("FetchStatusesByInstance")},handleLoadMore:function(){this.$store.dispatch("HandlePageChange",this.page+1),this.$store.dispatch("FetchStatusesPageByInstance")},handleStatusSelection:function(s){void 0===this.selectedUsers.find(function(t){return s.id===t.id})&&(this.selectedUsers=[].concat(a()(this.selectedUsers),[s]))},normalizedCount:function(s){return u()(s).format("0a")}}},j=(e("QOJ7"),e("KHd+")),h=Object(j.a)(l,function(){var s=this,t=s.$createElement,e=s._self._c||t;return s.loadingPeers?s._e():e("div",{staticClass:"statuses-container"},[e("div",{staticClass:"statuses-header"},[e("h1",[s._v("\n "+s._s(s.$t("statuses.statuses"))+"\n ")]),s._v(" "),e("reboot-button")],1),s._v(" "),e("div",{staticClass:"statuses-header-container"},[e("el-button-group",[e("el-button",{staticClass:"direct-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.direct"))+": "+s._s(s.normalizedCount(s.statusVisibility.direct))+"\n ")]),s._v(" "),e("el-button",{staticClass:"private-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.private"))+": "+s._s(s.normalizedCount(s.statusVisibility.private))+"\n ")]),s._v(" "),e("el-button",{staticClass:"public-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.public"))+": "+s._s(s.normalizedCount(s.statusVisibility.public))+"\n ")]),s._v(" "),e("el-button",{staticClass:"unlisted-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.unlisted"))+": "+s._s(s.normalizedCount(s.statusVisibility.unlisted))+"\n ")])],1)],1),s._v(" "),e("div",{staticClass:"filter-container"},[e("el-select",{staticClass:"select-instance",attrs:{placeholder:s.$t("statuses.instanceFilter"),"no-data-text":s.$t("statuses.noInstances"),filterable:"",clearable:""},on:{change:s.handleFilterChange},model:{value:s.selectedInstance,callback:function(t){s.selectedInstance=t},expression:"selectedInstance"}},s._l(s.instances,function(s,t){return e("el-option",{key:t,attrs:{label:s,value:s}})}),1),s._v(" "),e("multiple-users-menu",{attrs:{"selected-users":s.selectedUsers},on:{"apply-action":s.clearSelection}})],1),s._v(" "),s.currentInstance?e("div",{staticClass:"checkbox-container"},[e("el-checkbox",{staticClass:"show-private-statuses",model:{value:s.showLocal,callback:function(t){s.showLocal=t},expression:"showLocal"}},[s._v("\n "+s._s(s.$t("statuses.onlyLocalStatuses"))+"\n ")]),s._v(" "),e("el-checkbox",{staticClass:"show-private-statuses",model:{value:s.showPrivate,callback:function(t){s.showPrivate=t},expression:"showPrivate"}},[s._v("\n "+s._s(s.$t("statuses.showPrivateStatuses"))+"\n ")])],1):s._e(),s._v(" "),0===s.statuses.length?e("p",{staticClass:"no-statuses"},[s._v(s._s(s.$t("userProfile.noStatuses")))]):s._e(),s._v(" "),s._l(s.statuses,function(t){return e("div",{key:t.id,staticClass:"status-container"},[e("status",{attrs:{status:t,account:t.account,"show-checkbox":s.isDesktop,"fetch-statuses-by-instance":!0},on:{"status-selection":s.handleStatusSelection}})],1)}),s._v(" "),s.statuses.length>0?e("div",{staticClass:"statuses-pagination"},[s.allLoaded?e("el-button",{attrs:{icon:"el-icon-check",circle:""}}):e("el-button",{attrs:{loading:s.buttonLoading},on:{click:s.handleLoadMore}},[s._v(s._s(s.$t("statuses.loadMore")))])],1):s._e()],2)},[],!1,null,null,null);h.options.__file="index.vue";t.default=h.exports},KmHg:function(s,t,e){},QOJ7:function(s,t,e){"use strict";var n=e("KmHg");e.n(n).a},RnhZ:function(s,t,e){var n={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function a(s){var t=i(s);return e(t)}function i(s){if(!e.o(n,s)){var t=new Error("Cannot find module '"+s+"'");throw t.code="MODULE_NOT_FOUND",t}return n[s]}a.keys=function(){return Object.keys(n)},a.resolve=i,s.exports=a,a.id="RnhZ"}}]); +//# sourceMappingURL=chunk-176e.5334cbff.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-176e.5334cbff.js.map b/priv/static/adminfe/static/js/chunk-176e.5334cbff.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/statuses/index.vue?ffa7","webpack:///./src/views/statuses/index.vue?1423","webpack:///src/views/statuses/index.vue","webpack:///./src/views/statuses/index.vue","webpack:///./src/views/statuses/index.vue?f25c","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$"],"names":["views_statusesvue_type_script_lang_js_","name","components","MultipleUsersMenu","RebootButton","Status","data","selectedUsers","computed","allLoaded","this","$store","state","status","statusesByInstance","buttonLoading","currentInstance","selectedInstance","user","authHost","instances","concat","toConsumableArray_default","peers","fetchedPeers","isDesktop","app","device","isMobile","isTablet","loadingPeers","loading","page","pageSize","get","set","instance","dispatch","showLocal","value","showPrivate","statuses","fetchedStatuses","statusVisibility","mounted","destroyed","clearSelection","methods","handleFilterChange","handleLoadMore","handleStatusSelection","undefined","find","selectedUser","id","normalizedCount","count","numeral_default","format","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","_e","staticClass","_v","_s","$t","attrs","plain","direct","private","public","unlisted","placeholder","no-data-text","filterable","clearable","on","change","model","callback","$$v","expression","_l","index","key","label","selected-users","apply-action","length","account","show-checkbox","fetch-statuses-by-instance","status-selection","icon","circle","click","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve","module","exports"],"mappings":"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CAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,QAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,QAIA,SAAAC,EAAAC,GACA,IAAAlU,EAAAmU,EAAAD,GACA,OAAA9Q,EAAApD,GAEA,SAAAmU,EAAAD,GACA,IAAA9Q,EAAAgR,EAAA9Q,EAAA4Q,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAA/Q,EAAA4Q,GAEAD,EAAAO,KAAA,WACA,OAAAlU,OAAAkU,KAAAlR,IAEA2Q,EAAAQ,QAAAN,EACAO,EAAAC,QAAAV,EACAA,EAAAjU,GAAA","file":"static/js/chunk-176e.5334cbff.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loadingPeers)?_c('div',{staticClass:\"statuses-container\"},[_c('div',{staticClass:\"statuses-header\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.statuses'))+\"\\n \")]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"statuses-header-container\"},[_c('el-button-group',[_c('el-button',{staticClass:\"direct-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.direct'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.direct))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"private-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.private'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.private))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"public-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.public'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.public))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"unlisted-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.unlisted'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.unlisted))+\"\\n \")])],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"filter-container\"},[_c('el-select',{staticClass:\"select-instance\",attrs:{\"placeholder\":_vm.$t('statuses.instanceFilter'),\"no-data-text\":_vm.$t('statuses.noInstances'),\"filterable\":\"\",\"clearable\":\"\"},on:{\"change\":_vm.handleFilterChange},model:{value:(_vm.selectedInstance),callback:function ($$v) {_vm.selectedInstance=$$v},expression:\"selectedInstance\"}},_vm._l((_vm.instances),function(instance,index){return _c('el-option',{key:index,attrs:{\"label\":instance,\"value\":instance}})}),1),_vm._v(\" \"),_c('multiple-users-menu',{attrs:{\"selected-users\":_vm.selectedUsers},on:{\"apply-action\":_vm.clearSelection}})],1),_vm._v(\" \"),(_vm.currentInstance)?_c('div',{staticClass:\"checkbox-container\"},[_c('el-checkbox',{staticClass:\"show-private-statuses\",model:{value:(_vm.showLocal),callback:function ($$v) {_vm.showLocal=$$v},expression:\"showLocal\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.onlyLocalStatuses'))+\"\\n \")]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.statuses),function(status){return _c('div',{key:status.id,staticClass:\"status-container\"},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":_vm.isDesktop,\"fetch-statuses-by-instance\":true},on:{\"status-selection\":_vm.handleStatusSelection}})],1)}),_vm._v(\" \"),(_vm.statuses.length > 0)?_c('div',{staticClass:\"statuses-pagination\"},[(!_vm.allLoaded)?_c('el-button',{attrs:{\"loading\":_vm.buttonLoading},on:{\"click\":_vm.handleLoadMore}},[_vm._v(_vm._s(_vm.$t('statuses.loadMore')))]):_c('el-button',{attrs:{\"icon\":\"el-icon-check\",\"circle\":\"\"}})],1):_vm._e()],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loadingPeers\" class=\"statuses-container\">\n <div class=\"statuses-header\">\n <h1>\n {{ $t('statuses.statuses') }}\n </h1>\n <reboot-button/>\n </div>\n <div class=\"statuses-header-container\">\n <el-button-group>\n <el-button plain class=\"direct-button\">\n {{ $t('statuses.direct') }}: {{ normalizedCount(statusVisibility.direct) }}\n </el-button>\n <el-button plain class=\"private-button\">\n {{ $t('statuses.private') }}: {{ normalizedCount(statusVisibility.private) }}\n </el-button>\n <el-button plain class=\"public-button\">\n {{ $t('statuses.public') }}: {{ normalizedCount(statusVisibility.public) }}\n </el-button>\n <el-button plain class=\"unlisted-button\">\n {{ $t('statuses.unlisted') }}: {{ normalizedCount(statusVisibility.unlisted) }}\n </el-button>\n </el-button-group>\n </div>\n <div class=\"filter-container\">\n <el-select\n v-model=\"selectedInstance\"\n :placeholder=\"$t('statuses.instanceFilter')\"\n :no-data-text=\"$t('statuses.noInstances')\"\n filterable\n clearable\n class=\"select-instance\"\n @change=\"handleFilterChange\">\n <el-option\n v-for=\"(instance,index) in instances\"\n :key=\"index\"\n :label=\"instance\"\n :value=\"instance\"/>\n </el-select>\n <multiple-users-menu\n :selected-users=\"selectedUsers\"\n @apply-action=\"clearSelection\"/>\n </div>\n <div v-if=\"currentInstance\" class=\"checkbox-container\">\n <el-checkbox v-model=\"showLocal\" class=\"show-private-statuses\">\n {{ $t('statuses.onlyLocalStatuses') }}\n </el-checkbox>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n </div>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n <div v-for=\"status in statuses\" :key=\"status.id\" class=\"status-container\">\n <status\n :status=\"status\"\n :account=\"status.account\"\n :show-checkbox=\"isDesktop\"\n :fetch-statuses-by-instance=\"true\"\n @status-selection=\"handleStatusSelection\" />\n </div>\n <div v-if=\"statuses.length > 0\" class=\"statuses-pagination\">\n <el-button v-if=\"!allLoaded\" :loading=\"buttonLoading\" @click=\"handleLoadMore\">{{ $t('statuses.loadMore') }}</el-button>\n <el-button v-else icon=\"el-icon-check\" circle/>\n </div>\n </div>\n</template>\n\n<script>\nimport MultipleUsersMenu from '@/views/users/components/MultipleUsersMenu'\nimport Status from '@/components/Status'\nimport RebootButton from '@/components/RebootButton'\nimport numeral from 'numeral'\n\nexport default {\n name: 'Statuses',\n components: {\n MultipleUsersMenu,\n RebootButton,\n Status\n },\n data() {\n return {\n selectedUsers: []\n }\n },\n computed: {\n allLoaded() {\n return this.$store.state.status.statusesByInstance.allLoaded\n },\n buttonLoading() {\n return this.$store.state.status.statusesByInstance.buttonLoading\n },\n currentInstance() {\n return this.selectedInstance === this.$store.state.user.authHost\n },\n instances() {\n return [this.$store.state.user.authHost, ...this.$store.state.peers.fetchedPeers]\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loadingPeers() {\n return this.$store.state.peers.loading\n },\n page() {\n return this.$store.state.status.statusesByInstance.page\n },\n pageSize() {\n return this.$store.state.status.statusesByInstance.pageSize\n },\n selectedInstance: {\n get() {\n return this.$store.state.status.statusesByInstance.selectedInstance\n },\n set(instance) {\n this.$store.dispatch('HandleFilterChange', instance)\n }\n },\n showLocal: {\n get() {\n return this.$store.state.status.statusesByInstance.showLocal\n },\n set(value) {\n this.$store.dispatch('HandleLocalCheckboxChange', value)\n }\n },\n showPrivate: {\n get() {\n return this.$store.state.status.statusesByInstance.showPrivate\n },\n set(value) {\n this.$store.dispatch('HandleGodmodeCheckboxChange', value)\n }\n },\n statuses() {\n return this.$store.state.status.fetchedStatuses\n },\n statusVisibility() {\n return this.$store.state.status.statusVisibility\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchPeers')\n this.$store.dispatch('FetchStatusesCount')\n },\n destroyed() {\n this.clearSelection()\n this.$store.dispatch('ClearState')\n },\n methods: {\n clearSelection() {\n this.selectedUsers = []\n },\n handleFilterChange() {\n this.$store.dispatch('HandlePageChange', 1)\n this.$store.dispatch('FetchStatusesByInstance')\n },\n handleLoadMore() {\n this.$store.dispatch('HandlePageChange', this.page + 1)\n\n this.$store.dispatch('FetchStatusesPageByInstance')\n },\n handleStatusSelection(user) {\n if (this.selectedUsers.find(selectedUser => user.id === selectedUser.id) !== undefined) {\n return\n }\n this.selectedUsers = [...this.selectedUsers, user]\n },\n normalizedCount(count) {\n return numeral(count).format('0a')\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.statuses-container {\n padding: 0 15px;\n h1 {\n margin: 10px 0 15px 0;\n }\n .status-container {\n margin: 0 0 10px;\n }\n}\n.statuses-header-container {\n .el-button.is-plain:focus, .el-button.is-plain:hover {\n border-color: #DCDFE6;\n color: #606266;\n cursor: default\n }\n}\n.checkbox-container {\n margin-bottom: 15px;\n}\n.filter-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 22px 0 15px 0;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n.select-instance {\n width: 396px;\n}\n.statuses-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.statuses-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.statuses-pagination {\n padding: 15px 0;\n text-align: center;\n}\n\n@media only screen and (max-width:480px) {\n .checkbox-container {\n margin-bottom: 10px;\n }\n .filter-container {\n display: flex;\n height: 36px;\n flex-direction: column;\n margin: 10px 0;\n }\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n .select-instance {\n width: 100%;\n }\n .statuses-header-container {\n flex-direction: column;\n align-items: flex-start;\n .el-button-group {\n width: 100%;\n }\n .el-button {\n padding: 10px 6.5px;\n width: 50%;\n }\n .el-button-group>.el-button:first-child {\n border-bottom-left-radius: 0;\n }\n .el-button-group>.el-button:not(:first-child):not(:last-child).private-button {\n border-top-right-radius: 4px;\n }\n .el-button-group>.el-button:not(:first-child):not(:last-child).public-button {\n border-bottom-left-radius: 4px;\n border-top: white;\n }\n .el-button-group>.el-button:last-child {\n border-top-right-radius: 0;\n border-top: white;\n }\n .reboot-button {\n margin: 10px 0 0 0;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4ee51084&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-176e.be050aba.js b/priv/static/adminfe/static/js/chunk-176e.be050aba.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-176e"],{FtQ1:function(s,t,e){"use strict";e.r(t);var n=e("RIqP"),a=e.n(n),i=e("i7Kn"),o=e("ot3S"),r=e("rIUS"),c=e("ZhIB"),u=e.n(c),l={name:"Statuses",components:{MultipleUsersMenu:i.a,RebootButton:r.a,Status:o.a},data:function(){return{selectedUsers:[]}},computed:{allLoaded:function(){return this.$store.state.status.statusesByInstance.allLoaded},buttonLoading:function(){return this.$store.state.status.statusesByInstance.buttonLoading},currentInstance:function(){return this.selectedInstance===this.$store.state.user.authHost},instances:function(){return[this.$store.state.user.authHost].concat(a()(this.$store.state.peers.fetchedPeers))},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loadingPeers:function(){return this.$store.state.peers.loading},page:function(){return this.$store.state.status.statusesByInstance.page},pageSize:function(){return this.$store.state.status.statusesByInstance.pageSize},selectedInstance:{get:function(){return this.$store.state.status.statusesByInstance.selectedInstance},set:function(s){this.$store.dispatch("HandleFilterChange",s)}},showLocal:{get:function(){return this.$store.state.status.statusesByInstance.showLocal},set:function(s){this.$store.dispatch("HandleLocalCheckboxChange",s)}},showPrivate:{get:function(){return this.$store.state.status.statusesByInstance.showPrivate},set:function(s){this.$store.dispatch("HandleGodmodeCheckboxChange",s)}},statuses:function(){return this.$store.state.status.fetchedStatuses},statusVisibility:function(){return this.$store.state.status.statusVisibility}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchPeers"),this.$store.dispatch("FetchStatusesCount")},destroyed:function(){this.clearSelection(),this.$store.dispatch("ClearState")},methods:{clearSelection:function(){this.selectedUsers=[]},handleFilterChange:function(){this.$store.dispatch("HandlePageChange",1),this.$store.dispatch("FetchStatusesByInstance")},handleLoadMore:function(){this.$store.dispatch("HandlePageChange",this.page+1),this.$store.dispatch("FetchStatusesPageByInstance")},handleStatusSelection:function(s){void 0===this.selectedUsers.find(function(t){return s.id===t.id})&&(this.selectedUsers=[].concat(a()(this.selectedUsers),[s]))},normalizedCount:function(s){return u()(s).format("0a")}}},j=(e("QOJ7"),e("KHd+")),h=Object(j.a)(l,function(){var s=this,t=s.$createElement,e=s._self._c||t;return s.loadingPeers?s._e():e("div",{staticClass:"statuses-container"},[e("div",{staticClass:"statuses-header"},[e("h1",[s._v("\n "+s._s(s.$t("statuses.statuses"))+"\n ")]),s._v(" "),e("reboot-button")],1),s._v(" "),e("div",{staticClass:"statuses-header-container"},[e("el-button-group",[e("el-button",{staticClass:"direct-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.direct"))+": "+s._s(s.normalizedCount(s.statusVisibility.direct))+"\n ")]),s._v(" "),e("el-button",{staticClass:"private-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.private"))+": "+s._s(s.normalizedCount(s.statusVisibility.private))+"\n ")]),s._v(" "),e("el-button",{staticClass:"public-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.public"))+": "+s._s(s.normalizedCount(s.statusVisibility.public))+"\n ")]),s._v(" "),e("el-button",{staticClass:"unlisted-button",attrs:{plain:""}},[s._v("\n "+s._s(s.$t("statuses.unlisted"))+": "+s._s(s.normalizedCount(s.statusVisibility.unlisted))+"\n ")])],1)],1),s._v(" "),e("div",{staticClass:"filter-container"},[e("el-select",{staticClass:"select-instance",attrs:{placeholder:s.$t("statuses.instanceFilter"),"no-data-text":s.$t("statuses.noInstances"),filterable:"",clearable:""},on:{change:s.handleFilterChange},model:{value:s.selectedInstance,callback:function(t){s.selectedInstance=t},expression:"selectedInstance"}},s._l(s.instances,function(s,t){return e("el-option",{key:t,attrs:{label:s,value:s}})}),1),s._v(" "),e("multiple-users-menu",{attrs:{"selected-users":s.selectedUsers},on:{"apply-action":s.clearSelection}})],1),s._v(" "),s.currentInstance?e("div",{staticClass:"checkbox-container"},[e("el-checkbox",{staticClass:"show-private-statuses",model:{value:s.showLocal,callback:function(t){s.showLocal=t},expression:"showLocal"}},[s._v("\n "+s._s(s.$t("statuses.onlyLocalStatuses"))+"\n ")]),s._v(" "),e("el-checkbox",{staticClass:"show-private-statuses",model:{value:s.showPrivate,callback:function(t){s.showPrivate=t},expression:"showPrivate"}},[s._v("\n "+s._s(s.$t("statuses.showPrivateStatuses"))+"\n ")])],1):s._e(),s._v(" "),0===s.statuses.length?e("p",{staticClass:"no-statuses"},[s._v(s._s(s.$t("userProfile.noStatuses")))]):s._e(),s._v(" "),s._l(s.statuses,function(t){return e("div",{key:t.id,staticClass:"status-container"},[e("status",{attrs:{status:t,account:t.account,"show-checkbox":s.isDesktop,"fetch-statuses-by-instance":!0},on:{"status-selection":s.handleStatusSelection}})],1)}),s._v(" "),s.statuses.length>0?e("div",{staticClass:"statuses-pagination"},[s.allLoaded?e("el-button",{attrs:{icon:"el-icon-check",circle:""}}):e("el-button",{attrs:{loading:s.buttonLoading},on:{click:s.handleLoadMore}},[s._v(s._s(s.$t("statuses.loadMore")))])],1):s._e()],2)},[],!1,null,null,null);h.options.__file="index.vue";t.default=h.exports},KmHg:function(s,t,e){},QOJ7:function(s,t,e){"use strict";var n=e("KmHg");e.n(n).a},RnhZ:function(s,t,e){var n={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function a(s){var t=i(s);return e(t)}function i(s){if(!e.o(n,s)){var t=new Error("Cannot find module '"+s+"'");throw t.code="MODULE_NOT_FOUND",t}return n[s]}a.keys=function(){return Object.keys(n)},a.resolve=i,s.exports=a,a.id="RnhZ"}}]); -//# sourceMappingURL=chunk-176e.be050aba.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-176e.be050aba.js.map b/priv/static/adminfe/static/js/chunk-176e.be050aba.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/statuses/index.vue?ffa7","webpack:///./src/views/statuses/index.vue?1423","webpack:///src/views/statuses/index.vue","webpack:///./src/views/statuses/index.vue","webpack:///./src/views/statuses/index.vue?f25c","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$"],"names":["views_statusesvue_type_script_lang_js_","name","components","MultipleUsersMenu","RebootButton","Status","data","selectedUsers","computed","allLoaded","this","$store","state","status","statusesByInstance","buttonLoading","currentInstance","selectedInstance","user","authHost","instances","concat","toConsumableArray_default","peers","fetchedPeers","isDesktop","app","device","isMobile","isTablet","loadingPeers","loading","page","pageSize","get","set","instance","dispatch","showLocal","value","showPrivate","statuses","fetchedStatuses","statusVisibility","mounted","destroyed","clearSelection","methods","handleFilterChange","handleLoadMore","handleStatusSelection","undefined","find","selectedUser","id","normalizedCount","count","numeral_default","format","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","_e","staticClass","_v","_s","$t","attrs","plain","direct","private","public","unlisted","placeholder","no-data-text","filterable","clearable","on","change","model","callback","$$v","expression","_l","index","key","label","selected-users","apply-action","length","account","show-checkbox","fetch-statuses-by-instance","status-selection","icon","circle","click","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve","module","exports"],"mappings":"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CAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,QAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,QAIA,SAAAC,EAAAC,GACA,IAAAlU,EAAAmU,EAAAD,GACA,OAAA9Q,EAAApD,GAEA,SAAAmU,EAAAD,GACA,IAAA9Q,EAAAgR,EAAA9Q,EAAA4Q,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAA/Q,EAAA4Q,GAEAD,EAAAO,KAAA,WACA,OAAAlU,OAAAkU,KAAAlR,IAEA2Q,EAAAQ,QAAAN,EACAO,EAAAC,QAAAV,EACAA,EAAAjU,GAAA","file":"static/js/chunk-176e.be050aba.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loadingPeers)?_c('div',{staticClass:\"statuses-container\"},[_c('div',{staticClass:\"statuses-header\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.statuses'))+\"\\n \")]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"statuses-header-container\"},[_c('el-button-group',[_c('el-button',{staticClass:\"direct-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.direct'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.direct))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"private-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.private'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.private))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"public-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.public'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.public))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{staticClass:\"unlisted-button\",attrs:{\"plain\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.unlisted'))+\": \"+_vm._s(_vm.normalizedCount(_vm.statusVisibility.unlisted))+\"\\n \")])],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"filter-container\"},[_c('el-select',{staticClass:\"select-instance\",attrs:{\"placeholder\":_vm.$t('statuses.instanceFilter'),\"no-data-text\":_vm.$t('statuses.noInstances'),\"filterable\":\"\",\"clearable\":\"\"},on:{\"change\":_vm.handleFilterChange},model:{value:(_vm.selectedInstance),callback:function ($$v) {_vm.selectedInstance=$$v},expression:\"selectedInstance\"}},_vm._l((_vm.instances),function(instance,index){return _c('el-option',{key:index,attrs:{\"label\":instance,\"value\":instance}})}),1),_vm._v(\" \"),_c('multiple-users-menu',{attrs:{\"selected-users\":_vm.selectedUsers},on:{\"apply-action\":_vm.clearSelection}})],1),_vm._v(\" \"),(_vm.currentInstance)?_c('div',{staticClass:\"checkbox-container\"},[_c('el-checkbox',{staticClass:\"show-private-statuses\",model:{value:(_vm.showLocal),callback:function ($$v) {_vm.showLocal=$$v},expression:\"showLocal\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.onlyLocalStatuses'))+\"\\n \")]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.statuses),function(status){return _c('div',{key:status.id,staticClass:\"status-container\"},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":_vm.isDesktop,\"fetch-statuses-by-instance\":true},on:{\"status-selection\":_vm.handleStatusSelection}})],1)}),_vm._v(\" \"),(_vm.statuses.length > 0)?_c('div',{staticClass:\"statuses-pagination\"},[(!_vm.allLoaded)?_c('el-button',{attrs:{\"loading\":_vm.buttonLoading},on:{\"click\":_vm.handleLoadMore}},[_vm._v(_vm._s(_vm.$t('statuses.loadMore')))]):_c('el-button',{attrs:{\"icon\":\"el-icon-check\",\"circle\":\"\"}})],1):_vm._e()],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loadingPeers\" class=\"statuses-container\">\n <div class=\"statuses-header\">\n <h1>\n {{ $t('statuses.statuses') }}\n </h1>\n <reboot-button/>\n </div>\n <div class=\"statuses-header-container\">\n <el-button-group>\n <el-button plain class=\"direct-button\">\n {{ $t('statuses.direct') }}: {{ normalizedCount(statusVisibility.direct) }}\n </el-button>\n <el-button plain class=\"private-button\">\n {{ $t('statuses.private') }}: {{ normalizedCount(statusVisibility.private) }}\n </el-button>\n <el-button plain class=\"public-button\">\n {{ $t('statuses.public') }}: {{ normalizedCount(statusVisibility.public) }}\n </el-button>\n <el-button plain class=\"unlisted-button\">\n {{ $t('statuses.unlisted') }}: {{ normalizedCount(statusVisibility.unlisted) }}\n </el-button>\n </el-button-group>\n </div>\n <div class=\"filter-container\">\n <el-select\n v-model=\"selectedInstance\"\n :placeholder=\"$t('statuses.instanceFilter')\"\n :no-data-text=\"$t('statuses.noInstances')\"\n filterable\n clearable\n class=\"select-instance\"\n @change=\"handleFilterChange\">\n <el-option\n v-for=\"(instance,index) in instances\"\n :key=\"index\"\n :label=\"instance\"\n :value=\"instance\"/>\n </el-select>\n <multiple-users-menu\n :selected-users=\"selectedUsers\"\n @apply-action=\"clearSelection\"/>\n </div>\n <div v-if=\"currentInstance\" class=\"checkbox-container\">\n <el-checkbox v-model=\"showLocal\" class=\"show-private-statuses\">\n {{ $t('statuses.onlyLocalStatuses') }}\n </el-checkbox>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n </div>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n <div v-for=\"status in statuses\" :key=\"status.id\" class=\"status-container\">\n <status\n :status=\"status\"\n :account=\"status.account\"\n :show-checkbox=\"isDesktop\"\n :fetch-statuses-by-instance=\"true\"\n @status-selection=\"handleStatusSelection\" />\n </div>\n <div v-if=\"statuses.length > 0\" class=\"statuses-pagination\">\n <el-button v-if=\"!allLoaded\" :loading=\"buttonLoading\" @click=\"handleLoadMore\">{{ $t('statuses.loadMore') }}</el-button>\n <el-button v-else icon=\"el-icon-check\" circle/>\n </div>\n </div>\n</template>\n\n<script>\nimport MultipleUsersMenu from '@/views/users/components/MultipleUsersMenu'\nimport Status from '@/components/Status'\nimport RebootButton from '@/components/RebootButton'\nimport numeral from 'numeral'\n\nexport default {\n name: 'Statuses',\n components: {\n MultipleUsersMenu,\n RebootButton,\n Status\n },\n data() {\n return {\n selectedUsers: []\n }\n },\n computed: {\n allLoaded() {\n return this.$store.state.status.statusesByInstance.allLoaded\n },\n buttonLoading() {\n return this.$store.state.status.statusesByInstance.buttonLoading\n },\n currentInstance() {\n return this.selectedInstance === this.$store.state.user.authHost\n },\n instances() {\n return [this.$store.state.user.authHost, ...this.$store.state.peers.fetchedPeers]\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loadingPeers() {\n return this.$store.state.peers.loading\n },\n page() {\n return this.$store.state.status.statusesByInstance.page\n },\n pageSize() {\n return this.$store.state.status.statusesByInstance.pageSize\n },\n selectedInstance: {\n get() {\n return this.$store.state.status.statusesByInstance.selectedInstance\n },\n set(instance) {\n this.$store.dispatch('HandleFilterChange', instance)\n }\n },\n showLocal: {\n get() {\n return this.$store.state.status.statusesByInstance.showLocal\n },\n set(value) {\n this.$store.dispatch('HandleLocalCheckboxChange', value)\n }\n },\n showPrivate: {\n get() {\n return this.$store.state.status.statusesByInstance.showPrivate\n },\n set(value) {\n this.$store.dispatch('HandleGodmodeCheckboxChange', value)\n }\n },\n statuses() {\n return this.$store.state.status.fetchedStatuses\n },\n statusVisibility() {\n return this.$store.state.status.statusVisibility\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchPeers')\n this.$store.dispatch('FetchStatusesCount')\n },\n destroyed() {\n this.clearSelection()\n this.$store.dispatch('ClearState')\n },\n methods: {\n clearSelection() {\n this.selectedUsers = []\n },\n handleFilterChange() {\n this.$store.dispatch('HandlePageChange', 1)\n this.$store.dispatch('FetchStatusesByInstance')\n },\n handleLoadMore() {\n this.$store.dispatch('HandlePageChange', this.page + 1)\n\n this.$store.dispatch('FetchStatusesPageByInstance')\n },\n handleStatusSelection(user) {\n if (this.selectedUsers.find(selectedUser => user.id === selectedUser.id) !== undefined) {\n return\n }\n this.selectedUsers = [...this.selectedUsers, user]\n },\n normalizedCount(count) {\n return numeral(count).format('0a')\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.statuses-container {\n padding: 0 15px;\n h1 {\n margin: 10px 0 15px 0;\n }\n .status-container {\n margin: 0 0 10px;\n }\n}\n.statuses-header-container {\n .el-button.is-plain:focus, .el-button.is-plain:hover {\n border-color: #DCDFE6;\n color: #606266;\n cursor: default\n }\n}\n.checkbox-container {\n margin-bottom: 15px;\n}\n.filter-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 22px 0 15px 0;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n.select-instance {\n width: 396px;\n}\n.statuses-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.statuses-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.statuses-pagination {\n padding: 15px 0;\n text-align: center;\n}\n\n@media only screen and (max-width:480px) {\n .checkbox-container {\n margin-bottom: 10px;\n }\n .filter-container {\n display: flex;\n height: 36px;\n flex-direction: column;\n margin: 10px 0;\n }\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n .select-instance {\n width: 100%;\n }\n .statuses-header-container {\n flex-direction: column;\n align-items: flex-start;\n .el-button-group {\n width: 100%;\n }\n .el-button {\n padding: 10px 6.5px;\n width: 50%;\n }\n .el-button-group>.el-button:first-child {\n border-bottom-left-radius: 0;\n }\n .el-button-group>.el-button:not(:first-child):not(:last-child).private-button {\n border-top-right-radius: 4px;\n }\n .el-button-group>.el-button:not(:first-child):not(:last-child).public-button {\n border-bottom-left-radius: 4px;\n border-top: white;\n }\n .el-button-group>.el-button:last-child {\n border-top-right-radius: 0;\n border-top: white;\n }\n .reboot-button {\n margin: 10px 0 0 0;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4ee51084&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-2d97.1979e1ba.js b/priv/static/adminfe/static/js/chunk-2d97.1979e1ba.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-2d97"],{"+nkG":function(t,e,r){"use strict";var n=r("busc");r.n(n).a},busc:function(t,e,r){},i7Kn:function(t,e,r){"use strict";var n=r("o0o1"),s=r.n(n),i=r("yXPU"),a=r.n(i),o={props:{selectedUsers:{type:Array,default:function(){return[]}}},computed:{showDropdownForMultipleUsers:function(){return this.$props.selectedUsers.length>0},isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{mappers:function(){var t=this,e=function(){var e=a()(s.a.mark(function e(r,n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n(r);case 2:t.$emit("apply-action");case 3:case"end":return e.stop()}},e)}));return function(t,r){return e.apply(this,arguments)}}();return{grantRight:function(r){return function(){var n=function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("AddRight",{users:n,right:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),i=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&!e.roles[r]&&t.$store.state.user.id!==e.id});e(i,n)}},revokeRight:function(r){return function(){var n=function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeleteRight",{users:n,right:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),i=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.roles[r]&&t.$store.state.user.id!==e.id});e(i,n)}},activate:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&e.deactivated&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ActivateUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},deactivate:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&!e.deactivated&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeactivateUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},remove:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeleteUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},addTag:function(r){return function(){var n=t.selectedUsers.filter(function(e){return"mrf_tag:disable-remote-subscription"===r||"mrf_tag:disable-any-subscription"===r?t.isLocalUser(e)&&!e.tags.includes(r):e.nickname&&!e.tags.includes(r)});e(n,function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("AddTag",{users:n,tag:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())}},removeTag:function(r){return a()(s.a.mark(function n(){var i;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:i=t.selectedUsers.filter(function(e){return"mrf_tag:disable-remote-subscription"===r||"mrf_tag:disable-any-subscription"===r?t.isLocalUser(e)&&e.tags.includes(r):e.nickname&&e.tags.includes(r)}),e(i,function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("RemoveTag",{users:n,tag:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}());case 3:case"end":return n.stop()}},n)}))},requirePasswordReset:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("RequirePasswordReset",r);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},approveAccounts:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.approval_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ApproveUsersAccount",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},confirmAccounts:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.confirmation_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ConfirmUsersEmail",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},resendConfirmation:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.confirmation_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ResendConfirmationEmail",r);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())}}},isLocalUser:function(t){return t.nickname&&t.local},grantRightToMultipleUsers:function(t){var e=this.mappers().grantRight;this.confirmMessage(this.$t("users.grantRightConfirmation",{right:t}),e(t))},revokeRightFromMultipleUsers:function(t){var e=this.mappers().revokeRight;this.confirmMessage(this.$t("users.revokeRightConfirmation",{right:t}),e(t))},activateMultipleUsers:function(){var t=this.mappers().activate;this.confirmMessage(this.$t("users.activateMultipleUsersConfirmation"),t)},deactivateMultipleUsers:function(){var t=this.mappers().deactivate;this.confirmMessage(this.$t("users.deactivateMultipleUsersConfirmation"),t)},deleteMultipleUsers:function(){var t=this.mappers().remove;this.confirmMessage(this.$t("users.deleteMultipleUsersConfirmation"),t)},requirePasswordReset:function(){if(this.$store.state.user.nodeInfo.metadata.mailerEnabled){var t=this.mappers().requirePasswordReset;this.confirmMessage(this.$t("users.requirePasswordResetConfirmation"),t)}else this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},addTagForMultipleUsers:function(t){var e=this.mappers().addTag;this.confirmMessage(this.$t("users.addTagForMultipleUsersConfirmation"),e(t))},removeTagFromMultipleUsers:function(t){var e=this.mappers().removeTag;this.confirmMessage(this.$t("users.removeTagFromMultipleUsersConfirmation"),e(t))},approveAccountsForMultipleUsers:function(){var t=this.mappers().approveAccounts;this.confirmMessage(this.$t("users.approveAccountsConfirmation"),t)},rejectAccountsForMultipleUsers:function(){var t=this.mappers().remove;this.confirmMessage(this.$t("users.rejectAccountsConfirmation"),t)},confirmAccountsForMultipleUsers:function(){var t=this.mappers().confirmAccounts;this.confirmMessage(this.$t("users.confirmAccountsConfirmation"),t)},resendConfirmationForMultipleUsers:function(){var t=this.mappers().resendConfirmation;this.confirmMessage(this.$t("users.resendEmailConfirmation"),t)},confirmMessage:function(t,e){var r=this;this.$confirm(t,{confirmButtonText:this.$t("users.ok"),cancelButtonText:this.$t("users.cancel"),type:"warning"}).then(function(){e()}).catch(function(){r.$message({type:"info",message:r.$t("users.canceled")})})}}},u=(r("+nkG"),r("KHd+")),c=Object(u.a)(o,function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("el-dropdown",{attrs:{size:"small",trigger:"click",placement:"bottom-start"}},[t.isDesktop?r("el-button",{staticClass:"actions-button"},[r("span",{staticClass:"actions-button-container"},[r("span",[r("i",{staticClass:"el-icon-edit"}),t._v("\n "+t._s(t.$t("users.moderateUsers"))+"\n ")]),t._v(" "),r("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):t._e(),t._v(" "),t.showDropdownForMultipleUsers?r("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[r("el-dropdown-item",{nativeOn:{click:function(e){return t.grantRightToMultipleUsers("admin")}}},[t._v("\n "+t._s(t.$t("users.grantAdmin"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.revokeRightFromMultipleUsers("admin")}}},[t._v("\n "+t._s(t.$t("users.revokeAdmin"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.grantRightToMultipleUsers("moderator")}}},[t._v("\n "+t._s(t.$t("users.grantModerator"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.revokeRightFromMultipleUsers("moderator")}}},[t._v("\n "+t._s(t.$t("users.revokeModerator"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.approveAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.approveAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.rejectAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.rejectAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.confirmAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.confirmAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.resendConfirmationForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.resendConfirmation"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.activateMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.activateAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.deactivateMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.deactivateAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.deleteMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.deleteAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.requirePasswordReset(e)}}},[t._v("\n "+t._s(t.$t("users.requirePasswordReset"))+"\n ")]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""}},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.forceNsfw")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.stripMedia")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.forceUnlisted")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.sandbox")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.disableRemoteSubscriptionForMultiple")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]),t._v(" "),r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.disableAnySubscriptionForMultiple")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)])],1):r("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[r("el-dropdown-item",[t._v("\n "+t._s(t.$t("users.selectUsers"))+"\n ")])],1)],1)},[],!1,null,"9bd813c8",null);c.options.__file="MultipleUsersMenu.vue";e.a=c.exports}}]); +//# sourceMappingURL=chunk-2d97.1979e1ba.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-2d97.1979e1ba.js.map b/priv/static/adminfe/static/js/chunk-2d97.1979e1ba.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/users/components/MultipleUsersMenu.vue?e98b","webpack:///./src/views/users/components/MultipleUsersMenu.vue?adc1","webpack:///./src/views/users/components/MultipleUsersMenu.vue?56ef","webpack:///src/views/users/components/MultipleUsersMenu.vue","webpack:///./src/views/users/components/MultipleUsersMenu.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MultipleUsersMenu_vue_vue_type_style_index_0_id_9bd813c8_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_MultipleUsersMenuvue_type_script_lang_js_","props","selectedUsers","type","Array","default","computed","showDropdownForMultipleUsers","this","$props","length","isDesktop","$store","state","app","device","methods","mappers","_this","applyAction","_ref","asyncToGenerator_default","regenerator_default","a","mark","_callee","users","dispatchAction","wrap","_context","prev","next","$emit","stop","_x","_x2","apply","arguments","grantRight","right","addRightFn","_ref2","_callee2","_context2","dispatch","abrupt","sent","_x3","filtered","filter","user","isLocalUser","roles","id","revokeRight","deleteRightFn","_ref3","_callee3","_context3","_x4","activate","nickname","deactivated","_ref4","_callee4","_context4","_x5","deactivate","_ref5","_callee5","_context5","_x6","remove","_ref6","_callee6","_context6","_x7","addTag","tag","tags","includes","_ref7","_callee7","_context7","_x8","removeTag","_callee9","_context9","_ref9","_callee8","_context8","_x9","requirePasswordReset","_ref10","_callee10","_context10","_x10","approveAccounts","approval_pending","_ref11","_callee11","_context11","_x11","confirmAccounts","confirmation_pending","_ref12","_callee12","_context12","_x12","resendConfirmation","_ref13","_callee13","_context13","_x13","local","grantRightToMultipleUsers","confirmMessage","$t","revokeRightFromMultipleUsers","activateMultipleUsers","deactivateMultipleUsers","deleteMultipleUsers","nodeInfo","metadata","mailerEnabled","$alert","addTagForMultipleUsers","removeTagFromMultipleUsers","approveAccountsForMultipleUsers","rejectAccountsForMultipleUsers","confirmAccountsForMultipleUsers","resendConfirmationForMultipleUsers","message","_this2","$confirm","confirmButtonText","cancelButtonText","then","catch","$message","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","attrs","size","trigger","placement","staticClass","_v","_s","_e","slot","nativeOn","click","$event","divided","options","__file","__webpack_exports__"],"mappings":"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","file":"static/js/chunk-2d97.1979e1ba.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=style&index=0&id=9bd813c8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=style&index=0&id=9bd813c8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"bottom-start\"}},[(_vm.isDesktop)?_c('el-button',{staticClass:\"actions-button\"},[_c('span',{staticClass:\"actions-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUsers'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e(),_vm._v(\" \"),(_vm.showDropdownForMultipleUsers)?_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.grantRightToMultipleUsers('admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.grantAdmin'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.revokeRightFromMultipleUsers('admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.revokeAdmin'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.grantRightToMultipleUsers('moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.grantModerator'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.revokeRightFromMultipleUsers('moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.revokeModerator'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.approveAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.rejectAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.confirmAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.resendConfirmationForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.activateMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.activateAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deactivateMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deactivateAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deleteMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"}},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.forceNsfw')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.stripMedia')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.forceUnlisted')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.sandbox')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.disableRemoteSubscriptionForMultiple')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.disableAnySubscriptionForMultiple')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)])],1):_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.selectUsers'))+\"\\n \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown size=\"small\" trigger=\"click\" placement=\"bottom-start\">\n <el-button v-if=\"isDesktop\" class=\"actions-button\">\n <span class=\"actions-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUsers') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n <el-dropdown-menu v-if=\"showDropdownForMultipleUsers\" slot=\"dropdown\">\n <el-dropdown-item\n @click.native=\"grantRightToMultipleUsers('admin')\">\n {{ $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"revokeRightFromMultipleUsers('admin')\">\n {{ $t('users.revokeAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"grantRightToMultipleUsers('moderator')\">\n {{ $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"revokeRightFromMultipleUsers('moderator')\">\n {{ $t('users.revokeModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"approveAccountsForMultipleUsers\">\n {{ $t('users.approveAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"rejectAccountsForMultipleUsers\">\n {{ $t('users.rejectAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"confirmAccountsForMultipleUsers\">\n {{ $t('users.confirmAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"resendConfirmationForMultipleUsers\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"activateMultipleUsers\">\n {{ $t('users.activateAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deactivateMultipleUsers\">\n {{ $t('users.deactivateAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deleteMultipleUsers\">\n {{ $t('users.deleteAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"requirePasswordReset\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item divided class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.forceNsfw') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:media-force-nsfw')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:media-force-nsfw')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.stripMedia') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:media-strip')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:media-strip')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.forceUnlisted') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:force-unlisted')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:force-unlisted')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.sandbox') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:sandbox')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:sandbox')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.disableRemoteSubscriptionForMultiple') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:disable-remote-subscription')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:disable-remote-subscription')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.disableAnySubscriptionForMultiple') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:disable-any-subscription')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:disable-any-subscription')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n </el-dropdown-menu>\n <el-dropdown-menu v-else slot=\"dropdown\">\n <el-dropdown-item>\n {{ $t('users.selectUsers') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n props: {\n selectedUsers: {\n type: Array,\n default: function() {\n return []\n }\n }\n },\n computed: {\n showDropdownForMultipleUsers() {\n return this.$props.selectedUsers.length > 0\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n mappers() {\n const applyAction = async(users, dispatchAction) => {\n await dispatchAction(users)\n this.$emit('apply-action')\n }\n return {\n grantRight: (right) => () => {\n const filterUsersFn = user => this.isLocalUser(user) && !user.roles[right] && this.$store.state.user.id !== user.id\n const addRightFn = async(users) => await this.$store.dispatch('AddRight', { users, right })\n const filtered = this.selectedUsers.filter(filterUsersFn)\n\n applyAction(filtered, addRightFn)\n },\n revokeRight: (right) => () => {\n const filterUsersFn = user => this.isLocalUser(user) && user.roles[right] && this.$store.state.user.id !== user.id\n const deleteRightFn = async(users) => await this.$store.dispatch('DeleteRight', { users, right })\n const filtered = this.selectedUsers.filter(filterUsersFn)\n\n applyAction(filtered, deleteRightFn)\n },\n activate: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && user.deactivated && this.$store.state.user.id !== user.id)\n const activateUsersFn = async(users) => await this.$store.dispatch('ActivateUsers', { users })\n\n applyAction(filtered, activateUsersFn)\n },\n deactivate: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && !user.deactivated && this.$store.state.user.id !== user.id)\n const deactivateUsersFn = async(users) => await this.$store.dispatch('DeactivateUsers', { users })\n\n applyAction(filtered, deactivateUsersFn)\n },\n remove: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && this.$store.state.user.id !== user.id)\n const deleteAccountFn = async(users) => await this.$store.dispatch('DeleteUsers', { users })\n\n applyAction(filtered, deleteAccountFn)\n },\n addTag: (tag) => () => {\n const filtered = this.selectedUsers.filter(user =>\n tag === 'mrf_tag:disable-remote-subscription' || tag === 'mrf_tag:disable-any-subscription'\n ? this.isLocalUser(user) && !user.tags.includes(tag)\n : user.nickname && !user.tags.includes(tag))\n const addTagFn = async(users) => await this.$store.dispatch('AddTag', { users, tag })\n applyAction(filtered, addTagFn)\n },\n removeTag: (tag) => async() => {\n const filtered = this.selectedUsers.filter(user =>\n tag === 'mrf_tag:disable-remote-subscription' || tag === 'mrf_tag:disable-any-subscription'\n ? this.isLocalUser(user) && user.tags.includes(tag)\n : user.nickname && user.tags.includes(tag))\n const removeTagFn = async(users) => await this.$store.dispatch('RemoveTag', { users, tag })\n\n applyAction(filtered, removeTagFn)\n },\n requirePasswordReset: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user))\n const requirePasswordResetFn = async(users) => await this.$store.dispatch('RequirePasswordReset', users)\n\n applyAction(filtered, requirePasswordResetFn)\n },\n approveAccounts: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.approval_pending)\n const approveAccountFn = async(users) => await this.$store.dispatch('ApproveUsersAccount', { users })\n\n applyAction(filtered, approveAccountFn)\n },\n confirmAccounts: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.confirmation_pending)\n const confirmAccountFn = async(users) => await this.$store.dispatch('ConfirmUsersEmail', { users })\n\n applyAction(filtered, confirmAccountFn)\n },\n resendConfirmation: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.confirmation_pending)\n const resendConfirmationFn = async(users) => await this.$store.dispatch('ResendConfirmationEmail', users)\n\n applyAction(filtered, resendConfirmationFn)\n }\n }\n },\n isLocalUser(user) {\n return user.nickname && user.local\n },\n grantRightToMultipleUsers(right) {\n const { grantRight } = this.mappers()\n this.confirmMessage(\n this.$t('users.grantRightConfirmation', { right }),\n grantRight(right)\n )\n },\n revokeRightFromMultipleUsers(right) {\n const { revokeRight } = this.mappers()\n this.confirmMessage(\n this.$t('users.revokeRightConfirmation', { right }),\n revokeRight(right)\n )\n },\n activateMultipleUsers() {\n const { activate } = this.mappers()\n this.confirmMessage(\n this.$t('users.activateMultipleUsersConfirmation'),\n activate\n )\n },\n deactivateMultipleUsers() {\n const { deactivate } = this.mappers()\n this.confirmMessage(\n this.$t('users.deactivateMultipleUsersConfirmation'),\n deactivate\n )\n },\n deleteMultipleUsers() {\n const { remove } = this.mappers()\n this.confirmMessage(\n this.$t('users.deleteMultipleUsersConfirmation'),\n remove\n )\n },\n requirePasswordReset() {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n\n return\n }\n\n const { requirePasswordReset } = this.mappers()\n this.confirmMessage(\n this.$t('users.requirePasswordResetConfirmation'),\n requirePasswordReset\n )\n },\n addTagForMultipleUsers(tag) {\n const { addTag } = this.mappers()\n this.confirmMessage(\n this.$t('users.addTagForMultipleUsersConfirmation'),\n addTag(tag)\n )\n },\n removeTagFromMultipleUsers(tag) {\n const { removeTag } = this.mappers()\n this.confirmMessage(\n this.$t('users.removeTagFromMultipleUsersConfirmation'),\n removeTag(tag)\n )\n },\n approveAccountsForMultipleUsers() {\n const { approveAccounts } = this.mappers()\n this.confirmMessage(\n this.$t('users.approveAccountsConfirmation'),\n approveAccounts\n )\n },\n rejectAccountsForMultipleUsers() {\n const { remove } = this.mappers()\n this.confirmMessage(\n this.$t('users.rejectAccountsConfirmation'),\n remove\n )\n },\n confirmAccountsForMultipleUsers() {\n const { confirmAccounts } = this.mappers()\n this.confirmMessage(\n this.$t('users.confirmAccountsConfirmation'),\n confirmAccounts\n )\n },\n resendConfirmationForMultipleUsers() {\n const { resendConfirmation } = this.mappers()\n this.confirmMessage(\n this.$t('users.resendEmailConfirmation'),\n resendConfirmation\n )\n },\n confirmMessage(message, applyAction) {\n this.$confirm(message, {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(() => {\n applyAction()\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n .actions-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .actions-button-container {\n display: flex;\n justify-content: space-between;\n }\n .el-dropdown {\n float: right;\n }\n .el-icon-edit {\n margin-right: 5px;\n }\n .tag-container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .tag-text {\n padding-right: 20px;\n }\n .no-hover:hover {\n color: #606266;\n background-color: white;\n cursor: auto;\n }\n</style>\n","import { render, staticRenderFns } from \"./MultipleUsersMenu.vue?vue&type=template&id=9bd813c8&scoped=true&\"\nimport script from \"./MultipleUsersMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./MultipleUsersMenu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MultipleUsersMenu.vue?vue&type=style&index=0&id=9bd813c8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9bd813c8\",\n null\n \n)\n\ncomponent.options.__file = \"MultipleUsersMenu.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-3365.b73c30a8.js b/priv/static/adminfe/static/js/chunk-3365.b73c30a8.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-3365"],{"53Av":function(s,e,t){"use strict";var a=t("lOBV");t.n(a).a},RnhZ:function(s,e,t){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function n(s){var e=r(s);return t(e)}function r(s){if(!t.o(a,s)){var e=new Error("Cannot find module '"+s+"'");throw e.code="MODULE_NOT_FOUND",e}return a[s]}n.keys=function(){return Object.keys(a)},n.resolve=r,s.exports=n,n.id="RnhZ"},S3Ak:function(s,e,t){"use strict";var a=t("lGnS");t.n(a).a},WjBP:function(s,e,t){"use strict";var a={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},n=t("KHd+"),r=Object(n.a)(a,function(){var s=this,e=s.$createElement,t=s._self._c||e;return t("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:s.loading,expression:"loading"}],attrs:{visible:s.dialogOpen,title:s.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:s.closeResetPasswordDialog}},[t("div",[t("p",{staticClass:"password-reset-token"},[s._v(s._s(s.$t("users.passwordResetTokenGenerated"))+" "+s._s(s.passwordResetToken))]),s._v(" "),t("p",[s._v(s._s(s.$t("users.linkToResetPassword"))+"\n "),t("a",{staticClass:"reset-password-link",attrs:{href:s.passwordResetLink,target:"_blank"}},[s._v(s._s(s.passwordResetLink))])])])])},[],!1,null,null,null);r.options.__file="ResetPasswordDialog.vue";e.a=r.exports},lGnS:function(s,e,t){},lOBV:function(s,e,t){},rwwt:function(s,e,t){"use strict";t.r(e);var a=t("ot3S"),n=t("tPM3"),r=t("rIUS"),i=t("WjBP"),o={name:"StatusShow",components:{ModerationDropdown:n.a,RebootButton:r.a,ResetPasswordDialog:i.a,Status:a.a},data:function(){return{showPrivate:!1,resetPasswordDialogOpen:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.status.loading},status:function(){return this.$store.state.status.fetchedStatus},statuses:function(){return this.$store.state.userProfile.statuses},statusesLoading:function(){return this.$store.state.userProfile.statusesLoading},user:function(){return this.$store.state.status.statusAuthor}},beforeMount:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("FetchStatus",this.$route.params.id)},methods:{closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},onTogglePrivate:function(){this.$store.dispatch("FetchUserStatuses",{userId:this.user.id,godmode:this.showPrivate})},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(s,e){return s[e]}}},c=(t("S3Ak"),t("KHd+")),u=Object(c.a)(o,function(){var s=this,e=s.$createElement,t=s._self._c||e;return s.loading?s._e():t("div",{staticClass:"status-show-container"},[s.isDesktop||s.isTablet?t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[s.propertyExists(s.user,"id")?t("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:s.user.id}}}},[t("div",{staticClass:"avatar-name-header"},[s.propertyExists(s.user,"avatar")?t("el-avatar",{attrs:{src:s.user.avatar,size:"large"}}):s._e(),s._v(" "),s.propertyExists(s.user,"nickname")?t("h1",[s._v(s._s(s.user.nickname))]):t("h1",{staticClass:"invalid"},[s._v("("+s._s(s.$t("users.invalidNickname"))+")")])],1)]):s._e(),s._v(" "),s.propertyExists(s.user,"url")?t("a",{attrs:{href:s.user.url,target:"_blank"}},[t("i",{staticClass:"el-icon-top-right",attrs:{title:s.$t("userProfile.openAccountInInstance")}})]):s._e()],1),s._v(" "),t("div",{staticClass:"left-header-container"},[t("moderation-dropdown",{attrs:{user:s.user,page:"statusPage","status-id":s.status.id},on:{"open-reset-token-dialog":s.openResetPasswordDialog}}),s._v(" "),t("reboot-button")],1)]):s._e(),s._v(" "),s.isMobile?t("div",{staticClass:"status-page-header-container"},[t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[s.propertyExists(s.user,"avatar")?t("el-avatar",{attrs:{src:s.user.avatar,size:"large"}}):s._e(),s._v(" "),s.propertyExists(s.user,"nickname")?t("h1",[s._v(s._s(s.user.nickname))]):s._e()],1),s._v(" "),t("reboot-button")],1),s._v(" "),t("moderation-dropdown",{attrs:{user:s.user,page:"statusPage"},on:{"open-reset-token-dialog":s.openResetPasswordDialog}})],1):s._e(),s._v(" "),t("reset-password-dialog",{attrs:{"reset-password-dialog-open":s.resetPasswordDialogOpen},on:{"close-reset-token-dialog":s.closeResetPasswordDialog}}),s._v(" "),t("div",{staticClass:"status-container"},[t("status",{attrs:{status:s.status,account:s.user,"show-checkbox":!1,godmode:s.showPrivate}})],1),s._v(" "),t("div",{staticClass:"recent-statuses-container-show"},[s.propertyExists(s.user,"nickname")?t("h2",{staticClass:"recent-statuses"},[s._v("\n "+s._s(s.$t("userProfile.recentStatuses"))+" by "+s._s(s.user.nickname)+"\n ")]):t("h2",{staticClass:"recent-statuses"},[s._v(s._s(s.$t("userProfile.recentStatuses")))]),s._v(" "),t("el-checkbox",{staticClass:"show-private-statuses",on:{change:s.onTogglePrivate},model:{value:s.showPrivate,callback:function(e){s.showPrivate=e},expression:"showPrivate"}},[s._v("\n "+s._s(s.$t("statuses.showPrivateStatuses"))+"\n ")]),s._v(" "),s.statusesLoading?s._e():t("el-timeline",{staticClass:"statuses"},[s._l(s.statuses,function(e){return t("el-timeline-item",{key:e.id},[t("status",{attrs:{status:e,account:e.account,"show-checkbox":!1,"user-id":s.user.id,godmode:s.showPrivate}})],1)}),s._v(" "),0===s.statuses.length?t("p",{staticClass:"no-statuses"},[s._v(s._s(s.$t("userProfile.noStatuses")))]):s._e()],2)],1)],1)},[],!1,null,null,null);u.options.__file="show.vue";e.default=u.exports},tPM3:function(s,e,t){"use strict";var a={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(s){this.$store.dispatch("UpdateActorType",{user:this.user,type:s,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device},tagPolicyEnabled:function(){return this.$store.state.users.mrfPolicies.includes("Pleroma.Web.ActivityPub.MRF.TagPolicy")}},methods:{disableMfa:function(s){this.$store.dispatch("DisableMfa",s)},enableTagPolicy:function(){var s=this;this.$confirm(this.$t("users.confirmEnablingTagPolicy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$message({type:"success",message:s.$t("users.enableTagPolicySuccessMessage")}),s.$store.dispatch("EnableTagPolicy")}).catch(function(){s.$message({type:"info",message:"Canceled"})})},getPasswordResetToken:function(s){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",s)},handleConfirmationResend:function(s){this.$store.dispatch("ResendConfirmationEmail",[s])},handleDeletion:function(s){var e=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$store.dispatch("DeleteUsers",{users:[s],_userId:s.id})}).catch(function(){e.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(s){this.$store.dispatch("ApproveUsersAccount",{users:[s],_userId:s.id,_statusId:this.statusId})},handleAccountRejection:function(s){var e=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$store.dispatch("DeleteUsers",{users:[s],_userId:s.id})}).catch(function(){e.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(s){this.$store.dispatch("ConfirmUsersEmail",{users:[s],_userId:s.id,_statusId:this.statusId})},requirePasswordReset:function(s){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[s]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(s){var e=s.local,t=s.id;return e&&this.showDeactivatedButton(t)},showDeactivatedButton:function(s){return this.$store.state.user.id!==s},toggleActivation:function(s){s.deactivated?this.$store.dispatch("ActivateUsers",{users:[s],_userId:s.id}):this.$store.dispatch("DeactivateUsers",{users:[s],_userId:s.id})},toggleTag:function(s,e){s.tags.includes(e)?this.$store.dispatch("RemoveTag",{users:[s],tag:e,_userId:s.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[s],tag:e,_userId:s.id,_statusId:this.statusId})},toggleUserRight:function(s,e){s.roles[e]?this.$store.dispatch("DeleteRight",{users:[s],right:e,_userId:s.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[s],right:e,_userId:s.id,_statusId:this.statusId})}}},n=(t("53Av"),t("KHd+")),r=Object(n.a)(a,function(){var s=this,e=s.$createElement,t=s._self._c||e;return t("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(s){s.stopPropagation()}}},[t("div",["users"===s.page?t("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[s._v("\n "+s._s(s.$t("users.moderation"))+"\n "),s.isDesktop?t("i",{staticClass:"el-icon-arrow-down el-icon--right"}):s._e()]):s._e(),s._v(" "),"userPage"===s.page||"statusPage"===s.page?t("el-button",{staticClass:"moderate-user-button"},[t("span",{staticClass:"moderate-user-button-container"},[t("span",[t("i",{staticClass:"el-icon-edit"}),s._v("\n "+s._s(s.$t("users.moderateUser"))+"\n ")]),s._v(" "),t("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):s._e()],1),s._v(" "),t("el-dropdown-menu",{staticClass:"moderation-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[t("el-dropdown-item",{staticClass:"actor-type-dropdown"},[t("el-select",{staticClass:"actor-type-select",attrs:{placeholder:s.$t("userProfile.actorType")},model:{value:s.actorType,callback:function(e){s.actorType=e},expression:"actorType"}},[t("el-option",{attrs:{label:s.$t("users.service"),value:"Service"}}),s._v(" "),t("el-option",{attrs:{label:s.$t("users.person"),value:"Person"}})],1)],1),s._v(" "),s.showAdminAction(s.user)?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.toggleUserRight(s.user,"admin")}}},[s._v("\n "+s._s(s.user.roles.admin?s.$t("users.revokeAdmin"):s.$t("users.grantAdmin"))+"\n ")]):s._e(),s._v(" "),s.showAdminAction(s.user)?t("el-dropdown-item",{nativeOn:{click:function(e){return s.toggleUserRight(s.user,"moderator")}}},[s._v("\n "+s._s(s.user.roles.moderator?s.$t("users.revokeModerator"):s.$t("users.grantModerator"))+"\n ")]):s._e(),s._v(" "),s.showDeactivatedButton(s.user.id)&&"statusPage"!==s.page?t("el-dropdown-item",{attrs:{divided:s.showAdminAction(s.user)},nativeOn:{click:function(e){return s.toggleActivation(s.user)}}},[s._v("\n "+s._s(s.user.deactivated?s.$t("users.activateAccount"):s.$t("users.deactivateAccount"))+"\n ")]):s._e(),s._v(" "),s.showDeactivatedButton(s.user.id)&&"statusPage"!==s.page?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleDeletion(s.user)}}},[s._v("\n "+s._s(s.$t("users.deleteAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.approval_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.handleAccountApproval(s.user)}}},[s._v("\n "+s._s(s.$t("users.approveAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.approval_pending?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleAccountRejection(s.user)}}},[s._v("\n "+s._s(s.$t("users.rejectAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.confirmation_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.handleEmailConfirmation(s.user)}}},[s._v("\n "+s._s(s.$t("users.confirmAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.confirmation_pending?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleConfirmationResend(s.user)}}},[s._v("\n "+s._s(s.$t("users.resendConfirmation"))+"\n ")]):s._e(),s._v(" "),s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:s.showAdminAction(s.user)},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:media-force-nsfw")}}},[s._v("\n "+s._s(s.$t("users.forceNsfw"))+"\n "),s.user.tags.includes("mrf_tag:media-force-nsfw")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:media-strip")}}},[s._v("\n "+s._s(s.$t("users.stripMedia"))+"\n "),s.user.tags.includes("mrf_tag:media-strip")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:force-unlisted")}}},[s._v("\n "+s._s(s.$t("users.forceUnlisted"))+"\n "),s.user.tags.includes("mrf_tag:force-unlisted")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:sandbox")}}},[s._v("\n "+s._s(s.$t("users.sandbox"))+"\n "),s.user.tags.includes("mrf_tag:sandbox")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.user.local&&s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:disable-remote-subscription")}}},[s._v("\n "+s._s(s.$t("users.disableRemoteSubscription"))+"\n "),s.user.tags.includes("mrf_tag:disable-remote-subscription")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.user.local&&s.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:disable-any-subscription")}}},[s._v("\n "+s._s(s.$t("users.disableAnySubscription"))+"\n "),s.user.tags.includes("mrf_tag:disable-any-subscription")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.tagPolicyEnabled?s._e():t("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""},nativeOn:{click:function(e){return s.enableTagPolicy(e)}}},[s._v("\n "+s._s(s.$t("users.enableTagPolicy"))+"\n ")]),s._v(" "),s.user.local?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.getPasswordResetToken(s.user.nickname)}}},[s._v("\n "+s._s(s.$t("users.getPasswordResetToken"))+"\n ")]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{nativeOn:{click:function(e){return s.requirePasswordReset(s.user)}}},[s._v("\n "+s._s(s.$t("users.requirePasswordReset"))+"\n ")]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{nativeOn:{click:function(e){return s.disableMfa(s.user.nickname)}}},[s._v("\n "+s._s(s.$t("users.disableMfa"))+"\n ")]):s._e()],1)],1)},[],!1,null,null,null);r.options.__file="ModerationDropdown.vue";e.a=r.exports}}]); -//# sourceMappingURL=chunk-3365.b73c30a8.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-3365.b73c30a8.js.map b/priv/static/adminfe/static/js/chunk-3365.b73c30a8.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/statuses/show.vue?2896","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/statuses/show.vue?ba35","webpack:///./src/views/statuses/show.vue?6fdf","webpack:///src/views/statuses/show.vue","webpack:///./src/views/statuses/show.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?a26f","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","id","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_show_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","components_ResetPasswordDialogvue_type_script_lang_js_","name","props","resetPasswordDialogOpen","type","Boolean","default","computed","dialogOpen","this","loading","$store","state","users","passwordResetLink","passwordResetToken","link","token","methods","closeResetPasswordDialog","$emit","component","componentNormalizer","_vm","_h","$createElement","_c","_self","directives","rawName","value","expression","attrs","visible","title","$t","custom-class","on","close","staticClass","_v","_s","href","target","options","__file","__webpack_exports__","statuses_showvue_type_script_lang_js_","components","ModerationDropdown","RebootButton","ResetPasswordDialog","Status","data","showPrivate","isDesktop","app","device","isMobile","isTablet","status","fetchedStatus","statuses","userProfile","statusesLoading","user","statusAuthor","beforeMount","dispatch","$route","params","onTogglePrivate","userId","godmode","openResetPasswordDialog","propertyExists","account","property","_e","to","src","avatar","size","nickname","url","page","status-id","open-reset-token-dialog","reset-password-dialog-open","close-reset-token-dialog","show-checkbox","change","model","callback","$$v","_l","key","user-id","length","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","get","actor_type","set","_userId","_statusId","tagPolicyEnabled","mrfPolicies","includes","disableMfa","enableTagPolicy","_this","$confirm","confirmButtonText","cancelButtonText","then","$message","message","catch","getPasswordResetToken","handleConfirmationResend","handleDeletion","_this2","handleAccountApproval","handleAccountRejection","_this3","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","local","showDeactivatedButton","toggleActivation","deactivated","toggleTag","tag","tags","toggleUserRight","right","roles","hide-on-click","trigger","placement","nativeOn","click","$event","stopPropagation","slot","placeholder","label","divided","admin","moderator","approval_pending","confirmation_pending","class","active-tag"],"mappings":"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","file":"static/js/chunk-3365.b73c30a8.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"status-show-container\"},[(_vm.isDesktop || _vm.isTablet)?_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.user.id }}}},[_c('div',{staticClass:\"avatar-name-header\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])],1)]):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'url'))?_c('a',{attrs:{\"href\":_vm.user.url,\"target\":\"_blank\"}},[_c('i',{staticClass:\"el-icon-top-right\",attrs:{\"title\":_vm.$t('userProfile.openAccountInInstance')}})]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"left-header-container\"},[_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'statusPage',\"status-id\":_vm.status.id},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}),_vm._v(\" \"),_c('reboot-button')],1)]):_vm._e(),_vm._v(\" \"),(_vm.isMobile)?_c('div',{staticClass:\"status-page-header-container\"},[_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_vm._e()],1),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'statusPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}})],1):_vm._e(),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),_c('div',{staticClass:\"status-container\"},[_c('status',{attrs:{\"status\":_vm.status,\"account\":_vm.user,\"show-checkbox\":false,\"godmode\":_vm.showPrivate}})],1),_vm._v(\" \"),_c('div',{staticClass:\"recent-statuses-container-show\"},[(_vm.propertyExists(_vm.user, 'nickname'))?_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.recentStatuses'))+\" by \"+_vm._s(_vm.user.nickname)+\"\\n \")]):_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.recentStatuses')))]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",on:{\"change\":_vm.onTogglePrivate},model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")]),_vm._v(\" \"),(!_vm.statusesLoading)?_c('el-timeline',{staticClass:\"statuses\"},[_vm._l((_vm.statuses),function(status){return _c('el-timeline-item',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":false,\"user-id\":_vm.user.id,\"godmode\":_vm.showPrivate}})],1)}),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e()],2):_vm._e()],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"status-show-container\">\n <header v-if=\"isDesktop || isTablet\" class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <router-link\n v-if=\"propertyExists(user, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: user.id }}\"\n class=\"router-link\">\n <div class=\"avatar-name-header\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n </div>\n </router-link>\n <a v-if=\"propertyExists(user, 'url')\" :href=\"user.url\" target=\"_blank\">\n <i :title=\"$t('userProfile.openAccountInInstance')\" class=\"el-icon-top-right\"/>\n </a>\n </div>\n <div class=\"left-header-container\">\n <moderation-dropdown\n :user=\"user\"\n :page=\"'statusPage'\"\n :status-id=\"status.id\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <reboot-button/>\n </div>\n </header>\n <div v-if=\"isMobile\" class=\"status-page-header-container\">\n <header class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n </div>\n <reboot-button/>\n </header>\n <moderation-dropdown\n :user=\"user\"\n :page=\"'statusPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n </div>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div class=\"status-container\">\n <status :status=\"status\" :account=\"user\" :show-checkbox=\"false\" :godmode=\"showPrivate\"/>\n </div>\n <div class=\"recent-statuses-container-show\">\n <h2 v-if=\"propertyExists(user, 'nickname')\" class=\"recent-statuses\">\n {{ $t('userProfile.recentStatuses') }} by {{ user.nickname }}\n </h2>\n <h2 v-else class=\"recent-statuses\">{{ $t('userProfile.recentStatuses') }}</h2>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\" @change=\"onTogglePrivate\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n <el-timeline v-if=\"!statusesLoading\" class=\"statuses\">\n <el-timeline-item v-for=\"status in statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account\" :show-checkbox=\"false\" :user-id=\"user.id\" :godmode=\"showPrivate\"/>\n </el-timeline-item>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n </el-timeline>\n </div>\n </div>\n</template>\n\n<script>\nimport Status from '@/components/Status'\nimport ModerationDropdown from '../users/components/ModerationDropdown'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from '@/views/users/components/ResetPasswordDialog'\n\nexport default {\n name: 'StatusShow',\n components: { ModerationDropdown, RebootButton, ResetPasswordDialog, Status },\n data() {\n return {\n showPrivate: false,\n resetPasswordDialogOpen: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.status.loading\n },\n status() {\n return this.$store.state.status.fetchedStatus\n },\n statuses() {\n return this.$store.state.userProfile.statuses\n },\n statusesLoading() {\n return this.$store.state.userProfile.statusesLoading\n },\n user() {\n return this.$store.state.status.statusAuthor\n }\n },\n beforeMount: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('FetchStatus', this.$route.params.id)\n },\n methods: {\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n onTogglePrivate() {\n this.$store.dispatch('FetchUserStatuses', { userId: this.user.id, godmode: this.showPrivate })\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.avatar-name-container {\n display: flex;\n align-items: center;\n .el-icon-top-right {\n font-size: 2em;\n line-height: 36px;\n color: #606266;\n }\n}\n.avatar-name-header {\n display: flex;\n height: 40px;\n align-items: center;\n}\n.invalid {\n color: gray;\n}\n.no-statuses {\n margin-left: 28px;\n color: #606266;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.reboot-button {\n padding: 10px;\n margin-left: 6px;\n}\n\n.recent-statuses-container-show {\n display: flex;\n flex-direction: column;\n .el-timeline-item {\n margin-left: 20px;\n }\n .recent-statuses {\n margin-left: 20px;\n }\n .show-private-statuses {\n margin-left: 20px;\n margin-bottom: 20px;\n }\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.router-link {\n text-decoration: none;\n}\n.status-container {\n margin: 0 15px 0 20px;\n}\n.statuses {\n padding: 0 20px 0 0;\n}\n.user-page-header {\n display: flex;\n justify-content: space-between;\n margin: 22px 15px 22px 20px;\n padding: 0;\n align-items: center;\n h1 {\n display: inline;\n margin: 0 0 0 10px;\n }\n}\n\n@media only screen and (min-width: 1824px) {\n .status-show-container {\n max-width: 1824px;\n margin: auto;\n }\n}\n\n@media only screen and (max-width:480px) {\n .avatar-name-container {\n margin-bottom: 10px;\n }\n .el-timeline-item__wrapper {\n padding-left: 18px;\n }\n .left-header-container {\n align-items: center;\n display: flex;\n justify-content: space-between;\n }\n .password-reset-token-dialog {\n width: 85%\n }\n .recent-statuses {\n margin: 20px 10px 15px 10px;\n }\n .recent-statuses-container-show {\n width: 100%;\n margin: 0 0 0 10px;\n .el-timeline-item {\n margin-left: 0;\n }\n .recent-statuses {\n margin-left: 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n }\n .status-card {\n .el-card__body {\n padding: 15px;\n }\n }\n .status-container {\n margin: 0 10px;\n }\n .statuses {\n padding-right: 10px;\n margin-left: 0;\n .el-timeline-item__wrapper {\n margin-right: 10px;\n }\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 5px 10px;\n }\n .status-page-header-container {\n width: 100%;\n .el-dropdown {\n width: stretch;\n margin: 0 10px 15px 10px;\n }\n }\n}\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .recent-statuses-container-show {\n width: 97%;\n margin: 0 20px;\n .el-timeline-item {\n margin-left: 2px;\n }\n .recent-statuses {\n margin: 20px 10px 15px 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 20px 20px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./show.vue?vue&type=template&id=7911e5ce&\"\nimport script from \"./show.vue?vue&type=script&lang=js&\"\nexport * from \"./show.vue?vue&type=script&lang=js&\"\nimport style0 from \"./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"show.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{staticClass:\"moderation-dropdown-menu\",attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(!_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.enableTagPolicy($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.enableTagPolicy'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\" class=\"moderation-dropdown-menu\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"!tagPolicyEnabled\"\n divided\n class=\"no-hover\"\n @click.native=\"enableTagPolicy\">\n {{ $t('users.enableTagPolicy') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n tagPolicyEnabled() {\n return this.$store.state.users.mrfPolicies.includes('Pleroma.Web.ActivityPub.MRF.TagPolicy')\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n enableTagPolicy() {\n this.$confirm(\n this.$t('users.confirmEnablingTagPolicy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('users.enableTagPolicySuccessMessage')\n })\n this.$store.dispatch('EnableTagPolicy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n .moderation-dropdown-menu {\n width: 350px;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n .moderation-dropdown-menu {\n width: auto;\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=346bdee8&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-342d.479e01dd.js b/priv/static/adminfe/static/js/chunk-342d.479e01dd.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-342d"],{"53Av":function(e,t,s){"use strict";var r=s("lOBV");s.n(r).a},"6eCR":function(e,t,s){"use strict";var r=s("Jdpf");s.n(r).a},"9/5/":function(e,t,s){(function(t){var s="Expected a function",r=NaN,n="[object Symbol]",a=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt,u="object"==typeof t&&t&&t.Object===Object&&t,d="object"==typeof self&&self&&self.Object===Object&&self,p=u||d||Function("return this")(),f=Object.prototype.toString,v=Math.max,g=Math.min,m=function(){return p.Date.now()};function h(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function _(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&f.call(e)==n}(e))return r;if(h(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=h(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(a,"");var s=o.test(e);return s||c.test(e)?l(e.slice(2),s?2:8):i.test(e)?r:+e}e.exports=function(e,t,r){var n,a,i,o,c,l,u=0,d=!1,p=!1,f=!0;if("function"!=typeof e)throw new TypeError(s);function w(t){var s=n,r=a;return n=a=void 0,u=t,o=e.apply(r,s)}function $(e){var s=e-l;return void 0===l||s>=t||s<0||p&&e-u>=i}function b(){var e=m();if($(e))return k(e);c=setTimeout(b,function(e){var s=t-(e-l);return p?g(s,i-(e-u)):s}(e))}function k(e){return c=void 0,f&&n?w(e):(n=a=void 0,o)}function y(){var e=m(),s=$(e);if(n=arguments,a=this,l=e,s){if(void 0===c)return function(e){return u=e,c=setTimeout(b,t),d?w(e):o}(l);if(p)return c=setTimeout(b,t),w(l)}return void 0===c&&(c=setTimeout(b,t)),o}return t=_(t)||0,h(r)&&(d=!!r.leading,i=(p="maxWait"in r)?v(_(r.maxWait)||0,t):i,f="trailing"in r?!!r.trailing:f),y.cancel=function(){void 0!==c&&clearTimeout(c),u=0,n=l=a=c=void 0},y.flush=function(){return void 0===c?o:k(m())},y}}).call(this,s("yLpj"))},DPTh:function(e,t,s){"use strict";var r=s("vg5t");s.n(r).a},GGbL:function(e,t,s){},Jdpf:function(e,t,s){},RGjw:function(e,t,s){"use strict";s.r(t);var r=s("o0o1"),n=s.n(r),a=s("yXPU"),i=s.n(a),o=s("9/5/"),c=s.n(o),l=s("ZhIB"),u=s.n(l),d=s("lSNA"),p=s.n(d);function f(e,t){var s=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),s.push.apply(s,r)}return s}function v(e){for(var t=1;t<arguments.length;t++){var s=null!=arguments[t]?arguments[t]:{};t%2?f(Object(s),!0).forEach(function(t){p()(e,t,s[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(s)):f(Object(s)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(s,t))})}return e}var g={data:function(){return{value:["local","active"]}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},created:function(){var e=this.$data.value.reduce(function(e,t){return v(v({},e),{},p()({},t,!0))},{});this.$store.dispatch("ToggleUsersFilter",e)},methods:{removeOppositeFilters:function(){var e=Object.keys(this.$store.state.users.filters).length,t=[],s=this.$data.value.indexOf("local"),r=this.$data.value.indexOf("external"),n=this.$data.value.indexOf("active"),a=this.$data.value.indexOf("deactivated"),i=this.$data.value.indexOf("need_approval");return this.$data.value.length===e?[]:(Math.max(s,r)>-1&&t.push(this.$data.value[Math.max(s,r)]),Math.max(n,a,i)>-1&&t.push(this.$data.value[Math.max(n,a,i)]),t)},toggleFilters:function(){this.$data.value=this.removeOppositeFilters();var e=this.$data.value.reduce(function(e,t){return v(v({},e),{},p()({},t,!0))},{});this.$store.dispatch("ToggleUsersFilter",e)}}},m=(s("xAET"),s("KHd+")),h=Object(m.a)(g,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-select",{staticClass:"select-field",attrs:{clearable:e.isDesktop,placeholder:e.$t("usersFilter.inputPlaceholder"),multiple:""},on:{change:e.toggleFilters},model:{value:e.value,callback:function(t){e.value=t},expression:"value"}},[s("el-option-group",{attrs:{label:e.$t("usersFilter.byAccountType")}},[s("el-option",{attrs:{value:"local",label:"Local"}},[e._v(e._s(e.$t("usersFilter.local")))]),e._v(" "),s("el-option",{attrs:{value:"external",label:"External"}},[e._v(e._s(e.$t("usersFilter.external")))])],1),e._v(" "),s("el-option-group",{attrs:{label:e.$t("usersFilter.byStatus")}},[s("el-option",{attrs:{value:"active",label:"Active"}},[e._v(e._s(e.$t("usersFilter.active")))]),e._v(" "),s("el-option",{attrs:{value:"need_approval",label:"Need Approval"}},[e._v(e._s(e.$t("usersFilter.pending")))]),e._v(" "),s("el-option",{attrs:{value:"deactivated",label:"Deactivated"}},[e._v(e._s(e.$t("usersFilter.deactivated")))])],1)],1)},[],!1,null,"377d5068",null);h.options.__file="UsersFilter.vue";var _=h.exports,w=s("i7Kn"),$={name:"NewAccountDialog",props:{dialogFormVisible:{type:Boolean,default:function(){return!1}}},data:function(){return{newUserForm:{nickname:"",email:"",password:""},rules:{nickname:[{validator:this.validateUsername,trigger:"blur"}],email:[{validator:this.validateEmail,trigger:"blur"}],password:[{validator:this.validatePassword,trigger:"blur"}]}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isVisible:{get:function(){return this.$props.dialogFormVisible},set:function(){this.closeDialogWindow()}},getLabelWidth:function(){return this.isDesktop?"120px":"85px"}},methods:{closeDialogWindow:function(){this.$emit("closeWindow")},resetForm:function(){var e=this;this.$nextTick(function(){e.$refs.newUserForm.resetFields()})},submitForm:function(e){var t=this;this.$refs[e].validate(function(e){if(!e)return t.$message({type:"error",message:t.$t("users.submitFormError")}),!1;t.$emit("createNewAccount",t.$data.newUserForm)})},validateEmail:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyEmailError"))):this.validEmail(t)?s():s(new Error(this.$t("users.invalidEmailError")))},validatePassword:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyPasswordError"))):s()},validateUsername:function(e,t,s){return""===t?s(new Error(this.$t("users.emptyNicknameError"))):this.validNickname(t)?s():s(new Error(this.$t("users.invalidNicknameError")))},validEmail:function(e){return/^[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])?)*$/.test(e)},validNickname:function(e){return/^[a-zA-Z\d_-]+$/.test(e)}}},b=(s("DPTh"),Object(m.a)($,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dialog",{attrs:{visible:e.isVisible,"show-close":!1,title:e.$t("users.createAccount"),"custom-class":"create-user-dialog"},on:{"update:visible":function(t){e.isVisible=t},open:e.resetForm}},[s("el-form",{ref:"newUserForm",attrs:{model:e.newUserForm,rules:e.rules,"label-width":e.getLabelWidth,"status-icon":""}},[s("el-form-item",{staticClass:"create-account-form-item",attrs:{label:e.$t("users.username"),prop:"nickname"}},[s("el-input",{attrs:{name:"nickname",autofocus:""},model:{value:e.newUserForm.nickname,callback:function(t){e.$set(e.newUserForm,"nickname",t)},expression:"newUserForm.nickname"}})],1),e._v(" "),s("el-form-item",{staticClass:"create-account-form-item",attrs:{label:e.$t("users.email"),prop:"email"}},[s("el-input",{attrs:{name:"email",type:"email"},model:{value:e.newUserForm.email,callback:function(t){e.$set(e.newUserForm,"email",t)},expression:"newUserForm.email"}})],1),e._v(" "),s("el-form-item",{staticClass:"create-account-form-item-without-margin",attrs:{label:e.$t("users.password"),prop:"password"}},[s("el-input",{attrs:{type:"password",name:"password",autocomplete:"off"},model:{value:e.newUserForm.password,callback:function(t){e.$set(e.newUserForm,"password",t)},expression:"newUserForm.password"}})],1)],1),e._v(" "),s("span",{attrs:{slot:"footer"},slot:"footer"},[s("el-button",{on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("users.cancel")))]),e._v(" "),s("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.submitForm("newUserForm")}}},[e._v(e._s(e.$t("users.create")))])],1)],1)},[],!1,null,null,null));b.options.__file="NewAccountDialog.vue";var k=b.exports,y=s("tPM3"),P=s("rIUS"),O=s("WjBP"),D={name:"Users",components:{NewAccountDialog:k,ModerationDropdown:y.a,MultipleUsersMenu:w.a,RebootButton:P.a,ResetPasswordDialog:O.a,UsersFilter:_},filters:{truncate:function(e,t,s){return e.length<t?e:e.substring(0,t)+s}},data:function(){return{search:"",selectedUsers:[],createAccountDialogOpen:!1,resetPasswordDialogOpen:!1}},computed:{loading:function(){return this.$store.state.users.loading},normalizedUsersCount:function(){return u()(this.$store.state.users.totalUsersCount).format("0a")},pageSize:function(){return this.$store.state.users.pageSize},currentPage:function(){return this.$store.state.users.currentPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},users:function(){return this.$store.state.users.fetchedUsers},usersCount:function(){return this.$store.state.users.totalUsersCount},pendingView:function(){return this.$store.state.users.filters.need_approval},width:function(){return!!this.isMobile&&55}},created:function(){var e=this;this.handleDebounceSearchInput=c()(function(t){e.$store.dispatch("SearchUsers",{query:t,page:1})},500)},mounted:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchTagPolicySetting"),this.$store.dispatch("FetchUsers",{page:1})},destroyed:function(){this.$store.dispatch("ClearUsersState")},methods:{clearSelection:function(){this.$refs.usersTable.clearSelection()},closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},createNewAccount:function(e){var t=this;return i()(n.a.mark(function s(){return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.next=2,t.$store.dispatch("CreateNewAccount",e);case 2:t.createAccountDialogOpen=!1;case 3:case"end":return s.stop()}},s)}))()},getFirstLetter:function(e){return e.charAt(0).toUpperCase()},handlePageChange:function(e){var t=this.$store.state.users.searchQuery;""===t?this.$store.dispatch("FetchUsers",{page:e}):this.$store.dispatch("SearchUsers",{query:t,page:e})},handleRowClick:function(e){e.id&&this.$router.push({name:"UsersShow",params:{id:e.id}})},handleSelectionChange:function(e){this.$data.selectedUsers=e},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(e,t){return e[t]},regReason:function(e){return e&&e.length>0},showDeactivatedButton:function(e){return this.$store.state.user.id!==e}}},A=(s("6eCR"),Object(m.a)(D,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"users-container"},[s("div",{staticClass:"users-header-container"},[s("h1",[e._v("\n "+e._s(e.$t("users.users"))+"\n "),s("span",{staticClass:"user-count"},[e._v("("+e._s(e.normalizedUsersCount)+")")])]),e._v(" "),s("reboot-button")],1),e._v(" "),s("div",{staticClass:"filter-container"},[s("users-filter"),e._v(" "),s("el-input",{staticClass:"search",attrs:{placeholder:e.$t("users.search"),"prefix-icon":"el-icon-search"},on:{input:e.handleDebounceSearchInput},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})],1),e._v(" "),s("div",{staticClass:"actions-container"},[s("el-button",{staticClass:"actions-button",on:{click:function(t){e.createAccountDialogOpen=!0}}},[s("span",{staticClass:"create-account"},[s("i",{staticClass:"el-icon-plus"}),e._v("\n "+e._s(e.$t("users.createAccount"))+"\n ")])]),e._v(" "),s("multiple-users-menu",{attrs:{"selected-users":e.selectedUsers},on:{"apply-action":e.clearSelection}})],1),e._v(" "),s("new-account-dialog",{attrs:{"dialog-form-visible":e.createAccountDialogOpen},on:{createNewAccount:e.createNewAccount,closeWindow:function(t){e.createAccountDialogOpen=!1}}}),e._v(" "),s("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],ref:"usersTable",staticStyle:{width:"100%"},attrs:{data:e.users,"row-key":"id"},on:{"row-click":function(t){return e.handleRowClick(t)},"selection-change":e.handleSelectionChange}},[e.isDesktop?s("el-table-column",{attrs:{type:"selection","reserve-selection":"",width:"44",align:"center"}}):e._e(),e._v(" "),s("el-table-column",{attrs:{"min-width":e.width,label:e.$t("users.id"),prop:"id"}}),e._v(" "),s("el-table-column",{attrs:{label:e.$t("users.name"),prop:"nickname"},scopedSlots:e._u([{key:"default",fn:function(t){return[e._v("\n "+e._s(t.row.nickname)+"\n "),e.isDesktop?s("el-tag",{attrs:{type:"info",size:"mini"}},[s("span",[e._v(e._s(t.row.local?e.$t("users.local"):e.$t("users.external")))])]):e._e()]}}])}),e._v(" "),s("el-table-column",{attrs:{"min-width":e.width,label:e.$t("users.status")},scopedSlots:e._u([{key:"default",fn:function(t){return[!t.row.deactivated&!t.row.approval_pending?s("el-tag",{attrs:{type:"success"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.active")))]):s("i",{staticClass:"el-icon-circle-check"})]):e._e(),e._v(" "),t.row.deactivated&!t.row.approval_pending?s("el-tag",{attrs:{type:"danger"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.deactivated")))]):s("i",{staticClass:"el-icon-circle-close"})]):e._e(),e._v(" "),s("el-tooltip",{attrs:{content:e.$t("users.unapprovedAccount"),effect:"dark"}},[t.row.approval_pending?s("el-tag",{attrs:{type:"info"}},[e.isDesktop?s("span",[e._v(e._s(e.$t("users.unapproved")))]):s("i",{staticClass:"el-icon-warning-outline"})]):e._e()],1),e._v(" "),t.row.roles.admin?s("el-tag",[s("span",[e._v(e._s(e.isDesktop?e.$t("users.admin"):e.getFirstLetter(e.$t("users.admin"))))])]):e._e(),e._v(" "),t.row.roles.moderator?s("el-tag",[s("span",[e._v(e._s(e.isDesktop?e.$t("users.moderator"):e.getFirstLetter(e.$t("users.moderator"))))])]):e._e(),e._v(" "),s("el-tooltip",{attrs:{content:e.$t("users.unconfirmedEmail"),effect:"dark"}},[t.row.confirmation_pending?s("el-tag",{attrs:{type:"info"}},[e._v("\n "+e._s(e.isDesktop?e.$t("users.unconfirmed"):e.getFirstLetter(e.$t("users.unconfirmed")))+"\n ")]):e._e()],1)]}}])}),e._v(" "),e.pendingView&&e.isDesktop?s("el-table-column",{attrs:{label:e.$t("users.registrationReason")},scopedSlots:e._u([{key:"default",fn:function(t){return[e.regReason(t.row.registration_reason)?s("el-tooltip",{attrs:{content:t.row.registration_reason,"popper-class":"reason-tooltip",effect:"dark"}},[s("span",[e._v('\n "'+e._s(e._f("truncate")(t.row.registration_reason,100,"..."))+'"\n ')])]):e._e()]}}],null,!1,975858353)}):e._e(),e._v(" "),s("el-table-column",{attrs:{label:e.$t("users.actions"),fixed:"right"},scopedSlots:e._u([{key:"default",fn:function(t){return[e.propertyExists(t.row,"nickname")?s("moderation-dropdown",{attrs:{user:t.row,page:"users"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):s("el-button",{attrs:{type:"text",disabled:""}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?s("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()])]}}])})],1),e._v(" "),s("reset-password-dialog",{attrs:{"reset-password-dialog-open":e.resetPasswordDialogOpen},on:{"close-reset-token-dialog":e.closeResetPasswordDialog}}),e._v(" "),e.loading?e._e():s("div",{staticClass:"pagination"},[s("el-pagination",{attrs:{total:e.usersCount,"current-page":e.currentPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handlePageChange}})],1)],1)},[],!1,null,null,null));A.options.__file="index.vue";t.default=A.exports},WjBP:function(e,t,s){"use strict";var r={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},n=s("KHd+"),a=Object(n.a)(r,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{visible:e.dialogOpen,title:e.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:e.closeResetPasswordDialog}},[s("div",[s("p",{staticClass:"password-reset-token"},[e._v(e._s(e.$t("users.passwordResetTokenGenerated"))+" "+e._s(e.passwordResetToken))]),e._v(" "),s("p",[e._v(e._s(e.$t("users.linkToResetPassword"))+"\n "),s("a",{staticClass:"reset-password-link",attrs:{href:e.passwordResetLink,target:"_blank"}},[e._v(e._s(e.passwordResetLink))])])])])},[],!1,null,null,null);a.options.__file="ResetPasswordDialog.vue";t.a=a.exports},lOBV:function(e,t,s){},tPM3:function(e,t,s){"use strict";var r={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(e){this.$store.dispatch("UpdateActorType",{user:this.user,type:e,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device},tagPolicyEnabled:function(){return this.$store.state.users.mrfPolicies.includes("Pleroma.Web.ActivityPub.MRF.TagPolicy")}},methods:{disableMfa:function(e){this.$store.dispatch("DisableMfa",e)},enableTagPolicy:function(){var e=this;this.$confirm(this.$t("users.confirmEnablingTagPolicy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$message({type:"success",message:e.$t("users.enableTagPolicySuccessMessage")}),e.$store.dispatch("EnableTagPolicy")}).catch(function(){e.$message({type:"info",message:"Canceled"})})},getPasswordResetToken:function(e){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",e)},handleConfirmationResend:function(e){this.$store.dispatch("ResendConfirmationEmail",[e])},handleDeletion:function(e){var t=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){t.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(e){this.$store.dispatch("ApproveUsersAccount",{users:[e],_userId:e.id,_statusId:this.statusId})},handleAccountRejection:function(e){var t=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){t.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(e){this.$store.dispatch("ConfirmUsersEmail",{users:[e],_userId:e.id,_statusId:this.statusId})},requirePasswordReset:function(e){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[e]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(e){var t=e.local,s=e.id;return t&&this.showDeactivatedButton(s)},showDeactivatedButton:function(e){return this.$store.state.user.id!==e},toggleActivation:function(e){e.deactivated?this.$store.dispatch("ActivateUsers",{users:[e],_userId:e.id}):this.$store.dispatch("DeactivateUsers",{users:[e],_userId:e.id})},toggleTag:function(e,t){e.tags.includes(t)?this.$store.dispatch("RemoveTag",{users:[e],tag:t,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[e],tag:t,_userId:e.id,_statusId:this.statusId})},toggleUserRight:function(e,t){e.roles[t]?this.$store.dispatch("DeleteRight",{users:[e],right:t,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[e],right:t,_userId:e.id,_statusId:this.statusId})}}},n=(s("53Av"),s("KHd+")),a=Object(n.a)(r,function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(e){e.stopPropagation()}}},[s("div",["users"===e.page?s("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?s("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()]):e._e(),e._v(" "),"userPage"===e.page||"statusPage"===e.page?s("el-button",{staticClass:"moderate-user-button"},[s("span",{staticClass:"moderate-user-button-container"},[s("span",[s("i",{staticClass:"el-icon-edit"}),e._v("\n "+e._s(e.$t("users.moderateUser"))+"\n ")]),e._v(" "),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):e._e()],1),e._v(" "),s("el-dropdown-menu",{staticClass:"moderation-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[s("el-dropdown-item",{staticClass:"actor-type-dropdown"},[s("el-select",{staticClass:"actor-type-select",attrs:{placeholder:e.$t("userProfile.actorType")},model:{value:e.actorType,callback:function(t){e.actorType=t},expression:"actorType"}},[s("el-option",{attrs:{label:e.$t("users.service"),value:"Service"}}),e._v(" "),s("el-option",{attrs:{label:e.$t("users.person"),value:"Person"}})],1)],1),e._v(" "),e.showAdminAction(e.user)?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.toggleUserRight(e.user,"admin")}}},[e._v("\n "+e._s(e.user.roles.admin?e.$t("users.revokeAdmin"):e.$t("users.grantAdmin"))+"\n ")]):e._e(),e._v(" "),e.showAdminAction(e.user)?s("el-dropdown-item",{nativeOn:{click:function(t){return e.toggleUserRight(e.user,"moderator")}}},[e._v("\n "+e._s(e.user.roles.moderator?e.$t("users.revokeModerator"):e.$t("users.grantModerator"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?s("el-dropdown-item",{attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(t){return e.toggleActivation(e.user)}}},[e._v("\n "+e._s(e.user.deactivated?e.$t("users.activateAccount"):e.$t("users.deactivateAccount"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleDeletion(e.user)}}},[e._v("\n "+e._s(e.$t("users.deleteAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.handleAccountApproval(e.user)}}},[e._v("\n "+e._s(e.$t("users.approveAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleAccountRejection(e.user)}}},[e._v("\n "+e._s(e.$t("users.rejectAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.handleEmailConfirmation(e.user)}}},[e._v("\n "+e._s(e.$t("users.confirmAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?s("el-dropdown-item",{nativeOn:{click:function(t){return e.handleConfirmationResend(e.user)}}},[e._v("\n "+e._s(e.$t("users.resendConfirmation"))+"\n ")]):e._e(),e._v(" "),e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:media-force-nsfw")}}},[e._v("\n "+e._s(e.$t("users.forceNsfw"))+"\n "),e.user.tags.includes("mrf_tag:media-force-nsfw")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:media-strip")}}},[e._v("\n "+e._s(e.$t("users.stripMedia"))+"\n "),e.user.tags.includes("mrf_tag:media-strip")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:force-unlisted")}}},[e._v("\n "+e._s(e.$t("users.forceUnlisted"))+"\n "),e.user.tags.includes("mrf_tag:force-unlisted")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:sandbox")}}},[e._v("\n "+e._s(e.$t("users.sandbox"))+"\n "),e.user.tags.includes("mrf_tag:sandbox")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local&&e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:disable-remote-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableRemoteSubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-remote-subscription")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local&&e.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(t){return e.toggleTag(e.user,"mrf_tag:disable-any-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableAnySubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-any-subscription")?s("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?e._e():s("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""},nativeOn:{click:function(t){return e.enableTagPolicy(t)}}},[e._v("\n "+e._s(e.$t("users.enableTagPolicy"))+"\n ")]),e._v(" "),e.user.local?s("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.getPasswordResetToken(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.getPasswordResetToken"))+"\n ")]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{nativeOn:{click:function(t){return e.requirePasswordReset(e.user)}}},[e._v("\n "+e._s(e.$t("users.requirePasswordReset"))+"\n ")]):e._e(),e._v(" "),e.user.local?s("el-dropdown-item",{nativeOn:{click:function(t){return e.disableMfa(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.disableMfa"))+"\n ")]):e._e()],1)],1)},[],!1,null,null,null);a.options.__file="ModerationDropdown.vue";t.a=a.exports},vg5t:function(e,t,s){},xAET:function(e,t,s){"use strict";var r=s("GGbL");s.n(r).a}}]); -//# sourceMappingURL=chunk-342d.479e01dd.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-342d.479e01dd.js.map b/priv/static/adminfe/static/js/chunk-342d.479e01dd.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./src/views/users/index.vue?1afe","webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/users/components/NewAccountDialog.vue?d353","webpack:///./src/views/users/index.vue?e6df","webpack:///src/views/users/components/UsersFilter.vue","webpack:///./src/views/users/components/UsersFilter.vue?6a82","webpack:///./src/views/users/components/UsersFilter.vue","webpack:///./src/views/users/components/UsersFilter.vue?4ed7","webpack:///./src/views/users/components/NewAccountDialog.vue?9018","webpack:///src/views/users/components/NewAccountDialog.vue","webpack:///./src/views/users/components/NewAccountDialog.vue","webpack:///./src/views/users/components/NewAccountDialog.vue?c2fb","webpack:///./src/views/users/index.vue?0a29","webpack:///src/views/users/index.vue","webpack:///./src/views/users/index.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?a26f","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/UsersFilter.vue?52bf"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NewAccountDialog_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","components_UsersFiltervue_type_script_lang_js_","data","computed","isDesktop","$store","state","app","device","created","currentFilters","$data","reduce","acc","filter","_objectSpread","defineProperty_default","dispatch","methods","removeOppositeFilters","filtersQuantity","keys","users","filters","length","indexOfLocal","indexOf","indexOfExternal","indexOfActive","indexOfDeactivated","indexOfPending","push","toggleFilters","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","clearable","placeholder","$t","multiple","on","change","model","callback","$$v","expression","label","_v","_s","__file","UsersFilter","components_NewAccountDialogvue_type_script_lang_js_","name","props","dialogFormVisible","Boolean","default","newUserForm","nickname","email","password","rules","validator","validateUsername","trigger","validateEmail","validatePassword","isVisible","get","$props","set","closeDialogWindow","getLabelWidth","$emit","resetForm","_this","$nextTick","$refs","resetFields","submitForm","formName","_this2","validate","valid","$message","message","rule","Error","validEmail","validNickname","NewAccountDialog_component","visible","show-close","title","custom-class","update:visible","$event","open","ref","label-width","status-icon","prop","autofocus","$set","autocomplete","slot","click","NewAccountDialog","views_usersvue_type_script_lang_js_","components","ModerationDropdown","MultipleUsersMenu","RebootButton","ResetPasswordDialog","truncate","text","suffix","substring","search","selectedUsers","createAccountDialogOpen","resetPasswordDialogOpen","loading","normalizedUsersCount","numeral_default","totalUsersCount","format","pageSize","currentPage","isMobile","fetchedUsers","usersCount","pendingView","width","handleDebounceSearchInput","lodash_debounce_default","query","page","mounted","destroyed","clearSelection","usersTable","closeResetPasswordDialog","createNewAccount","accountData","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","stop","getFirstLetter","str","charAt","toUpperCase","handlePageChange","searchQuery","handleRowClick","row","id","$router","params","handleSelectionChange","openResetPasswordDialog","propertyExists","account","property","regReason","reason","showDeactivatedButton","user","users_component","prefix-icon","input","selected-users","apply-action","dialog-form-visible","closeWindow","directives","rawName","staticStyle","row-key","row-click","selection-change","reserve-selection","align","_e","min-width","scopedSlots","_u","key","fn","scope","size","local","deactivated","approval_pending","content","effect","roles","registration_reason","popper-class","_f","fixed","open-reset-token-dialog","disabled","reset-password-dialog-open","close-reset-token-dialog","total","current-page","page-size","hide-on-single-page","layout","current-change","__webpack_exports__","components_ResetPasswordDialogvue_type_script_lang_js_","dialogOpen","passwordResetLink","passwordResetToken","link","token","close","href","target","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","actor_type","_userId","_statusId","tagPolicyEnabled","mrfPolicies","includes","disableMfa","enableTagPolicy","$confirm","confirmButtonText","cancelButtonText","then","catch","getPasswordResetToken","handleConfirmationResend","handleDeletion","handleAccountApproval","handleAccountRejection","_this3","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","toggleActivation","toggleTag","tag","tags","toggleUserRight","right","hide-on-click","placement","nativeOn","stopPropagation","divided","admin","moderator","confirmation_pending","class","active-tag","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_UsersFilter_vue_vue_type_style_index_0_id_377d5068_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"wGAAA,IAAAA,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAAsf,uCCAtf,IAAAG,EAAAF,EAAA,QAAAA,EAAAC,EAAAC,GAAud,2BCAvd,SAAAC,GAUA,IAAAC,EAAA,sBAGAC,EAAA,IAGAC,EAAA,kBAGAC,EAAA,aAGAC,EAAA,qBAGAC,EAAA,aAGAC,EAAA,cAGAC,EAAAC,SAGAC,EAAA,iBAAAV,QAAAW,iBAAAX,EAGAY,EAAA,iBAAAC,iBAAAF,iBAAAE,KAGAC,EAAAJ,GAAAE,GAAAG,SAAA,cAAAA,GAUAC,EAPAL,OAAAM,UAOAC,SAGAC,EAAAC,KAAAC,IACAC,EAAAF,KAAAG,IAkBAC,EAAA,WACA,OAAAV,EAAAW,KAAAD,OA4MA,SAAAE,EAAAC,GACA,IAAAC,SAAAD,EACA,QAAAA,IAAA,UAAAC,GAAA,YAAAA,GA4EA,SAAAC,EAAAF,GACA,oBAAAA,EACA,OAAAA,EAEA,GAhCA,SAAAA,GACA,uBAAAA,GAtBA,SAAAA,GACA,QAAAA,GAAA,iBAAAA,EAsBAG,CAAAH,IAAAX,EAAAe,KAAAJ,IAAAxB,EA8BA6B,CAAAL,GACA,OAAAzB,EAEA,GAAAwB,EAAAC,GAAA,CACA,IAAAM,EAAA,mBAAAN,EAAAO,QAAAP,EAAAO,UAAAP,EACAA,EAAAD,EAAAO,KAAA,GAAAA,EAEA,oBAAAN,EACA,WAAAA,OAEAA,IAAAQ,QAAA/B,EAAA,IACA,IAAAgC,EAAA9B,EAAA+B,KAAAV,GACA,OAAAS,GAAA7B,EAAA8B,KAAAV,GACAnB,EAAAmB,EAAAW,MAAA,GAAAF,EAAA,KACA/B,EAAAgC,KAAAV,GAAAzB,GAAAyB,EAGAY,EAAAC,QAtPA,SAAAC,EAAAC,EAAAC,GACA,IAAAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAA,EACAC,GAAA,EACAC,GAAA,EACAC,GAAA,EAEA,sBAAAZ,EACA,UAAAa,UAAArD,GAUA,SAAAsD,EAAAC,GACA,IAAAC,EAAAb,EACAc,EAAAb,EAKA,OAHAD,EAAAC,OAAAc,EACAT,EAAAM,EACAT,EAAAN,EAAAmB,MAAAF,EAAAD,GAqBA,SAAAI,EAAAL,GACA,IAAAM,EAAAN,EAAAP,EAMA,YAAAU,IAAAV,GAAAa,GAAApB,GACAoB,EAAA,GAAAV,GANAI,EAAAN,GAMAJ,EAGA,SAAAiB,IACA,IAAAP,EAAAhC,IACA,GAAAqC,EAAAL,GACA,OAAAQ,EAAAR,GAGAR,EAAAiB,WAAAF,EAzBA,SAAAP,GACA,IAEAT,EAAAL,GAFAc,EAAAP,GAIA,OAAAG,EAAA9B,EAAAyB,EAAAD,GAHAU,EAAAN,IAGAH,EAoBAmB,CAAAV,IAGA,SAAAQ,EAAAR,GAKA,OAJAR,OAAAW,EAIAN,GAAAT,EACAW,EAAAC,IAEAZ,EAAAC,OAAAc,EACAZ,GAeA,SAAAoB,IACA,IAAAX,EAAAhC,IACA4C,EAAAP,EAAAL,GAMA,GAJAZ,EAAAyB,UACAxB,EAAAyB,KACArB,EAAAO,EAEAY,EAAA,CACA,QAAAT,IAAAX,EACA,OAvEA,SAAAQ,GAMA,OAJAN,EAAAM,EAEAR,EAAAiB,WAAAF,EAAArB,GAEAS,EAAAI,EAAAC,GAAAT,EAiEAwB,CAAAtB,GAEA,GAAAG,EAGA,OADAJ,EAAAiB,WAAAF,EAAArB,GACAa,EAAAN,GAMA,YAHAU,IAAAX,IACAA,EAAAiB,WAAAF,EAAArB,IAEAK,EAIA,OAxGAL,EAAAb,EAAAa,IAAA,EACAhB,EAAAiB,KACAQ,IAAAR,EAAAQ,QAEAL,GADAM,EAAA,YAAAT,GACAxB,EAAAU,EAAAc,EAAAG,UAAA,EAAAJ,GAAAI,EACAO,EAAA,aAAAV,MAAAU,YAiGAc,EAAAK,OAnCA,gBACAb,IAAAX,GACAyB,aAAAzB,GAEAE,EAAA,EACAN,EAAAK,EAAAJ,EAAAG,OAAAW,GA+BAQ,EAAAO,MA5BA,WACA,YAAAf,IAAAX,EAAAD,EAAAiB,EAAAxC,MA4BA2C,6DCzPA,IAAAQ,EAAA9E,EAAA,QAAAA,EAAAC,EAAA6E,GAAof,0FCApf,wqBCqBA,ICrBsNC,GDsBtNC,KADA,WAEA,OACAlD,OAAA,oBAGAmD,UACAC,UADA,WAEA,kBAAAT,KAAAU,OAAAC,MAAAC,IAAAC,SAGAC,QAXA,WAYA,IAAAC,EAAAf,KAAAgB,MAAA3D,MAAA4D,OAAA,SAAAC,EAAAC,GAAA,OAAAC,OAAAF,MAAAG,OAAAF,GAAA,SACAnB,KAAAU,OAAAY,SAAA,oBAAAP,IAEAQ,SACAC,sBADA,WAEA,IAAAC,EAAApF,OAAAqF,KAAA1B,KAAAU,OAAAC,MAAAgB,MAAAC,SAAAC,OACAd,KACAe,EAAA9B,KAAAgB,MAAA3D,MAAA0E,QAAA,SACAC,EAAAhC,KAAAgB,MAAA3D,MAAA0E,QAAA,YACAE,EAAAjC,KAAAgB,MAAA3D,MAAA0E,QAAA,UACAG,EAAAlC,KAAAgB,MAAA3D,MAAA0E,QAAA,eACAI,EAAAnC,KAAAgB,MAAA3D,MAAA0E,QAAA,iBAEA,OAAA/B,KAAAgB,MAAA3D,MAAAwE,SAAAJ,MAIA3E,KAAAC,IAAA+E,EAAAE,IAAA,GACAjB,EAAAqB,KAAApC,KAAAgB,MAAA3D,MAAAP,KAAAC,IAAA+E,EAAAE,KAGAlF,KAAAC,IAAAkF,EAAAC,EAAAC,IAAA,GACApB,EAAAqB,KAAApC,KAAAgB,MAAA3D,MAAAP,KAAAC,IAAAkF,EAAAC,EAAAC,KAGApB,IAEAsB,cAxBA,WAyBArC,KAAAgB,MAAA3D,MAAA2C,KAAAwB,wBACA,IAAAT,EAAAf,KAAAgB,MAAA3D,MAAA4D,OAAA,SAAAC,EAAAC,GAAA,OAAAC,OAAAF,MAAAG,OAAAF,GAAA,SACAnB,KAAAU,OAAAY,SAAA,oBAAAP,8BEvDAuB,EAAgBjG,OAAAkG,EAAA,EAAAlG,CACdiE,ECTQ,WAAgB,IAAAkC,EAAAxC,KAAayC,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,aAAuBE,YAAA,eAAAC,OAAkCC,UAAAP,EAAA/B,UAAAuC,YAAAR,EAAAS,GAAA,gCAAAC,SAAA,IAA6FC,IAAKC,OAAAZ,EAAAH,eAA2BgB,OAAQhG,MAAAmF,EAAA,MAAAc,SAAA,SAAAC,GAA2Cf,EAAAnF,MAAAkG,GAAcC,WAAA,WAAqBb,EAAA,mBAAwBG,OAAOW,MAAAjB,EAAAS,GAAA,gCAA6CN,EAAA,aAAkBG,OAAOzF,MAAA,QAAAoG,MAAA,WAAiCjB,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,yBAAAT,EAAAkB,GAAA,KAAAf,EAAA,aAA4EG,OAAOzF,MAAA,WAAAoG,MAAA,cAAuCjB,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,gCAAAT,EAAAkB,GAAA,KAAAf,EAAA,mBAAyFG,OAAOW,MAAAjB,EAAAS,GAAA,2BAAwCN,EAAA,aAAkBG,OAAOzF,MAAA,SAAAoG,MAAA,YAAmCjB,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,0BAAAT,EAAAkB,GAAA,KAAAf,EAAA,aAA6EG,OAAOzF,MAAA,gBAAAoG,MAAA,mBAAiDjB,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,2BAAAT,EAAAkB,GAAA,KAAAf,EAAA,aAA8EG,OAAOzF,MAAA,cAAAoG,MAAA,iBAA6CjB,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,4CDYhjC,EACA,KACA,WACA,MAIAX,EAAAjE,QAAAuF,OAAA,kBACe,IAAAC,EAAAvB,sBEpB4MwB,GC2B3NC,KAAA,mBACAC,OACAC,mBACA3G,KAAA4G,QACAC,QAAA,WACA,YAIA5D,KAVA,WAWA,OACA6D,aACAC,SAAA,GACAC,MAAA,GACAC,SAAA,IAEAC,OACAH,WACAI,UAAAzE,KAAA0E,iBAAAC,QAAA,SAEAL,QACAG,UAAAzE,KAAA4E,cAAAD,QAAA,SAEAJ,WACAE,UAAAzE,KAAA6E,iBAAAF,QAAA,YAKAnE,UACAC,UADA,WAEA,kBAAAT,KAAAU,OAAAC,MAAAC,IAAAC,QAEAiE,WACAC,IADA,WAEA,OAAA/E,KAAAgF,OAAAf,mBAEAgB,IAJA,WAKAjF,KAAAkF,sBAGAC,cAZA,WAaA,OAAAnF,KAAAS,UAAA,iBAGAc,SACA2D,kBADA,WAEAlF,KAAAoF,MAAA,gBAEAC,UAJA,WAIA,IAAAC,EAAAtF,KACAA,KAAAuF,UAAA,WACAD,EAAAE,MAAA,YAAAC,iBAGAC,WATA,SASAC,GAAA,IAAAC,EAAA5F,KACAA,KAAAwF,MAAAG,GAAAE,SAAA,SAAAC,GACA,IAAAA,EAOA,OAJAF,EAAAG,UACAzI,KAAA,QACA0I,QAAAJ,EAAA3C,GAAA,4BAEA,EANA2C,EAAAR,MAAA,mBAAAQ,EAAA5E,MAAAoD,gBAUAQ,cAtBA,SAsBAqB,EAAA5I,EAAAiG,GACA,WAAAjG,EACAiG,EAAA,IAAA4C,MAAAlG,KAAAiD,GAAA,2BACAjD,KAAAmG,WAAA9I,GAGAiG,IAFAA,EAAA,IAAA4C,MAAAlG,KAAAiD,GAAA,8BAKA4B,iBA/BA,SA+BAoB,EAAA5I,EAAAiG,GACA,WAAAjG,EACAiG,EAAA,IAAA4C,MAAAlG,KAAAiD,GAAA,8BAEAK,KAGAoB,iBAtCA,SAsCAuB,EAAA5I,EAAAiG,GACA,WAAAjG,EACAiG,EAAA,IAAA4C,MAAAlG,KAAAiD,GAAA,8BACAjD,KAAAoG,cAAA/I,GAGAiG,IAFAA,EAAA,IAAA4C,MAAAlG,KAAAiD,GAAA,iCAKAkD,WA/CA,SA+CA7B,GAEA,MADA,wIACAvG,KAAAuG,IAEA8B,cAnDA,SAmDA/B,GAEA,MADA,kBACAtG,KAAAsG,MCrHIgC,aAAYhK,OAAAkG,EAAA,EAAAlG,CACdyH,ECTQ,WAAgB,IAAAtB,EAAAxC,KAAayC,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,aAAuBG,OAAOwD,QAAA9D,EAAAsC,UAAAyB,cAAA,EAAAC,MAAAhE,EAAAS,GAAA,uBAAAwD,eAAA,sBAAqHtD,IAAKuD,iBAAA,SAAAC,GAAkCnE,EAAAsC,UAAA6B,GAAqBC,KAAApE,EAAA6C,aAAuB1C,EAAA,WAAgBkE,IAAA,cAAA/D,OAAyBO,MAAAb,EAAA4B,YAAAI,MAAAhC,EAAAgC,MAAAsC,cAAAtE,EAAA2C,cAAA4B,cAAA,MAA4FpE,EAAA,gBAAqBE,YAAA,2BAAAC,OAA8CW,MAAAjB,EAAAS,GAAA,kBAAA+D,KAAA,cAAoDrE,EAAA,YAAiBG,OAAOiB,KAAA,WAAAkD,UAAA,IAAiC5D,OAAQhG,MAAAmF,EAAA4B,YAAA,SAAAd,SAAA,SAAAC,GAA0Df,EAAA0E,KAAA1E,EAAA4B,YAAA,WAAAb,IAA2CC,WAAA,2BAAoC,GAAAhB,EAAAkB,GAAA,KAAAf,EAAA,gBAAqCE,YAAA,2BAAAC,OAA8CW,MAAAjB,EAAAS,GAAA,eAAA+D,KAAA,WAA8CrE,EAAA,YAAiBG,OAAOiB,KAAA,QAAAzG,KAAA,SAA8B+F,OAAQhG,MAAAmF,EAAA4B,YAAA,MAAAd,SAAA,SAAAC,GAAuDf,EAAA0E,KAAA1E,EAAA4B,YAAA,QAAAb,IAAwCC,WAAA,wBAAiC,GAAAhB,EAAAkB,GAAA,KAAAf,EAAA,gBAAqCE,YAAA,0CAAAC,OAA6DW,MAAAjB,EAAAS,GAAA,kBAAA+D,KAAA,cAAoDrE,EAAA,YAAiBG,OAAOxF,KAAA,WAAAyG,KAAA,WAAAoD,aAAA,OAAyD9D,OAAQhG,MAAAmF,EAAA4B,YAAA,SAAAd,SAAA,SAAAC,GAA0Df,EAAA0E,KAAA1E,EAAA4B,YAAA,WAAAb,IAA2CC,WAAA,2BAAoC,OAAAhB,EAAAkB,GAAA,KAAAf,EAAA,QAAiCG,OAAOsE,KAAA,UAAgBA,KAAA,WAAezE,EAAA,aAAkBQ,IAAIkE,MAAA7E,EAAA0C,qBAA+B1C,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,oBAAAT,EAAAkB,GAAA,KAAAf,EAAA,aAAuEG,OAAOxF,KAAA,WAAiB6F,IAAKkE,MAAA,SAAAV,GAAyB,OAAAnE,EAAAkD,WAAA,mBAAuClD,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,iCDY5tD,EACA,KACA,KACA,OAIAoD,EAAShI,QAAAuF,OAAA,uBACM,IAAA0D,EAAAjB,8CEpB2LkB,GC2I1MxD,KAAA,QACAyD,YACAF,mBACAG,qBAAA,EACAC,oBAAA,EACAC,eAAA,EACAC,sBAAA,EACA/D,eAEAjC,SACAiG,SAAA,SAAAC,EAAAjG,EAAAkG,GACA,OAAAD,EAAAjG,SAAAiG,IAAAE,UAAA,EAAAnG,GAAAkG,IAGAxH,KAfA,WAgBA,OACA0H,OAAA,GACAC,iBACAC,yBAAA,EACAC,yBAAA,IAGA5H,UACA6H,QADA,WAEA,OAAArI,KAAAU,OAAAC,MAAAgB,MAAA0G,SAEAC,qBAJA,WAKA,OAAAC,IAAAvI,KAAAU,OAAAC,MAAAgB,MAAA6G,iBAAAC,OAAA,OAEAC,SAPA,WAQA,OAAA1I,KAAAU,OAAAC,MAAAgB,MAAA+G,UAEAC,YAVA,WAWA,OAAA3I,KAAAU,OAAAC,MAAAgB,MAAAgH,aAEAlI,UAbA,WAcA,kBAAAT,KAAAU,OAAAC,MAAAC,IAAAC,QAEA+H,SAhBA,WAiBA,iBAAA5I,KAAAU,OAAAC,MAAAC,IAAAC,QAEAc,MAnBA,WAoBA,OAAA3B,KAAAU,OAAAC,MAAAgB,MAAAkH,cAEAC,WAtBA,WAuBA,OAAA9I,KAAAU,OAAAC,MAAAgB,MAAA6G,iBAEAO,YAzBA,WA0BA,OAAA/I,KAAAU,OAAAC,MAAAgB,MAAAC,QAAA,eAEAoH,MA5BA,WA6BA,QAAAhJ,KAAA4I,UAAA,KAGA9H,QAvDA,WAuDA,IAAAwE,EAAAtF,KACAA,KAAAiJ,0BAAAC,IAAA,SAAAC,GACA7D,EAAA5E,OAAAY,SAAA,eAAA6H,QAAAC,KAAA,KACA,MAEAC,QAAA,WACArJ,KAAAU,OAAAY,SAAA,cACAtB,KAAAU,OAAAY,SAAA,yBACAtB,KAAAU,OAAAY,SAAA,cAAA8H,KAAA,KAEAE,UAjEA,WAkEAtJ,KAAAU,OAAAY,SAAA,oBAEAC,SACAgI,eADA,WAEAvJ,KAAAwF,MAAAgE,WAAAD,kBAEAE,yBAJA,WAKAzJ,KAAAoI,yBAAA,EACApI,KAAAU,OAAAY,SAAA,wBAEAoI,iBARA,SAQAC,GAAA,IAAA/D,EAAA5F,KAAA,OAAA4J,IAAAC,EAAAC,EAAAC,KAAA,SAAAC,IAAA,OAAAH,EAAAC,EAAAG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACAxE,EAAAlF,OAAAY,SAAA,mBAAAqI,GADA,OAEA/D,EAAAuC,yBAAA,EAFA,wBAAA+B,EAAAG,SAAAL,KAAAJ,IAIAU,eAZA,SAYAC,GACA,OAAAA,EAAAC,OAAA,GAAAC,eAEAC,iBAfA,SAeAtB,GACA,IAAAuB,EAAA3K,KAAAU,OAAAC,MAAAgB,MAAAgJ,YACA,KAAAA,EACA3K,KAAAU,OAAAY,SAAA,cAAA8H,SAEApJ,KAAAU,OAAAY,SAAA,eAAA6H,MAAAwB,EAAAvB,UAGAwB,eAvBA,SAuBAC,GACAA,EAAAC,IACA9K,KAAA+K,QAAA3I,MAAA2B,KAAA,YAAAiH,QAAAF,GAAAD,EAAAC,OAGAG,sBA5BA,SA4BA5N,GACA2C,KAAAgB,MAAAkH,cAAA7K,GAEA6N,wBA/BA,WAgCAlL,KAAAoI,yBAAA,GAEA+C,eAlCA,SAkCAC,EAAAC,GACA,OAAAD,EAAAC,IAEAC,UArCA,SAqCAC,GACA,OAAAA,KAAA1J,OAAA,GAEA2J,sBAxCA,SAwCAV,GACA,OAAA9K,KAAAU,OAAAC,MAAA8K,KAAAX,UC/OIY,aAAYrP,OAAAkG,EAAA,EAAAlG,CACdkL,EXTF,WAA0B,IAAA/E,EAAAxC,KAAayC,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,OAAiBE,YAAA,oBAA8BF,EAAA,OAAYE,YAAA,2BAAqCF,EAAA,MAAAH,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,4BAAAN,EAAA,QAAkFE,YAAA,eAAyBL,EAAAkB,GAAA,IAAAlB,EAAAmB,GAAAnB,EAAA8F,sBAAA,SAAA9F,EAAAkB,GAAA,KAAAf,EAAA,qBAAAH,EAAAkB,GAAA,KAAAf,EAAA,OAAiHE,YAAA,qBAA+BF,EAAA,gBAAAH,EAAAkB,GAAA,KAAAf,EAAA,YAAgDE,YAAA,SAAAC,OAA4BE,YAAAR,EAAAS,GAAA,gBAAA0I,cAAA,kBAAoExI,IAAKyI,MAAApJ,EAAAyG,2BAAsC5F,OAAQhG,MAAAmF,EAAA,OAAAc,SAAA,SAAAC,GAA4Cf,EAAAyF,OAAA1E,GAAeC,WAAA,aAAsB,GAAAhB,EAAAkB,GAAA,KAAAf,EAAA,OAA4BE,YAAA,sBAAgCF,EAAA,aAAkBE,YAAA,iBAAAM,IAAiCkE,MAAA,SAAAV,GAAyBnE,EAAA2F,yBAAA,MAAqCxF,EAAA,QAAaE,YAAA,mBAA6BF,EAAA,KAAUE,YAAA,iBAA2BL,EAAAkB,GAAA,aAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,wCAAAT,EAAAkB,GAAA,KAAAf,EAAA,uBAAkHG,OAAO+I,iBAAArJ,EAAA0F,eAAmC/E,IAAK2I,eAAAtJ,EAAA+G,mBAAmC,GAAA/G,EAAAkB,GAAA,KAAAf,EAAA,sBAA2CG,OAAOiJ,sBAAAvJ,EAAA2F,yBAAkDhF,IAAKuG,iBAAAlH,EAAAkH,iBAAAsC,YAAA,SAAArF,GAAuEnE,EAAA2F,yBAAA,MAAsC3F,EAAAkB,GAAA,KAAAf,EAAA,YAA6BsJ,aAAalI,KAAA,UAAAmI,QAAA,YAAA7O,MAAAmF,EAAA,QAAAgB,WAAA,YAA4EqD,IAAA,aAAAsF,aAAgCnD,MAAA,QAAelG,OAAQvC,KAAAiC,EAAAb,MAAAyK,UAAA,MAAgCjJ,IAAKkJ,YAAA,SAAA1F,GAA6B,OAAAnE,EAAAoI,eAAAjE,IAAkC2F,mBAAA9J,EAAAyI,yBAA+CzI,EAAA,UAAAG,EAAA,mBAAwCG,OAAOxF,KAAA,YAAAiP,oBAAA,GAAAvD,MAAA,KAAAwD,MAAA,YAAyEhK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAf,EAAA,mBAA6CG,OAAO4J,YAAAlK,EAAAwG,MAAAvF,MAAAjB,EAAAS,GAAA,YAAA+D,KAAA,QAA8DxE,EAAAkB,GAAA,KAAAf,EAAA,mBAAoCG,OAAOW,MAAAjB,EAAAS,GAAA,cAAA+D,KAAA,YAA+C2F,YAAAnK,EAAAoK,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAAvK,EAAAkB,GAAA,aAAAlB,EAAAmB,GAAAoJ,EAAAlC,IAAAxG,UAAA,cAAA7B,EAAA,UAAAG,EAAA,UAAkGG,OAAOxF,KAAA,OAAA0P,KAAA,UAA6BrK,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAoJ,EAAAlC,IAAAoC,MAAAzK,EAAAS,GAAA,eAAAT,EAAAS,GAAA,wBAAAT,EAAAiK,YAAkHjK,EAAAkB,GAAA,KAAAf,EAAA,mBAAoCG,OAAO4J,YAAAlK,EAAAwG,MAAAvF,MAAAjB,EAAAS,GAAA,iBAAqD0J,YAAAnK,EAAAoK,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,QAAAA,EAAAlC,IAAAqC,aAAAH,EAAAlC,IAAAsC,iBAAAxK,EAAA,UAA4EG,OAAOxF,KAAA,aAAkBkF,EAAA,UAAAG,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,oBAAAN,EAAA,KAA8EE,YAAA,2BAAmCL,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAqJ,EAAAlC,IAAAqC,aAAAH,EAAAlC,IAAAsC,iBAAAxK,EAAA,UAA4FG,OAAOxF,KAAA,YAAiBkF,EAAA,UAAAG,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,yBAAAN,EAAA,KAAmFE,YAAA,2BAAmCL,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAf,EAAA,cAA0CG,OAAOsK,QAAA5K,EAAAS,GAAA,2BAAAoK,OAAA,UAA6DN,EAAAlC,IAAA,iBAAAlI,EAAA,UAA4CG,OAAOxF,KAAA,UAAekF,EAAA,UAAAG,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,wBAAAN,EAAA,KAAkFE,YAAA,8BAAsCL,EAAAiK,MAAA,GAAAjK,EAAAkB,GAAA,KAAAqJ,EAAAlC,IAAAyC,MAAA,MAAA3K,EAAA,UAAAA,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAA/B,UAAA+B,EAAAS,GAAA,eAAAT,EAAA8H,eAAA9H,EAAAS,GAAA,sBAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAqJ,EAAAlC,IAAAyC,MAAA,UAAA3K,EAAA,UAAAA,EAAA,QAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAA/B,UAAA+B,EAAAS,GAAA,mBAAAT,EAAA8H,eAAA9H,EAAAS,GAAA,0BAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAf,EAAA,cAAgZG,OAAOsK,QAAA5K,EAAAS,GAAA,0BAAAoK,OAAA,UAA4DN,EAAAlC,IAAA,qBAAAlI,EAAA,UAAgDG,OAAOxF,KAAA,UAAekF,EAAAkB,GAAA,iBAAAlB,EAAAmB,GAAAnB,EAAA/B,UAAA+B,EAAAS,GAAA,qBAAAT,EAAA8H,eAAA9H,EAAAS,GAAA,yCAAAT,EAAAiK,MAAA,UAAoKjK,EAAAkB,GAAA,KAAAlB,EAAAuG,aAAAvG,EAAA/B,UAAAkC,EAAA,mBAAuEG,OAAOW,MAAAjB,EAAAS,GAAA,6BAA2C0J,YAAAnK,EAAAoK,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAAvK,EAAA8I,UAAAyB,EAAAlC,IAAA0C,qBAAA5K,EAAA,cAAwEG,OAAOsK,QAAAL,EAAAlC,IAAA0C,oBAAAC,eAAA,iBAAAH,OAAA,UAAyF1K,EAAA,QAAAH,EAAAkB,GAAA,kBAAAlB,EAAAmB,GAAAnB,EAAAiL,GAAA,WAAAjL,CAAAuK,EAAAlC,IAAA0C,oBAAA,iCAAA/K,EAAAiK,SAA6I,qBAAwBjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAf,EAAA,mBAA6CG,OAAOW,MAAAjB,EAAAS,GAAA,iBAAAyK,MAAA,SAAgDf,YAAAnK,EAAAoK,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAAvK,EAAA2I,eAAA4B,EAAAlC,IAAA,YAAAlI,EAAA,uBAA8EG,OAAO2I,KAAAsB,EAAAlC,IAAAzB,KAAA,SAAgCjG,IAAKwK,0BAAAnL,EAAA0I,2BAAuDvI,EAAA,aAAkBG,OAAOxF,KAAA,OAAAsQ,SAAA,MAA6BpL,EAAAkB,GAAA,eAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,qCAAAT,EAAA,UAAAG,EAAA,KAAmGE,YAAA,sCAAgDL,EAAAiK,eAAkB,GAAAjK,EAAAkB,GAAA,KAAAf,EAAA,yBAA8CG,OAAO+K,6BAAArL,EAAA4F,yBAAyDjF,IAAK2K,2BAAAtL,EAAAiH,4BAAyDjH,EAAAkB,GAAA,KAAAlB,EAAA6F,QAA8Q7F,EAAAiK,KAA9Q9J,EAAA,OAAuCE,YAAA,eAAyBF,EAAA,iBAAsBG,OAAOiL,MAAAvL,EAAAsG,WAAAkF,eAAAxL,EAAAmG,YAAAsF,YAAAzL,EAAAkG,SAAAwF,sBAAA,GAAAC,OAAA,qBAAqIhL,IAAKiL,iBAAA5L,EAAAkI,qBAAuC,YWY3yK,EACA,KACA,KACA,OAIAgB,EAASrN,QAAAuF,OAAA,YACMyK,EAAA,QAAA3C,6CCpBf,ICA8N4C,GCkB9NvK,KAAA,sBACAC,OACAoE,yBACA9K,KAAA4G,QACAC,SAAA,IAGA3D,UACA+N,WADA,WAEA,OAAAvO,KAAAoI,yBAEAC,QAJA,WAKA,OAAArI,KAAAU,OAAAC,MAAAgB,MAAA0G,SAEAmG,kBAPA,WAQA,OAAAxO,KAAAU,OAAAC,MAAAgB,MAAA8M,mBAAAC,MAEAD,mBAVA,WAWA,OAAAzO,KAAAU,OAAAC,MAAAgB,MAAA8M,mBAAAE,QAGApN,SACAkI,yBADA,WAEAzJ,KAAAoF,MAAA,2CClCA9C,EAAgBjG,OAAAkG,EAAA,EAAAlG,CACdiS,EHRF,WAA0B,IAAA9L,EAAAxC,KAAayC,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,aAAuBsJ,aAAalI,KAAA,UAAAmI,QAAA,YAAA7O,MAAAmF,EAAA,QAAAgB,WAAA,YAA4EV,OAASwD,QAAA9D,EAAA+L,WAAA/H,MAAAhE,EAAAS,GAAA,mCAAAwD,eAAA,+BAAwHtD,IAAKyL,MAAApM,EAAAiH,4BAAsC9G,EAAA,OAAAA,EAAA,KAAoBE,YAAA,yBAAmCL,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,0CAAAT,EAAAmB,GAAAnB,EAAAiM,uBAAAjM,EAAAkB,GAAA,KAAAf,EAAA,KAAAH,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,0CAAAN,EAAA,KAA8LE,YAAA,sBAAAC,OAAyC+L,KAAArM,EAAAgM,kBAAAM,OAAA,YAAgDtM,EAAAkB,GAAAlB,EAAAmB,GAAAnB,EAAAgM,iCGWnsB,EACA,KACA,KACA,MAIAlM,EAAAjE,QAAAuF,OAAA,0BACeyK,EAAA,EAAA/L,oECnBf,ICA6NyM,GC6I7NhL,KAAA,qBACAC,OACAyH,MACAnO,KAAAjB,OACA8H,QAAA,WACA,WAGAiF,MACA9L,KAAA0R,OACA7K,QAAA,SAEA8K,UACA3R,KAAA0R,OACA7K,QAAA,KAGA3D,UACA0O,WACAnK,IADA,WAEA,OAAA/E,KAAAyL,KAAA0D,YAEAlK,IAJA,SAIA3H,GACA0C,KAAAU,OAAAY,SAAA,mBACAmK,KAAAzL,KAAAyL,KACAnO,OACA8R,QAAApP,KAAAyL,KAAAX,GACAuE,UAAArP,KAAAiP,aAIAxO,UAdA,WAeA,kBAAAT,KAAAU,OAAAC,MAAAC,IAAAC,QAEAyO,iBAjBA,WAkBA,OAAAtP,KAAAU,OAAAC,MAAAgB,MAAA4N,YAAAC,SAAA,2CAGAjO,SACAkO,WADA,SACApL,GACArE,KAAAU,OAAAY,SAAA,aAAA+C,IAEAqL,gBAJA,WAIA,IAAApK,EAAAtF,KACAA,KAAA2P,SACA3P,KAAAiD,GAAA,mCAEA2M,kBAAA,MACAC,iBAAA,SACAvS,KAAA,YACAwS,KAAA,WACAxK,EAAAS,UACAzI,KAAA,UACA0I,QAAAV,EAAArC,GAAA,yCAEAqC,EAAA5E,OAAAY,SAAA,qBACAyO,MAAA,WACAzK,EAAAS,UACAzI,KAAA,OACA0I,QAAA,gBAIAgK,sBAxBA,SAwBA3L,GACArE,KAAAoF,MAAA,2BACApF,KAAAU,OAAAY,SAAA,wBAAA+C,IAEA4L,yBA5BA,SA4BAxE,GACAzL,KAAAU,OAAAY,SAAA,2BAAAmK,KAEAyE,eA/BA,SA+BAzE,GAAA,IAAA7F,EAAA5F,KACAA,KAAA2P,SACA3P,KAAAiD,GAAA,iCAEA2M,kBAAA,SACAC,iBAAA,SACAvS,KAAA,YACAwS,KAAA,WACAlK,EAAAlF,OAAAY,SAAA,eAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,OACAiF,MAAA,WACAnK,EAAAG,UACAzI,KAAA,OACA0I,QAAA,uBAIAmK,sBA/CA,SA+CA1E,GACAzL,KAAAU,OAAAY,SAAA,uBAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,YAEAmB,uBAlDA,SAkDA3E,GAAA,IAAA4E,EAAArQ,KACAA,KAAA2P,SACA3P,KAAAiD,GAAA,oCAEA2M,kBAAA,SACAC,iBAAA,SACAvS,KAAA,YACAwS,KAAA,WACAO,EAAA3P,OAAAY,SAAA,eAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,OACAiF,MAAA,WACAM,EAAAtK,UACAzI,KAAA,OACA0I,QAAA,uBAIAsK,wBAlEA,SAkEA7E,GACAzL,KAAAU,OAAAY,SAAA,qBAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,YAEAsB,qBArEA,SAqEA9E,GACAzL,KAAAU,OAAAC,MAAA8K,KAAA+E,SAAAC,SAAAC,cAKA1Q,KAAAU,OAAAY,SAAA,wBAAAmK,IAHAzL,KAAA2Q,OAAA3Q,KAAAiD,GAAA,sCAAA3F,KAAA,WAKAsT,gBA7EA,SAAAC,GA6EA,IAAA5D,EAAA4D,EAAA5D,MAAAnC,EAAA+F,EAAA/F,GACA,OAAAmC,GAAAjN,KAAAwL,sBAAAV,IAEAU,sBAhFA,SAgFAV,GACA,OAAA9K,KAAAU,OAAAC,MAAA8K,KAAAX,QAEAgG,iBAnFA,SAmFArF,GACAA,EAAAyB,YACAlN,KAAAU,OAAAY,SAAA,iBAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,KACA9K,KAAAU,OAAAY,SAAA,mBAAAK,OAAA8J,GAAA2D,QAAA3D,EAAAX,MAEAiG,UAxFA,SAwFAtF,EAAAuF,GACAvF,EAAAwF,KAAAzB,SAAAwB,GACAhR,KAAAU,OAAAY,SAAA,aAAAK,OAAA8J,GAAAuF,MAAA5B,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,WACAjP,KAAAU,OAAAY,SAAA,UAAAK,OAAA8J,GAAAuF,MAAA5B,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,YAEAiC,gBA7FA,SA6FAzF,EAAA0F,GACA1F,EAAA6B,MAAA6D,GACAnR,KAAAU,OAAAY,SAAA,eAAAK,OAAA8J,GAAA0F,QAAA/B,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,WACAjP,KAAAU,OAAAY,SAAA,YAAAK,OAAA8J,GAAA0F,QAAA/B,QAAA3D,EAAAX,GAAAuE,UAAArP,KAAAiP,sCC3QA3M,EAAgBjG,OAAAkG,EAAA,EAAAlG,CACd0S,EHTF,WAA0B,IAAAvM,EAAAxC,KAAayC,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,eAAyBG,OAAOsO,iBAAA,EAAApE,KAAA,QAAArI,QAAA,QAAA0M,UAAA,aAA+EC,UAAWjK,MAAA,SAAAV,GAAyBA,EAAA4K,sBAA4B5O,EAAA,iBAAAH,EAAA4G,KAAAzG,EAAA,aAAmDE,YAAA,mBAAAC,OAAsCxF,KAAA,UAAekF,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,iCAAAT,EAAA,UAAAG,EAAA,KAA2FE,YAAA,sCAAgDL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,kBAAAlB,EAAA4G,MAAA,eAAA5G,EAAA4G,KAAAzG,EAAA,aAAyGE,YAAA,yBAAmCF,EAAA,QAAaE,YAAA,mCAA6CF,EAAA,QAAAA,EAAA,KAAqBE,YAAA,iBAA2BL,EAAAkB,GAAA,eAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,uCAAAT,EAAAkB,GAAA,KAAAf,EAAA,KAAiGE,YAAA,0CAAgDL,EAAAiK,MAAA,GAAAjK,EAAAkB,GAAA,KAAAf,EAAA,oBAAsDE,YAAA,2BAAAC,OAA8CsE,KAAA,YAAkBA,KAAA,aAAiBzE,EAAA,oBAAyBE,YAAA,wBAAkCF,EAAA,aAAkBE,YAAA,oBAAAC,OAAuCE,YAAAR,EAAAS,GAAA,0BAA8CI,OAAQhG,MAAAmF,EAAA,UAAAc,SAAA,SAAAC,GAA+Cf,EAAA0M,UAAA3L,GAAkBC,WAAA,eAAyBb,EAAA,aAAkBG,OAAOW,MAAAjB,EAAAS,GAAA,iBAAA5F,MAAA,aAAmDmF,EAAAkB,GAAA,KAAAf,EAAA,aAA8BG,OAAOW,MAAAjB,EAAAS,GAAA,gBAAA5F,MAAA,aAAiD,OAAAmF,EAAAkB,GAAA,KAAAlB,EAAAoO,gBAAApO,EAAAiJ,MAAA9I,EAAA,oBAA6EG,OAAO0O,QAAA,IAAaF,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA0O,gBAAA1O,EAAAiJ,KAAA,aAAgDjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAiJ,KAAA6B,MAAAmE,MAAAjP,EAAAS,GAAA,qBAAAT,EAAAS,GAAA,iCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAoO,gBAAApO,EAAAiJ,MAAA9I,EAAA,oBAAoM2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA0O,gBAAA1O,EAAAiJ,KAAA,iBAAoDjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAiJ,KAAA6B,MAAAoE,UAAAlP,EAAAS,GAAA,yBAAAT,EAAAS,GAAA,qCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAgJ,sBAAAhJ,EAAAiJ,KAAAX,KAAA,eAAAtI,EAAA4G,KAAAzG,EAAA,oBAAsPG,OAAO0O,QAAAhP,EAAAoO,gBAAApO,EAAAiJ,OAAwC6F,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAsO,iBAAAtO,EAAAiJ,UAAwCjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAiJ,KAAAyB,YAAA1K,EAAAS,GAAA,yBAAAT,EAAAS,GAAA,wCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAgJ,sBAAAhJ,EAAAiJ,KAAAX,KAAA,eAAAtI,EAAA4G,KAAAzG,EAAA,oBAAqP2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA0N,eAAA1N,EAAAiJ,UAAsCjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,oCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAAiJ,KAAA0B,iBAAAxK,EAAA,oBAAgKG,OAAO0O,QAAA,IAAaF,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA2N,sBAAA3N,EAAAiJ,UAA6CjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,qCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAAiJ,KAAA0B,iBAAAxK,EAAA,oBAAiK2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA4N,uBAAA5N,EAAAiJ,UAA8CjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,oCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAAiJ,KAAAkG,qBAAAhP,EAAA,oBAAoKG,OAAO0O,QAAA,IAAaF,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA8N,wBAAA9N,EAAAiJ,UAA+CjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,qCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAAiJ,KAAAkG,qBAAAhP,EAAA,oBAAqK2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAyN,yBAAAzN,EAAAiJ,UAAgDjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,yCAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAA,iBAAAG,EAAA,oBAA8IiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,6BAAmE1M,OAAQ0O,QAAAhP,EAAAoO,gBAAApO,EAAAiJ,OAAwC6F,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,gCAA6DjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,gCAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,4BAAA7M,EAAA,KAA+HE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAA,iBAAAG,EAAA,oBAAgFiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,wBAA8D8B,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,2BAAwDjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,iCAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,uBAAA7M,EAAA,KAA2HE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAA,iBAAAG,EAAA,oBAAgFiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,2BAAiE8B,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,8BAA2DjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,oCAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,0BAAA7M,EAAA,KAAiIE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAA,iBAAAG,EAAA,oBAAgFiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,oBAA0D8B,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,uBAAoDjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,8BAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,mBAAA7M,EAAA,KAAoHE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAA8M,iBAAA3M,EAAA,oBAAkGiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,wCAA8E8B,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,2CAAwEjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,gDAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,uCAAA7M,EAAA,KAA0JE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAAwB,OAAAzK,EAAA8M,iBAAA3M,EAAA,oBAAkGiP,OAAOC,aAAArP,EAAAiJ,KAAAwF,KAAAzB,SAAA,qCAA2E8B,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAuO,UAAAvO,EAAAiJ,KAAA,wCAAqEjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,6CAAAT,EAAAiJ,KAAAwF,KAAAzB,SAAA,oCAAA7M,EAAA,KAAoJE,YAAA,kBAA4BL,EAAAiK,OAAAjK,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAA8M,iBAAqM9M,EAAAiK,KAArM9J,EAAA,oBAAiFE,YAAA,WAAAC,OAA8B0O,QAAA,IAAaF,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAkN,gBAAA/I,OAAqCnE,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,sCAAAT,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAA,MAAA9I,EAAA,oBAAqIG,OAAO0O,QAAA,IAAaF,UAAWjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAwN,sBAAAxN,EAAAiJ,KAAApH,cAAsD7B,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,4CAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAA,MAAA9I,EAAA,oBAA2I2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAA+N,qBAAA/N,EAAAiJ,UAA4CjJ,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,2CAAAT,EAAAiK,KAAAjK,EAAAkB,GAAA,KAAAlB,EAAAiJ,KAAA,MAAA9I,EAAA,oBAA0I2O,UAAUjK,MAAA,SAAAV,GAAyB,OAAAnE,EAAAiN,WAAAjN,EAAAiJ,KAAApH,cAA2C7B,EAAAkB,GAAA,WAAAlB,EAAAmB,GAAAnB,EAAAS,GAAA,iCAAAT,EAAAiK,MAAA,YGYj9N,EACA,KACA,KACA,MAIAnK,EAAAjE,QAAAuF,OAAA,yBACeyK,EAAA,EAAA/L,oECpBf,IAAAwP,EAAAvW,EAAA,QAAAA,EAAAC,EAAAsW,GAAugB","file":"static/js/chunk-342d.479e01dd.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"users-container\"},[_c('div',{staticClass:\"users-header-container\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.users'))+\"\\n \"),_c('span',{staticClass:\"user-count\"},[_vm._v(\"(\"+_vm._s(_vm.normalizedUsersCount)+\")\")])]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"filter-container\"},[_c('users-filter'),_vm._v(\" \"),_c('el-input',{staticClass:\"search\",attrs:{\"placeholder\":_vm.$t('users.search'),\"prefix-icon\":\"el-icon-search\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"actions-container\"},[_c('el-button',{staticClass:\"actions-button\",on:{\"click\":function($event){_vm.createAccountDialogOpen = true}}},[_c('span',{staticClass:\"create-account\"},[_c('i',{staticClass:\"el-icon-plus\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.createAccount'))+\"\\n \")])]),_vm._v(\" \"),_c('multiple-users-menu',{attrs:{\"selected-users\":_vm.selectedUsers},on:{\"apply-action\":_vm.clearSelection}})],1),_vm._v(\" \"),_c('new-account-dialog',{attrs:{\"dialog-form-visible\":_vm.createAccountDialogOpen},on:{\"createNewAccount\":_vm.createNewAccount,\"closeWindow\":function($event){_vm.createAccountDialogOpen = false}}}),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],ref:\"usersTable\",staticStyle:{\"width\":\"100%\"},attrs:{\"data\":_vm.users,\"row-key\":\"id\"},on:{\"row-click\":function($event){return _vm.handleRowClick($event)},\"selection-change\":_vm.handleSelectionChange}},[(_vm.isDesktop)?_c('el-table-column',{attrs:{\"type\":\"selection\",\"reserve-selection\":\"\",\"width\":\"44\",\"align\":\"center\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.width,\"label\":_vm.$t('users.id'),\"prop\":\"id\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('users.name'),\"prop\":\"nickname\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_vm._v(\"\\n \"+_vm._s(scope.row.nickname)+\"\\n \"),(_vm.isDesktop)?_c('el-tag',{attrs:{\"type\":\"info\",\"size\":\"mini\"}},[_c('span',[_vm._v(_vm._s(scope.row.local ? _vm.$t('users.local') : _vm.$t('users.external')))])]):_vm._e()]}}])}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.width,\"label\":_vm.$t('users.status')},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(!scope.row.deactivated & !scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"success\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.active')))]):_c('i',{staticClass:\"el-icon-circle-check\"})]):_vm._e(),_vm._v(\" \"),(scope.row.deactivated & !scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"danger\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.deactivated')))]):_c('i',{staticClass:\"el-icon-circle-close\"})]):_vm._e(),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('users.unapprovedAccount'),\"effect\":\"dark\"}},[(scope.row.approval_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[(_vm.isDesktop)?_c('span',[_vm._v(_vm._s(_vm.$t('users.unapproved')))]):_c('i',{staticClass:\"el-icon-warning-outline\"})]):_vm._e()],1),_vm._v(\" \"),(scope.row.roles.admin)?_c('el-tag',[_c('span',[_vm._v(_vm._s(_vm.isDesktop ? _vm.$t('users.admin') : _vm.getFirstLetter(_vm.$t('users.admin'))))])]):_vm._e(),_vm._v(\" \"),(scope.row.roles.moderator)?_c('el-tag',[_c('span',[_vm._v(_vm._s(_vm.isDesktop ? _vm.$t('users.moderator') : _vm.getFirstLetter(_vm.$t('users.moderator'))))])]):_vm._e(),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('users.unconfirmedEmail'),\"effect\":\"dark\"}},[(scope.row.confirmation_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(\"\\n \"+_vm._s(_vm.isDesktop ? _vm.$t('users.unconfirmed') : _vm.getFirstLetter(_vm.$t('users.unconfirmed')))+\"\\n \")]):_vm._e()],1)]}}])}),_vm._v(\" \"),(_vm.pendingView && _vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('users.registrationReason')},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(_vm.regReason(scope.row.registration_reason))?_c('el-tooltip',{attrs:{\"content\":scope.row.registration_reason,\"popper-class\":\"reason-tooltip\",\"effect\":\"dark\"}},[_c('span',[_vm._v(\"\\n \\\"\"+_vm._s(_vm._f(\"truncate\")(scope.row.registration_reason,100, '...'))+\"\\\"\\n \")])]):_vm._e()]}}],null,false,975858353)}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('users.actions'),\"fixed\":\"right\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(_vm.propertyExists(scope.row, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":scope.row,\"page\":'users'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_c('el-button',{attrs:{\"type\":\"text\",\"disabled\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()])]}}])})],1),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.usersCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-select\n v-model=\"value\"\n :clearable=\"isDesktop\"\n :placeholder=\"$t('usersFilter.inputPlaceholder')\"\n multiple\n class=\"select-field\"\n @change=\"toggleFilters\">\n <el-option-group :label=\"$t('usersFilter.byAccountType')\">\n <el-option value=\"local\" label=\"Local\">{{ $t('usersFilter.local') }}</el-option>\n <el-option value=\"external\" label=\"External\">{{ $t('usersFilter.external') }}</el-option>\n </el-option-group>\n <el-option-group :label=\"$t('usersFilter.byStatus')\">\n <el-option value=\"active\" label=\"Active\">{{ $t('usersFilter.active') }}</el-option>\n <el-option value=\"need_approval\" label=\"Need Approval\">{{ $t('usersFilter.pending') }}</el-option>\n <el-option value=\"deactivated\" label=\"Deactivated\">{{ $t('usersFilter.deactivated') }}</el-option>\n </el-option-group>\n </el-select>\n</template>\n\n<script>\nexport default {\n data() {\n return {\n value: ['local', 'active']\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n created() {\n const currentFilters = this.$data.value.reduce((acc, filter) => ({ ...acc, [filter]: true }), {})\n this.$store.dispatch('ToggleUsersFilter', currentFilters)\n },\n methods: {\n removeOppositeFilters() {\n const filtersQuantity = Object.keys(this.$store.state.users.filters).length\n const currentFilters = []\n const indexOfLocal = this.$data.value.indexOf('local')\n const indexOfExternal = this.$data.value.indexOf('external')\n const indexOfActive = this.$data.value.indexOf('active')\n const indexOfDeactivated = this.$data.value.indexOf('deactivated')\n const indexOfPending = this.$data.value.indexOf('need_approval')\n\n if (this.$data.value.length === filtersQuantity) {\n return []\n }\n\n Math.max(indexOfLocal, indexOfExternal) > -1\n ? currentFilters.push(this.$data.value[Math.max(indexOfLocal, indexOfExternal)])\n : currentFilters\n\n Math.max(indexOfActive, indexOfDeactivated, indexOfPending) > -1\n ? currentFilters.push(this.$data.value[Math.max(indexOfActive, indexOfDeactivated, indexOfPending)])\n : currentFilters\n\n return currentFilters\n },\n toggleFilters() {\n this.$data.value = this.removeOppositeFilters()\n const currentFilters = this.$data.value.reduce((acc, filter) => ({ ...acc, [filter]: true }), {})\n this.$store.dispatch('ToggleUsersFilter', currentFilters)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.select-field {\n width: 350px;\n}\n\n@media only screen and (max-width:480px) {\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./UsersFilter.vue?vue&type=template&id=377d5068&scoped=true&\"\nimport script from \"./UsersFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./UsersFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"377d5068\",\n null\n \n)\n\ncomponent.options.__file = \"UsersFilter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-select',{staticClass:\"select-field\",attrs:{\"clearable\":_vm.isDesktop,\"placeholder\":_vm.$t('usersFilter.inputPlaceholder'),\"multiple\":\"\"},on:{\"change\":_vm.toggleFilters},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}},[_c('el-option-group',{attrs:{\"label\":_vm.$t('usersFilter.byAccountType')}},[_c('el-option',{attrs:{\"value\":\"local\",\"label\":\"Local\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.local')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"external\",\"label\":\"External\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.external')))])],1),_vm._v(\" \"),_c('el-option-group',{attrs:{\"label\":_vm.$t('usersFilter.byStatus')}},[_c('el-option',{attrs:{\"value\":\"active\",\"label\":\"Active\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.active')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"need_approval\",\"label\":\"Need Approval\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.pending')))]),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"deactivated\",\"label\":\"Deactivated\"}},[_vm._v(_vm._s(_vm.$t('usersFilter.deactivated')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewAccountDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n :visible.sync=\"isVisible\"\n :show-close=\"false\"\n :title=\"$t('users.createAccount')\"\n custom-class=\"create-user-dialog\"\n @open=\"resetForm\">\n <el-form ref=\"newUserForm\" :model=\"newUserForm\" :rules=\"rules\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('users.username')\" prop=\"nickname\" class=\"create-account-form-item\">\n <el-input v-model=\"newUserForm.nickname\" name=\"nickname\" autofocus/>\n </el-form-item>\n <el-form-item :label=\"$t('users.email')\" prop=\"email\" class=\"create-account-form-item\">\n <el-input v-model=\"newUserForm.email\" name=\"email\" type=\"email\"/>\n </el-form-item>\n <el-form-item :label=\"$t('users.password')\" prop=\"password\" class=\"create-account-form-item-without-margin\">\n <el-input v-model=\"newUserForm.password\" type=\"password\" name=\"password\" autocomplete=\"off\"/>\n </el-form-item>\n </el-form>\n <span slot=\"footer\">\n <el-button @click=\"closeDialogWindow\">{{ $t('users.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"submitForm('newUserForm')\">{{ $t('users.create') }}</el-button>\n </span>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'NewAccountDialog',\n props: {\n dialogFormVisible: {\n type: Boolean,\n default: function() {\n return false\n }\n }\n },\n data() {\n return {\n newUserForm: {\n nickname: '',\n email: '',\n password: ''\n },\n rules: {\n nickname: [\n { validator: this.validateUsername, trigger: 'blur' }\n ],\n email: [\n { validator: this.validateEmail, trigger: 'blur' }\n ],\n password: [\n { validator: this.validatePassword, trigger: 'blur' }\n ]\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isVisible: {\n get() {\n return this.$props.dialogFormVisible\n },\n set() {\n this.closeDialogWindow()\n }\n },\n getLabelWidth() {\n return this.isDesktop ? '120px' : '85px'\n }\n },\n methods: {\n closeDialogWindow() {\n this.$emit('closeWindow')\n },\n resetForm() {\n this.$nextTick(() => {\n this.$refs['newUserForm'].resetFields()\n })\n },\n submitForm(formName) {\n this.$refs[formName].validate((valid) => {\n if (valid) {\n this.$emit('createNewAccount', this.$data.newUserForm)\n } else {\n this.$message({\n type: 'error',\n message: this.$t('users.submitFormError')\n })\n return false\n }\n })\n },\n validateEmail(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyEmailError')))\n } else if (!this.validEmail(value)) {\n return callback(new Error(this.$t('users.invalidEmailError')))\n } else {\n return callback()\n }\n },\n validatePassword(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyPasswordError')))\n } else {\n return callback()\n }\n },\n validateUsername(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('users.emptyNicknameError')))\n } else if (!this.validNickname(value)) {\n return callback(new Error(this.$t('users.invalidNicknameError')))\n } else {\n return callback()\n }\n },\n validEmail(email) {\n var re = /^[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])?)*$/\n return re.test(email)\n },\n validNickname(nickname) {\n var re = /^[a-zA-Z\\d_-]+$/\n return re.test(nickname)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.el-dialog__body {\n padding: 20px 20px 20px 20px\n}\n.create-account-form-item {\n margin-bottom: 20px;\n}\n.create-account-form-item-without-margin {\n margin-bottom: 0px;\n}\n\n@media only screen and (max-width:480px) {\n .create-user-dialog {\n width: 85%\n }\n .create-account-form-item {\n margin-bottom: 20px;\n }\n .el-dialog__body {\n padding: 20px 20px 20px 20px\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./NewAccountDialog.vue?vue&type=template&id=598523c6&\"\nimport script from \"./NewAccountDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./NewAccountDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NewAccountDialog.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NewAccountDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{attrs:{\"visible\":_vm.isVisible,\"show-close\":false,\"title\":_vm.$t('users.createAccount'),\"custom-class\":\"create-user-dialog\"},on:{\"update:visible\":function($event){_vm.isVisible=$event},\"open\":_vm.resetForm}},[_c('el-form',{ref:\"newUserForm\",attrs:{\"model\":_vm.newUserForm,\"rules\":_vm.rules,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{staticClass:\"create-account-form-item\",attrs:{\"label\":_vm.$t('users.username'),\"prop\":\"nickname\"}},[_c('el-input',{attrs:{\"name\":\"nickname\",\"autofocus\":\"\"},model:{value:(_vm.newUserForm.nickname),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"nickname\", $$v)},expression:\"newUserForm.nickname\"}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"create-account-form-item\",attrs:{\"label\":_vm.$t('users.email'),\"prop\":\"email\"}},[_c('el-input',{attrs:{\"name\":\"email\",\"type\":\"email\"},model:{value:(_vm.newUserForm.email),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"email\", $$v)},expression:\"newUserForm.email\"}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"create-account-form-item-without-margin\",attrs:{\"label\":_vm.$t('users.password'),\"prop\":\"password\"}},[_c('el-input',{attrs:{\"type\":\"password\",\"name\":\"password\",\"autocomplete\":\"off\"},model:{value:(_vm.newUserForm.password),callback:function ($$v) {_vm.$set(_vm.newUserForm, \"password\", $$v)},expression:\"newUserForm.password\"}})],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('users.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":function($event){return _vm.submitForm('newUserForm')}}},[_vm._v(_vm._s(_vm.$t('users.create')))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"users-container\">\n <div class=\"users-header-container\">\n <h1>\n {{ $t('users.users') }}\n <span class=\"user-count\">({{ normalizedUsersCount }})</span>\n </h1>\n <reboot-button/>\n </div>\n <div class=\"filter-container\">\n <users-filter/>\n <el-input\n :placeholder=\"$t('users.search')\"\n v-model=\"search\"\n prefix-icon=\"el-icon-search\"\n class=\"search\"\n @input=\"handleDebounceSearchInput\"/>\n </div>\n <div class=\"actions-container\">\n <el-button class=\"actions-button\" @click=\"createAccountDialogOpen = true\">\n <span class=\"create-account\">\n <i class=\"el-icon-plus\"/>\n {{ $t('users.createAccount') }}\n </span>\n </el-button>\n <multiple-users-menu\n :selected-users=\"selectedUsers\"\n @apply-action=\"clearSelection\"/>\n </div>\n <new-account-dialog\n :dialog-form-visible=\"createAccountDialogOpen\"\n @createNewAccount=\"createNewAccount\"\n @closeWindow=\"createAccountDialogOpen = false\"/>\n <el-table\n v-loading=\"loading\"\n ref=\"usersTable\"\n :data=\"users\"\n row-key=\"id\"\n style=\"width: 100%\"\n @row-click=\"handleRowClick($event)\"\n @selection-change=\"handleSelectionChange\">\n <el-table-column\n v-if=\"isDesktop\"\n type=\"selection\"\n reserve-selection\n width=\"44\"\n align=\"center\"/>\n <el-table-column :min-width=\"width\" :label=\"$t('users.id')\" prop=\"id\" />\n <el-table-column :label=\"$t('users.name')\" prop=\"nickname\">\n <template slot-scope=\"scope\">\n {{ scope.row.nickname }}\n <el-tag v-if=\"isDesktop\" type=\"info\" size=\"mini\">\n <span>{{ scope.row.local ? $t('users.local') : $t('users.external') }}</span>\n </el-tag>\n </template>\n </el-table-column>\n <el-table-column :min-width=\"width\" :label=\"$t('users.status')\">\n <template slot-scope=\"scope\">\n <el-tag v-if=\"!scope.row.deactivated & !scope.row.approval_pending\" type=\"success\">\n <span v-if=\"isDesktop\">{{ $t('users.active') }}</span>\n <i v-else class=\"el-icon-circle-check\"/>\n </el-tag>\n <el-tag v-if=\"scope.row.deactivated & !scope.row.approval_pending\" type=\"danger\">\n <span v-if=\"isDesktop\">{{ $t('users.deactivated') }}</span>\n <i v-else class=\"el-icon-circle-close\"/>\n </el-tag>\n <el-tooltip :content=\"$t('users.unapprovedAccount')\" effect=\"dark\">\n <el-tag v-if=\"scope.row.approval_pending\" type=\"info\">\n <span v-if=\"isDesktop\">{{ $t('users.unapproved') }}</span>\n <i v-else class=\"el-icon-warning-outline\"/>\n </el-tag>\n </el-tooltip>\n <el-tag v-if=\"scope.row.roles.admin\">\n <span>{{ isDesktop ? $t('users.admin') : getFirstLetter($t('users.admin')) }}</span>\n </el-tag>\n <el-tag v-if=\"scope.row.roles.moderator\">\n <span>{{ isDesktop ? $t('users.moderator') : getFirstLetter($t('users.moderator')) }}</span>\n </el-tag>\n <el-tooltip :content=\"$t('users.unconfirmedEmail')\" effect=\"dark\">\n <el-tag v-if=\"scope.row.confirmation_pending\" type=\"info\">\n {{ isDesktop ? $t('users.unconfirmed') : getFirstLetter($t('users.unconfirmed')) }}\n </el-tag>\n </el-tooltip>\n </template>\n </el-table-column>\n <el-table-column v-if=\"pendingView && isDesktop\" :label=\"$t('users.registrationReason')\">\n <template slot-scope=\"scope\">\n <el-tooltip\n v-if=\"regReason(scope.row.registration_reason)\"\n :content=\"scope.row.registration_reason\"\n popper-class=\"reason-tooltip\"\n effect=\"dark\">\n <span>\n \"{{ scope.row.registration_reason | truncate(100, '...') }}\"\n </span>\n </el-tooltip>\n </template>\n </el-table-column>\n <el-table-column :label=\"$t('users.actions')\" fixed=\"right\">\n <template slot-scope=\"scope\">\n <moderation-dropdown\n v-if=\"propertyExists(scope.row, 'nickname')\"\n :user=\"scope.row\"\n :page=\"'users'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <el-button v-else type=\"text\" disabled>\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div v-if=\"!loading\" class=\"pagination\">\n <el-pagination\n :total=\"usersCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport debounce from 'lodash.debounce'\nimport numeral from 'numeral'\nimport UsersFilter from './components/UsersFilter'\nimport MultipleUsersMenu from './components/MultipleUsersMenu'\nimport NewAccountDialog from './components/NewAccountDialog'\nimport ModerationDropdown from './components/ModerationDropdown'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from './components/ResetPasswordDialog'\n\nexport default {\n name: 'Users',\n components: {\n NewAccountDialog,\n ModerationDropdown,\n MultipleUsersMenu,\n RebootButton,\n ResetPasswordDialog,\n UsersFilter\n },\n filters: {\n truncate: function(text, length, suffix) {\n return text.length < length ? text : text.substring(0, length) + suffix\n }\n },\n data() {\n return {\n search: '',\n selectedUsers: [],\n createAccountDialogOpen: false,\n resetPasswordDialogOpen: false\n }\n },\n computed: {\n loading() {\n return this.$store.state.users.loading\n },\n normalizedUsersCount() {\n return numeral(this.$store.state.users.totalUsersCount).format('0a')\n },\n pageSize() {\n return this.$store.state.users.pageSize\n },\n currentPage() {\n return this.$store.state.users.currentPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n users() {\n return this.$store.state.users.fetchedUsers\n },\n usersCount() {\n return this.$store.state.users.totalUsersCount\n },\n pendingView() {\n return this.$store.state.users.filters['need_approval']\n },\n width() {\n return this.isMobile ? 55 : false\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.$store.dispatch('SearchUsers', { query, page: 1 })\n }, 500)\n },\n mounted: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchTagPolicySetting')\n this.$store.dispatch('FetchUsers', { page: 1 })\n },\n destroyed() {\n this.$store.dispatch('ClearUsersState')\n },\n methods: {\n clearSelection() {\n this.$refs.usersTable.clearSelection()\n },\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n async createNewAccount(accountData) {\n await this.$store.dispatch('CreateNewAccount', accountData)\n this.createAccountDialogOpen = false\n },\n getFirstLetter(str) {\n return str.charAt(0).toUpperCase()\n },\n handlePageChange(page) {\n const searchQuery = this.$store.state.users.searchQuery\n if (searchQuery === '') {\n this.$store.dispatch('FetchUsers', { page })\n } else {\n this.$store.dispatch('SearchUsers', { query: searchQuery, page })\n }\n },\n handleRowClick(row) {\n if (row.id) {\n this.$router.push({ name: 'UsersShow', params: { id: row.id }})\n }\n },\n handleSelectionChange(value) {\n this.$data.selectedUsers = value\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n },\n regReason(reason) {\n return reason && reason.length > 0\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.actions-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n}\n.actions-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 0 15px 10px 15px;\n .el-dropdown {\n margin-left: 10px;\n }\n}\n.active-tag {\n color: #409EFF;\n font-weight: 700;\n .el-icon-check {\n color: #409EFF;\n float: right;\n margin: 7px 0 0 15px;\n }\n}\n.active-tag.is-disabled {\n .el-icon-check {\n color: #bbb;\n }\n}\n.el-dropdown-link:hover {\n cursor: pointer;\n color: #409EFF;\n }\n.create-account > .el-icon-plus {\n margin-right: 5px;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.reason-tooltip {\n max-width: 450px;\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.users-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.users-container {\n h1 {\n margin: 10px 0 0 15px;\n height: 40px;\n }\n .cell {\n word-break: break-word;\n }\n .el-table__row:hover {\n cursor: pointer;\n }\n .pagination {\n margin: 25px 0;\n text-align: center;\n }\n .reboot-button {\n margin: 0 15px 0 0;\n padding: 10px;\n width: 145px;\n }\n .search {\n width: 350px;\n float: right;\n margin-left: 10px;\n }\n .filter-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 15px\n }\n .user-count {\n color: gray;\n font-size: 28px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .password-reset-token-dialog {\n width: 85%\n }\n .users-container {\n h1 {\n margin: 0;\n }\n .actions-button {\n width: 100%;\n }\n .actions-container {\n display: flex;\n flex-direction: column;\n margin: 0 10px 7px 10px\n }\n .el-icon-arrow-down {\n font-size: 12px;\n }\n .search {\n width: 100%;\n margin-left: 0;\n }\n .filter-container {\n display: flex;\n height: 82px;\n flex-direction: column;\n margin: 0 10px\n }\n .el-table__row {\n .el-tag {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 30px;\n margin-bottom: 4px;\n font-weight: bold;\n }\n }\n .reboot-button {\n margin: 0;\n }\n .users-header-container {\n margin: 7px 10px 12px 10px;\n }\n .user-count {\n color: gray;\n font-size: 22px;\n }\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .actions-button {\n width: 49%;\n }\n .search {\n width: 49%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=4a4216bc&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{staticClass:\"moderation-dropdown-menu\",attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(!_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.enableTagPolicy($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.enableTagPolicy'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\" class=\"moderation-dropdown-menu\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"!tagPolicyEnabled\"\n divided\n class=\"no-hover\"\n @click.native=\"enableTagPolicy\">\n {{ $t('users.enableTagPolicy') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n tagPolicyEnabled() {\n return this.$store.state.users.mrfPolicies.includes('Pleroma.Web.ActivityPub.MRF.TagPolicy')\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n enableTagPolicy() {\n this.$confirm(\n this.$t('users.confirmEnablingTagPolicy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('users.enableTagPolicySuccessMessage')\n })\n this.$store.dispatch('EnableTagPolicy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n .moderation-dropdown-menu {\n width: 350px;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n .moderation-dropdown-menu {\n width: auto;\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=346bdee8&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UsersFilter.vue?vue&type=style&index=0&id=377d5068&rel=stylesheet%2Fscss&lang=scss&scoped=true&\""],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-40a4.762ab622.js b/priv/static/adminfe/static/js/chunk-40a4.762ab622.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-40a4"],{"07OA":function(t,e,s){"use strict";var a=s("51EY");s.n(a).a},"51EY":function(t,e,s){},"5tnn":function(t,e,s){"use strict";var a=s("V/GZ");s.n(a).a},"G/Mk":function(t,e,s){"use strict";var a=s("xdcp");s.n(a).a},Lbbz:function(t,e,s){"use strict";var a=s("Sxb/");s.n(a).a},RnhZ:function(t,e,s){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=n(t);return s(e)}function n(t){if(!s.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=n,t.exports=r,r.id="RnhZ"},"Sxb/":function(t,e,s){},"V/GZ":function(t,e,s){},cEOe:function(t,e,s){"use strict";s.r(e);var a=s("ZhIB"),r=s.n(a),n=s("wd/R"),o=s.n(n),i={name:"NoteCard",props:{report:{type:Object,required:!0},note:{type:Object,required:!0}},methods:{handleNoteDeletion:function(t,e){var s=this;this.$confirm("Are you sure you want to delete this note?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteReportNote",{noteID:t,reportID:e}),s.$message({type:"success",message:"Delete completed"})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},parseTimestamp:function(t){return o()(t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,e){return t[e]}}},c=(s("G/Mk"),s("KHd+")),l=Object(c.a)(i,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-card",{staticClass:"note-card"},[s("div",{attrs:{slot:"header"},slot:"header"},[s("div",{staticClass:"note-header"},[t.propertyExists(t.note.user,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.note.user.id}}}},[s("div",{staticClass:"note-actor"},[t.propertyExists(t.note.user,"avatar")?s("img",{staticClass:"note-avatar-img",attrs:{src:t.note.user.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(t.note.user,"nickname")?s("span",{staticClass:"note-actor-name"},[t._v(t._s(t.note.user.nickname))]):s("span",{staticClass:"note-actor-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])])]):t._e(),t._v(" "),s("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.handleNoteDeletion(t.note.id,t.report.id)}}},[t._v("\n "+t._s(t.$t("reports.deleteNote"))+"\n ")])],1)]),t._v(" "),s("div",{staticClass:"note-body"},[s("span",{staticClass:"note-content",domProps:{innerHTML:t._s(t.note.content)}}),t._v("\n "+t._s(t.parseTimestamp(t.note.created_at))+"\n ")])])},[],!1,null,null,null);l.options.__file="NoteCard.vue";var u=l.exports,d=s("ot3S"),p={name:"ModerateUserDropdown",props:{account:{type:Object,required:!0}},computed:{tags:function(){return this.account.tags||[]}},methods:{handleDeactivation:function(t){var e=t.nickname;this.$store.dispatch("ToggleUserActivation",e)},handleDeletion:function(t){this.$store.dispatch("DeleteUser",t)},showDeactivatedButton:function(t){return this.$store.state.user.id!==t},toggleTag:function(t,e){t.tags.includes(e)?this.$store.dispatch("RemoveTag",{users:[t],tag:e}):this.$store.dispatch("AddTag",{users:[t],tag:e})}}},v=Object(c.a)(p,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-dropdown",{attrs:{trigger:"click"}},[s("el-button",{attrs:{disabled:!t.account.id,plain:"",size:"small",icon:"el-icon-files"}},[t._v(t._s(t.$t("reports.moderateUser"))+"\n "),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),s("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t.showDeactivatedButton(t.account)?s("el-dropdown-item",{nativeOn:{click:function(e){return t.handleDeactivation(t.account)}}},[t._v("\n "+t._s(t.account.deactivated?t.$t("users.activateAccount"):t.$t("users.deactivateAccount"))+"\n ")]):t._e(),t._v(" "),t.showDeactivatedButton(t.account.id)?s("el-dropdown-item",{nativeOn:{click:function(e){return t.handleDeletion(t.account.id)}}},[t._v("\n "+t._s(t.$t("users.deleteAccount"))+"\n ")]):t._e(),t._v(" "),s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:!0},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.forceNsfw"))+"\n "),t.tags.includes("mrf_tag:media-force-nsfw")?s("i",{staticClass:"el-icon-check"}):t._e()]),t._v(" "),s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.stripMedia"))+"\n "),t.tags.includes("mrf_tag:media-strip")?s("i",{staticClass:"el-icon-check"}):t._e()]),t._v(" "),s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.forceUnlisted"))+"\n "),t.tags.includes("mrf_tag:force-unlisted")?s("i",{staticClass:"el-icon-check"}):t._e()]),t._v(" "),s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.sandbox"))+"\n "),t.tags.includes("mrf_tag:sandbox")?s("i",{staticClass:"el-icon-check"}):t._e()]),t._v(" "),t.account.local?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.disableRemoteSubscription"))+"\n "),t.tags.includes("mrf_tag:disable-remote-subscription")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.account.local?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.disableAnySubscription"))+"\n "),t.tags.includes("mrf_tag:disable-any-subscription")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e()],1)],1)},[],!1,null,null,null);v.options.__file="ModerateUserDropdown.vue";var m=v.exports,_={name:"Report",components:{Status:d.a,ModerateUserDropdown:m,NoteCard:u},props:{reports:{type:Array,required:!0}},data:function(){return{notes:{}}},computed:{loading:function(){return this.$store.state.reports.loading},pageSize:function(){return this.$store.state.reports.pageSize},totalReportsCount:function(){return this.$store.state.reports.totalReportsCount},currentPage:function(){return this.$store.state.reports.currentPage}},methods:{changeReportState:function(t,e){this.$store.dispatch("ChangeReportState",[{state:t,id:e}])},capitalizeFirstLetter:function(t){return t.charAt(0).toUpperCase()+t.slice(1)},getStateType:function(t){switch(t){case"closed":return"info";case"resolved":return"success";default:return"primary"}},getStatusesTitle:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return"Reported statuses: ".concat(t.length," item(s)")},getNotesTitle:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return"Notes: ".concat(t.length," item(s)")},handleNewNote:function(t){this.$store.dispatch("CreateReportNote",{content:this.notes[t],reportID:t}),this.notes[t]=""},handlePageChange:function(t){this.$store.dispatch("FetchReports",t)},parseTimestamp:function(t){return o()(t).format("L HH:mm")},propertyExists:function(t,e,s){return s?t[e]&&t[s]:t[e]},showStatuses:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).length>0}}},g=(s("07OA"),Object(c.a)(_,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("el-timeline",{staticClass:"reports-timeline"},t._l(t.reports,function(e){return s("el-timeline-item",{key:e.id,staticClass:"timeline-item-container",attrs:{timestamp:t.parseTimestamp(e.created_at),placement:"top"}},[s("el-card",{staticClass:"report"},[s("div",{staticClass:"report-header-container"},[s("div",{staticClass:"title-container"},[t.propertyExists(e.account,"nickname")?s("h3",{staticClass:"report-title"},[t._v(t._s(t.$t("reports.reportOn"))+" "+t._s(e.account.nickname))]):s("h3",{staticClass:"report-title"},[t._v(t._s(t.$t("reports.report")))]),t._v(" "),t.propertyExists(e.account,"id")?s("h5",{staticClass:"id"},[t._v(t._s(t.$t("reports.id"))+": "+t._s(e.id))]):t._e()]),t._v(" "),s("div",[s("el-tag",{staticClass:"report-tag",attrs:{type:t.getStateType(e.state),size:"large"}},[t._v(t._s(t.capitalizeFirstLetter(e.state)))]),t._v(" "),s("el-dropdown",{attrs:{trigger:"click"}},[s("el-button",{staticClass:"report-actions-button",attrs:{plain:"",size:"small",icon:"el-icon-edit"}},[t._v(t._s(t.$t("reports.changeState"))),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),s("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},["resolved"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("resolved",e.id)}}},[t._v(t._s(t.$t("reports.resolve")))]):t._e(),t._v(" "),"open"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("open",e.id)}}},[t._v(t._s(t.$t("reports.reopen")))]):t._e(),t._v(" "),"closed"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("closed",e.id)}}},[t._v(t._s(t.$t("reports.close")))]):t._e()],1)],1),t._v(" "),t.propertyExists(e.account,"nickname")?s("moderate-user-dropdown",{attrs:{account:e.account}}):t._e()],1)]),t._v(" "),s("el-divider",{staticClass:"divider"}),t._v(" "),s("div",{staticClass:"report-account-container"},[s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.account"))+":")]),t._v(" "),s("div",{staticClass:"report-account"},[t.propertyExists(e.account,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:e.account.id}}}},[t.propertyExists(e.account,"avatar")?s("img",{staticClass:"avatar-img",attrs:{src:e.account.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(e.account,"nickname")?s("span",{staticClass:"report-account-name"},[t._v(t._s(e.account.nickname))]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")]),t._v(" "),t.propertyExists(e.account,"url")?s("a",{staticClass:"account",attrs:{href:e.account.url,target:"_blank"}},[t._v("\n "+t._s(t.$t("userProfile.openAccountInInstance"))+"\n "),s("i",{staticClass:"el-icon-top-right"})]):t._e()],1)]),t._v(" "),e.content&&e.content.length>0?s("div",[s("el-divider",{staticClass:"divider"}),t._v(" "),s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.content"))+":\n "),s("span",[t._v(t._s(e.content))])])],1):t._e(),t._v(" "),s("el-divider",{staticClass:"divider"}),t._v(" "),s("div",{staticClass:"report-account-container",style:t.showStatuses(e.statuses)?"":"margin-bottom:15px"},[s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.actor"))+":")]),t._v(" "),s("div",{staticClass:"report-account"},[t.propertyExists(e.actor,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:e.actor.id}}}},[t.propertyExists(e.actor,"avatar")?s("img",{staticClass:"avatar-img",attrs:{src:e.actor.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(e.actor,"nickname")?s("span",{staticClass:"report-account-name"},[t._v(t._s(e.actor.nickname))]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")]),t._v(" "),t.propertyExists(e.actor,"url")?s("a",{staticClass:"account",attrs:{href:e.actor.url,target:"_blank"}},[t._v("\n "+t._s(t.$t("userProfile.openAccountInInstance"))+"\n "),s("i",{staticClass:"el-icon-top-right"})]):t._e()],1)]),t._v(" "),t.showStatuses(e.statuses)?s("div",{staticClass:"reported-statuses"},[s("el-collapse",[s("el-collapse-item",{attrs:{title:t.getStatusesTitle(e.statuses)}},t._l(e.statuses,function(a){return s("div",{key:a.id},[s("status",{attrs:{status:a,account:a.account.nickname?a.account:e.account,"show-checkbox":!1,page:t.currentPage}})],1)}),0)],1)],1):t._e(),t._v(" "),s("div",{staticClass:"report-notes"},[s("el-collapse",[s("el-collapse-item",{attrs:{title:t.getNotesTitle(e.notes)}},t._l(e.notes,function(t,a){return s("note-card",{key:a,attrs:{note:t,report:e}})}),1)],1),t._v(" "),s("div",{staticClass:"report-note-form"},[s("el-input",{attrs:{placeholder:t.$t("reports.leaveNote"),type:"textarea",rows:"2"},model:{value:t.notes[e.id],callback:function(s){t.$set(t.notes,e.id,s)},expression:"notes[report.id]"}}),t._v(" "),s("div",{staticClass:"report-post-note"},[s("el-button",{on:{click:function(s){return t.handleNewNote(e.id)}}},[t._v(t._s(t.$t("reports.postNote")))])],1)],1)],1)],1)],1)}),1),t._v(" "),t.loading?t._e():s("div",{staticClass:"reports-pagination"},[s("el-pagination",{attrs:{total:t.totalReportsCount,"current-page":t.currentPage,"page-size":t.pageSize,background:"",layout:"prev, pager, next"},on:{"current-change":t.handlePageChange}})],1)],1)},[],!1,null,null,null));g.options.__file="Report.vue";var h=g.exports,j=s("mSNy"),f={data:function(){return{filter:"open",options:[{value:"open",label:j.a.t("reportsFilter.open")},{value:"closed",label:j.a.t("reportsFilter.closed")},{value:"resolved",label:j.a.t("reportsFilter.resolved")}]}},created:function(){this.$store.dispatch("SetReportsFilter",this.$data.filter)},methods:{toggleFilters:function(){this.$store.dispatch("SetReportsFilter",this.$data.filter),this.$store.dispatch("ClearFetchedReports"),this.$store.dispatch("FetchReports",1)}}},k=(s("5tnn"),Object(c.a)(f,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-select",{staticClass:"select-field",attrs:{placeholder:t.$t("reportsFilter.inputPlaceholder"),clearable:"","value-key":"value"},on:{change:t.toggleFilters},model:{value:t.filter,callback:function(e){t.filter=e},expression:"filter"}},t._l(t.options,function(e){return s("el-option",{key:e.value,attrs:{label:e.label,value:e.value}},[t._v(t._s(e.label))])}),1)},[],!1,null,"5ab7c15a",null));k.options.__file="ReportsFilter.vue";var b=k.exports,C={components:{RebootButton:s("rIUS").a,Report:h,ReportsFilter:b},computed:{loading:function(){return this.$store.state.reports.loading},normalizedReportsCount:function(){return r()(this.$store.state.reports.totalReportsCount).format("0a")},reports:function(){return this.$store.state.reports.fetchedReports}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchReports",1)}},y=(s("Lbbz"),Object(c.a)(C,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"reports-container"},[s("div",{staticClass:"reports-header-container"},[s("h1",[t._v("\n "+t._s(t.$t("reports.reports"))+"\n "),s("span",{staticClass:"report-count"},[t._v("("+t._s(t.normalizedReportsCount)+")")])]),t._v(" "),s("reboot-button")],1),t._v(" "),s("div",{staticClass:"reports-filter-container"},[s("reports-filter")],1),t._v(" "),s("div",{staticClass:"block"},[s("report",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],attrs:{reports:t.reports}}),t._v(" "),0===t.reports.length?s("div",{staticClass:"no-reports-message"},[s("p",[t._v("There are no reports to display")])]):t._e()],1)])},[],!1,null,"fa601560",null));y.options.__file="index.vue";e.default=y.exports},xdcp:function(t,e,s){}}]); +//# sourceMappingURL=chunk-40a4.762ab622.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-40a4.762ab622.js.map b/priv/static/adminfe/static/js/chunk-40a4.762ab622.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/reports/components/Report.vue?ad5f","webpack:///./src/views/reports/components/ReportsFilter.vue?5d06","webpack:///./src/views/reports/components/NoteCard.vue?b93a","webpack:///./src/views/reports/index.vue?cda2","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/reports/index.vue?43f7","webpack:///./src/views/reports/components/NoteCard.vue?6205","webpack:///src/views/reports/components/NoteCard.vue","webpack:///./src/views/reports/components/NoteCard.vue","webpack:///./src/views/reports/components/NoteCard.vue?6977","webpack:///./src/views/reports/components/ModerateUserDropdown.vue?6745","webpack:///src/views/reports/components/ModerateUserDropdown.vue","webpack:///./src/views/reports/components/ModerateUserDropdown.vue","webpack:///./src/views/reports/components/ModerateUserDropdown.vue?cb21","webpack:///./src/views/reports/components/Report.vue?a764","webpack:///src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue?405c","webpack:///./src/views/reports/components/ReportsFilter.vue?e3b7","webpack:///src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue?49ad","webpack:///./src/views/reports/index.vue?3bcc","webpack:///src/views/reports/index.vue","webpack:///./src/views/reports/index.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Report_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ReportsFilter_vue_vue_type_style_index_0_id_5ab7c15a_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NoteCard_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_fa601560_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","id","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","components_NoteCardvue_type_script_lang_js_","name","props","report","type","required","note","methods","handleNoteDeletion","noteID","reportID","_this","this","$confirm","confirmButtonText","cancelButtonText","then","$store","dispatch","$message","message","catch","parseTimestamp","timestamp","moment_default","format","propertyExists","account","property","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","slot","user","to","params","src","avatar","alt","_e","_v","_s","nickname","$t","size","nativeOn","click","$event","domProps","innerHTML","content","created_at","options","__file","NoteCard","components_ModerateUserDropdownvue_type_script_lang_js_","computed","tags","handleDeactivation","_ref","handleDeletion","showDeactivatedButton","state","toggleTag","tag","includes","users","ModerateUserDropdown_component","trigger","disabled","plain","icon","deactivated","class","active-tag","divided","ModerateUserDropdown","components_Reportvue_type_script_lang_js_","components","Status","reports","Array","data","notes","loading","pageSize","totalReportsCount","currentPage","changeReportState","capitalizeFirstLetter","str","charAt","toUpperCase","slice","getStateType","getStatusesTitle","statuses","arguments","length","undefined","concat","getNotesTitle","handleNewNote","handlePageChange","page","_secondProperty","showStatuses","Report_component","_l","key","placement","href","url","target","style","actor","title","status","show-checkbox","index","placeholder","rows","model","value","callback","$$v","$set","expression","on","total","current-page","page-size","background","layout","current-change","Report","components_ReportsFiltervue_type_script_lang_js_","filter","label","lang","t","created","$data","toggleFilters","ReportsFilter_component","clearable","value-key","change","item","ReportsFilter","views_reportsvue_type_script_lang_js_","RebootButton","normalizedReportsCount","numeral_default","fetchedReports","mounted","reports_component","directives","rawName","__webpack_exports__"],"mappings":"wGAAA,IAAAA,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAA0e,gECA1e,IAAAG,EAAAF,EAAA,QAAAA,EAAAC,EAAAC,GAAygB,uCCAzgB,IAAAC,EAAAH,EAAA,QAAAA,EAAAC,EAAAE,GAA4e,qCCA5e,IAAAC,EAAAJ,EAAA,QAAAA,EAAAC,EAAAG,GAA+e,wBCA/e,IAAAC,GACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OAC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","file":"static/js/chunk-40a4.762ab622.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=fa601560&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=fa601560&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"reports-container\"},[_c('div',{staticClass:\"reports-header-container\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.reports'))+\"\\n \"),_c('span',{staticClass:\"report-count\"},[_vm._v(\"(\"+_vm._s(_vm.normalizedReportsCount)+\")\")])]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"reports-filter-container\"},[_c('reports-filter')],1),_vm._v(\" \"),_c('div',{staticClass:\"block\"},[_c('report',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"reports\":_vm.reports}}),_vm._v(\" \"),(_vm.reports.length === 0)?_c('div',{staticClass:\"no-reports-message\"},[_c('p',[_vm._v(\"There are no reports to display\")])]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=script&lang=js&\"","<template>\n <el-card class=\"note-card\">\n <div slot=\"header\">\n <div class=\"note-header\">\n <router-link\n v-if=\"propertyExists(note.user, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: note.user.id }}\"\n class=\"router-link\">\n <div class=\"note-actor\">\n <img\n v-if=\"propertyExists(note.user, 'avatar')\"\n :src=\"note.user.avatar\"\n alt=\"avatar\"\n class=\"note-avatar-img\">\n <span v-if=\"propertyExists(note.user, 'nickname')\" class=\"note-actor-name\">{{ note.user.nickname }}</span>\n <span v-else class=\"note-actor-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </div>\n </router-link>\n <el-button size=\"mini\" @click.native=\"handleNoteDeletion(note.id, report.id)\">\n {{ $t('reports.deleteNote') }}\n </el-button>\n </div>\n </div>\n <div class=\"note-body\">\n <span class=\"note-content\" v-html=\"note.content\"/>\n {{ parseTimestamp(note.created_at) }}\n </div>\n </el-card>\n</template>\n\n<script>\nimport moment from 'moment'\n\nexport default {\n name: 'NoteCard',\n props: {\n report: {\n type: Object,\n required: true\n },\n note: {\n type: Object,\n required: true\n }\n },\n methods: {\n handleNoteDeletion(noteID, reportID) {\n this.$confirm('Are you sure you want to delete this note?', 'Warning', {\n confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteReportNote', { noteID, reportID })\n this.$message({\n type: 'success',\n message: 'Delete completed'\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n a {\n text-decoration: underline;\n }\n .deactivated {\n color: gray;\n }\n .el-icon-arrow-right {\n margin-right: 6px;\n }\n .note-header {\n display: flex;\n justify-content: space-between;\n align-items: baseline;\n height: 40px;\n }\n .note-actor {\n display: flex;\n align-items: center;\n }\n .note-actor-name {\n margin: 0;\n height: 28px;\n }\n .note-avatar-img {\n width: 15px;\n height: 15px;\n margin-right: 5px;\n }\n .note-body {\n display: flex;\n flex-direction: column;\n }\n .note-card {\n margin-bottom: 15px;\n }\n .note-content {\n font-size: 15px;\n }\n .note-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n height: 28px;\n font-size: 15px;\n font-weight: 500;\n }\n .router-link {\n text-decoration: none;\n }\n\n @media only screen and (max-width:480px) {\n .el-card__header {\n padding: 10px 17px;\n }\n .note-header {\n display: flex;\n flex-direction: column;\n height: 65px;\n }\n .note-actor {\n margin-bottom: 5px;\n }\n .note-header {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./NoteCard.vue?vue&type=template&id=030edbfd&\"\nimport script from \"./NoteCard.vue?vue&type=script&lang=js&\"\nexport * from \"./NoteCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NoteCard.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-card',{staticClass:\"note-card\"},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"note-header\"},[(_vm.propertyExists(_vm.note.user, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.note.user.id }}}},[_c('div',{staticClass:\"note-actor\"},[(_vm.propertyExists(_vm.note.user, 'avatar'))?_c('img',{staticClass:\"note-avatar-img\",attrs:{\"src\":_vm.note.user.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.note.user, 'nickname'))?_c('span',{staticClass:\"note-actor-name\"},[_vm._v(_vm._s(_vm.note.user.nickname))]):_c('span',{staticClass:\"note-actor-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])])]):_vm._e(),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.handleNoteDeletion(_vm.note.id, _vm.report.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.deleteNote'))+\"\\n \")])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"note-body\"},[_c('span',{staticClass:\"note-content\",domProps:{\"innerHTML\":_vm._s(_vm.note.content)}}),_vm._v(\"\\n \"+_vm._s(_vm.parseTimestamp(_vm.note.created_at))+\"\\n \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerateUserDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerateUserDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown trigger=\"click\">\n <el-button :disabled=\"!account.id\" plain size=\"small\" icon=\"el-icon-files\">{{ $t('reports.moderateUser') }}\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n v-if=\"showDeactivatedButton(account)\"\n @click.native=\"handleDeactivation(account)\">\n {{ account.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(account.id)\"\n @click.native=\"handleDeletion(account.id)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n :divided=\"true\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"account.local\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"account.local\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerateUserDropdown',\n props: {\n account: {\n type: Object,\n required: true\n }\n },\n computed: {\n tags() {\n return this.account.tags || []\n }\n },\n methods: {\n handleDeactivation({ nickname }) {\n this.$store.dispatch('ToggleUserActivation', nickname)\n },\n handleDeletion(user) {\n this.$store.dispatch('DeleteUser', user)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag })\n : this.$store.dispatch('AddTag', { users: [user], tag })\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./ModerateUserDropdown.vue?vue&type=template&id=f387dbaa&\"\nimport script from \"./ModerateUserDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerateUserDropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerateUserDropdown.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"trigger\":\"click\"}},[_c('el-button',{attrs:{\"disabled\":!_vm.account.id,\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-files\"}},[_vm._v(_vm._s(_vm.$t('reports.moderateUser'))+\"\\n \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(_vm.showDeactivatedButton(_vm.account))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeactivation(_vm.account)}}},[_vm._v(\"\\n \"+_vm._s(_vm.account.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.account.id))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.account.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":true},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),(_vm.account.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.account.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <el-timeline class=\"reports-timeline\">\n <el-timeline-item\n v-for=\"report in reports\"\n :timestamp=\"parseTimestamp(report.created_at)\"\n :key=\"report.id\"\n placement=\"top\"\n class=\"timeline-item-container\">\n <el-card class=\"report\">\n <div class=\"report-header-container\">\n <div class=\"title-container\">\n <h3 v-if=\"propertyExists(report.account, 'nickname')\" class=\"report-title\">{{ $t('reports.reportOn') }} {{ report.account.nickname }}</h3>\n <h3 v-else class=\"report-title\">{{ $t('reports.report') }}</h3>\n <h5 v-if=\"propertyExists(report.account, 'id')\" class=\"id\">{{ $t('reports.id') }}: {{ report.id }}</h5>\n </div>\n <div>\n <el-tag :type=\"getStateType(report.state)\" size=\"large\" class=\"report-tag\">{{ capitalizeFirstLetter(report.state) }}</el-tag>\n <el-dropdown trigger=\"click\">\n <el-button plain size=\"small\" icon=\"el-icon-edit\" class=\"report-actions-button\">{{ $t('reports.changeState') }}<i class=\"el-icon-arrow-down el-icon--right\"/></el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item v-if=\"report.state !== 'resolved'\" @click.native=\"changeReportState('resolved', report.id)\">{{ $t('reports.resolve') }}</el-dropdown-item>\n <el-dropdown-item v-if=\"report.state !== 'open'\" @click.native=\"changeReportState('open', report.id)\">{{ $t('reports.reopen') }}</el-dropdown-item>\n <el-dropdown-item v-if=\"report.state !== 'closed'\" @click.native=\"changeReportState('closed', report.id)\">{{ $t('reports.close') }}</el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n <moderate-user-dropdown v-if=\"propertyExists(report.account, 'nickname')\" :account=\"report.account\"/>\n </div>\n </div>\n <el-divider class=\"divider\"/>\n <div class=\"report-account-container\">\n <span class=\"report-row-key\">{{ $t('reports.account') }}:</span>\n <div class=\"report-account\">\n <router-link\n v-if=\"propertyExists(report.account, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: report.account.id }}\"\n class=\"router-link\">\n <img\n v-if=\"propertyExists(report.account, 'avatar')\"\n :src=\"report.account.avatar\"\n alt=\"avatar\"\n class=\"avatar-img\">\n <span v-if=\"propertyExists(report.account, 'nickname')\" class=\"report-account-name\">{{ report.account.nickname }}</span>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </router-link>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n <a v-if=\"propertyExists(report.account, 'url')\" :href=\"report.account.url\" target=\"_blank\" class=\"account\">\n {{ $t('userProfile.openAccountInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n <div v-if=\"report.content && report.content.length > 0\">\n <el-divider class=\"divider\"/>\n <span class=\"report-row-key\">{{ $t('reports.content') }}:\n <span>{{ report.content }}</span>\n </span>\n </div>\n <el-divider class=\"divider\"/>\n <div :style=\"showStatuses(report.statuses) ? '' : 'margin-bottom:15px'\" class=\"report-account-container\">\n <span class=\"report-row-key\">{{ $t('reports.actor') }}:</span>\n <div class=\"report-account\">\n <router-link\n v-if=\"propertyExists(report.actor, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: report.actor.id }}\"\n class=\"router-link\">\n <img\n v-if=\"propertyExists(report.actor, 'avatar')\"\n :src=\"report.actor.avatar\"\n alt=\"avatar\"\n class=\"avatar-img\">\n <span v-if=\"propertyExists(report.actor, 'nickname')\" class=\"report-account-name\">{{ report.actor.nickname }}</span>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </router-link>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n <a v-if=\"propertyExists(report.actor, 'url')\" :href=\"report.actor.url\" target=\"_blank\" class=\"account\">\n {{ $t('userProfile.openAccountInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n <div v-if=\"showStatuses(report.statuses)\" class=\"reported-statuses\">\n <el-collapse>\n <el-collapse-item :title=\"getStatusesTitle(report.statuses)\">\n <div v-for=\"status in report.statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account.nickname ? status.account : report.account\" :show-checkbox=\"false\" :page=\"currentPage\"/>\n </div>\n </el-collapse-item>\n </el-collapse>\n </div>\n <div class=\"report-notes\">\n <el-collapse>\n <el-collapse-item :title=\"getNotesTitle(report.notes)\">\n <note-card v-for=\"(note, index) in report.notes\" :key=\"index\" :note=\"note\" :report=\"report\"/>\n </el-collapse-item>\n </el-collapse>\n <div class=\"report-note-form\">\n <el-input\n v-model=\"notes[report.id]\"\n :placeholder=\"$t('reports.leaveNote')\"\n type=\"textarea\"\n rows=\"2\"/>\n <div class=\"report-post-note\">\n <el-button @click=\"handleNewNote(report.id)\">{{ $t('reports.postNote') }}</el-button>\n </div>\n </div>\n </div>\n </el-card>\n </el-timeline-item>\n </el-timeline>\n <div v-if=\"!loading\" class=\"reports-pagination\">\n <el-pagination\n :total=\"totalReportsCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n background\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport NoteCard from './NoteCard'\nimport Status from '@/components/Status'\nimport ModerateUserDropdown from './ModerateUserDropdown'\n\nexport default {\n name: 'Report',\n components: { Status, ModerateUserDropdown, NoteCard },\n props: {\n reports: {\n type: Array,\n required: true\n }\n },\n data() {\n return {\n notes: {}\n }\n },\n computed: {\n loading() {\n return this.$store.state.reports.loading\n },\n pageSize() {\n return this.$store.state.reports.pageSize\n },\n totalReportsCount() {\n return this.$store.state.reports.totalReportsCount\n },\n currentPage() {\n return this.$store.state.reports.currentPage\n }\n },\n methods: {\n changeReportState(state, id) {\n this.$store.dispatch('ChangeReportState', [{ state, id }])\n },\n capitalizeFirstLetter(str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n getStateType(state) {\n switch (state) {\n case 'closed':\n return 'info'\n case 'resolved':\n return 'success'\n default:\n return 'primary'\n }\n },\n getStatusesTitle(statuses = []) {\n return `Reported statuses: ${statuses.length} item(s)`\n },\n getNotesTitle(notes = []) {\n return `Notes: ${notes.length} item(s)`\n },\n handleNewNote(reportID) {\n this.$store.dispatch('CreateReportNote', { content: this.notes[reportID], reportID })\n this.notes[reportID] = ''\n },\n handlePageChange(page) {\n this.$store.dispatch('FetchReports', page)\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('L HH:mm')\n },\n propertyExists(account, property, _secondProperty) {\n if (_secondProperty) {\n return account[property] && account[_secondProperty]\n }\n return account[property]\n },\n showStatuses(statuses = []) {\n return statuses.length > 0\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n h4 {\n margin: 0;\n height: 17px;\n }\n .account {\n line-height: 26px;\n font-size: 13px;\n color: #606266;\n }\n .account:hover {\n text-decoration: underline;\n }\n .avatar-img {\n vertical-align: bottom;\n width: 15px;\n height: 15px;\n }\n .divider {\n margin: 15px 0;\n }\n .deactivated {\n color: gray;\n }\n .el-card__body {\n padding: 17px;\n }\n .el-card__header {\n background-color: #FAFAFA;\n padding: 10px 20px;\n }\n .el-collapse {\n border-bottom: none;\n }\n .el-collapse-item__header {\n height: 46px;\n font-size: 14px;\n }\n .el-collapse-item__content {\n padding-bottom: 7px;\n }\n .el-icon-arrow-right {\n margin-right: 6px;\n }\n .id {\n color: gray;\n margin-top: 6px;\n }\n .line {\n width: 100%;\n height: 0;\n border: 0.5px solid #EBEEF5;\n margin: 15px 0 15px;\n }\n .new-note {\n p {\n font-size: 14px;\n font-weight: 500;\n height: 17px;\n margin: 13px 0 7px;\n }\n }\n .note {\n box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);\n margin-bottom: 10px;\n }\n .no-notes {\n font-style: italic;\n color: gray;\n }\n .report {\n .report-header-container {\n display: flex;\n justify-content: space-between;\n align-items: baseline;\n height: 40px;\n }\n }\n .report-account {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n flex-grow: 2;\n }\n .report-account-container {\n display: flex;\n align-items: baseline;\n }\n .report-account-name {\n font-size: 15px;\n font-weight: 500;\n }\n .report-row-key {\n font-size: 14px;\n font-weight: 500;\n padding-right: 5px;\n }\n .report-title {\n margin: 0;\n }\n .report-note-form {\n margin: 15px 0 0 0;\n }\n .report-post-note {\n margin: 5px 0 0 0;\n text-align: right;\n }\n .reports-pagination {\n margin: 25px 0;\n text-align: center;\n }\n .reports-timeline {\n margin: 30px 45px 45px 19px;\n padding: 0px;\n }\n .router-link {\n text-decoration: none;\n }\n .reported-statuses {\n margin-top: 15px;\n }\n .submit-button {\n display: block;\n margin: 7px 0 17px auto;\n }\n .timestamp {\n margin: 0;\n font-style: italic;\n color: gray;\n }\n\n @media only screen and (max-width:480px) {\n .report {\n .report-header-container {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: flex-start;\n height: auto;\n }\n .id {\n margin: 6px 0 0 0;\n }\n .report-actions-button {\n margin: 3px 0 6px;\n }\n .report-tag {\n margin: 3px 0 6px;\n }\n .title-container {\n margin-bottom: 7px;\n }\n }\n .reports-timeline {\n margin: 20px 10px;\n .el-timeline-item__wrapper {\n padding-left: 20px;\n }\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./Report.vue?vue&type=template&id=28746757&\"\nimport script from \"./Report.vue?vue&type=script&lang=js&\"\nexport * from \"./Report.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Report.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('el-timeline',{staticClass:\"reports-timeline\"},_vm._l((_vm.reports),function(report){return _c('el-timeline-item',{key:report.id,staticClass:\"timeline-item-container\",attrs:{\"timestamp\":_vm.parseTimestamp(report.created_at),\"placement\":\"top\"}},[_c('el-card',{staticClass:\"report\"},[_c('div',{staticClass:\"report-header-container\"},[_c('div',{staticClass:\"title-container\"},[(_vm.propertyExists(report.account, 'nickname'))?_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.reportOn'))+\" \"+_vm._s(report.account.nickname))]):_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.report')))]),_vm._v(\" \"),(_vm.propertyExists(report.account, 'id'))?_c('h5',{staticClass:\"id\"},[_vm._v(_vm._s(_vm.$t('reports.id'))+\": \"+_vm._s(report.id))]):_vm._e()]),_vm._v(\" \"),_c('div',[_c('el-tag',{staticClass:\"report-tag\",attrs:{\"type\":_vm.getStateType(report.state),\"size\":\"large\"}},[_vm._v(_vm._s(_vm.capitalizeFirstLetter(report.state)))]),_vm._v(\" \"),_c('el-dropdown',{attrs:{\"trigger\":\"click\"}},[_c('el-button',{staticClass:\"report-actions-button\",attrs:{\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-edit\"}},[_vm._v(_vm._s(_vm.$t('reports.changeState'))),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(report.state !== 'resolved')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('resolved', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.resolve')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'open')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('open', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.reopen')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'closed')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('closed', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.close')))]):_vm._e()],1)],1),_vm._v(\" \"),(_vm.propertyExists(report.account, 'nickname'))?_c('moderate-user-dropdown',{attrs:{\"account\":report.account}}):_vm._e()],1)]),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('div',{staticClass:\"report-account-container\"},[_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.account'))+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"report-account\"},[(_vm.propertyExists(report.account, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: report.account.id }}}},[(_vm.propertyExists(report.account, 'avatar'))?_c('img',{staticClass:\"avatar-img\",attrs:{\"src\":report.account.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(report.account, 'nickname'))?_c('span',{staticClass:\"report-account-name\"},[_vm._v(_vm._s(report.account.nickname))]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(report.account, 'url'))?_c('a',{staticClass:\"account\",attrs:{\"href\":report.account.url,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.openAccountInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()],1)]),_vm._v(\" \"),(report.content && report.content.length > 0)?_c('div',[_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.content'))+\":\\n \"),_c('span',[_vm._v(_vm._s(report.content))])])],1):_vm._e(),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('div',{staticClass:\"report-account-container\",style:(_vm.showStatuses(report.statuses) ? '' : 'margin-bottom:15px')},[_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.actor'))+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"report-account\"},[(_vm.propertyExists(report.actor, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: report.actor.id }}}},[(_vm.propertyExists(report.actor, 'avatar'))?_c('img',{staticClass:\"avatar-img\",attrs:{\"src\":report.actor.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(report.actor, 'nickname'))?_c('span',{staticClass:\"report-account-name\"},[_vm._v(_vm._s(report.actor.nickname))]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(report.actor, 'url'))?_c('a',{staticClass:\"account\",attrs:{\"href\":report.actor.url,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.openAccountInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()],1)]),_vm._v(\" \"),(_vm.showStatuses(report.statuses))?_c('div',{staticClass:\"reported-statuses\"},[_c('el-collapse',[_c('el-collapse-item',{attrs:{\"title\":_vm.getStatusesTitle(report.statuses)}},_vm._l((report.statuses),function(status){return _c('div',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account.nickname ? status.account : report.account,\"show-checkbox\":false,\"page\":_vm.currentPage}})],1)}),0)],1)],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"report-notes\"},[_c('el-collapse',[_c('el-collapse-item',{attrs:{\"title\":_vm.getNotesTitle(report.notes)}},_vm._l((report.notes),function(note,index){return _c('note-card',{key:index,attrs:{\"note\":note,\"report\":report}})}),1)],1),_vm._v(\" \"),_c('div',{staticClass:\"report-note-form\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('reports.leaveNote'),\"type\":\"textarea\",\"rows\":\"2\"},model:{value:(_vm.notes[report.id]),callback:function ($$v) {_vm.$set(_vm.notes, report.id, $$v)},expression:\"notes[report.id]\"}}),_vm._v(\" \"),_c('div',{staticClass:\"report-post-note\"},[_c('el-button',{on:{\"click\":function($event){return _vm.handleNewNote(report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.postNote')))])],1)],1)],1)],1)],1)}),1),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"reports-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.totalReportsCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"background\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"","<template>\n <el-select\n v-model=\"filter\"\n :placeholder=\"$t('reportsFilter.inputPlaceholder')\"\n clearable\n class=\"select-field\"\n value-key=\"value\"\n @change=\"toggleFilters\">\n <el-option\n v-for=\"item in options\"\n :key=\"item.value\"\n :label=\"item.label\"\n :value=\"item.value\">{{ item.label }}</el-option>\n </el-select>\n</template>\n\n<script>\nimport i18n from '@/lang'\n\nexport default {\n data() {\n return {\n filter: 'open',\n options: [\n {\n value: 'open',\n label: i18n.t('reportsFilter.open')\n },\n {\n value: 'closed',\n label: i18n.t('reportsFilter.closed')\n },\n {\n value: 'resolved',\n label: i18n.t('reportsFilter.resolved')\n }\n ]\n }\n },\n created() {\n this.$store.dispatch('SetReportsFilter', this.$data.filter)\n },\n methods: {\n toggleFilters() {\n this.$store.dispatch('SetReportsFilter', this.$data.filter)\n this.$store.dispatch('ClearFetchedReports')\n this.$store.dispatch('FetchReports', 1)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.select-field {\n width: 350px;\n}\n\n@media only screen and (max-width:480px) {\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .select-field {\n width: 50%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./ReportsFilter.vue?vue&type=template&id=5ab7c15a&scoped=true&\"\nimport script from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ab7c15a\",\n null\n \n)\n\ncomponent.options.__file = \"ReportsFilter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-select',{staticClass:\"select-field\",attrs:{\"placeholder\":_vm.$t('reportsFilter.inputPlaceholder'),\"clearable\":\"\",\"value-key\":\"value\"},on:{\"change\":_vm.toggleFilters},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value}},[_vm._v(_vm._s(item.label))])}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"reports-container\">\n <div class=\"reports-header-container\">\n <h1>\n {{ $t('reports.reports') }}\n <span class=\"report-count\">({{ normalizedReportsCount }})</span>\n </h1>\n <reboot-button/>\n </div>\n <div class=\"reports-filter-container\">\n <reports-filter/>\n </div>\n <div class=\"block\">\n <report v-loading=\"loading\" :reports=\"reports\"/>\n <div v-if=\"reports.length === 0\" class=\"no-reports-message\">\n <p>There are no reports to display</p>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport numeral from 'numeral'\nimport Report from './components/Report'\nimport ReportsFilter from './components/ReportsFilter'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: { RebootButton, Report, ReportsFilter },\n computed: {\n loading() {\n return this.$store.state.reports.loading\n },\n normalizedReportsCount() {\n return numeral(this.$store.state.reports.totalReportsCount).format('0a')\n },\n reports() {\n return this.$store.state.reports.fetchedReports\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchReports', 1)\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.reports-container {\n .reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n }\n .reports-filter-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 15px 45px 22px 15px;\n padding-bottom: 0\n }\n .reports-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n }\n h1 {\n margin: 0;\n }\n .no-reports-message {\n color: gray;\n margin-left: 19px\n }\n .report-count {\n color: gray;\n font-size: 28px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .reports-container {\n h1 {\n margin: 7px 10px 15px 10px;\n }\n .reboot-button {\n margin: 0 0 5px 10px;\n width: 145px;\n }\n .report-count {\n font-size: 22px;\n }\n .reports-filter-container {\n margin: 0 10px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=fa601560&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=fa601560&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fa601560\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-5118.db359fdf.js b/priv/static/adminfe/static/js/chunk-5118.db359fdf.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-5118"],{"+/fp":function(e,t){e.exports=class{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,t,s){return""+s}image(e,t,s){return""+s}br(){return""}}},"4MG8":function(e,t,s){const n=s("T9Ld"),r=s("66f7"),i=s("SbYC"),l=s("+/fp"),a=s("hyX7"),o=s("J7Ao"),{merge:h,checkSanitizeDeprecation:c,escape:p}=s("rUJ1"),{getDefaults:u,changeDefaults:g,defaults:d}=s("vbtb");function f(e,t,s){if(void 0===e||null===e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if(s||"function"==typeof t){s||(s=t,t=null),t=h({},f.defaults,t||{}),c(t);const i=t.highlight;let l,a,o=0;try{l=n.lex(e,t)}catch(e){return s(e)}a=l.length;const p=function(e){if(e)return t.highlight=i,s(e);let n;try{n=r.parse(l,t)}catch(t){e=t}return t.highlight=i,e?s(e):s(null,n)};if(!i||i.length<3)return p();if(delete t.highlight,!a)return p();for(;o<l.length;o++)!function(e){"code"!==e.type?--a||p():i(e.text,e.lang,function(t,s){return t?p(t):null==s||s===e.text?--a||p():(e.text=s,e.escaped=!0,void(--a||p()))})}(l[o])}else try{return t=h({},f.defaults,t||{}),c(t),r.parse(n.lex(e,t),t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",(t||f.defaults).silent)return"<p>An error occurred:</p><pre>"+p(e.message+"",!0)+"</pre>";throw e}}f.options=f.setOptions=function(e){return h(f.defaults,e),g(f.defaults),f},f.getDefaults=u,f.defaults=d,f.Parser=r,f.parser=r.parse,f.Renderer=i,f.TextRenderer=l,f.Lexer=n,f.lexer=n.lex,f.InlineLexer=a,f.inlineLexer=a.output,f.Slugger=o,f.parse=f,e.exports=f},"66f7":function(e,t,s){const n=s("SbYC"),r=s("J7Ao"),i=s("hyX7"),l=s("+/fp"),{defaults:a}=s("vbtb"),{merge:o,unescape:h}=s("rUJ1");e.exports=class e{constructor(e){this.tokens=[],this.token=null,this.options=e||a,this.options.renderer=this.options.renderer||new n,this.renderer=this.options.renderer,this.renderer.options=this.options,this.slugger=new r}static parse(t,s){return new e(s).parse(t)}parse(e){this.inline=new i(e.links,this.options),this.inlineText=new i(e.links,o({},this.options,{renderer:new l})),this.tokens=e.reverse();let t="";for(;this.next();)t+=this.tok();return t}next(){return this.token=this.tokens.pop(),this.token}peek(){return this.tokens[this.tokens.length-1]||0}parseText(){let e=this.token.text;for(;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)}tok(){let e="";switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,h(this.inlineText.output(this.token.text)),this.slugger);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":{let t,s,n,r,i="";for(n="",t=0;t<this.token.header.length;t++)n+=this.renderer.tablecell(this.inline.output(this.token.header[t]),{header:!0,align:this.token.align[t]});for(i+=this.renderer.tablerow(n),t=0;t<this.token.cells.length;t++){for(s=this.token.cells[t],n="",r=0;r<s.length;r++)n+=this.renderer.tablecell(this.inline.output(s[r]),{header:!1,align:this.token.align[r]});e+=this.renderer.tablerow(n)}return this.renderer.table(i,e)}case"blockquote_start":for(e="";"blockquote_end"!==this.next().type;)e+=this.tok();return this.renderer.blockquote(e);case"list_start":{e="";const t=this.token.ordered,s=this.token.start;for(;"list_end"!==this.next().type;)e+=this.tok();return this.renderer.list(e,t,s)}case"list_item_start":{e="";const t=this.token.loose,s=this.token.checked,n=this.token.task;if(this.token.task)if(t)if("text"===this.peek().type){const e=this.peek();e.text=this.renderer.checkbox(s)+" "+e.text}else this.tokens.push({type:"text",text:this.renderer.checkbox(s)});else e+=this.renderer.checkbox(s);for(;"list_item_end"!==this.next().type;)e+=t||"text"!==this.token.type?this.tok():this.parseText();return this.renderer.listitem(e,n,s)}case"html":return this.renderer.html(this.token.text);case"paragraph":return this.renderer.paragraph(this.inline.output(this.token.text));case"text":return this.renderer.paragraph(this.parseText());default:{const e='Token with "'+this.token.type+'" type was not found.';if(!this.options.silent)throw new Error(e);console.log(e)}}}}},J7Ao:function(e,t){e.exports=class{constructor(){this.seen={}}slug(e){let t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){const e=t;do{this.seen[e]++,t=e+"-"+this.seen[e]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t}}},SbYC:function(e,t,s){const{defaults:n}=s("vbtb"),{cleanUrl:r,escape:i}=s("rUJ1");e.exports=class{constructor(e){this.options=e||n}code(e,t,s){const n=(t||"").match(/\S*/)[0];if(this.options.highlight){const t=this.options.highlight(e,n);null!=t&&t!==e&&(s=!0,e=t)}return n?'<pre><code class="'+this.options.langPrefix+i(n,!0)+'">'+(s?e:i(e,!0))+"</code></pre>\n":"<pre><code>"+(s?e:i(e,!0))+"</code></pre>"}blockquote(e){return"<blockquote>\n"+e+"</blockquote>\n"}html(e){return e}heading(e,t,s,n){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+n.slug(s)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"}hr(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}list(e,t,s){const n=t?"ol":"ul";return"<"+n+(t&&1!==s?' start="'+s+'"':"")+">\n"+e+"</"+n+">\n"}listitem(e){return"<li>"+e+"</li>\n"}checkbox(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}paragraph(e){return"<p>"+e+"</p>\n"}table(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}tablerow(e){return"<tr>\n"+e+"</tr>\n"}tablecell(e,t){const s=t.header?"th":"td";return(t.align?"<"+s+' align="'+t.align+'">':"<"+s+">")+e+"</"+s+">\n"}strong(e){return"<strong>"+e+"</strong>"}em(e){return"<em>"+e+"</em>"}codespan(e){return"<code>"+e+"</code>"}br(){return this.options.xhtml?"<br/>":"<br>"}del(e){return"<del>"+e+"</del>"}link(e,t,s){if(null===(e=r(this.options.sanitize,this.options.baseUrl,e)))return s;let n='<a href="'+i(e)+'"';return t&&(n+=' title="'+t+'"'),n+=">"+s+"</a>"}image(e,t,s){if(null===(e=r(this.options.sanitize,this.options.baseUrl,e)))return s;let n='<img src="'+e+'" alt="'+s+'"';return t&&(n+=' title="'+t+'"'),n+=this.options.xhtml?"/>":">"}text(e){return e}}},T9Ld:function(e,t,s){const{defaults:n}=s("vbtb"),{block:r}=s("e56X"),{rtrim:i,splitCells:l,escape:a}=s("rUJ1");e.exports=class e{constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||n,this.rules=r.normal,this.options.pedantic?this.rules=r.pedantic:this.options.gfm&&(this.rules=r.gfm)}static get rules(){return r}static lex(t,s){return new e(s).lex(t)}lex(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.token(e,!0)}token(e,t){let s,n,o,h,c,p,u,g,d,f,b,m,k,x,_,w;for(e=e.replace(/^ +$/gm,"");e;)if((o=this.rules.newline.exec(e))&&(e=e.substring(o[0].length),o[0].length>1&&this.tokens.push({type:"space"})),o=this.rules.code.exec(e)){const t=this.tokens[this.tokens.length-1];e=e.substring(o[0].length),t&&"paragraph"===t.type?t.text+="\n"+o[0].trimRight():(o=o[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",codeBlockStyle:"indented",text:this.options.pedantic?o:i(o,"\n")}))}else if(o=this.rules.fences.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"code",lang:o[2]?o[2].trim():o[2],text:o[3]||""});else if(o=this.rules.heading.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"heading",depth:o[1].length,text:o[2]});else if((o=this.rules.nptable.exec(e))&&(p={type:"table",header:l(o[1].replace(/^ *| *\| *$/g,"")),align:o[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:o[3]?o[3].replace(/\n$/,"").split("\n"):[]}).header.length===p.align.length){for(e=e.substring(o[0].length),b=0;b<p.align.length;b++)/^ *-+: *$/.test(p.align[b])?p.align[b]="right":/^ *:-+: *$/.test(p.align[b])?p.align[b]="center":/^ *:-+ *$/.test(p.align[b])?p.align[b]="left":p.align[b]=null;for(b=0;b<p.cells.length;b++)p.cells[b]=l(p.cells[b],p.header.length);this.tokens.push(p)}else if(o=this.rules.hr.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"hr"});else if(o=this.rules.blockquote.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"blockquote_start"}),o=o[0].replace(/^ *> ?/gm,""),this.token(o,t),this.tokens.push({type:"blockquote_end"});else if(o=this.rules.list.exec(e)){for(e=e.substring(o[0].length),u={type:"list_start",ordered:x=(h=o[2]).length>1,start:x?+h:"",loose:!1},this.tokens.push(u),g=[],s=!1,k=(o=o[0].match(this.rules.item)).length,b=0;b<k;b++)f=(p=o[b]).length,~(p=p.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(f-=p.length,p=this.options.pedantic?p.replace(/^ {1,4}/gm,""):p.replace(new RegExp("^ {1,"+f+"}","gm"),"")),b!==k-1&&(c=r.bullet.exec(o[b+1])[0],(h.length>1?1===c.length:c.length>1||this.options.smartLists&&c!==h)&&(e=o.slice(b+1).join("\n")+e,b=k-1)),n=s||/\n\n(?!\s*$)/.test(p),b!==k-1&&(s="\n"===p.charAt(p.length-1),n||(n=s)),n&&(u.loose=!0),w=void 0,(_=/^\[[ xX]\] /.test(p))&&(w=" "!==p[1],p=p.replace(/^\[[ xX]\] +/,"")),d={type:"list_item_start",task:_,checked:w,loose:n},g.push(d),this.tokens.push(d),this.token(p,!1),this.tokens.push({type:"list_item_end"});if(u.loose)for(k=g.length,b=0;b<k;b++)g[b].loose=!0;this.tokens.push({type:"list_end"})}else if(o=this.rules.html.exec(e))e=e.substring(o[0].length),this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:!this.options.sanitizer&&("pre"===o[1]||"script"===o[1]||"style"===o[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(o[0]):a(o[0]):o[0]});else if(t&&(o=this.rules.def.exec(e)))e=e.substring(o[0].length),o[3]&&(o[3]=o[3].substring(1,o[3].length-1)),m=o[1].toLowerCase().replace(/\s+/g," "),this.tokens.links[m]||(this.tokens.links[m]={href:o[2],title:o[3]});else if((o=this.rules.table.exec(e))&&(p={type:"table",header:l(o[1].replace(/^ *| *\| *$/g,"")),align:o[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:o[3]?o[3].replace(/\n$/,"").split("\n"):[]}).header.length===p.align.length){for(e=e.substring(o[0].length),b=0;b<p.align.length;b++)/^ *-+: *$/.test(p.align[b])?p.align[b]="right":/^ *:-+: *$/.test(p.align[b])?p.align[b]="center":/^ *:-+ *$/.test(p.align[b])?p.align[b]="left":p.align[b]=null;for(b=0;b<p.cells.length;b++)p.cells[b]=l(p.cells[b].replace(/^ *\| *| *\| *$/g,""),p.header.length);this.tokens.push(p)}else if(o=this.rules.lheading.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"heading",depth:"="===o[2].charAt(0)?1:2,text:o[1]});else if(t&&(o=this.rules.paragraph.exec(e)))e=e.substring(o[0].length),this.tokens.push({type:"paragraph",text:"\n"===o[1].charAt(o[1].length-1)?o[1].slice(0,-1):o[1]});else if(o=this.rules.text.exec(e))e=e.substring(o[0].length),this.tokens.push({type:"text",text:o[0]});else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0));return this.tokens}}},e56X:function(e,t,s){const{noopTest:n,edit:r,merge:i}=s("rUJ1"),l={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:n,table:n,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};l.def=r(l.def).replace("label",l._label).replace("title",l._title).getRegex(),l.bullet=/(?:[*+-]|\d{1,9}\.)/,l.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,l.item=r(l.item,"gm").replace(/bull/g,l.bullet).getRegex(),l.list=r(l.list).replace(/bull/g,l.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+l.def.source+")").getRegex(),l._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",l._comment=/<!--(?!-?>)[\s\S]*?-->/,l.html=r(l.html,"i").replace("comment",l._comment).replace("tag",l._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),l.paragraph=r(l._paragraph).replace("hr",l.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",l._tag).getRegex(),l.blockquote=r(l.blockquote).replace("paragraph",l.paragraph).getRegex(),l.normal=i({},l),l.gfm=i({},l.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),l.gfm.nptable=r(l.gfm.nptable).replace("hr",l.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[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",l._tag).getRegex(),l.gfm.table=r(l.gfm.table).replace("hr",l.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[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",l._tag).getRegex(),l.pedantic=i({},l.normal,{html:r("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",l._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(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:n,paragraph:r(l.normal._paragraph).replace("hr",l.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",l.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});const a={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:n,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*<\[])\*(?!\*)|^_([^\s<][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s<"][\s\S]*?[^\s\*])\*(?!\*|[^\spunctuation])|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:n,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,_punctuation:"!\"#$%&'()*+,\\-./:;<=>?@\\[^_{|}~"};a.em=r(a.em).replace(/punctuation/g,a._punctuation).getRegex(),a._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,a._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,a._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])?)+(?![-_])/,a.autolink=r(a.autolink).replace("scheme",a._scheme).replace("email",a._email).getRegex(),a._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,a.tag=r(a.tag).replace("comment",l._comment).replace("attribute",a._attribute).getRegex(),a._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,a._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,a._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,a.link=r(a.link).replace("label",a._label).replace("href",a._href).replace("title",a._title).getRegex(),a.reflink=r(a.reflink).replace("label",a._label).getRegex(),a.normal=i({},a),a.pedantic=i({},a.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:r(/^!?\[(label)\]\((.*?)\)/).replace("label",a._label).getRegex(),reflink:r(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",a._label).getRegex()}),a.gfm=i({},a.normal,{escape:r(a.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),a.gfm.url=r(a.gfm.url,"i").replace("email",a.gfm._extended_email).getRegex(),a.breaks=i({},a.gfm,{br:r(a.br).replace("{2,}","*").getRegex(),text:r(a.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()}),e.exports={block:l,inline:a}},hyX7:function(e,t,s){const n=s("SbYC"),{defaults:r}=s("vbtb"),{inline:i}=s("e56X"),{findClosingBracket:l,escape:a}=s("rUJ1");e.exports=class e{constructor(e,t){if(this.options=t||r,this.links=e,this.rules=i.normal,this.options.renderer=this.options.renderer||new n,this.renderer=this.options.renderer,this.renderer.options=this.options,!this.links)throw new Error("Tokens array requires a `links` property.");this.options.pedantic?this.rules=i.pedantic:this.options.gfm&&(this.options.breaks?this.rules=i.breaks:this.rules=i.gfm)}static get rules(){return i}static output(t,s,n){return new e(s,n).output(t)}output(t){let s,n,r,i,o,h,c="";for(;t;)if(o=this.rules.escape.exec(t))t=t.substring(o[0].length),c+=a(o[1]);else if(o=this.rules.tag.exec(t))!this.inLink&&/^<a /i.test(o[0])?this.inLink=!0:this.inLink&&/^<\/a>/i.test(o[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(o[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(o[0])&&(this.inRawBlock=!1),t=t.substring(o[0].length),c+=this.renderer.html(this.options.sanitize?this.options.sanitizer?this.options.sanitizer(o[0]):a(o[0]):o[0]);else if(o=this.rules.link.exec(t)){const n=l(o[2],"()");if(n>-1){const e=(0===o[0].indexOf("!")?5:4)+o[1].length+n;o[2]=o[2].substring(0,n),o[0]=o[0].substring(0,e).trim(),o[3]=""}t=t.substring(o[0].length),this.inLink=!0,r=o[2],this.options.pedantic?(s=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r))?(r=s[1],i=s[3]):i="":i=o[3]?o[3].slice(1,-1):"",r=r.trim().replace(/^<([\s\S]*)>$/,"$1"),c+=this.outputLink(o,{href:e.escapes(r),title:e.escapes(i)}),this.inLink=!1}else if((o=this.rules.reflink.exec(t))||(o=this.rules.nolink.exec(t))){if(t=t.substring(o[0].length),s=(o[2]||o[1]).replace(/\s+/g," "),!(s=this.links[s.toLowerCase()])||!s.href){c+=o[0].charAt(0),t=o[0].substring(1)+t;continue}this.inLink=!0,c+=this.outputLink(o,s),this.inLink=!1}else if(o=this.rules.strong.exec(t))t=t.substring(o[0].length),c+=this.renderer.strong(this.output(o[4]||o[3]||o[2]||o[1]));else if(o=this.rules.em.exec(t))t=t.substring(o[0].length),c+=this.renderer.em(this.output(o[6]||o[5]||o[4]||o[3]||o[2]||o[1]));else if(o=this.rules.code.exec(t))t=t.substring(o[0].length),c+=this.renderer.codespan(a(o[2].trim(),!0));else if(o=this.rules.br.exec(t))t=t.substring(o[0].length),c+=this.renderer.br();else if(o=this.rules.del.exec(t))t=t.substring(o[0].length),c+=this.renderer.del(this.output(o[1]));else if(o=this.rules.autolink.exec(t))t=t.substring(o[0].length),r="@"===o[2]?"mailto:"+(n=a(this.mangle(o[1]))):n=a(o[1]),c+=this.renderer.link(r,null,n);else if(this.inLink||!(o=this.rules.url.exec(t))){if(o=this.rules.text.exec(t))t=t.substring(o[0].length),this.inRawBlock?c+=this.renderer.text(this.options.sanitize?this.options.sanitizer?this.options.sanitizer(o[0]):a(o[0]):o[0]):c+=this.renderer.text(a(this.smartypants(o[0])));else if(t)throw new Error("Infinite loop on byte: "+t.charCodeAt(0))}else{if("@"===o[2])r="mailto:"+(n=a(o[0]));else{do{h=o[0],o[0]=this.rules._backpedal.exec(o[0])[0]}while(h!==o[0]);n=a(o[0]),r="www."===o[1]?"http://"+n:n}t=t.substring(o[0].length),c+=this.renderer.link(r,null,n)}return c}static escapes(t){return t?t.replace(e.rules._escapes,"$1"):t}outputLink(e,t){const s=t.href,n=t.title?a(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(s,n,this.output(e[1])):this.renderer.image(s,n,a(e[1]))}smartypants(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e}mangle(e){if(!this.options.mangle)return e;const t=e.length;let s,n="",r=0;for(;r<t;r++)s=e.charCodeAt(r),Math.random()>.5&&(s="x"+s.toString(16)),n+="&#"+s+";";return n}}},rUJ1:function(e,t){const s=/[&<>"']/,n=/[&<>"']/g,r=/[<>"']|&(?!#?\w+;)/,i=/[<>"']|&(?!#?\w+;)/g,l={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},a=e=>l[e];const o=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function h(e){return e.replace(o,(e,t)=>"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):"")}const c=/(^|[^\[])\^/g;const p=/[^\w:]/g,u=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;const g={},d=/^[^:]+:\/*[^/]*$/,f=/^([^:]+:)[\s\S]*$/,b=/^([^:]+:\/*[^/]*)[\s\S]*$/;function m(e,t){g[" "+e]||(d.test(e)?g[" "+e]=e+"/":g[" "+e]=k(e,"/",!0));const s=-1===(e=g[" "+e]).indexOf(":");return"//"===t.substring(0,2)?s?t:e.replace(f,"$1")+t:"/"===t.charAt(0)?s?t:e.replace(b,"$1")+t:e+t}function k(e,t,s){const n=e.length;if(0===n)return"";let r=0;for(;r<n;){const i=e.charAt(n-r-1);if(i!==t||s){if(i===t||!s)break;r++}else r++}return e.substr(0,n-r)}e.exports={escape:function(e,t){if(t){if(s.test(e))return e.replace(n,a)}else if(r.test(e))return e.replace(i,a);return e},unescape:h,edit:function(e,t){e=e.source||e,t=t||"";const s={replace:(t,n)=>(n=(n=n.source||n).replace(c,"$1"),e=e.replace(t,n),s),getRegex:()=>new RegExp(e,t)};return s},cleanUrl:function(e,t,s){if(e){let e;try{e=decodeURIComponent(h(s)).replace(p,"").toLowerCase()}catch(e){return null}if(0===e.indexOf("javascript:")||0===e.indexOf("vbscript:")||0===e.indexOf("data:"))return null}t&&!u.test(s)&&(s=m(t,s));try{s=encodeURI(s).replace(/%25/g,"%")}catch(e){return null}return s},resolveUrl:m,noopTest:{exec:function(){}},merge:function(e){let t,s,n=1;for(;n<arguments.length;n++)for(s in t=arguments[n])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},splitCells:function(e,t){const s=e.replace(/\|/g,(e,t,s)=>{let n=!1,r=t;for(;--r>=0&&"\\"===s[r];)n=!n;return n?"|":" |"}).split(/ \|/);let n=0;if(s.length>t)s.splice(t);else for(;s.length<t;)s.push("");for(;n<s.length;n++)s[n]=s[n].trim().replace(/\\\|/g,"|");return s},rtrim:k,findClosingBracket:function(e,t){if(-1===e.indexOf(t[1]))return-1;const s=e.length;let n=0,r=0;for(;r<s;r++)if("\\"===e[r])r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&--n<0)return r;return-1},checkSanitizeDeprecation:function(e){e&&e.sanitize&&!e.silent&&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")}}},vbtb:function(e,t){function s(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,xhtml:!1}}e.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,xhtml:!1},getDefaults:s,changeDefaults:function(t){e.exports.defaults=t}}}}]); +//# sourceMappingURL=chunk-5118.db359fdf.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-5118.db359fdf.js.map b/priv/static/adminfe/static/js/chunk-5118.db359fdf.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./node_modules/marked/src/TextRenderer.js","webpack:///./node_modules/marked/src/marked.js","webpack:///./node_modules/marked/src/Parser.js","webpack:///./node_modules/marked/src/Slugger.js","webpack:///./node_modules/marked/src/Renderer.js","webpack:///./node_modules/marked/src/Lexer.js","webpack:///./node_modules/marked/src/rules.js","webpack:///./node_modules/marked/src/InlineLexer.js","webpack:///./node_modules/marked/src/helpers.js","webpack:///./node_modules/marked/src/defaults.js"],"names":["module","exports","[object Object]","text","href","title","Lexer","__webpack_require__","Parser","Renderer","TextRenderer","InlineLexer","Slugger","merge","checkSanitizeDeprecation","escape","getDefaults","changeDefaults","defaults","marked","src","opt","callback","Error","Object","prototype","toString","call","highlight","tokens","pending","i","lex","e","length","done","err","out","parse","token","type","lang","code","escaped","message","silent","options","setOptions","parser","lexer","inlineLexer","output","unescape","this","renderer","slugger","inline","links","inlineText","reverse","next","tok","pop","body","peek","hr","heading","depth","row","cell","j","header","tablecell","align","tablerow","cells","table","blockquote","ordered","start","list","loose","checked","task","nextToken","checkbox","push","parseText","listitem","html","paragraph","errMsg","console","log","seen","value","slug","toLowerCase","trim","replace","hasOwnProperty","originalSlug","cleanUrl","infostring","match","langPrefix","quote","level","raw","headerIds","headerPrefix","xhtml","content","flags","sanitize","baseUrl","block","rtrim","splitCells","create","rules","normal","pedantic","gfm","top","cap","bull","b","item","listStart","listItems","t","space","tag","l","isordered","istask","ischecked","newline","exec","substring","lastToken","trimRight","codeBlockStyle","fences","nptable","split","test","indexOf","RegExp","bullet","smartLists","slice","join","charAt","undefined","pre","sanitizer","def","lheading","charCodeAt","noopTest","edit","_paragraph","_label","_title","getRegex","source","_tag","_comment","autolink","url","link","reflink","nolink","strong","em","br","del","_punctuation","_escapes","_scheme","_email","_attribute","_href","_extended_email","_backpedal","breaks","findClosingBracket","prevCapZero","inLink","inRawBlock","lastParenIndex","linkLen","outputLink","escapes","codespan","mangle","smartypants","image","ch","Math","random","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","escapeReplacements","&","<",">","\"","'","getEscapeReplacement","unescapeTest","_","n","String","fromCharCode","parseInt","caret","nonWordAndColonTest","originIndependentUrl","baseUrls","justDomain","protocol","domain","resolveUrl","base","relativeBase","str","c","invert","suffLen","currChar","substr","encode","regex","obj","name","val","prot","decodeURIComponent","encodeURI","target","key","arguments","tableRow","count","offset","curr","splice","warn","newDefaults"],"mappings":"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","file":"static/js/chunk-5118.db359fdf.js","sourcesContent":["/**\n * TextRenderer\n * returns only the textual part of the token\n */\nmodule.exports = class TextRenderer {\n // no need for block level renderers\n strong(text) {\n return text;\n }\n\n em(text) {\n return text;\n }\n\n codespan(text) {\n return text;\n }\n\n del(text) {\n return text;\n }\n\n html(text) {\n return text;\n }\n\n text(text) {\n return text;\n }\n\n link(href, title, text) {\n return '' + text;\n }\n\n image(href, title, text) {\n return '' + text;\n }\n\n br() {\n return '';\n }\n};\n","const Lexer = require('./Lexer.js');\nconst Parser = require('./Parser.js');\nconst Renderer = require('./Renderer.js');\nconst TextRenderer = require('./TextRenderer.js');\nconst InlineLexer = require('./InlineLexer.js');\nconst Slugger = require('./Slugger.js');\nconst {\n merge,\n checkSanitizeDeprecation,\n escape\n} = require('./helpers.js');\nconst {\n getDefaults,\n changeDefaults,\n defaults\n} = require('./defaults.js');\n\n/**\n * Marked\n */\nfunction marked(src, opt, callback) {\n // throw error in case of non string input\n if (typeof src === 'undefined' || src === null) {\n throw new Error('marked(): input parameter is undefined or null');\n }\n if (typeof src !== 'string') {\n throw new Error('marked(): input parameter is of type '\n + Object.prototype.toString.call(src) + ', string expected');\n }\n\n if (callback || typeof opt === 'function') {\n if (!callback) {\n callback = opt;\n opt = null;\n }\n\n opt = merge({}, marked.defaults, opt || {});\n checkSanitizeDeprecation(opt);\n const highlight = opt.highlight;\n let tokens,\n pending,\n i = 0;\n\n try {\n tokens = Lexer.lex(src, opt);\n } catch (e) {\n return callback(e);\n }\n\n pending = tokens.length;\n\n const done = function(err) {\n if (err) {\n opt.highlight = highlight;\n return callback(err);\n }\n\n let out;\n\n try {\n out = Parser.parse(tokens, opt);\n } catch (e) {\n err = e;\n }\n\n opt.highlight = highlight;\n\n return err\n ? callback(err)\n : callback(null, out);\n };\n\n if (!highlight || highlight.length < 3) {\n return done();\n }\n\n delete opt.highlight;\n\n if (!pending) return done();\n\n for (; i < tokens.length; i++) {\n (function(token) {\n if (token.type !== 'code') {\n return --pending || done();\n }\n return highlight(token.text, token.lang, function(err, code) {\n if (err) return done(err);\n if (code == null || code === token.text) {\n return --pending || done();\n }\n token.text = code;\n token.escaped = true;\n --pending || done();\n });\n })(tokens[i]);\n }\n\n return;\n }\n try {\n opt = merge({}, marked.defaults, opt || {});\n checkSanitizeDeprecation(opt);\n return Parser.parse(Lexer.lex(src, opt), opt);\n } catch (e) {\n e.message += '\\nPlease report this to https://github.com/markedjs/marked.';\n if ((opt || marked.defaults).silent) {\n return '<p>An error occurred:</p><pre>'\n + escape(e.message + '', true)\n + '</pre>';\n }\n throw e;\n }\n}\n\n/**\n * Options\n */\n\nmarked.options =\nmarked.setOptions = function(opt) {\n merge(marked.defaults, opt);\n changeDefaults(marked.defaults);\n return marked;\n};\n\nmarked.getDefaults = getDefaults;\n\nmarked.defaults = defaults;\n\n/**\n * Expose\n */\n\nmarked.Parser = Parser;\nmarked.parser = Parser.parse;\n\nmarked.Renderer = Renderer;\nmarked.TextRenderer = TextRenderer;\n\nmarked.Lexer = Lexer;\nmarked.lexer = Lexer.lex;\n\nmarked.InlineLexer = InlineLexer;\nmarked.inlineLexer = InlineLexer.output;\n\nmarked.Slugger = Slugger;\n\nmarked.parse = marked;\n\nmodule.exports = marked;\n","const Renderer = require('./Renderer.js');\nconst Slugger = require('./Slugger.js');\nconst InlineLexer = require('./InlineLexer.js');\nconst TextRenderer = require('./TextRenderer.js');\nconst { defaults } = require('./defaults.js');\nconst {\n merge,\n unescape\n} = require('./helpers.js');\n\n/**\n * Parsing & Compiling\n */\nmodule.exports = class Parser {\n constructor(options) {\n this.tokens = [];\n this.token = null;\n this.options = options || defaults;\n this.options.renderer = this.options.renderer || new Renderer();\n this.renderer = this.options.renderer;\n this.renderer.options = this.options;\n this.slugger = new Slugger();\n }\n\n /**\n * Static Parse Method\n */\n static parse(tokens, options) {\n const parser = new Parser(options);\n return parser.parse(tokens);\n };\n\n /**\n * Parse Loop\n */\n parse(tokens) {\n this.inline = new InlineLexer(tokens.links, this.options);\n // use an InlineLexer with a TextRenderer to extract pure text\n this.inlineText = new InlineLexer(\n tokens.links,\n merge({}, this.options, { renderer: new TextRenderer() })\n );\n this.tokens = tokens.reverse();\n\n let out = '';\n while (this.next()) {\n out += this.tok();\n }\n\n return out;\n };\n\n /**\n * Next Token\n */\n next() {\n this.token = this.tokens.pop();\n return this.token;\n };\n\n /**\n * Preview Next Token\n */\n peek() {\n return this.tokens[this.tokens.length - 1] || 0;\n };\n\n /**\n * Parse Text Tokens\n */\n parseText() {\n let body = this.token.text;\n\n while (this.peek().type === 'text') {\n body += '\\n' + this.next().text;\n }\n\n return this.inline.output(body);\n };\n\n /**\n * Parse Current Token\n */\n tok() {\n let body = '';\n switch (this.token.type) {\n case 'space': {\n return '';\n }\n case 'hr': {\n return this.renderer.hr();\n }\n case 'heading': {\n return this.renderer.heading(\n this.inline.output(this.token.text),\n this.token.depth,\n unescape(this.inlineText.output(this.token.text)),\n this.slugger);\n }\n case 'code': {\n return this.renderer.code(this.token.text,\n this.token.lang,\n this.token.escaped);\n }\n case 'table': {\n let header = '',\n i,\n row,\n cell,\n j;\n\n // header\n cell = '';\n for (i = 0; i < this.token.header.length; i++) {\n cell += this.renderer.tablecell(\n this.inline.output(this.token.header[i]),\n { header: true, align: this.token.align[i] }\n );\n }\n header += this.renderer.tablerow(cell);\n\n for (i = 0; i < this.token.cells.length; i++) {\n row = this.token.cells[i];\n\n cell = '';\n for (j = 0; j < row.length; j++) {\n cell += this.renderer.tablecell(\n this.inline.output(row[j]),\n { header: false, align: this.token.align[j] }\n );\n }\n\n body += this.renderer.tablerow(cell);\n }\n return this.renderer.table(header, body);\n }\n case 'blockquote_start': {\n body = '';\n\n while (this.next().type !== 'blockquote_end') {\n body += this.tok();\n }\n\n return this.renderer.blockquote(body);\n }\n case 'list_start': {\n body = '';\n const ordered = this.token.ordered,\n start = this.token.start;\n\n while (this.next().type !== 'list_end') {\n body += this.tok();\n }\n\n return this.renderer.list(body, ordered, start);\n }\n case 'list_item_start': {\n body = '';\n const loose = this.token.loose;\n const checked = this.token.checked;\n const task = this.token.task;\n\n if (this.token.task) {\n if (loose) {\n if (this.peek().type === 'text') {\n const nextToken = this.peek();\n nextToken.text = this.renderer.checkbox(checked) + ' ' + nextToken.text;\n } else {\n this.tokens.push({\n type: 'text',\n text: this.renderer.checkbox(checked)\n });\n }\n } else {\n body += this.renderer.checkbox(checked);\n }\n }\n\n while (this.next().type !== 'list_item_end') {\n body += !loose && this.token.type === 'text'\n ? this.parseText()\n : this.tok();\n }\n return this.renderer.listitem(body, task, checked);\n }\n case 'html': {\n // TODO parse inline content if parameter markdown=1\n return this.renderer.html(this.token.text);\n }\n case 'paragraph': {\n return this.renderer.paragraph(this.inline.output(this.token.text));\n }\n case 'text': {\n return this.renderer.paragraph(this.parseText());\n }\n default: {\n const errMsg = 'Token with \"' + this.token.type + '\" type was not found.';\n if (this.options.silent) {\n console.log(errMsg);\n } else {\n throw new Error(errMsg);\n }\n }\n }\n };\n};\n","/**\n * Slugger generates header id\n */\nmodule.exports = class Slugger {\n constructor() {\n this.seen = {};\n }\n\n /**\n * Convert string to unique id\n */\n slug(value) {\n let slug = value\n .toLowerCase()\n .trim()\n // remove html tags\n .replace(/<[!\\/a-z].*?>/ig, '')\n // remove unwanted chars\n .replace(/[\\u2000-\\u206F\\u2E00-\\u2E7F\\\\'!\"#$%&()*+,./:;<=>?@[\\]^`{|}~]/g, '')\n .replace(/\\s/g, '-');\n\n if (this.seen.hasOwnProperty(slug)) {\n const originalSlug = slug;\n do {\n this.seen[originalSlug]++;\n slug = originalSlug + '-' + this.seen[originalSlug];\n } while (this.seen.hasOwnProperty(slug));\n }\n this.seen[slug] = 0;\n\n return slug;\n };\n};\n","const { defaults } = require('./defaults.js');\nconst {\n cleanUrl,\n escape\n} = require('./helpers.js');\n\n/**\n * Renderer\n */\nmodule.exports = class Renderer {\n constructor(options) {\n this.options = options || defaults;\n }\n\n code(code, infostring, escaped) {\n const lang = (infostring || '').match(/\\S*/)[0];\n if (this.options.highlight) {\n const out = this.options.highlight(code, lang);\n if (out != null && out !== code) {\n escaped = true;\n code = out;\n }\n }\n\n if (!lang) {\n return '<pre><code>'\n + (escaped ? code : escape(code, true))\n + '</code></pre>';\n }\n\n return '<pre><code class=\"'\n + this.options.langPrefix\n + escape(lang, true)\n + '\">'\n + (escaped ? code : escape(code, true))\n + '</code></pre>\\n';\n };\n\n blockquote(quote) {\n return '<blockquote>\\n' + quote + '</blockquote>\\n';\n };\n\n html(html) {\n return html;\n };\n\n heading(text, level, raw, slugger) {\n if (this.options.headerIds) {\n return '<h'\n + level\n + ' id=\"'\n + this.options.headerPrefix\n + slugger.slug(raw)\n + '\">'\n + text\n + '</h'\n + level\n + '>\\n';\n }\n // ignore IDs\n return '<h' + level + '>' + text + '</h' + level + '>\\n';\n };\n\n hr() {\n return this.options.xhtml ? '<hr/>\\n' : '<hr>\\n';\n };\n\n list(body, ordered, start) {\n const type = ordered ? 'ol' : 'ul',\n startatt = (ordered && start !== 1) ? (' start=\"' + start + '\"') : '';\n return '<' + type + startatt + '>\\n' + body + '</' + type + '>\\n';\n };\n\n listitem(text) {\n return '<li>' + text + '</li>\\n';\n };\n\n checkbox(checked) {\n return '<input '\n + (checked ? 'checked=\"\" ' : '')\n + 'disabled=\"\" type=\"checkbox\"'\n + (this.options.xhtml ? ' /' : '')\n + '> ';\n };\n\n paragraph(text) {\n return '<p>' + text + '</p>\\n';\n };\n\n table(header, body) {\n if (body) body = '<tbody>' + body + '</tbody>';\n\n return '<table>\\n'\n + '<thead>\\n'\n + header\n + '</thead>\\n'\n + body\n + '</table>\\n';\n };\n\n tablerow(content) {\n return '<tr>\\n' + content + '</tr>\\n';\n };\n\n tablecell(content, flags) {\n const type = flags.header ? 'th' : 'td';\n const tag = flags.align\n ? '<' + type + ' align=\"' + flags.align + '\">'\n : '<' + type + '>';\n return tag + content + '</' + type + '>\\n';\n };\n\n // span level renderer\n strong(text) {\n return '<strong>' + text + '</strong>';\n };\n\n em(text) {\n return '<em>' + text + '</em>';\n };\n\n codespan(text) {\n return '<code>' + text + '</code>';\n };\n\n br() {\n return this.options.xhtml ? '<br/>' : '<br>';\n };\n\n del(text) {\n return '<del>' + text + '</del>';\n };\n\n link(href, title, text) {\n href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);\n if (href === null) {\n return text;\n }\n let out = '<a href=\"' + escape(href) + '\"';\n if (title) {\n out += ' title=\"' + title + '\"';\n }\n out += '>' + text + '</a>';\n return out;\n };\n\n image(href, title, text) {\n href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);\n if (href === null) {\n return text;\n }\n\n let out = '<img src=\"' + href + '\" alt=\"' + text + '\"';\n if (title) {\n out += ' title=\"' + title + '\"';\n }\n out += this.options.xhtml ? '/>' : '>';\n return out;\n };\n\n text(text) {\n return text;\n };\n};\n","const { defaults } = require('./defaults.js');\nconst { block } = require('./rules.js');\nconst {\n rtrim,\n splitCells,\n escape\n} = require('./helpers.js');\n\n/**\n * Block Lexer\n */\nmodule.exports = class Lexer {\n constructor(options) {\n this.tokens = [];\n this.tokens.links = Object.create(null);\n this.options = options || defaults;\n this.rules = block.normal;\n\n if (this.options.pedantic) {\n this.rules = block.pedantic;\n } else if (this.options.gfm) {\n this.rules = block.gfm;\n }\n }\n\n /**\n * Expose Block Rules\n */\n static get rules() {\n return block;\n }\n\n /**\n * Static Lex Method\n */\n static lex(src, options) {\n const lexer = new Lexer(options);\n return lexer.lex(src);\n };\n\n /**\n * Preprocessing\n */\n lex(src) {\n src = src\n .replace(/\\r\\n|\\r/g, '\\n')\n .replace(/\\t/g, ' ');\n\n return this.token(src, true);\n };\n\n /**\n * Lexing\n */\n token(src, top) {\n src = src.replace(/^ +$/gm, '');\n let next,\n loose,\n cap,\n bull,\n b,\n item,\n listStart,\n listItems,\n t,\n space,\n i,\n tag,\n l,\n isordered,\n istask,\n ischecked;\n\n while (src) {\n // newline\n if (cap = this.rules.newline.exec(src)) {\n src = src.substring(cap[0].length);\n if (cap[0].length > 1) {\n this.tokens.push({\n type: 'space'\n });\n }\n }\n\n // code\n if (cap = this.rules.code.exec(src)) {\n const lastToken = this.tokens[this.tokens.length - 1];\n src = src.substring(cap[0].length);\n // An indented code block cannot interrupt a paragraph.\n if (lastToken && lastToken.type === 'paragraph') {\n lastToken.text += '\\n' + cap[0].trimRight();\n } else {\n cap = cap[0].replace(/^ {4}/gm, '');\n this.tokens.push({\n type: 'code',\n codeBlockStyle: 'indented',\n text: !this.options.pedantic\n ? rtrim(cap, '\\n')\n : cap\n });\n }\n continue;\n }\n\n // fences\n if (cap = this.rules.fences.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'code',\n lang: cap[2] ? cap[2].trim() : cap[2],\n text: cap[3] || ''\n });\n continue;\n }\n\n // heading\n if (cap = this.rules.heading.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'heading',\n depth: cap[1].length,\n text: cap[2]\n });\n continue;\n }\n\n // table no leading pipe (gfm)\n if (cap = this.rules.nptable.exec(src)) {\n item = {\n type: 'table',\n header: splitCells(cap[1].replace(/^ *| *\\| *$/g, '')),\n align: cap[2].replace(/^ *|\\| *$/g, '').split(/ *\\| */),\n cells: cap[3] ? cap[3].replace(/\\n$/, '').split('\\n') : []\n };\n\n if (item.header.length === item.align.length) {\n src = src.substring(cap[0].length);\n\n for (i = 0; i < item.align.length; i++) {\n if (/^ *-+: *$/.test(item.align[i])) {\n item.align[i] = 'right';\n } else if (/^ *:-+: *$/.test(item.align[i])) {\n item.align[i] = 'center';\n } else if (/^ *:-+ *$/.test(item.align[i])) {\n item.align[i] = 'left';\n } else {\n item.align[i] = null;\n }\n }\n\n for (i = 0; i < item.cells.length; i++) {\n item.cells[i] = splitCells(item.cells[i], item.header.length);\n }\n\n this.tokens.push(item);\n\n continue;\n }\n }\n\n // hr\n if (cap = this.rules.hr.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'hr'\n });\n continue;\n }\n\n // blockquote\n if (cap = this.rules.blockquote.exec(src)) {\n src = src.substring(cap[0].length);\n\n this.tokens.push({\n type: 'blockquote_start'\n });\n\n cap = cap[0].replace(/^ *> ?/gm, '');\n\n // Pass `top` to keep the current\n // \"toplevel\" state. This is exactly\n // how markdown.pl works.\n this.token(cap, top);\n\n this.tokens.push({\n type: 'blockquote_end'\n });\n\n continue;\n }\n\n // list\n if (cap = this.rules.list.exec(src)) {\n src = src.substring(cap[0].length);\n bull = cap[2];\n isordered = bull.length > 1;\n\n listStart = {\n type: 'list_start',\n ordered: isordered,\n start: isordered ? +bull : '',\n loose: false\n };\n\n this.tokens.push(listStart);\n\n // Get each top-level item.\n cap = cap[0].match(this.rules.item);\n\n listItems = [];\n next = false;\n l = cap.length;\n i = 0;\n\n for (; i < l; i++) {\n item = cap[i];\n\n // Remove the list item's bullet\n // so it is seen as the next token.\n space = item.length;\n item = item.replace(/^ *([*+-]|\\d+\\.) */, '');\n\n // Outdent whatever the\n // list item contains. Hacky.\n if (~item.indexOf('\\n ')) {\n space -= item.length;\n item = !this.options.pedantic\n ? item.replace(new RegExp('^ {1,' + space + '}', 'gm'), '')\n : item.replace(/^ {1,4}/gm, '');\n }\n\n // Determine whether the next list item belongs here.\n // Backpedal if it does not belong in this list.\n if (i !== l - 1) {\n b = block.bullet.exec(cap[i + 1])[0];\n if (bull.length > 1 ? b.length === 1\n : (b.length > 1 || (this.options.smartLists && b !== bull))) {\n src = cap.slice(i + 1).join('\\n') + src;\n i = l - 1;\n }\n }\n\n // Determine whether item is loose or not.\n // Use: /(^|\\n)(?! )[^\\n]+\\n\\n(?!\\s*$)/\n // for discount behavior.\n loose = next || /\\n\\n(?!\\s*$)/.test(item);\n if (i !== l - 1) {\n next = item.charAt(item.length - 1) === '\\n';\n if (!loose) loose = next;\n }\n\n if (loose) {\n listStart.loose = true;\n }\n\n // Check for task list items\n istask = /^\\[[ xX]\\] /.test(item);\n ischecked = undefined;\n if (istask) {\n ischecked = item[1] !== ' ';\n item = item.replace(/^\\[[ xX]\\] +/, '');\n }\n\n t = {\n type: 'list_item_start',\n task: istask,\n checked: ischecked,\n loose: loose\n };\n\n listItems.push(t);\n this.tokens.push(t);\n\n // Recurse.\n this.token(item, false);\n\n this.tokens.push({\n type: 'list_item_end'\n });\n }\n\n if (listStart.loose) {\n l = listItems.length;\n i = 0;\n for (; i < l; i++) {\n listItems[i].loose = true;\n }\n }\n\n this.tokens.push({\n type: 'list_end'\n });\n\n continue;\n }\n\n // html\n if (cap = this.rules.html.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: this.options.sanitize\n ? 'paragraph'\n : 'html',\n pre: !this.options.sanitizer\n && (cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style'),\n text: this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0]\n });\n continue;\n }\n\n // def\n if (top && (cap = this.rules.def.exec(src))) {\n src = src.substring(cap[0].length);\n if (cap[3]) cap[3] = cap[3].substring(1, cap[3].length - 1);\n tag = cap[1].toLowerCase().replace(/\\s+/g, ' ');\n if (!this.tokens.links[tag]) {\n this.tokens.links[tag] = {\n href: cap[2],\n title: cap[3]\n };\n }\n continue;\n }\n\n // table (gfm)\n if (cap = this.rules.table.exec(src)) {\n item = {\n type: 'table',\n header: splitCells(cap[1].replace(/^ *| *\\| *$/g, '')),\n align: cap[2].replace(/^ *|\\| *$/g, '').split(/ *\\| */),\n cells: cap[3] ? cap[3].replace(/\\n$/, '').split('\\n') : []\n };\n\n if (item.header.length === item.align.length) {\n src = src.substring(cap[0].length);\n\n for (i = 0; i < item.align.length; i++) {\n if (/^ *-+: *$/.test(item.align[i])) {\n item.align[i] = 'right';\n } else if (/^ *:-+: *$/.test(item.align[i])) {\n item.align[i] = 'center';\n } else if (/^ *:-+ *$/.test(item.align[i])) {\n item.align[i] = 'left';\n } else {\n item.align[i] = null;\n }\n }\n\n for (i = 0; i < item.cells.length; i++) {\n item.cells[i] = splitCells(\n item.cells[i].replace(/^ *\\| *| *\\| *$/g, ''),\n item.header.length);\n }\n\n this.tokens.push(item);\n\n continue;\n }\n }\n\n // lheading\n if (cap = this.rules.lheading.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'heading',\n depth: cap[2].charAt(0) === '=' ? 1 : 2,\n text: cap[1]\n });\n continue;\n }\n\n // top-level paragraph\n if (top && (cap = this.rules.paragraph.exec(src))) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'paragraph',\n text: cap[1].charAt(cap[1].length - 1) === '\\n'\n ? cap[1].slice(0, -1)\n : cap[1]\n });\n continue;\n }\n\n // text\n if (cap = this.rules.text.exec(src)) {\n // Top-level should never reach here.\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'text',\n text: cap[0]\n });\n continue;\n }\n\n if (src) {\n throw new Error('Infinite loop on byte: ' + src.charCodeAt(0));\n }\n }\n\n return this.tokens;\n };\n};\n","const {\n noopTest,\n edit,\n merge\n} = require('./helpers.js');\n\n/**\n * Block-Level Grammar\n */\nconst block = {\n newline: /^\\n+/,\n code: /^( {4}[^\\n]+\\n*)+/,\n fences: /^ {0,3}(`{3,}(?=[^`\\n]*\\n)|~{3,})([^\\n]*)\\n(?:|([\\s\\S]*?)\\n)(?: {0,3}\\1[~`]* *(?:\\n+|$)|$)/,\n hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)/,\n heading: /^ {0,3}(#{1,6}) +([^\\n]*?)(?: +#+)? *(?:\\n+|$)/,\n blockquote: /^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/,\n list: /^( {0,3})(bull) [\\s\\S]+?(?:hr|def|\\n{2,}(?! )(?!\\1bull )\\n*|\\s*$)/,\n html: '^ {0,3}(?:' // optional indentation\n + '<(script|pre|style)[\\\\s>][\\\\s\\\\S]*?(?:</\\\\1>[^\\\\n]*\\\\n+|$)' // (1)\n + '|comment[^\\\\n]*(\\\\n+|$)' // (2)\n + '|<\\\\?[\\\\s\\\\S]*?\\\\?>\\\\n*' // (3)\n + '|<![A-Z][\\\\s\\\\S]*?>\\\\n*' // (4)\n + '|<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>\\\\n*' // (5)\n + '|</?(tag)(?: +|\\\\n|/?>)[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (6)\n + '|<(?!script|pre|style)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (7) open tag\n + '|</(?!script|pre|style)[a-z][\\\\w-]*\\\\s*>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (7) closing tag\n + ')',\n def: /^ {0,3}\\[(label)\\]: *\\n? *<?([^\\s>]+)>?(?:(?: +\\n? *| *\\n *)(title))? *(?:\\n+|$)/,\n nptable: noopTest,\n table: noopTest,\n lheading: /^([^\\n]+)\\n {0,3}(=+|-+) *(?:\\n+|$)/,\n // regex template, placeholders will be replaced according to different paragraph\n // interruption rules of commonmark and the original markdown spec:\n _paragraph: /^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\\n]+)*)/,\n text: /^[^\\n]+/\n};\n\nblock._label = /(?!\\s*\\])(?:\\\\[\\[\\]]|[^\\[\\]])+/;\nblock._title = /(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/;\nblock.def = edit(block.def)\n .replace('label', block._label)\n .replace('title', block._title)\n .getRegex();\n\nblock.bullet = /(?:[*+-]|\\d{1,9}\\.)/;\nblock.item = /^( *)(bull) ?[^\\n]*(?:\\n(?!\\1bull ?)[^\\n]*)*/;\nblock.item = edit(block.item, 'gm')\n .replace(/bull/g, block.bullet)\n .getRegex();\n\nblock.list = edit(block.list)\n .replace(/bull/g, block.bullet)\n .replace('hr', '\\\\n+(?=\\\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$))')\n .replace('def', '\\\\n+(?=' + block.def.source + ')')\n .getRegex();\n\nblock._tag = 'address|article|aside|base|basefont|blockquote|body|caption'\n + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption'\n + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe'\n + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option'\n + '|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr'\n + '|track|ul';\nblock._comment = /<!--(?!-?>)[\\s\\S]*?-->/;\nblock.html = edit(block.html, 'i')\n .replace('comment', block._comment)\n .replace('tag', block._tag)\n .replace('attribute', / +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/)\n .getRegex();\n\nblock.paragraph = edit(block._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // pars can be interrupted by type (6) html blocks\n .getRegex();\n\nblock.blockquote = edit(block.blockquote)\n .replace('paragraph', block.paragraph)\n .getRegex();\n\n/**\n * Normal Block Grammar\n */\n\nblock.normal = merge({}, block);\n\n/**\n * GFM Block Grammar\n */\n\nblock.gfm = merge({}, block.normal, {\n nptable: '^ *([^|\\\\n ].*\\\\|.*)\\\\n' // Header\n + ' *([-:]+ *\\\\|[-| :]*)' // Align\n + '(?:\\\\n((?:(?!\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)', // Cells\n table: '^ *\\\\|(.+)\\\\n' // Header\n + ' *\\\\|?( *[-:]+[-| :]*)' // Align\n + '(?:\\\\n *((?:(?!\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)' // Cells\n});\n\nblock.gfm.nptable = edit(block.gfm.nptable)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\n\nblock.gfm.table = edit(block.gfm.table)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\n\n/**\n * Pedantic grammar (original John Gruber's loose markdown specification)\n */\n\nblock.pedantic = merge({}, block.normal, {\n html: edit(\n '^ *(?:comment *(?:\\\\n|\\\\s*$)'\n + '|<(tag)[\\\\s\\\\S]+?</\\\\1> *(?:\\\\n{2,}|\\\\s*$)' // closed tag\n + '|<tag(?:\"[^\"]*\"|\\'[^\\']*\\'|\\\\s[^\\'\"/>\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))')\n .replace('comment', block._comment)\n .replace(/tag/g, '(?!(?:'\n + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub'\n + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)'\n + '\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b')\n .getRegex(),\n def: /^ *\\[([^\\]]+)\\]: *<?([^\\s>]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,\n heading: /^ *(#{1,6}) *([^\\n]+?) *(?:#+ *)?(?:\\n+|$)/,\n fences: noopTest, // fences not supported\n paragraph: edit(block.normal._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' *#{1,6} *[^\\n]')\n .replace('lheading', block.lheading)\n .replace('blockquote', ' {0,3}>')\n .replace('|fences', '')\n .replace('|list', '')\n .replace('|html', '')\n .getRegex()\n});\n\n/**\n * Inline-Level Grammar\n */\nconst inline = {\n escape: /^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,\n autolink: /^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/,\n url: noopTest,\n tag: '^comment'\n + '|^</[a-zA-Z][\\\\w:-]*\\\\s*>' // self-closing tag\n + '|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>' // open tag\n + '|^<\\\\?[\\\\s\\\\S]*?\\\\?>' // processing instruction, e.g. <?php ?>\n + '|^<![a-zA-Z]+\\\\s[\\\\s\\\\S]*?>' // declaration, e.g. <!DOCTYPE html>\n + '|^<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>', // CDATA section\n link: /^!?\\[(label)\\]\\(\\s*(href)(?:\\s+(title))?\\s*\\)/,\n reflink: /^!?\\[(label)\\]\\[(?!\\s*\\])((?:\\\\[\\[\\]]?|[^\\[\\]\\\\])+)\\]/,\n nolink: /^!?\\[(?!\\s*\\])((?:\\[[^\\[\\]]*\\]|\\\\[\\[\\]]|[^\\[\\]])*)\\](?:\\[\\])?/,\n strong: /^__([^\\s_])__(?!_)|^\\*\\*([^\\s*])\\*\\*(?!\\*)|^__([^\\s][\\s\\S]*?[^\\s])__(?!_)|^\\*\\*([^\\s][\\s\\S]*?[^\\s])\\*\\*(?!\\*)/,\n em: /^_([^\\s_])_(?!_)|^\\*([^\\s*<\\[])\\*(?!\\*)|^_([^\\s<][\\s\\S]*?[^\\s_])_(?!_|[^\\spunctuation])|^_([^\\s_<][\\s\\S]*?[^\\s])_(?!_|[^\\spunctuation])|^\\*([^\\s<\"][\\s\\S]*?[^\\s\\*])\\*(?!\\*|[^\\spunctuation])|^\\*([^\\s*\"<\\[][\\s\\S]*?[^\\s])\\*(?!\\*)/,\n code: /^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,\n br: /^( {2,}|\\\\)\\n(?!\\s*$)/,\n del: noopTest,\n text: /^(`+|[^`])(?:[\\s\\S]*?(?:(?=[\\\\<!\\[`*]|\\b_|$)|[^ ](?= {2,}\\n))|(?= {2,}\\n))/\n};\n\n// list of punctuation marks from common mark spec\n// without ` and ] to workaround Rule 17 (inline code blocks/links)\ninline._punctuation = '!\"#$%&\\'()*+,\\\\-./:;<=>?@\\\\[^_{|}~';\ninline.em = edit(inline.em).replace(/punctuation/g, inline._punctuation).getRegex();\n\ninline._escapes = /\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/g;\n\ninline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;\ninline._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])?)+(?![-_])/;\ninline.autolink = edit(inline.autolink)\n .replace('scheme', inline._scheme)\n .replace('email', inline._email)\n .getRegex();\n\ninline._attribute = /\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/;\n\ninline.tag = edit(inline.tag)\n .replace('comment', block._comment)\n .replace('attribute', inline._attribute)\n .getRegex();\n\ninline._label = /(?:\\[[^\\[\\]]*\\]|\\\\.|`[^`]*`|[^\\[\\]\\\\`])*?/;\ninline._href = /<(?:\\\\[<>]?|[^\\s<>\\\\])*>|[^\\s\\x00-\\x1f]*/;\ninline._title = /\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/;\n\ninline.link = edit(inline.link)\n .replace('label', inline._label)\n .replace('href', inline._href)\n .replace('title', inline._title)\n .getRegex();\n\ninline.reflink = edit(inline.reflink)\n .replace('label', inline._label)\n .getRegex();\n\n/**\n * Normal Inline Grammar\n */\n\ninline.normal = merge({}, inline);\n\n/**\n * Pedantic Inline Grammar\n */\n\ninline.pedantic = merge({}, inline.normal, {\n strong: /^__(?=\\S)([\\s\\S]*?\\S)__(?!_)|^\\*\\*(?=\\S)([\\s\\S]*?\\S)\\*\\*(?!\\*)/,\n em: /^_(?=\\S)([\\s\\S]*?\\S)_(?!_)|^\\*(?=\\S)([\\s\\S]*?\\S)\\*(?!\\*)/,\n link: edit(/^!?\\[(label)\\]\\((.*?)\\)/)\n .replace('label', inline._label)\n .getRegex(),\n reflink: edit(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/)\n .replace('label', inline._label)\n .getRegex()\n});\n\n/**\n * GFM Inline Grammar\n */\n\ninline.gfm = merge({}, inline.normal, {\n escape: edit(inline.escape).replace('])', '~|])').getRegex(),\n _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,\n url: /^((?:ftp|https?):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/,\n _backpedal: /(?:[^?!.,:;*_~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,\n del: /^~+(?=\\S)([\\s\\S]*?\\S)~+/,\n text: /^(`+|[^`])(?:[\\s\\S]*?(?:(?=[\\\\<!\\[`*~]|\\b_|https?:\\/\\/|ftp:\\/\\/|www\\.|$)|[^ ](?= {2,}\\n)|[^a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-](?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@))|(?= {2,}\\n|[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@))/\n});\n\ninline.gfm.url = edit(inline.gfm.url, 'i')\n .replace('email', inline.gfm._extended_email)\n .getRegex();\n/**\n * GFM + Line Breaks Inline Grammar\n */\n\ninline.breaks = merge({}, inline.gfm, {\n br: edit(inline.br).replace('{2,}', '*').getRegex(),\n text: edit(inline.gfm.text)\n .replace('\\\\b_', '\\\\b_| {2,}\\\\n')\n .replace(/\\{2,\\}/g, '*')\n .getRegex()\n});\n\nmodule.exports = {\n block,\n inline\n};\n","const Renderer = require('./Renderer.js');\nconst { defaults } = require('./defaults.js');\nconst { inline } = require('./rules.js');\nconst {\n findClosingBracket,\n escape\n} = require('./helpers.js');\n\n/**\n * Inline Lexer & Compiler\n */\nmodule.exports = class InlineLexer {\n constructor(links, options) {\n this.options = options || defaults;\n this.links = links;\n this.rules = inline.normal;\n this.options.renderer = this.options.renderer || new Renderer();\n this.renderer = this.options.renderer;\n this.renderer.options = this.options;\n\n if (!this.links) {\n throw new Error('Tokens array requires a `links` property.');\n }\n\n if (this.options.pedantic) {\n this.rules = inline.pedantic;\n } else if (this.options.gfm) {\n if (this.options.breaks) {\n this.rules = inline.breaks;\n } else {\n this.rules = inline.gfm;\n }\n }\n }\n\n /**\n * Expose Inline Rules\n */\n static get rules() {\n return inline;\n }\n\n /**\n * Static Lexing/Compiling Method\n */\n static output(src, links, options) {\n const inline = new InlineLexer(links, options);\n return inline.output(src);\n }\n\n /**\n * Lexing/Compiling\n */\n output(src) {\n let out = '',\n link,\n text,\n href,\n title,\n cap,\n prevCapZero;\n\n while (src) {\n // escape\n if (cap = this.rules.escape.exec(src)) {\n src = src.substring(cap[0].length);\n out += escape(cap[1]);\n continue;\n }\n\n // tag\n if (cap = this.rules.tag.exec(src)) {\n if (!this.inLink && /^<a /i.test(cap[0])) {\n this.inLink = true;\n } else if (this.inLink && /^<\\/a>/i.test(cap[0])) {\n this.inLink = false;\n }\n if (!this.inRawBlock && /^<(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.inRawBlock = true;\n } else if (this.inRawBlock && /^<\\/(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.inRawBlock = false;\n }\n\n src = src.substring(cap[0].length);\n out += this.renderer.html(this.options.sanitize\n ? (this.options.sanitizer\n ? this.options.sanitizer(cap[0])\n : escape(cap[0]))\n : cap[0]);\n continue;\n }\n\n // link\n if (cap = this.rules.link.exec(src)) {\n const lastParenIndex = findClosingBracket(cap[2], '()');\n if (lastParenIndex > -1) {\n const start = cap[0].indexOf('!') === 0 ? 5 : 4;\n const linkLen = start + cap[1].length + lastParenIndex;\n cap[2] = cap[2].substring(0, lastParenIndex);\n cap[0] = cap[0].substring(0, linkLen).trim();\n cap[3] = '';\n }\n src = src.substring(cap[0].length);\n this.inLink = true;\n href = cap[2];\n if (this.options.pedantic) {\n link = /^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/.exec(href);\n\n if (link) {\n href = link[1];\n title = link[3];\n } else {\n title = '';\n }\n } else {\n title = cap[3] ? cap[3].slice(1, -1) : '';\n }\n href = href.trim().replace(/^<([\\s\\S]*)>$/, '$1');\n out += this.outputLink(cap, {\n href: InlineLexer.escapes(href),\n title: InlineLexer.escapes(title)\n });\n this.inLink = false;\n continue;\n }\n\n // reflink, nolink\n if ((cap = this.rules.reflink.exec(src))\n || (cap = this.rules.nolink.exec(src))) {\n src = src.substring(cap[0].length);\n link = (cap[2] || cap[1]).replace(/\\s+/g, ' ');\n link = this.links[link.toLowerCase()];\n if (!link || !link.href) {\n out += cap[0].charAt(0);\n src = cap[0].substring(1) + src;\n continue;\n }\n this.inLink = true;\n out += this.outputLink(cap, link);\n this.inLink = false;\n continue;\n }\n\n // strong\n if (cap = this.rules.strong.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.strong(this.output(cap[4] || cap[3] || cap[2] || cap[1]));\n continue;\n }\n\n // em\n if (cap = this.rules.em.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.em(this.output(cap[6] || cap[5] || cap[4] || cap[3] || cap[2] || cap[1]));\n continue;\n }\n\n // code\n if (cap = this.rules.code.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.codespan(escape(cap[2].trim(), true));\n continue;\n }\n\n // br\n if (cap = this.rules.br.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.br();\n continue;\n }\n\n // del (gfm)\n if (cap = this.rules.del.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.del(this.output(cap[1]));\n continue;\n }\n\n // autolink\n if (cap = this.rules.autolink.exec(src)) {\n src = src.substring(cap[0].length);\n if (cap[2] === '@') {\n text = escape(this.mangle(cap[1]));\n href = 'mailto:' + text;\n } else {\n text = escape(cap[1]);\n href = text;\n }\n out += this.renderer.link(href, null, text);\n continue;\n }\n\n // url (gfm)\n if (!this.inLink && (cap = this.rules.url.exec(src))) {\n if (cap[2] === '@') {\n text = escape(cap[0]);\n href = 'mailto:' + text;\n } else {\n // do extended autolink path validation\n do {\n prevCapZero = cap[0];\n cap[0] = this.rules._backpedal.exec(cap[0])[0];\n } while (prevCapZero !== cap[0]);\n text = escape(cap[0]);\n if (cap[1] === 'www.') {\n href = 'http://' + text;\n } else {\n href = text;\n }\n }\n src = src.substring(cap[0].length);\n out += this.renderer.link(href, null, text);\n continue;\n }\n\n // text\n if (cap = this.rules.text.exec(src)) {\n src = src.substring(cap[0].length);\n if (this.inRawBlock) {\n out += this.renderer.text(this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0]);\n } else {\n out += this.renderer.text(escape(this.smartypants(cap[0])));\n }\n continue;\n }\n\n if (src) {\n throw new Error('Infinite loop on byte: ' + src.charCodeAt(0));\n }\n }\n\n return out;\n }\n\n static escapes(text) {\n return text ? text.replace(InlineLexer.rules._escapes, '$1') : text;\n }\n\n /**\n * Compile Link\n */\n outputLink(cap, link) {\n const href = link.href,\n title = link.title ? escape(link.title) : null;\n\n return cap[0].charAt(0) !== '!'\n ? this.renderer.link(href, title, this.output(cap[1]))\n : this.renderer.image(href, title, escape(cap[1]));\n }\n\n /**\n * Smartypants Transformations\n */\n smartypants(text) {\n if (!this.options.smartypants) return text;\n return text\n // em-dashes\n .replace(/---/g, '\\u2014')\n // en-dashes\n .replace(/--/g, '\\u2013')\n // opening singles\n .replace(/(^|[-\\u2014/(\\[{\"\\s])'/g, '$1\\u2018')\n // closing singles & apostrophes\n .replace(/'/g, '\\u2019')\n // opening doubles\n .replace(/(^|[-\\u2014/(\\[{\\u2018\\s])\"/g, '$1\\u201c')\n // closing doubles\n .replace(/\"/g, '\\u201d')\n // ellipses\n .replace(/\\.{3}/g, '\\u2026');\n }\n\n /**\n * Mangle Links\n */\n mangle(text) {\n if (!this.options.mangle) return text;\n const l = text.length;\n let out = '',\n i = 0,\n ch;\n\n for (; i < l; i++) {\n ch = text.charCodeAt(i);\n if (Math.random() > 0.5) {\n ch = 'x' + ch.toString(16);\n }\n out += '&#' + ch + ';';\n }\n\n return out;\n }\n};\n","/**\n * Helpers\n */\nconst escapeTest = /[&<>\"']/;\nconst escapeReplace = /[&<>\"']/g;\nconst escapeTestNoEncode = /[<>\"']|&(?!#?\\w+;)/;\nconst escapeReplaceNoEncode = /[<>\"']|&(?!#?\\w+;)/g;\nconst escapeReplacements = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;'\n};\nconst getEscapeReplacement = (ch) => escapeReplacements[ch];\nfunction escape(html, encode) {\n if (encode) {\n if (escapeTest.test(html)) {\n return html.replace(escapeReplace, getEscapeReplacement);\n }\n } else {\n if (escapeTestNoEncode.test(html)) {\n return html.replace(escapeReplaceNoEncode, getEscapeReplacement);\n }\n }\n\n return html;\n}\n\nconst unescapeTest = /&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig;\n\nfunction unescape(html) {\n // explicitly match decimal, hex, and named HTML entities\n return html.replace(unescapeTest, (_, n) => {\n n = n.toLowerCase();\n if (n === 'colon') return ':';\n if (n.charAt(0) === '#') {\n return n.charAt(1) === 'x'\n ? String.fromCharCode(parseInt(n.substring(2), 16))\n : String.fromCharCode(+n.substring(1));\n }\n return '';\n });\n}\n\nconst caret = /(^|[^\\[])\\^/g;\nfunction edit(regex, opt) {\n regex = regex.source || regex;\n opt = opt || '';\n const obj = {\n replace: (name, val) => {\n val = val.source || val;\n val = val.replace(caret, '$1');\n regex = regex.replace(name, val);\n return obj;\n },\n getRegex: () => {\n return new RegExp(regex, opt);\n }\n };\n return obj;\n}\n\nconst nonWordAndColonTest = /[^\\w:]/g;\nconst originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;\nfunction cleanUrl(sanitize, base, href) {\n if (sanitize) {\n let prot;\n try {\n prot = decodeURIComponent(unescape(href))\n .replace(nonWordAndColonTest, '')\n .toLowerCase();\n } catch (e) {\n return null;\n }\n if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0 || prot.indexOf('data:') === 0) {\n return null;\n }\n }\n if (base && !originIndependentUrl.test(href)) {\n href = resolveUrl(base, href);\n }\n try {\n href = encodeURI(href).replace(/%25/g, '%');\n } catch (e) {\n return null;\n }\n return href;\n}\n\nconst baseUrls = {};\nconst justDomain = /^[^:]+:\\/*[^/]*$/;\nconst protocol = /^([^:]+:)[\\s\\S]*$/;\nconst domain = /^([^:]+:\\/*[^/]*)[\\s\\S]*$/;\n\nfunction resolveUrl(base, href) {\n if (!baseUrls[' ' + base]) {\n // we can ignore everything in base after the last slash of its path component,\n // but we might need to add _that_\n // https://tools.ietf.org/html/rfc3986#section-3\n if (justDomain.test(base)) {\n baseUrls[' ' + base] = base + '/';\n } else {\n baseUrls[' ' + base] = rtrim(base, '/', true);\n }\n }\n base = baseUrls[' ' + base];\n const relativeBase = base.indexOf(':') === -1;\n\n if (href.substring(0, 2) === '//') {\n if (relativeBase) {\n return href;\n }\n return base.replace(protocol, '$1') + href;\n } else if (href.charAt(0) === '/') {\n if (relativeBase) {\n return href;\n }\n return base.replace(domain, '$1') + href;\n } else {\n return base + href;\n }\n}\n\nconst noopTest = { exec: function noopTest() {} };\n\nfunction merge(obj) {\n let i = 1,\n target,\n key;\n\n for (; i < arguments.length; i++) {\n target = arguments[i];\n for (key in target) {\n if (Object.prototype.hasOwnProperty.call(target, key)) {\n obj[key] = target[key];\n }\n }\n }\n\n return obj;\n}\n\nfunction splitCells(tableRow, count) {\n // ensure that every cell-delimiting pipe has a space\n // before it to distinguish it from an escaped pipe\n const row = tableRow.replace(/\\|/g, (match, offset, str) => {\n let escaped = false,\n curr = offset;\n while (--curr >= 0 && str[curr] === '\\\\') escaped = !escaped;\n if (escaped) {\n // odd number of slashes means | is escaped\n // so we leave it alone\n return '|';\n } else {\n // add space before unescaped |\n return ' |';\n }\n }),\n cells = row.split(/ \\|/);\n let i = 0;\n\n if (cells.length > count) {\n cells.splice(count);\n } else {\n while (cells.length < count) cells.push('');\n }\n\n for (; i < cells.length; i++) {\n // leading or trailing whitespace is ignored per the gfm spec\n cells[i] = cells[i].trim().replace(/\\\\\\|/g, '|');\n }\n return cells;\n}\n\n// Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').\n// /c*$/ is vulnerable to REDOS.\n// invert: Remove suffix of non-c chars instead. Default falsey.\nfunction rtrim(str, c, invert) {\n const l = str.length;\n if (l === 0) {\n return '';\n }\n\n // Length of suffix matching the invert condition.\n let suffLen = 0;\n\n // Step left until we fail to match the invert condition.\n while (suffLen < l) {\n const currChar = str.charAt(l - suffLen - 1);\n if (currChar === c && !invert) {\n suffLen++;\n } else if (currChar !== c && invert) {\n suffLen++;\n } else {\n break;\n }\n }\n\n return str.substr(0, l - suffLen);\n}\n\nfunction findClosingBracket(str, b) {\n if (str.indexOf(b[1]) === -1) {\n return -1;\n }\n const l = str.length;\n let level = 0,\n i = 0;\n for (; i < l; i++) {\n if (str[i] === '\\\\') {\n i++;\n } else if (str[i] === b[0]) {\n level++;\n } else if (str[i] === b[1]) {\n level--;\n if (level < 0) {\n return i;\n }\n }\n }\n return -1;\n}\n\nfunction checkSanitizeDeprecation(opt) {\n if (opt && opt.sanitize && !opt.silent) {\n 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');\n }\n}\n\nmodule.exports = {\n escape,\n unescape,\n edit,\n cleanUrl,\n resolveUrl,\n noopTest,\n merge,\n splitCells,\n rtrim,\n findClosingBracket,\n checkSanitizeDeprecation\n};\n","function getDefaults() {\n return {\n baseUrl: null,\n breaks: false,\n gfm: true,\n headerIds: true,\n headerPrefix: '',\n highlight: null,\n langPrefix: 'language-',\n mangle: true,\n pedantic: false,\n renderer: null,\n sanitize: false,\n sanitizer: null,\n silent: false,\n smartLists: false,\n smartypants: false,\n xhtml: false\n };\n}\n\nfunction changeDefaults(newDefaults) {\n module.exports.defaults = newDefaults;\n}\n\nmodule.exports = {\n defaults: getDefaults(),\n getDefaults,\n changeDefaults\n};\n"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-521f.748b331d.js b/priv/static/adminfe/static/js/chunk-521f.748b331d.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-521f"],{"13xp":function(e,s,t){"use strict";var r=t("2r4G");t.n(r).a},"2r4G":function(e,s,t){},"4bFr":function(e,s,t){"use strict";t.r(s);var r=t("ot3S"),i=t("tPM3"),a=t("o0o1"),n=t.n(a),o=t("yXPU"),l=t.n(o),u=t("XJYT"),c={name:"SecuritySettingsModal",props:{visible:{type:Boolean,default:!1},user:{type:Object,default:function(){return{}}}},data:function(){return{securitySettingsForm:{newEmail:"",newPassword:"",isEmailLoading:!1,isPasswordLoading:!1}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},getLabelWidth:function(){return this.isDesktop?"120px":"85px"},userCredentials:function(){return this.$store.state.userProfile.userCredentials}},mounted:function(){var e=l()(n.a.mark(function e(){return n.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.$store.dispatch("FetchUserCredentials",{nickname:this.user.nickname});case 2:this.securitySettingsForm.newEmail=this.userCredentials.email;case 3:case"end":return e.stop()}},e,this)}));return function(){return e.apply(this,arguments)}}(),methods:{updateEmail:function(){var e=this;return l()(n.a.mark(function s(){var t;return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return t={email:e.securitySettingsForm.newEmail},e.securitySettingsForm.isEmailLoading=!0,s.next=4,e.$store.dispatch("UpdateUserCredentials",{nickname:e.user.nickname,credentials:t});case 4:e.securitySettingsForm.isEmailLoading=!1,Object(u.Message)({message:e.$t("userProfile.securitySettings.emailUpdated"),type:"success",duration:5e3});case 6:case"end":return s.stop()}},s)}))()},updatePassword:function(){var e=this;return l()(n.a.mark(function s(){var t;return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return t={password:e.securitySettingsForm.newPassword},e.securitySettingsForm.isPasswordLoading=!0,s.next=4,e.$store.dispatch("UpdateUserCredentials",{nickname:e.user.nickname,credentials:t});case 4:e.securitySettingsForm.isPasswordLoading=!1,e.securitySettingsForm.newPassword="",Object(u.Message)({message:e.$t("userProfile.securitySettings.passwordUpdated"),type:"success",duration:5e3});case 7:case"end":return s.stop()}},s)}))()},close:function(){this.$emit("close",!0)}}},d=(t("13xp"),t("KHd+")),p=Object(d.a)(c,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dialog",{staticClass:"security-settings-modal",attrs:{"before-close":e.close,title:e.$t("userProfile.securitySettings.securitySettings"),visible:e.visible}},[t("el-form",{attrs:{model:e.securitySettingsForm,"label-width":e.getLabelWidth}},[t("el-form-item",{attrs:{label:e.$t("userProfile.securitySettings.email")}},[t("el-input",{attrs:{placeholder:e.$t("userProfile.securitySettings.inputNewEmail")},model:{value:e.securitySettingsForm.newEmail,callback:function(s){e.$set(e.securitySettingsForm,"newEmail",s)},expression:"securitySettingsForm.newEmail"}})],1),e._v(" "),t("el-form-item",[t("el-button",{staticClass:"security-settings-submit-button",attrs:{loading:e.securitySettingsForm.isEmailLoading,disabled:!e.securitySettingsForm.newEmail||e.securitySettingsForm.newEmail===e.userCredentials.email,type:"primary"},on:{click:function(s){return e.updateEmail()}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.submit"))+"\n ")])],1),e._v(" "),t("el-form-item",{staticClass:"password-input",attrs:{label:e.$t("userProfile.securitySettings.password")}},[t("el-input",{attrs:{placeholder:e.$t("userProfile.securitySettings.inputNewPassword")},model:{value:e.securitySettingsForm.newPassword,callback:function(s){e.$set(e.securitySettingsForm,"newPassword",s)},expression:"securitySettingsForm.newPassword"}}),e._v(" "),t("small",{staticClass:"form-text"},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.passwordLengthNotice",{minLength:8}))+"\n ")])],1),e._v(" "),t("el-alert",{staticClass:"password-alert",attrs:{closable:!1,type:"warning","show-icon":""}},[t("p",[e._v(e._s(e.$t("userProfile.securitySettings.passwordChangeWarning1")))]),e._v(" "),t("p",[e._v(e._s(e.$t("userProfile.securitySettings.passwordChangeWarning2")))])]),e._v(" "),t("el-form-item",[t("el-button",{staticClass:"security-settings-submit-button",attrs:{loading:e.securitySettingsForm.isPasswordLoading,disabled:e.securitySettingsForm.newPassword.length<8,type:"primary"},on:{click:function(s){return e.updatePassword()}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.submit"))+"\n ")])],1)],1)],1)},[],!1,null,null,null);p.options.__file="SecuritySettingsModal.vue";var g=p.exports,v=t("rIUS"),_=t("WjBP"),m={name:"UsersShow",components:{ModerationDropdown:i.a,RebootButton:v.a,ResetPasswordDialog:_.a,Status:r.a,SecuritySettingsModal:g},data:function(){return{showPrivate:!1,resetPasswordDialogOpen:!1,securitySettingsModalVisible:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.users.loading},statuses:function(){return this.$store.state.userProfile.statuses},statusesLoading:function(){return this.$store.state.userProfile.statusesLoading},user:function(){return this.$store.state.userProfile.user},userProfileLoading:function(){return this.$store.state.userProfile.userProfileLoading},userCredentials:function(){return this.$store.state.userProfile.userCredentials}},mounted:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("FetchUserProfile",{userId:this.$route.params.id,godmode:!1})},methods:{closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},humanizeTag:function(e){return{"mrf_tag:media-force-nsfw":"Force NSFW","mrf_tag:media-strip":"Strip Media","mrf_tag:force-unlisted":"Force Unlisted","mrf_tag:sandbox":"Sandbox","mrf_tag:disable-remote-subscription":"Disable remote subscription","mrf_tag:disable-any-subscription":"Disable any subscription"}[e]},onTogglePrivate:function(){this.$store.dispatch("FetchUserProfile",{userId:this.$route.params.id,godmode:this.showPrivate})},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(e,s){return e[s]}}},f=(t("9IXO"),Object(d.a)(m,function(){var e=this,s=e.$createElement,t=e._self._c||s;return e.userProfileLoading?e._e():t("main",[e.isDesktop||e.isTablet?t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[e.propertyExists(e.user,"avatar")?t("el-avatar",{attrs:{src:e.user.avatar,size:"large"}}):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("h1",[e._v(e._s(e.user.nickname))]):t("h1",{staticClass:"invalid"},[e._v("("+e._s(e.$t("users.invalidNickname"))+")")]),e._v(" "),e.propertyExists(e.user,"url")?t("a",{attrs:{href:e.user.url,target:"_blank"}},[t("i",{staticClass:"el-icon-top-right",attrs:{title:e.$t("userProfile.openAccountInInstance")}})]):e._e()],1),e._v(" "),t("div",{staticClass:"left-header-container"},[e.propertyExists(e.user,"nickname")?t("moderation-dropdown",{attrs:{user:e.user,page:"userPage"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):e._e(),e._v(" "),t("reboot-button")],1)]):e._e(),e._v(" "),e.isMobile?t("div",{staticClass:"user-page-header-container"},[t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[e.propertyExists(e.user,"avatar")?t("el-avatar",{attrs:{src:e.user.avatar,size:"large"}}):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("h1",[e._v(e._s(e.user.nickname))]):t("h1",{staticClass:"invalid"},[e._v("("+e._s(e.$t("users.invalidNickname"))+")")])],1),e._v(" "),t("reboot-button")],1),e._v(" "),e.propertyExists(e.user,"nickname")?t("moderation-dropdown",{attrs:{user:e.user,page:"userPage"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):e._e()],1):e._e(),e._v(" "),t("reset-password-dialog",{attrs:{"reset-password-dialog-open":e.resetPasswordDialogOpen},on:{"close-reset-token-dialog":e.closeResetPasswordDialog}}),e._v(" "),t("div",{staticClass:"user-profile-container"},[t("el-card",{staticClass:"user-profile-card"},[t("div",{staticClass:"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium"},[e.propertyExists(e.user,"nickname")?e._e():t("el-tag",{staticClass:"invalid-user-tag",attrs:{type:"info"}},[e._v("\n "+e._s(e.$t("users.invalidAccount"))+"\n ")]),e._v(" "),t("table",{staticClass:"user-profile-table"},[t("tbody",[t("tr",{staticClass:"el-table__row"},[t("td",{staticClass:"name-col"},[e._v("ID")]),e._v(" "),t("td",[e._v("\n "+e._s(e.user.id)+"\n ")])]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.actorType")))]),e._v(" "),t("td",[t("el-tag",{attrs:{type:"Person"===e.userCredentials.actor_type?"success":"warning"}},[e._v("\n "+e._s(e.userCredentials.actor_type)+"\n ")])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.tags")))]),e._v(" "),t("td",[0!==e.user.tags.length&&e.propertyExists(e.user,"tags")?e._l(e.user.tags,function(s){return t("el-tag",{key:s,staticClass:"user-profile-tag"},[e._v(e._s(e.humanizeTag(s)))])}):t("span",[e._v("—")])],2)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.roles")))]),e._v(" "),t("td",[e.user.roles.admin?t("el-tag",{staticClass:"user-profile-tag"},[e._v("\n "+e._s(e.$t("users.admin"))+"\n ")]):e._e(),e._v(" "),e.user.roles.moderator?t("el-tag",{staticClass:"user-profile-tag"},[e._v("\n "+e._s(e.$t("users.moderator"))+"\n ")]):e._e(),e._v(" "),e.propertyExists(e.user,"roles")&&(e.user.roles.moderator||e.user.roles.admin)?e._e():t("span",[e._v("—")])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.accountType")))]),e._v(" "),t("td",[e.user.local?t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.local")))]):e._e(),e._v(" "),e.user.local?e._e():t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.external")))])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.status")))]),e._v(" "),t("td",[e.user.approval_pending?t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.pending")))]):e._e(),e._v(" "),!e.user.deactivated&!e.user.approval_pending?t("el-tag",{attrs:{type:"success"}},[e._v(e._s(e.$t("userProfile.active")))]):e._e(),e._v(" "),e.user.deactivated?t("el-tag",{attrs:{type:"danger"}},[e._v(e._s(e.$t("userProfile.deactivated")))]):e._e()],1)])])]),e._v(" "),e.user.registration_reason?t("div",[t("div",{staticClass:"reason-label"},[e._v(e._s(e.$t("userProfile.reason")))]),e._v('\n "'+e._s(e.user.registration_reason)+'"\n ')]):e._e()],1),e._v(" "),e.propertyExists(e.user,"nickname")?t("el-button",{staticClass:"security-setting-button",attrs:{icon:"el-icon-lock"},on:{click:function(s){e.securitySettingsModalVisible=!0}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.securitySettings"))+"\n ")]):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("SecuritySettingsModal",{attrs:{user:e.user,visible:e.securitySettingsModalVisible},on:{close:function(s){e.securitySettingsModalVisible=!1}}}):e._e()],1),e._v(" "),t("div",{staticClass:"recent-statuses-container"},[t("h2",{staticClass:"recent-statuses"},[e._v(e._s(e.$t("userProfile.recentStatuses")))]),e._v(" "),t("el-checkbox",{staticClass:"show-private-statuses",on:{change:e.onTogglePrivate},model:{value:e.showPrivate,callback:function(s){e.showPrivate=s},expression:"showPrivate"}},[e._v("\n "+e._s(e.$t("statuses.showPrivateStatuses"))+"\n ")]),e._v(" "),e.statusesLoading?e._e():t("el-timeline",{staticClass:"statuses"},[e._l(e.statuses,function(s){return t("el-timeline-item",{key:s.id},[t("status",{attrs:{status:s,account:s.account,"show-checkbox":!1,"user-id":e.user.id,godmode:e.showPrivate}})],1)}),e._v(" "),0===e.statuses.length?t("p",{staticClass:"no-statuses"},[e._v(e._s(e.$t("userProfile.noStatuses")))]):e._e()],2)],1)],1)],1)},[],!1,null,null,null));f.options.__file="show.vue";s.default=f.exports},"53Av":function(e,s,t){"use strict";var r=t("lOBV");t.n(r).a},"9IXO":function(e,s,t){"use strict";var r=t("msq4");t.n(r).a},RnhZ:function(e,s,t){var r={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function i(e){var s=a(e);return t(s)}function a(e){if(!t.o(r,e)){var s=new Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}return r[e]}i.keys=function(){return Object.keys(r)},i.resolve=a,e.exports=i,i.id="RnhZ"},WjBP:function(e,s,t){"use strict";var r={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},i=t("KHd+"),a=Object(i.a)(r,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{visible:e.dialogOpen,title:e.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:e.closeResetPasswordDialog}},[t("div",[t("p",{staticClass:"password-reset-token"},[e._v(e._s(e.$t("users.passwordResetTokenGenerated"))+" "+e._s(e.passwordResetToken))]),e._v(" "),t("p",[e._v(e._s(e.$t("users.linkToResetPassword"))+"\n "),t("a",{staticClass:"reset-password-link",attrs:{href:e.passwordResetLink,target:"_blank"}},[e._v(e._s(e.passwordResetLink))])])])])},[],!1,null,null,null);a.options.__file="ResetPasswordDialog.vue";s.a=a.exports},lOBV:function(e,s,t){},msq4:function(e,s,t){},tPM3:function(e,s,t){"use strict";var r={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(e){this.$store.dispatch("UpdateActorType",{user:this.user,type:e,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device},tagPolicyEnabled:function(){return this.$store.state.users.mrfPolicies.includes("Pleroma.Web.ActivityPub.MRF.TagPolicy")}},methods:{disableMfa:function(e){this.$store.dispatch("DisableMfa",e)},enableTagPolicy:function(){var e=this;this.$confirm(this.$t("users.confirmEnablingTagPolicy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$message({type:"success",message:e.$t("users.enableTagPolicySuccessMessage")}),e.$store.dispatch("EnableTagPolicy")}).catch(function(){e.$message({type:"info",message:"Canceled"})})},getPasswordResetToken:function(e){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",e)},handleConfirmationResend:function(e){this.$store.dispatch("ResendConfirmationEmail",[e])},handleDeletion:function(e){var s=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(e){this.$store.dispatch("ApproveUsersAccount",{users:[e],_userId:e.id,_statusId:this.statusId})},handleAccountRejection:function(e){var s=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){s.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(e){this.$store.dispatch("ConfirmUsersEmail",{users:[e],_userId:e.id,_statusId:this.statusId})},requirePasswordReset:function(e){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[e]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(e){var s=e.local,t=e.id;return s&&this.showDeactivatedButton(t)},showDeactivatedButton:function(e){return this.$store.state.user.id!==e},toggleActivation:function(e){e.deactivated?this.$store.dispatch("ActivateUsers",{users:[e],_userId:e.id}):this.$store.dispatch("DeactivateUsers",{users:[e],_userId:e.id})},toggleTag:function(e,s){e.tags.includes(s)?this.$store.dispatch("RemoveTag",{users:[e],tag:s,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[e],tag:s,_userId:e.id,_statusId:this.statusId})},toggleUserRight:function(e,s){e.roles[s]?this.$store.dispatch("DeleteRight",{users:[e],right:s,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[e],right:s,_userId:e.id,_statusId:this.statusId})}}},i=(t("53Av"),t("KHd+")),a=Object(i.a)(r,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(e){e.stopPropagation()}}},[t("div",["users"===e.page?t("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?t("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()]):e._e(),e._v(" "),"userPage"===e.page||"statusPage"===e.page?t("el-button",{staticClass:"moderate-user-button"},[t("span",{staticClass:"moderate-user-button-container"},[t("span",[t("i",{staticClass:"el-icon-edit"}),e._v("\n "+e._s(e.$t("users.moderateUser"))+"\n ")]),e._v(" "),t("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):e._e()],1),e._v(" "),t("el-dropdown-menu",{staticClass:"moderation-dropdown-menu",attrs:{slot:"dropdown"},slot:"dropdown"},[t("el-dropdown-item",{staticClass:"actor-type-dropdown"},[t("el-select",{staticClass:"actor-type-select",attrs:{placeholder:e.$t("userProfile.actorType")},model:{value:e.actorType,callback:function(s){e.actorType=s},expression:"actorType"}},[t("el-option",{attrs:{label:e.$t("users.service"),value:"Service"}}),e._v(" "),t("el-option",{attrs:{label:e.$t("users.person"),value:"Person"}})],1)],1),e._v(" "),e.showAdminAction(e.user)?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.toggleUserRight(e.user,"admin")}}},[e._v("\n "+e._s(e.user.roles.admin?e.$t("users.revokeAdmin"):e.$t("users.grantAdmin"))+"\n ")]):e._e(),e._v(" "),e.showAdminAction(e.user)?t("el-dropdown-item",{nativeOn:{click:function(s){return e.toggleUserRight(e.user,"moderator")}}},[e._v("\n "+e._s(e.user.roles.moderator?e.$t("users.revokeModerator"):e.$t("users.grantModerator"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?t("el-dropdown-item",{attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(s){return e.toggleActivation(e.user)}}},[e._v("\n "+e._s(e.user.deactivated?e.$t("users.activateAccount"):e.$t("users.deactivateAccount"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleDeletion(e.user)}}},[e._v("\n "+e._s(e.$t("users.deleteAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.handleAccountApproval(e.user)}}},[e._v("\n "+e._s(e.$t("users.approveAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleAccountRejection(e.user)}}},[e._v("\n "+e._s(e.$t("users.rejectAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.handleEmailConfirmation(e.user)}}},[e._v("\n "+e._s(e.$t("users.confirmAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleConfirmationResend(e.user)}}},[e._v("\n "+e._s(e.$t("users.resendConfirmation"))+"\n ")]):e._e(),e._v(" "),e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:media-force-nsfw")}}},[e._v("\n "+e._s(e.$t("users.forceNsfw"))+"\n "),e.user.tags.includes("mrf_tag:media-force-nsfw")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:media-strip")}}},[e._v("\n "+e._s(e.$t("users.stripMedia"))+"\n "),e.user.tags.includes("mrf_tag:media-strip")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:force-unlisted")}}},[e._v("\n "+e._s(e.$t("users.forceUnlisted"))+"\n "),e.user.tags.includes("mrf_tag:force-unlisted")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:sandbox")}}},[e._v("\n "+e._s(e.$t("users.sandbox"))+"\n "),e.user.tags.includes("mrf_tag:sandbox")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local&&e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:disable-remote-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableRemoteSubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-remote-subscription")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local&&e.tagPolicyEnabled?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:disable-any-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableAnySubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-any-subscription")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.tagPolicyEnabled?e._e():t("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""},nativeOn:{click:function(s){return e.enableTagPolicy(s)}}},[e._v("\n "+e._s(e.$t("users.enableTagPolicy"))+"\n ")]),e._v(" "),e.user.local?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.getPasswordResetToken(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.getPasswordResetToken"))+"\n ")]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{nativeOn:{click:function(s){return e.requirePasswordReset(e.user)}}},[e._v("\n "+e._s(e.$t("users.requirePasswordReset"))+"\n ")]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{nativeOn:{click:function(s){return e.disableMfa(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.disableMfa"))+"\n ")]):e._e()],1)],1)},[],!1,null,null,null);a.options.__file="ModerationDropdown.vue";s.a=a.exports}}]); -//# sourceMappingURL=chunk-521f.748b331d.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-521f.748b331d.js.map b/priv/static/adminfe/static/js/chunk-521f.748b331d.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/users/components/SecuritySettingsModal.vue?5147","webpack:///./src/views/users/show.vue?816e","webpack:///./src/views/users/components/SecuritySettingsModal.vue?49db","webpack:///src/views/users/components/SecuritySettingsModal.vue","webpack:///./src/views/users/components/SecuritySettingsModal.vue","webpack:///./src/views/users/components/SecuritySettingsModal.vue?dd3f","webpack:///./src/views/users/show.vue?ac8b","webpack:///src/views/users/show.vue","webpack:///./src/views/users/show.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./src/views/users/show.vue?aed3","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?a26f","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SecuritySettingsModal_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_SecuritySettingsModalvue_type_script_lang_js_","name","props","visible","type","Boolean","default","user","Object","data","securitySettingsForm","newEmail","newPassword","isEmailLoading","isPasswordLoading","computed","isDesktop","this","$store","state","app","device","getLabelWidth","userCredentials","userProfile","mounted","_mounted","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","dispatch","nickname","email","stop","apply","arguments","methods","updateEmail","_this","_callee2","credentials","_context2","element_ui_common","message","$t","duration","updatePassword","_this2","_callee3","_context3","password","close","$emit","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","before-close","title","model","label-width","label","placeholder","value","callback","$$v","$set","expression","_v","loading","disabled","on","click","$event","_s","minLength","closable","show-icon","length","options","__file","SecuritySettingsModal","users_showvue_type_script_lang_js_","components","ModerationDropdown","RebootButton","ResetPasswordDialog","Status","showPrivate","resetPasswordDialogOpen","securitySettingsModalVisible","isMobile","isTablet","users","statuses","statusesLoading","userProfileLoading","userId","$route","params","id","godmode","closeResetPasswordDialog","humanizeTag","tag","mrf_tag:media-force-nsfw","mrf_tag:media-strip","mrf_tag:force-unlisted","mrf_tag:sandbox","mrf_tag:disable-remote-subscription","mrf_tag:disable-any-subscription","onTogglePrivate","openResetPasswordDialog","propertyExists","account","property","show_component","_e","src","avatar","size","href","url","target","page","open-reset-token-dialog","reset-password-dialog-open","close-reset-token-dialog","actor_type","tags","_l","key","roles","moderator","admin","local","deactivated","approval_pending","registration_reason","icon","change","status","show-checkbox","user-id","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_show_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve","module","exports","components_ResetPasswordDialogvue_type_script_lang_js_","dialogOpen","passwordResetLink","passwordResetToken","link","token","directives","rawName","custom-class","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","get","set","_userId","_statusId","tagPolicyEnabled","mrfPolicies","includes","disableMfa","enableTagPolicy","$confirm","confirmButtonText","cancelButtonText","then","$message","catch","getPasswordResetToken","handleConfirmationResend","handleDeletion","handleAccountApproval","handleAccountRejection","_this3","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","showDeactivatedButton","toggleActivation","toggleTag","toggleUserRight","right","hide-on-click","trigger","placement","nativeOn","stopPropagation","slot","divided","confirmation_pending","class","active-tag"],"mappings":"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,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAA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","file":"static/js/chunk-521f.748b331d.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.userProfileLoading)?_c('main',[(_vm.isDesktop || _vm.isTablet)?_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'url'))?_c('a',{attrs:{\"href\":_vm.user.url,\"target\":\"_blank\"}},[_c('i',{staticClass:\"el-icon-top-right\",attrs:{\"title\":_vm.$t('userProfile.openAccountInInstance')}})]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"left-header-container\"},[(_vm.propertyExists(_vm.user, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'userPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_vm._e(),_vm._v(\" \"),_c('reboot-button')],1)]):_vm._e(),_vm._v(\" \"),(_vm.isMobile)?_c('div',{staticClass:\"user-page-header-container\"},[_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])],1),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'userPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),_c('div',{staticClass:\"user-profile-container\"},[_c('el-card',{staticClass:\"user-profile-card\"},[_c('div',{staticClass:\"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium\"},[(!_vm.propertyExists(_vm.user, 'nickname'))?_c('el-tag',{staticClass:\"invalid-user-tag\",attrs:{\"type\":\"info\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.invalidAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"user-profile-table\"},[_c('tbody',[_c('tr',{staticClass:\"el-table__row\"},[_c('td',{staticClass:\"name-col\"},[_vm._v(\"ID\")]),_vm._v(\" \"),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.user.id)+\"\\n \")])]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.actorType')))]),_vm._v(\" \"),_c('td',[_c('el-tag',{attrs:{\"type\":_vm.userCredentials.actor_type === 'Person' ? 'success' : 'warning'}},[_vm._v(\"\\n \"+_vm._s(_vm.userCredentials.actor_type)+\"\\n \")])],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.tags')))]),_vm._v(\" \"),_c('td',[(_vm.user.tags.length === 0 || !_vm.propertyExists(_vm.user, 'tags'))?_c('span',[_vm._v(\"—\")]):_vm._l((_vm.user.tags),function(tag){return _c('el-tag',{key:tag,staticClass:\"user-profile-tag\"},[_vm._v(_vm._s(_vm.humanizeTag(tag)))])})],2)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.roles')))]),_vm._v(\" \"),_c('td',[(_vm.user.roles.admin)?_c('el-tag',{staticClass:\"user-profile-tag\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.admin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.roles.moderator)?_c('el-tag',{staticClass:\"user-profile-tag\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.propertyExists(_vm.user, 'roles') || (!_vm.user.roles.moderator && !_vm.user.roles.admin))?_c('span',[_vm._v(\"—\")]):_vm._e()],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.accountType')))]),_vm._v(\" \"),_c('td',[(_vm.user.local)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.local')))]):_vm._e(),_vm._v(\" \"),(!_vm.user.local)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.external')))]):_vm._e()],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.status')))]),_vm._v(\" \"),_c('td',[(_vm.user.approval_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.pending')))]):_vm._e(),_vm._v(\" \"),(!_vm.user.deactivated & !_vm.user.approval_pending)?_c('el-tag',{attrs:{\"type\":\"success\"}},[_vm._v(_vm._s(_vm.$t('userProfile.active')))]):_vm._e(),_vm._v(\" \"),(_vm.user.deactivated)?_c('el-tag',{attrs:{\"type\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('userProfile.deactivated')))]):_vm._e()],1)])])]),_vm._v(\" \"),(_vm.user.registration_reason)?_c('div',[_c('div',{staticClass:\"reason-label\"},[_vm._v(_vm._s(_vm.$t('userProfile.reason')))]),_vm._v(\"\\n \\\"\"+_vm._s(_vm.user.registration_reason)+\"\\\"\\n \")]):_vm._e()],1),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('el-button',{staticClass:\"security-setting-button\",attrs:{\"icon\":\"el-icon-lock\"},on:{\"click\":function($event){_vm.securitySettingsModalVisible = true}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.securitySettings'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('SecuritySettingsModal',{attrs:{\"user\":_vm.user,\"visible\":_vm.securitySettingsModalVisible},on:{\"close\":function($event){_vm.securitySettingsModalVisible = false}}}):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"recent-statuses-container\"},[_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.recentStatuses')))]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",on:{\"change\":_vm.onTogglePrivate},model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")]),_vm._v(\" \"),(!_vm.statusesLoading)?_c('el-timeline',{staticClass:\"statuses\"},[_vm._l((_vm.statuses),function(status){return _c('el-timeline-item',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":false,\"user-id\":_vm.user.id,\"godmode\":_vm.showPrivate}})],1)}),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e()],2):_vm._e()],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n :before-close=\"close\"\n :title=\"$t('userProfile.securitySettings.securitySettings')\"\n :visible=\"visible\"\n class=\"security-settings-modal\">\n <el-form :model=\"securitySettingsForm\" :label-width=\"getLabelWidth\">\n <el-form-item :label=\"$t('userProfile.securitySettings.email')\">\n <el-input v-model=\"securitySettingsForm.newEmail\" :placeholder=\"$t('userProfile.securitySettings.inputNewEmail')\"/>\n </el-form-item>\n <el-form-item>\n <el-button\n :loading=\"securitySettingsForm.isEmailLoading\"\n :disabled=\"!securitySettingsForm.newEmail || securitySettingsForm.newEmail === userCredentials.email\"\n type=\"primary\"\n class=\"security-settings-submit-button\"\n @click=\"updateEmail()\">\n {{ $t('userProfile.securitySettings.submit') }}\n </el-button>\n </el-form-item>\n <el-form-item :label=\"$t('userProfile.securitySettings.password')\" class=\"password-input\">\n <el-input v-model=\"securitySettingsForm.newPassword\" :placeholder=\"$t('userProfile.securitySettings.inputNewPassword')\"/>\n <small class=\"form-text\">\n {{ $t('userProfile.securitySettings.passwordLengthNotice', { minLength: 8 }) }}\n </small>\n </el-form-item>\n <el-alert\n :closable=\"false\"\n type=\"warning\"\n show-icon\n class=\"password-alert\">\n <p>{{ $t('userProfile.securitySettings.passwordChangeWarning1') }}</p>\n <p>{{ $t('userProfile.securitySettings.passwordChangeWarning2') }}</p>\n </el-alert>\n <el-form-item>\n <el-button\n :loading=\"securitySettingsForm.isPasswordLoading\"\n :disabled=\"securitySettingsForm.newPassword.length < 8\"\n type=\"primary\"\n class=\"security-settings-submit-button\"\n @click=\"updatePassword()\">\n {{ $t('userProfile.securitySettings.submit') }}\n </el-button>\n </el-form-item>\n </el-form>\n </el-dialog>\n</template>\n\n<script>\nimport { Message } from 'element-ui'\n\nexport default {\n name: 'SecuritySettingsModal',\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n user: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n data() {\n return {\n securitySettingsForm: {\n newEmail: '',\n newPassword: '',\n isEmailLoading: false,\n isPasswordLoading: false\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n getLabelWidth() {\n return this.isDesktop ? '120px' : '85px'\n },\n userCredentials() {\n return this.$store.state.userProfile.userCredentials\n }\n },\n mounted: async function() {\n await this.$store.dispatch('FetchUserCredentials', { nickname: this.user.nickname })\n this.securitySettingsForm.newEmail = this.userCredentials.email\n },\n methods: {\n async updateEmail() {\n const credentials = { email: this.securitySettingsForm.newEmail }\n this.securitySettingsForm.isEmailLoading = true\n await this.$store.dispatch('UpdateUserCredentials', { nickname: this.user.nickname, credentials })\n this.securitySettingsForm.isEmailLoading = false\n Message({\n message: this.$t('userProfile.securitySettings.emailUpdated'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n async updatePassword() {\n const credentials = { password: this.securitySettingsForm.newPassword }\n this.securitySettingsForm.isPasswordLoading = true\n await this.$store.dispatch('UpdateUserCredentials', { nickname: this.user.nickname, credentials })\n this.securitySettingsForm.isPasswordLoading = false\n this.securitySettingsForm.newPassword = ''\n Message({\n message: this.$t('userProfile.securitySettings.passwordUpdated'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n close() {\n this.$emit('close', true)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.security-settings-container {\n display: flex;\n label {\n width: 15%;\n height: 36px;\n }\n}\n.security-settings-modal {\n .el-dialog__body {\n padding-top: 10px;\n }\n .el-form-item {\n margin-bottom: 15px;\n }\n .password-alert {\n margin-bottom: 15px;\n }\n .password-input {\n margin-bottom: 0;\n }\n}\n.security-settings-submit-button {\n float: right;\n}\n\n@media all and (max-width: 800px) {\n .security-settings-modal {\n .el-dialog {\n width: 90%;\n }\n }\n}\n\n.security-settings-modal {\n .el-alert .el-alert__description {\n word-break: break-word;\n font-size: 1em;\n }\n\n .form-text {\n display: block;\n margin-top: .25rem;\n color: #909399;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./SecuritySettingsModal.vue?vue&type=template&id=7fb08478&\"\nimport script from \"./SecuritySettingsModal.vue?vue&type=script&lang=js&\"\nexport * from \"./SecuritySettingsModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SecuritySettingsModal.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{staticClass:\"security-settings-modal\",attrs:{\"before-close\":_vm.close,\"title\":_vm.$t('userProfile.securitySettings.securitySettings'),\"visible\":_vm.visible}},[_c('el-form',{attrs:{\"model\":_vm.securitySettingsForm,\"label-width\":_vm.getLabelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('userProfile.securitySettings.email')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('userProfile.securitySettings.inputNewEmail')},model:{value:(_vm.securitySettingsForm.newEmail),callback:function ($$v) {_vm.$set(_vm.securitySettingsForm, \"newEmail\", $$v)},expression:\"securitySettingsForm.newEmail\"}})],1),_vm._v(\" \"),_c('el-form-item',[_c('el-button',{staticClass:\"security-settings-submit-button\",attrs:{\"loading\":_vm.securitySettingsForm.isEmailLoading,\"disabled\":!_vm.securitySettingsForm.newEmail || _vm.securitySettingsForm.newEmail === _vm.userCredentials.email,\"type\":\"primary\"},on:{\"click\":function($event){return _vm.updateEmail()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.submit'))+\"\\n \")])],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"password-input\",attrs:{\"label\":_vm.$t('userProfile.securitySettings.password')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('userProfile.securitySettings.inputNewPassword')},model:{value:(_vm.securitySettingsForm.newPassword),callback:function ($$v) {_vm.$set(_vm.securitySettingsForm, \"newPassword\", $$v)},expression:\"securitySettingsForm.newPassword\"}}),_vm._v(\" \"),_c('small',{staticClass:\"form-text\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.passwordLengthNotice', { minLength: 8 }))+\"\\n \")])],1),_vm._v(\" \"),_c('el-alert',{staticClass:\"password-alert\",attrs:{\"closable\":false,\"type\":\"warning\",\"show-icon\":\"\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('userProfile.securitySettings.passwordChangeWarning1')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('userProfile.securitySettings.passwordChangeWarning2')))])]),_vm._v(\" \"),_c('el-form-item',[_c('el-button',{staticClass:\"security-settings-submit-button\",attrs:{\"loading\":_vm.securitySettingsForm.isPasswordLoading,\"disabled\":_vm.securitySettingsForm.newPassword.length < 8,\"type\":\"primary\"},on:{\"click\":function($event){return _vm.updatePassword()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.submit'))+\"\\n \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"","<template>\n <main v-if=\"!userProfileLoading\">\n <header v-if=\"isDesktop || isTablet\" class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n <a v-if=\"propertyExists(user, 'url')\" :href=\"user.url\" target=\"_blank\">\n <i :title=\"$t('userProfile.openAccountInInstance')\" class=\"el-icon-top-right\"/>\n </a>\n </div>\n <div class=\"left-header-container\">\n <moderation-dropdown\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :page=\"'userPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <reboot-button/>\n </div>\n </header>\n <div v-if=\"isMobile\" class=\"user-page-header-container\">\n <header class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n </div>\n <reboot-button/>\n </header>\n <moderation-dropdown\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :page=\"'userPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n </div>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div class=\"user-profile-container\">\n <el-card class=\"user-profile-card\">\n <div class=\"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium\">\n <el-tag v-if=\"!propertyExists(user, 'nickname')\" type=\"info\" class=\"invalid-user-tag\">\n {{ $t('users.invalidAccount') }}\n </el-tag>\n <table class=\"user-profile-table\">\n <tbody>\n <tr class=\"el-table__row\">\n <td class=\"name-col\">ID</td>\n <td>\n {{ user.id }}\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.actorType') }}</td>\n <td>\n <el-tag\n :type=\"userCredentials.actor_type === 'Person' ? 'success' : 'warning'\">\n {{ userCredentials.actor_type }}\n </el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.tags') }}</td>\n <td>\n <span v-if=\"user.tags.length === 0 || !propertyExists(user, 'tags')\">—</span>\n <el-tag v-for=\"tag in user.tags\" v-else :key=\"tag\" class=\"user-profile-tag\">{{ humanizeTag(tag) }}</el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.roles') }}</td>\n <td>\n <el-tag v-if=\"user.roles.admin\" class=\"user-profile-tag\">\n {{ $t('users.admin') }}\n </el-tag>\n <el-tag v-if=\"user.roles.moderator\" class=\"user-profile-tag\">\n {{ $t('users.moderator') }}\n </el-tag>\n <span v-if=\"!propertyExists(user, 'roles') || (!user.roles.moderator && !user.roles.admin)\">—</span>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.accountType') }}</td>\n <td>\n <el-tag v-if=\"user.local\" type=\"info\">{{ $t('userProfile.local') }}</el-tag>\n <el-tag v-if=\"!user.local\" type=\"info\">{{ $t('userProfile.external') }}</el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.status') }}</td>\n <td>\n <el-tag v-if=\"user.approval_pending\" type=\"info\">{{ $t('userProfile.pending') }}</el-tag>\n <el-tag v-if=\"!user.deactivated & !user.approval_pending\" type=\"success\">{{ $t('userProfile.active') }}</el-tag>\n <el-tag v-if=\"user.deactivated\" type=\"danger\">{{ $t('userProfile.deactivated') }}</el-tag>\n </td>\n </tr>\n </tbody>\n </table>\n <div v-if=\"user.registration_reason\">\n <div class=\"reason-label\">{{ $t('userProfile.reason') }}</div>\n \"{{ user.registration_reason }}\"\n </div>\n </div>\n <el-button v-if=\"propertyExists(user, 'nickname')\" icon=\"el-icon-lock\" class=\"security-setting-button\" @click=\"securitySettingsModalVisible = true\">\n {{ $t('userProfile.securitySettings.securitySettings') }}\n </el-button>\n <SecuritySettingsModal\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :visible=\"securitySettingsModalVisible\"\n @close=\"securitySettingsModalVisible = false\" />\n </el-card>\n <div class=\"recent-statuses-container\">\n <h2 class=\"recent-statuses\">{{ $t('userProfile.recentStatuses') }}</h2>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\" @change=\"onTogglePrivate\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n <el-timeline v-if=\"!statusesLoading\" class=\"statuses\">\n <el-timeline-item v-for=\"status in statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account\" :show-checkbox=\"false\" :user-id=\"user.id\" :godmode=\"showPrivate\"/>\n </el-timeline-item>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n </el-timeline>\n </div>\n </div>\n </main>\n</template>\n\n<script>\nimport Status from '@/components/Status'\nimport ModerationDropdown from './components/ModerationDropdown'\nimport SecuritySettingsModal from './components/SecuritySettingsModal'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from './components/ResetPasswordDialog'\n\nexport default {\n name: 'UsersShow',\n components: { ModerationDropdown, RebootButton, ResetPasswordDialog, Status, SecuritySettingsModal },\n data() {\n return {\n showPrivate: false,\n resetPasswordDialogOpen: false,\n securitySettingsModalVisible: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.users.loading\n },\n statuses() {\n return this.$store.state.userProfile.statuses\n },\n statusesLoading() {\n return this.$store.state.userProfile.statusesLoading\n },\n user() {\n return this.$store.state.userProfile.user\n },\n userProfileLoading() {\n return this.$store.state.userProfile.userProfileLoading\n },\n userCredentials() {\n return this.$store.state.userProfile.userCredentials\n }\n },\n mounted: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('FetchUserProfile', { userId: this.$route.params.id, godmode: false })\n },\n methods: {\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n humanizeTag(tag) {\n const mapTags = {\n 'mrf_tag:media-force-nsfw': 'Force NSFW',\n 'mrf_tag:media-strip': 'Strip Media',\n 'mrf_tag:force-unlisted': 'Force Unlisted',\n 'mrf_tag:sandbox': 'Sandbox',\n 'mrf_tag:disable-remote-subscription': 'Disable remote subscription',\n 'mrf_tag:disable-any-subscription': 'Disable any subscription'\n }\n return mapTags[tag]\n },\n onTogglePrivate() {\n this.$store.dispatch('FetchUserProfile', { userId: this.$route.params.id, godmode: this.showPrivate })\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\nheader {\n align-items: center;\n display: flex;\n margin: 22px 0;\n padding-left: 15px;\n h1 {\n margin: 0 0 0 10px;\n }\n}\ntable {\n margin: 10px 0 0 15px;\n .name-col {\n width: 150px;\n }\n}\n.avatar-name-container {\n display: flex;\n align-items: center;\n .el-icon-top-right {\n font-size: 2em;\n line-height: 36px;\n color: #606266;\n }\n}\n.invalid {\n color: gray;\n}\n.el-table--border::after, .el-table--group::after, .el-table::before {\n background-color: transparent;\n}\n.image {\n width: 20%;\n img {\n width: 100%;\n }\n}\n.invalid-user-tag {\n font-size: 14px;\n width: inherit;\n height: auto;\n text-align: center;\n word-wrap: break-word;\n white-space: normal;\n}\n.left-header-container {\n align-items: center;\n display: flex;\n justify-content: space-between;\n}\n.no-statuses {\n margin-left: 28px;\n color: #606266;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.poll ul {\n list-style-type: none;\n padding: 0;\n width: 30%;\n}\n.reboot-button {\n padding: 10px;\n margin-left: 10px;\n}\n.recent-statuses-container {\n display: flex;\n flex-direction: column;\n width: 67%;\n}\n.recent-statuses-header {\n margin-top: 10px;\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.security-setting-button {\n margin-top: 20px;\n width: 100%;\n}\n.statuses {\n padding: 0 20px 0 0;\n}\n.show-private {\n width: 200px;\n text-align: left;\n line-height: 67px;\n margin-right: 20px;\n}\n.show-private-statuses {\n margin-left: 28px;\n margin-bottom: 20px;\n}\n.recent-statuses {\n margin-left: 28px;\n}\n.user-page-header {\n display: flex;\n justify-content: space-between;\n margin: 22px 15px 22px 20px;\n padding: 0;\n align-items: center;\n h1 {\n display: inline\n }\n}\n.user-profile-card {\n margin: 0 20px;\n width: 30%;\n min-width: 300px;\n height: fit-content;\n}\n.user-profile-container {\n display: flex;\n}\n.user-profile-table {\n margin: 0;\n width: inherit;\n}\n.user-profile-tag {\n margin: 0 4px 4px 0;\n}\n.reason-label {\n color: #878d99;\n font-weight: bold;\n margin: 5px 0;\n}\n\n@media only screen and (max-width:480px) {\n .avatar-name-container {\n margin-bottom: 10px;\n }\n .el-timeline-item__wrapper {\n padding-left: 18px;\n }\n .password-reset-token-dialog {\n width: 85%\n }\n .recent-statuses {\n margin: 20px 10px 15px 10px;\n }\n .recent-statuses-container {\n width: 100%;\n margin: 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 10px;\n }\n .status-container {\n margin: 0 10px;\n }\n .statuses {\n padding-right: 10px;\n margin-left: 8px;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 15px 10px;\n }\n .user-page-header-container {\n .el-dropdown {\n width: 95%;\n margin: 0 15px 15px 10px;\n }\n }\n .user-profile-card {\n margin: 0 10px;\n width: 95%;\n td {\n width: 80px;\n }\n }\n .user-profile-container {\n flex-direction: column;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .recent-statuses {\n margin: 20px 10px 15px 0;\n }\n .recent-statuses-container {\n width: 97%;\n margin: 0 20px;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 20px 20px;\n }\n .user-profile-card {\n margin: 0 20px;\n width: fit-content;\n }\n .user-profile-container {\n flex-direction: column;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./show.vue?vue&type=template&id=ab25eeb8&\"\nimport script from \"./show.vue?vue&type=script&lang=js&\"\nexport * from \"./show.vue?vue&type=script&lang=js&\"\nimport style0 from \"./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"show.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{staticClass:\"moderation-dropdown-menu\",attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(!_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.enableTagPolicy($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.enableTagPolicy'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\" class=\"moderation-dropdown-menu\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && tagPolicyEnabled\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"!tagPolicyEnabled\"\n divided\n class=\"no-hover\"\n @click.native=\"enableTagPolicy\">\n {{ $t('users.enableTagPolicy') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n tagPolicyEnabled() {\n return this.$store.state.users.mrfPolicies.includes('Pleroma.Web.ActivityPub.MRF.TagPolicy')\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n enableTagPolicy() {\n this.$confirm(\n this.$t('users.confirmEnablingTagPolicy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('users.enableTagPolicySuccessMessage')\n })\n this.$store.dispatch('EnableTagPolicy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n .moderation-dropdown-menu {\n width: 350px;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n .moderation-dropdown-menu {\n width: auto;\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=346bdee8&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-546f.81668ba7.js b/priv/static/adminfe/static/js/chunk-546f.81668ba7.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-546f"],{"26YS":function(e,t,a){"use strict";a.r(t);var o=a("o0o1"),s=a.n(o),i=a("yXPU"),c=a.n(i),n=a("cDf5"),l=a.n(n),r=a("QILm"),m=a.n(r),p=a("mm8V"),u={props:{host:{type:String,required:!0},packName:{type:String,required:!0},shortcode:{type:String,required:!0},file:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{newShortcode:null,newFile:null,copyToLocalPackName:null,copyPopoverVisible:!1,copyToShortcode:"",copyToFilename:""}},computed:{emojiName:{get:function(){return null!==this.newShortcode?this.newShortcode:this.shortcode},set:function(e){this.newShortcode=e}},emojiFile:{get:function(){return null!==this.newFile?this.newFile:this.file},set:function(e){this.newFile=e}},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},localPacks:function(){return this.$store.state.emojiPacks.localPacks},remoteInstance:function(){return this.$store.state.emojiPacks.remoteInstance}},methods:{update:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.prev=0,e.$store.dispatch("UpdateEmojiFile",{packName:e.packName,shortcode:e.shortcode,newShortcode:e.emojiName,newFilename:e.emojiFile,force:!0}),t.next=7;break;case 4:return t.prev=4,t.t0=t.catch(0),t.abrupt("return");case 7:e.newShortcode=null,e.newFile=null,e.$store.dispatch("ReloadEmoji");case 10:case"end":return t.stop()}},t,null,[[0,4]])}))()},remove:function(){var e=this;this.$confirm("This will delete the emoji, are you sure?","Warning",{confirmButtonText:"Yes, delete the emoji",cancelButtonText:"No, leave it be",type:"warning"}).then(function(){e.$store.dispatch("DeleteEmojiFile",{packName:e.packName,shortcode:e.shortcode}).then(function(){e.newShortcode=null,e.newFile=null,e.$store.dispatch("ReloadEmoji")})})},copyToLocal:function(){try{this.$store.dispatch("AddNewEmojiFile",{packName:this.copyToLocalPackName,file:this.addressOfEmojiInPack(this.remoteInstance,this.packName,this.file),shortcode:""!==this.copyToShortcode.trim()?this.copyToShortcode.trim():this.shortcode,filename:""!==this.copyToFilename.trim()?this.copyToFilename.trim():this.file})}catch(e){return}this.copyToLocalPackName=null,this.copyToLocalVisible=!1,this.copyToShortcode="",this.copyToFilename="",this.$store.dispatch("ReloadEmoji")},addressOfEmojiInPack:p.b}},d=(a("4ySm"),a("KHd+")),h=Object(d.a)(u,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[e.isLocal?a("div",{class:e.isMobile?"emoji-container-flex":"emoji-container-grid"},[a("img",{staticClass:"emoji-preview-img",attrs:{src:e.addressOfEmojiInPack(e.host,e.packName,e.file)}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{placeholder:e.$t("emoji.shortcode")},model:{value:e.emojiName,callback:function(t){e.emojiName=t},expression:"emojiName"}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{placeholder:e.$t("emoji.file")},model:{value:e.emojiFile,callback:function(t){e.emojiFile=t},expression:"emojiFile"}}),e._v(" "),a("div",{staticClass:"emoji-buttons"},[a("el-button",{attrs:{type:"primary"},on:{click:e.update}},[e._v(e._s(e.$t("emoji.update")))]),e._v(" "),a("el-button",{staticClass:"remove-emoji-button",on:{click:e.remove}},[e._v(e._s(e.$t("emoji.remove")))])],1)],1):e._e(),e._v(" "),e.isLocal?e._e():a("div",{class:e.isMobile?"emoji-container-flex":"remote-emoji-container-grid"},[a("img",{staticClass:"emoji-preview-img",attrs:{src:e.addressOfEmojiInPack(e.remoteInstance,e.packName,e.file)}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{value:e.emojiName,placeholder:e.$t("emoji.shortcode")}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{value:e.emojiFile,placeholder:e.$t("emoji.file")}}),e._v(" "),a("el-popover",{staticClass:"copy-pack-container",attrs:{placement:"left-start","popper-class":"copy-popover"},model:{value:e.copyPopoverVisible,callback:function(t){e.copyPopoverVisible=t},expression:"copyPopoverVisible"}},[a("p",[e._v(e._s(e.$t("emoji.selectLocalPack")))]),e._v(" "),a("el-select",{staticClass:"copy-pack-select",attrs:{placeholder:e.$t("emoji.localPack")},model:{value:e.copyToLocalPackName,callback:function(t){e.copyToLocalPackName=t},expression:"copyToLocalPackName"}},e._l(e.localPacks,function(e,t){return a("el-option",{key:t,attrs:{label:t,value:t}})}),1),e._v(" "),a("p",[e._v(e._s(e.$t("emoji.specifyShortcode")))]),e._v(" "),a("el-input",{attrs:{placeholder:e.$t("emoji.leaveEmptyShortcode")},model:{value:e.copyToShortcode,callback:function(t){e.copyToShortcode=t},expression:"copyToShortcode"}}),e._v(" "),a("p",[e._v(e._s(e.$t("emoji.specifyFilename")))]),e._v(" "),a("el-input",{attrs:{placeholder:e.$t("emoji.leaveEmptyFilename")},model:{value:e.copyToFilename,callback:function(t){e.copyToFilename=t},expression:"copyToFilename"}}),e._v(" "),a("el-button",{staticClass:"copy-to-local-pack-button",attrs:{disabled:!e.copyToLocalPackName,type:"primary"},on:{click:e.copyToLocal}},[e._v(e._s(e.$t("emoji.copy")))]),e._v(" "),a("el-button",{staticClass:"emoji-button",attrs:{slot:"reference",type:"primary"},slot:"reference"},[e._v(e._s(e.$t("emoji.copyToLocalPack")))])],1)],1)])},[],!1,null,null,null);h.options.__file="SingleEmojiEditor.vue";var k=h.exports,f={props:{packName:{type:String,required:!0}},data:function(){return{shortcode:"",imageUploadURL:"",customFileName:""}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device}},methods:{uploadEmoji:function(e){var t=this;return c()(s.a.mark(function a(){var o;return s.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:o=e.file,a.prev=1,t.$store.dispatch("AddNewEmojiFile",{packName:t.packName,file:o||t.imageUploadURL,shortcode:t.shortcode,filename:t.customFileName}),a.next=8;break;case 5:return a.prev=5,a.t0=a.catch(1),a.abrupt("return");case 8:t.shortcode="",t.imageUploadURL="",t.customFileName="",t.$store.dispatch("ReloadEmoji");case 12:case"end":return a.stop()}},a,null,[[1,5]])}))()}}},v=(a("IVv3"),Object(d.a)(f,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-form",{staticClass:"new-emoji-uploader-form",attrs:{"label-position":e.isMobile?"top":"left","label-width":"130px",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.shortcode")}},[a("el-input",{attrs:{placeholder:e.$t("emoji.optional")},model:{value:e.shortcode,callback:function(t){e.shortcode=t},expression:"shortcode"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.customFilename")}},[a("el-input",{attrs:{placeholder:e.$t("emoji.optional")},model:{value:e.customFileName,callback:function(t){e.customFileName=t},expression:"customFileName"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.uploadFile")}},[a("div",{staticClass:"upload-file-url"},[a("el-input",{attrs:{placeholder:e.$t("emoji.url")},model:{value:e.imageUploadURL,callback:function(t){e.imageUploadURL=t},expression:"imageUploadURL"}}),e._v(" "),a("el-button",{staticClass:"upload-button",attrs:{type:"primary"},on:{click:e.uploadEmoji}},[e._v(e._s(e.$t("emoji.upload")))])],1),e._v(" "),a("div",{staticClass:"upload-container"},[a("p",{staticClass:"text"},[e._v("or")]),e._v(" "),a("el-upload",{attrs:{"http-request":e.uploadEmoji,multiple:!1,"show-file-list":!1,action:"add"}},[a("el-button",{attrs:{type:"primary"}},[e._v(e._s(e.$t("emoji.clickToUpload")))])],1)],1)])],1)},[],!1,null,null,null));function b(e){var t=function(e,t){if("object"!==l()(e)||null===e)return e;var a=e[Symbol.toPrimitive];if(void 0!==a){var o=a.call(e,t||"default");if("object"!==l()(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===l()(t)?t:String(t)}v.options.__file="NewEmojiUploader.vue";var j={components:{SingleEmojiEditor:k,NewEmojiUploader:v.exports},props:{name:{type:String,required:!0},pack:{type:Object,required:!0},host:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{showPackContent:[]}},computed:{currentFilesPage:function(){return this.$store.state.emojiPacks.currentLocalFilesPage},currentLocalPacksPage:function(){return this.$store.state.emojiPacks.currentLocalPacksPage},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"90px":(this.isTablet,"155px")},localPackFilesCount:function(){return this.$store.state.emojiPacks.localPackFilesCount},pageSize:function(){return this.$store.state.emojiPacks.filesPageSize},share:{get:function(){return this.pack.pack["share-files"]},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"share-files",value:e})}},homepage:{get:function(){return this.pack.pack.homepage},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"homepage",value:e})}},description:{get:function(){return this.pack.pack.description},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"description",value:e})}},license:{get:function(){return this.pack.pack.license},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"license",value:e})}},fallbackSrc:{get:function(){return this.pack.pack["fallback-src"]},set:function(e){""!==e.trim()?this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:e}):(this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:null}),this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src-sha256",value:null}))}}},methods:{collapse:function(){this.showPackContent=[]},deletePack:function(){var e=this;this.$confirm("This will delete the pack, are you sure?","Warning",{confirmButtonText:"Yes, delete the pack",cancelButtonText:"No, leave it be",type:"warning"}).then(function(){e.$store.dispatch("DeletePack",{name:e.name}).then(function(){return e.$store.dispatch("ReloadEmoji")}).then(function(){var t=e.$store.state.emojiPacks.localPacks,a=e.name,o=(t[a],m()(t,[a].map(b)));0===Object.keys(o).length&&e.currentLocalPacksPage>1?e.$store.dispatch("FetchLocalEmojiPacks",e.currentLocalPacksPage-1):e.$store.dispatch("FetchLocalEmojiPacks",e.currentLocalPacksPage)})}).catch(function(){})},handleChange:function(e,t){e.includes("manageEmoji")&&this.$store.dispatch("FetchLocalSinglePack",{name:t,page:1})},handleFilesPageChange:function(e){this.$store.dispatch("FetchLocalSinglePack",{name:this.name,page:e})},savePackMetadata:function(){this.$store.dispatch("SavePackMetadata",{packName:this.name})}}},P=(a("LE4i"),Object(d.a)(j,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-collapse-item",{staticClass:"has-background",attrs:{title:e.name,name:e.name}},[a("el-form",{staticClass:"emoji-pack-metadata",attrs:{"label-width":e.labelWidth,"label-position":"left",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.sharePack")}},[a("el-switch",{model:{value:e.share,callback:function(t){e.share=t},expression:"share"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.homepage")}},[a("el-input",{model:{value:e.homepage,callback:function(t){e.homepage=t},expression:"homepage"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.description")}},[a("el-input",{attrs:{type:"textarea"},model:{value:e.description,callback:function(t){e.description=t},expression:"description"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.license")}},[a("el-input",{model:{value:e.license,callback:function(t){e.license=t},expression:"license"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrc")}},[a("el-input",{model:{value:e.fallbackSrc,callback:function(t){e.fallbackSrc=t},expression:"fallbackSrc"}})],1),e._v(" "),e.fallbackSrc&&""!==e.fallbackSrc.trim()?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrcSha")}},[e._v("\n "+e._s(e.pack.pack["fallback-src-sha256"])+"\n ")]):e._e()],1),e._v(" "),a("div",{staticClass:"pack-button-container"},[a("div",{staticClass:"save-pack-button-container"},[a("el-button",{staticClass:"save-pack-button",attrs:{type:"primary"},on:{click:e.savePackMetadata}},[e._v(e._s(e.$t("emoji.saveMetadata")))]),e._v(" "),a("el-button",{staticClass:"delete-pack-button",on:{click:e.deletePack}},[e._v(e._s(e.$t("emoji.deletePack")))])],1),e._v(" "),a("div",{staticClass:"download-pack-button-container"},[e.pack.pack["can-download"]?a("el-link",{attrs:{href:"//"+e.host+"//api/pleroma/emoji/packs/archive?name="+e.name,underline:!1,type:"primary",target:"_blank"}},[a("el-button",{staticClass:"download-archive"},[e._v(e._s(e.$t("emoji.downloadPackArchive")))])],1):e._e()],1)]),e._v(" "),a("el-collapse",{staticClass:"contents-collapse",on:{change:function(t){return e.handleChange(t,e.name)}},model:{value:e.showPackContent,callback:function(t){e.showPackContent=t},expression:"showPackContent"}},[e.isLocal?a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.addNewEmoji"),name:"addEmoji"}},[a("new-emoji-uploader",{attrs:{"pack-name":e.name}})],1):e._e(),e._v(" "),a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.manageEmoji"),name:"manageEmoji"}},[e.pack.files&&Object.keys(e.pack.files).length>0?a("div",[a("div",{class:e.isMobile?"emoji-container-flex":"emoji-container-grid"},[a("span",{staticClass:"emoji-preview-img emoji-table-head"},[e._v(e._s(e.$t("emoji.image")))]),e._v(" "),a("span",{staticClass:"emoji-table-head"},[e._v(e._s(e.$t("emoji.shortcode")))]),e._v(" "),a("span",{staticClass:"emoji-table-head"},[e._v(e._s(e.$t("emoji.file")))])]),e._v(" "),e._l(e.pack.files,function(t,o){return a("single-emoji-editor",{key:o,attrs:{host:e.host,"pack-name":e.name,shortcode:o,file:t,"is-local":e.isLocal}})})],2):a("span",{staticClass:"expl"},[e._v(e._s(e.$t("emoji.emptyPack")))]),e._v(" "),a("div",{staticClass:"files-pagination"},[a("el-pagination",{attrs:{total:e.localPackFilesCount,"current-page":e.currentFilesPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handleFilesPageChange}})],1)])],1)],1)},[],!1,null,null,null));P.options.__file="LocalEmojiPack.vue";var g=P.exports,_={components:{SingleEmojiEditor:k},props:{name:{type:String,required:!0},pack:{type:Object,required:!0},host:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{showPackContent:[],downloadSharedAs:""}},computed:{currentFilesPage:function(){return this.$store.state.emojiPacks.currentRemoteFilesPage},currentRemotePacksPage:function(){return this.$store.state.emojiPacks.currentRemotePacksPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"90px":(this.isTablet,"120px")},loadRemotePack:function(){return this.$store.state.emojiPacks.activeTab===this.name},pageSize:function(){return this.$store.state.emojiPacks.filesPageSize},remoteInstanceAddress:function(){return this.$store.state.emojiPacks.remoteInstance},remotePackFilesCount:function(){return this.$store.state.emojiPacks.remotePackFilesCount},share:{get:function(){return this.pack.pack["share-files"]},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"share-files",value:e})}},homepage:{get:function(){return this.pack.pack.homepage},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"homepage",value:e})}},description:{get:function(){return this.pack.pack.description},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"description",value:e})}},license:{get:function(){return this.pack.pack.license},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"license",value:e})}},fallbackSrc:{get:function(){return this.pack.pack["fallback-src"]},set:function(e){""!==e.trim()?this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:e}):(this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:null}),this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src-sha256",value:null}))}}},methods:{downloadFromInstance:function(){var e=this;this.$store.dispatch("DownloadFrom",{instanceAddress:this.remoteInstanceAddress,packName:this.name,as:this.downloadSharedAs}).then(function(){return e.$store.dispatch("ReloadEmoji")}).then(function(){return e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage)})},handleChange:function(e,t){e.includes("manageEmoji")&&this.$store.dispatch("FetchRemoteSinglePack",{name:t,page:1})},handleFilesPageChange:function(e){this.$store.dispatch("FetchRemoteSinglePack",{name:this.name,page:e})}}},$=(a("Zd0x"),Object(d.a)(_,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-collapse-item",{staticClass:"has-background",attrs:{title:e.name,name:e.name}},[e.loadRemotePack?a("div",[a("el-form",{staticClass:"emoji-pack-metadata remote-pack-metadata",attrs:{"label-width":e.labelWidth,"label-position":"left",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.sharePack")}},[a("el-switch",{attrs:{disabled:""},model:{value:e.share,callback:function(t){e.share=t},expression:"share"}})],1),e._v(" "),e.homepage?a("el-form-item",{attrs:{label:e.$t("emoji.homepage")}},[a("span",[e._v(e._s(e.homepage))])]):e._e(),e._v(" "),e.description?a("el-form-item",{attrs:{label:e.$t("emoji.description")}},[a("span",[e._v(e._s(e.description))])]):e._e(),e._v(" "),e.license?a("el-form-item",{attrs:{label:e.$t("emoji.license")}},[a("span",[e._v(e._s(e.license))])]):e._e(),e._v(" "),e.fallbackSrc?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrc")}},[a("span",[e._v(e._s(e.fallbackSrc))])]):e._e(),e._v(" "),e.fallbackSrc&&""!==e.fallbackSrc.trim()?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrcSha")}},[e._v("\n "+e._s(e.pack.pack["fallback-src-sha256"])+"\n ")]):e._e(),e._v(" "),a("el-form-item",[e.pack.pack["can-download"]&&e.pack.pack["fallback-src"]?a("el-link",{attrs:{href:e.pack.pack["fallback-src"],underline:!1,type:"primary",target:"_blank"}},[a("el-button",{staticClass:"download-archive"},[e._v(e._s(e.$t("emoji.downloadPackArchive")))])],1):e._e()],1)],1),e._v(" "),a("el-collapse",{staticClass:"contents-collapse",on:{change:function(t){return e.handleChange(t,e.name)}},model:{value:e.showPackContent,callback:function(t){e.showPackContent=t},expression:"showPackContent"}},[a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.manageEmoji"),name:"manageEmoji"}},[e.pack.files&&Object.keys(e.pack.files).length>0?a("div",e._l(e.pack.files,function(t,o){return a("single-emoji-editor",{key:o,attrs:{host:e.host,"pack-name":e.name,shortcode:o,file:t,"is-local":e.isLocal}})}),1):a("span",{staticClass:"expl"},[e._v(e._s(e.$t("emoji.emptyPack")))]),e._v(" "),a("div",{staticClass:"files-pagination"},[a("el-pagination",{attrs:{total:e.remotePackFilesCount,"current-page":e.currentFilesPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handleFilesPageChange}})],1)]),e._v(" "),a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.downloadPack"),name:"downloadPack"}},[a("p",[e._v("\n "+e._s(e.$t("emoji.thisWillDownload"))+' "'+e._s(e.name)+'" '+e._s(e.$t("emoji.downloadToCurrentInstance"))+'\n "'+e._s(""===e.downloadSharedAs.trim()?e.name:e.downloadSharedAs)+'" ('+e._s(e.$t("emoji.canBeChanged"))+").\n "+e._s(e.$t("emoji.willBeUsable"))+".\n ")]),e._v(" "),a("div",{staticClass:"download-shared-pack"},[a("el-input",{attrs:{placeholder:e.$t("emoji.downloadAsOptional")},model:{value:e.downloadSharedAs,callback:function(t){e.downloadSharedAs=t},expression:"downloadSharedAs"}}),e._v(" "),a("el-button",{staticClass:"download-shared-pack-button",attrs:{type:"primary"},on:{click:e.downloadFromInstance}},[e._v("\n "+e._s(e.isDesktop?e.$t("emoji.downloadSharedPack"):e.$t("emoji.downloadSharedPackMobile"))+"\n ")])],1)])],1)],1):e._e()])},[],!1,null,null,null));$.options.__file="RemoteEmojiPack.vue";var y=$.exports,w=a("mSNy"),C={components:{LocalEmojiPack:g,RebootButton:a("rIUS").a,RemoteEmojiPack:y},data:function(){return{activeTab:"local",newPackName:"",activeLocalPack:[],activeRemotePack:[],fullscreenLoading:!1}},computed:{currentLocalPacksPage:function(){return this.$store.state.emojiPacks.currentLocalPacksPage},currentRemotePacksPage:function(){return this.$store.state.emojiPacks.currentRemotePacksPage},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"105px":this.isTablet?"180px":"200px"},localPacks:function(){return this.$store.state.emojiPacks.localPacks},localPacksCount:function(){return this.$store.state.emojiPacks.localPacksCount},pageSize:function(){return this.$store.state.emojiPacks.pageSize},remoteInstanceAddress:{get:function(){return this.$store.state.emojiPacks.remoteInstance},set:function(e){this.$store.dispatch("SetRemoteInstance",e)}},remotePacks:function(){return this.$store.state.emojiPacks.remotePacks},remotePacksCount:function(){return this.$store.state.emojiPacks.remotePacksCount}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.refreshLocalPacks()},methods:{createLocalPack:function(){var e=this;this.$store.dispatch("CreatePack",{name:this.newPackName}).then(function(){e.newPackName="",e.$store.dispatch("FetchLocalEmojiPacks",e.currentLocalPacksPage),e.$store.dispatch("ReloadEmoji")})},handleLocalPageChange:function(e){this.$store.dispatch("FetchLocalEmojiPacks",e)},handleRemotePageChange:function(e){this.$store.dispatch("SetRemoteEmojiPacks",{page:e,remoteInstance:this.remoteInstanceAddress})},importFromFS:function(){var e=this;this.$store.dispatch("ImportFromFS").then(function(){e.$store.dispatch("FetchLocalEmojiPacks",e.currentLocalPacksPage),e.$store.dispatch("ReloadEmoji")})},refreshLocalPacks:function(){try{this.$store.dispatch("FetchLocalEmojiPacks",this.currentLocalPacksPage)}catch(e){return}this.$message({type:"success",message:w.a.t("emoji.refreshed")})},refreshRemotePacks:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.fullscreenLoading=!0,t.next=3,e.$store.dispatch("SetRemoteEmojiPacks",{page:1,remoteInstance:e.remoteInstanceAddress});case 3:e.fullscreenLoading=!1;case 4:case"end":return t.stop()}},t)}))()},reloadEmoji:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.prev=0,e.$store.dispatch("ReloadEmoji"),t.next=7;break;case 4:return t.prev=4,t.t0=t.catch(0),t.abrupt("return");case 7:e.$message({type:"success",message:w.a.t("emoji.reloaded")});case 8:case"end":return t.stop()}},t,null,[[0,4]])}))()},setActiveTab:function(e){this.$refs.localEmojiPack.forEach(function(e){return e.collapse()}),this.$store.dispatch("SetActiveTab",e)}}},L=(a("smuD"),Object(d.a)(C,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"emoji-packs"},[a("div",{staticClass:"emoji-packs-header"},[a("h1",[e._v(e._s(e.$t("emoji.emojiPacks")))]),e._v(" "),a("reboot-button")],1),e._v(" "),a("div",{staticClass:"emoji-header-container"},[a("div",{staticClass:"emoji-packs-header-button-container"},[a("el-button",{staticClass:"reload-emoji-button",on:{click:e.reloadEmoji}},[e._v(e._s(e.$t("emoji.reloadEmoji")))]),e._v(" "),a("el-tooltip",{attrs:{content:e.$t("emoji.importEmojiTooltip"),effects:"dark",placement:"bottom","popper-class":"import-pack-button"}},[a("el-button",{on:{click:e.importFromFS}},[e._v("\n "+e._s(e.$t("emoji.importPacks"))+"\n ")])],1)],1)]),e._v(" "),a("el-tabs",{staticClass:"emoji-packs-tabs",attrs:{type:"card"},model:{value:e.activeTab,callback:function(t){e.activeTab=t},expression:"activeTab"}},[a("el-tab-pane",{attrs:{label:e.$t("emoji.localPacks"),name:"local"}},[a("el-form",{staticClass:"emoji-packs-form",attrs:{"label-width":e.labelWidth}},[a("el-form-item",{attrs:{label:e.$t("emoji.localPacks")}},[a("el-button",{on:{click:e.refreshLocalPacks}},[e._v(e._s(e.$t("emoji.refreshLocalPacks")))])],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.createLocalPack")}},[a("div",{staticClass:"create-pack"},[a("el-input",{attrs:{placeholder:e.$t("users.name")},model:{value:e.newPackName,callback:function(t){e.newPackName=t},expression:"newPackName"}}),e._v(" "),a("el-button",{staticClass:"create-pack-button",attrs:{disabled:""===e.newPackName.trim()},on:{click:e.createLocalPack}},[e._v("\n "+e._s(e.$t("users.create"))+"\n ")])],1),e._v(" "),a("span",{staticClass:"emoji-name-warning"},[e._v(e._s(e.$t("emoji.emojiWarning")))])]),e._v(" "),Object.keys(e.localPacks).length>0?a("el-form-item",{attrs:{label:e.$t("emoji.packs")}},e._l(e.localPacks,function(t,o){return a("el-collapse",{key:o,attrs:{accordion:""},on:{change:e.setActiveTab},model:{value:e.activeLocalPack,callback:function(t){e.activeLocalPack=t},expression:"activeLocalPack"}},[a("local-emoji-pack",{ref:"localEmojiPack",refInFor:!0,attrs:{name:o,pack:t,host:e.$store.getters.authHost,"is-local":!0}})],1)}),1):e._e()],1),e._v(" "),a("div",{staticClass:"pagination"},[a("el-pagination",{attrs:{total:e.localPacksCount,"current-page":e.currentLocalPacksPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handleLocalPageChange}})],1)],1),e._v(" "),a("el-tab-pane",{attrs:{label:e.$t("emoji.remotePacks"),name:"remote"}},[a("el-form",{staticClass:"emoji-packs-form",attrs:{"label-width":e.labelWidth}},[a("el-form-item",{attrs:{label:e.$t("emoji.remotePacks")}},[a("div",{staticClass:"create-pack"},[a("el-input",{attrs:{placeholder:e.$t("emoji.remoteInstanceAddress")},model:{value:e.remoteInstanceAddress,callback:function(t){e.remoteInstanceAddress=t},expression:"remoteInstanceAddress"}}),e._v(" "),a("el-button",{directives:[{name:"loading",rawName:"v-loading.fullscreen.lock",value:e.fullscreenLoading,expression:"fullscreenLoading",modifiers:{fullscreen:!0,lock:!0}}],staticClass:"create-pack-button",attrs:{disabled:""===e.remoteInstanceAddress.trim()},on:{click:e.refreshRemotePacks}},[e._v("\n "+e._s(e.$t("emoji.refreshRemote"))+"\n ")])],1)]),e._v(" "),Object.keys(e.remotePacks).length>0?a("el-form-item",{attrs:{label:e.$t("emoji.packs")}},e._l(e.remotePacks,function(t,o){return a("el-collapse",{key:o,attrs:{accordion:""},on:{change:e.setActiveTab},model:{value:e.activeRemotePack,callback:function(t){e.activeRemotePack=t},expression:"activeRemotePack"}},[a("remote-emoji-pack",{attrs:{name:o,pack:t,host:e.$store.getters.authHost,"is-local":!1}})],1)}),1):e._e()],1),e._v(" "),a("div",{staticClass:"pagination"},[a("el-pagination",{attrs:{total:e.remotePacksCount,"current-page":e.currentRemotePacksPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handleRemotePageChange}})],1)],1)],1)],1)},[],!1,null,null,null));L.options.__file="index.vue";t.default=L.exports},"4ySm":function(e,t,a){"use strict";var o=a("n6gr");a.n(o).a},"6lYW":function(e,t,a){},HBNe:function(e,t,a){},IVv3:function(e,t,a){"use strict";var o=a("6lYW");a.n(o).a},LE4i:function(e,t,a){"use strict";var o=a("HBNe");a.n(o).a},QZC8:function(e,t,a){},Zd0x:function(e,t,a){"use strict";var o=a("eDOw");a.n(o).a},eDOw:function(e,t,a){},n6gr:function(e,t,a){},smuD:function(e,t,a){"use strict";var o=a("QZC8");a.n(o).a}}]); -//# sourceMappingURL=chunk-546f.81668ba7.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-546f.81668ba7.js.map b/priv/static/adminfe/static/js/chunk-546f.81668ba7.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/emojiPacks/index.vue?c03d","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?5a7e","webpack:///src/views/emojiPacks/components/SingleEmojiEditor.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?89f9","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?1c09","webpack:///src/views/emojiPacks/components/NewEmojiUploader.vue","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?e7aa","webpack:///src/views/emojiPacks/components/LocalEmojiPack.vue","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?88cd","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?9c9e","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?4c9f","webpack:///src/views/emojiPacks/components/RemoteEmojiPack.vue","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?e29a","webpack:///./src/views/emojiPacks/index.vue?a332","webpack:///src/views/emojiPacks/index.vue","webpack:///./src/views/emojiPacks/index.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?bc44","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?d98f","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?2a38","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?118a","webpack:///./src/views/emojiPacks/index.vue?7b86"],"names":["components_SingleEmojiEditorvue_type_script_lang_js_","props","host","type","String","required","packName","shortcode","file","isLocal","Boolean","data","newShortcode","newFile","copyToLocalPackName","copyPopoverVisible","copyToShortcode","copyToFilename","computed","emojiName","get","this","set","val","emojiFile","isDesktop","$store","state","app","device","isMobile","localPacks","emojiPacks","remoteInstance","methods","update","_this","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","dispatch","newFilename","force","t0","abrupt","stop","remove","_this2","$confirm","confirmButtonText","cancelButtonText","then","copyToLocal","addressOfEmojiInPack","trim","filename","e","copyToLocalVisible","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","class","staticClass","attrs","src","_v","placeholder","$t","model","value","callback","$$v","expression","on","click","_s","_e","placement","popper-class","_l","_pack","name","key","label","disabled","slot","options","__file","SingleEmojiEditor","components_NewEmojiUploadervue_type_script_lang_js_","imageUploadURL","customFileName","uploadEmoji","_ref","NewEmojiUploader_component","label-position","label-width","size","http-request","multiple","show-file-list","action","components_LocalEmojiPackvue_type_script_lang_js_","components","NewEmojiUploader","pack","showPackContent","currentFilesPage","currentLocalFilesPage","currentLocalPacksPage","isTablet","labelWidth","localPackFilesCount","pageSize","filesPageSize","share","homepage","description","license","fallbackSrc","collapse","deletePack","_this$$store$state$em","_this$name","updatedPacks","objectWithoutProperties_default","map","_toPropertyKey","keys","length","catch","handleChange","openTabs","includes","page","handleFilesPageChange","savePackMetadata","LocalEmojiPack_component","title","href","underline","target","change","$event","pack-name","files","is-local","total","current-page","page-size","hide-on-single-page","layout","current-change","LocalEmojiPack","components_RemoteEmojiPackvue_type_script_lang_js_","downloadSharedAs","currentRemoteFilesPage","currentRemotePacksPage","loadRemotePack","activeTab","remoteInstanceAddress","remotePackFilesCount","downloadFromInstance","instanceAddress","as","currentPage","RemoteEmojiPack_component","RemoteEmojiPack","views_emojiPacksvue_type_script_lang_js_","RebootButton","newPackName","activeLocalPack","activeRemotePack","fullscreenLoading","localPacksCount","instance","remotePacks","remotePacksCount","mounted","refreshLocalPacks","createLocalPack","handleLocalPageChange","handleRemotePageChange","importFromFS","$message","message","lang","t","refreshRemotePacks","_this3","reloadEmoji","_this4","_callee2","_context2","setActiveTab","$refs","localEmojiPack","forEach","el","emojiPacks_component","content","effects","accordion","ref","refInFor","getters","authHost","directives","rawName","modifiers","fullscreen","lock","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SingleEmojiEditor_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NewEmojiUploader_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LocalEmojiPack_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RemoteEmojiPack_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-546f.81668ba7.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"emoji-packs\"},[_c('div',{staticClass:\"emoji-packs-header\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('emoji.emojiPacks')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"emoji-header-container\"},[_c('div',{staticClass:\"emoji-packs-header-button-container\"},[_c('el-button',{staticClass:\"reload-emoji-button\",on:{\"click\":_vm.reloadEmoji}},[_vm._v(_vm._s(_vm.$t('emoji.reloadEmoji')))]),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('emoji.importEmojiTooltip'),\"effects\":\"dark\",\"placement\":\"bottom\",\"popper-class\":\"import-pack-button\"}},[_c('el-button',{on:{\"click\":_vm.importFromFS}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.importPacks'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-tabs',{staticClass:\"emoji-packs-tabs\",attrs:{\"type\":\"card\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},[_c('el-tab-pane',{attrs:{\"label\":_vm.$t('emoji.localPacks'),\"name\":\"local\"}},[_c('el-form',{staticClass:\"emoji-packs-form\",attrs:{\"label-width\":_vm.labelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.localPacks')}},[_c('el-button',{on:{\"click\":_vm.refreshLocalPacks}},[_vm._v(_vm._s(_vm.$t('emoji.refreshLocalPacks')))])],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.createLocalPack')}},[_c('div',{staticClass:\"create-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('users.name')},model:{value:(_vm.newPackName),callback:function ($$v) {_vm.newPackName=$$v},expression:\"newPackName\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"create-pack-button\",attrs:{\"disabled\":_vm.newPackName.trim() === ''},on:{\"click\":_vm.createLocalPack}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.create'))+\"\\n \")])],1),_vm._v(\" \"),_c('span',{staticClass:\"emoji-name-warning\"},[_vm._v(_vm._s(_vm.$t('emoji.emojiWarning')))])]),_vm._v(\" \"),(Object.keys(_vm.localPacks).length > 0)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.packs')}},_vm._l((_vm.localPacks),function(pack,name){return _c('el-collapse',{key:name,attrs:{\"accordion\":\"\"},on:{\"change\":_vm.setActiveTab},model:{value:(_vm.activeLocalPack),callback:function ($$v) {_vm.activeLocalPack=$$v},expression:\"activeLocalPack\"}},[_c('local-emoji-pack',{ref:\"localEmojiPack\",refInFor:true,attrs:{\"name\":name,\"pack\":pack,\"host\":_vm.$store.getters.authHost,\"is-local\":true}})],1)}),1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.localPacksCount,\"current-page\":_vm.currentLocalPacksPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handleLocalPageChange}})],1)],1),_vm._v(\" \"),_c('el-tab-pane',{attrs:{\"label\":_vm.$t('emoji.remotePacks'),\"name\":\"remote\"}},[_c('el-form',{staticClass:\"emoji-packs-form\",attrs:{\"label-width\":_vm.labelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.remotePacks')}},[_c('div',{staticClass:\"create-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.remoteInstanceAddress')},model:{value:(_vm.remoteInstanceAddress),callback:function ($$v) {_vm.remoteInstanceAddress=$$v},expression:\"remoteInstanceAddress\"}}),_vm._v(\" \"),_c('el-button',{directives:[{name:\"loading\",rawName:\"v-loading.fullscreen.lock\",value:(_vm.fullscreenLoading),expression:\"fullscreenLoading\",modifiers:{\"fullscreen\":true,\"lock\":true}}],staticClass:\"create-pack-button\",attrs:{\"disabled\":_vm.remoteInstanceAddress.trim() === ''},on:{\"click\":_vm.refreshRemotePacks}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.refreshRemote'))+\"\\n \")])],1)]),_vm._v(\" \"),(Object.keys(_vm.remotePacks).length > 0)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.packs')}},_vm._l((_vm.remotePacks),function(pack,name){return _c('el-collapse',{key:name,attrs:{\"accordion\":\"\"},on:{\"change\":_vm.setActiveTab},model:{value:(_vm.activeRemotePack),callback:function ($$v) {_vm.activeRemotePack=$$v},expression:\"activeRemotePack\"}},[_c('remote-emoji-pack',{attrs:{\"name\":name,\"pack\":pack,\"host\":_vm.$store.getters.authHost,\"is-local\":false}})],1)}),1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.remotePacksCount,\"current-page\":_vm.currentRemotePacksPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handleRemotePageChange}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <div v-if=\"isLocal\" :class=\"isMobile ? 'emoji-container-flex' : 'emoji-container-grid'\">\n <img\n :src=\"addressOfEmojiInPack(host, packName, file)\"\n class=\"emoji-preview-img\">\n <el-input v-model=\"emojiName\" :placeholder=\"$t('emoji.shortcode')\" class=\"emoji-info\"/>\n <el-input v-model=\"emojiFile\" :placeholder=\"$t('emoji.file')\" class=\"emoji-info\"/>\n <div class=\"emoji-buttons\">\n <el-button type=\"primary\" @click=\"update\">{{ $t('emoji.update') }}</el-button>\n <el-button class=\"remove-emoji-button\" @click=\"remove\">{{ $t('emoji.remove') }}</el-button>\n </div>\n </div>\n\n <div v-if=\"!isLocal\" :class=\"isMobile ? 'emoji-container-flex' : 'remote-emoji-container-grid'\">\n <img\n :src=\"addressOfEmojiInPack(remoteInstance, packName, file)\"\n class=\"emoji-preview-img\">\n <el-input :value=\"emojiName\" :placeholder=\"$t('emoji.shortcode')\" class=\"emoji-info\"/>\n <el-input :value=\"emojiFile\" :placeholder=\"$t('emoji.file')\" class=\"emoji-info\"/>\n <el-popover v-model=\"copyPopoverVisible\" placement=\"left-start\" popper-class=\"copy-popover\" class=\"copy-pack-container\">\n <p>{{ $t('emoji.selectLocalPack') }}</p>\n <el-select v-model=\"copyToLocalPackName\" :placeholder=\"$t('emoji.localPack')\" class=\"copy-pack-select\">\n <el-option\n v-for=\"(_pack, name) in localPacks\"\n :key=\"name\"\n :label=\"name\"\n :value=\"name\" />\n </el-select>\n <p>{{ $t('emoji.specifyShortcode') }}</p>\n <el-input v-model=\"copyToShortcode\" :placeholder=\"$t('emoji.leaveEmptyShortcode')\"/>\n <p>{{ $t('emoji.specifyFilename') }}</p>\n <el-input v-model=\"copyToFilename\" :placeholder=\"$t('emoji.leaveEmptyFilename')\"/>\n <el-button\n :disabled=\"!copyToLocalPackName\"\n type=\"primary\"\n class=\"copy-to-local-pack-button\"\n @click=\"copyToLocal\">{{ $t('emoji.copy') }}</el-button>\n <el-button slot=\"reference\" type=\"primary\" class=\"emoji-button\">{{ $t('emoji.copyToLocalPack') }}</el-button>\n </el-popover>\n </div>\n </div>\n</template>\n\n<script>\n\nimport { addressOfEmojiInPack } from '@/api/emojiPacks'\nexport default {\n props: {\n host: {\n type: String,\n required: true\n },\n packName: {\n type: String,\n required: true\n },\n shortcode: {\n type: String,\n required: true\n },\n file: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n newShortcode: null,\n newFile: null,\n copyToLocalPackName: null,\n copyPopoverVisible: false,\n copyToShortcode: '',\n copyToFilename: ''\n }\n },\n computed: {\n emojiName: {\n get() {\n // Return a modified shortcode if it was modified, otherwise return the old shortcode\n return this.newShortcode !== null ? this.newShortcode : this.shortcode\n },\n set(val) { this.newShortcode = val }\n },\n emojiFile: {\n get() {\n // Return a modified file name if it was modified, otherwise return the old file name\n return this.newFile !== null ? this.newFile : this.file\n },\n set(val) { this.newFile = val }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n localPacks() {\n return this.$store.state.emojiPacks.localPacks\n },\n remoteInstance() {\n return this.$store.state.emojiPacks.remoteInstance\n }\n },\n methods: {\n async update() {\n try {\n this.$store.dispatch('UpdateEmojiFile', {\n packName: this.packName,\n shortcode: this.shortcode,\n newShortcode: this.emojiName,\n newFilename: this.emojiFile,\n force: true\n })\n } catch (e) {\n return\n }\n this.newShortcode = null\n this.newFile = null\n\n this.$store.dispatch('ReloadEmoji')\n },\n remove() {\n this.$confirm('This will delete the emoji, are you sure?', 'Warning', {\n confirmButtonText: 'Yes, delete the emoji',\n cancelButtonText: 'No, leave it be',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteEmojiFile', {\n packName: this.packName,\n shortcode: this.shortcode\n }).then(() => {\n this.newShortcode = null\n this.newFile = null\n\n this.$store.dispatch('ReloadEmoji')\n })\n })\n },\n copyToLocal() {\n try {\n this.$store.dispatch('AddNewEmojiFile', {\n packName: this.copyToLocalPackName,\n file: this.addressOfEmojiInPack(this.remoteInstance, this.packName, this.file),\n shortcode: this.copyToShortcode.trim() !== '' ? this.copyToShortcode.trim() : this.shortcode,\n filename: this.copyToFilename.trim() !== '' ? this.copyToFilename.trim() : this.file\n })\n } catch (e) {\n return\n }\n this.copyToLocalPackName = null\n this.copyToLocalVisible = false\n this.copyToShortcode = ''\n this.copyToFilename = ''\n\n this.$store.dispatch('ReloadEmoji')\n },\n addressOfEmojiInPack\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.copy-popover {\n width: 330px\n}\n.copy-to-local-pack-button {\n margin-top: 15px;\n float: right;\n}\n.emoji-buttons {\n place-self: center;\n min-width: 200px\n}\n.emoji-container-grid {\n display: grid;\n grid-template-columns: 75px 1fr 1fr 200px;\n grid-column-gap: 15px;\n margin-bottom: 10px;\n}\n.emoji-preview-img {\n max-width: 100%;\n place-self: center;\n}\n.emoji-info {\n place-self: center;\n}\n.copy-pack-container {\n place-self: center stretch;\n}\n.copy-pack-select {\n width: 100%;\n}\n.remote-emoji-container-grid {\n display: grid;\n grid-template-columns: 75px 1fr 1fr 160px;\n grid-column-gap: 15px;\n margin-bottom: 10px;\n}\n@media only screen and (max-width:480px) {\n .emoji-container-flex {\n display: flex;\n flex-direction: column;\n border: 1px solid #dcdfe6;\n box-shadow: 0 2px 12px 0 rgba(0,0,0,.1);\n border-radius: 4px;\n padding: 15px;\n margin: 0 15px 15px 0;\n }\n .emoji-preview-img {\n margin-bottom: 10px;\n }\n .emoji-info {\n margin-bottom: 10px;\n }\n .emoji-buttons {\n display: flex;\n justify-content: space-between;\n width: 100%;\n button {\n padding: 10px 5px;\n width: 47%;\n }\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .emoji-container-grid {\n grid-column-gap: 10px;\n }\n .emoji-buttons {\n .el-button+.el-button {\n margin-left: 5px;\n }\n }\n .remote-emoji-container-grid {\n grid-column-gap: 10px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./SingleEmojiEditor.vue?vue&type=template&id=130fceee&\"\nimport script from \"./SingleEmojiEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleEmojiEditor.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SingleEmojiEditor.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLocal)?_c('div',{class:_vm.isMobile ? 'emoji-container-flex' : 'emoji-container-grid'},[_c('img',{staticClass:\"emoji-preview-img\",attrs:{\"src\":_vm.addressOfEmojiInPack(_vm.host, _vm.packName, _vm.file)}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"placeholder\":_vm.$t('emoji.shortcode')},model:{value:(_vm.emojiName),callback:function ($$v) {_vm.emojiName=$$v},expression:\"emojiName\"}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"placeholder\":_vm.$t('emoji.file')},model:{value:(_vm.emojiFile),callback:function ($$v) {_vm.emojiFile=$$v},expression:\"emojiFile\"}}),_vm._v(\" \"),_c('div',{staticClass:\"emoji-buttons\"},[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.update}},[_vm._v(_vm._s(_vm.$t('emoji.update')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"remove-emoji-button\",on:{\"click\":_vm.remove}},[_vm._v(_vm._s(_vm.$t('emoji.remove')))])],1)],1):_vm._e(),_vm._v(\" \"),(!_vm.isLocal)?_c('div',{class:_vm.isMobile ? 'emoji-container-flex' : 'remote-emoji-container-grid'},[_c('img',{staticClass:\"emoji-preview-img\",attrs:{\"src\":_vm.addressOfEmojiInPack(_vm.remoteInstance, _vm.packName, _vm.file)}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"value\":_vm.emojiName,\"placeholder\":_vm.$t('emoji.shortcode')}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"value\":_vm.emojiFile,\"placeholder\":_vm.$t('emoji.file')}}),_vm._v(\" \"),_c('el-popover',{staticClass:\"copy-pack-container\",attrs:{\"placement\":\"left-start\",\"popper-class\":\"copy-popover\"},model:{value:(_vm.copyPopoverVisible),callback:function ($$v) {_vm.copyPopoverVisible=$$v},expression:\"copyPopoverVisible\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('emoji.selectLocalPack')))]),_vm._v(\" \"),_c('el-select',{staticClass:\"copy-pack-select\",attrs:{\"placeholder\":_vm.$t('emoji.localPack')},model:{value:(_vm.copyToLocalPackName),callback:function ($$v) {_vm.copyToLocalPackName=$$v},expression:\"copyToLocalPackName\"}},_vm._l((_vm.localPacks),function(_pack,name){return _c('el-option',{key:name,attrs:{\"label\":name,\"value\":name}})}),1),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('emoji.specifyShortcode')))]),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.leaveEmptyShortcode')},model:{value:(_vm.copyToShortcode),callback:function ($$v) {_vm.copyToShortcode=$$v},expression:\"copyToShortcode\"}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('emoji.specifyFilename')))]),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.leaveEmptyFilename')},model:{value:(_vm.copyToFilename),callback:function ($$v) {_vm.copyToFilename=$$v},expression:\"copyToFilename\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"copy-to-local-pack-button\",attrs:{\"disabled\":!_vm.copyToLocalPackName,\"type\":\"primary\"},on:{\"click\":_vm.copyToLocal}},[_vm._v(_vm._s(_vm.$t('emoji.copy')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"emoji-button\",attrs:{\"slot\":\"reference\",\"type\":\"primary\"},slot:\"reference\"},[_vm._v(_vm._s(_vm.$t('emoji.copyToLocalPack')))])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=script&lang=js&\"","<template>\n <el-form :label-position=\"isMobile ? 'top' : 'left'\" label-width=\"130px\" size=\"small\" class=\"new-emoji-uploader-form\">\n <el-form-item :label=\"$t('emoji.shortcode')\">\n <el-input v-model=\"shortcode\" :placeholder=\"$t('emoji.optional')\"/>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.customFilename')\">\n <el-input v-model=\"customFileName\" :placeholder=\"$t('emoji.optional')\"/>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.uploadFile')\">\n <div class=\"upload-file-url\">\n <el-input v-model=\"imageUploadURL\" :placeholder=\"$t('emoji.url')\"/>\n <el-button type=\"primary\" class=\"upload-button\" @click=\"uploadEmoji\">{{ $t('emoji.upload') }}</el-button>\n </div>\n <div class=\"upload-container\">\n <p class=\"text\">or</p>\n <el-upload\n :http-request=\"uploadEmoji\"\n :multiple=\"false\"\n :show-file-list=\"false\"\n action=\"add\">\n <el-button type=\"primary\">{{ $t('emoji.clickToUpload') }}</el-button>\n </el-upload>\n </div>\n </el-form-item>\n </el-form>\n</template>\n\n<script>\nexport default {\n props: {\n packName: {\n type: String,\n required: true\n }\n },\n data() {\n return {\n shortcode: '',\n imageUploadURL: '',\n customFileName: ''\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n }\n },\n methods: {\n async uploadEmoji({ file }) {\n try {\n this.$store.dispatch('AddNewEmojiFile', {\n packName: this.packName,\n file: file || this.imageUploadURL,\n shortcode: this.shortcode,\n filename: this.customFileName\n })\n } catch (e) {\n return\n }\n this.shortcode = ''\n this.imageUploadURL = ''\n this.customFileName = ''\n\n this.$store.dispatch('ReloadEmoji')\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.add-new-emoji {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.text {\n line-height: 20px;\n margin-right: 15px;\n}\n.upload-container {\n display: flex;\n align-items: baseline;\n}\n.upload-button {\n margin-left: 10px;\n}\n.upload-file-url {\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .new-emoji-uploader-form {\n label.el-form-item__label {\n padding: 0;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./NewEmojiUploader.vue?vue&type=template&id=403a380a&\"\nimport script from \"./NewEmojiUploader.vue?vue&type=script&lang=js&\"\nexport * from \"./NewEmojiUploader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NewEmojiUploader.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{staticClass:\"new-emoji-uploader-form\",attrs:{\"label-position\":_vm.isMobile ? 'top' : 'left',\"label-width\":\"130px\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.shortcode')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.optional')},model:{value:(_vm.shortcode),callback:function ($$v) {_vm.shortcode=$$v},expression:\"shortcode\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.customFilename')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.optional')},model:{value:(_vm.customFileName),callback:function ($$v) {_vm.customFileName=$$v},expression:\"customFileName\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.uploadFile')}},[_c('div',{staticClass:\"upload-file-url\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.url')},model:{value:(_vm.imageUploadURL),callback:function ($$v) {_vm.imageUploadURL=$$v},expression:\"imageUploadURL\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"upload-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.uploadEmoji}},[_vm._v(_vm._s(_vm.$t('emoji.upload')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"upload-container\"},[_c('p',{staticClass:\"text\"},[_vm._v(\"or\")]),_vm._v(\" \"),_c('el-upload',{attrs:{\"http-request\":_vm.uploadEmoji,\"multiple\":false,\"show-file-list\":false,\"action\":\"add\"}},[_c('el-button',{attrs:{\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t('emoji.clickToUpload')))])],1)],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-collapse-item :title=\"name\" :name=\"name\" class=\"has-background\">\n <el-form :label-width=\"labelWidth\" label-position=\"left\" size=\"small\" class=\"emoji-pack-metadata\">\n <el-form-item :label=\" $t('emoji.sharePack')\">\n <el-switch v-model=\"share\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.homepage')\">\n <el-input v-model=\"homepage\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.description')\">\n <el-input v-model=\"description\" type=\"textarea\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.license')\">\n <el-input v-model=\"license\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.fallbackSrc')\">\n <el-input v-model=\"fallbackSrc\" />\n </el-form-item>\n <el-form-item\n v-if=\"fallbackSrc && fallbackSrc.trim() !== ''\"\n :label=\" $t('emoji.fallbackSrcSha')\">\n {{ pack.pack[\"fallback-src-sha256\"] }}\n </el-form-item>\n </el-form>\n <div class=\"pack-button-container\">\n <div class=\"save-pack-button-container\">\n <el-button type=\"primary\" class=\"save-pack-button\" @click=\"savePackMetadata\">{{ $t('emoji.saveMetadata') }}</el-button>\n <el-button class=\"delete-pack-button\" @click=\"deletePack\">{{ $t('emoji.deletePack') }}</el-button>\n </div>\n <div class=\"download-pack-button-container\">\n <el-link\n v-if=\"pack.pack['can-download']\"\n :href=\"`//${host}//api/pleroma/emoji/packs/archive?name=${name}`\"\n :underline=\"false\"\n type=\"primary\"\n target=\"_blank\">\n <el-button class=\"download-archive\">{{ $t('emoji.downloadPackArchive') }}</el-button>\n </el-link>\n </div>\n </div>\n <el-collapse v-model=\"showPackContent\" class=\"contents-collapse\" @change=\"handleChange($event, name)\">\n <el-collapse-item v-if=\"isLocal\" :title=\" $t('emoji.addNewEmoji')\" name=\"addEmoji\" class=\"no-background\">\n <new-emoji-uploader :pack-name=\"name\"/>\n </el-collapse-item>\n <el-collapse-item :title=\" $t('emoji.manageEmoji')\" name=\"manageEmoji\" class=\"no-background\">\n <div v-if=\"pack.files && Object.keys(pack.files).length > 0\">\n <div :class=\"isMobile ? 'emoji-container-flex' : 'emoji-container-grid'\">\n <span class=\"emoji-preview-img emoji-table-head\">{{ $t('emoji.image') }}</span>\n <span class=\"emoji-table-head\">{{ $t('emoji.shortcode') }}</span>\n <span class=\"emoji-table-head\">{{ $t('emoji.file') }}</span>\n </div>\n <single-emoji-editor\n v-for=\"(file, shortcode) in pack.files\"\n :key=\"shortcode\"\n :host=\"host\"\n :pack-name=\"name\"\n :shortcode=\"shortcode\"\n :file=\"file\"\n :is-local=\"isLocal\" />\n </div>\n <span v-else class=\"expl\">{{ $t('emoji.emptyPack') }}</span>\n <div class=\"files-pagination\">\n <el-pagination\n :total=\"localPackFilesCount\"\n :current-page=\"currentFilesPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handleFilesPageChange\"\n />\n </div>\n </el-collapse-item>\n </el-collapse>\n </el-collapse-item>\n</template>\n\n<script>\nimport SingleEmojiEditor from './SingleEmojiEditor.vue'\nimport NewEmojiUploader from './NewEmojiUploader.vue'\n\nexport default {\n components: { SingleEmojiEditor, NewEmojiUploader },\n props: {\n name: {\n type: String,\n required: true\n },\n pack: {\n type: Object,\n required: true\n },\n host: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n showPackContent: []\n }\n },\n computed: {\n currentFilesPage() {\n return this.$store.state.emojiPacks.currentLocalFilesPage\n },\n currentLocalPacksPage() {\n return this.$store.state.emojiPacks.currentLocalPacksPage\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '90px'\n } else if (this.isTablet) {\n return '155px'\n } else {\n return '155px'\n }\n },\n localPackFilesCount() {\n return this.$store.state.emojiPacks.localPackFilesCount\n },\n pageSize() {\n return this.$store.state.emojiPacks.filesPageSize\n },\n share: {\n get() { return this.pack.pack['share-files'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'share-files', value }\n )\n }\n },\n homepage: {\n get() { return this.pack.pack['homepage'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'homepage', value }\n )\n }\n },\n description: {\n get() { return this.pack.pack['description'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'description', value }\n )\n }\n },\n license: {\n get() { return this.pack.pack['license'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'license', value }\n )\n }\n },\n fallbackSrc: {\n get() { return this.pack.pack['fallback-src'] },\n set(value) {\n if (value.trim() !== '') {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value }\n )\n } else {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value: null }\n )\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src-sha256', value: null }\n )\n }\n }\n }\n },\n methods: {\n collapse() {\n this.showPackContent = []\n },\n deletePack() {\n this.$confirm('This will delete the pack, are you sure?', 'Warning', {\n confirmButtonText: 'Yes, delete the pack',\n cancelButtonText: 'No, leave it be',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeletePack', { name: this.name })\n .then(() => this.$store.dispatch('ReloadEmoji'))\n .then(() => {\n const { [this.name]: value, ...updatedPacks } = this.$store.state.emojiPacks.localPacks\n if (Object.keys(updatedPacks).length === 0 && this.currentLocalPacksPage > 1) {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentLocalPacksPage - 1)\n } else {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentLocalPacksPage)\n }\n })\n }).catch(() => {})\n },\n handleChange(openTabs, name) {\n if (openTabs.includes('manageEmoji')) {\n this.$store.dispatch('FetchLocalSinglePack', { name, page: 1 })\n }\n },\n handleFilesPageChange(page) {\n this.$store.dispatch('FetchLocalSinglePack', { name: this.name, page })\n },\n savePackMetadata() {\n this.$store.dispatch('SavePackMetadata', { packName: this.name })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.download-archive {\n width: 250px\n}\n.download-pack-button-container {\n width: 265px;\n .el-link {\n width: inherit;\n span {\n width: inherit;\n .download-archive {\n width: inherit;\n }\n }\n }\n}\n.download-shared-pack {\n display: flex;\n margin-bottom: 10px;\n}\n.download-shared-pack-button {\n margin-left: 10px;\n}\n.el-collapse-item__content {\n padding-bottom: 0;\n}\n.el-collapse-item__header {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.emoji-table-head {\n color: #909399;\n font-size: 14px;\n font-weight: 700;\n}\n.emoji-pack-card {\n margin-top: 5px;\n}\n.emoji-pack-metadata {\n .el-form-item {\n margin-bottom: 10px;\n }\n}\n.files-pagination {\n margin: 25px 0;\n text-align: center;\n}\n.has-background .el-collapse-item__header {\n background: #f6f6f6;\n}\n.no-background .el-collapse-item__header {\n background: white;\n}\n.pack-button-container {\n margin: 0 0 18px 120px;\n}\n.save-pack-button-container {\n margin-bottom: 8px;\n width: 265px;\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .delete-pack-button {\n width: 45%;\n }\n .download-pack-button-container {\n width: 100%;\n }\n .download-shared-pack {\n flex-direction: column;\n }\n .download-shared-pack-button {\n margin-left: 0;\n margin-top: 10px;\n padding: 10px;\n }\n .pack-button-container {\n width: 100%;\n margin: 0 0 22px 0;\n }\n .remote-pack-metadata {\n .el-form-item__content {\n line-height: 24px;\n margin-top: 4px;\n }\n }\n .save-pack-button {\n width: 54%;\n }\n .save-pack-button-container {\n margin-bottom: 8px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n button {\n padding: 10px 5px;\n }\n .el-button+.el-button {\n margin-left: 3px;\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LocalEmojiPack.vue?vue&type=template&id=278d53ab&\"\nimport script from \"./LocalEmojiPack.vue?vue&type=script&lang=js&\"\nexport * from \"./LocalEmojiPack.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LocalEmojiPack.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-collapse-item',{staticClass:\"has-background\",attrs:{\"title\":_vm.name,\"name\":_vm.name}},[_c('el-form',{staticClass:\"emoji-pack-metadata\",attrs:{\"label-width\":_vm.labelWidth,\"label-position\":\"left\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.sharePack')}},[_c('el-switch',{model:{value:(_vm.share),callback:function ($$v) {_vm.share=$$v},expression:\"share\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.homepage')}},[_c('el-input',{model:{value:(_vm.homepage),callback:function ($$v) {_vm.homepage=$$v},expression:\"homepage\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.description')}},[_c('el-input',{attrs:{\"type\":\"textarea\"},model:{value:(_vm.description),callback:function ($$v) {_vm.description=$$v},expression:\"description\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.license')}},[_c('el-input',{model:{value:(_vm.license),callback:function ($$v) {_vm.license=$$v},expression:\"license\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrc')}},[_c('el-input',{model:{value:(_vm.fallbackSrc),callback:function ($$v) {_vm.fallbackSrc=$$v},expression:\"fallbackSrc\"}})],1),_vm._v(\" \"),(_vm.fallbackSrc && _vm.fallbackSrc.trim() !== '')?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrcSha')}},[_vm._v(\"\\n \"+_vm._s(_vm.pack.pack[\"fallback-src-sha256\"])+\"\\n \")]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"pack-button-container\"},[_c('div',{staticClass:\"save-pack-button-container\"},[_c('el-button',{staticClass:\"save-pack-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.savePackMetadata}},[_vm._v(_vm._s(_vm.$t('emoji.saveMetadata')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"delete-pack-button\",on:{\"click\":_vm.deletePack}},[_vm._v(_vm._s(_vm.$t('emoji.deletePack')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"download-pack-button-container\"},[(_vm.pack.pack['can-download'])?_c('el-link',{attrs:{\"href\":(\"//\" + _vm.host + \"//api/pleroma/emoji/packs/archive?name=\" + _vm.name),\"underline\":false,\"type\":\"primary\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"download-archive\"},[_vm._v(_vm._s(_vm.$t('emoji.downloadPackArchive')))])],1):_vm._e()],1)]),_vm._v(\" \"),_c('el-collapse',{staticClass:\"contents-collapse\",on:{\"change\":function($event){return _vm.handleChange($event, _vm.name)}},model:{value:(_vm.showPackContent),callback:function ($$v) {_vm.showPackContent=$$v},expression:\"showPackContent\"}},[(_vm.isLocal)?_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.addNewEmoji'),\"name\":\"addEmoji\"}},[_c('new-emoji-uploader',{attrs:{\"pack-name\":_vm.name}})],1):_vm._e(),_vm._v(\" \"),_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.manageEmoji'),\"name\":\"manageEmoji\"}},[(_vm.pack.files && Object.keys(_vm.pack.files).length > 0)?_c('div',[_c('div',{class:_vm.isMobile ? 'emoji-container-flex' : 'emoji-container-grid'},[_c('span',{staticClass:\"emoji-preview-img emoji-table-head\"},[_vm._v(_vm._s(_vm.$t('emoji.image')))]),_vm._v(\" \"),_c('span',{staticClass:\"emoji-table-head\"},[_vm._v(_vm._s(_vm.$t('emoji.shortcode')))]),_vm._v(\" \"),_c('span',{staticClass:\"emoji-table-head\"},[_vm._v(_vm._s(_vm.$t('emoji.file')))])]),_vm._v(\" \"),_vm._l((_vm.pack.files),function(file,shortcode){return _c('single-emoji-editor',{key:shortcode,attrs:{\"host\":_vm.host,\"pack-name\":_vm.name,\"shortcode\":shortcode,\"file\":file,\"is-local\":_vm.isLocal}})})],2):_c('span',{staticClass:\"expl\"},[_vm._v(_vm._s(_vm.$t('emoji.emptyPack')))]),_vm._v(\" \"),_c('div',{staticClass:\"files-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.localPackFilesCount,\"current-page\":_vm.currentFilesPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handleFilesPageChange}})],1)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=script&lang=js&\"","<template>\n <el-collapse-item :title=\"name\" :name=\"name\" class=\"has-background\">\n <div v-if=\"loadRemotePack\">\n <el-form :label-width=\"labelWidth\" label-position=\"left\" size=\"small\" class=\"emoji-pack-metadata remote-pack-metadata\">\n <el-form-item :label=\" $t('emoji.sharePack')\">\n <el-switch v-model=\"share\" disabled />\n </el-form-item>\n <el-form-item v-if=\"homepage\" :label=\" $t('emoji.homepage')\">\n <span>{{ homepage }}</span>\n </el-form-item>\n <el-form-item v-if=\"description\" :label=\" $t('emoji.description')\">\n <span>{{ description }}</span>\n </el-form-item>\n <el-form-item v-if=\"license\" :label=\" $t('emoji.license')\">\n <span>{{ license }}</span>\n </el-form-item>\n <el-form-item v-if=\"fallbackSrc\" :label=\" $t('emoji.fallbackSrc')\">\n <span>{{ fallbackSrc }}</span>\n </el-form-item>\n <el-form-item\n v-if=\"fallbackSrc && fallbackSrc.trim() !== ''\"\n :label=\" $t('emoji.fallbackSrcSha')\">\n {{ pack.pack[\"fallback-src-sha256\"] }}\n </el-form-item>\n <el-form-item>\n <el-link\n v-if=\"pack.pack['can-download'] && pack.pack['fallback-src']\"\n :href=\"pack.pack['fallback-src']\"\n :underline=\"false\"\n type=\"primary\"\n target=\"_blank\">\n <el-button class=\"download-archive\">{{ $t('emoji.downloadPackArchive') }}</el-button>\n </el-link>\n </el-form-item>\n </el-form>\n <el-collapse v-model=\"showPackContent\" class=\"contents-collapse\" @change=\"handleChange($event, name)\">\n <el-collapse-item :title=\" $t('emoji.manageEmoji')\" name=\"manageEmoji\" class=\"no-background\">\n <div v-if=\"pack.files && Object.keys(pack.files).length > 0\">\n <single-emoji-editor\n v-for=\"(file, shortcode) in pack.files\"\n :key=\"shortcode\"\n :host=\"host\"\n :pack-name=\"name\"\n :shortcode=\"shortcode\"\n :file=\"file\"\n :is-local=\"isLocal\" />\n </div>\n <span v-else class=\"expl\">{{ $t('emoji.emptyPack') }}</span>\n <div class=\"files-pagination\">\n <el-pagination\n :total=\"remotePackFilesCount\"\n :current-page=\"currentFilesPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handleFilesPageChange\"\n />\n </div>\n </el-collapse-item>\n <el-collapse-item :title=\" $t('emoji.downloadPack')\" name=\"downloadPack\" class=\"no-background\">\n <p>\n {{ $t('emoji.thisWillDownload') }} \"{{ name }}\" {{ $t('emoji.downloadToCurrentInstance') }}\n \"{{ downloadSharedAs.trim() === '' ? name : downloadSharedAs }}\" ({{ $t('emoji.canBeChanged') }}).\n {{ $t('emoji.willBeUsable') }}.\n </p>\n <div class=\"download-shared-pack\">\n <el-input v-model=\"downloadSharedAs\" :placeholder=\" $t('emoji.downloadAsOptional')\"/>\n <el-button type=\"primary\" class=\"download-shared-pack-button\" @click=\"downloadFromInstance\">\n {{ isDesktop ? $t('emoji.downloadSharedPack') : $t('emoji.downloadSharedPackMobile') }}\n </el-button>\n </div>\n </el-collapse-item>\n </el-collapse>\n </div>\n </el-collapse-item>\n</template>\n\n<script>\nimport SingleEmojiEditor from './SingleEmojiEditor.vue'\n\nexport default {\n components: { SingleEmojiEditor },\n props: {\n name: {\n type: String,\n required: true\n },\n pack: {\n type: Object,\n required: true\n },\n host: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n showPackContent: [],\n downloadSharedAs: ''\n }\n },\n computed: {\n currentFilesPage() {\n return this.$store.state.emojiPacks.currentRemoteFilesPage\n },\n currentRemotePacksPage() {\n return this.$store.state.emojiPacks.currentRemotePacksPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '90px'\n } else if (this.isTablet) {\n return '120px'\n } else {\n return '120px'\n }\n },\n loadRemotePack() {\n return this.$store.state.emojiPacks.activeTab === this.name\n },\n pageSize() {\n return this.$store.state.emojiPacks.filesPageSize\n },\n remoteInstanceAddress() {\n return this.$store.state.emojiPacks.remoteInstance\n },\n remotePackFilesCount() {\n return this.$store.state.emojiPacks.remotePackFilesCount\n },\n share: {\n get() { return this.pack.pack['share-files'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'share-files', value }\n )\n }\n },\n homepage: {\n get() { return this.pack.pack['homepage'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'homepage', value }\n )\n }\n },\n description: {\n get() { return this.pack.pack['description'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'description', value }\n )\n }\n },\n license: {\n get() { return this.pack.pack['license'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'license', value }\n )\n }\n },\n fallbackSrc: {\n get() { return this.pack.pack['fallback-src'] },\n set(value) {\n if (value.trim() !== '') {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value }\n )\n } else {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value: null }\n )\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src-sha256', value: null }\n )\n }\n }\n }\n },\n methods: {\n downloadFromInstance() {\n this.$store.dispatch(\n 'DownloadFrom',\n { instanceAddress: this.remoteInstanceAddress, packName: this.name, as: this.downloadSharedAs }\n ).then(() => this.$store.dispatch('ReloadEmoji'))\n .then(() => this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage))\n },\n handleChange(openTabs, name) {\n if (openTabs.includes('manageEmoji')) {\n this.$store.dispatch('FetchRemoteSinglePack', { name, page: 1 })\n }\n },\n handleFilesPageChange(page) {\n this.$store.dispatch('FetchRemoteSinglePack', { name: this.name, page })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.download-archive {\n width: 250px\n}\n.download-pack-button-container {\n width: 265px;\n .el-link {\n width: inherit;\n span {\n width: inherit;\n .download-archive {\n width: inherit;\n }\n }\n }\n}\n.download-shared-pack {\n display: flex;\n margin-bottom: 10px;\n}\n.download-shared-pack-button {\n margin-left: 10px;\n}\n.el-collapse-item__content {\n padding-bottom: 0;\n}\n.el-collapse-item__header {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.emoji-pack-card {\n margin-top: 5px;\n}\n.emoji-pack-metadata {\n .el-form-item {\n margin-bottom: 10px;\n }\n}\n.files-pagination {\n margin: 25px 0;\n text-align: center;\n}\n.has-background .el-collapse-item__header {\n background: #f6f6f6;\n}\n.no-background .el-collapse-item__header {\n background: white;\n}\n.pack-button-container {\n margin: 0 0 18px 120px;\n}\n.save-pack-button-container {\n margin-bottom: 8px;\n width: 265px;\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .delete-pack-button {\n width: 45%;\n }\n .download-pack-button-container {\n width: 100%;\n }\n .download-shared-pack {\n flex-direction: column;\n }\n .download-shared-pack-button {\n margin-left: 0;\n margin-top: 10px;\n padding: 10px;\n }\n .pack-button-container {\n width: 100%;\n margin: 0 0 22px 0;\n }\n .remote-pack-metadata {\n .el-form-item__content {\n line-height: 24px;\n margin-top: 4px;\n }\n }\n .save-pack-button {\n width: 54%;\n }\n .save-pack-button-container {\n margin-bottom: 8px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n button {\n padding: 10px 5px;\n }\n .el-button+.el-button {\n margin-left: 3px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./RemoteEmojiPack.vue?vue&type=template&id=0403b537&\"\nimport script from \"./RemoteEmojiPack.vue?vue&type=script&lang=js&\"\nexport * from \"./RemoteEmojiPack.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RemoteEmojiPack.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-collapse-item',{staticClass:\"has-background\",attrs:{\"title\":_vm.name,\"name\":_vm.name}},[(_vm.loadRemotePack)?_c('div',[_c('el-form',{staticClass:\"emoji-pack-metadata remote-pack-metadata\",attrs:{\"label-width\":_vm.labelWidth,\"label-position\":\"left\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.sharePack')}},[_c('el-switch',{attrs:{\"disabled\":\"\"},model:{value:(_vm.share),callback:function ($$v) {_vm.share=$$v},expression:\"share\"}})],1),_vm._v(\" \"),(_vm.homepage)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.homepage')}},[_c('span',[_vm._v(_vm._s(_vm.homepage))])]):_vm._e(),_vm._v(\" \"),(_vm.description)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.description')}},[_c('span',[_vm._v(_vm._s(_vm.description))])]):_vm._e(),_vm._v(\" \"),(_vm.license)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.license')}},[_c('span',[_vm._v(_vm._s(_vm.license))])]):_vm._e(),_vm._v(\" \"),(_vm.fallbackSrc)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrc')}},[_c('span',[_vm._v(_vm._s(_vm.fallbackSrc))])]):_vm._e(),_vm._v(\" \"),(_vm.fallbackSrc && _vm.fallbackSrc.trim() !== '')?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrcSha')}},[_vm._v(\"\\n \"+_vm._s(_vm.pack.pack[\"fallback-src-sha256\"])+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-form-item',[(_vm.pack.pack['can-download'] && _vm.pack.pack['fallback-src'])?_c('el-link',{attrs:{\"href\":_vm.pack.pack['fallback-src'],\"underline\":false,\"type\":\"primary\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"download-archive\"},[_vm._v(_vm._s(_vm.$t('emoji.downloadPackArchive')))])],1):_vm._e()],1)],1),_vm._v(\" \"),_c('el-collapse',{staticClass:\"contents-collapse\",on:{\"change\":function($event){return _vm.handleChange($event, _vm.name)}},model:{value:(_vm.showPackContent),callback:function ($$v) {_vm.showPackContent=$$v},expression:\"showPackContent\"}},[_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.manageEmoji'),\"name\":\"manageEmoji\"}},[(_vm.pack.files && Object.keys(_vm.pack.files).length > 0)?_c('div',_vm._l((_vm.pack.files),function(file,shortcode){return _c('single-emoji-editor',{key:shortcode,attrs:{\"host\":_vm.host,\"pack-name\":_vm.name,\"shortcode\":shortcode,\"file\":file,\"is-local\":_vm.isLocal}})}),1):_c('span',{staticClass:\"expl\"},[_vm._v(_vm._s(_vm.$t('emoji.emptyPack')))]),_vm._v(\" \"),_c('div',{staticClass:\"files-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.remotePackFilesCount,\"current-page\":_vm.currentFilesPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handleFilesPageChange}})],1)]),_vm._v(\" \"),_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.downloadPack'),\"name\":\"downloadPack\"}},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.thisWillDownload'))+\" \\\"\"+_vm._s(_vm.name)+\"\\\" \"+_vm._s(_vm.$t('emoji.downloadToCurrentInstance'))+\"\\n \\\"\"+_vm._s(_vm.downloadSharedAs.trim() === '' ? _vm.name : _vm.downloadSharedAs)+\"\\\" (\"+_vm._s(_vm.$t('emoji.canBeChanged'))+\").\\n \"+_vm._s(_vm.$t('emoji.willBeUsable'))+\".\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"download-shared-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.downloadAsOptional')},model:{value:(_vm.downloadSharedAs),callback:function ($$v) {_vm.downloadSharedAs=$$v},expression:\"downloadSharedAs\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"download-shared-pack-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.downloadFromInstance}},[_vm._v(\"\\n \"+_vm._s(_vm.isDesktop ? _vm.$t('emoji.downloadSharedPack') : _vm.$t('emoji.downloadSharedPackMobile'))+\"\\n \")])],1)])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"emoji-packs\">\n <div class=\"emoji-packs-header\">\n <h1>{{ $t('emoji.emojiPacks') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"emoji-header-container\">\n <div class=\"emoji-packs-header-button-container\">\n <el-button class=\"reload-emoji-button\" @click=\"reloadEmoji\">{{ $t('emoji.reloadEmoji') }}</el-button>\n <el-tooltip :content=\"$t('emoji.importEmojiTooltip')\" effects=\"dark\" placement=\"bottom\" popper-class=\"import-pack-button\">\n <el-button @click=\"importFromFS\">\n {{ $t('emoji.importPacks') }}\n </el-button>\n </el-tooltip>\n </div>\n </div>\n <el-tabs v-model=\"activeTab\" type=\"card\" class=\"emoji-packs-tabs\">\n <el-tab-pane :label=\"$t('emoji.localPacks')\" name=\"local\">\n <el-form :label-width=\"labelWidth\" class=\"emoji-packs-form\">\n <el-form-item :label=\"$t('emoji.localPacks')\">\n <el-button @click=\"refreshLocalPacks\">{{ $t('emoji.refreshLocalPacks') }}</el-button>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.createLocalPack')\">\n <div class=\"create-pack\">\n <el-input v-model=\"newPackName\" :placeholder=\"$t('users.name')\" />\n <el-button\n :disabled=\"newPackName.trim() === ''\"\n class=\"create-pack-button\"\n @click=\"createLocalPack\">\n {{ $t('users.create') }}\n </el-button>\n </div>\n <span class=\"emoji-name-warning\">{{ $t('emoji.emojiWarning') }}</span>\n </el-form-item>\n <el-form-item v-if=\"Object.keys(localPacks).length > 0\" :label=\"$t('emoji.packs')\">\n <el-collapse v-for=\"(pack, name) in localPacks\" :key=\"name\" v-model=\"activeLocalPack\" accordion @change=\"setActiveTab\">\n <local-emoji-pack ref=\"localEmojiPack\" :name=\"name\" :pack=\"pack\" :host=\"$store.getters.authHost\" :is-local=\"true\" />\n </el-collapse>\n </el-form-item>\n </el-form>\n <div class=\"pagination\">\n <el-pagination\n :total=\"localPacksCount\"\n :current-page=\"currentLocalPacksPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handleLocalPageChange\"\n />\n </div>\n </el-tab-pane>\n <el-tab-pane :label=\"$t('emoji.remotePacks')\" name=\"remote\">\n <el-form :label-width=\"labelWidth\" class=\"emoji-packs-form\">\n <el-form-item :label=\"$t('emoji.remotePacks')\">\n <div class=\"create-pack\">\n <el-input\n v-model=\"remoteInstanceAddress\"\n :placeholder=\"$t('emoji.remoteInstanceAddress')\" />\n <el-button\n v-loading.fullscreen.lock=\"fullscreenLoading\"\n :disabled=\"remoteInstanceAddress.trim() === ''\"\n class=\"create-pack-button\"\n @click=\"refreshRemotePacks\">\n {{ $t('emoji.refreshRemote') }}\n </el-button>\n </div>\n </el-form-item>\n <el-form-item v-if=\"Object.keys(remotePacks).length > 0\" :label=\"$t('emoji.packs')\">\n <el-collapse v-for=\"(pack, name) in remotePacks\" :key=\"name\" v-model=\"activeRemotePack\" accordion @change=\"setActiveTab\">\n <remote-emoji-pack :name=\"name\" :pack=\"pack\" :host=\"$store.getters.authHost\" :is-local=\"false\" />\n </el-collapse>\n </el-form-item>\n </el-form>\n <div class=\"pagination\">\n <el-pagination\n :total=\"remotePacksCount\"\n :current-page=\"currentRemotePacksPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handleRemotePageChange\"\n />\n </div>\n </el-tab-pane>\n </el-tabs>\n </div>\n</template>\n\n<script>\nimport LocalEmojiPack from './components/LocalEmojiPack'\nimport RemoteEmojiPack from './components/RemoteEmojiPack'\nimport i18n from '@/lang'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: { LocalEmojiPack, RebootButton, RemoteEmojiPack },\n data() {\n return {\n activeTab: 'local',\n newPackName: '',\n activeLocalPack: [],\n activeRemotePack: [],\n fullscreenLoading: false\n }\n },\n computed: {\n currentLocalPacksPage() {\n return this.$store.state.emojiPacks.currentLocalPacksPage\n },\n currentRemotePacksPage() {\n return this.$store.state.emojiPacks.currentRemotePacksPage\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '105px'\n } else if (this.isTablet) {\n return '180px'\n } else {\n return '200px'\n }\n },\n localPacks() {\n return this.$store.state.emojiPacks.localPacks\n },\n localPacksCount() {\n return this.$store.state.emojiPacks.localPacksCount\n },\n pageSize() {\n return this.$store.state.emojiPacks.pageSize\n },\n remoteInstanceAddress: {\n get() {\n return this.$store.state.emojiPacks.remoteInstance\n },\n set(instance) {\n this.$store.dispatch('SetRemoteInstance', instance)\n }\n },\n remotePacks() {\n return this.$store.state.emojiPacks.remotePacks\n },\n remotePacksCount() {\n return this.$store.state.emojiPacks.remotePacksCount\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.refreshLocalPacks()\n },\n methods: {\n createLocalPack() {\n this.$store.dispatch('CreatePack', { name: this.newPackName })\n .then(() => {\n this.newPackName = ''\n\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentLocalPacksPage)\n this.$store.dispatch('ReloadEmoji')\n })\n },\n handleLocalPageChange(page) {\n this.$store.dispatch('FetchLocalEmojiPacks', page)\n },\n handleRemotePageChange(page) {\n this.$store.dispatch('SetRemoteEmojiPacks', { page, remoteInstance: this.remoteInstanceAddress })\n },\n importFromFS() {\n this.$store.dispatch('ImportFromFS')\n .then(() => {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentLocalPacksPage)\n this.$store.dispatch('ReloadEmoji')\n })\n },\n refreshLocalPacks() {\n try {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentLocalPacksPage)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('emoji.refreshed')\n })\n },\n async refreshRemotePacks() {\n this.fullscreenLoading = true\n await this.$store.dispatch('SetRemoteEmojiPacks', { page: 1, remoteInstance: this.remoteInstanceAddress })\n this.fullscreenLoading = false\n },\n async reloadEmoji() {\n try {\n this.$store.dispatch('ReloadEmoji')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('emoji.reloaded')\n })\n },\n setActiveTab(activeTab) {\n this.$refs.localEmojiPack.forEach(el => el.collapse())\n this.$store.dispatch('SetActiveTab', activeTab)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.create-pack {\n display: flex;\n justify-content: space-between\n}\n.create-pack-button {\n margin-left: 10px;\n}\n.emoji-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0 15px 22px 15px;\n}\n.emoji-name-warning {\n color: #666666;\n font-size: 13px;\n line-height: 22px;\n margin: 5px 0 0 0;\n overflow-wrap: break-word;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.emoji-packs-header-button-container {\n display: flex;\n}\n.emoji-packs-form {\n margin-top: 15px;\n}\n.emoji-packs-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px 15px 15px;\n}\n.emoji-packs-tabs {\n margin: 0 15px 15px 15px;\n}\n.import-pack-button {\n margin-left: 10px;\n width: 30%;\n max-width: 700px;\n}\nh1 {\n margin: 0;\n}\n.line {\n width: 100%;\n height: 0;\n border: 1px solid #eee;\n margin-bottom: 22px;\n}\n.pagination {\n margin: 25px 0;\n text-align: center;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n\n@media only screen and (min-width: 1824px) {\n .emoji-packs {\n max-width: 1824px;\n margin: auto;\n }\n}\n\n@media only screen and (max-width:480px) {\n .create-pack {\n height: 82px;\n flex-direction: column;\n }\n .create-pack-button {\n margin-left: 0;\n }\n .divider {\n margin: 15px 0;\n }\n .el-message {\n min-width: 80%;\n }\n .el-message-box {\n width: 80%;\n }\n .emoji-header-container {\n flex-direction: column;\n align-items: flex-start;\n }\n .emoji-packs-form {\n margin: 0 7px;\n label {\n padding-right: 8px;\n }\n .el-form-item {\n margin-bottom: 15px;\n }\n }\n .emoji-packs-header {\n margin: 15px;\n }\n .emoji-packs-header-button-container {\n height: 82px;\n flex-direction: column;\n .el-button+.el-button {\n margin: 7px 0 0 0;\n width: fit-content;\n }\n }\n .import-pack-button {\n width: 90%;\n }\n .reload-emoji-button {\n width: fit-content;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=3cf2b681&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-565e.6b50e750.js b/priv/static/adminfe/static/js/chunk-565e.6b50e750.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-565e"],{"+2nY":function(t,e,i){"use strict";var n=i("ld6V");i.n(n).a},"+qaP":function(t,e,i){"use strict";var n=i("60OA");i.n(n).a},"0FjT":function(t,e,i){"use strict";var n=i("dnRK");i.n(n).a},"2q6O":function(t,e,i){"use strict";var n=i("Scsy");i.n(n).a},"3IoU":function(t,e,i){"use strict";var n=i("6V7o");i.n(n).a},"3YZA":function(t,e,i){},"4NUT":function(t,e,i){},"4b9x":function(t,e,i){"use strict";var n=i("wgcy");i.n(n).a},"60OA":function(t,e,i){},"6V7o":function(t,e,i){},"77pt":function(t,e,i){},"9Hof":function(t,e,i){"use strict";var n=i("ncj/");i.n(n).a},"9p49":function(t,e,i){},"9y8C":function(t,e,i){"use strict";var n=i("rKzx");i.n(n).a},DPt0:function(t,e,i){"use strict";var n=i("x6RV");i.n(n).a},EXm2:function(t,e,i){},Ezi3:function(t,e,i){"use strict";var n=i("MNl6");i.n(n).a},FCne:function(t,e,i){"use strict";var n=i("OCuP");i.n(n).a},"J7+w":function(t,e,i){"use strict";var n=i("fyIw");i.n(n).a},JqY8:function(t,e,i){},KFE3:function(t,e,i){"use strict";var n=i("mSK5");i.n(n).a},MNl6:function(t,e,i){},NiUD:function(t,e,i){},OCuP:function(t,e,i){},OQQp:function(t,e,i){"use strict";var n=i("pPJ2");i.n(n).a},PYLh:function(t,e,i){},PygS:function(t,e,i){"use strict";var n=i("TtMh");i.n(n).a},RSJF:function(t,e,i){},Scsy:function(t,e,i){},TOIk:function(t,e,i){},TRR9:function(t,e,i){},TtMh:function(t,e,i){},TudB:function(t,e,i){},"UbP/":function(t,e,i){},UdS4:function(t,e,i){"use strict";var n=i("WwJU");i.n(n).a},UqcT:function(t,e,i){"use strict";var n=i("RSJF");i.n(n).a},UtFC:function(t,e,i){},"WvM+":function(t,e,i){"use strict";var n=i("TRR9");i.n(n).a},WwJU:function(t,e,i){},YKHE:function(t,e,i){},YcIK:function(t,e,i){"use strict";i.r(e);var n=i("o0o1"),s=i.n(n),a=i("yXPU"),r=i.n(a),o=i("mSNy"),l=i("lSNA"),u=i.n(l),c=i("L2JU"),p=i("RIqP"),d=i.n(p),g=i("h74u");function b(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function h(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?b(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):b(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var f={name:"EditableKeywordInput",props:{data:{type:Array,default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{editableKeywordWithInteger:function(){return this.setting.type.includes("keyword")&&this.setting.type.includes("integer")},editableKeywordWithSelect:function(){return this.setting.type.includes("map")&&-1!==this.setting.type.findIndex(function(t){return t.includes("list")&&t.includes("string")})||this.setting.type.includes("keyword")&&-1!==this.setting.type.findIndex(function(t){return t.includes("list")&&t.includes("string")})},editableKeywordWithString:function(){return":crontab"!==this.setting.key&&(this.setting.type.includes("keyword")&&this.setting.type.includes("string")||this.setting.type.includes("tuple")&&this.setting.type.includes("list")||this.setting.type.includes("map")&&this.setting.type.includes("string"))},isDesktop:function(){return"desktop"===this.$store.state.app.device},keyPlaceholder:function(){return":replace"===this.setting.key?"pattern":"key"},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},valuePlaceholder:function(){return":replace"===this.setting.key?"replacement":"value"}},methods:{addRowToEditableKeyword:function(){var t=[].concat(d()(this.data),[{"":{value:"",id:this.generateID()}}]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteEditableKeywordRow:function(t){var e=this.getId(t),i=this.data.filter(function(t){return Object.values(t)[0].id!==e});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},getCrontabWorkerLabel:function(t){var e=this.getKey(t);return e.includes("Pleroma.Workers.Cron.")?e.replace("Pleroma.Workers.Cron.",""):e},getKey:function(t){return Object.keys(t)[0]},getId:function(t){return Object.values(t)[0].id},getSuggestion:function(t){var e=this;return this.setting.suggestions.find(function(i){return i[1]===e.getKey(t)})[0]},getValue:function(t){return Object.values(t)[0].value},parseEditableKeyword:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(i,a){return Object.values(i)[0].id===s?"key"===e?u()({},t,Object.values(n.data[a])[0]):u()({},Object.keys(i)[0],h(h({},Object.values(n.data[a])[0]),{},{value:t})):i});this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateCrontab:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(e,i){return Object.values(e)[0].id===s?u()({},Object.keys(e)[0],h(h({},Object.values(n.data[i])[0]),{},{value:t})):e}),r=a.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],["reversed_tuple",Object.values(e)[0].value]))},{});this.$store.dispatch("UpdateSettings",{group:this.settingGroup.group,key:this.settingGroup.key,input:this.setting.key,value:r,type:this.setting.type}),this.$store.dispatch("UpdateState",{group:this.settingGroup.group,key:this.settingGroup.key,input:this.setting.key,value:a})},updateSetting:function(t,e,i,n,s){var a=this.wrapUpdatedSettings(t,n,s);if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})},wrapUpdatedSettings:function(t,e,i){return"map"===i?t.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],Object.values(e)[0].value))},{}):t.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],["list",Object.values(e)[0].value]))},{})}}},m=(i("nKzF"),i("KHd+")),v=Object(m.a)(f,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"editable-keyword-container"},[":crontab"===t.setting.key?i("div",{staticClass:"crontab",attrs:{"data-search":t.setting.key}},t._l(t.data,function(e){return i("el-form-item",{key:t.getId(e),staticClass:"crontab-container",attrs:{label:t.getCrontabWorkerLabel(e)}},[i("el-input",{staticClass:"input setting-input",attrs:{value:t.getValue(e),placeholder:t.getSuggestion(e)||null},on:{input:function(i){return t.updateCrontab(i,"value",e)}}})],1)}),1):t.editableKeywordWithInteger?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:"key"},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-input-number",{staticClass:"value-input",attrs:{value:t.getValue(e),min:0,size:"large"},on:{change:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t.editableKeywordWithString?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:t.keyPlaceholder},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-input",{staticClass:"value-input",attrs:{value:t.getValue(e),placeholder:t.valuePlaceholder},on:{input:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t.editableKeywordWithSelect?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:"key"},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-select",{staticClass:"value-input",attrs:{value:t.getValue(e),multiple:"",filterable:"","allow-create":""},on:{change:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t._e()])},[],!1,null,null,null);v.options.__file="EditableKeywordInput.vue";var y=v.exports;function k(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function _(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?k(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):k(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var O={name:"EditableKeywordInput",props:{data:{type:Array,default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{addIconToIcons:function(){var t=[].concat(d()(this.data),[[{key:"",value:"",id:this.generateID()}]]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},addValueToIcons:function(t){var e=this,i=this.data.map(function(i,n){return n===t?[].concat(d()(i),[{key:"",value:"",id:e.generateID()}]):i});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteIcondRow:function(t){var e=this.data.filter(function(e,i){return i!==t});this.updateSetting(e,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},parseIcons:function(t,e,i,n){var s=this.data.map(function(s,a){return a===i?s.map(function(i){return i.id===n?_(_({},i),{},"key"===e?{key:t}:{value:t}):i}):s});this.updateSetting(s,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.map(function(t){return t.reduce(function(t,e){var i=e.key,n=e.value;return _(_({},t),{},u()({},i,n))},{})},{});this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},P=(i("rdar"),Object(m.a)(O,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"mascot-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e,n){return i("div",{key:n,staticClass:"mascot"},[i("div",{staticClass:"icons-container"},[i("div",{staticClass:"icon-container"},t._l(e,function(e){var s=e.key,a=e.value,r=e.id;return i("div",{key:r,staticClass:"icon-values-container"},[i("el-input",{staticClass:"icon-key-input",attrs:{value:s,placeholder:"key"},on:{input:function(e){return t.parseIcons(e,"key",n,r)}}}),t._v(" :\n "),i("el-input",{staticClass:"icon-value-input",attrs:{value:a,placeholder:"value"},on:{input:function(e){return t.parseIcons(e,"value",n,r)}}})],1)}),0),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(e){return t.deleteIcondRow(n)}}})],1),t._v(" "),i("div",{staticClass:"icons-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:function(e){return t.addValueToIcons(n)}}}),t._v(" "),i("span",{staticClass:"icons-button-desc"},[t._v("Add another `key - value` pair to this icon")])],1),t._v(" "),i("el-divider",{staticClass:"divider"})],1)}),t._v(" "),i("div",{staticClass:"icons-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addIconToIcons}}),t._v(" "),i("span",{staticClass:"icons-button-desc"},[t._v("Add another icon configuration")])],1)],2)},[],!1,null,null,null));P.options.__file="IconsInput.vue";var w=P.exports,j=i("LvDl"),S=i.n(j),D=i("9i3r"),x=i("X4fA"),C="/api/v1/media";var $=function(){return{Authorization:"Bearer ".concat(Object(x.b)())}};function U(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function E(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?U(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):U(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var I={name:"ImageUploadInput",props:{inputValue:{type:[String,Object],default:function(){return{}}},setting:{type:Object,default:function(){return{}}}},data:function(){return{loading:!1}},computed:E(E({},Object(c.b)(["authHost"])),{},{fullSize:function(){return!!S.a.includes([":background",":nsfwCensorImage"],this.setting.key)},dimensions:function(){return{width:this.fullSize?"100%":"100px",height:this.fullSize?"250px":"100px"}},isDefault:function(){return this.defaultImage===this.inputValue},defaultImage:function(){return this.baseName+S.a.get(this.setting,"suggestions[0]")},baseName:function(){return Object(D.a)(this.authHost)}}),methods:{imageUrl:function(t){return S.a.isString(t)?t.startsWith("http")||t.startsWith("https")?t:this.baseName+t:this.defaultImage},handleFiles:function(t){var e=this,i=t.target.files[0];if(i){var n=new FileReader;n.onload=function(t){t.target;var n=new FormData;n.append("file",i),e.loading=!0,function(t){var e=t.formData,i=t.authHost,n=Object(D.a)(i)+C;return fetch(n,{body:e,method:"POST",headers:$()}).then(function(t){return t.json()})}({formData:n,authHost:e.authHost}).then(function(t){e.loading=!1,e.$emit("change",t.url)})},n.readAsDataURL(i)}},removeFile:function(){this.$emit("change",this.defaultImage)}}},W=(i("zzeU"),Object(m.a)(I,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"image-upload-area"},[i("div",{staticClass:"input-row"},[i("div",{staticClass:"image-upload-wrapper",style:t.dimensions},[i("div",{staticClass:"image-upload-overlay",style:t.dimensions},[i("input",{staticClass:"input-file",attrs:{"aria-label":t.$t("settings.changeImage"),type:"file",accept:".jpg,.jpeg,.png"},on:{change:t.handleFiles}}),t._v(" "),i("div",{staticClass:"caption"},[t._v("\n "+t._s(t.$t("settings.changeImage"))+"\n ")]),t._v(" "),i("el-image",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticClass:"uploaded-image",style:t.dimensions,attrs:{src:t.imageUrl(t.inputValue),fit:"cover"}})],1)])]),t._v(" "),i("div",{staticClass:"image-button-group"},[i("el-button",{staticClass:"upload-button",attrs:{size:"small"}},[t._v("\n "+t._s(t.$t("settings.uploadImage"))+"\n "),i("input",{staticClass:"input-file",attrs:{"aria-label":t.$t("settings.changeImage"),type:"file",accept:".jpg,.jpeg,.png"},on:{change:t.handleFiles}})]),t._v(" "),t.isDefault?t._e():i("el-button",{staticStyle:{"margin-left":"5px"},attrs:{type:"danger",size:"small"},on:{click:function(e){return t.removeFile()}}},[t._v("\n "+t._s(t.$t("settings.remove"))+"\n ")])],1)])},[],!1,null,null,null));W.options.__file="ImageUploadInput.vue";var T=W.exports,M={name:"LinkFormatterInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{autoLinkerAtomValue:function(){return this.data[this.setting.key]&&":"===this.data[this.setting.key][0]?this.data[this.setting.key].substr(1):this.data[this.setting.key]},autoLinkerBooleanValue:function(){var t=this.data[this.setting.key];return"string"==typeof t||"number"==typeof t},autoLinkerIntegerValue:function(){return this.data[this.setting.key]||0},autoLinkerStringValue:function(){return this.data[this.setting.key]||""}},methods:{processTwoTypeValue:function(t,e){if(!0===t){var i=":truncate"===e?0:"";this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)}else this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)},updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},A=(i("9y8C"),Object(m.a)(M,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[t.setting.type.includes("string")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input",{attrs:{value:t.autoLinkerStringValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}):t._e()],1):t._e(),t._v(" "),t.setting.type.includes("integer")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input-number",{attrs:{value:t.autoLinkerIntegerValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}):t._e()],1):t._e(),t._v(" "),t.setting.type.includes("atom")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input",{attrs:{value:t.autoLinkerAtomValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}},[i("template",{slot:"prepend"},[t._v(":")])],2):t._e()],1):t._e()])},[],!1,null,null,null));A.options.__file="LinkFormatterInput.vue";var G=A.exports,L=i("QILm"),F=i.n(L),R=i("J4zp"),V=i.n(R);function K(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function z(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?K(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):K(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var q={name:"MascotsInput",props:{data:{type:Array,default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{addRowToMascots:function(){var t=[].concat(d()(this.data),[{"":{":url":"",":mime_type":"",id:this.generateID()}}]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteMascotsRow:function(t){var e=this.getId(t),i=this.data.filter(function(t){return Object.values(t)[0].id!==e});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},getId:function(t){return Object.values(t)[0].id},getName:function(t){return Object.keys(t)[0]},getUrl:function(t){var e=Object.values(t);return V()(e,1)[0][":url"]},getMimeType:function(t){var e=Object.values(t);return V()(e,1)[0][":mime_type"]},parseMascots:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(i,a){return Object.values(i)[0].id===s?"name"===e?u()({},t,Object.values(n.data[a])[0]):"url"===e?u()({},Object.keys(i)[0],z(z({},Object.values(n.data[a])[0]),{},{":url":t})):u()({},Object.keys(i)[0],z(z({},Object.values(n.data[a])[0]),{},{":mime_type":t})):i});this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.reduce(function(t,e){var i=Object.values(e)[0],n=(i.id,F()(i,["id"]));return z(z({},t),{},u()({},Object.keys(e)[0],["",n]))},{});this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},N=(i("+2nY"),Object(m.a)(q,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"mascot-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"mascot"},[i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"Name","label-width":"85px"}},[i("div",{staticClass:"mascot-name-container"},[i("el-input",{staticClass:"mascot-name-input",attrs:{value:t.getName(e),placeholder:"Name"},on:{input:function(i){return t.parseMascots(i,"name",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteMascotsRow(e)}}})],1)]),t._v(" "),i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"URL","label-width":"85px"}},[i("el-input",{staticClass:"mascot-input",attrs:{value:t.getUrl(e),placeholder:"URL"},on:{input:function(i){return t.parseMascots(i,"url",e)}}})],1),t._v(" "),i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"Mime type","label-width":"85px"}},[i("el-input",{staticClass:"mascot-input",attrs:{value:t.getMimeType(e),placeholder:"Mime type"},on:{input:function(i){return t.parseMascots(i,"mimeType",e)}}})],1)],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToMascots}})],2)},[],!1,null,null,null));N.options.__file="MascotsInput.vue";var B=N.exports;function Q(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function H(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Q(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Q(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var J={name:"ProxyUrlInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},proxyUrlData:function(){return 0===Object.keys(this.data).length?{socks5:!1,host:null,port:null}:this.data}},methods:{updateProxyUrl:function(t,e){var i;i=H(H({},this.proxyUrlData),{},"socks5"===e?{socks5:t}:"host"===e?{host:t}:{port:t}),this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.socks5?[":socks5",t.host,t.port]:"".concat(t.host,":").concat(t.port);if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},Y=(i("mGnP"),Object(m.a)(J,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"proxy-url-input",attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-input",{staticClass:"proxy-url-host-input",attrs:{value:t.proxyUrlData.host,placeholder:"host (e.g. localhost or 127.0.0.1)"},on:{input:function(e){return t.updateProxyUrl(e,"host")}}}),t._v(" "),t.isDesktop?i("span",[t._v(":")]):t._e(),t._v(" "),i("el-input",{staticClass:"proxy-url-value-input",attrs:{value:t.proxyUrlData.port,placeholder:"port (e.g 9020 or 3090)"},on:{input:function(e){return t.updateProxyUrl(e,"port")}}}),t._v(" "),i("div",{staticClass:"socks5-checkbox-container"},[i("el-checkbox",{attrs:{value:t.proxyUrlData.socks5},on:{change:function(e){return t.updateProxyUrl(e,"socks5")}}}),t._v(" "),i("span",{staticClass:"socks5-checkbox"},[t._v("Socks5")])],1)],1)},[],!1,null,null,null));Y.options.__file="ProxyUrlInput.vue";var X=Y.exports,Z={name:"PruneInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{prune:{get:function(){return this.data[0]},set:function(t){this.updateRadioInput(t)}}},methods:{updateIntInput:function(t,e){this.updateSetting([e,t],this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.includes(":disabled")?":disabled":t;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})},updateRadioInput:function(t){var e=":disabled"===t?[t]:[t,0];this.updateSetting(e,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)}}},tt=(i("Ezi3"),Object(m.a)(Z,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-radio-group",{staticClass:"prune-options",model:{value:t.prune,callback:function(e){t.prune=e},expression:"prune"}},[i("el-radio",{attrs:{label:":disabled"}},[t._v("Disabled")]),t._v(" "),i("el-radio",{attrs:{label:":maxlen"}},[t._v("Limit-based")]),t._v(" "),i("el-radio",{attrs:{label:":maxage"}},[t._v("Time-based")])],1),t._v(" "),":maxlen"===t.prune?i("el-form-item",{attrs:{label:"Max length","label-width":"100","label-position":"left"}},[i("el-input-number",{staticClass:"top-margin",attrs:{value:t.data[1],min:0,placeholder:"1500",size:"large"},on:{change:function(e){return t.updateIntInput(e,":maxlen")}}})],1):t._e(),t._v(" "),":maxage"===t.prune?i("el-form-item",{attrs:{label:"Max age","label-width":"100","label-position":"left"}},[i("el-input-number",{staticClass:"top-margin",attrs:{value:t.data[1],min:0,placeholder:"3600",size:"large"},on:{change:function(e){return t.updateIntInput(e,":maxage")}}})],1):t._e()],1)},[],!1,null,null,null));tt.options.__file="PruneInput.vue";var et=tt.exports,it={name:"RateLimitInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},rateLimitAllUsers:function(){return this.data[this.setting.key]?this.data[this.setting.key]:["",""]},rateLimitAuthUsers:function(){return!(!this.data[this.setting.key]||!Array.isArray(this.data[this.setting.key][0]))&&this.data[this.setting.key][1]},rateLimitUnauthUsers:function(){return!(!this.data[this.setting.key]||!Array.isArray(this.data[this.setting.key][1]))&&this.data[this.setting.key][0]}},methods:{parseRateLimiter:function(t,e,i,n,s){var a;"oneLimit"===n?a="scale"===i?[t,s[1]]:[s[0],t]:"unauthUsersLimit"===n?a="scale"===i?[[t,s[0][1]],[s[1][0],s[1][1]]]:[[s[0][0],t],[s[1][0],s[1][1]]]:"authUserslimit"===n&&(a="scale"===i?[[s[0][0],s[0][1]],[t,s[1][1]]]:[[s[0][0],s[0][1]],[s[1][0],t]]),this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)},toggleLimits:function(t,e){this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,e)},updateSetting:function(t,e,i,n,s){var a=Array.isArray(t[0])?t.map(function(t){return{tuple:t}}):{tuple:t};this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},nt=(i("irif"),Object(m.a)(it,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"rate-limit-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t.rateLimitAuthUsers?t._e():i("div",[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitAllUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","oneLimit",t.rateLimitAllUsers)}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitAllUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","oneLimit",t.rateLimitAllUsers)}}}),t._v(" "),i("div",{staticClass:"limit-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:function(e){return t.toggleLimits([["",""],["",""]],t.setting.key)}}}),t._v(" "),i("p",{staticClass:"expl limit-expl"},[t._v("Set different limits for unauthenticated and authenticated users")])],1)],1),t._v(" "),t.rateLimitAuthUsers?i("div",[i("el-form-item",{staticClass:"rate-limit"},[i("div",{staticClass:"rate-limit-label-container"},[i("span",{staticClass:"rate-limit-label"},[t._v("\n Unauthenticated users:\n ")])]),t._v(" "),i("div",{staticClass:"rate-limit-content"},[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitUnauthUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","unauthUsersLimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitUnauthUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","unauthUsersLimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}})],1)]),t._v(" "),i("el-form-item",{staticClass:"rate-limit"},[i("div",{staticClass:"rate-limit-label-container"},[i("span",{staticClass:"rate-limit-label"},[t._v("\n Authenticated users:\n ")])]),t._v(" "),i("div",{staticClass:"rate-limit-content"},[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitAuthUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","authUserslimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitAuthUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","authUserslimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}})],1)]),t._v(" "),i("div",{staticClass:"limit-button-container"},[i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(e){return t.toggleLimits(["",""],t.setting.key)}}}),t._v(" "),i("p",{staticClass:"expl limit-expl"},[t._v("Set limit for all users")])],1)],1):t._e()])},[],!1,null,null,null));nt.options.__file="RateLimitInput.vue";var st=nt.exports,at={name:"RegInvitesInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},methods:{updateSetting:function(t,e,i,n,s){var a=this,r=this.$store.state.settings.settings[e][i][":registrations_open"],o=this.$store.state.settings.settings[e][i][":invites_enabled"];":registrations_open"===n&&t&&o?this.$confirm("Enabling this setting requires invites to be disabled. Are you sure you want to open registrations?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){a.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),a.$store.dispatch("UpdateSettings",{group:e,key:i,input:":invites_enabled",value:!1,type:s}),a.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}),a.$store.dispatch("UpdateState",{group:e,key:i,input:":invites_enabled",value:!1})}):":invites_enabled"===n&&t&&r?this.$confirm("Enabling this setting requires registrations to be disabled. Are you sure you want to enable invitations?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){a.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),a.$store.dispatch("UpdateSettings",{group:e,key:i,input:":registrations_open",value:!1,type:s}),a.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}),a.$store.dispatch("UpdateState",{group:e,key:i,input:":registrations_open",value:!1})}):(this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}))}}},rt=(i("9Hof"),Object(m.a)(at,function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-switch",{staticClass:"switch-input",attrs:{value:t.data[t.setting.key],"data-search":t.setting.key},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}})},[],!1,null,null,null));rt.options.__file="RegInvitesInput.vue";var ot=rt.exports,lt={name:"SelectInputWithReducedLabels",props:{data:{type:[Array,Object],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{inputValue:function(){return"Pleroma.Web.Auth.Authenticator"===this.setting.key?this.data.value:":policies"===this.setting.key&&"string"==typeof this.data[this.setting.key]?[this.data[this.setting.key]]:this.data[this.setting.key]},isMobile:function(){return"mobile"===this.$store.state.app.device}},methods:{options:function(t){var e=this,i={":policies":"Pleroma.Web.ActivityPub.MRF.","Pleroma.Web.Auth.Authenticator":"Pleroma.Web.Auth.",":method":"Pleroma.Captcha.",":adapter":"Swoosh.Adapters.",":providers":"Pleroma.Web.Metadata.Providers.",":parsers":"Pleroma.Web.RichMedia.Parsers.",":ttl_setters":"Pleroma.Web.RichMedia.Parser.",":scrub_policy":"Pleroma.HTML.",":federation_publisher_modules":"Pleroma.Web.",":uploader":"Pleroma.Uploaders.",":filters":"Pleroma.Upload.Filter."};return t.map(function(t){return{value:t,label:t.split(i[e.setting.key])[1]?t.split(i[e.setting.key])[1]:t}})},renderMultipleSelect:function(t){return Array.isArray(t)&&":backends"!==this.setting.key&&":args"!==this.setting.key&&(t.includes("module")||t.includes("list")&&t.includes("string")||t.includes("list")&&t.includes("atom")||t.includes("regex")&&t.includes("string")||":args"===this.setting.key)},updateSetting:function(t,e,i,n,s){var a=Object(g.b)(t);this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:a})}}},ut=(i("3IoU"),Object(m.a)(lt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"input"},[t.renderMultipleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},t._l(t.options(t.setting.suggestions),function(t,e){return i("el-option",{key:e,attrs:{value:t.value,label:t.label}})}),1):t._e(),t._v(" "),"module"===t.setting.type||t.setting.type.includes("atom")&&t.setting.type.includes("dropdown")?i("el-select",{staticClass:"input",attrs:{value:!1===t.inputValue?"false":t.inputValue,"data-search":t.setting.key||t.setting.group,clearable:""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},t._l(t.options(t.setting.suggestions),function(t,e){return i("el-option",{key:e,attrs:{value:t.value,label:t.label}})}),1):t._e()],1)},[],!1,null,null,null));ut.options.__file="SelectInputWithReducedLabels.vue";var ct=ut.exports;function pt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function dt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?pt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):pt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var gt={name:"SenderInput",props:{data:{type:[Object,Array],default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},sender:function(){return 0===Object.keys(this.data).length?{email:null,nickname:null}:this.data}},methods:{updateSender:function(t,e){var i;i=dt(dt({},this.sender),{},"email"===e?{email:t}:{nickname:t}),this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.nickname?[t.nickname,t.email]:t.email;if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},bt=(i("OQQp"),Object(m.a)(gt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"sender-input",attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-input",{staticClass:"email-address-input",attrs:{value:t.sender.email,placeholder:"email address"},on:{input:function(e){return t.updateSender(e,"email")}}}),t._v(" "),i("el-input",{staticClass:"nickname-input",attrs:{value:t.sender.nickname,placeholder:"nickname"},on:{input:function(e){return t.updateSender(e,"nickname")}}})],1)},[],!1,null,null,null));bt.options.__file="SenderInput.vue";var ht=bt.exports,ft={name:"SpecificMultipleSelect",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},methods:{updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},mt=(i("UqcT"),Object(m.a)(ft,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"multiple-select-container"},[":backends"===t.setting.key?i("el-select",{staticClass:"input",attrs:{value:t.data.value,"data-search":t.setting.key||t.setting.group,multiple:""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},[i("el-option",{attrs:{value:":console",label:"console"}}),t._v(" "),i("el-option",{attrs:{value:":ex_syslogger",label:"ExSyslogger"}}),t._v(" "),i("el-option",{attrs:{value:"Quack.Logger",label:"Quack.Logger"}})],1):t._e(),t._v(" "),":args"===t.setting.key?i("el-select",{staticClass:"input",attrs:{value:t.data[t.setting.key],"data-search":t.setting.key||t.setting.group,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},[i("el-option",{attrs:{value:"strip"}}),t._v(" "),i("el-option",{attrs:{value:"auto-orient"}}),t._v(" "),i("el-option",{attrs:{value:'{"implode", "1"}'}})],1):t._e()],1)},[],!1,null,null,null));mt.options.__file="SpecificMultipleSelect.vue";var vt=mt.exports,yt=i("4MG8"),kt=i.n(yt),_t={name:"Inputs",components:{EditableKeywordInput:y,IconsInput:w,ImageUploadInput:T,LinkFormatterInput:G,MascotsInput:B,ProxyUrlInput:X,PruneInput:et,RateLimitInput:st,RegInvitesInput:ot,SelectInputWithReducedLabels:ct,SenderInput:ht,SpecificMultipleSelect:vt},props:{customLabelWidth:{type:String,default:function(){return this.labelWidth},required:!1},data:{type:[Object,Array],default:function(){return{}}},labelClass:{type:String,default:function(){return"label"},required:!1},margin:{type:Number,default:function(){return 0},required:!1},nested:{type:Boolean,default:function(){return!1}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}},settingParent:{type:Array,default:function(){return[]},required:!1}},computed:{booleanCombinedInput:function(){return Array.isArray(this.setting.type)&&this.setting.type.includes("boolean")},canBeDeleted:function(){var t=this.settingGroup,e=t.group,i=t.key;return S.a.get(this.$store.state.settings.db,[e,i])&&this.$store.state.settings.db[e][i].includes(this.setting.key)},iconsData:function(){return Array.isArray(this.data)?this.data:[]},inputValue:function(){return[":esshd",":cors_plug",":quack",":tesla",":swoosh"].includes(this.settingGroup.group)&&this.data[this.setting.key]?"atom"===this.setting.type&&":"===this.data[this.setting.key].value[0]?this.data[this.setting.key].value.substr(1):this.data[this.setting.key].value:":logger"===this.settingGroup.group&&":backends"===this.setting.key||"Pleroma.Web.Auth.Authenticator"===this.setting.key||":admin_token"===this.setting.key?this.data.value:":mime"===this.settingGroup.group&&":types"===this.settingParent[0].key?this.data.value?this.data.value[this.setting.key]:[]:"atom"===this.setting.type?this.data[this.setting.key]&&":"===this.data[this.setting.key][0]?this.data[this.setting.key].substr(1):this.data[this.setting.key]:Array.isArray(this.setting.type)&&this.setting.type.find(function(t){return Array.isArray(t)&&t.includes("list")})&&"string"==typeof this.data[this.setting.key]?[this.data[this.setting.key]]:this.data[this.setting.key]},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},keywordData:function(){return this.settingParent.length>0||Array.isArray(this.setting.type)&&this.setting.type.includes("tuple")&&this.setting.type.includes("list")?Array.isArray(this.data[this.setting.key])?this.data[this.setting.key]:[]:Array.isArray(this.data)?this.data:[]},reducedSelects:function(){return[":filters",":uploader",":federation_publisher_modules",":scrub_policy",":ttl_setters",":parsers",":providers",":method",":policies","Pleroma.Web.Auth.Authenticator"].includes(this.setting.key)||"Pleroma.Emails.Mailer"===this.settingGroup.key&&":adapter"===this.setting.key},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},isImageUrl:function(){return Array.isArray(this.setting.type)&&this.setting.type.includes("image")}},methods:{editableKeyword:function(t,e){return Array.isArray(e)&&(e.includes("map")&&e.includes("string")||e.includes("map")&&-1!==e.findIndex(function(t){return t.includes("list")&&t.includes("string")})||e.includes("keyword")&&e.includes("integer")||e.includes("keyword")&&e.includes("string")||e.includes("tuple")&&e.includes("list")||e.includes("keyword")&&-1!==e.findIndex(function(t){return t.includes("list")&&t.includes("string")}))},getFormattedDescription:function(t){return kt()(t)},processNestedData:function(t,e,i,n){var s=Object(g.e)(t,t,e,i,n.reverse(),this.settings,this.updatedSettings),a=s.valueForState,r=s.valueForUpdatedSettings,o=s.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:o.key,value:r,type:o.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:o.key,value:a})},removeSetting:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t.$confirm(t.$t("settings.removeSettingConfirmation"),{confirmButtonText:t.$t("users.ok"),cancelButtonText:t.$t("users.cancel"),type:"warning"}).then(r()(s.a.mark(function e(){var i;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.settingGroup.key?[{group:t.settingGroup.group,key:t.settingGroup.key,delete:!0,subkeys:[t.setting.key]}]:[{group:t.settingGroup.group,key:t.setting.key,delete:!0}],e.prev=1,e.next=4,t.$store.dispatch("RemoveSetting",i);case 4:e.next=9;break;case 6:return e.prev=6,e.t0=e.catch(1),e.abrupt("return");case 9:t.$message({type:"success",message:o.a.t("settings.successfullyRemoved")});case 10:case"end":return e.stop()}},e,null,[[1,6]])}))).catch(function(){t.$message({type:"info",message:t.$t("users.canceled")})});case 1:case"end":return e.stop()}},e)}))()},renderMultipleSelect:function(t){return!this.reducedSelects&&Array.isArray(t)&&":backends"!==this.setting.key&&":args"!==this.setting.key&&(t.includes("module")||t.includes("list")&&t.includes("string")||t.includes("list")&&t.includes("atom")||!t.includes("keyword")&&t.includes("regex")&&t.includes("string"))},renderSingleSelect:function(t){return!this.reducedSelects&&("module"===t||Array.isArray(t)&&t.includes("atom")&&t.includes("dropdown"))},senderInput:function(t){var e=t.key,i=t.type;return Array.isArray(i)&&i.includes("string")&&i.includes("tuple")&&":sender"===e},update:function(t,e,i,n,s,a,r){var o=this.renderSingleSelect(a)?Object(g.b)(t):t;r?this.processNestedData(o,e,i,n):this.updateSetting(o,e,i,s,a)},updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},Ot=(i("y7KD"),Object(m.a)(_t,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"input-container"},["keyword"===t.setting.type?i("div",{staticClass:"keyword-container"},[i("el-form-item",{class:t.labelClass,style:"margin-left:"+t.margin+"px;margin-bottom:0",attrs:{"label-width":t.customLabelWidth,"data-search":t.setting.key||t.setting.group}},[i("span",{attrs:{slot:"label"},slot:"label"},[t._v("\n "+t._s(t.setting.label)+"\n "),t.canBeDeleted&&t.isDesktop?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1)]),t._v(" "),t._l(t.setting.children,function(e){return i("el-form-item",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,"setting-parent":t.settingParent.concat([e]),setting:e,data:t.data[t.setting.key],"custom-label-width":t.isMobile?"100px":"120px","label-class":"keyword"===e.type?"center-label":"",margin:t.isDesktop?t.margin+15:t.margin+8,nested:!0}})],1)})],2):t._e(),t._v(" "),"keyword"!==t.setting.type?i("el-form-item",{class:t.labelClass,style:t.isDesktop?"":"margin-left:"+t.margin+"px",attrs:{"label-width":t.customLabelWidth}},[i("span",{attrs:{slot:"label"},slot:"label"},[t._v("\n "+t._s(t.setting.label)+"\n "),t.canBeDeleted&&(t.isDesktop||t.isMobile)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1),t._v(" "),i("div",{staticClass:"input-row"},[t.isImageUrl?i("image-upload-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting,"input-value":t.inputValue},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):"string"===t.setting.type||Array.isArray(t.setting.type)&&t.setting.type.includes("string")&&t.setting.type.includes("atom")?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,placeholder:t.setting.suggestions?t.setting.suggestions[0]:null,"data-search":t.setting.key||t.setting.group},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),"boolean"!==t.setting.type||[":registrations_open",":invites_enabled"].includes(t.setting.key)?t._e():i("el-switch",{staticClass:"switch-input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}),t._v(" "),"integer"===t.setting.type?i("el-input-number",{attrs:{value:null===t.inputValue?void 0:t.inputValue,placeholder:t.setting.suggestions?t.setting.suggestions[0].toString():null,min:0,size:t.isDesktop?"large":"medium","data-search":t.setting.key||t.setting.group},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),t.renderSingleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:!1===t.inputValue?"false":t.inputValue,"data-search":t.setting.key||t.setting.group,clearable:""},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},t._l(t.setting.suggestions,function(t,e){return i("el-option",{key:e,attrs:{value:t}})}),1):t._e(),t._v(" "),t.renderMultipleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},t._l(t.setting.suggestions,function(t,e){return i("el-option",{key:e,attrs:{value:t}})}),1):t._e(),t._v(" "),":ip"===t.setting.key?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group,placeholder:"xxx.xxx.xxx.xx"},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),"atom"===t.setting.type?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,placeholder:t.setting.suggestions&&t.setting.suggestions[0]?t.setting.suggestions[0].substr(1):"","data-search":t.setting.key||t.setting.group},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},[i("template",{slot:"prepend"},[t._v(":")])],2):t._e(),t._v(" "),t.editableKeyword(t.setting.key,t.setting.type)?i("editable-keyword-input",{attrs:{data:t.keywordData,"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),":icons"===t.setting.key?i("icons-input",{attrs:{data:t.iconsData,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.booleanCombinedInput?i("link-formatter-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":mascots"===t.setting.key?i("mascots-input",{attrs:{data:t.keywordData,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":proxy_url"===t.setting.key?i("proxy-url-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),":prune"===t.setting.key?i("prune-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":rate_limit"===t.settingGroup.key?i("rate-limit-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),[":registrations_open",":invites_enabled"].includes(t.setting.key)?i("reg-invites-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.reducedSelects?i("select-input-with-reduced-labels",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":backends"===t.setting.key||":args"===t.setting.key?i("specific-multiple-select",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.senderInput(t.setting)?i("sender-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),t.canBeDeleted&&t.isTablet?i("el-tooltip",{staticClass:"delete-setting-button-container",attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1),t._v(" "),t.setting.description&&"keyword"!==t.setting.type?i("div",{staticClass:"expl",domProps:{innerHTML:t._s(t.getFormattedDescription(t.setting.description))}}):t._e()]):t._e()],1)},[],!1,null,null,null));Ot.options.__file="Inputs.vue";var Pt={name:"Setting",components:{Inputs:Ot.exports},props:{settingGroup:{type:Object,default:function(){return{}}},data:{type:Object,default:function(){return{}}}},computed:{emailAdapterChildren:function(){var t=this.$store.state.settings.settings[":pleroma"]["Pleroma.Emails.Mailer"][":adapter"];return this.settingGroup.children.filter(function(e){return e.group&&e.group.includes(t)})},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.settings.loading}},methods:{canBeDeleted:function(t){var e=this.settingGroup,i=e.group,n=e.key||t;return S.a.get(this.$store.state.settings.db,[i,n])&&this.$store.state.settings.db[i][n].includes(t)},compound:function(t){var e=t.type;t.key,t.children;return"keyword"===e||"map"===e||e.includes("keyword")||e.includes("map")},divideSetting:function(t){return[":sslopts",":tlsopts",":adapter",":poll_limits",":queues",":styling",":invalidation",":multi_factor_authentication"].includes(t)},getFormattedDescription:function(t){return kt()(t)},notLastInGroup:function(t){return this.settingGroup.children.slice(-1)[0].key!==t},removeSetting:function(t){var e=this;return r()(s.a.mark(function i(){return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:e.$confirm(e.$t("settings.removeSettingConfirmation"),{confirmButtonText:e.$t("users.ok"),cancelButtonText:e.$t("users.cancel"),type:"warning"}).then(r()(s.a.mark(function i(){var n;return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=e.settingGroup.key?[{group:e.settingGroup.group,key:e.settingGroup.key,delete:!0,subkeys:[t]}]:[{group:e.settingGroup.group,key:t,delete:!0}],i.prev=1,i.next=4,e.$store.dispatch("RemoveSetting",n);case 4:i.next=9;break;case 6:return i.prev=6,i.t0=i.catch(1),i.abrupt("return");case 9:e.$message({type:"success",message:o.a.t("settings.successfullyRemoved")});case 10:case"end":return i.stop()}},i,null,[[1,6]])}))).catch(function(){e.$message({type:"info",message:e.$t("users.canceled")})});case 1:case"end":return i.stop()}},i)}))()},updateSetting:function(t,e,i){this.$store.dispatch("UpdateSettings",{tab:e,data:u()({},i,t)})}}},wt=(i("pnah"),Object(m.a)(Pt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",[t.settingGroup.label||t.settingGroup.description?i("el-form-item",{staticClass:"description-container",attrs:{"data-search":t.settingGroup.key||t.settingGroup.group}},[t.settingGroup.label?i("span",{staticClass:"setting-label"},[t._v(t._s(t.settingGroup.label))]):t._e(),t._v(" "),t.settingGroup.description?i("span",{staticClass:"expl no-top-margin",domProps:{innerHTML:t._s(t.getFormattedDescription(t.settingGroup.description))}}):t._e()]):t._e(),t._v(" "),"Pleroma.Emails.Mailer"===t.settingGroup.key?i("div",[t._l(t.settingGroup.children.filter(function(t){return!t.group}),function(e){return i("div",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data}})],1)}),t._v(" "),t._l(t.emailAdapterChildren,function(e){return i("div",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data}})],1)})],2):i("div",t._l(t.settingGroup.children,function(e){return i("div",{key:e.key},[t.compound(e)?t._e():i("div",[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data,nested:!1}})],1),t._v(" "),t.compound(e)?i("div",[t.divideSetting(e.key)?i("el-divider",{staticClass:"divider"}):t._e(),t._v(" "),e.children?i("div",[i("div",{staticClass:"input-container"},[i("el-form-item",{staticClass:"grouped-settings-header",attrs:{"data-search":e.key||e.group}},[i("span",{attrs:{slot:"label"},slot:"label"},[t.isDesktop&&t.canBeDeleted(e.key)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticStyle:{"margin-left":"5px"},attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:function(i){return t.removeSetting(e.key)}}})],1):t._e()],1),t._v(" "),i("span",{staticClass:"label-font"},[t._v(t._s(e.label))]),t._v(" "),t.canBeDeleted(e.key)&&(t.isMobile||t.isTablet)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"settings-delete-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:function(i){return t.removeSetting(e.key)}}})],1):t._e()],1)],1),t._v(" "),t._l(e.children,function(n){return i("div",{key:n.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,"setting-parent":[e,n],setting:n,data:t.data[e.key],nested:!0}})],1)})],2):i("div",[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data[e.key],nested:!0}})],1),t._v(" "),t.notLastInGroup(e.key)?i("el-divider",{staticClass:"divider"}):t._e()],1):t._e()])}),0)],1)},[],!1,null,null,null));wt.options.__file="Setting.vue";var jt=wt.exports;function St(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Dt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?St(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):St(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var xt={name:"ActivityPub",components:{Setting:jt},computed:Dt(Dt({},Object(c.b)(["settings"])),{},{activitypub:function(){return this.settings.description.find(function(t){return":activitypub"===t.key})},activitypubData:function(){return S.a.get(this.settings.settings,[":pleroma",":activitypub"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading},user:function(){return this.settings.description.find(function(t){return":user"===t.key})},userData:function(){return S.a.get(this.settings.settings,[":pleroma",":user"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Ct=(i("qEST"),Object(m.a)(xt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.activitypubData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":":activitypub"}},[i("setting",{attrs:{"setting-group":t.activitypub,data:t.activitypubData}})],1),t._v(" "),t.user?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.userData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":":user"}},[i("setting",{attrs:{"setting-group":t.user,data:t.userData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Ct.options.__file="ActivityPub.vue";var $t=Ct.exports;function Ut(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Et(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ut(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ut(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var It={name:"Authentication",components:{Setting:jt},computed:Et(Et({},Object(c.b)(["settings"])),{},{auth:function(){return this.settings.description.find(function(t){return":auth"===t.key})},authData:function(){return S.a.get(this.settings.settings,[":pleroma",":auth"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},ldap:function(){return this.settings.description.find(function(t){return":ldap"===t.key})},ldapData:function(){return S.a.get(this.settings.settings,[":pleroma",":ldap"])||{}},loading:function(){return this.settings.loading},oauth2:function(){return this.settings.description.find(function(t){return":oauth2"===t.key})},oauth2Data:function(){return S.a.get(this.settings.settings,[":pleroma",":oauth2"])||{}},pleromaAuthenticator:function(){return this.settings.description.find(function(t){return t.children&&"Pleroma.Web.Auth.Authenticator"===t.children[0].key})},pleromaAuthenticatorData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Auth.Authenticator"])||{}},restrictUnauthenticated:function(){return this.settings.description.find(function(t){return":restrict_unauthenticated"===t.key})},restrictUnauthenticatedData:function(){return S.a.get(this.settings.settings,[":pleroma",":restrict_unauthenticated"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Wt=(i("4b9x"),Object(m.a)(It,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.pleromaAuthenticatorData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.pleromaAuthenticator,data:t.pleromaAuthenticatorData}})],1),t._v(" "),t.pleromaAuthenticator?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.authData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.auth,data:t.authData}})],1),t._v(" "),t.auth?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.ldapData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.ldap,data:t.ldapData}})],1),t._v(" "),t.ldap?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.oauth2Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.oauth2,data:t.oauth2Data}})],1),t._v(" "),t.oauth2?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.restrictUnauthenticatedData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.restrictUnauthenticated,data:t.restrictUnauthenticatedData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Wt.options.__file="Authentication.vue";var Tt=Wt.exports;function Mt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function At(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Mt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Mt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Gt={name:"Captcha",components:{Setting:jt},computed:At(At({},Object(c.b)(["settings"])),{},{captcha:function(){return this.settings.description.find(function(t){return"Pleroma.Captcha"===t.key})},captchaData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Captcha"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},kocaptcha:function(){return this.settings.description.find(function(t){return"Pleroma.Captcha.Kocaptcha"===t.key})},kocaptchaData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Captcha.Kocaptcha"])||{}},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Lt=(i("2q6O"),Object(m.a)(Gt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.captchaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.captcha,data:t.captchaData}})],1),t._v(" "),t.captcha?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.kocaptchaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.kocaptcha,data:t.kocaptchaData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Lt.options.__file="Captcha.vue";var Ft=Lt.exports;function Rt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Vt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Rt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Rt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Kt={name:"Esshd",components:{Setting:jt},computed:Vt(Vt({},Object(c.b)(["settings"])),{},{esshd:function(){return this.settings.description.find(function(t){return":esshd"===t.group})},esshdData:function(){return S.a.get(this.settings.settings,[":esshd"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{toggleEsshd:function(t){this.$store.dispatch("ToggleEsshd",t)},updateSetting:function(t,e,i){this.$store.dispatch("UpdateSettings",{tab:e,data:u()({},i,t)})},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},zt=(i("FCne"),Object(m.a)(Kt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.esshdData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.esshd,data:t.esshdData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));zt.options.__file="Esshd.vue";var qt=zt.exports;function Nt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Bt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Nt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Nt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Qt={name:"Frontend",components:{Setting:jt},computed:Bt(Bt({},Object(c.b)(["settings"])),{},{assets:function(){return this.settings.description.find(function(t){return":assets"===t.key})},assetsData:function(){return S.a.get(this.settings.settings,[":pleroma",":assets"])||{}},chat:function(){return this.settings.description.find(function(t){return":chat"===t.key})},chatData:function(){return S.a.get(this.settings.settings,[":pleroma",":chat"])||{}},emoji:function(){return this.settings.description.find(function(t){return":emoji"===t.key})},emojiData:function(){return S.a.get(this.settings.settings,[":pleroma",":emoji"])||{}},frontend:function(){return this.settings.description.find(function(t){return":frontend_configurations"===t.key})},frontendData:function(){return S.a.get(this.settings.settings,[":pleroma",":frontend_configurations"])||{}},frontends:function(){return this.settings.description.find(function(t){return":frontends"===t.key})},frontendsData:function(){return S.a.get(this.settings.settings,[":pleroma",":frontends"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},markup:function(){return this.settings.description.find(function(t){return":markup"===t.key})},markupData:function(){return S.a.get(this.settings.settings,[":pleroma",":markup"])||{}},preload:function(){return this.settings.description.find(function(t){return"Pleroma.Web.Preload"===t.key})},preloadData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Preload"])||{}},staticFe:function(){return this.settings.description.find(function(t){return":static_fe"===t.key})},staticFeData:function(){return S.a.get(this.settings.settings,[":pleroma",":static_fe"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Ht=(i("hVXW"),Object(m.a)(Qt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.frontendData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.frontend,data:t.frontendData}})],1),t._v(" "),t.frontend?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.staticFeData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.staticFe,data:t.staticFeData}})],1),t._v(" "),t.staticFe?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.frontendsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.frontends,data:t.frontendsData}})],1),t._v(" "),t.frontends?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.assetsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.assets,data:t.assetsData}})],1),t._v(" "),t.assets?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.emojiData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.emoji,data:t.emojiData}})],1),t._v(" "),t.emoji?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.chatData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.chat,data:t.chatData}})],1),t._v(" "),t.chat?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.markupData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.markup,data:t.markupData}})],1),t._v(" "),t.preload?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.preloadData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.preload,data:t.preloadData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Ht.options.__file="Frontend.vue";var Jt=Ht.exports;function Yt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Xt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Yt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Yt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Zt={name:"Gopher",components:{Setting:jt},computed:Xt(Xt({},Object(c.b)(["settings"])),{},{gopher:function(){return this.settings.description.find(function(t){return":gopher"===t.key})},gopherData:function(){return S.a.get(this.settings.settings,[":pleroma",":gopher"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},te=(i("w5cJ"),Object(m.a)(Zt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.gopherData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.gopher,data:t.gopherData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));te.options.__file="Gopher.vue";var ee=te.exports;function ie(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ne(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ie(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ie(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var se={name:"HTTP",components:{Setting:jt},computed:ne(ne({},Object(c.b)(["settings"])),{},{corsPlug:function(){return this.settings.description.find(function(t){return":cors_plug"===t.group})},corsPlugData:function(){return S.a.get(this.settings.settings,[":cors_plug"])||{}},http:function(){return this.settings.description.find(function(t){return":http"===t.key})},httpData:function(){return S.a.get(this.settings.settings,[":pleroma",":http"])||{}},httpSecurity:function(){return this.settings.description.find(function(t){return":http_security"===t.key})},httpSecurityData:function(){return S.a.get(this.settings.settings,[":pleroma",":http_security"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},webCacheTtl:function(){return this.settings.description.find(function(t){return":web_cache_ttl"===t.key})},webCacheTtlData:function(){return S.a.get(this.settings.settings,[":pleroma",":web_cache_ttl"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ae=(i("KFE3"),Object(m.a)(se,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.httpData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.http,data:t.httpData}})],1),t._v(" "),t.http?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.corsPlugData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.corsPlug,data:t.corsPlugData}})],1),t._v(" "),t.corsPlug?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.httpSecurityData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.httpSecurity,data:t.httpSecurityData}})],1),t._v(" "),t.httpSecurity?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.webCacheTtlData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.webCacheTtl,data:t.webCacheTtlData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ae.options.__file="Http.vue";var re=ae.exports;function oe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function le(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?oe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):oe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ue={name:"Instance",components:{Setting:jt},computed:le(le({},Object(c.b)(["settings"])),{},{adminToken:function(){return this.settings.description.find(function(t){return t.children&&":admin_token"===t.children[0].key})},adminTokenData:function(){return S.a.get(this.settings.settings,[":pleroma",":admin_token"])||{}},favicons:function(){return this.settings.description.find(function(t){return":instances_favicons"===t.key})},faviconsData:function(){return S.a.get(this.settings.settings,[":pleroma",":instances_favicons"])||{}},feed:function(){return this.settings.description.find(function(t){return":feed"===t.key})},feedData:function(){return S.a.get(this.settings.settings,[":pleroma",":feed"])||{}},instance:function(){return this.settings.description.find(function(t){return":instance"===t.key})},instanceData:function(){return S.a.get(this.settings.settings,[":pleroma",":instance"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},manifest:function(){return this.settings.description.find(function(t){return":manifest"===t.key})},manifestData:function(){return S.a.get(this.settings.settings,[":pleroma",":manifest"])||{}},pleromaUser:function(){return this.settings.description.find(function(t){return"Pleroma.User"===t.key})},pleromaUserData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.User"])||{}},scheduledActivity:function(){return this.$store.state.settings.description.find(function(t){return"Pleroma.ScheduledActivity"===t.key})},scheduledActivityData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.ScheduledActivity"])||{}},streamer:function(){return this.$store.state.settings.description.find(function(t){return":streamer"===t.key})},streamerData:function(){return S.a.get(this.settings.settings,[":pleroma",":streamer"])||{}},uriSchemes:function(){return this.settings.description.find(function(t){return":uri_schemes"===t.key})},uriSchemesData:function(){return S.a.get(this.settings.settings,[":pleroma",":uri_schemes"])||{}},welcome:function(){return this.settings.description.find(function(t){return":welcome"===t.key})},welcomeData:function(){return S.a.get(this.settings.settings,[":pleroma",":welcome"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ce=(i("e0P1"),Object(m.a)(ue,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.instanceData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.instance,data:t.instanceData}})],1),t._v(" "),t.instance?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.adminTokenData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.adminToken,data:t.adminTokenData}})],1),t._v(" "),t.adminToken?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.welcomeData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.welcome,data:t.welcomeData}})],1),t._v(" "),t.welcome?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.scheduledActivityData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.scheduledActivity,data:t.scheduledActivityData}})],1),t._v(" "),t.scheduledActivity?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.manifestData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.manifest,data:t.manifestData}})],1),t._v(" "),t.manifest?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.pleromaUserData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":"Pleroma.User"}},[i("setting",{attrs:{"setting-group":t.pleromaUser,data:t.pleromaUserData}})],1),t._v(" "),t.pleromaUser?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.faviconsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.favicons,data:t.faviconsData}})],1),t._v(" "),t.favicons?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uriSchemesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uriSchemes,data:t.uriSchemesData}})],1),t._v(" "),t.uriSchemes?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.feedData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.feed,data:t.feedData}})],1),t._v(" "),t.feed?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.streamerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.streamer,data:t.streamerData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ce.options.__file="Instance.vue";var pe=ce.exports;function de(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ge(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?de(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):de(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var be={name:"JobQueue",components:{Setting:jt},computed:ge(ge({},Object(c.b)(["settings"])),{},{activityExpiration:function(){return this.settings.description.find(function(t){return"Pleroma.Workers.PurgeExpiredActivity"===t.key})},activityExpirationData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Workers.PurgeExpiredActivity"])||{}},connectionsPools:function(){return this.settings.description.find(function(t){return":connections_pool"===t.key})},connectionsPoolsData:function(){return S.a.get(this.settings.settings,[":pleroma",":connections_pool"])||{}},hackneyPools:function(){return this.settings.description.find(function(t){return":hackney_pools"===t.key})},hackneyPoolsData:function(){return S.a.get(this.settings.settings,[":pleroma",":hackney_pools"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},obanQueues:function(){return this.settings.description.find(function(t){return"Oban"===t.key})},obanQueuesData:function(){return S.a.get(this.settings.settings,[":pleroma","Oban"])||{}},pools:function(){return this.settings.description.find(function(t){return":pools"===t.key})},poolsData:function(){return S.a.get(this.settings.settings,[":pleroma",":pools"])||{}},workers:function(){return this.settings.description.find(function(t){return":workers"===t.key})},workersData:function(){return S.a.get(this.settings.settings,[":pleroma",":workers"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},he=(i("lNpP"),Object(m.a)(be,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.obanQueuesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.obanQueues,data:t.obanQueuesData}})],1),t._v(" "),t.obanQueues?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.workersData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.workers,data:t.workersData}})],1),t._v(" "),t.workers?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.activityExpirationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.activityExpiration,data:t.activityExpirationData}})],1),t._v(" "),t.activityExpiration?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.connectionsPoolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.connectionsPools,data:t.connectionsPoolsData}})],1),t._v(" "),t.connectionsPools?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.poolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.pools,data:t.poolsData}})],1),t._v(" "),t.pools?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.hackneyPoolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.hackneyPools,data:t.hackneyPoolsData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));he.options.__file="JobQueue.vue";var fe=he.exports;function me(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ve(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?me(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):me(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ye={name:"LinkFormatter",components:{Setting:jt},computed:ve(ve({},Object(c.b)(["settings"])),{},{linkFormatter:function(){return this.settings.description.find(function(t){return"Pleroma.Formatter"===t.key})},linkFormatterData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Formatter"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ke=(i("vnTa"),Object(m.a)(ye,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.linkFormatterData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.linkFormatter,data:t.linkFormatterData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ke.options.__file="LinkFormatter.vue";var _e=ke.exports;function Oe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Pe(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Oe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Oe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var we={name:"Logger",components:{Setting:jt},computed:Pe(Pe({},Object(c.b)(["settings"])),{},{console:function(){return this.settings.description.find(function(t){return":console"===t.key})},consoleData:function(){return S.a.get(this.settings.settings,[":logger",":console"])||{}},exsyslogger:function(){return this.settings.description.find(function(t){return":ex_syslogger"===t.key})},exsysloggerData:function(){return S.a.get(this.settings.settings,[":logger",":ex_syslogger"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},logger:function(){return this.settings.description.find(function(t){return":logger"===t.group})},loggerData:function(){return S.a.get(this.settings.settings,[":logger",":backends"])||{}},quack:function(){return this.settings.description.find(function(t){return":quack"===t.group})},quackData:function(){return S.a.get(this.settings.settings,[":quack"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},je=(i("mADP"),Object(m.a)(we,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.loggerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.logger,data:t.loggerData}})],1),t._v(" "),t.logger?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.consoleData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.console,data:t.consoleData}})],1),t._v(" "),t.console?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.exsysloggerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.exsyslogger,data:t.exsysloggerData}})],1),t._v(" "),t.exsyslogger?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.quackData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.quack,data:t.quackData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));je.options.__file="Logger.vue";var Se=je.exports;function De(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function xe(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?De(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):De(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Ce={name:"Mailer",components:{Setting:jt},computed:xe(xe({},Object(c.b)(["settings"])),{},{emailNotifications:function(){return this.settings.description.find(function(t){return":email_notifications"===t.key})},emailNotificationsData:function(){return S.a.get(this.settings.settings,[":pleroma",":email_notifications"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading},mailer:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.Mailer"===t.key})},mailerData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.Mailer"])||{}},newUsersDigestEmail:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.NewUsersDigestEmail"===t.key})},newUsersDigestEmailData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.NewUsersDigestEmail"])||{}},swoosh:function(){return this.settings.description.find(function(t){return":swoosh"===t.group})},swooshData:function(){return S.a.get(this.settings.settings,[":swoosh"])||{}},userEmail:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.UserEmail"===t.key})},userEmailData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.UserEmail"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},$e=(i("PygS"),Object(m.a)(Ce,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.mailerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mailer,data:t.mailerData}})],1),t._v(" "),t.mailer?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.swooshData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.swoosh,data:t.swooshData}})],1),t._v(" "),t.swoosh?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.emailNotificationsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.emailNotifications,data:t.emailNotificationsData}})],1),t._v(" "),t.emailNotifications?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.userEmailData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.userEmail,data:t.userEmailData}})],1),t._v(" "),t.userEmail?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.newUsersDigestEmailData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.newUsersDigestEmail,data:t.newUsersDigestEmailData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));$e.options.__file="Mailer.vue";var Ue=$e.exports;function Ee(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ie(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ee(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ee(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var We={name:"MediaProxy",components:{Setting:jt},computed:Ie(Ie({},Object(c.b)(["settings"])),{},{httpInvalidation:function(){return this.settings.description.find(function(t){return"Pleroma.Web.MediaProxy.Invalidation.Http"===t.key})},httpInvalidationData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.MediaProxy.Invalidation.Http"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mediaPreviewProxy:function(){return this.settings.description.find(function(t){return":media_preview_proxy"===t.key})},mediaPreviewProxyData:function(){return S.a.get(this.settings.settings,[":pleroma",":media_preview_proxy"])||{}},mediaProxy:function(){return this.settings.description.find(function(t){return":media_proxy"===t.key})},mediaProxyData:function(){return S.a.get(this.settings.settings,[":pleroma",":media_proxy"])||{}},scriptInvalidation:function(){return this.settings.description.find(function(t){return"Pleroma.Web.MediaProxy.Invalidation.Script"===t.key})},scriptInvalidationData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.MediaProxy.Invalidation.Script"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Te=(i("UdS4"),Object(m.a)(We,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.mediaProxyData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mediaProxy,data:t.mediaProxyData}})],1),t._v(" "),t.mediaProxy?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.loading?t._e():i("el-form",{attrs:{model:t.mediaPreviewProxyData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mediaPreviewProxy,data:t.mediaPreviewProxyData}})],1),t._v(" "),t.mediaPreviewProxy?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.loading?t._e():i("el-form",{attrs:{model:t.httpInvalidationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.httpInvalidation,data:t.httpInvalidationData}})],1),t._v(" "),t.httpInvalidation?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.loading?t._e():i("el-form",{attrs:{model:t.scriptInvalidationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.scriptInvalidation,data:t.scriptInvalidationData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Te.options.__file="MediaProxy.vue";var Me=Te.exports;function Ae(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ge(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ae(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ae(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Le={name:"Metadata",components:{Setting:jt},computed:Ge(Ge({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},metadata:function(){return this.settings.description.find(function(t){return"Pleroma.Web.Metadata"===t.key})},metadataData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Metadata"])||{}},richMedia:function(){return this.settings.description.find(function(t){return":rich_media"===t.key})},richMediaData:function(){return S.a.get(this.settings.settings,[":pleroma",":rich_media"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Fe=(i("apN7"),Object(m.a)(Le,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.metadataData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.metadata,data:t.metadataData}})],1),t._v(" "),t.metadata?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.richMediaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.richMedia,data:t.richMediaData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Fe.options.__file="Metadata.vue";var Re=Fe.exports;function Ve(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ke(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ve(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ve(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ze={name:"MRF",components:{Setting:jt},computed:Ke(Ke({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mrfSettings:function(){return this.settings.description.filter(function(t){return"mrf"===t.tab})}}),methods:{getSettingData:function(t){return S.a.get(this.settings.settings,[t.group,t.key])||{}},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()},showMrfPolicy:function(t){var e=S.a.get(this.settings.settings,[":pleroma",":mrf",":policies"]),i=this.mrfSettings.reduce(function(t,e){var i=e.key,n=e.related_policy;return":mrf"!==i&&(t[i]=n),t},{});return!Object.keys(i).includes(t)||e.includes(i[t])}}},qe=(i("h9z7"),Object(m.a)(ze,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t._l(t.mrfSettings,function(e){return i("div",{key:e.key},[t.showMrfPolicy(e.key)?i("el-form",{attrs:{model:t.getSettingData(e),"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":e,data:t.getSettingData(e)}}),t._v(" "),e?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e()],1)}),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],2)},[],!1,null,null,null));qe.options.__file="MRF.vue";var Ne=qe.exports;function Be(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Qe(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Be(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Be(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var He={name:"Other",components:{Setting:jt},computed:Qe(Qe({},Object(c.b)(["settings"])),{},{castAndValidate:function(){return this.settings.description.find(function(t){return"Pleroma.Web.ApiSpec.CastAndValidate"===t.key})},castAndValidateData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.ApiSpec.CastAndValidate"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mimeTypes:function(){return this.settings.description.find(function(t){return":mime"===t.group})},mimeTypesData:function(){return S.a.get(this.settings.settings,[":mime"])||{}},modules:function(){return this.settings.description.find(function(t){return":modules"===t.key})},modulesData:function(){return S.a.get(this.settings.settings,[":pleroma",":modules"])||{}},remoteIp:function(){return this.settings.description.find(function(t){return"Pleroma.Web.Plugs.RemoteIp"===t.key})},remoteIpData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Plugs.RemoteIp"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Je=(i("gFOO"),Object(m.a)(He,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.mimeTypesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mimeTypes,data:t.mimeTypesData}})],1),t._v(" "),t.mimeTypes?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.remoteIpData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.remoteIp,data:t.remoteIpData}})],1),t._v(" "),t.remoteIpData?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.modulesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.modules,data:t.modulesData}})],1),t._v(" "),t.castAndValidate?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.castAndValidateData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.castAndValidate,data:t.castAndValidateData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Je.options.__file="Other.vue";var Ye=Je.exports;function Xe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ze(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Xe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Xe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ti={name:"RateLimiters",components:{Setting:jt},computed:Ze(Ze({},Object(c.b)(["settings"])),{},{rateLimiters:function(){return this.settings.description.find(function(t){return":rate_limit"===t.key})},rateLimitersData:function(){return S.a.get(this.settings.settings,[":pleroma",":rate_limit"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ei=(i("WvM+"),Object(m.a)(ti,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.rateLimitersData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.rateLimiters,data:t.rateLimitersData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ei.options.__file="RateLimiters.vue";var ii=ei.exports,ni={name:"Relays",data:function(){return{newRelay:""}},computed:{getLabelWidth:function(){return this.isDesktop?"130px":"85px"},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.relays.loading},relays:function(){return this.$store.state.relays.fetchedRelays}},mounted:function(){this.$store.dispatch("FetchRelays")},methods:{followRelay:function(){this.$store.dispatch("AddRelay",this.newRelay),this.newRelay=""},deleteRelay:function(t){this.$store.dispatch("DeleteRelay",t)}}},si=(i("J7+w"),Object(m.a)(ni,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"relays-container"},[i("div",{staticClass:"follow-relay-container"},[i("el-input",{staticClass:"follow-relay",attrs:{placeholder:t.$t("settings.followRelay")},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.followRelay(e)}},model:{value:t.newRelay,callback:function(e){t.newRelay=e},expression:"newRelay"}}),t._v(" "),i("el-button",{nativeOn:{click:function(e){return t.followRelay(e)}}},[t._v(t._s(t.$t("settings.follow")))])],1),t._v(" "),i("el-table",{attrs:{data:t.relays}},[i("el-table-column",{attrs:{label:t.$t("settings.instanceUrl"),prop:"actor"}}),t._v(" "),i("el-table-column",{attrs:{label:t.$t("settings.followedBack"),width:t.getLabelWidth,prop:"followed_back",align:"center"},scopedSlots:t._u([{key:"default",fn:function(t){return[i("i",{class:t.row.followed_back?"el-icon-check":"el-icon-minus"})]}}],null,!1,237257305)}),t._v(" "),i("el-table-column",{attrs:{label:t.$t("table.actions"),width:t.getLabelWidth,fixed:"right",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[i("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(i){return t.deleteRelay(e.row.actor)}}},[t._v("\n "+t._s(t.$t("table.unfollow"))+"\n ")])]}}],null,!1,877363589)})],1)],1)},[],!1,null,null,null));si.options.__file="Relays.vue";var ai=si.exports;function ri(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function oi(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ri(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ri(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var li={name:"Upload",components:{Setting:jt},computed:oi(oi({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},s3:function(){return this.settings.description.find(function(t){return":s3"===t.key})},s3Data:function(){return S.a.get(this.settings.settings,[":ex_aws",":s3"])||{}},showUploadersS3:function(){return"Pleroma.Uploaders.S3"===S.a.get(this.settings.settings,[":pleroma","Pleroma.Upload",":uploader"])},showUploadersLocal:function(){return"Pleroma.Uploaders.Local"===S.a.get(this.settings.settings,[":pleroma","Pleroma.Upload",":uploader"])},upload:function(){return this.settings.description.find(function(t){return"Pleroma.Upload"===t.key})},uploadData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Upload"])||{}},uploadersLocal:function(){return this.settings.description.find(function(t){return"Pleroma.Uploaders.Local"===t.key})},uploadersLocalData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Uploaders.Local"])||{}},uploadersS3:function(){return this.settings.description.find(function(t){return"Pleroma.Uploaders.S3"===t.key})},uploadersS3Data:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Uploaders.S3"])||{}},uploadFilterMogrify:function(){return this.settings.description.find(function(t){return"Pleroma.Upload.Filter.Mogrify"===t.key})},uploadFilterMogrifyData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Upload.Filter.Mogrify"])||{}},uploadAnonymizeFilename:function(){return this.settings.description.find(function(t){return"Pleroma.Upload.Filter.AnonymizeFilename"===t.key})},uploadAnonymizeFilenameData:function(){return S.a.get(this.settings.settings,[":pleroma","Pleroma.Upload.Filter.AnonymizeFilename"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ui=(i("DPt0"),Object(m.a)(li,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.uploadData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.upload,data:t.uploadData}})],1),t._v(" "),t.upload?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.showUploadersLocal?i("el-form",{attrs:{model:t.uploadersLocalData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadersLocal,data:t.uploadersLocalData}}),t._v(" "),t.uploadersLocal?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),t.showUploadersS3?i("el-form",{attrs:{model:t.s3Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.s3,data:t.s3Data}}),t._v(" "),t.s3?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),t.showUploadersS3?i("el-form",{attrs:{model:t.uploadersS3Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadersS3,data:t.uploadersS3Data}}),t._v(" "),t.uploadersS3?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uploadFilterMogrifyData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadFilterMogrify,data:t.uploadFilterMogrifyData}})],1),t._v(" "),t.uploadFilterMogrify?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uploadAnonymizeFilenameData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadAnonymizeFilename,data:t.uploadAnonymizeFilenameData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ui.options.__file="Upload.vue";var ci=ui.exports;function pi(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function di(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?pi(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):pi(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var gi={name:"WebPush",components:{Setting:jt},computed:di(di({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},vapidDetails:function(){return this.settings.description.find(function(t){return":vapid_details"===t.key})},vapidDetailsData:function(){return S.a.get(this.settings.settings,[":web_push_encryption",":vapid_details"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},bi=(i("+qaP"),Object(m.a)(gi,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.vapidDetailsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.vapidDetails,data:t.vapidDetailsData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));bi.options.__file="WebPush.vue";var hi=bi.exports,fi={components:{ActivityPub:$t,Authentication:Tt,Captcha:Ft,Esshd:qt,Frontend:Jt,Gopher:ee,Http:re,Instance:pe,JobQueue:fe,LinkFormatter:_e,Logger:Se,Mailer:Ue,MediaProxy:Me,Metadata:Re,Mrf:Ne,Other:Ye,RateLimiters:ii,Relays:ai,RebootButton:i("rIUS").a,Upload:ci,WebPush:hi},data:function(){return{options:[{value:"activityPub",label:o.a.t("settings.activityPub")},{value:"auth",label:o.a.t("settings.auth")},{value:"linkFormatter",label:o.a.t("settings.linkFormatter")},{value:"esshd",label:o.a.t("settings.esshd")},{value:"captcha",label:o.a.t("settings.captcha")},{value:"frontend",label:o.a.t("settings.frontend")},{value:"gopher",label:o.a.t("settings.gopher")},{value:"http",label:o.a.t("settings.http")},{value:"instance",label:o.a.t("settings.instance")},{value:"jobQueue",label:o.a.t("settings.jobQueue")},{value:"logger",label:o.a.t("settings.logger")},{value:"mailer",label:o.a.t("settings.mailer")},{value:"mediaProxy",label:o.a.t("settings.mediaProxy")},{value:"metadata",label:o.a.t("settings.metadata")},{value:"mrf",label:o.a.t("settings.mrf")},{value:"rateLimiters",label:o.a.t("settings.rateLimiters")},{value:"relays",label:o.a.t("settings.relays")},{value:"webPush",label:o.a.t("settings.webPush")},{value:"upload",label:o.a.t("settings.upload")},{value:"other",label:o.a.t("settings.other")}],searchQuery:""}},computed:{activeTab:{get:function(){return this.$store.state.settings.activeTab},set:function(t){this.$store.dispatch("SetActiveTab",t)}},configDisabled:function(){return this.$store.state.settings.configDisabled},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"header-sidebar-opened":"header-sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},rebootIsSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"reboot-sidebar-opened":"reboot-sidebar-closed"},searchData:function(){return this.$store.state.settings.searchData},tabs:function(){return function(t){return{"activity-pub":{label:"settings.activityPub",settings:[":activitypub",":user"]},authentication:{label:"settings.auth",settings:[":auth",":ldap",":oauth2","Pleroma.Web.Auth.Authenticator",":restrict_unauthenticated"]},esshd:{label:"settings.esshd",settings:[":esshd"]},captcha:{label:"settings.captcha",settings:["Pleroma.Captcha","Pleroma.Captcha.Kocaptcha"]},frontend:{label:"settings.frontend",settings:[":assets",":chat",":frontends",":emoji",":frontend_configurations",":markup",":static_fe"]},gopher:{label:"settings.gopher",settings:[":gopher"]},http:{label:"settings.http",settings:[":cors_plug",":http",":http_security",":web_cache_ttl"]},instance:{label:"settings.instance",settings:[":admin_token",":instance",":instances_favicons",":welcome",":manifest","Pleroma.User","Pleroma.ScheduledActivity",":uri_schemes",":feed",":streamer"]},"job-queue":{label:"settings.jobQueue",settings:["Pleroma.Workers.PurgeExpiredActivity",":connections_pool",":hackney_pools","Oban",":pools",":workers"]},"link-formatter":{label:"settings.linkFormatter",settings:["Pleroma.Formatter"]},logger:{label:"settings.logger",settings:[":console",":ex_syslogger",":quack",":logger"]},mailer:{label:"settings.mailer",settings:[":email_notifications","Pleroma.Emails.Mailer","Pleroma.Emails.UserEmail",":swoosh","Pleroma.Emails.NewUsersDigestEmail"]},"media-proxy":{label:"settings.mediaProxy",settings:[":media_proxy",":media_preview_proxy","Pleroma.Web.MediaProxy.Invalidation.Http","Pleroma.Web.MediaProxy.Invalidation.Script"]},metadata:{label:"settings.metadata",settings:["Pleroma.Web.Metadata",":rich_media"]},mrf:{label:"settings.mrf",settings:t.filter(function(t){return"mrf"===t.tab}).map(function(t){return t.key})},"rate-limiters":{label:"settings.rateLimiters",settings:[":rate_limit"]},relays:{label:"settings.relays",settings:["relays"]},"web-push":{label:"settings.webPush",settings:[":vapid_details"]},upload:{label:"settings.upload",settings:["Pleroma.Upload.Filter.AnonymizeFilename","Pleroma.Upload.Filter.Mogrify","Pleroma.Uploaders.S3","Pleroma.Uploaders.Local","Pleroma.Upload",":s3"]},other:{label:"settings.other",settings:[":mime","Pleroma.Web.Plugs.RemoteIp",":modules","Pleroma.Web.ApiSpec.CastAndValidate"]}}}(this.$store.state.settings.description)}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchSettings")},methods:{handleSearchSelect:function(t){var e=this;return r()(s.a.mark(function i(){var n,a;return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=Object.keys(e.tabs).find(function(i){return e.tabs[i].settings.includes(":pleroma"===t.group?t.key:t.group)}),i.next=3,e.$store.dispatch("SetActiveTab",n);case 3:(a=document.querySelector('[data-search="'.concat(t.key,'"]')))&&a.scrollIntoView({block:"start",behavior:"smooth"});case 5:case"end":return i.stop()}},i)}))()},querySearch:function(t,e){e(this.searchData.filter(function(e){return e.search.find(function(e){return e.includes(t.toLowerCase())})}).map(function(t){return{value:"".concat(t.label," in ").concat(t.groupLabel),group:t.groupKey,key:t.key}}))},settingsCantBeChanged:function(t){var e=this;return 0===t.filter(function(t){return[":esshd",":cors_plug",":quack",":logger",":swoosh",":mime"].includes(t)?-1!==e.$store.state.settings.description.findIndex(function(e){return e.group===t}):"Pleroma.Web.Auth.Authenticator"===t||":admin_token"===t?-1!==e.$store.state.settings.description.findIndex(function(e){return e.children[0].key===t}):"relays"===t?[t]:-1!==e.$store.state.settings.description.findIndex(function(e){return e.key===t})}).length}}},mi=(i("0FjT"),Object(m.a)(fi,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"settings-container",class:t.rebootIsSidebarOpen},[i("div",{staticClass:"reboot-button-container"},[i("reboot-button")],1),t._v(" "),t.isDesktop?i("div",[i("div",{staticClass:"settings-header-container",class:t.isSidebarOpen},[i("h1",{staticClass:"settings-header"},[t._v(t._s(t.$t("settings.settings")))]),t._v(" "),i("div",{staticClass:"docs-search-container"},[i("el-link",{attrs:{underline:!1,href:"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/",target:"_blank"}},[i("el-button",{staticClass:"settings-docs-button"},[i("span",[i("i",{staticClass:"el-icon-document"}),t._v("\n "+t._s(t.$t("settings.seeDocs"))+"\n ")])])],1),t._v(" "),i("el-autocomplete",{staticClass:"settings-search-input",attrs:{"fetch-suggestions":t.querySearch,"trigger-on-focus":!1,clearable:"",placeholder:"Search","prefix-icon":"el-icon-search"},on:{select:t.handleSearchSelect},model:{value:t.searchQuery,callback:function(e){t.searchQuery=e},expression:"searchQuery"}})],1)]),t._v(" "),i("el-tabs",{attrs:{"tab-position":"left"},model:{value:t.activeTab,callback:function(e){t.activeTab=e},expression:"activeTab"}},t._l(t.tabs,function(e,n){return i("el-tab-pane",{key:n,attrs:{label:t.$t(e.label),disabled:t.configDisabled||t.settingsCantBeChanged(e.settings),name:n,lazy:""}},[i(n,{tag:"component"})],1)}),1)],1):t._e(),t._v(" "),t.isMobile||t.isTablet?i("div",[i("div",{staticClass:"settings-header-container",class:t.isSidebarOpen},[i("h1",{staticClass:"settings-header"},[t._v(t._s(t.$t("settings.settings")))])]),t._v(" "),i("div",{staticClass:"nav-container"},[i("el-select",{staticClass:"settings-menu",attrs:{placeholder:"Select"},model:{value:t.activeTab,callback:function(e){t.activeTab=e},expression:"activeTab"}},t._l(t.options,function(e){return i("el-option",{key:e.value,attrs:{label:e.label,value:e.value,disabled:t.configDisabled}})}),1),t._v(" "),i("el-link",{attrs:{underline:!1,href:"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/",target:"_blank"}},[i("el-button",{staticClass:"settings-docs-button"},[i("span",[i("i",{staticClass:"el-icon-document"}),t._v("\n "+t._s(t.$t("settings.seeDocs"))+"\n ")])])],1)],1),t._v(" "),i("div",{staticClass:"settings-search-input-container"}),t._v(" "),"activityPub"===t.activeTab?i("activity-pub"):t._e(),t._v(" "),"auth"===t.activeTab?i("authentication"):t._e(),t._v(" "),"linkFormatter"===t.activeTab?i("link-formatter"):t._e(),t._v(" "),"esshd"===t.activeTab?i("esshd"):t._e(),t._v(" "),"captcha"===t.activeTab?i("captcha"):t._e(),t._v(" "),"frontend"===t.activeTab?i("frontend"):t._e(),t._v(" "),"gopher"===t.activeTab?i("gopher"):t._e(),t._v(" "),"http"===t.activeTab?i("http"):t._e(),t._v(" "),"instance"===t.activeTab?i("instance"):t._e(),t._v(" "),"jobQueue"===t.activeTab?i("job-queue"):t._e(),t._v(" "),"logger"===t.activeTab?i("logger"):t._e(),t._v(" "),"mailer"===t.activeTab?i("mailer"):t._e(),t._v(" "),"mediaProxy"===t.activeTab?i("media-proxy"):t._e(),t._v(" "),"metadata"===t.activeTab?i("metadata"):t._e(),t._v(" "),"mrf"===t.activeTab?i("mrf"):t._e(),t._v(" "),"rateLimiters"===t.activeTab?i("rate-limiters"):t._e(),t._v(" "),"relays"===t.activeTab?i("relays"):t._e(),t._v(" "),"webPush"===t.activeTab?i("web-push"):t._e(),t._v(" "),"upload"===t.activeTab?i("upload"):t._e(),t._v(" "),"other"===t.activeTab?i("other"):t._e()],1):t._e()])},[],!1,null,"82f78b3e",null));mi.options.__file="index.vue";e.default=mi.exports},apN7:function(t,e,i){"use strict";var n=i("9p49");i.n(n).a},dnRK:function(t,e,i){},e0P1:function(t,e,i){"use strict";var n=i("TudB");i.n(n).a},fyIw:function(t,e,i){},gFOO:function(t,e,i){"use strict";var n=i("jqM2");i.n(n).a},h9z7:function(t,e,i){"use strict";var n=i("TOIk");i.n(n).a},hVXW:function(t,e,i){"use strict";var n=i("uswN");i.n(n).a},irif:function(t,e,i){"use strict";var n=i("UtFC");i.n(n).a},jqM2:function(t,e,i){},lNpP:function(t,e,i){"use strict";var n=i("UbP/");i.n(n).a},ld6V:function(t,e,i){},mADP:function(t,e,i){"use strict";var n=i("qLeA");i.n(n).a},mGnP:function(t,e,i){"use strict";var n=i("smg2");i.n(n).a},mSK5:function(t,e,i){},nKzF:function(t,e,i){"use strict";var n=i("77pt");i.n(n).a},"ncj/":function(t,e,i){},pPJ2:function(t,e,i){},pnah:function(t,e,i){"use strict";var n=i("JqY8");i.n(n).a},qEST:function(t,e,i){"use strict";var n=i("4NUT");i.n(n).a},qLeA:function(t,e,i){},rKzx:function(t,e,i){},rdar:function(t,e,i){"use strict";var n=i("NiUD");i.n(n).a},smg2:function(t,e,i){},uswN:function(t,e,i){},vnTa:function(t,e,i){"use strict";var n=i("3YZA");i.n(n).a},w5cJ:function(t,e,i){"use strict";var n=i("PYLh");i.n(n).a},wgcy:function(t,e,i){},x6RV:function(t,e,i){},y7KD:function(t,e,i){"use strict";var n=i("YKHE");i.n(n).a},zzeU:function(t,e,i){"use strict";var n=i("EXm2");i.n(n).a}}]); +//# sourceMappingURL=chunk-565e.6b50e750.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-565e.6b50e750.js.map b/priv/static/adminfe/static/js/chunk-565e.6b50e750.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?c65c","webpack:///./src/views/settings/components/WebPush.vue?38e3","webpack:///./src/views/settings/index.vue?0437","webpack:///./src/views/settings/components/Captcha.vue?029c","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?ac92","webpack:///./src/views/settings/components/Authentication.vue?4503","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?b469","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?c837","webpack:///./src/views/settings/components/Upload.vue?33cd","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?cf11","webpack:///./src/views/settings/components/Esshd.vue?eedf","webpack:///./src/views/settings/components/Relays.vue?3141","webpack:///./src/views/settings/components/Http.vue?56b1","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?c641","webpack:///./src/views/settings/components/Mailer.vue?cb92","webpack:///./src/views/settings/components/MediaProxy.vue?e0fb","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?6f06","webpack:///./src/views/settings/components/RateLimiters.vue?0aac","webpack:///./src/views/settings/index.vue?dcc9","webpack:///src/views/settings/components/inputComponents/EditableKeywordInput.vue","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?859c","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?058f","webpack:///src/views/settings/components/inputComponents/IconsInput.vue","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?bdb0","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?a391","webpack:///./src/api/mediaUpload.js","webpack:///src/views/settings/components/inputComponents/ImageUploadInput.vue","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?f296","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?28da","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?ae71","webpack:///src/views/settings/components/inputComponents/LinkFormatterInput.vue","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?acd6","webpack:///src/views/settings/components/inputComponents/MascotsInput.vue","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?9cfe","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?df45","webpack:///src/views/settings/components/inputComponents/ProxyUrlInput.vue","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?4183","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?b4d0","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?663f","webpack:///src/views/settings/components/inputComponents/PruneInput.vue","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?2ccd","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?2905","webpack:///src/views/settings/components/inputComponents/RateLimitInput.vue","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?d732","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?4de6","webpack:///src/views/settings/components/inputComponents/RegInvitesInput.vue","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?ce9b","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?b3f6","webpack:///src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?dbe1","webpack:///src/views/settings/components/inputComponents/SenderInput.vue","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?a1b5","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?c9a0","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?8500","webpack:///src/views/settings/components/inputComponents/SpecificMultipleSelect.vue","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?2f90","webpack:///./src/views/settings/components/Inputs.vue?5b3f","webpack:///src/views/settings/components/Inputs.vue","webpack:///./src/views/settings/components/Inputs.vue","webpack:///./src/views/settings/components/Inputs.vue?4087","webpack:///./src/views/settings/components/Setting.vue?39a1","webpack:///src/views/settings/components/Setting.vue","webpack:///./src/views/settings/components/Setting.vue","webpack:///./src/views/settings/components/Setting.vue?9ebb","webpack:///src/views/settings/components/ActivityPub.vue","webpack:///./src/views/settings/components/ActivityPub.vue?9ad8","webpack:///./src/views/settings/components/ActivityPub.vue","webpack:///./src/views/settings/components/ActivityPub.vue?1a9f","webpack:///src/views/settings/components/Authentication.vue","webpack:///./src/views/settings/components/Authentication.vue?1922","webpack:///./src/views/settings/components/Authentication.vue","webpack:///./src/views/settings/components/Authentication.vue?412c","webpack:///src/views/settings/components/Captcha.vue","webpack:///./src/views/settings/components/Captcha.vue?b5df","webpack:///./src/views/settings/components/Captcha.vue","webpack:///./src/views/settings/components/Captcha.vue?dc1b","webpack:///src/views/settings/components/Esshd.vue","webpack:///./src/views/settings/components/Esshd.vue?b0ed","webpack:///./src/views/settings/components/Esshd.vue","webpack:///./src/views/settings/components/Esshd.vue?b8c9","webpack:///src/views/settings/components/Frontend.vue","webpack:///./src/views/settings/components/Frontend.vue?1622","webpack:///./src/views/settings/components/Frontend.vue","webpack:///./src/views/settings/components/Frontend.vue?6107","webpack:///src/views/settings/components/Gopher.vue","webpack:///./src/views/settings/components/Gopher.vue?cb09","webpack:///./src/views/settings/components/Gopher.vue","webpack:///./src/views/settings/components/Gopher.vue?9f1a","webpack:///src/views/settings/components/Http.vue","webpack:///./src/views/settings/components/Http.vue?0ecb","webpack:///./src/views/settings/components/Http.vue","webpack:///./src/views/settings/components/Http.vue?2698","webpack:///src/views/settings/components/Instance.vue","webpack:///./src/views/settings/components/Instance.vue?ea1e","webpack:///./src/views/settings/components/Instance.vue","webpack:///./src/views/settings/components/Instance.vue?1b0b","webpack:///src/views/settings/components/JobQueue.vue","webpack:///./src/views/settings/components/JobQueue.vue?e650","webpack:///./src/views/settings/components/JobQueue.vue","webpack:///./src/views/settings/components/JobQueue.vue?b098","webpack:///src/views/settings/components/LinkFormatter.vue","webpack:///./src/views/settings/components/LinkFormatter.vue?9773","webpack:///./src/views/settings/components/LinkFormatter.vue","webpack:///./src/views/settings/components/LinkFormatter.vue?2f8e","webpack:///src/views/settings/components/Logger.vue","webpack:///./src/views/settings/components/Logger.vue?aa5f","webpack:///./src/views/settings/components/Logger.vue","webpack:///./src/views/settings/components/Logger.vue?82f3","webpack:///src/views/settings/components/Mailer.vue","webpack:///./src/views/settings/components/Mailer.vue?48d6","webpack:///./src/views/settings/components/Mailer.vue","webpack:///./src/views/settings/components/Mailer.vue?7f76","webpack:///src/views/settings/components/MediaProxy.vue","webpack:///./src/views/settings/components/MediaProxy.vue?9571","webpack:///./src/views/settings/components/MediaProxy.vue","webpack:///./src/views/settings/components/MediaProxy.vue?6350","webpack:///src/views/settings/components/Metadata.vue","webpack:///./src/views/settings/components/Metadata.vue?7f4f","webpack:///./src/views/settings/components/Metadata.vue","webpack:///./src/views/settings/components/Metadata.vue?aa76","webpack:///src/views/settings/components/MRF.vue","webpack:///./src/views/settings/components/MRF.vue?274b","webpack:///./src/views/settings/components/MRF.vue","webpack:///./src/views/settings/components/MRF.vue?7860","webpack:///src/views/settings/components/Other.vue","webpack:///./src/views/settings/components/Other.vue?7bf4","webpack:///./src/views/settings/components/Other.vue","webpack:///./src/views/settings/components/Other.vue?fde9","webpack:///src/views/settings/components/RateLimiters.vue","webpack:///./src/views/settings/components/RateLimiters.vue?15d2","webpack:///./src/views/settings/components/RateLimiters.vue","webpack:///./src/views/settings/components/RateLimiters.vue?c030","webpack:///./src/views/settings/components/Relays.vue?72ba","webpack:///src/views/settings/components/Relays.vue","webpack:///./src/views/settings/components/Relays.vue","webpack:///./src/views/settings/components/Relays.vue?cc82","webpack:///src/views/settings/components/Upload.vue","webpack:///./src/views/settings/components/Upload.vue?304d","webpack:///./src/views/settings/components/Upload.vue","webpack:///./src/views/settings/components/Upload.vue?58f3","webpack:///src/views/settings/components/WebPush.vue","webpack:///./src/views/settings/components/WebPush.vue?5451","webpack:///./src/views/settings/components/WebPush.vue","webpack:///./src/views/settings/components/WebPush.vue?0772","webpack:///./src/views/settings/index.vue?3c3a","webpack:///src/views/settings/index.vue","webpack:///./src/views/settings/components/tabs.js","webpack:///./src/views/settings/index.vue","webpack:///./src/views/settings/components/Metadata.vue?0952","webpack:///./src/views/settings/components/Instance.vue?2668","webpack:///./src/views/settings/components/Other.vue?8e53","webpack:///./src/views/settings/components/MRF.vue?8c92","webpack:///./src/views/settings/components/Frontend.vue?f18f","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?f3ab","webpack:///./src/views/settings/components/JobQueue.vue?d797","webpack:///./src/views/settings/components/Logger.vue?a62e","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?e239","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?5f84","webpack:///./src/views/settings/components/Setting.vue?ebdb","webpack:///./src/views/settings/components/ActivityPub.vue?48d9","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?5a78","webpack:///./src/views/settings/components/LinkFormatter.vue?264c","webpack:///./src/views/settings/components/Gopher.vue?5fd9","webpack:///./src/views/settings/components/Inputs.vue?e1ce","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?6459"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MascotsInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_WebPush_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_82f78b3e_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Captcha_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SelectInputWithReducedLabels_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Authentication_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RegInvitesInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LinkFormatterInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_PruneInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Esshd_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Relays_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Http_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SenderInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Mailer_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MediaProxy_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SpecificMultipleSelect_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RateLimiters_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","inputComponents_EditableKeywordInputvue_type_script_lang_js_","name","props","data","type","Array","default","parents","required","setting","Object","settingGroup","computed","editableKeywordWithInteger","this","includes","editableKeywordWithSelect","findIndex","el","editableKeywordWithString","key","isDesktop","$store","state","app","device","keyPlaceholder","settings","updatedSettings","valuePlaceholder","methods","addRowToEditableKeyword","updatedValue","concat","toConsumableArray_default","","value","id","generateID","updateSetting","group","deleteEditableKeywordRow","element","deletedId","getId","filteredValues","filter","values","Math","random","toString","getCrontabWorkerLabel","worker","workerKey","getKey","replace","keys","getSuggestion","_this","suggestions","find","suggestion","getValue","parseEditableKeyword","inputType","_this2","updatedId","map","index","defineProperty_default","_objectSpread","updateCrontab","_this3","updatedValueWithType","reduce","acc","dispatch","input","wrappedSettings","wrapUpdatedSettings","length","_processNested","normalizers","reverse","valueForState","valueForUpdatedSettings","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","data-search","_l","label","placeholder","on","$event","_v","min","size","change","icon","circle","click","multiple","filterable","allow-create","_e","options","__file","EditableKeywordInput","inputComponents_IconsInputvue_type_script_lang_js_","addIconToIcons","addValueToIcons","i","deleteIcondRow","parseIcons","IconsInputvue_type_script_lang_js_objectSpread","_ref","IconsInput_component","ref","IconsInput","UPLOAD_URL","authHeaders","Authorization","getToken","inputComponents_ImageUploadInputvue_type_script_lang_js_","inputValue","String","loading","ImageUploadInputvue_type_script_lang_js_objectSpread","vuex_esm","fullSize","lodash_default","a","dimensions","width","height","isDefault","defaultImage","baseName","get","utils","authHost","imageUrl","url","isString","startsWith","handleFiles","event","file","target","files","reader","FileReader","onload","formData","FormData","append","fetch","body","method","headers","then","json","uploadMedia","response","$emit","readAsDataURL","removeFile","ImageUploadInput_component","style","aria-label","$t","accept","_s","directives","rawName","expression","src","fit","staticStyle","margin-left","ImageUploadInput","inputComponents_LinkFormatterInputvue_type_script_lang_js_","autoLinkerAtomValue","substr","autoLinkerBooleanValue","autoLinkerIntegerValue","autoLinkerStringValue","processTwoTypeValue","LinkFormatterInput_component","slot","LinkFormatterInput","inputComponents_MascotsInputvue_type_script_lang_js_","addRowToMascots",":url",":mime_type","deleteMascotsRow","mascot","getName","getUrl","_Object$values","slicedToArray_default","getMimeType","_Object$values3","parseMascots","MascotsInputvue_type_script_lang_js_objectSpread","mascotsWithoutIDs","_Object$values$","mascotValue","objectWithoutProperties_default","MascotsInput_component","label-width","MascotsInput","inputComponents_ProxyUrlInputvue_type_script_lang_js_","proxyUrlData","socks5","host","port","updateProxyUrl","ProxyUrlInputvue_type_script_lang_js_objectSpread","assembledData","ProxyUrlInput_component","ProxyUrlInput","inputComponents_PruneInputvue_type_script_lang_js_","prune","set","updateRadioInput","updateIntInput","updatedSetting","processedValue","PruneInput_component","model","callback","$$v","label-position","PruneInput","inputComponents_RateLimitInputvue_type_script_lang_js_","rateLimitAllUsers","rateLimitAuthUsers","isArray","rateLimitUnauthUsers","parseRateLimiter","typeOfInput","typeOfLimit","currentValue","valueToSend","toggleLimits","tuple","RateLimitInput_component","controls","RateLimitInput","inputComponents_RegInvitesInputvue_type_script_lang_js_","registrationsOpen","invitesEnabled","$confirm","confirmButtonText","cancelButtonText","RegInvitesInput_component","RegInvitesInput","inputComponents_SelectInputWithReducedLabelsvue_type_script_lang_js_","isMobile","prefixes",":policies","Pleroma.Web.Auth.Authenticator",":method",":adapter",":providers",":parsers",":ttl_setters",":scrub_policy",":federation_publisher_modules",":uploader",":filters","split","renderMultipleSelect","SelectInputWithReducedLabels_component","option","clearable","SelectInputWithReducedLabels","inputComponents_SenderInputvue_type_script_lang_js_","sender","email","nickname","updateSender","SenderInputvue_type_script_lang_js_objectSpread","SenderInput_component","SenderInput","inputComponents_SpecificMultipleSelectvue_type_script_lang_js_","SpecificMultipleSelect_component","SpecificMultipleSelect","components_Inputsvue_type_script_lang_js_","components","customLabelWidth","labelWidth","labelClass","margin","Number","nested","Boolean","settingParent","booleanCombinedInput","canBeDeleted","_this$settingGroup","db","iconsData","isTablet","keywordData","reducedSelects","isImageUrl","editableKeyword","getFormattedDescription","desc","marked_default","processNestedData","parentKey","removeSetting","asyncToGenerator_default","regenerator_default","mark","_callee2","wrap","_context2","prev","next","_callee","config","_context","delete","subkeys","t0","abrupt","$message","message","lang","t","stop","catch","renderSingleSelect","senderInput","_ref2","update","Inputs_component","class","content","placement","subSetting","setting-group","setting-parent","custom-label-width","label-class","input-value","undefined","description","domProps","innerHTML","components_Settingvue_type_script_lang_js_","Inputs","emailAdapterChildren","adapter","children","child","settingKey","existingKey","compound","divideSetting","notLastInGroup","slice","tab","Setting_component","Setting","components_ActivityPubvue_type_script_lang_js_","ActivityPubvue_type_script_lang_js_objectSpread","activitypub","activitypubData","isSidebarOpen","sidebar","opened","labelPosition","user","userData","onSubmit","ActivityPub_component","ActivityPub","components_Authenticationvue_type_script_lang_js_","Authenticationvue_type_script_lang_js_objectSpread","auth","authData","ldap","ldapData","oauth2","oauth2Data","pleromaAuthenticator","pleromaAuthenticatorData","restrictUnauthenticated","restrictUnauthenticatedData","Authentication_component","Authentication","components_Captchavue_type_script_lang_js_","Captchavue_type_script_lang_js_objectSpread","captcha","captchaData","kocaptcha","kocaptchaData","Captcha_component","Captcha","components_Esshdvue_type_script_lang_js_","Esshdvue_type_script_lang_js_objectSpread","esshd","esshdData","toggleEsshd","Esshd_component","Esshd","components_Frontendvue_type_script_lang_js_","Frontendvue_type_script_lang_js_objectSpread","assets","assetsData","chat","chatData","emoji","emojiData","frontend","frontendData","frontends","frontendsData","markup","markupData","preload","preloadData","staticFe","staticFeData","Frontend_component","Frontend","components_Gophervue_type_script_lang_js_","Gophervue_type_script_lang_js_objectSpread","gopher","gopherData","Gopher_component","Gopher","components_Httpvue_type_script_lang_js_","Httpvue_type_script_lang_js_objectSpread","corsPlug","corsPlugData","http","httpData","httpSecurity","httpSecurityData","webCacheTtl","webCacheTtlData","Http_component","Http","components_Instancevue_type_script_lang_js_","Instancevue_type_script_lang_js_objectSpread","adminToken","adminTokenData","favicons","faviconsData","feed","feedData","instance","instanceData","manifest","manifestData","pleromaUser","pleromaUserData","scheduledActivity","scheduledActivityData","streamer","streamerData","uriSchemes","uriSchemesData","welcome","welcomeData","Instance_component","Instance","components_JobQueuevue_type_script_lang_js_","JobQueuevue_type_script_lang_js_objectSpread","activityExpiration","activityExpirationData","connectionsPools","connectionsPoolsData","hackneyPools","hackneyPoolsData","obanQueues","obanQueuesData","pools","poolsData","workers","workersData","JobQueue_component","JobQueue","components_LinkFormattervue_type_script_lang_js_","LinkFormattervue_type_script_lang_js_objectSpread","linkFormatter","linkFormatterData","LinkFormatter_component","LinkFormatter","components_Loggervue_type_script_lang_js_","Loggervue_type_script_lang_js_objectSpread","console","consoleData","exsyslogger","exsysloggerData","logger","loggerData","quack","quackData","Logger_component","Logger","components_Mailervue_type_script_lang_js_","Mailervue_type_script_lang_js_objectSpread","emailNotifications","emailNotificationsData","mailer","mailerData","newUsersDigestEmail","newUsersDigestEmailData","swoosh","swooshData","userEmail","userEmailData","Mailer_component","Mailer","components_MediaProxyvue_type_script_lang_js_","MediaProxyvue_type_script_lang_js_objectSpread","httpInvalidation","httpInvalidationData","mediaPreviewProxy","mediaPreviewProxyData","mediaProxy","mediaProxyData","scriptInvalidation","scriptInvalidationData","MediaProxy_component","MediaProxy","components_Metadatavue_type_script_lang_js_","Metadatavue_type_script_lang_js_objectSpread","metadata","metadataData","richMedia","richMediaData","Metadata_component","Metadata","components_MRFvue_type_script_lang_js_","MRFvue_type_script_lang_js_objectSpread","mrfSettings","getSettingData","showMrfPolicy","selectedMrfPolicies","mappedPolicies","related_policy","MRF_component","MRF","components_Othervue_type_script_lang_js_","Othervue_type_script_lang_js_objectSpread","castAndValidate","castAndValidateData","mimeTypes","mimeTypesData","modules","modulesData","remoteIp","remoteIpData","Other_component","Other","components_RateLimitersvue_type_script_lang_js_","RateLimitersvue_type_script_lang_js_objectSpread","rateLimiters","rateLimitersData","RateLimiters_component","RateLimiters","components_Relaysvue_type_script_lang_js_","newRelay","getLabelWidth","relays","fetchedRelays","mounted","followRelay","deleteRelay","relay","Relays_component","nativeOn","keyup","indexOf","_k","keyCode","prop","align","scopedSlots","_u","fn","scope","row","followed_back","fixed","actor","Relays","components_Uploadvue_type_script_lang_js_","Uploadvue_type_script_lang_js_objectSpread","s3","s3Data","showUploadersS3","showUploadersLocal","upload","uploadData","uploadersLocal","uploadersLocalData","uploadersS3","uploadersS3Data","uploadFilterMogrify","uploadFilterMogrifyData","uploadAnonymizeFilename","uploadAnonymizeFilenameData","Upload_component","Upload","components_WebPushvue_type_script_lang_js_","WebPushvue_type_script_lang_js_objectSpread","vapidDetails","vapidDetailsData","WebPush_component","WebPush","views_settingsvue_type_script_lang_js_","Mrf","RebootButton","searchQuery","activeTab","configDisabled","rebootIsSidebarOpen","searchData","tabs","activity-pub","authentication","job-queue","link-formatter","media-proxy","mrf","rate-limiters","web-push","other","tabs_tabs","handleSearchSelect","selectedValue","selectedSetting","document","querySelector","scrollIntoView","block","behavior","querySearch","queryString","cb","searchObj","search","toLowerCase","groupLabel","groupKey","settingsCantBeChanged","settings_component","underline","href","fetch-suggestions","trigger-on-focus","prefix-icon","select","tab-position","componentName","disabled","lazy","tag","item","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Metadata_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Instance_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Other_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MRF_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Frontend_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RateLimitInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_JobQueue_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Logger_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ProxyUrlInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_EditableKeywordInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ActivityPub_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_IconsInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LinkFormatter_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Gopher_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Inputs_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ImageUploadInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-565e.6b50e750.js","sourcesContent":["import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings-container\",class:_vm.rebootIsSidebarOpen},[_c('div',{staticClass:\"reboot-button-container\"},[_c('reboot-button')],1),_vm._v(\" \"),(_vm.isDesktop)?_c('div',[_c('div',{staticClass:\"settings-header-container\",class:_vm.isSidebarOpen},[_c('h1',{staticClass:\"settings-header\"},[_vm._v(_vm._s(_vm.$t('settings.settings')))]),_vm._v(\" \"),_c('div',{staticClass:\"docs-search-container\"},[_c('el-link',{attrs:{\"underline\":false,\"href\":\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"settings-docs-button\"},[_c('span',[_c('i',{staticClass:\"el-icon-document\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.seeDocs'))+\"\\n \")])])],1),_vm._v(\" \"),_c('el-autocomplete',{staticClass:\"settings-search-input\",attrs:{\"fetch-suggestions\":_vm.querySearch,\"trigger-on-focus\":false,\"clearable\":\"\",\"placeholder\":\"Search\",\"prefix-icon\":\"el-icon-search\"},on:{\"select\":_vm.handleSearchSelect},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)]),_vm._v(\" \"),_c('el-tabs',{attrs:{\"tab-position\":\"left\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},_vm._l((_vm.tabs),function(value,componentName){return _c('el-tab-pane',{key:componentName,attrs:{\"label\":_vm.$t(value.label),\"disabled\":_vm.configDisabled || _vm.settingsCantBeChanged(value.settings),\"name\":componentName,\"lazy\":\"\"}},[_c(componentName,{tag:\"component\"})],1)}),1)],1):_vm._e(),_vm._v(\" \"),(_vm.isMobile || _vm.isTablet)?_c('div',[_c('div',{staticClass:\"settings-header-container\",class:_vm.isSidebarOpen},[_c('h1',{staticClass:\"settings-header\"},[_vm._v(_vm._s(_vm.$t('settings.settings')))])]),_vm._v(\" \"),_c('div',{staticClass:\"nav-container\"},[_c('el-select',{staticClass:\"settings-menu\",attrs:{\"placeholder\":\"Select\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value,\"disabled\":_vm.configDisabled}})}),1),_vm._v(\" \"),_c('el-link',{attrs:{\"underline\":false,\"href\":\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"settings-docs-button\"},[_c('span',[_c('i',{staticClass:\"el-icon-document\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.seeDocs'))+\"\\n \")])])],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"settings-search-input-container\"}),_vm._v(\" \"),(_vm.activeTab === 'activityPub')?_c('activity-pub'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'auth')?_c('authentication'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'linkFormatter')?_c('link-formatter'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'esshd')?_c('esshd'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'captcha')?_c('captcha'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'frontend')?_c('frontend'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'gopher')?_c('gopher'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'http')?_c('http'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'instance')?_c('instance'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'jobQueue')?_c('job-queue'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'logger')?_c('logger'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mailer')?_c('mailer'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mediaProxy')?_c('media-proxy'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'metadata')?_c('metadata'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mrf')?_c('mrf'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'rateLimiters')?_c('rate-limiters'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'relays')?_c('relays'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'webPush')?_c('web-push'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'upload')?_c('upload'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'other')?_c('other'):_vm._e()],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"editable-keyword-container\">\n <div v-if=\"setting.key === ':crontab'\" :data-search=\"setting.key\" class=\"crontab\">\n <el-form-item v-for=\"worker in data\" :key=\"getId(worker)\" :label=\"getCrontabWorkerLabel(worker)\" class=\"crontab-container\">\n <el-input\n :value=\"getValue(worker)\"\n :placeholder=\"getSuggestion(worker) || null\"\n class=\"input setting-input\"\n @input=\"updateCrontab($event, 'value', worker)\"/>\n </el-form-item>\n </div>\n <div v-else-if=\"editableKeywordWithInteger\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" placeholder=\"key\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-input-number :value=\"getValue(element)\" :min=\"0\" size=\"large\" class=\"value-input\" @change=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n <div v-else-if=\"editableKeywordWithString\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" :placeholder=\"keyPlaceholder\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-input :value=\"getValue(element)\" :placeholder=\"valuePlaceholder\" class=\"value-input\" @input=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n <div v-else-if=\"editableKeywordWithSelect\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" placeholder=\"key\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-select :value=\"getValue(element)\" multiple filterable allow-create class=\"value-input\" @change=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'EditableKeywordInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n editableKeywordWithInteger() {\n return this.setting.type.includes('keyword') && this.setting.type.includes('integer')\n },\n editableKeywordWithSelect() {\n return (this.setting.type.includes('map') && this.setting.type.findIndex(el => el.includes('list') && el.includes('string')) !== -1) ||\n (this.setting.type.includes('keyword') && this.setting.type.findIndex(el => el.includes('list') && el.includes('string')) !== -1)\n },\n editableKeywordWithString() {\n return this.setting.key !== ':crontab' && (\n (this.setting.type.includes('keyword') && this.setting.type.includes('string')) ||\n (this.setting.type.includes('tuple') && this.setting.type.includes('list')) ||\n (this.setting.type.includes('map') && this.setting.type.includes('string'))\n )\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n keyPlaceholder() {\n return this.setting.key === ':replace' ? 'pattern' : 'key'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n valuePlaceholder() {\n return this.setting.key === ':replace' ? 'replacement' : 'value'\n }\n },\n methods: {\n addRowToEditableKeyword() {\n const updatedValue = [...this.data, { '': { value: '', id: this.generateID() }}]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteEditableKeywordRow(element) {\n const deletedId = this.getId(element)\n const filteredValues = this.data.filter(element => Object.values(element)[0].id !== deletedId)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n getCrontabWorkerLabel(worker) {\n const workerKey = this.getKey(worker)\n return workerKey.includes('Pleroma.Workers.Cron.') ? workerKey.replace('Pleroma.Workers.Cron.', '') : workerKey\n },\n getKey(element) {\n return Object.keys(element)[0]\n },\n getId(element) {\n const { id } = Object.values(element)[0]\n return id\n },\n getSuggestion(worker) {\n return this.setting.suggestions.find(suggestion => suggestion[1] === this.getKey(worker))[0]\n },\n getValue(element) {\n const { value } = Object.values(element)[0]\n return value\n },\n parseEditableKeyword(value, inputType, element) {\n const updatedId = this.getId(element)\n const updatedValue = this.data.map((element, index) => {\n if (Object.values(element)[0].id === updatedId) {\n return inputType === 'key'\n ? { [value]: Object.values(this.data[index])[0] }\n : { [Object.keys(element)[0]]: { ...Object.values(this.data[index])[0], value }}\n }\n return element\n })\n\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateCrontab(value, inputType, worker) {\n const updatedId = this.getId(worker)\n const updatedValue = this.data.map((worker, index) => {\n if (Object.values(worker)[0].id === updatedId) {\n return { [Object.keys(worker)[0]]: { ...Object.values(this.data[index])[0], value }}\n }\n return worker\n })\n const updatedValueWithType = updatedValue.reduce((acc, worker) => {\n return { ...acc, [Object.keys(worker)[0]]: ['reversed_tuple', Object.values(worker)[0].value] }\n }, {})\n\n this.$store.dispatch('UpdateSettings',\n { group: this.settingGroup.group, key: this.settingGroup.key, input: this.setting.key, value: updatedValueWithType, type: this.setting.type }\n )\n this.$store.dispatch('UpdateState',\n { group: this.settingGroup.group, key: this.settingGroup.key, input: this.setting.key, value: updatedValue }\n )\n },\n updateSetting(value, group, key, input, type) {\n const wrappedSettings = this.wrapUpdatedSettings(value, input, type)\n\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, wrappedSettings, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: wrappedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n },\n wrapUpdatedSettings(value, input, type) {\n return type === 'map'\n ? value.reduce((acc, element) => {\n return { ...acc, [Object.keys(element)[0]]: Object.values(element)[0].value }\n }, {})\n : value.reduce((acc, element) => {\n return { ...acc, [Object.keys(element)[0]]: ['list', Object.values(element)[0].value] }\n }, {})\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditableKeywordInput.vue?vue&type=template&id=6670a702&\"\nimport script from \"./EditableKeywordInput.vue?vue&type=script&lang=js&\"\nexport * from \"./EditableKeywordInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"EditableKeywordInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"editable-keyword-container\"},[(_vm.setting.key === ':crontab')?_c('div',{staticClass:\"crontab\",attrs:{\"data-search\":_vm.setting.key}},_vm._l((_vm.data),function(worker){return _c('el-form-item',{key:_vm.getId(worker),staticClass:\"crontab-container\",attrs:{\"label\":_vm.getCrontabWorkerLabel(worker)}},[_c('el-input',{staticClass:\"input setting-input\",attrs:{\"value\":_vm.getValue(worker),\"placeholder\":_vm.getSuggestion(worker) || null},on:{\"input\":function($event){return _vm.updateCrontab($event, 'value', worker)}}})],1)}),1):(_vm.editableKeywordWithInteger)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-input-number',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"min\":0,\"size\":\"large\"},on:{\"change\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):(_vm.editableKeywordWithString)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":_vm.keyPlaceholder},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-input',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"placeholder\":_vm.valuePlaceholder},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):(_vm.editableKeywordWithSelect)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-select',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"mascot-container\">\n <div v-for=\"(icon, index) in data\" :key=\"index\" class=\"mascot\">\n <div class=\"icons-container\">\n <div class=\"icon-container\">\n <div v-for=\"{ key, value, id } in icon\" :key=\"id\" class=\"icon-values-container\">\n <el-input :value=\"key\" placeholder=\"key\" class=\"icon-key-input\" @input=\"parseIcons($event, 'key', index, id)\"/> :\n <el-input :value=\"value\" placeholder=\"value\" class=\"icon-value-input\" @input=\"parseIcons($event, 'value', index, id)\"/>\n </div>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-minus\" circle class=\"icon-minus-button\" @click=\"deleteIcondRow(index)\"/>\n </div>\n <div class=\"icons-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addValueToIcons(index)\"/>\n <span class=\"icons-button-desc\">Add another `key - value` pair to this icon</span>\n </div>\n <el-divider class=\"divider\"/>\n </div>\n <div class=\"icons-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addIconToIcons\"/>\n <span class=\"icons-button-desc\">Add another icon configuration</span>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'EditableKeywordInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n addIconToIcons() {\n const updatedValue = [...this.data, [{ key: '', value: '', id: this.generateID() }]]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n addValueToIcons(index) {\n const updatedValue = this.data.map((icon, i) => {\n if (i === index) {\n return [...icon, { key: '', value: '', id: this.generateID() }]\n }\n return icon\n })\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteIcondRow(index) {\n const filteredValues = this.data.filter((icon, i) => i !== index)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n parseIcons(value, inputType, index, id) {\n const updatedValue = this.data.map((icon, i) => {\n if (i === index) {\n return icon.map(setting => {\n if (setting.id === id) {\n return inputType === 'key'\n ? { ...setting, key: value }\n : { ...setting, value }\n }\n return setting\n })\n }\n return icon\n })\n\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSettings = value.map(icon => {\n return icon.reduce((acc, { key, value }) => {\n return { ...acc, [key]: value }\n }, {})\n }, {})\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IconsInput.vue?vue&type=template&id=0e981ae9&\"\nimport script from \"./IconsInput.vue?vue&type=script&lang=js&\"\nexport * from \"./IconsInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"IconsInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mascot-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(icon,index){return _c('div',{key:index,staticClass:\"mascot\"},[_c('div',{staticClass:\"icons-container\"},[_c('div',{staticClass:\"icon-container\"},_vm._l((icon),function(ref){\nvar key = ref.key;\nvar value = ref.value;\nvar id = ref.id;\nreturn _c('div',{key:id,staticClass:\"icon-values-container\"},[_c('el-input',{staticClass:\"icon-key-input\",attrs:{\"value\":key,\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseIcons($event, 'key', index, id)}}}),_vm._v(\" :\\n \"),_c('el-input',{staticClass:\"icon-value-input\",attrs:{\"value\":value,\"placeholder\":\"value\"},on:{\"input\":function($event){return _vm.parseIcons($event, 'value', index, id)}}})],1)}),0),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteIcondRow(index)}}})],1),_vm._v(\" \"),_c('div',{staticClass:\"icons-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.addValueToIcons(index)}}}),_vm._v(\" \"),_c('span',{staticClass:\"icons-button-desc\"},[_vm._v(\"Add another `key - value` pair to this icon\")])],1),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"})],1)}),_vm._v(\" \"),_c('div',{staticClass:\"icons-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addIconToIcons}}),_vm._v(\" \"),_c('span',{staticClass:\"icons-button-desc\"},[_vm._v(\"Add another icon configuration\")])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nconst UPLOAD_URL = '/api/v1/media'\n\nexport function uploadMedia({ formData, authHost }) {\n const url = baseName(authHost) + UPLOAD_URL\n\n return fetch(url, {\n body: formData,\n method: 'POST',\n headers: authHeaders()\n })\n .then((data) => data.json())\n}\n\nconst authHeaders = () => {\n return { 'Authorization': `Bearer ${getToken()}` }\n}\n","<template>\n <div class=\"image-upload-area\">\n <div class=\"input-row\">\n <div :style=\"dimensions\" class=\"image-upload-wrapper\">\n <div :style=\"dimensions\" class=\"image-upload-overlay\">\n <input\n :aria-label=\"$t('settings.changeImage')\"\n class=\"input-file\"\n type=\"file\"\n accept=\".jpg,.jpeg,.png\"\n @change=\"handleFiles\" >\n <div class=\"caption\">\n {{ $t('settings.changeImage') }}\n </div>\n <el-image\n v-loading=\"loading\"\n :src=\"imageUrl(inputValue)\"\n :style=\"dimensions\"\n class=\"uploaded-image\"\n fit=\"cover\" />\n </div>\n </div>\n </div>\n <div class=\"image-button-group\">\n <el-button class=\"upload-button\" size=\"small\">\n {{ $t('settings.uploadImage') }}\n <input\n :aria-label=\"$t('settings.changeImage')\"\n class=\"input-file\"\n type=\"file\"\n accept=\".jpg,.jpeg,.png\"\n @change=\"handleFiles\">\n </el-button>\n <el-button v-if=\"!isDefault\" type=\"danger\" size=\"small\" style=\"margin-left: 5px;\" @click=\"removeFile()\">\n {{ $t('settings.remove') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport _ from 'lodash'\nimport { baseName } from '../../../../api/utils'\nimport { uploadMedia } from '../../../../api/mediaUpload'\n\nexport default {\n name: 'ImageUploadInput',\n props: {\n inputValue: {\n type: [String, Object],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n data() {\n return {\n loading: false\n }\n },\n computed: {\n ...mapGetters([\n 'authHost'\n ]),\n fullSize() {\n if (_.includes([':background', ':nsfwCensorImage'], this.setting.key)) {\n return true\n }\n\n return false\n },\n dimensions() {\n return {\n width: this.fullSize ? '100%' : '100px',\n height: this.fullSize ? '250px' : '100px'\n }\n },\n isDefault() {\n return this.defaultImage === this.inputValue\n },\n defaultImage() {\n return this.baseName + _.get(this.setting, 'suggestions[0]')\n },\n baseName() {\n return baseName(this.authHost)\n }\n },\n methods: {\n imageUrl(url) {\n if (_.isString(url)) {\n const isUrl = url.startsWith('http') || url.startsWith('https')\n return isUrl ? url : this.baseName + url\n } else {\n return this.defaultImage\n }\n },\n handleFiles(event) {\n const file = event.target.files[0]\n if (!file) { return }\n const reader = new FileReader()\n reader.onload = ({ target }) => {\n const formData = new FormData()\n formData.append('file', file)\n this.loading = true\n uploadMedia({ formData, authHost: this.authHost }).then(response => {\n this.loading = false\n this.$emit('change', response.url)\n })\n }\n reader.readAsDataURL(file)\n },\n removeFile() {\n this.$emit('change', this.defaultImage)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings;\n\n.image-upload-area {\n .input-row {\n display: flex;\n align-items: center;\n }\n\n .input-file {\n z-index: 100;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: pointer;\n }\n\n .image-button-group {\n margin-top: 20px;\n\n .upload-button {\n position: relative;\n }\n }\n\n .image-upload-wrapper {\n position: relative;\n\n .image-upload-overlay {\n transition: box-shadow .1s;\n border-radius: 5px;\n\n .caption {\n visibility: hidden;\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n font-weight: 700;\n font-size: 10px;\n text-transform: uppercase;;\n color: #fff;\n z-index: 9;\n transition: box-shadow .1s;\n }\n\n .uploaded-image {\n border-radius: 5px;\n box-shadow: 0 2px 10px 0 rgba(0,0,0,.1);\n }\n\n &:hover {\n visibility: visible;\n cursor: pointer;\n border-radius: 5px;\n\n .el-image__error {\n visibility: hidden;\n }\n\n .caption {\n visibility: visible;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1), inset 0 0 120px 25px rgba(0, 0, 0, 0.8);\n border-radius: 5px;\n }\n }\n }\n }\n}\n\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageUploadInput.vue?vue&type=template&id=dbef2262&\"\nimport script from \"./ImageUploadInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageUploadInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ImageUploadInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"image-upload-area\"},[_c('div',{staticClass:\"input-row\"},[_c('div',{staticClass:\"image-upload-wrapper\",style:(_vm.dimensions)},[_c('div',{staticClass:\"image-upload-overlay\",style:(_vm.dimensions)},[_c('input',{staticClass:\"input-file\",attrs:{\"aria-label\":_vm.$t('settings.changeImage'),\"type\":\"file\",\"accept\":\".jpg,.jpeg,.png\"},on:{\"change\":_vm.handleFiles}}),_vm._v(\" \"),_c('div',{staticClass:\"caption\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.changeImage'))+\"\\n \")]),_vm._v(\" \"),_c('el-image',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"uploaded-image\",style:(_vm.dimensions),attrs:{\"src\":_vm.imageUrl(_vm.inputValue),\"fit\":\"cover\"}})],1)])]),_vm._v(\" \"),_c('div',{staticClass:\"image-button-group\"},[_c('el-button',{staticClass:\"upload-button\",attrs:{\"size\":\"small\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.uploadImage'))+\"\\n \"),_c('input',{staticClass:\"input-file\",attrs:{\"aria-label\":_vm.$t('settings.changeImage'),\"type\":\"file\",\"accept\":\".jpg,.jpeg,.png\"},on:{\"change\":_vm.handleFiles}})]),_vm._v(\" \"),(!_vm.isDefault)?_c('el-button',{staticStyle:{\"margin-left\":\"5px\"},attrs:{\"type\":\"danger\",\"size\":\"small\"},on:{\"click\":function($event){return _vm.removeFile()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.remove'))+\"\\n \")]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <div v-if=\"setting.type.includes('string')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerStringValue\"\n @input=\"processTwoTypeValue($event, setting.key)\"/>\n </div>\n <div v-if=\"setting.type.includes('integer')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input-number\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerIntegerValue\"\n @input=\"processTwoTypeValue($event, setting.key)\"/>\n </div>\n <div v-if=\"setting.type.includes('atom')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerAtomValue\"\n @input=\"processTwoTypeValue($event, setting.key)\">\n <template slot=\"prepend\">:</template>\n </el-input>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'LinkFormatterInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n autoLinkerAtomValue() {\n return this.data[this.setting.key] &&\n this.data[this.setting.key][0] === ':' ? this.data[this.setting.key].substr(1) : this.data[this.setting.key]\n },\n autoLinkerBooleanValue() {\n const value = this.data[this.setting.key]\n return typeof value === 'string' || typeof value === 'number'\n },\n autoLinkerIntegerValue() {\n const value = this.data[this.setting.key]\n return value || 0\n },\n autoLinkerStringValue() {\n const value = this.data[this.setting.key]\n return value || ''\n }\n },\n methods: {\n processTwoTypeValue(value, input) {\n if (value === true) {\n const data = input === ':truncate' ? 0 : ''\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n } else {\n this.updateSetting(value, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n }\n },\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./LinkFormatterInput.vue?vue&type=template&id=3e31f4e9&\"\nimport script from \"./LinkFormatterInput.vue?vue&type=script&lang=js&\"\nexport * from \"./LinkFormatterInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LinkFormatterInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.setting.type.includes('string'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input',{attrs:{\"value\":_vm.autoLinkerStringValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.setting.type.includes('integer'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input-number',{attrs:{\"value\":_vm.autoLinkerIntegerValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.setting.type.includes('atom'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input',{attrs:{\"value\":_vm.autoLinkerAtomValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}},[_c('template',{slot:\"prepend\"},[_vm._v(\":\")])],2):_vm._e()],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"mascot-container\">\n <div v-for=\"mascot in data\" :key=\"getId(mascot)\" class=\"mascot\">\n <el-form-item label=\"Name\" label-width=\"85px\" class=\"mascot-form-item\">\n <div class=\"mascot-name-container\">\n <el-input :value=\"getName(mascot)\" placeholder=\"Name\" class=\"mascot-name-input\" @input=\"parseMascots($event, 'name', mascot)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteMascotsRow(mascot)\"/>\n </div>\n </el-form-item>\n <el-form-item label=\"URL\" label-width=\"85px\" class=\"mascot-form-item\">\n <el-input :value=\"getUrl(mascot)\" placeholder=\"URL\" class=\"mascot-input\" @input=\"parseMascots($event, 'url', mascot)\"/>\n </el-form-item>\n <el-form-item label=\"Mime type\" label-width=\"85px\" class=\"mascot-form-item\">\n <el-input :value=\"getMimeType(mascot)\" placeholder=\"Mime type\" class=\"mascot-input\" @input=\"parseMascots($event, 'mimeType', mascot)\"/>\n </el-form-item>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToMascots\"/>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'MascotsInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n addRowToMascots() {\n const updatedValue = [...this.data, { '': { ':url': '', ':mime_type': '', id: this.generateID() }}]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteMascotsRow(mascot) {\n const deletedId = this.getId(mascot)\n const filteredValues = this.data.filter(mascot => Object.values(mascot)[0].id !== deletedId)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n getId(mascot) {\n const { id } = Object.values(mascot)[0]\n return id\n },\n getName(mascot) {\n return Object.keys(mascot)[0]\n },\n getUrl(mascot) {\n const [value] = Object.values(mascot)\n return value[':url']\n },\n getMimeType(mascot) {\n const [value] = Object.values(mascot)\n return value[':mime_type']\n },\n parseMascots(value, inputType, mascot) {\n const updatedId = this.getId(mascot)\n const updatedValue = this.data.map((mascot, index) => {\n if (Object.values(mascot)[0].id === updatedId) {\n if (inputType === 'name') {\n return { [value]: Object.values(this.data[index])[0] }\n } else if (inputType === 'url') {\n return { [Object.keys(mascot)[0]]: { ...Object.values(this.data[index])[0], ':url': value }}\n } else {\n return { [Object.keys(mascot)[0]]: { ...Object.values(this.data[index])[0], ':mime_type': value }}\n }\n }\n return mascot\n })\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const mascotsWithoutIDs = value.reduce((acc, mascot) => {\n const { id, ...mascotValue } = Object.values(mascot)[0]\n return { ...acc, [Object.keys(mascot)[0]]: ['', mascotValue] }\n }, {})\n this.$store.dispatch('UpdateSettings', { group, key, input, value: mascotsWithoutIDs, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MascotsInput.vue?vue&type=template&id=0015a0e3&\"\nimport script from \"./MascotsInput.vue?vue&type=script&lang=js&\"\nexport * from \"./MascotsInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MascotsInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mascot-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(mascot){return _c('div',{key:_vm.getId(mascot),staticClass:\"mascot\"},[_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"Name\",\"label-width\":\"85px\"}},[_c('div',{staticClass:\"mascot-name-container\"},[_c('el-input',{staticClass:\"mascot-name-input\",attrs:{\"value\":_vm.getName(mascot),\"placeholder\":\"Name\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'name', mascot)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteMascotsRow(mascot)}}})],1)]),_vm._v(\" \"),_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"URL\",\"label-width\":\"85px\"}},[_c('el-input',{staticClass:\"mascot-input\",attrs:{\"value\":_vm.getUrl(mascot),\"placeholder\":\"URL\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'url', mascot)}}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"Mime type\",\"label-width\":\"85px\"}},[_c('el-input',{staticClass:\"mascot-input\",attrs:{\"value\":_vm.getMimeType(mascot),\"placeholder\":\"Mime type\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'mimeType', mascot)}}})],1)],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToMascots}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"proxy-url-input\">\n <el-input\n :value=\"proxyUrlData.host\"\n placeholder=\"host (e.g. localhost or 127.0.0.1)\"\n class=\"proxy-url-host-input\"\n @input=\"updateProxyUrl($event, 'host')\"/>\n <span v-if=\"isDesktop\">:</span>\n <el-input\n :value=\"proxyUrlData.port\"\n placeholder=\"port (e.g 9020 or 3090)\"\n class=\"proxy-url-value-input\"\n @input=\"updateProxyUrl($event, 'port')\"/>\n <div class=\"socks5-checkbox-container\">\n <el-checkbox :value=\"proxyUrlData.socks5\" @change=\"updateProxyUrl($event, 'socks5')\"/>\n <span class=\"socks5-checkbox\">Socks5</span>\n </div>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'ProxyUrlInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n proxyUrlData() {\n return Object.keys(this.data).length === 0 ? { socks5: false, host: null, port: null } : this.data\n }\n },\n methods: {\n updateProxyUrl(value, inputType) {\n let data\n if (inputType === 'socks5') {\n data = { ...this.proxyUrlData, socks5: value }\n } else if (inputType === 'host') {\n data = { ...this.proxyUrlData, host: value }\n } else {\n data = { ...this.proxyUrlData, port: value }\n }\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const assembledData = value.socks5\n ? [':socks5', value.host, value.port]\n : `${value.host}:${value.port}`\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, assembledData, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: assembledData, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProxyUrlInput.vue?vue&type=template&id=9a053e1c&\"\nimport script from \"./ProxyUrlInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ProxyUrlInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ProxyUrlInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"proxy-url-input\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-input',{staticClass:\"proxy-url-host-input\",attrs:{\"value\":_vm.proxyUrlData.host,\"placeholder\":\"host (e.g. localhost or 127.0.0.1)\"},on:{\"input\":function($event){return _vm.updateProxyUrl($event, 'host')}}}),_vm._v(\" \"),(_vm.isDesktop)?_c('span',[_vm._v(\":\")]):_vm._e(),_vm._v(\" \"),_c('el-input',{staticClass:\"proxy-url-value-input\",attrs:{\"value\":_vm.proxyUrlData.port,\"placeholder\":\"port (e.g 9020 or 3090)\"},on:{\"input\":function($event){return _vm.updateProxyUrl($event, 'port')}}}),_vm._v(\" \"),_c('div',{staticClass:\"socks5-checkbox-container\"},[_c('el-checkbox',{attrs:{\"value\":_vm.proxyUrlData.socks5},on:{\"change\":function($event){return _vm.updateProxyUrl($event, 'socks5')}}}),_vm._v(\" \"),_c('span',{staticClass:\"socks5-checkbox\"},[_vm._v(\"Socks5\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=script&lang=js&\"","<template>\n <div :data-search=\"setting.key || setting.group\">\n <el-radio-group v-model=\"prune\" class=\"prune-options\">\n <el-radio label=\":disabled\">Disabled</el-radio>\n <el-radio label=\":maxlen\">Limit-based</el-radio>\n <el-radio label=\":maxage\">Time-based</el-radio>\n </el-radio-group>\n <el-form-item v-if=\"prune === ':maxlen'\" label=\"Max length\" label-width=\"100\" label-position=\"left\">\n <el-input-number\n :value=\"data[1]\"\n :min=\"0\"\n placeholder=\"1500\"\n size=\"large\"\n class=\"top-margin\"\n @change=\"updateIntInput($event, ':maxlen')\"/>\n </el-form-item>\n <el-form-item v-if=\"prune === ':maxage'\" label=\"Max age\" label-width=\"100\" label-position=\"left\">\n <el-input-number\n :value=\"data[1]\"\n :min=\"0\"\n placeholder=\"3600\"\n size=\"large\"\n class=\"top-margin\"\n @change=\"updateIntInput($event, ':maxage')\"/>\n </el-form-item>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'PruneInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n prune: {\n get: function() {\n return this.data[0]\n },\n set: function(value) {\n this.updateRadioInput(value)\n }\n }\n },\n methods: {\n updateIntInput(value, input) {\n this.updateSetting([input, value], this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSetting = value.includes(':disabled') ? ':disabled' : value\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSetting, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n },\n updateRadioInput(value) {\n const processedValue = value === ':disabled' ? [value] : [value, 0]\n this.updateSetting(processedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./PruneInput.vue?vue&type=template&id=0da6d714&\"\nimport script from \"./PruneInput.vue?vue&type=script&lang=js&\"\nexport * from \"./PruneInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"PruneInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-radio-group',{staticClass:\"prune-options\",model:{value:(_vm.prune),callback:function ($$v) {_vm.prune=$$v},expression:\"prune\"}},[_c('el-radio',{attrs:{\"label\":\":disabled\"}},[_vm._v(\"Disabled\")]),_vm._v(\" \"),_c('el-radio',{attrs:{\"label\":\":maxlen\"}},[_vm._v(\"Limit-based\")]),_vm._v(\" \"),_c('el-radio',{attrs:{\"label\":\":maxage\"}},[_vm._v(\"Time-based\")])],1),_vm._v(\" \"),(_vm.prune === ':maxlen')?_c('el-form-item',{attrs:{\"label\":\"Max length\",\"label-width\":\"100\",\"label-position\":\"left\"}},[_c('el-input-number',{staticClass:\"top-margin\",attrs:{\"value\":_vm.data[1],\"min\":0,\"placeholder\":\"1500\",\"size\":\"large\"},on:{\"change\":function($event){return _vm.updateIntInput($event, ':maxlen')}}})],1):_vm._e(),_vm._v(\" \"),(_vm.prune === ':maxage')?_c('el-form-item',{attrs:{\"label\":\"Max age\",\"label-width\":\"100\",\"label-position\":\"left\"}},[_c('el-input-number',{staticClass:\"top-margin\",attrs:{\"value\":_vm.data[1],\"min\":0,\"placeholder\":\"3600\",\"size\":\"large\"},on:{\"change\":function($event){return _vm.updateIntInput($event, ':maxage')}}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=script&lang=js&\"","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"rate-limit-container\">\n <div v-if=\"!rateLimitAuthUsers\">\n <el-input-number\n :value=\"rateLimitAllUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter($event, setting.key, 'scale', 'oneLimit', rateLimitAllUsers)\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitAllUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter($event, setting.key, 'limit', 'oneLimit', rateLimitAllUsers)\"/>\n <div class=\"limit-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"toggleLimits([['', ''], ['', '']], setting.key)\"/>\n <p class=\"expl limit-expl\">Set different limits for unauthenticated and authenticated users</p>\n </div>\n </div>\n <div v-if=\"rateLimitAuthUsers\">\n <el-form-item class=\"rate-limit\">\n <div class=\"rate-limit-label-container\">\n <span class=\"rate-limit-label\">\n Unauthenticated users:\n </span>\n </div>\n <div class=\"rate-limit-content\">\n <el-input-number\n :value=\"rateLimitUnauthUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter(\n $event, setting.key, 'scale', 'unauthUsersLimit', [rateLimitUnauthUsers, rateLimitAuthUsers]\n )\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitUnauthUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter(\n $event, setting.key, 'limit', 'unauthUsersLimit', [rateLimitUnauthUsers, rateLimitAuthUsers]\n )\"/>\n </div>\n </el-form-item>\n <el-form-item class=\"rate-limit\">\n <div class=\"rate-limit-label-container\">\n <span class=\"rate-limit-label\">\n Authenticated users:\n </span>\n </div>\n <div class=\"rate-limit-content\">\n <el-input-number\n :value=\"rateLimitAuthUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter($event, setting.key, 'scale', 'authUserslimit', [rateLimitUnauthUsers, rateLimitAuthUsers])\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitAuthUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter($event, setting.key, 'limit', 'authUserslimit', [rateLimitUnauthUsers, rateLimitAuthUsers])\"/>\n </div>\n </el-form-item>\n <div class=\"limit-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"toggleLimits(['', ''], setting.key)\"/>\n <p class=\"expl limit-expl\">Set limit for all users</p>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'RateLimitInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n rateLimitAllUsers() {\n return this.data[this.setting.key] ? this.data[this.setting.key] : ['', '']\n },\n rateLimitAuthUsers() {\n return this.data[this.setting.key] && Array.isArray(this.data[this.setting.key][0])\n ? this.data[this.setting.key][1]\n : false\n },\n rateLimitUnauthUsers() {\n return this.data[this.setting.key] && Array.isArray(this.data[this.setting.key][1])\n ? this.data[this.setting.key][0]\n : false\n }\n },\n methods: {\n parseRateLimiter(value, input, typeOfInput, typeOfLimit, currentValue) {\n let valueToSend\n if (typeOfLimit === 'oneLimit') {\n valueToSend = typeOfInput === 'scale' ? [value, currentValue[1]] : [currentValue[0], value]\n } else if (typeOfLimit === 'unauthUsersLimit') {\n valueToSend = typeOfInput === 'scale'\n ? [[value, currentValue[0][1]], [currentValue[1][0], currentValue[1][1]]]\n : [[currentValue[0][0], value], [currentValue[1][0], currentValue[1][1]]]\n } else if (typeOfLimit === 'authUserslimit') {\n valueToSend = typeOfInput === 'scale'\n ? [[currentValue[0][0], currentValue[0][1]], [value, currentValue[1][1]]]\n : [[currentValue[0][0], currentValue[0][1]], [currentValue[1][0], value]]\n }\n this.updateSetting(valueToSend, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n },\n toggleLimits(value, input) {\n this.updateSetting(value, this.settingGroup.group, this.settingGroup.key, input)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSettings = Array.isArray(value[0])\n ? value.map(element => { return { 'tuple': element } })\n : { 'tuple': value }\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./RateLimitInput.vue?vue&type=template&id=6c808afe&\"\nimport script from \"./RateLimitInput.vue?vue&type=script&lang=js&\"\nexport * from \"./RateLimitInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RateLimitInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rate-limit-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[(!_vm.rateLimitAuthUsers)?_c('div',[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitAllUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'scale', 'oneLimit', _vm.rateLimitAllUsers)}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitAllUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'limit', 'oneLimit', _vm.rateLimitAllUsers)}}}),_vm._v(\" \"),_c('div',{staticClass:\"limit-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.toggleLimits([['', ''], ['', '']], _vm.setting.key)}}}),_vm._v(\" \"),_c('p',{staticClass:\"expl limit-expl\"},[_vm._v(\"Set different limits for unauthenticated and authenticated users\")])],1)],1):_vm._e(),_vm._v(\" \"),(_vm.rateLimitAuthUsers)?_c('div',[_c('el-form-item',{staticClass:\"rate-limit\"},[_c('div',{staticClass:\"rate-limit-label-container\"},[_c('span',{staticClass:\"rate-limit-label\"},[_vm._v(\"\\n Unauthenticated users:\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"rate-limit-content\"},[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitUnauthUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter(\n $event, _vm.setting.key, 'scale', 'unauthUsersLimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers]\n )}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitUnauthUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter(\n $event, _vm.setting.key, 'limit', 'unauthUsersLimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers]\n )}}})],1)]),_vm._v(\" \"),_c('el-form-item',{staticClass:\"rate-limit\"},[_c('div',{staticClass:\"rate-limit-label-container\"},[_c('span',{staticClass:\"rate-limit-label\"},[_vm._v(\"\\n Authenticated users:\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"rate-limit-content\"},[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitAuthUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'scale', 'authUserslimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers])}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitAuthUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'limit', 'authUserslimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers])}}})],1)]),_vm._v(\" \"),_c('div',{staticClass:\"limit-button-container\"},[_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.toggleLimits(['', ''], _vm.setting.key)}}}),_vm._v(\" \"),_c('p',{staticClass:\"expl limit-expl\"},[_vm._v(\"Set limit for all users\")])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=script&lang=js&\"","<template>\n <el-switch\n :value=\"data[setting.key]\"\n :data-search=\"setting.key\"\n class=\"switch-input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\"/>\n</template>\n\n<script>\nexport default {\n name: 'RegInvitesInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n methods: {\n updateSetting(value, group, key, input, type) {\n const registrationsOpen = this.$store.state.settings.settings[group][key][':registrations_open']\n const invitesEnabled = this.$store.state.settings.settings[group][key][':invites_enabled']\n if (input === ':registrations_open' && value && invitesEnabled) {\n this.$confirm(\n 'Enabling this setting requires invites to be disabled. Are you sure you want to open registrations?',\n 'Warning',\n { confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateSettings', { group, key, input: ':invites_enabled', value: false, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n this.$store.dispatch('UpdateState', { group, key, input: ':invites_enabled', value: false })\n })\n } else if (input === ':invites_enabled' && value && registrationsOpen) {\n this.$confirm(\n 'Enabling this setting requires registrations to be disabled. Are you sure you want to enable invitations?',\n 'Warning',\n { confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateSettings', { group, key, input: ':registrations_open', value: false, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n this.$store.dispatch('UpdateState', { group, key, input: ':registrations_open', value: false })\n })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./RegInvitesInput.vue?vue&type=template&id=55c7fa7c&\"\nimport script from \"./RegInvitesInput.vue?vue&type=script&lang=js&\"\nexport * from \"./RegInvitesInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RegInvitesInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-switch',{staticClass:\"switch-input\",attrs:{\"value\":_vm.data[_vm.setting.key],\"data-search\":_vm.setting.key},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"input\">\n <el-select\n v-if=\"renderMultipleSelect(setting.type)\"\n :value=\"inputValue\"\n :data-search=\"setting.key\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option v-for=\"(option, index) in options(setting.suggestions)\" :key=\"index\" :value=\"option.value\" :label=\"option.label\" />\n </el-select>\n <el-select\n v-if=\"setting.type === 'module' || (setting.type.includes('atom') && setting.type.includes('dropdown'))\"\n :value=\"inputValue === false ? 'false' : inputValue\"\n :data-search=\"setting.key || setting.group\"\n clearable\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option\n v-for=\"(option, index) in options(setting.suggestions)\"\n :value=\"option.value\"\n :label=\"option.label\"\n :key=\"index\"/>\n </el-select>\n </div>\n</template>\n\n<script>\nimport { getBooleanValue } from '@/store/modules/normalizers'\n\nexport default {\n name: 'SelectInputWithReducedLabels',\n props: {\n data: {\n type: [Array, Object],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n inputValue() {\n if (this.setting.key === 'Pleroma.Web.Auth.Authenticator') {\n return this.data.value\n } else if (this.setting.key === ':policies') {\n return typeof this.data[this.setting.key] === 'string'\n ? [this.data[this.setting.key]]\n : this.data[this.setting.key]\n } else {\n return this.data[this.setting.key]\n }\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n }\n },\n methods: {\n options(suggestions) {\n const prefixes = {\n ':policies': 'Pleroma.Web.ActivityPub.MRF.',\n 'Pleroma.Web.Auth.Authenticator': 'Pleroma.Web.Auth.',\n ':method': 'Pleroma.Captcha.',\n ':adapter': 'Swoosh.Adapters.',\n ':providers': 'Pleroma.Web.Metadata.Providers.',\n ':parsers': 'Pleroma.Web.RichMedia.Parsers.',\n ':ttl_setters': 'Pleroma.Web.RichMedia.Parser.',\n ':scrub_policy': 'Pleroma.HTML.',\n ':federation_publisher_modules': 'Pleroma.Web.',\n ':uploader': 'Pleroma.Uploaders.',\n ':filters': 'Pleroma.Upload.Filter.'\n }\n\n return suggestions.map(element => {\n const label = element.split(prefixes[this.setting.key])[1]\n ? element.split(prefixes[this.setting.key])[1]\n : element\n return { value: element, label }\n })\n },\n renderMultipleSelect(type) {\n return Array.isArray(type) && this.setting.key !== ':backends' && this.setting.key !== ':args' && (\n type.includes('module') ||\n (type.includes('list') && type.includes('string')) ||\n (type.includes('list') && type.includes('atom')) ||\n (type.includes('regex') && type.includes('string')) ||\n this.setting.key === ':args'\n )\n },\n updateSetting(value, group, key, input, type) {\n const updatedValue = getBooleanValue(value)\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedValue, type })\n this.$store.dispatch('UpdateState', { group, key, input, value: updatedValue })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./SelectInputWithReducedLabels.vue?vue&type=template&id=f003bd80&\"\nimport script from \"./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"\nexport * from \"./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SelectInputWithReducedLabels.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input\"},[(_vm.renderMultipleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},_vm._l((_vm.options(_vm.setting.suggestions)),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option.value,\"label\":option.label}})}),1):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'module' || (_vm.setting.type.includes('atom') && _vm.setting.type.includes('dropdown')))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue === false ? 'false' : _vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"clearable\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},_vm._l((_vm.options(_vm.setting.suggestions)),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option.value,\"label\":option.label}})}),1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"sender-input\">\n <el-input\n :value=\"sender.email\"\n placeholder=\"email address\"\n class=\"email-address-input\"\n @input=\"updateSender($event, 'email')\"/>\n <el-input\n :value=\"sender.nickname\"\n placeholder=\"nickname\"\n class=\"nickname-input\"\n @input=\"updateSender($event, 'nickname')\"/>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'SenderInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n sender() {\n return Object.keys(this.data).length === 0 ? { email: null, nickname: null } : this.data\n }\n },\n methods: {\n updateSender(value, inputType) {\n let data\n if (inputType === 'email') {\n data = { ...this.sender, email: value }\n } else {\n data = { ...this.sender, nickname: value }\n }\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const assembledData = value.nickname\n ? [value.nickname, value.email]\n : value.email\n\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, assembledData, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: assembledData, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SenderInput.vue?vue&type=template&id=01973d3a&\"\nimport script from \"./SenderInput.vue?vue&type=script&lang=js&\"\nexport * from \"./SenderInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SenderInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"sender-input\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-input',{staticClass:\"email-address-input\",attrs:{\"value\":_vm.sender.email,\"placeholder\":\"email address\"},on:{\"input\":function($event){return _vm.updateSender($event, 'email')}}}),_vm._v(\" \"),_c('el-input',{staticClass:\"nickname-input\",attrs:{\"value\":_vm.sender.nickname,\"placeholder\":\"nickname\"},on:{\"input\":function($event){return _vm.updateSender($event, 'nickname')}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"multiple-select-container\">\n <el-select\n v-if=\"setting.key === ':backends'\"\n :value=\"data.value\"\n :data-search=\"setting.key || setting.group\"\n multiple\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option value=\":console\" label=\"console\"/>\n <el-option value=\":ex_syslogger\" label=\"ExSyslogger\"/>\n <el-option value=\"Quack.Logger\" label=\"Quack.Logger\"/>\n </el-select>\n <el-select\n v-if=\"setting.key === ':args'\"\n :value=\"data[setting.key]\"\n :data-search=\"setting.key || setting.group\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option value=\"strip\"/>\n <el-option value=\"auto-orient\"/>\n <!-- eslint-disable -->\n <el-option value='{\"implode\", \"1\"}'/>\n <!-- eslint-enable -->\n </el-select>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'SpecificMultipleSelect',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n methods: {\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./SpecificMultipleSelect.vue?vue&type=template&id=755f759c&\"\nimport script from \"./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SpecificMultipleSelect.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"multiple-select-container\"},[(_vm.setting.key === ':backends')?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.data.value,\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},[_c('el-option',{attrs:{\"value\":\":console\",\"label\":\"console\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\":ex_syslogger\",\"label\":\"ExSyslogger\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"Quack.Logger\",\"label\":\"Quack.Logger\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':args')?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.data[_vm.setting.key],\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},[_c('el-option',{attrs:{\"value\":\"strip\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"auto-orient\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"{\\\"implode\\\", \\\"1\\\"}\"}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"input-container\">\n <div v-if=\"setting.type === 'keyword'\" class=\"keyword-container\">\n <el-form-item\n :label-width=\"customLabelWidth\"\n :class=\"labelClass\"\n :style=\"`margin-left:${margin}px;margin-bottom:0`\"\n :data-search=\"setting.key || setting.group\">\n <span slot=\"label\">\n {{ setting.label }}\n <el-tooltip v-if=\"canBeDeleted && isDesktop\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </span>\n </el-form-item>\n <el-form-item v-for=\"subSetting in setting.children\" :key=\"subSetting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting-parent=\"[...settingParent, subSetting]\"\n :setting=\"subSetting\"\n :data=\"data[setting.key]\"\n :custom-label-width=\"isMobile ? '100px' : '120px'\"\n :label-class=\"subSetting.type === 'keyword' ? 'center-label' : ''\"\n :margin=\"isDesktop ? margin + 15 : margin + 8\"\n :nested=\"true\"/>\n </el-form-item>\n </div>\n <el-form-item v-if=\"setting.type !== 'keyword'\" :label-width=\"customLabelWidth\" :class=\"labelClass\" :style=\"isDesktop ? '' : `margin-left:${margin}px`\">\n <span slot=\"label\">\n {{ setting.label }}\n <el-tooltip v-if=\"canBeDeleted && (isDesktop || isMobile)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </span>\n <div class=\"input-row\">\n <image-upload-input\n v-if=\"isImageUrl\"\n :data=\"data\"\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :input-value=\"inputValue\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"\n />\n <el-input\n v-else-if=\"setting.type === 'string' ||\n (Array.isArray(setting.type) && setting.type.includes('string') && setting.type.includes('atom'))\"\n :value=\"inputValue\"\n :placeholder=\"setting.suggestions ? setting.suggestions[0] : null\"\n :data-search=\"setting.key || setting.group\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-switch\n v-if=\"setting.type === 'boolean' && ![':registrations_open', ':invites_enabled'].includes(setting.key)\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n class=\"switch-input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-input-number\n v-if=\"setting.type === 'integer'\"\n :value=\"inputValue === null ? undefined : inputValue\"\n :placeholder=\"setting.suggestions ? setting.suggestions[0].toString() : null\"\n :min=\"0\"\n :size=\"isDesktop ? 'large' : 'medium'\"\n :data-search=\"setting.key || setting.group\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-select\n v-if=\"renderSingleSelect(setting.type)\"\n :value=\"inputValue === false ? 'false' : inputValue\"\n :data-search=\"setting.key || setting.group\"\n clearable\n class=\"input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <el-option\n v-for=\"(option, index) in setting.suggestions\"\n :value=\"option\"\n :key=\"index\"/>\n </el-select>\n <el-select\n v-if=\"renderMultipleSelect(setting.type)\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <el-option v-for=\"(option, index) in setting.suggestions\" :key=\"index\" :value=\"option\"/>\n </el-select>\n <el-input\n v-if=\"setting.key === ':ip'\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n placeholder=\"xxx.xxx.xxx.xx\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-input\n v-if=\"setting.type === 'atom'\"\n :value=\"inputValue\"\n :placeholder=\"setting.suggestions && setting.suggestions[0] ? setting.suggestions[0].substr(1) : ''\"\n :data-search=\"setting.key || setting.group\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <template slot=\"prepend\">:</template>\n </el-input>\n <!-- special inputs -->\n <editable-keyword-input v-if=\"editableKeyword(setting.key, setting.type)\" :data=\"keywordData\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <icons-input v-if=\"setting.key === ':icons'\" :data=\"iconsData\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <link-formatter-input v-if=\"booleanCombinedInput\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <mascots-input v-if=\"setting.key === ':mascots'\" :data=\"keywordData\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <proxy-url-input v-if=\"setting.key === ':proxy_url'\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <prune-input v-if=\"setting.key === ':prune'\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <rate-limit-input v-if=\"settingGroup.key === ':rate_limit'\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <reg-invites-input v-if=\"[':registrations_open', ':invites_enabled'].includes(setting.key)\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <select-input-with-reduced-labels v-if=\"reducedSelects\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <specific-multiple-select v-if=\"setting.key === ':backends' || setting.key === ':args'\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <sender-input v-if=\"senderInput(setting)\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <!-------------------->\n <el-tooltip v-if=\"canBeDeleted && isTablet\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\" class=\"delete-setting-button-container\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </div>\n <div\n v-if=\"setting.description && setting.type !== 'keyword'\"\n class=\"expl\"\n v-html=\"getFormattedDescription(setting.description)\"/>\n </el-form-item>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport {\n EditableKeywordInput,\n IconsInput,\n ImageUploadInput,\n LinkFormatterInput,\n MascotsInput,\n ProxyUrlInput,\n PruneInput,\n RateLimitInput,\n RegInvitesInput,\n SelectInputWithReducedLabels,\n SenderInput,\n SpecificMultipleSelect } from './inputComponents'\nimport { getBooleanValue, processNested } from '@/store/modules/normalizers'\nimport _ from 'lodash'\nimport marked from 'marked'\n\nexport default {\n name: 'Inputs',\n components: {\n EditableKeywordInput,\n IconsInput,\n ImageUploadInput,\n LinkFormatterInput,\n MascotsInput,\n ProxyUrlInput,\n PruneInput,\n RateLimitInput,\n RegInvitesInput,\n SelectInputWithReducedLabels,\n SenderInput,\n SpecificMultipleSelect\n },\n props: {\n customLabelWidth: {\n type: String,\n default: function() {\n return this.labelWidth\n },\n required: false\n },\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n labelClass: {\n type: String,\n default: function() {\n return 'label'\n },\n required: false\n },\n margin: {\n type: Number,\n default: function() {\n return 0\n },\n required: false\n },\n nested: {\n type: Boolean,\n default: function() {\n return false\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingParent: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n }\n },\n computed: {\n booleanCombinedInput() {\n return Array.isArray(this.setting.type) && this.setting.type.includes('boolean')\n },\n canBeDeleted() {\n const { group, key } = this.settingGroup\n return _.get(this.$store.state.settings.db, [group, key]) &&\n this.$store.state.settings.db[group][key].includes(this.setting.key)\n },\n iconsData() {\n return Array.isArray(this.data) ? this.data : []\n },\n inputValue() {\n if ([':esshd', ':cors_plug', ':quack', ':tesla', ':swoosh'].includes(this.settingGroup.group) &&\n this.data[this.setting.key]) {\n return this.setting.type === 'atom' && this.data[this.setting.key].value[0] === ':'\n ? this.data[this.setting.key].value.substr(1)\n : this.data[this.setting.key].value\n } else if ((this.settingGroup.group === ':logger' && this.setting.key === ':backends') ||\n this.setting.key === 'Pleroma.Web.Auth.Authenticator' ||\n this.setting.key === ':admin_token') {\n return this.data.value\n } else if (this.settingGroup.group === ':mime' && this.settingParent[0].key === ':types') {\n return this.data.value ? this.data.value[this.setting.key] : []\n } else if (this.setting.type === 'atom') {\n return this.data[this.setting.key] && this.data[this.setting.key][0] === ':' ? this.data[this.setting.key].substr(1) : this.data[this.setting.key]\n } else if (Array.isArray(this.setting.type) &&\n this.setting.type.find(el => Array.isArray(el) && el.includes('list'))) {\n return typeof this.data[this.setting.key] === 'string' ? [this.data[this.setting.key]] : this.data[this.setting.key]\n } else {\n return this.data[this.setting.key]\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n keywordData() {\n if (this.settingParent.length > 0 ||\n (Array.isArray(this.setting.type) && this.setting.type.includes('tuple') && this.setting.type.includes('list'))) {\n return Array.isArray(this.data[this.setting.key]) ? this.data[this.setting.key] : []\n }\n return Array.isArray(this.data) ? this.data : []\n },\n reducedSelects() {\n return [\n ':filters',\n ':uploader',\n ':federation_publisher_modules',\n ':scrub_policy',\n ':ttl_setters',\n ':parsers',\n ':providers',\n ':method',\n ':policies',\n 'Pleroma.Web.Auth.Authenticator'\n ].includes(this.setting.key) ||\n (this.settingGroup.key === 'Pleroma.Emails.Mailer' && this.setting.key === ':adapter')\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n isImageUrl() {\n return Array.isArray(this.setting.type) && this.setting.type.includes('image')\n }\n },\n methods: {\n editableKeyword(key, type) {\n return Array.isArray(type) && (\n (type.includes('map') && type.includes('string')) ||\n (type.includes('map') && type.findIndex(el => el.includes('list') && el.includes('string')) !== -1) ||\n (type.includes('keyword') && type.includes('integer')) ||\n (type.includes('keyword') && type.includes('string')) ||\n (type.includes('tuple') && type.includes('list')) ||\n (type.includes('keyword') && type.findIndex(el => el.includes('list') && el.includes('string')) !== -1)\n )\n },\n getFormattedDescription(desc) {\n return marked(desc)\n },\n processNestedData(value, group, parentKey, parents) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, value, group, parentKey, parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key: parentKey, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key: parentKey, input: setting.key, value: valueForState })\n },\n async removeSetting() {\n this.$confirm(\n this.$t('settings.removeSettingConfirmation'),\n {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(async() => {\n const config = this.settingGroup.key\n ? [{ group: this.settingGroup.group, key: this.settingGroup.key, delete: true, subkeys: [this.setting.key] }]\n : [{ group: this.settingGroup.group, key: this.setting.key, delete: true }]\n try {\n await this.$store.dispatch('RemoveSetting', config)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.successfullyRemoved')\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n },\n renderMultipleSelect(type) {\n return !this.reducedSelects && Array.isArray(type) && this.setting.key !== ':backends' && this.setting.key !== ':args' && (\n type.includes('module') ||\n (type.includes('list') && type.includes('string')) ||\n (type.includes('list') && type.includes('atom')) ||\n (!type.includes('keyword') && type.includes('regex') && type.includes('string'))\n )\n },\n renderSingleSelect(type) {\n return !this.reducedSelects && (\n type === 'module' ||\n (Array.isArray(type) && type.includes('atom') && type.includes('dropdown'))\n )\n },\n senderInput({ key, type }) {\n return Array.isArray(type) && type.includes('string') && type.includes('tuple') && key === ':sender'\n },\n update(value, group, key, parents, input, type, nested) {\n const updatedValue = this.renderSingleSelect(type) ? getBooleanValue(value) : value\n nested\n ? this.processNestedData(updatedValue, group, key, parents)\n : this.updateSetting(updatedValue, group, key, input, type)\n },\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Inputs.vue?vue&type=template&id=7e59d6ab&\"\nimport script from \"./Inputs.vue?vue&type=script&lang=js&\"\nexport * from \"./Inputs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Inputs.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input-container\"},[(_vm.setting.type === 'keyword')?_c('div',{staticClass:\"keyword-container\"},[_c('el-form-item',{class:_vm.labelClass,style:((\"margin-left:\" + _vm.margin + \"px;margin-bottom:0\")),attrs:{\"label-width\":_vm.customLabelWidth,\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\"\\n \"+_vm._s(_vm.setting.label)+\"\\n \"),(_vm.canBeDeleted && _vm.isDesktop)?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1)]),_vm._v(\" \"),_vm._l((_vm.setting.children),function(subSetting){return _c('el-form-item',{key:subSetting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting-parent\":_vm.settingParent.concat( [subSetting]),\"setting\":subSetting,\"data\":_vm.data[_vm.setting.key],\"custom-label-width\":_vm.isMobile ? '100px' : '120px',\"label-class\":subSetting.type === 'keyword' ? 'center-label' : '',\"margin\":_vm.isDesktop ? _vm.margin + 15 : _vm.margin + 8,\"nested\":true}})],1)})],2):_vm._e(),_vm._v(\" \"),(_vm.setting.type !== 'keyword')?_c('el-form-item',{class:_vm.labelClass,style:(_vm.isDesktop ? '' : (\"margin-left:\" + _vm.margin + \"px\")),attrs:{\"label-width\":_vm.customLabelWidth}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\"\\n \"+_vm._s(_vm.setting.label)+\"\\n \"),(_vm.canBeDeleted && (_vm.isDesktop || _vm.isMobile))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"input-row\"},[(_vm.isImageUrl)?_c('image-upload-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"input-value\":_vm.inputValue},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):(_vm.setting.type === 'string' ||\n (Array.isArray(_vm.setting.type) && _vm.setting.type.includes('string') && _vm.setting.type.includes('atom')))?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"placeholder\":_vm.setting.suggestions ? _vm.setting.suggestions[0] : null,\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'boolean' && ![':registrations_open', ':invites_enabled'].includes(_vm.setting.key))?_c('el-switch',{staticClass:\"switch-input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'integer')?_c('el-input-number',{attrs:{\"value\":_vm.inputValue === null ? undefined : _vm.inputValue,\"placeholder\":_vm.setting.suggestions ? _vm.setting.suggestions[0].toString() : null,\"min\":0,\"size\":_vm.isDesktop ? 'large' : 'medium',\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.renderSingleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue === false ? 'false' : _vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"clearable\":\"\"},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},_vm._l((_vm.setting.suggestions),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option}})}),1):_vm._e(),_vm._v(\" \"),(_vm.renderMultipleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},_vm._l((_vm.setting.suggestions),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option}})}),1):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':ip')?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"placeholder\":\"xxx.xxx.xxx.xx\"},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'atom')?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"placeholder\":_vm.setting.suggestions && _vm.setting.suggestions[0] ? _vm.setting.suggestions[0].substr(1) : '',\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},[_c('template',{slot:\"prepend\"},[_vm._v(\":\")])],2):_vm._e(),_vm._v(\" \"),(_vm.editableKeyword(_vm.setting.key, _vm.setting.type))?_c('editable-keyword-input',{attrs:{\"data\":_vm.keywordData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':icons')?_c('icons-input',{attrs:{\"data\":_vm.iconsData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.booleanCombinedInput)?_c('link-formatter-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':mascots')?_c('mascots-input',{attrs:{\"data\":_vm.keywordData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':proxy_url')?_c('proxy-url-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':prune')?_c('prune-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.key === ':rate_limit')?_c('rate-limit-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),([':registrations_open', ':invites_enabled'].includes(_vm.setting.key))?_c('reg-invites-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.reducedSelects)?_c('select-input-with-reduced-labels',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':backends' || _vm.setting.key === ':args')?_c('specific-multiple-select',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.senderInput(_vm.setting))?_c('sender-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.canBeDeleted && _vm.isTablet)?_c('el-tooltip',{staticClass:\"delete-setting-button-container\",attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1),_vm._v(\" \"),(_vm.setting.description && _vm.setting.type !== 'keyword')?_c('div',{staticClass:\"expl\",domProps:{\"innerHTML\":_vm._s(_vm.getFormattedDescription(_vm.setting.description))}}):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\">\n <el-form-item v-if=\"settingGroup.label || settingGroup.description\" :data-search=\"settingGroup.key || settingGroup.group\" class=\"description-container\">\n <span v-if=\"settingGroup.label\" class=\"setting-label\">{{ settingGroup.label }}</span>\n <span v-if=\"settingGroup.description\" class=\"expl no-top-margin\" v-html=\"getFormattedDescription(settingGroup.description)\"/>\n </el-form-item>\n <div v-if=\"settingGroup.key === 'Pleroma.Emails.Mailer'\">\n <div v-for=\"setting in settingGroup.children.filter(setting => !setting.group)\" :key=\"setting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"/>\n </div>\n <div\n v-for=\"setting in emailAdapterChildren\"\n :key=\"setting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"/>\n </div>\n </div>\n <div v-else>\n <div v-for=\"setting in settingGroup.children\" :key=\"setting.key\">\n <div v-if=\"!compound(setting)\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"\n :nested=\"false\"/>\n </div>\n <div v-if=\"compound(setting)\">\n <el-divider v-if=\"divideSetting(setting.key)\" class=\"divider\"/>\n <div v-if=\"!setting.children\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data[setting.key]\"\n :nested=\"true\"/>\n </div>\n <div v-else>\n <div class=\"input-container\">\n <el-form-item :data-search=\"setting.key || setting.group\" class=\"grouped-settings-header\">\n <span slot=\"label\">\n <el-tooltip v-if=\"isDesktop && canBeDeleted(setting.key)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" style=\"margin-left:5px\" @click=\"removeSetting(setting.key)\"/>\n </el-tooltip>\n </span>\n <span class=\"label-font\">{{ setting.label }}</span>\n <el-tooltip v-if=\"canBeDeleted(setting.key) && (isMobile || isTablet)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"settings-delete-button\" @click=\"removeSetting(setting.key)\"/>\n </el-tooltip>\n </el-form-item>\n </div>\n <div v-for=\"subSetting in setting.children\" :key=\"subSetting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting-parent=\"[setting, subSetting]\"\n :setting=\"subSetting\"\n :data=\"data[setting.key]\"\n :nested=\"true\"/>\n </div>\n </div>\n <el-divider v-if=\"notLastInGroup(setting.key)\" class=\"divider\"/>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Inputs from './Inputs'\nimport i18n from '@/lang'\nimport _ from 'lodash'\nimport marked from 'marked'\n\nexport default {\n name: 'Setting',\n components: {\n Inputs\n },\n props: {\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n data: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n emailAdapterChildren() {\n const adapter = this.$store.state.settings.settings[':pleroma']['Pleroma.Emails.Mailer'][':adapter']\n return this.settingGroup.children.filter(child => child.group && child.group.includes(adapter))\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.settings.loading\n }\n },\n methods: {\n canBeDeleted(settingKey) {\n const { group, key } = this.settingGroup\n const existingKey = key || settingKey\n return _.get(this.$store.state.settings.db, [group, existingKey]) &&\n this.$store.state.settings.db[group][existingKey].includes(settingKey)\n },\n compound({ type, key, children }) {\n return type === 'keyword' ||\n type === 'map' ||\n type.includes('keyword') ||\n type.includes('map')\n },\n divideSetting(key) {\n return [':sslopts', ':tlsopts', ':adapter', ':poll_limits', ':queues', ':styling', ':invalidation', ':multi_factor_authentication'].includes(key)\n },\n getFormattedDescription(desc) {\n return marked(desc)\n },\n notLastInGroup(key) {\n return this.settingGroup.children.slice(-1)[0].key !== key\n },\n async removeSetting(key) {\n this.$confirm(\n this.$t('settings.removeSettingConfirmation'),\n {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(async() => {\n const config = this.settingGroup.key\n ? [{ group: this.settingGroup.group, key: this.settingGroup.key, delete: true, subkeys: [key] }]\n : [{ group: this.settingGroup.group, key, delete: true }]\n try {\n await this.$store.dispatch('RemoveSetting', config)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.successfullyRemoved')\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n },\n updateSetting(value, tab, input) {\n this.$store.dispatch('UpdateSettings', { tab, data: { [input]: value }})\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=25e5eaa4&\"\nimport script from \"./Setting.vue?vue&type=script&lang=js&\"\nexport * from \"./Setting.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Setting.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',[(_vm.settingGroup.label || _vm.settingGroup.description)?_c('el-form-item',{staticClass:\"description-container\",attrs:{\"data-search\":_vm.settingGroup.key || _vm.settingGroup.group}},[(_vm.settingGroup.label)?_c('span',{staticClass:\"setting-label\"},[_vm._v(_vm._s(_vm.settingGroup.label))]):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.description)?_c('span',{staticClass:\"expl no-top-margin\",domProps:{\"innerHTML\":_vm._s(_vm.getFormattedDescription(_vm.settingGroup.description))}}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.key === 'Pleroma.Emails.Mailer')?_c('div',[_vm._l((_vm.settingGroup.children.filter(function (setting) { return !setting.group; })),function(setting){return _c('div',{key:setting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data}})],1)}),_vm._v(\" \"),_vm._l((_vm.emailAdapterChildren),function(setting){return _c('div',{key:setting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data}})],1)})],2):_c('div',_vm._l((_vm.settingGroup.children),function(setting){return _c('div',{key:setting.key},[(!_vm.compound(setting))?_c('div',[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data,\"nested\":false}})],1):_vm._e(),_vm._v(\" \"),(_vm.compound(setting))?_c('div',[(_vm.divideSetting(setting.key))?_c('el-divider',{staticClass:\"divider\"}):_vm._e(),_vm._v(\" \"),(!setting.children)?_c('div',[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data[setting.key],\"nested\":true}})],1):_c('div',[_c('div',{staticClass:\"input-container\"},[_c('el-form-item',{staticClass:\"grouped-settings-header\",attrs:{\"data-search\":setting.key || setting.group}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[(_vm.isDesktop && _vm.canBeDeleted(setting.key))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticStyle:{\"margin-left\":\"5px\"},attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSetting(setting.key)}}})],1):_vm._e()],1),_vm._v(\" \"),_c('span',{staticClass:\"label-font\"},[_vm._v(_vm._s(setting.label))]),_vm._v(\" \"),(_vm.canBeDeleted(setting.key) && (_vm.isMobile || _vm.isTablet))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"settings-delete-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSetting(setting.key)}}})],1):_vm._e()],1)],1),_vm._v(\" \"),_vm._l((setting.children),function(subSetting){return _c('div',{key:subSetting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting-parent\":[setting, subSetting],\"setting\":subSetting,\"data\":_vm.data[setting.key],\"nested\":true}})],1)})],2),_vm._v(\" \"),(_vm.notLastInGroup(setting.key))?_c('el-divider',{staticClass:\"divider\"}):_vm._e()],1):_vm._e()])}),0)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"activitypubData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\":activitypub\">\n <setting :setting-group=\"activitypub\" :data=\"activitypubData\"/>\n </el-form>\n <el-divider v-if=\"user\" class=\"divider thick-line\"/>\n <el-form :model=\"userData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\":user\">\n <setting :setting-group=\"user\" :data=\"userData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'ActivityPub',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n activitypub() {\n return this.settings.description.find(setting => setting.key === ':activitypub')\n },\n activitypubData() {\n return _.get(this.settings.settings, [':pleroma', ':activitypub']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n },\n user() {\n return this.settings.description.find(setting => setting.key === ':user')\n },\n userData() {\n return _.get(this.settings.settings, [':pleroma', ':user']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ActivityPub.vue?vue&type=template&id=54a49c6e&\"\nimport script from \"./ActivityPub.vue?vue&type=script&lang=js&\"\nexport * from \"./ActivityPub.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ActivityPub.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.activitypubData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\":activitypub\"}},[_c('setting',{attrs:{\"setting-group\":_vm.activitypub,\"data\":_vm.activitypubData}})],1),_vm._v(\" \"),(_vm.user)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.userData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\":user\"}},[_c('setting',{attrs:{\"setting-group\":_vm.user,\"data\":_vm.userData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"pleromaAuthenticatorData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"pleromaAuthenticator\" :data=\"pleromaAuthenticatorData\"/>\n </el-form>\n <el-divider v-if=\"pleromaAuthenticator\" class=\"divider thick-line\"/>\n <el-form :model=\"authData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"auth\" :data=\"authData\"/>\n </el-form>\n <el-divider v-if=\"auth\" class=\"divider thick-line\"/>\n <el-form :model=\"ldapData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"ldap\" :data=\"ldapData\"/>\n </el-form>\n <el-divider v-if=\"ldap\" class=\"divider thick-line\"/>\n <el-form :model=\"oauth2Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"oauth2\" :data=\"oauth2Data\"/>\n </el-form>\n <el-divider v-if=\"oauth2\" class=\"divider thick-line\"/>\n <el-form :model=\"restrictUnauthenticatedData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"restrictUnauthenticated\" :data=\"restrictUnauthenticatedData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Authentication',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n auth() {\n return this.settings.description.find(setting => setting.key === ':auth')\n },\n authData() {\n return _.get(this.settings.settings, [':pleroma', ':auth']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n ldap() {\n return this.settings.description.find(setting => setting.key === ':ldap')\n },\n ldapData() {\n return _.get(this.settings.settings, [':pleroma', ':ldap']) || {}\n },\n loading() {\n return this.settings.loading\n },\n oauth2() {\n return this.settings.description.find(setting => setting.key === ':oauth2')\n },\n oauth2Data() {\n return _.get(this.settings.settings, [':pleroma', ':oauth2']) || {}\n },\n pleromaAuthenticator() {\n return this.settings.description.find(setting => setting.children && setting.children[0].key === 'Pleroma.Web.Auth.Authenticator')\n },\n pleromaAuthenticatorData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Auth.Authenticator']) || {}\n },\n restrictUnauthenticated() {\n return this.settings.description.find(setting => setting.key === ':restrict_unauthenticated')\n },\n restrictUnauthenticatedData() {\n return _.get(this.settings.settings, [':pleroma', ':restrict_unauthenticated']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Authentication.vue?vue&type=template&id=3be43836&\"\nimport script from \"./Authentication.vue?vue&type=script&lang=js&\"\nexport * from \"./Authentication.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Authentication.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.pleromaAuthenticatorData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.pleromaAuthenticator,\"data\":_vm.pleromaAuthenticatorData}})],1),_vm._v(\" \"),(_vm.pleromaAuthenticator)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.authData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.auth,\"data\":_vm.authData}})],1),_vm._v(\" \"),(_vm.auth)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.ldapData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.ldap,\"data\":_vm.ldapData}})],1),_vm._v(\" \"),(_vm.ldap)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.oauth2Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.oauth2,\"data\":_vm.oauth2Data}})],1),_vm._v(\" \"),(_vm.oauth2)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.restrictUnauthenticatedData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.restrictUnauthenticated,\"data\":_vm.restrictUnauthenticatedData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"captchaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"captcha\" :data=\"captchaData\"/>\n </el-form>\n <el-divider v-if=\"captcha\" class=\"divider thick-line\"/>\n <el-form :model=\"kocaptchaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"kocaptcha\" :data=\"kocaptchaData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Captcha',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n captcha() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Captcha')\n },\n captchaData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Captcha']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n kocaptcha() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Captcha.Kocaptcha')\n },\n kocaptchaData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Captcha.Kocaptcha']) || {}\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Captcha.vue?vue&type=template&id=66ab985a&\"\nimport script from \"./Captcha.vue?vue&type=script&lang=js&\"\nexport * from \"./Captcha.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Captcha.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.captchaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.captcha,\"data\":_vm.captchaData}})],1),_vm._v(\" \"),(_vm.captcha)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.kocaptchaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.kocaptcha,\"data\":_vm.kocaptchaData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"esshdData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"esshd\" :data=\"esshdData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport { mapGetters } from 'vuex'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Esshd',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n esshd() {\n return this.settings.description.find(setting => setting.group === ':esshd')\n },\n esshdData() {\n return _.get(this.settings.settings, [':esshd']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n toggleEsshd(value) {\n this.$store.dispatch('ToggleEsshd', value)\n },\n updateSetting(value, tab, input) {\n this.$store.dispatch('UpdateSettings', { tab, data: { [input]: value }})\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Esshd.vue?vue&type=template&id=5a9ec988&\"\nimport script from \"./Esshd.vue?vue&type=script&lang=js&\"\nexport * from \"./Esshd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Esshd.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.esshdData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.esshd,\"data\":_vm.esshdData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"frontendData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"frontend\" :data=\"frontendData\"/>\n </el-form>\n <el-divider v-if=\"frontend\" class=\"divider thick-line\"/>\n <el-form :model=\"staticFeData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"staticFe\" :data=\"staticFeData\"/>\n </el-form>\n <el-divider v-if=\"staticFe\" class=\"divider thick-line\"/>\n <el-form :model=\"frontendsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"frontends\" :data=\"frontendsData\"/>\n </el-form>\n <el-divider v-if=\"frontends\" class=\"divider thick-line\"/>\n <el-form :model=\"assetsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"assets\" :data=\"assetsData\"/>\n </el-form>\n <el-divider v-if=\"assets\" class=\"divider thick-line\"/>\n <el-form :model=\"emojiData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"emoji\" :data=\"emojiData\"/>\n </el-form>\n <el-divider v-if=\"emoji\" class=\"divider thick-line\"/>\n <el-form :model=\"chatData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"chat\" :data=\"chatData\"/>\n </el-form>\n <el-divider v-if=\"chat\" class=\"divider thick-line\"/>\n <el-form :model=\"markupData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"markup\" :data=\"markupData\"/>\n </el-form>\n <el-divider v-if=\"preload\" class=\"divider thick-line\"/>\n <el-form :model=\"preloadData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"preload\" :data=\"preloadData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Frontend',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n assets() {\n return this.settings.description.find(setting => setting.key === ':assets')\n },\n assetsData() {\n return _.get(this.settings.settings, [':pleroma', ':assets']) || {}\n },\n chat() {\n return this.settings.description.find(setting => setting.key === ':chat')\n },\n chatData() {\n return _.get(this.settings.settings, [':pleroma', ':chat']) || {}\n },\n emoji() {\n return this.settings.description.find(setting => setting.key === ':emoji')\n },\n emojiData() {\n return _.get(this.settings.settings, [':pleroma', ':emoji']) || {}\n },\n frontend() {\n return this.settings.description.find(setting => setting.key === ':frontend_configurations')\n },\n frontendData() {\n return _.get(this.settings.settings, [':pleroma', ':frontend_configurations']) || {}\n },\n frontends() {\n return this.settings.description.find(setting => setting.key === ':frontends')\n },\n frontendsData() {\n return _.get(this.settings.settings, [':pleroma', ':frontends']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n markup() {\n return this.settings.description.find(setting => setting.key === ':markup')\n },\n markupData() {\n return _.get(this.settings.settings, [':pleroma', ':markup']) || {}\n },\n preload() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.Preload')\n },\n preloadData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Preload']) || {}\n },\n staticFe() {\n return this.settings.description.find(setting => setting.key === ':static_fe')\n },\n staticFeData() {\n return _.get(this.settings.settings, [':pleroma', ':static_fe']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Frontend.vue?vue&type=template&id=cca7df2a&\"\nimport script from \"./Frontend.vue?vue&type=script&lang=js&\"\nexport * from \"./Frontend.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Frontend.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.frontendData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.frontend,\"data\":_vm.frontendData}})],1),_vm._v(\" \"),(_vm.frontend)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.staticFeData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.staticFe,\"data\":_vm.staticFeData}})],1),_vm._v(\" \"),(_vm.staticFe)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.frontendsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.frontends,\"data\":_vm.frontendsData}})],1),_vm._v(\" \"),(_vm.frontends)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.assetsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.assets,\"data\":_vm.assetsData}})],1),_vm._v(\" \"),(_vm.assets)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.emojiData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.emoji,\"data\":_vm.emojiData}})],1),_vm._v(\" \"),(_vm.emoji)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.chatData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.chat,\"data\":_vm.chatData}})],1),_vm._v(\" \"),(_vm.chat)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.markupData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.markup,\"data\":_vm.markupData}})],1),_vm._v(\" \"),(_vm.preload)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.preloadData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.preload,\"data\":_vm.preloadData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"gopherData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"gopher\" :data=\"gopherData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Gopher',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n gopher() {\n return this.settings.description.find(setting => setting.key === ':gopher')\n },\n gopherData() {\n return _.get(this.settings.settings, [':pleroma', ':gopher']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Gopher.vue?vue&type=template&id=6ff77a41&\"\nimport script from \"./Gopher.vue?vue&type=script&lang=js&\"\nexport * from \"./Gopher.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Gopher.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.gopherData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.gopher,\"data\":_vm.gopherData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"httpData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"http\" :data=\"httpData\"/>\n </el-form>\n <el-divider v-if=\"http\" class=\"divider thick-line\"/>\n <el-form :model=\"corsPlugData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"corsPlug\" :data=\"corsPlugData\"/>\n </el-form>\n <el-divider v-if=\"corsPlug\" class=\"divider thick-line\"/>\n <el-form :model=\"httpSecurityData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"httpSecurity\" :data=\"httpSecurityData\"/>\n </el-form>\n <el-divider v-if=\"httpSecurity\" class=\"divider thick-line\"/>\n <el-form :model=\"webCacheTtlData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"webCacheTtl\" :data=\"webCacheTtlData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'HTTP',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n corsPlug() {\n return this.settings.description.find(setting => setting.group === ':cors_plug')\n },\n corsPlugData() {\n return _.get(this.settings.settings, [':cors_plug']) || {}\n },\n http() {\n return this.settings.description.find(setting => setting.key === ':http')\n },\n httpData() {\n return _.get(this.settings.settings, [':pleroma', ':http']) || {}\n },\n httpSecurity() {\n return this.settings.description.find(setting => setting.key === ':http_security')\n },\n httpSecurityData() {\n return _.get(this.settings.settings, [':pleroma', ':http_security']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n webCacheTtl() {\n return this.settings.description.find(setting => setting.key === ':web_cache_ttl')\n },\n webCacheTtlData() {\n return _.get(this.settings.settings, [':pleroma', ':web_cache_ttl']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Http.vue?vue&type=template&id=e1a70b9a&\"\nimport script from \"./Http.vue?vue&type=script&lang=js&\"\nexport * from \"./Http.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Http.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.httpData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.http,\"data\":_vm.httpData}})],1),_vm._v(\" \"),(_vm.http)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.corsPlugData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.corsPlug,\"data\":_vm.corsPlugData}})],1),_vm._v(\" \"),(_vm.corsPlug)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.httpSecurityData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.httpSecurity,\"data\":_vm.httpSecurityData}})],1),_vm._v(\" \"),(_vm.httpSecurity)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.webCacheTtlData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.webCacheTtl,\"data\":_vm.webCacheTtlData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"instanceData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"instance\" :data=\"instanceData\"/>\n </el-form>\n <el-divider v-if=\"instance\" class=\"divider thick-line\"/>\n <el-form :model=\"adminTokenData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"adminToken\" :data=\"adminTokenData\"/>\n </el-form>\n <el-divider v-if=\"adminToken\" class=\"divider thick-line\"/>\n <el-form :model=\"welcomeData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"welcome\" :data=\"welcomeData\"/>\n </el-form>\n <el-divider v-if=\"welcome\" class=\"divider thick-line\"/>\n <el-form :model=\"scheduledActivityData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"scheduledActivity\" :data=\"scheduledActivityData\"/>\n </el-form>\n <el-divider v-if=\"scheduledActivity\" class=\"divider thick-line\"/>\n <el-form :model=\"manifestData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"manifest\" :data=\"manifestData\"/>\n </el-form>\n <el-divider v-if=\"manifest\" class=\"divider thick-line\"/>\n <el-form :model=\"pleromaUserData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\"Pleroma.User\">\n <setting :setting-group=\"pleromaUser\" :data=\"pleromaUserData\"/>\n </el-form>\n <el-divider v-if=\"pleromaUser\" class=\"divider thick-line\"/>\n <el-form :model=\"faviconsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"favicons\" :data=\"faviconsData\"/>\n </el-form>\n <el-divider v-if=\"favicons\" class=\"divider thick-line\"/>\n <el-form :model=\"uriSchemesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uriSchemes\" :data=\"uriSchemesData\"/>\n </el-form>\n <el-divider v-if=\"uriSchemes\" class=\"divider thick-line\"/>\n <el-form :model=\"feedData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"feed\" :data=\"feedData\"/>\n </el-form>\n <el-divider v-if=\"feed\" class=\"divider thick-line\"/>\n <el-form :model=\"streamerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"streamer\" :data=\"streamerData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Instance',\n components: {\n Setting\n },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n adminToken() {\n return this.settings.description.find(setting => setting.children && setting.children[0].key === ':admin_token')\n },\n adminTokenData() {\n return _.get(this.settings.settings, [':pleroma', ':admin_token']) || {}\n },\n favicons() {\n return this.settings.description.find(setting => setting.key === ':instances_favicons')\n },\n faviconsData() {\n return _.get(this.settings.settings, [':pleroma', ':instances_favicons']) || {}\n },\n feed() {\n return this.settings.description.find(setting => setting.key === ':feed')\n },\n feedData() {\n return _.get(this.settings.settings, [':pleroma', ':feed']) || {}\n },\n instance() {\n return this.settings.description.find(setting => setting.key === ':instance')\n },\n instanceData() {\n return _.get(this.settings.settings, [':pleroma', ':instance']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n manifest() {\n return this.settings.description.find(setting => setting.key === ':manifest')\n },\n manifestData() {\n return _.get(this.settings.settings, [':pleroma', ':manifest']) || {}\n },\n pleromaUser() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.User')\n },\n pleromaUserData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.User']) || {}\n },\n scheduledActivity() {\n return this.$store.state.settings.description.find(setting => setting.key === 'Pleroma.ScheduledActivity')\n },\n scheduledActivityData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.ScheduledActivity']) || {}\n },\n streamer() {\n return this.$store.state.settings.description.find(setting => setting.key === ':streamer')\n },\n streamerData() {\n return _.get(this.settings.settings, [':pleroma', ':streamer']) || {}\n },\n uriSchemes() {\n return this.settings.description.find(setting => setting.key === ':uri_schemes')\n },\n uriSchemesData() {\n return _.get(this.settings.settings, [':pleroma', ':uri_schemes']) || {}\n },\n welcome() {\n return this.settings.description.find(setting => setting.key === ':welcome')\n },\n welcomeData() {\n return _.get(this.settings.settings, [':pleroma', ':welcome']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Instance.vue?vue&type=template&id=e19530e2&\"\nimport script from \"./Instance.vue?vue&type=script&lang=js&\"\nexport * from \"./Instance.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Instance.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.instanceData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.instance,\"data\":_vm.instanceData}})],1),_vm._v(\" \"),(_vm.instance)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.adminTokenData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.adminToken,\"data\":_vm.adminTokenData}})],1),_vm._v(\" \"),(_vm.adminToken)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.welcomeData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.welcome,\"data\":_vm.welcomeData}})],1),_vm._v(\" \"),(_vm.welcome)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.scheduledActivityData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.scheduledActivity,\"data\":_vm.scheduledActivityData}})],1),_vm._v(\" \"),(_vm.scheduledActivity)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.manifestData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.manifest,\"data\":_vm.manifestData}})],1),_vm._v(\" \"),(_vm.manifest)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.pleromaUserData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\"Pleroma.User\"}},[_c('setting',{attrs:{\"setting-group\":_vm.pleromaUser,\"data\":_vm.pleromaUserData}})],1),_vm._v(\" \"),(_vm.pleromaUser)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.faviconsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.favicons,\"data\":_vm.faviconsData}})],1),_vm._v(\" \"),(_vm.favicons)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uriSchemesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uriSchemes,\"data\":_vm.uriSchemesData}})],1),_vm._v(\" \"),(_vm.uriSchemes)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.feedData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.feed,\"data\":_vm.feedData}})],1),_vm._v(\" \"),(_vm.feed)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.streamerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.streamer,\"data\":_vm.streamerData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"obanQueuesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"obanQueues\" :data=\"obanQueuesData\"/>\n </el-form>\n <el-divider v-if=\"obanQueues\" class=\"divider thick-line\"/>\n <el-form :model=\"workersData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"workers\" :data=\"workersData\"/>\n </el-form>\n <el-divider v-if=\"workers\" class=\"divider thick-line\"/>\n <el-form :model=\"activityExpirationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"activityExpiration\" :data=\"activityExpirationData\"/>\n </el-form>\n <el-divider v-if=\"activityExpiration\" class=\"divider thick-line\"/>\n <el-form :model=\"connectionsPoolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"connectionsPools\" :data=\"connectionsPoolsData\"/>\n </el-form>\n <el-divider v-if=\"connectionsPools\" class=\"divider thick-line\"/>\n <el-form :model=\"poolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"pools\" :data=\"poolsData\"/>\n </el-form>\n <el-divider v-if=\"pools\" class=\"divider thick-line\"/>\n <el-form :model=\"hackneyPoolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"hackneyPools\" :data=\"hackneyPoolsData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'JobQueue',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n activityExpiration() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Workers.PurgeExpiredActivity')\n },\n activityExpirationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Workers.PurgeExpiredActivity']) || {}\n },\n connectionsPools() {\n return this.settings.description.find(setting => setting.key === ':connections_pool')\n },\n connectionsPoolsData() {\n return _.get(this.settings.settings, [':pleroma', ':connections_pool']) || {}\n },\n hackneyPools() {\n return this.settings.description.find(setting => setting.key === ':hackney_pools')\n },\n hackneyPoolsData() {\n return _.get(this.settings.settings, [':pleroma', ':hackney_pools']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n obanQueues() {\n return this.settings.description.find(setting => setting.key === 'Oban')\n },\n obanQueuesData() {\n return _.get(this.settings.settings, [':pleroma', 'Oban']) || {}\n },\n pools() {\n return this.settings.description.find(setting => setting.key === ':pools')\n },\n poolsData() {\n return _.get(this.settings.settings, [':pleroma', ':pools']) || {}\n },\n workers() {\n return this.settings.description.find(setting => setting.key === ':workers')\n },\n workersData() {\n return _.get(this.settings.settings, [':pleroma', ':workers']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./JobQueue.vue?vue&type=template&id=1753da4e&\"\nimport script from \"./JobQueue.vue?vue&type=script&lang=js&\"\nexport * from \"./JobQueue.vue?vue&type=script&lang=js&\"\nimport style0 from \"./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"JobQueue.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.obanQueuesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.obanQueues,\"data\":_vm.obanQueuesData}})],1),_vm._v(\" \"),(_vm.obanQueues)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.workersData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.workers,\"data\":_vm.workersData}})],1),_vm._v(\" \"),(_vm.workers)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.activityExpirationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.activityExpiration,\"data\":_vm.activityExpirationData}})],1),_vm._v(\" \"),(_vm.activityExpiration)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.connectionsPoolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.connectionsPools,\"data\":_vm.connectionsPoolsData}})],1),_vm._v(\" \"),(_vm.connectionsPools)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.poolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.pools,\"data\":_vm.poolsData}})],1),_vm._v(\" \"),(_vm.pools)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.hackneyPoolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.hackneyPools,\"data\":_vm.hackneyPoolsData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"linkFormatterData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"linkFormatter\" :data=\"linkFormatterData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'LinkFormatter',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n linkFormatter() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Formatter')\n },\n linkFormatterData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Formatter']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LinkFormatter.vue?vue&type=template&id=7fc32c68&\"\nimport script from \"./LinkFormatter.vue?vue&type=script&lang=js&\"\nexport * from \"./LinkFormatter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LinkFormatter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.linkFormatterData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.linkFormatter,\"data\":_vm.linkFormatterData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"loggerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"logger\" :data=\"loggerData\"/>\n </el-form>\n <el-divider v-if=\"logger\" class=\"divider thick-line\"/>\n <el-form :model=\"consoleData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"console\" :data=\"consoleData\"/>\n </el-form>\n <el-divider v-if=\"console\" class=\"divider thick-line\"/>\n <el-form :model=\"exsysloggerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"exsyslogger\" :data=\"exsysloggerData\"/>\n </el-form>\n <el-divider v-if=\"exsyslogger\" class=\"divider thick-line\"/>\n <el-form :model=\"quackData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"quack\" :data=\"quackData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Logger',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n console() {\n return this.settings.description.find(setting => setting.key === ':console')\n },\n consoleData() {\n return _.get(this.settings.settings, [':logger', ':console']) || {}\n },\n exsyslogger() {\n return this.settings.description.find(setting => setting.key === ':ex_syslogger')\n },\n exsysloggerData() {\n return _.get(this.settings.settings, [':logger', ':ex_syslogger']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n logger() {\n return this.settings.description.find(setting => setting.group === ':logger')\n },\n loggerData() {\n return _.get(this.settings.settings, [':logger', ':backends']) || {}\n },\n quack() {\n return this.settings.description.find(setting => setting.group === ':quack')\n },\n quackData() {\n return _.get(this.settings.settings, [':quack']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Logger.vue?vue&type=template&id=17a20fb1&\"\nimport script from \"./Logger.vue?vue&type=script&lang=js&\"\nexport * from \"./Logger.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Logger.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.loggerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.logger,\"data\":_vm.loggerData}})],1),_vm._v(\" \"),(_vm.logger)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.consoleData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.console,\"data\":_vm.consoleData}})],1),_vm._v(\" \"),(_vm.console)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.exsysloggerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.exsyslogger,\"data\":_vm.exsysloggerData}})],1),_vm._v(\" \"),(_vm.exsyslogger)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.quackData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.quack,\"data\":_vm.quackData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"mailerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mailer\" :data=\"mailerData\"/>\n </el-form>\n <el-divider v-if=\"mailer\" class=\"divider thick-line\"/>\n <el-form :model=\"swooshData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"swoosh\" :data=\"swooshData\"/>\n </el-form>\n <el-divider v-if=\"swoosh\" class=\"divider thick-line\"/>\n <el-form :model=\"emailNotificationsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"emailNotifications\" :data=\"emailNotificationsData\"/>\n </el-form>\n <el-divider v-if=\"emailNotifications\" class=\"divider thick-line\"/>\n <el-form :model=\"userEmailData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"userEmail\" :data=\"userEmailData\"/>\n </el-form>\n <el-divider v-if=\"userEmail\" class=\"divider thick-line\"/>\n <el-form :model=\"newUsersDigestEmailData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"newUsersDigestEmail\" :data=\"newUsersDigestEmailData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Mailer',\n components: {\n Setting\n },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n emailNotifications() {\n return this.settings.description.find(setting => setting.key === ':email_notifications')\n },\n emailNotificationsData() {\n return _.get(this.settings.settings, [':pleroma', ':email_notifications']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n },\n mailer() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.Mailer')\n },\n mailerData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.Mailer']) || {}\n },\n newUsersDigestEmail() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.NewUsersDigestEmail')\n },\n newUsersDigestEmailData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.NewUsersDigestEmail']) || {}\n },\n swoosh() {\n return this.settings.description.find(setting => setting.group === ':swoosh')\n },\n swooshData() {\n return _.get(this.settings.settings, [':swoosh']) || {}\n },\n userEmail() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.UserEmail')\n },\n userEmailData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.UserEmail']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Mailer.vue?vue&type=template&id=2076a984&\"\nimport script from \"./Mailer.vue?vue&type=script&lang=js&\"\nexport * from \"./Mailer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Mailer.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.mailerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mailer,\"data\":_vm.mailerData}})],1),_vm._v(\" \"),(_vm.mailer)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.swooshData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.swoosh,\"data\":_vm.swooshData}})],1),_vm._v(\" \"),(_vm.swoosh)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.emailNotificationsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.emailNotifications,\"data\":_vm.emailNotificationsData}})],1),_vm._v(\" \"),(_vm.emailNotifications)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.userEmailData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.userEmail,\"data\":_vm.userEmailData}})],1),_vm._v(\" \"),(_vm.userEmail)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.newUsersDigestEmailData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.newUsersDigestEmail,\"data\":_vm.newUsersDigestEmailData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"mediaProxyData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mediaProxy\" :data=\"mediaProxyData\"/>\n </el-form>\n <el-divider v-if=\"mediaProxy\" class=\"divider thick-line\"/>\n <el-form v-if=\"!loading\" :model=\"mediaPreviewProxyData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mediaPreviewProxy\" :data=\"mediaPreviewProxyData\"/>\n </el-form>\n <el-divider v-if=\"mediaPreviewProxy\" class=\"divider thick-line\"/>\n <el-form v-if=\"!loading\" :model=\"httpInvalidationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"httpInvalidation\" :data=\"httpInvalidationData\"/>\n </el-form>\n <el-divider v-if=\"httpInvalidation\" class=\"divider thick-line\"/>\n <el-form v-if=\"!loading\" :model=\"scriptInvalidationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"scriptInvalidation\" :data=\"scriptInvalidationData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'MediaProxy',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n httpInvalidation() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.MediaProxy.Invalidation.Http')\n },\n httpInvalidationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.MediaProxy.Invalidation.Http']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mediaPreviewProxy() {\n return this.settings.description.find(setting => setting.key === ':media_preview_proxy')\n },\n mediaPreviewProxyData() {\n return _.get(this.settings.settings, [':pleroma', ':media_preview_proxy']) || {}\n },\n mediaProxy() {\n return this.settings.description.find(setting => setting.key === ':media_proxy')\n },\n mediaProxyData() {\n return _.get(this.settings.settings, [':pleroma', ':media_proxy']) || {}\n },\n scriptInvalidation() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.MediaProxy.Invalidation.Script')\n },\n scriptInvalidationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.MediaProxy.Invalidation.Script']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MediaProxy.vue?vue&type=template&id=e23d0aac&\"\nimport script from \"./MediaProxy.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaProxy.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MediaProxy.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.mediaProxyData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mediaProxy,\"data\":_vm.mediaProxyData}})],1):_vm._e(),_vm._v(\" \"),(_vm.mediaProxy)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.mediaPreviewProxyData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mediaPreviewProxy,\"data\":_vm.mediaPreviewProxyData}})],1):_vm._e(),_vm._v(\" \"),(_vm.mediaPreviewProxy)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.httpInvalidationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.httpInvalidation,\"data\":_vm.httpInvalidationData}})],1):_vm._e(),_vm._v(\" \"),(_vm.httpInvalidation)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.scriptInvalidationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.scriptInvalidation,\"data\":_vm.scriptInvalidationData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"metadataData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"metadata\" :data=\"metadataData\"/>\n </el-form>\n <el-divider v-if=\"metadata\" class=\"divider thick-line\"/>\n <el-form :model=\"richMediaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"richMedia\" :data=\"richMediaData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Metadata',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n metadata() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.Metadata')\n },\n metadataData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Metadata']) || {}\n },\n richMedia() {\n return this.settings.description.find(setting => setting.key === ':rich_media')\n },\n richMediaData() {\n return _.get(this.settings.settings, [':pleroma', ':rich_media']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Metadata.vue?vue&type=template&id=20e3cd95&\"\nimport script from \"./Metadata.vue?vue&type=script&lang=js&\"\nexport * from \"./Metadata.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Metadata.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.metadataData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.metadata,\"data\":_vm.metadataData}})],1),_vm._v(\" \"),(_vm.metadata)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.richMediaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.richMedia,\"data\":_vm.richMediaData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <div v-for=\"setting in mrfSettings\" :key=\"setting.key\">\n <el-form v-if=\"showMrfPolicy(setting.key)\" :model=\"getSettingData(setting)\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"setting\" :data=\"getSettingData(setting)\"/>\n <el-divider v-if=\"setting\" class=\"divider thick-line\"/>\n </el-form>\n </div>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'MRF',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mrfSettings() {\n return this.settings.description.filter(el => el.tab === 'mrf')\n }\n },\n methods: {\n getSettingData(setting) {\n return _.get(this.settings.settings, [setting.group, setting.key]) || {}\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n },\n showMrfPolicy(key) {\n const selectedMrfPolicies = _.get(this.settings.settings, [':pleroma', ':mrf', ':policies'])\n const mappedPolicies = this.mrfSettings.reduce((acc, { key, related_policy }) => {\n if (key !== ':mrf') {\n acc[key] = related_policy\n }\n return acc\n }, {})\n return !Object.keys(mappedPolicies).includes(key) || selectedMrfPolicies.includes(mappedPolicies[key])\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MRF.vue?vue&type=template&id=4c2e0bc2&\"\nimport script from \"./MRF.vue?vue&type=script&lang=js&\"\nexport * from \"./MRF.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MRF.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_vm._l((_vm.mrfSettings),function(setting){return _c('div',{key:setting.key},[(_vm.showMrfPolicy(setting.key))?_c('el-form',{attrs:{\"model\":_vm.getSettingData(setting),\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":setting,\"data\":_vm.getSettingData(setting)}}),_vm._v(\" \"),(setting)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e()],1)}),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"mimeTypesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mimeTypes\" :data=\"mimeTypesData\"/>\n </el-form>\n <el-divider v-if=\"mimeTypes\" class=\"divider thick-line\"/>\n <el-form :model=\"remoteIpData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"remoteIp\" :data=\"remoteIpData\"/>\n </el-form>\n <el-divider v-if=\"remoteIpData\" class=\"divider thick-line\"/>\n <el-form :model=\"modulesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"modules\" :data=\"modulesData\"/>\n </el-form>\n <el-divider v-if=\"castAndValidate\" class=\"divider thick-line\"/>\n <el-form :model=\"castAndValidateData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"castAndValidate\" :data=\"castAndValidateData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Other',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n castAndValidate() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.ApiSpec.CastAndValidate')\n },\n castAndValidateData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.ApiSpec.CastAndValidate']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mimeTypes() {\n return this.settings.description.find(setting => setting.group === ':mime')\n },\n mimeTypesData() {\n return _.get(this.settings.settings, [':mime']) || {}\n },\n modules() {\n return this.settings.description.find(setting => setting.key === ':modules')\n },\n modulesData() {\n return _.get(this.settings.settings, [':pleroma', ':modules']) || {}\n },\n remoteIp() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.Plugs.RemoteIp')\n },\n remoteIpData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Plugs.RemoteIp']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Other.vue?vue&type=template&id=32960e66&\"\nimport script from \"./Other.vue?vue&type=script&lang=js&\"\nexport * from \"./Other.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Other.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.mimeTypesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mimeTypes,\"data\":_vm.mimeTypesData}})],1),_vm._v(\" \"),(_vm.mimeTypes)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.remoteIpData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.remoteIp,\"data\":_vm.remoteIpData}})],1),_vm._v(\" \"),(_vm.remoteIpData)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.modulesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.modules,\"data\":_vm.modulesData}})],1),_vm._v(\" \"),(_vm.castAndValidate)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.castAndValidateData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.castAndValidate,\"data\":_vm.castAndValidateData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"rateLimitersData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"rateLimiters\" :data=\"rateLimitersData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'RateLimiters',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n rateLimiters() {\n return this.settings.description.find(setting => setting.key === ':rate_limit')\n },\n rateLimitersData() {\n return _.get(this.settings.settings, [':pleroma', ':rate_limit']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RateLimiters.vue?vue&type=template&id=7dcebd79&\"\nimport script from \"./RateLimiters.vue?vue&type=script&lang=js&\"\nexport * from \"./RateLimiters.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RateLimiters.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.rateLimitersData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.rateLimiters,\"data\":_vm.rateLimitersData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"relays-container\">\n <div class=\"follow-relay-container\">\n <el-input v-model=\"newRelay\" :placeholder=\"$t('settings.followRelay')\" class=\"follow-relay\" @keyup.enter.native=\"followRelay\"/>\n <el-button @click.native=\"followRelay\">{{ $t('settings.follow') }}</el-button>\n </div>\n <el-table :data=\"relays\">\n <el-table-column\n :label=\"$t('settings.instanceUrl')\"\n prop=\"actor\"/>\n <el-table-column\n :label=\"$t('settings.followedBack')\"\n :width=\"getLabelWidth\"\n prop=\"followed_back\"\n align=\"center\">\n <template slot-scope=\"scope\">\n <i :class=\"scope.row.followed_back ? 'el-icon-check' : 'el-icon-minus'\"/>\n </template>\n </el-table-column>\n <el-table-column :label=\"$t('table.actions')\" :width=\"getLabelWidth\" fixed=\"right\" align=\"center\">\n <template slot-scope=\"scope\">\n <el-button\n type=\"text\"\n size=\"small\"\n @click.native=\"deleteRelay(scope.row.actor)\">\n {{ $t('table.unfollow') }}\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'Relays',\n data() {\n return {\n newRelay: ''\n }\n },\n computed: {\n getLabelWidth() {\n return this.isDesktop ? '130px' : '85px'\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.relays.loading\n },\n relays() {\n return this.$store.state.relays.fetchedRelays\n }\n },\n mounted() {\n this.$store.dispatch('FetchRelays')\n },\n methods: {\n followRelay() {\n this.$store.dispatch('AddRelay', this.newRelay)\n this.newRelay = ''\n },\n deleteRelay(relay) {\n this.$store.dispatch('DeleteRelay', relay)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Relays.vue?vue&type=template&id=ea95544e&\"\nimport script from \"./Relays.vue?vue&type=script&lang=js&\"\nexport * from \"./Relays.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Relays.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"relays-container\"},[_c('div',{staticClass:\"follow-relay-container\"},[_c('el-input',{staticClass:\"follow-relay\",attrs:{\"placeholder\":_vm.$t('settings.followRelay')},nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.followRelay($event)}},model:{value:(_vm.newRelay),callback:function ($$v) {_vm.newRelay=$$v},expression:\"newRelay\"}}),_vm._v(\" \"),_c('el-button',{nativeOn:{\"click\":function($event){return _vm.followRelay($event)}}},[_vm._v(_vm._s(_vm.$t('settings.follow')))])],1),_vm._v(\" \"),_c('el-table',{attrs:{\"data\":_vm.relays}},[_c('el-table-column',{attrs:{\"label\":_vm.$t('settings.instanceUrl'),\"prop\":\"actor\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('settings.followedBack'),\"width\":_vm.getLabelWidth,\"prop\":\"followed_back\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('i',{class:scope.row.followed_back ? 'el-icon-check' : 'el-icon-minus'})]}}],null,false,237257305)}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('table.actions'),\"width\":_vm.getLabelWidth,\"fixed\":\"right\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{attrs:{\"type\":\"text\",\"size\":\"small\"},nativeOn:{\"click\":function($event){return _vm.deleteRelay(scope.row.actor)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('table.unfollow'))+\"\\n \")])]}}],null,false,877363589)})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"uploadData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"upload\" :data=\"uploadData\"/>\n </el-form>\n <el-divider v-if=\"upload\" class=\"divider thick-line\"/>\n <el-form v-if=\"showUploadersLocal\" :model=\"uploadersLocalData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadersLocal\" :data=\"uploadersLocalData\"/>\n <el-divider v-if=\"uploadersLocal\" class=\"divider thick-line\"/>\n </el-form>\n <el-form v-if=\"showUploadersS3\" :model=\"s3Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"s3\" :data=\"s3Data\"/>\n <el-divider v-if=\"s3\" class=\"divider thick-line\"/>\n </el-form>\n <el-form v-if=\"showUploadersS3\" :model=\"uploadersS3Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadersS3\" :data=\"uploadersS3Data\"/>\n <el-divider v-if=\"uploadersS3\" class=\"divider thick-line\"/>\n </el-form>\n <el-form :model=\"uploadFilterMogrifyData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadFilterMogrify\" :data=\"uploadFilterMogrifyData\"/>\n </el-form>\n <el-divider v-if=\"uploadFilterMogrify\" class=\"divider thick-line\"/>\n <el-form :model=\"uploadAnonymizeFilenameData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadAnonymizeFilename\" :data=\"uploadAnonymizeFilenameData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Upload',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n s3() {\n return this.settings.description.find(setting => setting.key === ':s3')\n },\n s3Data() {\n return _.get(this.settings.settings, [':ex_aws', ':s3']) || {}\n },\n showUploadersS3() {\n const uploader = _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload', ':uploader'])\n return uploader === 'Pleroma.Uploaders.S3'\n },\n showUploadersLocal() {\n const uploader = _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload', ':uploader'])\n return uploader === 'Pleroma.Uploaders.Local'\n },\n upload() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload')\n },\n uploadData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload']) || {}\n },\n uploadersLocal() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Uploaders.Local')\n },\n uploadersLocalData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Uploaders.Local']) || {}\n },\n uploadersS3() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Uploaders.S3')\n },\n uploadersS3Data() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Uploaders.S3']) || {}\n },\n uploadFilterMogrify() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload.Filter.Mogrify')\n },\n uploadFilterMogrifyData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload.Filter.Mogrify']) || {}\n },\n uploadAnonymizeFilename() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload.Filter.AnonymizeFilename')\n },\n uploadAnonymizeFilenameData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload.Filter.AnonymizeFilename']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=ae996124&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Upload.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.uploadData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.upload,\"data\":_vm.uploadData}})],1),_vm._v(\" \"),(_vm.upload)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(_vm.showUploadersLocal)?_c('el-form',{attrs:{\"model\":_vm.uploadersLocalData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadersLocal,\"data\":_vm.uploadersLocalData}}),_vm._v(\" \"),(_vm.uploadersLocal)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.showUploadersS3)?_c('el-form',{attrs:{\"model\":_vm.s3Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.s3,\"data\":_vm.s3Data}}),_vm._v(\" \"),(_vm.s3)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.showUploadersS3)?_c('el-form',{attrs:{\"model\":_vm.uploadersS3Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadersS3,\"data\":_vm.uploadersS3Data}}),_vm._v(\" \"),(_vm.uploadersS3)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uploadFilterMogrifyData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadFilterMogrify,\"data\":_vm.uploadFilterMogrifyData}})],1),_vm._v(\" \"),(_vm.uploadFilterMogrify)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uploadAnonymizeFilenameData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadAnonymizeFilename,\"data\":_vm.uploadAnonymizeFilenameData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"vapidDetailsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"vapidDetails\" :data=\"vapidDetailsData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'WebPush',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n vapidDetails() {\n return this.settings.description.find(setting => setting.key === ':vapid_details')\n },\n vapidDetailsData() {\n return _.get(this.settings.settings, [':web_push_encryption', ':vapid_details']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WebPush.vue?vue&type=template&id=3ddc7c01&\"\nimport script from \"./WebPush.vue?vue&type=script&lang=js&\"\nexport * from \"./WebPush.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"WebPush.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.vapidDetailsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.vapidDetails,\"data\":_vm.vapidDetailsData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div :class=\"rebootIsSidebarOpen\" class=\"settings-container\">\n <div class=\"reboot-button-container\">\n <reboot-button/>\n </div>\n <div v-if=\"isDesktop\">\n <div :class=\"isSidebarOpen\" class=\"settings-header-container\">\n <h1 class=\"settings-header\">{{ $t('settings.settings') }}</h1>\n <div class=\"docs-search-container\">\n <el-link\n :underline=\"false\"\n href=\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\"\n target=\"_blank\">\n <el-button class=\"settings-docs-button\">\n <span>\n <i class=\"el-icon-document\"/>\n {{ $t('settings.seeDocs') }}\n </span>\n </el-button>\n </el-link>\n <el-autocomplete\n v-model=\"searchQuery\"\n :fetch-suggestions=\"querySearch\"\n :trigger-on-focus=\"false\"\n clearable\n placeholder=\"Search\"\n prefix-icon=\"el-icon-search\"\n class=\"settings-search-input\"\n @select=\"handleSearchSelect\"/>\n </div>\n </div>\n <el-tabs v-model=\"activeTab\" tab-position=\"left\">\n <el-tab-pane\n v-for=\"(value, componentName) in tabs\"\n :label=\"$t(value.label)\"\n :disabled=\"configDisabled || settingsCantBeChanged(value.settings)\"\n :key=\"componentName\"\n :name=\"componentName\"\n lazy>\n <component :is=\"componentName\"/>\n </el-tab-pane>\n </el-tabs>\n </div>\n <div v-if=\"isMobile || isTablet\">\n <div :class=\"isSidebarOpen\" class=\"settings-header-container\">\n <h1 class=\"settings-header\">{{ $t('settings.settings') }}</h1>\n </div>\n <div class=\"nav-container\">\n <el-select v-model=\"activeTab\" class=\"settings-menu\" placeholder=\"Select\">\n <el-option\n v-for=\"item in options\"\n :key=\"item.value\"\n :label=\"item.label\"\n :value=\"item.value\"\n :disabled=\"configDisabled\"/>\n </el-select>\n <el-link\n :underline=\"false\"\n href=\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\"\n target=\"_blank\">\n <el-button class=\"settings-docs-button\">\n <span>\n <i class=\"el-icon-document\"/>\n {{ $t('settings.seeDocs') }}\n </span>\n </el-button>\n </el-link>\n </div>\n <div class=\"settings-search-input-container\"/>\n <activity-pub v-if=\"activeTab === 'activityPub'\"/>\n <authentication v-if=\"activeTab === 'auth'\"/>\n <link-formatter v-if=\"activeTab === 'linkFormatter'\"/>\n <esshd v-if=\"activeTab === 'esshd'\"/>\n <captcha v-if=\"activeTab === 'captcha'\"/>\n <frontend v-if=\"activeTab === 'frontend'\"/>\n <gopher v-if=\"activeTab === 'gopher'\"/>\n <http v-if=\"activeTab === 'http'\"/>\n <instance v-if=\"activeTab === 'instance'\"/>\n <job-queue v-if=\"activeTab === 'jobQueue'\"/>\n <logger v-if=\"activeTab === 'logger'\"/>\n <mailer v-if=\"activeTab === 'mailer'\"/>\n <media-proxy v-if=\"activeTab === 'mediaProxy'\"/>\n <metadata v-if=\"activeTab === 'metadata'\"/>\n <mrf v-if=\"activeTab === 'mrf'\"/>\n <rate-limiters v-if=\"activeTab === 'rateLimiters'\"/>\n <relays v-if=\"activeTab === 'relays'\"/>\n <web-push v-if=\"activeTab === 'webPush'\"/>\n <upload v-if=\"activeTab === 'upload'\"/>\n <other v-if=\"activeTab === 'other'\"/>\n </div>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport { tabs } from './components/tabs'\nimport {\n ActivityPub,\n Authentication,\n Captcha,\n Esshd,\n Frontend,\n Gopher,\n Http,\n Instance,\n JobQueue,\n LinkFormatter,\n Logger,\n Mailer,\n MediaProxy,\n Metadata,\n Mrf,\n Other,\n RateLimiters,\n Relays,\n Upload,\n WebPush\n} from './components'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: {\n ActivityPub,\n Authentication,\n Captcha,\n Esshd,\n Frontend,\n Gopher,\n Http,\n Instance,\n JobQueue,\n LinkFormatter,\n Logger,\n Mailer,\n MediaProxy,\n Metadata,\n Mrf,\n Other,\n RateLimiters,\n Relays,\n RebootButton,\n Upload,\n WebPush\n },\n data() {\n return {\n options: [\n { value: 'activityPub', label: i18n.t('settings.activityPub') },\n { value: 'auth', label: i18n.t('settings.auth') },\n { value: 'linkFormatter', label: i18n.t('settings.linkFormatter') },\n { value: 'esshd', label: i18n.t('settings.esshd') },\n { value: 'captcha', label: i18n.t('settings.captcha') },\n { value: 'frontend', label: i18n.t('settings.frontend') },\n { value: 'gopher', label: i18n.t('settings.gopher') },\n { value: 'http', label: i18n.t('settings.http') },\n { value: 'instance', label: i18n.t('settings.instance') },\n { value: 'jobQueue', label: i18n.t('settings.jobQueue') },\n { value: 'logger', label: i18n.t('settings.logger') },\n { value: 'mailer', label: i18n.t('settings.mailer') },\n { value: 'mediaProxy', label: i18n.t('settings.mediaProxy') },\n { value: 'metadata', label: i18n.t('settings.metadata') },\n { value: 'mrf', label: i18n.t('settings.mrf') },\n { value: 'rateLimiters', label: i18n.t('settings.rateLimiters') },\n { value: 'relays', label: i18n.t('settings.relays') },\n { value: 'webPush', label: i18n.t('settings.webPush') },\n { value: 'upload', label: i18n.t('settings.upload') },\n { value: 'other', label: i18n.t('settings.other') }\n ],\n searchQuery: ''\n }\n },\n computed: {\n activeTab: {\n get() {\n return this.$store.state.settings.activeTab\n },\n set(tab) {\n this.$store.dispatch('SetActiveTab', tab)\n }\n },\n configDisabled() {\n return this.$store.state.settings.configDisabled\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'header-sidebar-opened' : 'header-sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n rebootIsSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'reboot-sidebar-opened' : 'reboot-sidebar-closed'\n },\n searchData() {\n return this.$store.state.settings.searchData\n },\n tabs() {\n return tabs(this.$store.state.settings.description)\n }\n },\n mounted: function() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchSettings')\n },\n methods: {\n async handleSearchSelect(selectedValue) {\n const tab = Object.keys(this.tabs).find(tab => {\n return this.tabs[tab].settings.includes(selectedValue.group === ':pleroma' ? selectedValue.key : selectedValue.group)\n })\n await this.$store.dispatch('SetActiveTab', tab)\n const selectedSetting = document.querySelector(`[data-search=\"${selectedValue.key}\"]`)\n if (selectedSetting) {\n selectedSetting.scrollIntoView({ block: 'start', behavior: 'smooth' })\n }\n },\n querySearch(queryString, cb) {\n const results = this.searchData.filter(searchObj => searchObj.search.find(el => el.includes(queryString.toLowerCase())))\n .map(searchObj => {\n return { value: `${searchObj.label} in ${searchObj.groupLabel}`, group: searchObj.groupKey, key: searchObj.key }\n })\n cb(results)\n },\n settingsCantBeChanged(settings) {\n const existingSettings = settings.filter(setting => {\n if ([':esshd', ':cors_plug', ':quack', ':logger', ':swoosh', ':mime'].includes(setting)) {\n return this.$store.state.settings.description.findIndex(el => el.group === setting) !== -1\n } else if (setting === 'Pleroma.Web.Auth.Authenticator' || setting === ':admin_token') {\n return this.$store.state.settings.description.findIndex(el => el.children[0].key === setting) !== -1\n } else if (setting === 'relays') {\n return [setting]\n } else {\n return this.$store.state.settings.description.findIndex(el => el.key === setting) !== -1\n }\n })\n return existingSettings.length === 0\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n@import './styles/main';\n@include settings\n</style>\n","export const tabs = description => {\n return {\n 'activity-pub': {\n label: 'settings.activityPub',\n settings: [':activitypub', ':user']\n },\n 'authentication': {\n label: 'settings.auth',\n settings: [':auth', ':ldap', ':oauth2', 'Pleroma.Web.Auth.Authenticator', ':restrict_unauthenticated']\n },\n 'esshd': {\n label: 'settings.esshd',\n settings: [':esshd']\n },\n 'captcha': {\n label: 'settings.captcha',\n settings: ['Pleroma.Captcha', 'Pleroma.Captcha.Kocaptcha']\n },\n 'frontend': {\n label: 'settings.frontend',\n settings: [':assets', ':chat', ':frontends', ':emoji', ':frontend_configurations', ':markup', ':static_fe']\n },\n 'gopher': {\n label: 'settings.gopher',\n settings: [':gopher']\n },\n 'http': {\n label: 'settings.http',\n settings: [':cors_plug', ':http', ':http_security', ':web_cache_ttl']\n },\n 'instance': {\n label: 'settings.instance',\n settings: [':admin_token', ':instance', ':instances_favicons', ':welcome', ':manifest', 'Pleroma.User', 'Pleroma.ScheduledActivity', ':uri_schemes', ':feed', ':streamer']\n },\n 'job-queue': {\n label: 'settings.jobQueue',\n settings: ['Pleroma.Workers.PurgeExpiredActivity', ':connections_pool', ':hackney_pools', 'Oban', ':pools', ':workers']\n },\n 'link-formatter': {\n label: 'settings.linkFormatter',\n settings: ['Pleroma.Formatter']\n },\n 'logger': {\n label: 'settings.logger',\n settings: [':console', ':ex_syslogger', ':quack', ':logger']\n },\n 'mailer': {\n label: 'settings.mailer',\n settings: [':email_notifications', 'Pleroma.Emails.Mailer', 'Pleroma.Emails.UserEmail', ':swoosh', 'Pleroma.Emails.NewUsersDigestEmail']\n },\n 'media-proxy': {\n label: 'settings.mediaProxy',\n settings: [':media_proxy', ':media_preview_proxy', 'Pleroma.Web.MediaProxy.Invalidation.Http', 'Pleroma.Web.MediaProxy.Invalidation.Script']\n },\n 'metadata': {\n label: 'settings.metadata',\n settings: ['Pleroma.Web.Metadata', ':rich_media']\n },\n 'mrf': {\n label: 'settings.mrf',\n settings: description.filter(el => el.tab === 'mrf').map(setting => setting.key)\n },\n 'rate-limiters': {\n label: 'settings.rateLimiters',\n settings: [':rate_limit']\n },\n 'relays': {\n label: 'settings.relays',\n settings: ['relays']\n },\n 'web-push': {\n label: 'settings.webPush',\n settings: [':vapid_details']\n },\n 'upload': {\n label: 'settings.upload',\n settings: ['Pleroma.Upload.Filter.AnonymizeFilename', 'Pleroma.Upload.Filter.Mogrify', 'Pleroma.Uploaders.S3', 'Pleroma.Uploaders.Local', 'Pleroma.Upload', ':s3']\n },\n 'other': {\n label: 'settings.other',\n settings: [':mime', 'Pleroma.Web.Plugs.RemoteIp', ':modules', 'Pleroma.Web.ApiSpec.CastAndValidate']\n }\n }\n}\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=82f78b3e&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"82f78b3e\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-60a9.15f68a0f.js b/priv/static/adminfe/static/js/chunk-60a9.15f68a0f.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-60a9"],{"/En5":function(e,t,n){},"0Ruq":function(e,t,n){"use strict";var a=n("/En5");n.n(a).a},"9/5/":function(e,t,n){(function(t){var n="Expected a function",a=NaN,r="[object Symbol]",i=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,u=parseInt,l="object"==typeof t&&t&&t.Object===Object&&t,d="object"==typeof self&&self&&self.Object===Object&&self,h=l||d||Function("return this")(),p=Object.prototype.toString,f=Math.max,v=Math.min,m=function(){return h.Date.now()};function b(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function g(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&p.call(e)==r}(e))return a;if(b(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=b(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(i,"");var n=s.test(e);return n||c.test(e)?u(e.slice(2),n?2:8):o.test(e)?a:+e}e.exports=function(e,t,a){var r,i,o,s,c,u,l=0,d=!1,h=!1,p=!0;if("function"!=typeof e)throw new TypeError(n);function y(t){var n=r,a=i;return r=i=void 0,l=t,s=e.apply(a,n)}function x(e){var n=e-u;return void 0===u||n>=t||n<0||h&&e-l>=o}function C(){var e=m();if(x(e))return _(e);c=setTimeout(C,function(e){var n=t-(e-u);return h?v(n,o-(e-l)):n}(e))}function _(e){return c=void 0,p&&r?y(e):(r=i=void 0,s)}function $(){var e=m(),n=x(e);if(r=arguments,i=this,u=e,n){if(void 0===c)return function(e){return l=e,c=setTimeout(C,t),d?y(e):s}(u);if(h)return c=setTimeout(C,t),y(u)}return void 0===c&&(c=setTimeout(C,t)),s}return t=g(t)||0,b(a)&&(d=!!a.leading,o=(h="maxWait"in a)?f(g(a.maxWait)||0,t):o,p="trailing"in a?!!a.trailing:p),$.cancel=function(){void 0!==c&&clearTimeout(c),l=0,r=u=i=c=void 0},$.flush=function(){return void 0===c?s:_(m())},$}}).call(this,n("yLpj"))},mAEd:function(e,t,n){"use strict";n.r(t);var a=n("9/5/"),r=n.n(a),i={name:"MediaProxyCache",components:{RebootButton:n("rIUS").a},data:function(){return{urls:"",ban:!1,search:"",selectedUrls:[]}},computed:{bannedUrls:function(){return this.$store.state.mediaProxyCache.bannedUrls},currentPage:function(){return this.$store.state.mediaProxyCache.currentPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.mediaProxyCache.loading},pageSize:function(){return this.$store.state.mediaProxyCache.pageSize},removeSelectedDisabled:function(){return 0===this.selectedUrls.length},urlsCount:function(){return this.$store.state.mediaProxyCache.totalUrlsCount}},created:function(){var e=this;this.handleDebounceSearchInput=r()(function(t){e.$store.dispatch("SearchUrls",{query:t,page:1})},500)},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("ListBannedUrls",{page:1})},methods:{evictURL:function(){var e=this.urls.split(",").map(function(e){return e.trim()}).filter(function(e){return e.length>0});this.$store.dispatch("PurgeUrls",{urls:e,ban:this.ban}),this.urls=""},handlePageChange:function(e){this.$store.dispatch("ListBannedUrls",{page:e})},handleSelectionChange:function(e){this.$data.selectedUrls=e},removeSelected:function(){var e=this.selectedUrls.map(function(e){return e.url});this.$store.dispatch("RemoveBannedUrls",e),this.selectedUrls=[]},removeUrl:function(e){this.$store.dispatch("RemoveBannedUrls",[e])}}},o=(n("0Ruq"),n("KHd+")),s=Object(o.a)(i,function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"media-proxy-cache-container"},[n("div",{staticClass:"media-proxy-cache-header-container"},[n("h1",[e._v(e._s(e.$t("mediaProxyCache.mediaProxyCache")))]),e._v(" "),n("reboot-button")],1),e._v(" "),n("p",{staticClass:"media-proxy-cache-header"},[e._v(e._s(e.$t("mediaProxyCache.evictObjectsHeader")))]),e._v(" "),n("div",{staticClass:"url-input-container"},[n("el-input",{staticClass:"url-input",attrs:{placeholder:e.$t("mediaProxyCache.url"),type:"textarea",autosize:"",clearable:""},model:{value:e.urls,callback:function(t){e.urls=t},expression:"urls"}}),e._v(" "),n("el-checkbox",{model:{value:e.ban,callback:function(t){e.ban=t},expression:"ban"}},[e._v(e._s(e.$t("mediaProxyCache.ban")))]),e._v(" "),n("el-button",{staticClass:"evict-button",on:{click:e.evictURL}},[e._v(e._s(e.$t("mediaProxyCache.evict")))])],1),e._v(" "),n("span",{staticClass:"expl url-input-expl"},[e._v(e._s(e.$t("mediaProxyCache.multipleInput")))]),e._v(" "),n("p",{staticClass:"media-proxy-cache-header"},[e._v(e._s(e.$t("mediaProxyCache.listBannedUrlsHeader")))]),e._v(" "),n("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],staticClass:"banned-urls-table",attrs:{data:e.bannedUrls},on:{"selection-change":e.handleSelectionChange}},[e._v(">\n "),n("el-table-column",{attrs:{type:"selection",align:"center",width:"55"}}),e._v(" "),n("el-table-column",{attrs:{"min-width":e.isDesktop?320:120,prop:"url"},scopedSlots:e._u([{key:"header",fn:function(t){return[n("el-input",{attrs:{placeholder:e.$t("users.search"),size:"mini","prefix-icon":"el-icon-search"},on:{input:e.handleDebounceSearchInput},model:{value:e.search,callback:function(t){e.search=t},expression:"search"}})]}}])}),e._v(" "),n("el-table-column",{scopedSlots:e._u([{key:"default",fn:function(t){return[n("el-button",{staticClass:"remove-url-button",attrs:{size:"mini"},on:{click:function(n){return e.removeUrl(t.row.url)}}},[e._v(e._s(e.$t("mediaProxyCache.remove")))])]}}])},[n("template",{slot:"header"},[n("el-button",{staticClass:"remove-url-button",attrs:{disabled:e.removeSelectedDisabled,size:"mini"},on:{click:function(t){return e.removeSelected()}}},[e._v(e._s(e.$t("mediaProxyCache.removeSelected")))])],1)],2)],1),e._v(" "),e.loading?e._e():n("div",{staticClass:"pagination"},[n("el-pagination",{attrs:{total:e.urlsCount,"current-page":e.currentPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handlePageChange}})],1)],1)},[],!1,null,"039e6dbb",null);s.options.__file="index.vue";t.default=s.exports}}]); +//# sourceMappingURL=chunk-60a9.15f68a0f.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-60a9.15f68a0f.js.map b/priv/static/adminfe/static/js/chunk-60a9.15f68a0f.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/mediaProxyCache/index.vue?a139","webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/mediaProxyCache/index.vue?8634","webpack:///./src/views/mediaProxyCache/index.vue?888e","webpack:///src/views/mediaProxyCache/index.vue","webpack:///./src/views/mediaProxyCache/index.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_039e6dbb_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","views_mediaProxyCachevue_type_script_lang_js_","name","components","RebootButton","data","urls","ban","search","selectedUrls","computed","bannedUrls","$store","state","mediaProxyCache","currentPage","isDesktop","app","device","loading","pageSize","removeSelectedDisabled","length","urlsCount","totalUrlsCount","created","_this","handleDebounceSearchInput","lodash_debounce_default","query","dispatch","page","mounted","methods","evictURL","split","map","url","trim","filter","el","handlePageChange","handleSelectionChange","$data","removeSelected","removeUrl","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","$t","attrs","placeholder","autosize","clearable","model","callback","$$v","expression","on","click","directives","rawName","selection-change","align","width","min-width","prop","scopedSlots","_u","key","fn","scope","size","prefix-icon","input","$event","row","slot","disabled","_e","total","current-page","page-size","hide-on-single-page","layout","current-change","__file","__webpack_exports__"],"mappings":"iIAAA,IAAAA,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAA+e,2BCA/e,SAAAG,GAUA,IAAAC,EAAA,sBAGAC,EAAA,IAGAC,EAAA,kBAGAC,EAAA,aAGAC,EAAA,qBAGAC,EAAA,aAGAC,EAAA,cAGAC,EAAAC,SAGAC,EAAA,iBAAAV,QAAAW,iBAAAX,EAGAY,EAAA,iBAAAC,iBAAAF,iBAAAE,KAGAC,EAAAJ,GAAAE,GAAAG,SAAA,cAAAA,GAUAC,EAPAL,OAAAM,UAOAC,SAGAC,EAAAC,KAAAC,IACAC,EAAAF,KAAAG,IAkBAC,EAAA,WACA,OAAAV,EAAAW,KAAAD,OA4MA,SAAAE,EAAAC,GACA,IAAAC,SAAAD,EACA,QAAAA,IAAA,UAAAC,GAAA,YAAAA,GA4EA,SAAAC,EAAAF,GACA,oBAAAA,EACA,OAAAA,EAEA,GAhCA,SAAAA,GACA,uBAAAA,GAtBA,SAAAA,GACA,QAAAA,GAAA,iBAAAA,EAsBAG,CAAAH,IAAAX,EAAAe,KAAAJ,IAAAxB,EA8BA6B,CAAAL,GACA,OAAAzB,EAEA,GAAAwB,EAAAC,GAAA,CACA,IAAAM,EAAA,mBAAAN,EAAAO,QAAAP,EAAAO,UAAAP,EACAA,EAAAD,EAAAO,KAAA,GAAAA,EAEA,oBAAAN,EACA,WAAAA,OAEAA,IAAAQ,QAAA/B,EAAA,IACA,IAAAgC,EAAA9B,EAAA+B,KAAAV,GACA,OAAAS,GAAA7B,EAAA8B,KAAAV,GACAnB,EAAAmB,EAAAW,MAAA,GAAAF,EAAA,KACA/B,EAAAgC,KAAAV,GAAAzB,GAAAyB,EAGAY,EAAAC,QAtPA,SAAAC,EAAAC,EAAAC,GACA,IAAAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAA,EACAC,GAAA,EACAC,GAAA,EACAC,GAAA,EAEA,sBAAAZ,EACA,UAAAa,UAAArD,GAUA,SAAAsD,EAAAC,GACA,IAAAC,EAAAb,EACAc,EAAAb,EAKA,OAHAD,EAAAC,OAAAc,EACAT,EAAAM,EACAT,EAAAN,EAAAmB,MAAAF,EAAAD,GAqBA,SAAAI,EAAAL,GACA,IAAAM,EAAAN,EAAAP,EAMA,YAAAU,IAAAV,GAAAa,GAAApB,GACAoB,EAAA,GAAAV,GANAI,EAAAN,GAMAJ,EAGA,SAAAiB,IACA,IAAAP,EAAAhC,IACA,GAAAqC,EAAAL,GACA,OAAAQ,EAAAR,GAGAR,EAAAiB,WAAAF,EAzBA,SAAAP,GACA,IAEAT,EAAAL,GAFAc,EAAAP,GAIA,OAAAG,EAAA9B,EAAAyB,EAAAD,GAHAU,EAAAN,IAGAH,EAoBAmB,CAAAV,IAGA,SAAAQ,EAAAR,GAKA,OAJAR,OAAAW,EAIAN,GAAAT,EACAW,EAAAC,IAEAZ,EAAAC,OAAAc,EACAZ,GAeA,SAAAoB,IACA,IAAAX,EAAAhC,IACA4C,EAAAP,EAAAL,GAMA,GAJAZ,EAAAyB,UACAxB,EAAAyB,KACArB,EAAAO,EAEAY,EAAA,CACA,QAAAT,IAAAX,EACA,OAvEA,SAAAQ,GAMA,OAJAN,EAAAM,EAEAR,EAAAiB,WAAAF,EAAArB,GAEAS,EAAAI,EAAAC,GAAAT,EAiEAwB,CAAAtB,GAEA,GAAAG,EAGA,OADAJ,EAAAiB,WAAAF,EAAArB,GACAa,EAAAN,GAMA,YAHAU,IAAAX,IACAA,EAAAiB,WAAAF,EAAArB,IAEAK,EAIA,OAxGAL,EAAAb,EAAAa,IAAA,EACAhB,EAAAiB,KACAQ,IAAAR,EAAAQ,QAEAL,GADAM,EAAA,YAAAT,GACAxB,EAAAU,EAAAc,EAAAG,UAAA,EAAAJ,GAAAI,EACAO,EAAA,aAAAV,MAAAU,YAiGAc,EAAAK,OAnCA,gBACAb,IAAAX,GACAyB,aAAAzB,GAEAE,EAAA,EACAN,EAAAK,EAAAJ,EAAAG,OAAAW,GA+BAQ,EAAAO,MA5BA,WACA,YAAAf,IAAAX,EAAAD,EAAAiB,EAAAxC,MA4BA2C,oECzPA,yBCA0MQ,GCyE1MC,KAAA,kBACAC,YAAAC,uBAAA,GACAC,KAHA,WAIA,OACAC,KAAA,GACAC,KAAA,EACAC,OAAA,GACAC,kBAGAC,UACAC,WADA,WAEA,OAAAf,KAAAgB,OAAAC,MAAAC,gBAAAH,YAEAI,YAJA,WAKA,OAAAnB,KAAAgB,OAAAC,MAAAC,gBAAAC,aAEAC,UAPA,WAQA,kBAAApB,KAAAgB,OAAAC,MAAAI,IAAAC,QAEAC,QAVA,WAWA,OAAAvB,KAAAgB,OAAAC,MAAAC,gBAAAK,SAEAC,SAbA,WAcA,OAAAxB,KAAAgB,OAAAC,MAAAC,gBAAAM,UAEAC,uBAhBA,WAiBA,WAAAzB,KAAAa,aAAAa,QAEAC,UAnBA,WAoBA,OAAA3B,KAAAgB,OAAAC,MAAAC,gBAAAU,iBAGAC,QAlCA,WAkCA,IAAAC,EAAA9B,KACAA,KAAA+B,0BAAAC,IAAA,SAAAC,GACAH,EAAAd,OAAAkB,SAAA,cAAAD,QAAAE,KAAA,KACA,MAEAC,QAvCA,WAwCApC,KAAAgB,OAAAkB,SAAA,eACAlC,KAAAgB,OAAAkB,SAAA,cACAlC,KAAAgB,OAAAkB,SAAA,kBAAAC,KAAA,KAEAE,SACAC,SADA,WAEA,IAAA5B,EAAAV,KAAAU,KAAA6B,MAAA,KAAAC,IAAA,SAAAC,GAAA,OAAAA,EAAAC,SAAAC,OAAA,SAAAC,GAAA,OAAAA,EAAAlB,OAAA,IACA1B,KAAAgB,OAAAkB,SAAA,aAAAxB,OAAAC,IAAAX,KAAAW,MACAX,KAAAU,KAAA,IAEAmC,iBANA,SAMAV,GACAnC,KAAAgB,OAAAkB,SAAA,kBAAAC,UAEAW,sBATA,SASAzF,GACA2C,KAAA+C,MAAAlC,aAAAxD,GAEA2F,eAZA,WAaA,IAAAtC,EAAAV,KAAAa,aAAA2B,IAAA,SAAAI,GAAA,OAAAA,EAAAH,MACAzC,KAAAgB,OAAAkB,SAAA,mBAAAxB,GACAV,KAAAa,iBAEAoC,UAjBA,SAiBAR,GACAzC,KAAAgB,OAAAkB,SAAA,oBAAAO,+BC9HAS,EAAgB7G,OAAA8G,EAAA,EAAA9G,CACdgE,EHTF,WAA0B,IAAA+C,EAAApD,KAAaqD,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,OAAiBE,YAAA,gCAA0CF,EAAA,OAAYE,YAAA,uCAAiDF,EAAA,MAAAH,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,uCAAAR,EAAAM,GAAA,KAAAH,EAAA,qBAAAH,EAAAM,GAAA,KAAAH,EAAA,KAA+HE,YAAA,6BAAuCL,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,0CAAAR,EAAAM,GAAA,KAAAH,EAAA,OAAuFE,YAAA,wBAAkCF,EAAA,YAAiBE,YAAA,YAAAI,OAA+BC,YAAAV,EAAAQ,GAAA,uBAAAtG,KAAA,WAAAyG,SAAA,GAAAC,UAAA,IAA2FC,OAAQ5G,MAAA+F,EAAA,KAAAc,SAAA,SAAAC,GAA0Cf,EAAA1C,KAAAyD,GAAaC,WAAA,UAAoBhB,EAAAM,GAAA,KAAAH,EAAA,eAAgCU,OAAO5G,MAAA+F,EAAA,IAAAc,SAAA,SAAAC,GAAyCf,EAAAzC,IAAAwD,GAAYC,WAAA,SAAmBhB,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,2BAAAR,EAAAM,GAAA,KAAAH,EAAA,aAA8EE,YAAA,eAAAY,IAA+BC,MAAAlB,EAAAd,YAAsBc,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,iCAAAR,EAAAM,GAAA,KAAAH,EAAA,QAA+EE,YAAA,wBAAkCL,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,qCAAAR,EAAAM,GAAA,KAAAH,EAAA,KAAgFE,YAAA,6BAAuCL,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,4CAAAR,EAAAM,GAAA,KAAAH,EAAA,YAA8FgB,aAAajE,KAAA,UAAAkE,QAAA,YAAAnH,MAAA+F,EAAA,QAAAgB,WAAA,YAA4EX,YAAA,oBAAAI,OAAyCpD,KAAA2C,EAAArC,YAAsBsD,IAAKI,mBAAArB,EAAAN,yBAA8CM,EAAAM,GAAA,WAAAH,EAAA,mBAA0CM,OAAOvG,KAAA,YAAAoH,MAAA,SAAAC,MAAA,QAAkDvB,EAAAM,GAAA,KAAAH,EAAA,mBAAoCM,OAAOe,YAAAxB,EAAAhC,UAAA,QAAAyD,KAAA,OAAmDC,YAAA1B,EAAA2B,KAAsBC,IAAA,SAAAC,GAAA,SAAAC,GAAgC,OAAA3B,EAAA,YAAuBM,OAAOC,YAAAV,EAAAQ,GAAA,gBAAAuB,KAAA,OAAAC,cAAA,kBAAkFf,IAAKgB,MAAAjC,EAAArB,2BAAsCkC,OAAQ5G,MAAA+F,EAAA,OAAAc,SAAA,SAAAC,GAA4Cf,EAAAxC,OAAAuD,GAAeC,WAAA,mBAA6BhB,EAAAM,GAAA,KAAAH,EAAA,mBAAoCuB,YAAA1B,EAAA2B,KAAqBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAA3B,EAAA,aAAwBE,YAAA,oBAAAI,OAAuCsB,KAAA,QAAcd,IAAKC,MAAA,SAAAgB,GAAyB,OAAAlC,EAAAH,UAAAiC,EAAAK,IAAA9C,SAAsCW,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,qCAA0DL,EAAA,YAAiBiC,KAAA,WAAcjC,EAAA,aAAkBE,YAAA,oBAAAI,OAAuC4B,SAAArC,EAAA3B,uBAAA0D,KAAA,QAAoDd,IAAKC,MAAA,SAAAgB,GAAyB,OAAAlC,EAAAJ,qBAA8BI,EAAAM,GAAAN,EAAAO,GAAAP,EAAAQ,GAAA,kDAAAR,EAAAM,GAAA,KAAAN,EAAA7B,QAAoV6B,EAAAsC,KAApVnC,EAAA,OAA8GE,YAAA,eAAyBF,EAAA,iBAAsBM,OAAO8B,MAAAvC,EAAAzB,UAAAiE,eAAAxC,EAAAjC,YAAA0E,YAAAzC,EAAA5B,SAAAsE,sBAAA,GAAAC,OAAA,qBAAoI1B,IAAK2B,iBAAA5C,EAAAP,qBAAuC,YGYpwF,EACA,KACA,WACA,MAIAK,EAAA7E,QAAA4H,OAAA,YACeC,EAAA,QAAAhD","file":"static/js/chunk-60a9.15f68a0f.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=039e6dbb&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=039e6dbb&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"media-proxy-cache-container\"},[_c('div',{staticClass:\"media-proxy-cache-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('mediaProxyCache.mediaProxyCache')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('p',{staticClass:\"media-proxy-cache-header\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.evictObjectsHeader')))]),_vm._v(\" \"),_c('div',{staticClass:\"url-input-container\"},[_c('el-input',{staticClass:\"url-input\",attrs:{\"placeholder\":_vm.$t('mediaProxyCache.url'),\"type\":\"textarea\",\"autosize\":\"\",\"clearable\":\"\"},model:{value:(_vm.urls),callback:function ($$v) {_vm.urls=$$v},expression:\"urls\"}}),_vm._v(\" \"),_c('el-checkbox',{model:{value:(_vm.ban),callback:function ($$v) {_vm.ban=$$v},expression:\"ban\"}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.ban')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"evict-button\",on:{\"click\":_vm.evictURL}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.evict')))])],1),_vm._v(\" \"),_c('span',{staticClass:\"expl url-input-expl\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.multipleInput')))]),_vm._v(\" \"),_c('p',{staticClass:\"media-proxy-cache-header\"},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.listBannedUrlsHeader')))]),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"banned-urls-table\",attrs:{\"data\":_vm.bannedUrls},on:{\"selection-change\":_vm.handleSelectionChange}},[_vm._v(\">\\n \"),_c('el-table-column',{attrs:{\"type\":\"selection\",\"align\":\"center\",\"width\":\"55\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"min-width\":_vm.isDesktop ? 320 : 120,\"prop\":\"url\"},scopedSlots:_vm._u([{key:\"header\",fn:function(scope){return [_c('el-input',{attrs:{\"placeholder\":_vm.$t('users.search'),\"size\":\"mini\",\"prefix-icon\":\"el-icon-search\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})]}}])}),_vm._v(\" \"),_c('el-table-column',{scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{staticClass:\"remove-url-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeUrl(scope.row.url)}}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.remove')))])]}}])},[_c('template',{slot:\"header\"},[_c('el-button',{staticClass:\"remove-url-button\",attrs:{\"disabled\":_vm.removeSelectedDisabled,\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSelected()}}},[_vm._v(_vm._s(_vm.$t('mediaProxyCache.removeSelected')))])],1)],2)],1),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.urlsCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"media-proxy-cache-container\">\n <div class=\"media-proxy-cache-header-container\">\n <h1>{{ $t('mediaProxyCache.mediaProxyCache') }}</h1>\n <reboot-button/>\n </div>\n <p class=\"media-proxy-cache-header\">{{ $t('mediaProxyCache.evictObjectsHeader') }}</p>\n <div class=\"url-input-container\">\n <el-input\n :placeholder=\"$t('mediaProxyCache.url')\"\n v-model=\"urls\"\n type=\"textarea\"\n autosize\n clearable\n class=\"url-input\"/>\n <el-checkbox v-model=\"ban\">{{ $t('mediaProxyCache.ban') }}</el-checkbox>\n <el-button class=\"evict-button\" @click=\"evictURL\">{{ $t('mediaProxyCache.evict') }}</el-button>\n </div>\n <span class=\"expl url-input-expl\">{{ $t('mediaProxyCache.multipleInput') }}</span>\n <p class=\"media-proxy-cache-header\">{{ $t('mediaProxyCache.listBannedUrlsHeader') }}</p>\n <el-table\n v-loading=\"loading\"\n :data=\"bannedUrls\"\n class=\"banned-urls-table\"\n @selection-change=\"handleSelectionChange\">>\n <el-table-column\n type=\"selection\"\n align=\"center\"\n width=\"55\"/>\n <el-table-column :min-width=\"isDesktop ? 320 : 120\" prop=\"url\">\n <template slot=\"header\" slot-scope=\"scope\">\n <el-input\n :placeholder=\"$t('users.search')\"\n v-model=\"search\"\n size=\"mini\"\n prefix-icon=\"el-icon-search\"\n @input=\"handleDebounceSearchInput\"/>\n </template>\n </el-table-column>\n <el-table-column>\n <template slot=\"header\">\n <el-button\n :disabled=\"removeSelectedDisabled\"\n size=\"mini\"\n class=\"remove-url-button\"\n @click=\"removeSelected()\">{{ $t('mediaProxyCache.removeSelected') }}</el-button>\n </template>\n <template slot-scope=\"scope\">\n <el-button\n size=\"mini\"\n class=\"remove-url-button\"\n @click=\"removeUrl(scope.row.url)\">{{ $t('mediaProxyCache.remove') }}</el-button>\n </template>\n </el-table-column>\n </el-table>\n <div v-if=\"!loading\" class=\"pagination\">\n <el-pagination\n :total=\"urlsCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport debounce from 'lodash.debounce'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n name: 'MediaProxyCache',\n components: { RebootButton },\n data() {\n return {\n urls: '',\n ban: false,\n search: '',\n selectedUrls: []\n }\n },\n computed: {\n bannedUrls() {\n return this.$store.state.mediaProxyCache.bannedUrls\n },\n currentPage() {\n return this.$store.state.mediaProxyCache.currentPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.mediaProxyCache.loading\n },\n pageSize() {\n return this.$store.state.mediaProxyCache.pageSize\n },\n removeSelectedDisabled() {\n return this.selectedUrls.length === 0\n },\n urlsCount() {\n return this.$store.state.mediaProxyCache.totalUrlsCount\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.$store.dispatch('SearchUrls', { query, page: 1 })\n }, 500)\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('ListBannedUrls', { page: 1 })\n },\n methods: {\n evictURL() {\n const urls = this.urls.split(',').map(url => url.trim()).filter(el => el.length > 0)\n this.$store.dispatch('PurgeUrls', { urls, ban: this.ban })\n this.urls = ''\n },\n handlePageChange(page) {\n this.$store.dispatch('ListBannedUrls', { page })\n },\n handleSelectionChange(value) {\n this.$data.selectedUrls = value\n },\n removeSelected() {\n const urls = this.selectedUrls.map(el => el.url)\n this.$store.dispatch('RemoveBannedUrls', urls)\n this.selectedUrls = []\n },\n removeUrl(url) {\n this.$store.dispatch('RemoveBannedUrls', [url])\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\nh1 {\n margin: 0;\n}\n.expl {\n color: #666666;\n font-size: 13px;\n line-height: 22px;\n margin: 5px 0 0 0;\n overflow-wrap: break-word;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.banned-urls-table {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n.evict-button {\n margin-left: 15px;\n}\n.media-proxy-cache-header {\n margin-left: 15px;\n margin-top: 22px;\n font-weight: 500;\n}\n.media-proxy-cache-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n}\n.pagination {\n margin: 25px 0;\n text-align: center;\n}\n.remove-url-button {\n width: 150px;\n}\n.url-input {\n margin-right: 15px;\n}\n.url-input-container {\n display: flex;\n align-items: baseline;\n margin: 15px 15px 5px 15px;\n}\n.url-input-expl {\n margin-left: 15px;\n}\n\n@media only screen and (max-width:480px) {\n .url-input {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=039e6dbb&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=039e6dbb&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"039e6dbb\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-654d.653b067f.js b/priv/static/adminfe/static/js/chunk-654d.653b067f.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-654d"],{"0M56":function(t,e,s){"use strict";var n=s("JV9I");s.n(n).a},"0tb0":function(t,e,s){"use strict";var n=s("n2GA");s.n(n).a},"9/5/":function(t,e,s){(function(e){var s="Expected a function",n=NaN,r="[object Symbol]",a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt,u="object"==typeof e&&e&&e.Object===Object&&e,j="object"==typeof self&&self&&self.Object===Object&&self,d=u||j||Function("return this")(),m=Object.prototype.toString,g=Math.max,p=Math.min,f=function(){return d.Date.now()};function h(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function v(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&m.call(t)==r}(t))return n;if(h(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=h(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var s=i.test(t);return s||l.test(t)?c(t.slice(2),s?2:8):o.test(t)?n:+t}t.exports=function(t,e,n){var r,a,o,i,l,c,u=0,j=!1,d=!1,m=!0;if("function"!=typeof t)throw new TypeError(s);function b(e){var s=r,n=a;return r=a=void 0,u=e,i=t.apply(n,s)}function y(t){var s=t-c;return void 0===c||s>=e||s<0||d&&t-u>=o}function k(){var t=f();if(y(t))return x(t);l=setTimeout(k,function(t){var s=e-(t-c);return d?p(s,o-(t-u)):s}(t))}function x(t){return l=void 0,m&&r?b(t):(r=a=void 0,i)}function z(){var t=f(),s=y(t);if(r=arguments,a=this,c=t,s){if(void 0===l)return function(t){return u=t,l=setTimeout(k,e),j?b(t):i}(c);if(d)return l=setTimeout(k,e),b(c)}return void 0===l&&(l=setTimeout(k,e)),i}return e=v(e)||0,h(n)&&(j=!!n.leading,o=(d="maxWait"in n)?g(v(n.maxWait)||0,e):o,m="trailing"in n?!!n.trailing:m),z.cancel=function(){void 0!==l&&clearTimeout(l),u=0,r=c=a=l=void 0},z.flush=function(){return void 0===l?i:x(f())},z}}).call(this,s("yLpj"))},CmY0:function(t,e,s){"use strict";s.r(e);var n=s("wd/R"),r=s.n(n),a=s("LvDl"),o=s.n(a),i=s("9/5/"),l=s.n(i),c=s("rIUS"),u={name:"LogEntryMessage",props:{actor:{type:Object,required:!0},message:{type:String,required:!0}},computed:{logEntryMessage:function(){return this.message.split(this.actor.nickname)[1]}},methods:{propertyExists:function(t,e){return t[e]}}},j=(s("0tb0"),s("KHd+")),d=Object(j.a)(u,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("span",[t.propertyExists(t.actor,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.actor.id}}}},[t.propertyExists(t.actor,"nickname")?s("span",{staticStyle:{"font-weight":"600"}},[t._v("\n @"+t._s(t.actor.nickname)+"\n ")]):t._e()]):t._e(),t._v(" "),s("span",[t._v(t._s(t.logEntryMessage))])],1)},[],!1,null,null,null);d.options.__file="LogEntryMessage.vue";var m=d.exports,g={components:{RebootButton:c.a,LogEntryMessage:m},data:function(){return{dateRange:"",search:"",user:"",currentPage:1}},computed:{isMobile:function(){return"mobile"===this.$store.state.app.device},loading:function(){return this.$store.state.moderationLog.logLoading&&this.$store.state.moderationLog.adminsLoading},log:function(){return this.$store.state.moderationLog.fetchedLog},total:function(){return this.$store.state.moderationLog.logItemsCount},users:function(){return[{label:"Admins",options:this.$store.state.moderationLog.admins.users},{label:"Moderators",options:this.$store.state.moderationLog.moderators.users}]}},created:function(){var t=this;this.handleDebounceSearchInput=l()(function(e){t.fetchLogWithFilters()},500)},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchModerationLog"),this.$store.dispatch("FetchAdmins")},methods:{fetchLogWithFilters:function(){var t=o.a.omitBy({start_date:this.dateRange?this.dateRange[0].toISOString():null,end_date:this.dateRange?this.dateRange[1].toISOString():null,user_id:this.user,search:this.search,page:this.currentPage},function(t){return""===t||null===t});this.$store.dispatch("FetchModerationLog",t)},normalizeTimestamp:function(t){return r()(1e3*t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,e){return t[e]}}},p=(s("0M56"),Object(j.a)(g,function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.loading?t._e():s("div",{staticClass:"moderation-log-container"},[s("div",{staticClass:"moderation-log-header-container"},[s("h1",[t._v(t._s(t.$t("moderationLog.moderationLog")))]),t._v(" "),s("reboot-button")],1),t._v(" "),s("div",{staticClass:"moderation-log-nav-container"},[s("el-select",{staticClass:"moderation-log-user-select",attrs:{clearable:"",placeholder:"Filter by admin/moderator"},on:{change:t.fetchLogWithFilters},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}},t._l(t.users,function(e){return s("el-option-group",{key:e.label,attrs:{label:e.label}},t._l(e.options,function(t){return s("el-option",{key:t.id,attrs:{label:t.nickname,value:t.id}})}),1)}),1),t._v(" "),s("el-input",{staticClass:"moderation-log-search",attrs:{placeholder:"Search logs",clearable:""},on:{input:t.handleDebounceSearchInput},model:{value:t.search,callback:function(e){t.search=e},expression:"search"}})],1),t._v(" "),s("el-date-picker",{staticClass:"moderation-log-date-panel",attrs:{"default-time":["00:00:00","23:59:59"],type:"daterange","start-placeholder":"Start date","end-placeholder":"End date","unlink-panels":""},on:{change:t.fetchLogWithFilters},model:{value:t.dateRange,callback:function(e){t.dateRange=e},expression:"dateRange"}}),t._v(" "),s("el-timeline",t._l(t.log,function(e,n){return s("el-timeline-item",{key:n,attrs:{timestamp:t.normalizeTimestamp(e.time)}},[t.propertyExists(e.data.actor,"nickname")?s("log-entry-message",{attrs:{actor:e.data.actor,message:e.message}}):s("span",[t._v(t._s(e.message))])],1)}),1),t._v(" "),s("div",{staticClass:"pagination"},[s("el-pagination",{attrs:{"current-page":t.currentPage,"hide-on-single-page":!0,"page-size":50,total:t.total,small:t.isMobile,layout:"prev, pager, next"},on:{"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e},"current-change":t.fetchLogWithFilters}})],1)],1)},[],!1,null,"60b585cf",null));p.options.__file="index.vue";e.default=p.exports},JV9I:function(t,e,s){},RnhZ:function(t,e,s){var n={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=a(t);return s(e)}function a(t){if(!s.o(n,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return n[t]}r.keys=function(){return Object.keys(n)},r.resolve=a,t.exports=r,r.id="RnhZ"},n2GA:function(t,e,s){}}]); -//# sourceMappingURL=chunk-654d.653b067f.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-654d.653b067f.js.map b/priv/static/adminfe/static/js/chunk-654d.653b067f.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/moderation_log/index.vue?678d","webpack:///./src/views/moderation_log/LogEntryMessage.vue?45d8","webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/moderation_log/index.vue?f0fa","webpack:///./src/views/moderation_log/LogEntryMessage.vue?15ac","webpack:///src/views/moderation_log/LogEntryMessage.vue","webpack:///./src/views/moderation_log/LogEntryMessage.vue","webpack:///./src/views/moderation_log/LogEntryMessage.vue?cbf8","webpack:///./src/views/moderation_log/index.vue?bce9","webpack:///src/views/moderation_log/index.vue","webpack:///./src/views/moderation_log/index.vue","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_60b585cf_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LogEntryMessage_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","moderation_log_LogEntryMessagevue_type_script_lang_js_","name","props","actor","required","message","String","computed","logEntryMessage","split","nickname","methods","propertyExists","account","property","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","to","params","id","staticStyle","font-weight","_v","_s","_e","__file","LogEntryMessage","views_moderation_logvue_type_script_lang_js_","components","RebootButton","data","dateRange","search","user","currentPage","isMobile","$store","state","app","device","loading","moderationLog","logLoading","adminsLoading","log","fetchedLog","total","logItemsCount","users","label","admins","moderators","created","_this","handleDebounceSearchInput","lodash_debounce_default","query","fetchLogWithFilters","mounted","dispatch","filters","lodash_default","a","omitBy","start_date","toISOString","end_date","user_id","page","val","normalizeTimestamp","timestamp","moment_default","format","moderation_log_component","$t","clearable","placeholder","on","change","model","callback","$$v","expression","_l","group","key","item","input","default-time","start-placeholder","end-placeholder","unlink-panels","logEntry","index","current-page","hide-on-single-page","page-size","small","layout","update:currentPage","$event","update:current-page","current-change","__webpack_exports__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve"],"mappings":"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,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,QAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,QAIA,SAAAC,EAAAC,GACA,IAAAlW,EAAAmW,EAAAD,GACA,OAAA1c,EAAAwG,GAEA,SAAAmW,EAAAD,GACA,IAAA1c,EAAA4c,EAAA9Q,EAAA4Q,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAA/Q,EAAA4Q,GAEAD,EAAAO,KAAA,WACA,OAAAlc,OAAAkc,KAAAlR,IAEA2Q,EAAAQ,QAAAN,EACAja,EAAAC,QAAA8Z,EACAA,EAAAjW,GAAA","file":"static/js/chunk-654d.653b067f.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"moderation-log-container\"},[_c('div',{staticClass:\"moderation-log-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('moderationLog.moderationLog')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"moderation-log-nav-container\"},[_c('el-select',{staticClass:\"moderation-log-user-select\",attrs:{\"clearable\":\"\",\"placeholder\":\"Filter by admin/moderator\"},on:{\"change\":_vm.fetchLogWithFilters},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}},_vm._l((_vm.users),function(group){return _c('el-option-group',{key:group.label,attrs:{\"label\":group.label}},_vm._l((group.options),function(item){return _c('el-option',{key:item.id,attrs:{\"label\":item.nickname,\"value\":item.id}})}),1)}),1),_vm._v(\" \"),_c('el-input',{staticClass:\"moderation-log-search\",attrs:{\"placeholder\":\"Search logs\",\"clearable\":\"\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_vm._v(\" \"),_c('el-date-picker',{staticClass:\"moderation-log-date-panel\",attrs:{\"default-time\":['00:00:00', '23:59:59'],\"type\":\"daterange\",\"start-placeholder\":\"Start date\",\"end-placeholder\":\"End date\",\"unlink-panels\":\"\"},on:{\"change\":_vm.fetchLogWithFilters},model:{value:(_vm.dateRange),callback:function ($$v) {_vm.dateRange=$$v},expression:\"dateRange\"}}),_vm._v(\" \"),_c('el-timeline',_vm._l((_vm.log),function(logEntry,index){return _c('el-timeline-item',{key:index,attrs:{\"timestamp\":_vm.normalizeTimestamp(logEntry.time)}},[(_vm.propertyExists(logEntry.data.actor, 'nickname'))?_c('log-entry-message',{attrs:{\"actor\":logEntry.data.actor,\"message\":logEntry.message}}):_c('span',[_vm._v(_vm._s(logEntry.message))])],1)}),1),_vm._v(\" \"),_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"current-page\":_vm.currentPage,\"hide-on-single-page\":true,\"page-size\":50,\"total\":_vm.total,\"small\":_vm.isMobile,\"layout\":\"prev, pager, next\"},on:{\"update:currentPage\":function($event){_vm.currentPage=$event},\"update:current-page\":function($event){_vm.currentPage=$event},\"current-change\":_vm.fetchLogWithFilters}})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=script&lang=js&\"","<template>\n <span>\n <router-link\n v-if=\"propertyExists(actor, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: actor.id }}\"\n class=\"router-link\">\n <span v-if=\"propertyExists(actor, 'nickname')\" style=\"font-weight: 600\">\n @{{ actor.nickname }}\n </span>\n </router-link>\n <span>{{ logEntryMessage }}</span>\n </span>\n</template>\n\n<script>\n\nexport default {\n name: 'LogEntryMessage',\n props: {\n actor: {\n type: Object,\n required: true\n },\n message: {\n type: String,\n required: true\n }\n },\n computed: {\n logEntryMessage() {\n return this.message.split(this.actor.nickname)[1]\n }\n },\n methods: {\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .router-link {\n text-decoration: none;\n }\n</style>\n","import { render, staticRenderFns } from \"./LogEntryMessage.vue?vue&type=template&id=da9d889c&\"\nimport script from \"./LogEntryMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./LogEntryMessage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LogEntryMessage.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[(_vm.propertyExists(_vm.actor, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.actor.id }}}},[(_vm.propertyExists(_vm.actor, 'nickname'))?_c('span',{staticStyle:{\"font-weight\":\"600\"}},[_vm._v(\"\\n @\"+_vm._s(_vm.actor.nickname)+\"\\n \")]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.logEntryMessage))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"moderation-log-container\">\n <div class=\"moderation-log-header-container\">\n <h1>{{ $t('moderationLog.moderationLog') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"moderation-log-nav-container\">\n <el-select\n v-model=\"user\"\n class=\"moderation-log-user-select\"\n clearable\n placeholder=\"Filter by admin/moderator\"\n @change=\"fetchLogWithFilters\">\n <el-option-group\n v-for=\"group in users\"\n :key=\"group.label\"\n :label=\"group.label\">\n <el-option\n v-for=\"item in group.options\"\n :key=\"item.id\"\n :label=\"item.nickname\"\n :value=\"item.id\"/>\n </el-option-group>\n </el-select>\n <el-input\n v-model=\"search\"\n placeholder=\"Search logs\"\n clearable\n class=\"moderation-log-search\"\n @input=\"handleDebounceSearchInput\"/>\n </div>\n <el-date-picker\n :default-time=\"['00:00:00', '23:59:59']\"\n v-model=\"dateRange\"\n type=\"daterange\"\n start-placeholder=\"Start date\"\n end-placeholder=\"End date\"\n unlink-panels\n class=\"moderation-log-date-panel\"\n @change=\"fetchLogWithFilters\" />\n <el-timeline>\n <el-timeline-item\n v-for=\"(logEntry, index) in log\"\n :key=\"index\"\n :timestamp=\"normalizeTimestamp(logEntry.time)\">\n <log-entry-message v-if=\"propertyExists(logEntry.data.actor, 'nickname')\" :actor=\"logEntry.data.actor\" :message=\"logEntry.message\"/>\n <span v-else>{{ logEntry.message }}</span>\n </el-timeline-item>\n </el-timeline>\n <div class=\"pagination\">\n <el-pagination\n :current-page.sync=\"currentPage\"\n :hide-on-single-page=\"true\"\n :page-size=\"50\"\n :total=\"total\"\n :small=\"isMobile\"\n layout=\"prev, pager, next\"\n @current-change=\"fetchLogWithFilters\" />\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport _ from 'lodash'\nimport debounce from 'lodash.debounce'\nimport RebootButton from '@/components/RebootButton'\nimport LogEntryMessage from './LogEntryMessage'\n\nexport default {\n components: { RebootButton, LogEntryMessage },\n data() {\n return {\n dateRange: '',\n search: '',\n user: '',\n currentPage: 1\n }\n },\n computed: {\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n loading() {\n return this.$store.state.moderationLog.logLoading &&\n this.$store.state.moderationLog.adminsLoading\n },\n log() {\n return this.$store.state.moderationLog.fetchedLog\n },\n total() {\n return this.$store.state.moderationLog.logItemsCount\n },\n users() {\n return [\n {\n label: 'Admins',\n options: this.$store.state.moderationLog.admins.users\n },\n {\n label: 'Moderators',\n options: this.$store.state.moderationLog.moderators.users\n }\n ]\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.fetchLogWithFilters()\n }, 500)\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchModerationLog')\n this.$store.dispatch('FetchAdmins')\n },\n methods: {\n fetchLogWithFilters() {\n const filters = _.omitBy({\n start_date: this.dateRange ? this.dateRange[0].toISOString() : null,\n end_date: this.dateRange ? this.dateRange[1].toISOString() : null,\n user_id: this.user,\n search: this.search,\n page: this.currentPage\n }, val => val === '' || val === null)\n\n this.$store.dispatch('FetchModerationLog', filters)\n },\n normalizeTimestamp(timestamp) {\n return moment(timestamp * 1000).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.moderation-log-container {\n margin: 0 15px;\n}\nh1 {\n margin: 0;\n}\n.el-timeline {\n margin: 25px 45px 0 0;\n padding: 0px;\n}\n.moderation-log-date-panel {\n width: 350px;\n}\n.moderation-log-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 0 15px 0;\n}\n.moderation-log-nav-container {\n display: flex;\n justify-content: space-between;\n}\n.moderation-log-search {\n width: 350px;\n}\n.moderation-log-user-select {\n margin: 0 0 20px;\n width: 350px;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n.search-container {\n text-align: right;\n}\n.pagination {\n text-align: center;\n}\n\n@media only screen and (max-width:480px) {\n h1 {\n font-size: 24px;\n }\n .moderation-log-date-panel {\n width: 100%;\n }\n .moderation-log-user-select {\n margin: 0 0 10px;\n width: 55%;\n }\n .moderation-log-search {\n width: 40%;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .moderation-log-date-panel {\n width: 55%;\n }\n .moderation-log-user-select {\n margin: 0 0 10px;\n width: 55%;\n }\n .moderation-log-search {\n width: 40%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=60b585cf&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"60b585cf\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-654e.b5d6579d.js b/priv/static/adminfe/static/js/chunk-654e.b5d6579d.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-654e"],{"0M56":function(t,e,s){"use strict";var n=s("JV9I");s.n(n).a},"0tb0":function(t,e,s){"use strict";var n=s("n2GA");s.n(n).a},"9/5/":function(t,e,s){(function(e){var s="Expected a function",n=NaN,r="[object Symbol]",a=/^\s+|\s+$/g,o=/^[-+]0x[0-9a-f]+$/i,i=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt,u="object"==typeof e&&e&&e.Object===Object&&e,j="object"==typeof self&&self&&self.Object===Object&&self,d=u||j||Function("return this")(),m=Object.prototype.toString,g=Math.max,p=Math.min,f=function(){return d.Date.now()};function h(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function v(t){if("number"==typeof t)return t;if(function(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&m.call(t)==r}(t))return n;if(h(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=h(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var s=i.test(t);return s||l.test(t)?c(t.slice(2),s?2:8):o.test(t)?n:+t}t.exports=function(t,e,n){var r,a,o,i,l,c,u=0,j=!1,d=!1,m=!0;if("function"!=typeof t)throw new TypeError(s);function b(e){var s=r,n=a;return r=a=void 0,u=e,i=t.apply(n,s)}function y(t){var s=t-c;return void 0===c||s>=e||s<0||d&&t-u>=o}function k(){var t=f();if(y(t))return x(t);l=setTimeout(k,function(t){var s=e-(t-c);return d?p(s,o-(t-u)):s}(t))}function x(t){return l=void 0,m&&r?b(t):(r=a=void 0,i)}function z(){var t=f(),s=y(t);if(r=arguments,a=this,c=t,s){if(void 0===l)return function(t){return u=t,l=setTimeout(k,e),j?b(t):i}(c);if(d)return l=setTimeout(k,e),b(c)}return void 0===l&&(l=setTimeout(k,e)),i}return e=v(e)||0,h(n)&&(j=!!n.leading,o=(d="maxWait"in n)?g(v(n.maxWait)||0,e):o,m="trailing"in n?!!n.trailing:m),z.cancel=function(){void 0!==l&&clearTimeout(l),u=0,r=c=a=l=void 0},z.flush=function(){return void 0===l?i:x(f())},z}}).call(this,s("yLpj"))},CmY0:function(t,e,s){"use strict";s.r(e);var n=s("wd/R"),r=s.n(n),a=s("LvDl"),o=s.n(a),i=s("9/5/"),l=s.n(i),c=s("rIUS"),u={name:"LogEntryMessage",props:{actor:{type:Object,required:!0},message:{type:String,required:!0}},computed:{logEntryMessage:function(){return this.message.split(this.actor.nickname)[1]}},methods:{propertyExists:function(t,e){return t[e]}}},j=(s("0tb0"),s("KHd+")),d=Object(j.a)(u,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("span",[t.propertyExists(t.actor,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.actor.id}}}},[t.propertyExists(t.actor,"nickname")?s("span",{staticStyle:{"font-weight":"600"}},[t._v("\n @"+t._s(t.actor.nickname)+"\n ")]):t._e()]):t._e(),t._v(" "),s("span",[t._v(t._s(t.logEntryMessage))])],1)},[],!1,null,null,null);d.options.__file="LogEntryMessage.vue";var m=d.exports,g={components:{RebootButton:c.a,LogEntryMessage:m},data:function(){return{dateRange:"",search:"",user:"",currentPage:1}},computed:{isMobile:function(){return"mobile"===this.$store.state.app.device},loading:function(){return this.$store.state.moderationLog.logLoading&&this.$store.state.moderationLog.adminsLoading},log:function(){return this.$store.state.moderationLog.fetchedLog},total:function(){return this.$store.state.moderationLog.logItemsCount},users:function(){return[{label:"Admins",options:this.$store.state.moderationLog.admins.users},{label:"Moderators",options:this.$store.state.moderationLog.moderators.users}]}},created:function(){var t=this;this.handleDebounceSearchInput=l()(function(e){t.fetchLogWithFilters()},500)},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchModerationLog"),this.$store.dispatch("FetchAdmins")},methods:{fetchLogWithFilters:function(){var t=o.a.omitBy({start_date:this.dateRange?this.dateRange[0].toISOString():null,end_date:this.dateRange?this.dateRange[1].toISOString():null,user_id:this.user,search:this.search,page:this.currentPage},function(t){return""===t||null===t});this.$store.dispatch("FetchModerationLog",t)},normalizeTimestamp:function(t){return r()(1e3*t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,e){return t[e]}}},p=(s("0M56"),Object(j.a)(g,function(){var t=this,e=t.$createElement,s=t._self._c||e;return t.loading?t._e():s("div",{staticClass:"moderation-log-container"},[s("div",{staticClass:"moderation-log-header-container"},[s("h1",[t._v(t._s(t.$t("moderationLog.moderationLog")))]),t._v(" "),s("reboot-button")],1),t._v(" "),s("div",{staticClass:"moderation-log-nav-container"},[s("el-select",{staticClass:"moderation-log-user-select",attrs:{clearable:"",placeholder:"Filter by admin/moderator"},on:{change:t.fetchLogWithFilters},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}},t._l(t.users,function(e){return s("el-option-group",{key:e.label,attrs:{label:e.label}},t._l(e.options,function(t){return s("el-option",{key:t.id,attrs:{label:t.nickname,value:t.id}})}),1)}),1),t._v(" "),s("el-input",{staticClass:"moderation-log-search",attrs:{placeholder:"Search logs",clearable:""},on:{input:t.handleDebounceSearchInput},model:{value:t.search,callback:function(e){t.search=e},expression:"search"}})],1),t._v(" "),s("el-date-picker",{staticClass:"moderation-log-date-panel",attrs:{"default-time":["00:00:00","23:59:59"],type:"daterange","start-placeholder":"Start date","end-placeholder":"End date","unlink-panels":""},on:{change:t.fetchLogWithFilters},model:{value:t.dateRange,callback:function(e){t.dateRange=e},expression:"dateRange"}}),t._v(" "),s("el-timeline",t._l(t.log,function(e,n){return s("el-timeline-item",{key:n,attrs:{timestamp:t.normalizeTimestamp(e.time)}},[t.propertyExists(e.data.actor,"nickname")?s("log-entry-message",{attrs:{actor:e.data.actor,message:e.message}}):s("span",[t._v(t._s(e.message))])],1)}),1),t._v(" "),s("div",{staticClass:"pagination"},[s("el-pagination",{attrs:{"current-page":t.currentPage,"hide-on-single-page":!0,"page-size":50,total:t.total,small:t.isMobile,layout:"prev, pager, next"},on:{"update:currentPage":function(e){t.currentPage=e},"update:current-page":function(e){t.currentPage=e},"current-change":t.fetchLogWithFilters}})],1)],1)},[],!1,null,"60b585cf",null));p.options.__file="index.vue";e.default=p.exports},JV9I:function(t,e,s){},RnhZ:function(t,e,s){var n={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=a(t);return s(e)}function a(t){if(!s.o(n,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return n[t]}r.keys=function(){return Object.keys(n)},r.resolve=a,t.exports=r,r.id="RnhZ"},n2GA:function(t,e,s){}}]); +//# sourceMappingURL=chunk-654e.b5d6579d.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-654e.b5d6579d.js.map b/priv/static/adminfe/static/js/chunk-654e.b5d6579d.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/moderation_log/index.vue?678d","webpack:///./src/views/moderation_log/LogEntryMessage.vue?45d8","webpack:///./node_modules/lodash.debounce/index.js","webpack:///./src/views/moderation_log/index.vue?f0fa","webpack:///./src/views/moderation_log/LogEntryMessage.vue?15ac","webpack:///src/views/moderation_log/LogEntryMessage.vue","webpack:///./src/views/moderation_log/LogEntryMessage.vue","webpack:///./src/views/moderation_log/LogEntryMessage.vue?cbf8","webpack:///./src/views/moderation_log/index.vue?bce9","webpack:///src/views/moderation_log/index.vue","webpack:///./src/views/moderation_log/index.vue","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_60b585cf_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LogEntryMessage_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","global","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","value","type","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","setTimeout","remainingWait","debounced","isInvoking","arguments","this","leadingEdge","cancel","clearTimeout","flush","moderation_log_LogEntryMessagevue_type_script_lang_js_","name","props","actor","required","message","String","computed","logEntryMessage","split","nickname","methods","propertyExists","account","property","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","to","params","id","staticStyle","font-weight","_v","_s","_e","__file","LogEntryMessage","views_moderation_logvue_type_script_lang_js_","components","RebootButton","data","dateRange","search","user","currentPage","isMobile","$store","state","app","device","loading","moderationLog","logLoading","adminsLoading","log","fetchedLog","total","logItemsCount","users","label","admins","moderators","created","_this","handleDebounceSearchInput","lodash_debounce_default","query","fetchLogWithFilters","mounted","dispatch","filters","lodash_default","a","omitBy","start_date","toISOString","end_date","user_id","page","val","normalizeTimestamp","timestamp","moment_default","format","moderation_log_component","$t","clearable","placeholder","on","change","model","callback","$$v","expression","_l","group","key","item","input","default-time","start-placeholder","end-placeholder","unlink-panels","logEntry","index","current-page","hide-on-single-page","page-size","small","layout","update:currentPage","$event","update:current-page","current-change","__webpack_exports__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve"],"mappings":"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,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,QAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,QAIA,SAAAC,EAAAC,GACA,IAAAlW,EAAAmW,EAAAD,GACA,OAAA1c,EAAAwG,GAEA,SAAAmW,EAAAD,GACA,IAAA1c,EAAA4c,EAAA9Q,EAAA4Q,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAA/Q,EAAA4Q,GAEAD,EAAAO,KAAA,WACA,OAAAlc,OAAAkc,KAAAlR,IAEA2Q,EAAAQ,QAAAN,EACAja,EAAAC,QAAA8Z,EACAA,EAAAjW,GAAA","file":"static/js/chunk-654e.b5d6579d.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"moderation-log-container\"},[_c('div',{staticClass:\"moderation-log-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('moderationLog.moderationLog')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"moderation-log-nav-container\"},[_c('el-select',{staticClass:\"moderation-log-user-select\",attrs:{\"clearable\":\"\",\"placeholder\":\"Filter by admin/moderator\"},on:{\"change\":_vm.fetchLogWithFilters},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}},_vm._l((_vm.users),function(group){return _c('el-option-group',{key:group.label,attrs:{\"label\":group.label}},_vm._l((group.options),function(item){return _c('el-option',{key:item.id,attrs:{\"label\":item.nickname,\"value\":item.id}})}),1)}),1),_vm._v(\" \"),_c('el-input',{staticClass:\"moderation-log-search\",attrs:{\"placeholder\":\"Search logs\",\"clearable\":\"\"},on:{\"input\":_vm.handleDebounceSearchInput},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_vm._v(\" \"),_c('el-date-picker',{staticClass:\"moderation-log-date-panel\",attrs:{\"default-time\":['00:00:00', '23:59:59'],\"type\":\"daterange\",\"start-placeholder\":\"Start date\",\"end-placeholder\":\"End date\",\"unlink-panels\":\"\"},on:{\"change\":_vm.fetchLogWithFilters},model:{value:(_vm.dateRange),callback:function ($$v) {_vm.dateRange=$$v},expression:\"dateRange\"}}),_vm._v(\" \"),_c('el-timeline',_vm._l((_vm.log),function(logEntry,index){return _c('el-timeline-item',{key:index,attrs:{\"timestamp\":_vm.normalizeTimestamp(logEntry.time)}},[(_vm.propertyExists(logEntry.data.actor, 'nickname'))?_c('log-entry-message',{attrs:{\"actor\":logEntry.data.actor,\"message\":logEntry.message}}):_c('span',[_vm._v(_vm._s(logEntry.message))])],1)}),1),_vm._v(\" \"),_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"current-page\":_vm.currentPage,\"hide-on-single-page\":true,\"page-size\":50,\"total\":_vm.total,\"small\":_vm.isMobile,\"layout\":\"prev, pager, next\"},on:{\"update:currentPage\":function($event){_vm.currentPage=$event},\"update:current-page\":function($event){_vm.currentPage=$event},\"current-change\":_vm.fetchLogWithFilters}})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LogEntryMessage.vue?vue&type=script&lang=js&\"","<template>\n <span>\n <router-link\n v-if=\"propertyExists(actor, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: actor.id }}\"\n class=\"router-link\">\n <span v-if=\"propertyExists(actor, 'nickname')\" style=\"font-weight: 600\">\n @{{ actor.nickname }}\n </span>\n </router-link>\n <span>{{ logEntryMessage }}</span>\n </span>\n</template>\n\n<script>\n\nexport default {\n name: 'LogEntryMessage',\n props: {\n actor: {\n type: Object,\n required: true\n },\n message: {\n type: String,\n required: true\n }\n },\n computed: {\n logEntryMessage() {\n return this.message.split(this.actor.nickname)[1]\n }\n },\n methods: {\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .router-link {\n text-decoration: none;\n }\n</style>\n","import { render, staticRenderFns } from \"./LogEntryMessage.vue?vue&type=template&id=da9d889c&\"\nimport script from \"./LogEntryMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./LogEntryMessage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LogEntryMessage.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LogEntryMessage.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[(_vm.propertyExists(_vm.actor, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.actor.id }}}},[(_vm.propertyExists(_vm.actor, 'nickname'))?_c('span',{staticStyle:{\"font-weight\":\"600\"}},[_vm._v(\"\\n @\"+_vm._s(_vm.actor.nickname)+\"\\n \")]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.logEntryMessage))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"moderation-log-container\">\n <div class=\"moderation-log-header-container\">\n <h1>{{ $t('moderationLog.moderationLog') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"moderation-log-nav-container\">\n <el-select\n v-model=\"user\"\n class=\"moderation-log-user-select\"\n clearable\n placeholder=\"Filter by admin/moderator\"\n @change=\"fetchLogWithFilters\">\n <el-option-group\n v-for=\"group in users\"\n :key=\"group.label\"\n :label=\"group.label\">\n <el-option\n v-for=\"item in group.options\"\n :key=\"item.id\"\n :label=\"item.nickname\"\n :value=\"item.id\"/>\n </el-option-group>\n </el-select>\n <el-input\n v-model=\"search\"\n placeholder=\"Search logs\"\n clearable\n class=\"moderation-log-search\"\n @input=\"handleDebounceSearchInput\"/>\n </div>\n <el-date-picker\n :default-time=\"['00:00:00', '23:59:59']\"\n v-model=\"dateRange\"\n type=\"daterange\"\n start-placeholder=\"Start date\"\n end-placeholder=\"End date\"\n unlink-panels\n class=\"moderation-log-date-panel\"\n @change=\"fetchLogWithFilters\" />\n <el-timeline>\n <el-timeline-item\n v-for=\"(logEntry, index) in log\"\n :key=\"index\"\n :timestamp=\"normalizeTimestamp(logEntry.time)\">\n <log-entry-message v-if=\"propertyExists(logEntry.data.actor, 'nickname')\" :actor=\"logEntry.data.actor\" :message=\"logEntry.message\"/>\n <span v-else>{{ logEntry.message }}</span>\n </el-timeline-item>\n </el-timeline>\n <div class=\"pagination\">\n <el-pagination\n :current-page.sync=\"currentPage\"\n :hide-on-single-page=\"true\"\n :page-size=\"50\"\n :total=\"total\"\n :small=\"isMobile\"\n layout=\"prev, pager, next\"\n @current-change=\"fetchLogWithFilters\" />\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport _ from 'lodash'\nimport debounce from 'lodash.debounce'\nimport RebootButton from '@/components/RebootButton'\nimport LogEntryMessage from './LogEntryMessage'\n\nexport default {\n components: { RebootButton, LogEntryMessage },\n data() {\n return {\n dateRange: '',\n search: '',\n user: '',\n currentPage: 1\n }\n },\n computed: {\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n loading() {\n return this.$store.state.moderationLog.logLoading &&\n this.$store.state.moderationLog.adminsLoading\n },\n log() {\n return this.$store.state.moderationLog.fetchedLog\n },\n total() {\n return this.$store.state.moderationLog.logItemsCount\n },\n users() {\n return [\n {\n label: 'Admins',\n options: this.$store.state.moderationLog.admins.users\n },\n {\n label: 'Moderators',\n options: this.$store.state.moderationLog.moderators.users\n }\n ]\n }\n },\n created() {\n this.handleDebounceSearchInput = debounce((query) => {\n this.fetchLogWithFilters()\n }, 500)\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchModerationLog')\n this.$store.dispatch('FetchAdmins')\n },\n methods: {\n fetchLogWithFilters() {\n const filters = _.omitBy({\n start_date: this.dateRange ? this.dateRange[0].toISOString() : null,\n end_date: this.dateRange ? this.dateRange[1].toISOString() : null,\n user_id: this.user,\n search: this.search,\n page: this.currentPage\n }, val => val === '' || val === null)\n\n this.$store.dispatch('FetchModerationLog', filters)\n },\n normalizeTimestamp(timestamp) {\n return moment(timestamp * 1000).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.moderation-log-container {\n margin: 0 15px;\n}\nh1 {\n margin: 0;\n}\n.el-timeline {\n margin: 25px 45px 0 0;\n padding: 0px;\n}\n.moderation-log-date-panel {\n width: 350px;\n}\n.moderation-log-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 0 15px 0;\n}\n.moderation-log-nav-container {\n display: flex;\n justify-content: space-between;\n}\n.moderation-log-search {\n width: 350px;\n}\n.moderation-log-user-select {\n margin: 0 0 20px;\n width: 350px;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n.search-container {\n text-align: right;\n}\n.pagination {\n text-align: center;\n}\n\n@media only screen and (max-width:480px) {\n h1 {\n font-size: 24px;\n }\n .moderation-log-date-panel {\n width: 100%;\n }\n .moderation-log-user-select {\n margin: 0 0 10px;\n width: 55%;\n }\n .moderation-log-search {\n width: 40%;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .moderation-log-date-panel {\n width: 55%;\n }\n .moderation-log-user-select {\n margin: 0 0 10px;\n width: 55%;\n }\n .moderation-log-search {\n width: 40%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=60b585cf&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=60b585cf&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"60b585cf\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea.6d56674a.js b/priv/static/adminfe/static/js/chunk-68ea.6d56674a.js @@ -1,26 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-68ea"],{"+/fp":function(e,t){e.exports=class{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,t,n){return""+n}image(e,t,n){return""+n}br(){return""}}},"+V57":function(e,t,n){"use strict";n.d(t,"a",function(){return i}),n.d(t,"b",function(){return a}),n.d(t,"c",function(){return p}),n.d(t,"d",function(){return l}),n.d(t,"e",function(){return u});var r=n("UxO+"),o=n("CsC6"),i=function(e,t){this.match=e,this.handler="string"==typeof t?function(e){return function(t,n,r,o){var i=e;if(n[1]){var s=n[0].lastIndexOf(n[1]);i+=n[0].slice(s+n[1].length);var a=(r+=s)-o;a>0&&(i=n[0].slice(s-a,s)+i,r=o)}return t.tr.insertText(i,r,o)}}(t):t};var s=500;function a(e){var t=e.rules,n=new r.Plugin({state:{init:function(){return null},apply:function(e,t){var n=e.getMeta(this);return n||(e.selectionSet||e.docChanged?null:t)}},props:{handleTextInput:function(e,r,o,i){return c(e,r,o,i,t,n)},handleDOMEvents:{compositionend:function(e){setTimeout(function(){var r=e.state.selection.$cursor;r&&c(e,r.pos,r.pos,"",t,n)})}}},isInputRules:!0});return n}function c(e,t,n,r,o,i){if(e.composing)return!1;var a=e.state,c=a.doc.resolve(t);if(c.parent.type.spec.code)return!1;for(var l=c.parent.textBetween(Math.max(0,c.parentOffset-s),c.parentOffset,null,"")+r,u=0;u<o.length;u++){var p=o[u].match.exec(l),h=p&&o[u].handler(a,p,t-(p[0].length-r.length),n);if(h)return e.dispatch(h.setMeta(i,{transform:h,from:t,to:n,text:r})),!0}return!1}function l(e,t){for(var n=e.plugins,r=0;r<n.length;r++){var o=n[r],i=void 0;if(o.spec.isInputRules&&(i=o.getState(e))){if(t){for(var s=e.tr,a=i.transform,c=a.steps.length-1;c>=0;c--)s.step(a.steps[c].invert(a.docs[c]));var l=s.doc.resolve(i.from).marks();t(s.replaceWith(i.from,i.to,e.schema.text(i.text,l)))}return!0}}return!1}new i(/--$/,"—"),new i(/\.\.\.$/,"…"),new i(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“"),new i(/"$/,"”"),new i(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘"),new i(/'$/,"’");function u(e,t,n,r){return new i(e,function(e,i,s,a){var c=n instanceof Function?n(i):n,l=e.tr.delete(s,a),u=l.doc.resolve(s).blockRange(),p=u&&Object(o.i)(u,t,c);if(!p)return null;l.wrap(u,p);var h=l.doc.resolve(s-1).nodeBefore;return h&&h.type==t&&Object(o.f)(l.doc,s-1)&&(!r||r(i,h))&&l.join(s-1),l})}function p(e,t,n){return new i(e,function(e,r,o,i){var s=e.doc.resolve(o),a=n instanceof Function?n(r):n;return s.node(-1).canReplaceWith(s.index(-1),s.indexAfter(-1),t)?e.tr.delete(o,i).setBlockType(o,o,t,a):null})}},"4MG8":function(e,t,n){const r=n("T9Ld"),o=n("66f7"),i=n("SbYC"),s=n("+/fp"),a=n("hyX7"),c=n("J7Ao"),{merge:l,checkSanitizeDeprecation:u,escape:p}=n("rUJ1"),{getDefaults:h,changeDefaults:d,defaults:f}=n("vbtb");function m(e,t,n){if(void 0===e||null===e)throw new Error("marked(): input parameter is undefined or null");if("string"!=typeof e)throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected");if(n||"function"==typeof t){n||(n=t,t=null),t=l({},m.defaults,t||{}),u(t);const i=t.highlight;let s,a,c=0;try{s=r.lex(e,t)}catch(e){return n(e)}a=s.length;const p=function(e){if(e)return t.highlight=i,n(e);let r;try{r=o.parse(s,t)}catch(t){e=t}return t.highlight=i,e?n(e):n(null,r)};if(!i||i.length<3)return p();if(delete t.highlight,!a)return p();for(;c<s.length;c++)!function(e){"code"!==e.type?--a||p():i(e.text,e.lang,function(t,n){return t?p(t):null==n||n===e.text?--a||p():(e.text=n,e.escaped=!0,void(--a||p()))})}(s[c])}else try{return t=l({},m.defaults,t||{}),u(t),o.parse(r.lex(e,t),t)}catch(e){if(e.message+="\nPlease report this to https://github.com/markedjs/marked.",(t||m.defaults).silent)return"<p>An error occurred:</p><pre>"+p(e.message+"",!0)+"</pre>";throw e}}m.options=m.setOptions=function(e){return l(m.defaults,e),d(m.defaults),m},m.getDefaults=h,m.defaults=f,m.Parser=o,m.parser=o.parse,m.Renderer=i,m.TextRenderer=s,m.Lexer=r,m.lexer=r.lex,m.InlineLexer=a,m.inlineLexer=a.output,m.Slugger=c,m.parse=m,e.exports=m},"4r5K":function(e,t){function n(e){Object.freeze(e);var t="function"==typeof e;return Object.getOwnPropertyNames(e).forEach(function(r){!Object.hasOwnProperty.call(e,r)||null===e[r]||"object"!=typeof e[r]&&"function"!=typeof e[r]||t&&("caller"===r||"callee"===r||"arguments"===r)||Object.isFrozen(e[r])||n(e[r])}),e}class r{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data}ignoreMatch(){this.ignore=!0}}function o(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function i(e,...t){var n={};for(const r in e)n[r]=e[r];return t.forEach(function(e){for(const t in e)n[t]=e[t]}),n}function s(e){return e.nodeName.toLowerCase()}var a=Object.freeze({__proto__:null,escapeHTML:o,inherit:i,nodeStream:function(e){var t=[];return function e(n,r){for(var o=n.firstChild;o;o=o.nextSibling)3===o.nodeType?r+=o.nodeValue.length:1===o.nodeType&&(t.push({event:"start",offset:r,node:o}),r=e(o,r),s(o).match(/br|hr|img|input/)||t.push({event:"stop",offset:r,node:o}));return r}(e,0),t},mergeStreams:function(e,t,n){var r=0,i="",a=[];function c(){return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset<t[0].offset?e:t:"start"===t[0].event?e:t:e.length?e:t}function l(e){i+="<"+s(e)+[].map.call(e.attributes,function(e){return" "+e.nodeName+'="'+o(e.value)+'"'}).join("")+">"}function u(e){i+="</"+s(e)+">"}function p(e){("start"===e.event?l:u)(e.node)}for(;e.length||t.length;){var h=c();if(i+=o(n.substring(r,h[0].offset)),r=h[0].offset,h===e){a.reverse().forEach(u);do{p(h.splice(0,1)[0]),h=c()}while(h===e&&h.length&&h[0].offset===r);a.reverse().forEach(l)}else"start"===h[0].event?a.push(h[0].node):a.pop(),p(h.splice(0,1)[0])}return i+o(n.substr(r))}});const c="</span>",l=e=>!!e.kind;class u{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=o(e)}openNode(e){if(!l(e))return;let t=e.kind;e.sublanguage||(t=`${this.classPrefix}${t}`),this.span(t)}closeNode(e){l(e)&&(this.buffer+=c)}value(){return this.buffer}span(e){this.buffer+=`<span class="${e}">`}}class p{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{p._collapse(e)}))}}class h extends p{constructor(e){super(),this.options=e}addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)}toHTML(){return new u(this,this.options).value()}finalize(){return!0}}function d(e){return e?"string"==typeof e?e:e.source:null}const f="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",m={begin:"\\\\[\\s\\S]",relevance:0},v={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[m]},g={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[m]},y={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},b=function(e,t,n={}){var r=i({className:"comment",begin:e,end:t,contains:[]},n);return r.contains.push(y),r.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),r},w=b("//","$"),S=b("/\\*","\\*/"),x=b("#","$"),k={className:"number",begin:"\\b\\d+(\\.\\d+)?",relevance:0},C={className:"number",begin:f,relevance:0},O={className:"number",begin:"\\b(0b[01]+)",relevance:0},M={className:"number",begin:"\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},N={begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[m,{begin:/\[/,end:/\]/,relevance:0,contains:[m]}]}]},T={className:"title",begin:"[a-zA-Z]\\w*",relevance:0},D={className:"title",begin:"[a-zA-Z_]\\w*",relevance:0},A={begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0};var E=Object.freeze({__proto__:null,IDENT_RE:"[a-zA-Z]\\w*",UNDERSCORE_IDENT_RE:"[a-zA-Z_]\\w*",NUMBER_RE:"\\b\\d+(\\.\\d+)?",C_NUMBER_RE:f,BINARY_NUMBER_RE:"\\b(0b[01]+)",RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=function(...e){return e.map(e=>d(e)).join("")}(t,/.*\b/,e.binary,/\b.*/)),i({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:m,APOS_STRING_MODE:v,QUOTE_STRING_MODE:g,PHRASAL_WORDS_MODE:y,COMMENT:b,C_LINE_COMMENT_MODE:w,C_BLOCK_COMMENT_MODE:S,HASH_COMMENT_MODE:x,NUMBER_MODE:k,C_NUMBER_MODE:C,BINARY_NUMBER_MODE:O,CSS_NUMBER_MODE:M,REGEXP_MODE:N,TITLE_MODE:T,UNDERSCORE_TITLE_MODE:D,METHOD_GUARD:A,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}}),R="of and for in not or if then".split(" ");function _(e){function t(t,n){return new RegExp(d(t),"m"+(e.case_insensitive?"i":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=function(e){return new RegExp(e.toString()+"|").exec("").length-1}(e)+1}compile(){0===this.regexes.length&&(this.exec=(()=>null));const e=this.regexes.map(e=>e[1]);this.matcherRe=t(function(e,t="|"){for(var n=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./,r=0,o="",i=0;i<e.length;i++){var s=r+=1,a=d(e[i]);for(i>0&&(o+=t),o+="(";a.length>0;){var c=n.exec(a);if(null==c){o+=a;break}o+=a.substring(0,c.index),a=a.substring(c.index+c[0].length),"\\"===c[0][0]&&c[1]?o+="\\"+String(Number(c[1])+s):(o+=c[0],"("===c[0]&&r++)}o+=")"}return o}(e),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex((e,t)=>t>0&&void 0!==e),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;const n=t.exec(e);return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&(this.regexIndex=0)),n}}function o(e,t){const n=e.input[e.index-1],r=e.input[e.index+e[0].length];"."!==n&&"."!==r||t.ignoreMatch()}if(e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return function n(s,a){const c=s;if(s.compiled)return c;s.compiled=!0,s.__beforeBegin=null,s.keywords=s.keywords||s.beginKeywords;let l=null;if("object"==typeof s.keywords&&(l=s.keywords.$pattern,delete s.keywords.$pattern),s.keywords&&(s.keywords=function(e,t){var n={};return"string"==typeof e?r("keyword",e):Object.keys(e).forEach(function(t){r(t,e[t])}),n;function r(e,r){t&&(r=r.toLowerCase()),r.split(" ").forEach(function(t){var r=t.split("|");n[r[0]]=[e,function(e,t){return t?Number(t):function(e){return R.includes(e.toLowerCase())}(e)?0:1}(r[0],r[1])]})}}(s.keywords,e.case_insensitive)),s.lexemes&&l)throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return c.keywordPatternRe=t(s.lexemes||l||/\w+/,!0),a&&(s.beginKeywords&&(s.begin="\\b("+s.beginKeywords.split(" ").join("|")+")(?=\\b|\\s)",s.__beforeBegin=o),s.begin||(s.begin=/\B|\b/),c.beginRe=t(s.begin),s.endSameAsBegin&&(s.end=s.begin),s.end||s.endsWithParent||(s.end=/\B|\b/),s.end&&(c.endRe=t(s.end)),c.terminator_end=d(s.end)||"",s.endsWithParent&&a.terminator_end&&(c.terminator_end+=(s.end?"|":"")+a.terminator_end)),s.illegal&&(c.illegalRe=t(s.illegal)),void 0===s.relevance&&(s.relevance=1),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(e){return function(e){return e.variants&&!e.cached_variants&&(e.cached_variants=e.variants.map(function(t){return i(e,{variants:null},t)})),e.cached_variants?e.cached_variants:function e(t){return!!t&&(t.endsWithParent||e(t.starts))}(e)?i(e,{starts:e.starts?i(e.starts):null}):Object.isFrozen(e)?i(e):e}("self"===e?s:e)})),s.contains.forEach(function(e){n(e,c)}),s.starts&&n(s.starts,a),c.matcher=function(e){const t=new r;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:"begin"})),e.terminator_end&&t.addRule(e.terminator_end,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(c),c}(e)}const P=o,$=i,{nodeStream:I,mergeStreams:z}=a,B=Symbol("nomatch");var F=function(e){var t=[],o=Object.create(null),i=Object.create(null),s=[],a=!0,c=/(^(<[^>]+>|\t|)+|\n)/gm,l="Could not find the language '{}', did you forget to load/include a language module?";const u={disableAutodetect:!0,name:"Plain text",contains:[]};var p={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:h};function d(e){return p.noHighlightRe.test(e)}function f(e,t,n,r){var o={code:t,language:e};k("before:highlight",o);var i=o.result?o.result:m(o.language,o.code,n,r);return i.code=o.code,k("after:highlight",i),i}function m(e,t,n,i){var s=t;function c(e,t){var n=S.case_insensitive?t[0].toLowerCase():t[0];return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]}function u(){null!=C.subLanguage?function(){if(""!==N){var e=null;if("string"==typeof C.subLanguage){if(!o[C.subLanguage])return void M.addText(N);e=m(C.subLanguage,N,!0,O[C.subLanguage]),O[C.subLanguage]=e.top}else e=v(N,C.subLanguage.length?C.subLanguage:null);C.relevance>0&&(T+=e.relevance),M.addSublanguage(e.emitter,e.language)}}():function(){if(!C.keywords)return void M.addText(N);let e=0;C.keywordPatternRe.lastIndex=0;let t=C.keywordPatternRe.exec(N),n="";for(;t;){n+=N.substring(e,t.index);const r=c(C,t);if(r){const[e,o]=r;M.addText(n),n="",T+=o,M.addKeyword(t[0],e)}else n+=t[0];e=C.keywordPatternRe.lastIndex,t=C.keywordPatternRe.exec(N)}n+=N.substr(e),M.addText(n)}(),N=""}function h(e){return e.className&&M.openNode(e.className),C=Object.create(e,{parent:{value:C}})}function d(e){return 0===C.matcher.regexIndex?(N+=e[0],1):(E=!0,0)}function f(e){var t=e[0],n=e.rule;const o=new r(n),i=[n.__beforeBegin,n["on:begin"]];for(const r of i)if(r&&(r(e,o),o.ignore))return d(t);return n&&n.endSameAsBegin&&(n.endRe=function(e){return new RegExp(e.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}(t)),n.skip?N+=t:(n.excludeBegin&&(N+=t),u(),n.returnBegin||n.excludeBegin||(N=t)),h(n),n.returnBegin?0:t.length}function g(e){var t=e[0],n=s.substr(e.index),o=function e(t,n,o){let i=function(e,t){var n=e&&e.exec(t);return n&&0===n.index}(t.endRe,o);if(i){if(t["on:end"]){const e=new r(t);t["on:end"](n,e),e.ignore&&(i=!1)}if(i){for(;t.endsParent&&t.parent;)t=t.parent;return t}}if(t.endsWithParent)return e(t.parent,n,o)}(C,e,n);if(!o)return B;var i=C;i.skip?N+=t:(i.returnEnd||i.excludeEnd||(N+=t),u(),i.excludeEnd&&(N=t));do{C.className&&M.closeNode(),C.skip||C.subLanguage||(T+=C.relevance),C=C.parent}while(C!==o.parent);return o.starts&&(o.endSameAsBegin&&(o.starts.endRe=o.endRe),h(o.starts)),i.returnEnd?0:t.length}var y={};function b(t,r){var o=r&&r[0];if(N+=t,null==o)return u(),0;if("begin"===y.type&&"end"===r.type&&y.index===r.index&&""===o){if(N+=s.slice(r.index,r.index+1),!a){const t=new Error("0 width match regex");throw t.languageName=e,t.badRule=y.rule,t}return 1}if(y=r,"begin"===r.type)return f(r);if("illegal"===r.type&&!n){const e=new Error('Illegal lexeme "'+o+'" for mode "'+(C.className||"<unnamed>")+'"');throw e.mode=C,e}if("end"===r.type){var i=g(r);if(i!==B)return i}if("illegal"===r.type&&""===o)return 1;if(A>1e5&&A>3*r.index)throw new Error("potential infinite loop, way more iterations than matches");return N+=o,o.length}var S=w(e);if(!S)throw console.error(l.replace("{}",e)),new Error('Unknown language: "'+e+'"');var x=_(S),k="",C=i||x,O={},M=new p.__emitter(p);!function(){for(var e=[],t=C;t!==S;t=t.parent)t.className&&e.unshift(t.className);e.forEach(e=>M.openNode(e))}();var N="",T=0,D=0,A=0,E=!1;try{for(C.matcher.considerAll();;){A++,E?E=!1:(C.matcher.lastIndex=D,C.matcher.considerAll());const e=C.matcher.exec(s);if(!e)break;const t=b(s.substring(D,e.index),e);D=e.index+t}return b(s.substr(D)),M.closeAllNodes(),M.finalize(),k=M.toHTML(),{relevance:T,value:k,language:e,illegal:!1,emitter:M,top:C}}catch(t){if(t.message&&t.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:t.message,context:s.slice(D-100,D+100),mode:t.mode},sofar:k,relevance:0,value:P(s),emitter:M};if(a)return{illegal:!1,relevance:0,value:P(s),emitter:M,language:e,top:C,errorRaised:t};throw t}}function v(e,t){t=t||p.languages||Object.keys(o);var n=function(e){const t={relevance:0,emitter:new p.__emitter(p),value:P(e),illegal:!1,top:u};return t.emitter.addText(e),t}(e),r=n;return t.filter(w).filter(x).forEach(function(t){var o=m(t,e,!1);o.language=t,o.relevance>r.relevance&&(r=o),o.relevance>n.relevance&&(r=n,n=o)}),r.language&&(n.second_best=r),n}function g(e){return p.tabReplace||p.useBR?e.replace(c,e=>"\n"===e?p.useBR?"<br>":e:p.tabReplace?e.replace(/\t/g,p.tabReplace):e):e}function y(e){let t=null;const n=function(e){var t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=p.languageDetectRe.exec(t);if(n){var r=w(n[1]);return r||(console.warn(l.replace("{}",n[1])),console.warn("Falling back to no-highlight mode for this block.",e)),r?n[1]:"no-highlight"}return t.split(/\s+/).find(e=>d(e)||w(e))}(e);if(d(n))return;k("before:highlightBlock",{block:e,language:n}),p.useBR?(t=document.createElement("div")).innerHTML=e.innerHTML.replace(/\n/g,"").replace(/<br[ /]*>/g,"\n"):t=e;const r=t.textContent,o=n?f(n,r,!0):v(r),s=I(t);if(s.length){const e=document.createElement("div");e.innerHTML=o.value,o.value=z(s,I(e),r)}o.value=g(o.value),k("after:highlightBlock",{block:e,result:o}),e.innerHTML=o.value,e.className=function(e,t,n){var r=t?i[t]:n,o=[e.trim()];return e.match(/\bhljs\b/)||o.push("hljs"),e.includes(r)||o.push(r),o.join(" ").trim()}(e.className,n,o.language),e.result={language:o.language,re:o.relevance,relavance:o.relevance},o.second_best&&(e.second_best={language:o.second_best.language,re:o.second_best.relevance,relavance:o.second_best.relevance})}const b=()=>{if(!b.called){b.called=!0;var e=document.querySelectorAll("pre code");t.forEach.call(e,y)}};function w(e){return e=(e||"").toLowerCase(),o[e]||o[i[e]]}function S(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach(e=>{i[e]=t})}function x(e){var t=w(e);return t&&!t.disableAutodetect}function k(e,t){var n=e;s.forEach(function(e){e[n]&&e[n](t)})}Object.assign(e,{highlight:f,highlightAuto:v,fixMarkup:g,highlightBlock:y,configure:function(e){p=$(p,e)},initHighlighting:b,initHighlightingOnLoad:function(){window.addEventListener("DOMContentLoaded",b,!1)},registerLanguage:function(t,n){var r=null;try{r=n(e)}catch(e){if(console.error("Language definition for '{}' could not be registered.".replace("{}",t)),!a)throw e;console.error(e),r=u}r.name||(r.name=t),o[t]=r,r.rawDefinition=n.bind(null,e),r.aliases&&S(r.aliases,{languageName:t})},listLanguages:function(){return Object.keys(o)},getLanguage:w,registerAliases:S,requireLanguage:function(e){var t=w(e);if(t)return t;throw new Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:x,inherit:$,addPlugin:function(e){s.push(e)}}),e.debugMode=function(){a=!1},e.safeMode=function(){a=!0},e.versionString="10.1.2";for(const r in E)"object"==typeof E[r]&&n(E[r]);return Object.assign(e,E),e}({});e.exports=F},"66f7":function(e,t,n){const r=n("SbYC"),o=n("J7Ao"),i=n("hyX7"),s=n("+/fp"),{defaults:a}=n("vbtb"),{merge:c,unescape:l}=n("rUJ1");e.exports=class e{constructor(e){this.tokens=[],this.token=null,this.options=e||a,this.options.renderer=this.options.renderer||new r,this.renderer=this.options.renderer,this.renderer.options=this.options,this.slugger=new o}static parse(t,n){return new e(n).parse(t)}parse(e){this.inline=new i(e.links,this.options),this.inlineText=new i(e.links,c({},this.options,{renderer:new s})),this.tokens=e.reverse();let t="";for(;this.next();)t+=this.tok();return t}next(){return this.token=this.tokens.pop(),this.token}peek(){return this.tokens[this.tokens.length-1]||0}parseText(){let e=this.token.text;for(;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)}tok(){let e="";switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,l(this.inlineText.output(this.token.text)),this.slugger);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":{let t,n,r,o,i="";for(r="",t=0;t<this.token.header.length;t++)r+=this.renderer.tablecell(this.inline.output(this.token.header[t]),{header:!0,align:this.token.align[t]});for(i+=this.renderer.tablerow(r),t=0;t<this.token.cells.length;t++){for(n=this.token.cells[t],r="",o=0;o<n.length;o++)r+=this.renderer.tablecell(this.inline.output(n[o]),{header:!1,align:this.token.align[o]});e+=this.renderer.tablerow(r)}return this.renderer.table(i,e)}case"blockquote_start":for(e="";"blockquote_end"!==this.next().type;)e+=this.tok();return this.renderer.blockquote(e);case"list_start":{e="";const t=this.token.ordered,n=this.token.start;for(;"list_end"!==this.next().type;)e+=this.tok();return this.renderer.list(e,t,n)}case"list_item_start":{e="";const t=this.token.loose,n=this.token.checked,r=this.token.task;if(this.token.task)if(t)if("text"===this.peek().type){const e=this.peek();e.text=this.renderer.checkbox(n)+" "+e.text}else this.tokens.push({type:"text",text:this.renderer.checkbox(n)});else e+=this.renderer.checkbox(n);for(;"list_item_end"!==this.next().type;)e+=t||"text"!==this.token.type?this.tok():this.parseText();return this.renderer.listitem(e,r,n)}case"html":return this.renderer.html(this.token.text);case"paragraph":return this.renderer.paragraph(this.inline.output(this.token.text));case"text":return this.renderer.paragraph(this.parseText());default:{const e='Token with "'+this.token.type+'" type was not found.';if(!this.options.silent)throw new Error(e);console.log(e)}}}}},"8j27":function(e,t,n){"use strict";n.d(t,"a",function(){return T}),n.d(t,"b",function(){return $}),n.d(t,"c",function(){return D}),n.d(t,"d",function(){return A}),n.d(t,"e",function(){return E}),n.d(t,"f",function(){return F}),n.d(t,"g",function(){return R}),n.d(t,"h",function(){return I}),n.d(t,"i",function(){return z}),n.d(t,"j",function(){return _}),n.d(t,"k",function(){return P}),n.d(t,"l",function(){return B});var r=n("zUJn"),o=n("qd4/"),i=(n("POQ2"),n("V2qZ"),n("mG1W"),n("UxO+")),s=n("Vb5C"),a=n("oV9I"),c=n("CsC6");new i.PluginKey("collab");var l=function(){};l.prototype.append=function(e){return e.length?(e=l.from(e),!this.length&&e||e.length<200&&this.leafAppend(e)||this.length<200&&e.leafPrepend(this)||this.appendInner(e)):this},l.prototype.prepend=function(e){return e.length?l.from(e).append(this):this},l.prototype.appendInner=function(e){return new p(this,e)},l.prototype.slice=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=this.length),e>=t?l.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},l.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},l.prototype.forEach=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=this.length),t<=n?this.forEachInner(e,t,n,0):this.forEachInvertedInner(e,t,n,0)},l.prototype.map=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=this.length);var r=[];return this.forEach(function(t,n){return r.push(e(t,n))},t,n),r},l.from=function(e){return e instanceof l?e:e&&e.length?new u(e):l.empty};var u=function(e){function t(t){e.call(this),this.values=t}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={length:{configurable:!0},depth:{configurable:!0}};return t.prototype.flatten=function(){return this.values},t.prototype.sliceInner=function(e,n){return 0==e&&n==this.length?this:new t(this.values.slice(e,n))},t.prototype.getInner=function(e){return this.values[e]},t.prototype.forEachInner=function(e,t,n,r){for(var o=t;o<n;o++)if(!1===e(this.values[o],r+o))return!1},t.prototype.forEachInvertedInner=function(e,t,n,r){for(var o=t-1;o>=n;o--)if(!1===e(this.values[o],r+o))return!1},t.prototype.leafAppend=function(e){if(this.length+e.length<=200)return new t(this.values.concat(e.flatten()))},t.prototype.leafPrepend=function(e){if(this.length+e.length<=200)return new t(e.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(t.prototype,n),t}(l);l.empty=new u([]);var p=function(e){function t(t,n){e.call(this),this.left=t,this.right=n,this.length=t.length+n.length,this.depth=Math.max(t.depth,n.depth)+1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},t.prototype.getInner=function(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)},t.prototype.forEachInner=function(e,t,n,r){var o=this.left.length;return!(t<o&&!1===this.left.forEachInner(e,t,Math.min(n,o),r))&&(!(n>o&&!1===this.right.forEachInner(e,Math.max(t-o,0),Math.min(this.length,n)-o,r+o))&&void 0)},t.prototype.forEachInvertedInner=function(e,t,n,r){var o=this.left.length;return!(t>o&&!1===this.right.forEachInvertedInner(e,t-o,Math.max(n,o)-o,r+o))&&(!(n<o&&!1===this.left.forEachInvertedInner(e,Math.min(t,o),n,r))&&void 0)},t.prototype.sliceInner=function(e,t){if(0==e&&t==this.length)return this;var n=this.left.length;return t<=n?this.left.slice(e,t):e>=n?this.right.slice(e-n,t-n):this.left.slice(e,n).append(this.right.slice(0,t-n))},t.prototype.leafAppend=function(e){var n=this.right.leafAppend(e);if(n)return new t(this.left,n)},t.prototype.leafPrepend=function(e){var n=this.left.leafPrepend(e);if(n)return new t(n,this.right)},t.prototype.appendInner=function(e){return this.left.depth>=Math.max(this.right.depth,e.depth)+1?new t(this.left,new t(this.right,e)):new t(this,e)},t}(l),h=l,d=function(e,t){this.items=e,this.eventCount=t};d.prototype.popEvent=function(e,t){var n=this;if(0==this.eventCount)return null;for(var r,o,i=this.items.length;;i--){if(this.items.get(i-1).selection){--i;break}}t&&(r=this.remapping(i,this.items.length),o=r.maps.length);var s,a,c=e.tr,l=[],u=[];return this.items.forEach(function(e,t){if(!e.step)return r||(r=n.remapping(i,t+1),o=r.maps.length),o--,void u.push(e);if(r){u.push(new f(e.map));var p,h=e.step.map(r.slice(o));h&&c.maybeStep(h).doc&&(p=c.mapping.maps[c.mapping.maps.length-1],l.push(new f(p,null,null,l.length+u.length))),o--,p&&r.appendMap(p,o)}else c.maybeStep(e.step);return e.selection?(s=r?e.selection.map(r.slice(o)):e.selection,a=new d(n.items.slice(0,i).append(u.reverse().concat(l)),n.eventCount-1),!1):void 0},this.items.length,0),{remaining:a,transform:c,selection:s}},d.prototype.addTransform=function(e,t,n,r){for(var o=[],i=this.eventCount,s=this.items,a=!r&&s.length?s.get(s.length-1):null,c=0;c<e.steps.length;c++){var l,u=e.steps[c].invert(e.docs[c]),p=new f(e.mapping.maps[c],u,t);(l=a&&a.merge(p))&&(p=l,c?o.pop():s=s.slice(0,s.length-1)),o.push(p),t&&(i++,t=null),r||(a=p)}var h=i-n.depth;return h>v&&(s=function(e,t){var n;return e.forEach(function(e,r){if(e.selection&&0==t--)return n=r,!1}),e.slice(n)}(s,h),i-=h),new d(s.append(o),i)},d.prototype.remapping=function(e,t){var n=new c.a;return this.items.forEach(function(t,r){var o=null!=t.mirrorOffset&&r-t.mirrorOffset>=e?n.maps.length-t.mirrorOffset:null;n.appendMap(t.map,o)},e,t),n},d.prototype.addMaps=function(e){return 0==this.eventCount?this:new d(this.items.append(e.map(function(e){return new f(e)})),this.eventCount)},d.prototype.rebased=function(e,t){if(!this.eventCount)return this;var n=[],r=Math.max(0,this.items.length-t),o=e.mapping,i=e.steps.length,s=this.eventCount;this.items.forEach(function(e){e.selection&&s--},r);var a=t;this.items.forEach(function(t){var r=o.getMirror(--a);if(null!=r){i=Math.min(i,r);var c=o.maps[r];if(t.step){var l=e.steps[r].invert(e.docs[r]),u=t.selection&&t.selection.map(o.slice(a+1,r));u&&s++,n.push(new f(c,l,u))}else n.push(new f(c))}},r);for(var c=[],l=t;l<i;l++)c.push(new f(o.maps[l]));var u=this.items.slice(0,r).append(c).append(n),p=new d(u,s);return p.emptyItemCount()>500&&(p=p.compress(this.items.length-n.length)),p},d.prototype.emptyItemCount=function(){var e=0;return this.items.forEach(function(t){t.step||e++}),e},d.prototype.compress=function(e){void 0===e&&(e=this.items.length);var t=this.remapping(0,e),n=t.maps.length,r=[],o=0;return this.items.forEach(function(i,s){if(s>=e)r.push(i),i.selection&&o++;else if(i.step){var a=i.step.map(t.slice(n)),c=a&&a.getMap();if(n--,c&&t.appendMap(c,n),a){var l=i.selection&&i.selection.map(t.slice(n));l&&o++;var u,p=new f(c.invert(),a,l),h=r.length-1;(u=r.length&&r[h].merge(p))?r[h]=u:r.push(p)}}else i.map&&n--},this.items.length,0),new d(h.from(r.reverse()),o)},d.empty=new d(h.empty,0);var f=function(e,t,n,r){this.map=e,this.step=t,this.selection=n,this.mirrorOffset=r};f.prototype.merge=function(e){if(this.step&&e.step&&!e.selection){var t=e.step.merge(this.step);if(t)return new f(t.getMap().invert(),t,this.selection)}};var m=function(e,t,n,r){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=r},v=20;function g(e){var t=[];return e.forEach(function(e,n,r,o){return t.push(r,o)}),t}function y(e,t){if(!e)return null;for(var n=[],r=0;r<e.length;r+=2){var o=t.map(e[r],1),i=t.map(e[r+1],-1);o<=i&&n.push(o,i)}return n}function b(e,t,n,r){var o=x(t),i=k.get(t).spec.config,s=(r?e.undone:e.done).popEvent(t,o);if(s){var a=s.selection.resolve(s.transform.doc),c=(r?e.done:e.undone).addTransform(s.transform,t.selection.getBookmark(),i,o),l=new m(r?c:s.remaining,r?s.remaining:c,null,0);n(s.transform.setSelection(a).setMeta(k,{redo:r,historyState:l}).scrollIntoView())}}var w=!1,S=null;function x(e){var t=e.plugins;if(S!=t){w=!1,S=t;for(var n=0;n<t.length;n++)if(t[n].spec.historyPreserveItems){w=!0;break}}return w}var k=new i.PluginKey("history"),C=new i.PluginKey("closeHistory");function O(e){return e={depth:e&&e.depth||100,newGroupDelay:e&&e.newGroupDelay||500},new i.Plugin({key:k,state:{init:function(){return new m(d.empty,d.empty,null,0)},apply:function(t,n,r){return function(e,t,n,r){var o,i=n.getMeta(k);if(i)return i.historyState;n.getMeta(C)&&(e=new m(e.done,e.undone,null,0));var s=n.getMeta("appendedTransaction");if(0==n.steps.length)return e;if(s&&s.getMeta(k))return s.getMeta(k).redo?new m(e.done.addTransform(n,null,r,x(t)),e.undone,g(n.mapping.maps[n.steps.length-1]),e.prevTime):new m(e.done,e.undone.addTransform(n,null,r,x(t)),null,e.prevTime);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(o=n.getMeta("rebased"))?new m(e.done.rebased(n,o),e.undone.rebased(n,o),y(e.prevRanges,n.mapping),e.prevTime):new m(e.done.addMaps(n.mapping.maps),e.undone.addMaps(n.mapping.maps),y(e.prevRanges,n.mapping),e.prevTime);var a=0==e.prevTime||!s&&(e.prevTime<(n.time||0)-r.newGroupDelay||!function(e,t){if(!t)return!1;if(!e.docChanged)return!0;var n=!1;return e.mapping.maps[0].forEach(function(e,r){for(var o=0;o<t.length;o+=2)e<=t[o+1]&&r>=t[o]&&(n=!0)}),n}(n,e.prevRanges)),c=s?y(e.prevRanges,n.mapping):g(n.mapping.maps[n.steps.length-1]);return new m(e.done.addTransform(n,a?t.selection.getBookmark():null,r,x(t)),d.empty,c,n.time)}(n,r,t,e)}},config:e})}function M(e,t){var n=k.getState(e);return!(!n||0==n.done.eventCount)&&(t&&b(n,e,t,!1),!0)}function N(e,t){var n=k.getState(e);return!(!n||0==n.undone.eventCount)&&(t&&b(n,e,t,!0),!0)} -/*! - * tiptap-extensions v1.32.6 - * (c) 2020 überdosis GbR (limited liability) - * @license MIT - */ -class T extends r.f{get name(){return"blockquote"}get schema(){return{content:"block*",group:"block",defining:!0,draggable:!1,parseDOM:[{tag:"blockquote"}],toDOM:()=>["blockquote",0]}}commands({type:e,schema:t}){return()=>Object(o.s)(e,t.nodes.paragraph)}keys({type:e}){return{"Ctrl->":Object(o.s)(e)}}inputRules({type:e}){return[Object(o.u)(/^\s*>\s$/,e)]}}class D extends r.f{get name(){return"bullet_list"}get schema(){return{content:"list_item+",group:"block",parseDOM:[{tag:"ul"}],toDOM:()=>["ul",0]}}commands({type:e,schema:t}){return()=>Object(o.q)(e,t.nodes.list_item)}keys({type:e,schema:t}){return{"Shift-Ctrl-8":Object(o.q)(e,t.nodes.list_item)}}inputRules({type:e}){return[Object(o.u)(/^\s*([-+*])\s$/,e)]}}class A extends r.f{get name(){return"code_block"}get schema(){return{content:"text*",marks:"",group:"block",code:!0,defining:!0,draggable:!1,parseDOM:[{tag:"pre",preserveWhitespace:"full"}],toDOM:()=>["pre",["code",0]]}}commands({type:e,schema:t}){return()=>Object(o.p)(e,t.nodes.paragraph)}keys({type:e}){return{"Shift-Ctrl-\\":Object(o.k)(e)}}inputRules({type:e}){return[Object(o.o)(/^```$/,e)]}}class E extends r.f{get name(){return"heading"}get defaultOptions(){return{levels:[1,2,3,4,5,6]}}get schema(){return{attrs:{level:{default:1}},content:"inline*",group:"block",defining:!0,draggable:!1,parseDOM:this.options.levels.map(e=>({tag:"h".concat(e),attrs:{level:e}})),toDOM:e=>["h".concat(e.attrs.level),0]}}commands({type:e,schema:t}){return n=>Object(o.p)(e,t.nodes.paragraph,n)}keys({type:e}){return this.options.levels.reduce((t,n)=>({...t,...{["Shift-Ctrl-".concat(n)]:Object(o.k)(e,{level:n})}}),{})}inputRules({type:e}){return this.options.levels.map(t=>Object(o.o)(new RegExp("^(#{1,".concat(t,"})\\s$")),e,()=>({level:t})))}}class R extends r.f{get name(){return"horizontal_rule"}get schema(){return{group:"block",parseDOM:[{tag:"hr"}],toDOM:()=>["hr"]}}commands({type:e}){return()=>(t,n)=>n(t.tr.replaceSelectionWith(e.create()))}inputRules({type:e}){return[Object(o.g)(/^(?:---|___\s|\*\*\*\s)$/,e)]}}class _ extends r.f{get name(){return"list_item"}get schema(){return{content:"paragraph block*",defining:!0,draggable:!1,parseDOM:[{tag:"li"}],toDOM:()=>["li",0]}}keys({type:e}){return{Enter:Object(o.m)(e),Tab:Object(o.l)(e),"Shift-Tab":Object(o.d)(e)}}}class P extends r.f{get name(){return"ordered_list"}get schema(){return{attrs:{order:{default:1}},content:"list_item+",group:"block",parseDOM:[{tag:"ol",getAttrs:e=>({order:e.hasAttribute("start")?+e.getAttribute("start"):1})}],toDOM:e=>1===e.attrs.order?["ol",0]:["ol",{start:e.attrs.order},0]}}commands({type:e,schema:t}){return()=>Object(o.q)(e,t.nodes.list_item)}keys({type:e,schema:t}){return{"Shift-Ctrl-9":Object(o.q)(e,t.nodes.list_item)}}inputRules({type:e}){return[Object(o.u)(/^(\d+)\.\s$/,e,e=>({order:+e[1]}),(e,t)=>t.childCount+t.attrs.order===+e[1])]}}Object(s.tableNodes)({tableGroup:"block",cellContent:"block+",cellAttributes:{background:{default:null,getFromDOM:e=>e.style.backgroundColor||null,setDOMAttr(e,t){if(e){const n={style:"".concat(t.style||"","background-color: ").concat(e,";")};Object.assign(t,n)}}}}});class $ extends r.e{get name(){return"bold"}get schema(){return{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:e=>"normal"!==e.style.fontWeight&&null},{style:"font-weight",getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}],toDOM:()=>["strong",0]}}keys({type:e}){return{"Mod-b":Object(o.r)(e)}}commands({type:e}){return()=>Object(o.r)(e)}inputRules({type:e}){return[Object(o.e)(/(?:\*\*|__)([^*_]+)(?:\*\*|__)$/,e)]}pasteRules({type:e}){return[Object(o.f)(/(?:\*\*|__)([^*_]+)(?:\*\*|__)/g,e)]}}class I extends r.e{get name(){return"italic"}get schema(){return{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"}],toDOM:()=>["em",0]}}keys({type:e}){return{"Mod-i":Object(o.r)(e)}}commands({type:e}){return()=>Object(o.r)(e)}inputRules({type:e}){return[Object(o.e)(/(?:^|[^_])(_([^_]+)_)$/,e),Object(o.e)(/(?:^|[^*])(\*([^*]+)\*)$/,e)]}pasteRules({type:e}){return[Object(o.f)(/_([^_]+)_/g,e),Object(o.f)(/\*([^*]+)\*/g,e)]}}class z extends r.e{get name(){return"link"}get defaultOptions(){return{openOnClick:!0,target:null}}get schema(){return{attrs:{href:{default:null},target:{default:null}},inclusive:!1,parseDOM:[{tag:"a[href]",getAttrs:e=>({href:e.getAttribute("href"),target:e.getAttribute("target")})}],toDOM:e=>["a",{...e.attrs,rel:"noopener noreferrer nofollow",target:this.options.target},0]}}commands({type:e}){return t=>t.href?Object(o.t)(e,t):Object(o.i)(e)}pasteRules({type:e}){return[Object(o.h)(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z]{2,}\b([-a-zA-Z0-9@:%_+.~#?&//=,]*)/gi,e,e=>({href:e}))]}get plugins(){return this.options.openOnClick?[new r.g({props:{handleClick:(e,t,n)=>{const{schema:r}=e.state,o=Object(a.a)(e.state,r.marks.link);o.href&&n.target instanceof HTMLAnchorElement&&(n.stopPropagation(),window.open(o.href,o.target))}}})]:[]}}class B extends r.e{get name(){return"underline"}get schema(){return{parseDOM:[{tag:"u"},{style:"text-decoration",getAttrs:e=>"underline"===e}],toDOM:()=>["u",0]}}keys({type:e}){return{"Mod-u":Object(o.r)(e)}}commands({type:e}){return()=>Object(o.r)(e)}}class F extends r.d{get name(){return"history"}get defaultOptions(){return{depth:"",newGroupDelay:""}}keys(){return{"Mod-z":M,"Mod-y":N,"Shift-Mod-z":N,"Mod-я":M,"Shift-Mod-я":N}}get plugins(){return[O({depth:this.options.depth,newGroupDelay:this.options.newGroupDelay})]}commands(){return{undo:()=>M,redo:()=>N,undoDepth:()=>(function(e){var t=k.getState(e);return t?t.done.eventCount:0}),redoDepth:()=>(function(e){var t=k.getState(e);return t?t.undone.eventCount:0})}}}},ABBN:function(e,t,n){"use strict";n.d(t,"a",function(){return C}),n.d(t,"b",function(){return y}),n.d(t,"c",function(){return h}),n.d(t,"d",function(){return u}),n.d(t,"e",function(){return v}),n.d(t,"f",function(){return g}),n.d(t,"g",function(){return m});var r=n("CsC6"),o=n("MEpN"),i=n("UxO+");function s(e,t){return!e.selection.empty&&(t&&t(e.tr.deleteSelection().scrollIntoView()),!0)}function a(e,t){for(;e;e="start"==t?e.firstChild:e.lastChild)if(e.isTextblock)return!0;return!1}function c(e){if(!e.parent.type.spec.isolating)for(var t=e.depth-1;t>=0;t--){if(e.index(t)>0)return e.doc.resolve(e.before(t+1));if(e.node(t).type.spec.isolating)break}return null}function l(e){if(!e.parent.type.spec.isolating)for(var t=e.depth-1;t>=0;t--){var n=e.node(t);if(e.index(t)+1<n.childCount)return e.doc.resolve(e.after(t+1));if(n.type.spec.isolating)break}return null}function u(e,t){var n=e.selection,o=n.$from,i=n.$to,s=o.blockRange(i),a=s&&Object(r.k)(s);return null!=a&&(t&&t(e.tr.lift(s,a).scrollIntoView()),!0)}function p(e){for(var t=0;t<e.edgeCount;t++){var n=e.edge(t).type;if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}function h(e,t){var n=e.selection,r=n.$head,o=n.$anchor;if(!r.parent.type.spec.code||!r.sameParent(o))return!1;var s=r.node(-1),a=r.indexAfter(-1),c=p(s.contentMatchAt(a));if(!s.canReplaceWith(a,a,c))return!1;if(t){var l=r.after(),u=e.tr.replaceWith(l,l,c.createAndFill());u.setSelection(i.Selection.near(u.doc.resolve(l),1)),t(u.scrollIntoView())}return!0}function d(e,t){var n=e.selection,s=n.$from,a=n.$to;if(e.selection instanceof i.NodeSelection&&e.selection.node.isBlock)return!(!s.parentOffset||!Object(r.g)(e.doc,s.pos))&&(t&&t(e.tr.split(s.pos).scrollIntoView()),!0);if(!s.parent.isBlock)return!1;if(t){var c=a.parentOffset==a.parent.content.size,l=e.tr;e.selection instanceof i.TextSelection&&l.deleteSelection();var u=0==s.depth?null:p(s.node(-1).contentMatchAt(s.indexAfter(-1))),h=c&&u?[{type:u}]:null,d=Object(r.g)(l.doc,l.mapping.map(s.pos),1,h);h||d||!Object(r.g)(l.doc,l.mapping.map(s.pos),1,u&&[{type:u}])||(h=[{type:u}],d=!0),d&&(l.split(l.mapping.map(s.pos),1,h),c||s.parentOffset||s.parent.type==u||!s.node(-1).canReplace(s.index(-1),s.indexAfter(-1),o.Fragment.from(u.create(),s.parent))||l.setNodeMarkup(l.mapping.map(s.before()),u)),t(l.scrollIntoView())}return!0}function f(e,t,n){var s,a,c=t.nodeBefore,l=t.nodeAfter;if(c.type.spec.isolating||l.type.spec.isolating)return!1;if(function(e,t,n){var o=t.nodeBefore,i=t.nodeAfter,s=t.index();return!(!(o&&i&&o.type.compatibleContent(i.type))||(!o.content.size&&t.parent.canReplace(s-1,s)?(n&&n(e.tr.delete(t.pos-o.nodeSize,t.pos).scrollIntoView()),0):!t.parent.canReplace(s,s+1)||!i.isTextblock&&!Object(r.f)(e.doc,t.pos)||(n&&n(e.tr.clearIncompatible(t.pos,o.type,o.contentMatchAt(o.childCount)).join(t.pos).scrollIntoView()),0)))}(e,t,n))return!0;if(t.parent.canReplace(t.index(),t.index()+1)&&(s=(a=c.contentMatchAt(c.childCount)).findWrapping(l.type))&&a.matchType(s[0]||l.type).validEnd){if(n){for(var u=t.pos+l.nodeSize,p=o.Fragment.empty,h=s.length-1;h>=0;h--)p=o.Fragment.from(s[h].create(null,p));p=o.Fragment.from(c.copy(p));var d=e.tr.step(new r.b(t.pos-1,u,t.pos,u,new o.Slice(p,1,0),s.length,!0)),f=u+2*s.length;Object(r.f)(d.doc,f)&&d.join(f),n(d.scrollIntoView())}return!0}var m=i.Selection.findFrom(t,1),v=m&&m.$from.blockRange(m.$to),g=v&&Object(r.k)(v);return null!=g&&g>=t.depth&&(n&&n(e.tr.lift(v,g).scrollIntoView()),!0)}function m(e,t){return function(n,o){var i=n.selection,s=i.$from,a=i.$to,c=s.blockRange(a),l=c&&Object(r.i)(c,e,t);return!!l&&(o&&o(n.tr.wrap(c,l).scrollIntoView()),!0)}}function v(e,t){return function(n,r){var o=n.selection,i=o.from,s=o.to,a=!1;return n.doc.nodesBetween(i,s,function(r,o){if(a)return!1;if(r.isTextblock&&!r.hasMarkup(e,t))if(r.type==e)a=!0;else{var i=n.doc.resolve(o),s=i.index();a=i.parent.canReplaceWith(s,s+1,e)}}),!!a&&(r&&r(n.tr.setBlockType(i,s,e,t).scrollIntoView()),!0)}}function g(e,t){return function(n,r){var o=n.selection,i=o.empty,s=o.$cursor,a=o.ranges;if(i&&!s||!function(e,t,n){for(var r=function(r){var o=t[r],i=o.$from,s=o.$to,a=0==i.depth&&e.type.allowsMarkType(n);if(e.nodesBetween(i.pos,s.pos,function(e){if(a)return!1;a=e.inlineContent&&e.type.allowsMarkType(n)}),a)return{v:!0}},o=0;o<t.length;o++){var i=r(o);if(i)return i.v}return!1}(n.doc,a,e))return!1;if(r)if(s)e.isInSet(n.storedMarks||s.marks())?r(n.tr.removeStoredMark(e)):r(n.tr.addStoredMark(e.create(t)));else{for(var c=!1,l=n.tr,u=0;!c&&u<a.length;u++){var p=a[u],h=p.$from,d=p.$to;c=n.doc.rangeHasMark(h.pos,d.pos,e)}for(var f=0;f<a.length;f++){var m=a[f],v=m.$from,g=m.$to;c?l.removeMark(v.pos,g.pos,e):l.addMark(v.pos,g.pos,e.create(t))}r(l.scrollIntoView())}return!0}}function y(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return function(t,n,r){for(var o=0;o<e.length;o++)if(e[o](t,n,r))return!0;return!1}}var b=y(s,function(e,t,n){var o=e.selection.$cursor;if(!o||(n?!n.endOfTextblock("backward",e):o.parentOffset>0))return!1;var s=c(o);if(!s){var l=o.blockRange(),u=l&&Object(r.k)(l);return null!=u&&(t&&t(e.tr.lift(l,u).scrollIntoView()),!0)}var p=s.nodeBefore;if(!p.type.spec.isolating&&f(e,s,t))return!0;if(0==o.parent.content.size&&(a(p,"end")||i.NodeSelection.isSelectable(p))){if(t){var h=e.tr.deleteRange(o.before(),o.after());h.setSelection(a(p,"end")?i.Selection.findFrom(h.doc.resolve(h.mapping.map(s.pos,-1)),-1):i.NodeSelection.create(h.doc,s.pos-p.nodeSize)),t(h.scrollIntoView())}return!0}return!(!p.isAtom||s.depth!=o.depth-1||(t&&t(e.tr.delete(s.pos-p.nodeSize,s.pos).scrollIntoView()),0))},function(e,t,n){var r=e.selection,o=r.$head,s=o;if(!r.empty)return!1;if(o.parent.isTextblock){if(n?!n.endOfTextblock("backward",e):o.parentOffset>0)return!1;s=c(o)}var a=s&&s.nodeBefore;return!(!a||!i.NodeSelection.isSelectable(a)||(t&&t(e.tr.setSelection(i.NodeSelection.create(e.doc,s.pos-a.nodeSize)).scrollIntoView()),0))}),w=y(s,function(e,t,n){var r=e.selection.$cursor;if(!r||(n?!n.endOfTextblock("forward",e):r.parentOffset<r.parent.content.size))return!1;var o=l(r);if(!o)return!1;var s=o.nodeAfter;if(f(e,o,t))return!0;if(0==r.parent.content.size&&(a(s,"start")||i.NodeSelection.isSelectable(s))){if(t){var c=e.tr.deleteRange(r.before(),r.after());c.setSelection(a(s,"start")?i.Selection.findFrom(c.doc.resolve(c.mapping.map(o.pos)),1):i.NodeSelection.create(c.doc,c.mapping.map(o.pos))),t(c.scrollIntoView())}return!0}return!(!s.isAtom||o.depth!=r.depth-1||(t&&t(e.tr.delete(o.pos,o.pos+s.nodeSize).scrollIntoView()),0))},function(e,t,n){var r=e.selection,o=r.$head,s=o;if(!r.empty)return!1;if(o.parent.isTextblock){if(n?!n.endOfTextblock("forward",e):o.parentOffset<o.parent.content.size)return!1;s=l(o)}var a=s&&s.nodeAfter;return!(!a||!i.NodeSelection.isSelectable(a)||(t&&t(e.tr.setSelection(i.NodeSelection.create(e.doc,s.pos)).scrollIntoView()),0))}),S={Enter:y(function(e,t){var n=e.selection,r=n.$head,o=n.$anchor;return!(!r.parent.type.spec.code||!r.sameParent(o)||(t&&t(e.tr.insertText("\n").scrollIntoView()),0))},function(e,t){var n=e.selection,r=n.$from,o=n.$to;if(r.parent.inlineContent||o.parent.inlineContent)return!1;var s=p(r.parent.contentMatchAt(o.indexAfter()));if(!s||!s.isTextblock)return!1;if(t){var a=(!r.parentOffset&&o.index()<o.parent.childCount?r:o).pos,c=e.tr.insert(a,s.createAndFill());c.setSelection(i.TextSelection.create(c.doc,a+1)),t(c.scrollIntoView())}return!0},function(e,t){var n=e.selection.$cursor;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){var o=n.before();if(Object(r.g)(e.doc,o))return t&&t(e.tr.split(o).scrollIntoView()),!0}var i=n.blockRange(),s=i&&Object(r.k)(i);return null!=s&&(t&&t(e.tr.lift(i,s).scrollIntoView()),!0)},d),"Mod-Enter":h,Backspace:b,"Mod-Backspace":b,Delete:w,"Mod-Delete":w,"Mod-a":function(e,t){return t&&t(e.tr.setSelection(new i.AllSelection(e.doc))),!0}},x={"Ctrl-h":S.Backspace,"Alt-Backspace":S["Mod-Backspace"],"Ctrl-d":S.Delete,"Ctrl-Alt-Backspace":S["Mod-Delete"],"Alt-Delete":S["Mod-Delete"],"Alt-d":S["Mod-Delete"]};for(var k in S)x[k]=S[k];var C=("undefined"!=typeof navigator?/Mac/.test(navigator.platform):"undefined"!=typeof os&&"darwin"==os.platform())?x:S},Bz7v:function(e,t,n){"use strict";var r=n("Xb7u"),o=i(Error);function i(e){return t.displayName=e.displayName||e.name,t;function t(t){return t&&(t=r.apply(null,arguments)),new e(t)}}e.exports=o,o.eval=i(EvalError),o.range=i(RangeError),o.reference=i(ReferenceError),o.syntax=i(SyntaxError),o.type=i(TypeError),o.uri=i(URIError),o.create=i},CsC6:function(e,t,n){"use strict";n.d(t,"a",function(){return u}),n.d(t,"b",function(){return b}),n.d(t,"c",function(){return y}),n.d(t,"d",function(){return v}),n.d(t,"e",function(){return h}),n.d(t,"f",function(){return M}),n.d(t,"g",function(){return O}),n.d(t,"h",function(){return D}),n.d(t,"i",function(){return k}),n.d(t,"j",function(){return T}),n.d(t,"k",function(){return x});var r=n("MEpN"),o=65535,i=Math.pow(2,16);function s(e,t){return e+t*i}function a(e){return e&o}var c=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=null),this.pos=e,this.deleted=t,this.recover=n},l=function(e,t){void 0===t&&(t=!1),this.ranges=e,this.inverted=t};l.prototype.recover=function(e){var t=0,n=a(e);if(!this.inverted)for(var r=0;r<n;r++)t+=this.ranges[3*r+2]-this.ranges[3*r+1];return this.ranges[3*n]+t+function(e){return(e-(e&o))/i}(e)},l.prototype.mapResult=function(e,t){return void 0===t&&(t=1),this._map(e,t,!1)},l.prototype.map=function(e,t){return void 0===t&&(t=1),this._map(e,t,!0)},l.prototype._map=function(e,t,n){for(var r=0,o=this.inverted?2:1,i=this.inverted?1:2,a=0;a<this.ranges.length;a+=3){var l=this.ranges[a]-(this.inverted?r:0);if(l>e)break;var u=this.ranges[a+o],p=this.ranges[a+i],h=l+u;if(e<=h){var d=l+r+((u?e==l?-1:e==h?1:t:t)<0?0:p);if(n)return d;var f=e==(t<0?l:h)?null:s(a/3,e-l);return new c(d,t<0?e!=l:e!=h,f)}r+=p-u}return n?e+r:new c(e+r)},l.prototype.touches=function(e,t){for(var n=0,r=a(t),o=this.inverted?2:1,i=this.inverted?1:2,s=0;s<this.ranges.length;s+=3){var c=this.ranges[s]-(this.inverted?n:0);if(c>e)break;var l=this.ranges[s+o];if(e<=c+l&&s==3*r)return!0;n+=this.ranges[s+i]-l}return!1},l.prototype.forEach=function(e){for(var t=this.inverted?2:1,n=this.inverted?1:2,r=0,o=0;r<this.ranges.length;r+=3){var i=this.ranges[r],s=i-(this.inverted?o:0),a=i+(this.inverted?0:o),c=this.ranges[r+t],l=this.ranges[r+n];e(s,s+c,a,a+l),o+=l-c}},l.prototype.invert=function(){return new l(this.ranges,!this.inverted)},l.prototype.toString=function(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)},l.offset=function(e){return 0==e?l.empty:new l(e<0?[0,-e,0]:[0,0,e])},l.empty=new l([]);var u=function(e,t,n,r){this.maps=e||[],this.from=n||0,this.to=null==r?this.maps.length:r,this.mirror=t};function p(e){var t=Error.call(this,e);return t.__proto__=p.prototype,t}u.prototype.slice=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=this.maps.length),new u(this.maps,this.mirror,e,t)},u.prototype.copy=function(){return new u(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)},u.prototype.appendMap=function(e,t){this.to=this.maps.push(e),null!=t&&this.setMirror(this.maps.length-1,t)},u.prototype.appendMapping=function(e){for(var t=0,n=this.maps.length;t<e.maps.length;t++){var r=e.getMirror(t);this.appendMap(e.maps[t],null!=r&&r<t?n+r:null)}},u.prototype.getMirror=function(e){if(this.mirror)for(var t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]},u.prototype.setMirror=function(e,t){this.mirror||(this.mirror=[]),this.mirror.push(e,t)},u.prototype.appendMappingInverted=function(e){for(var t=e.maps.length-1,n=this.maps.length+e.maps.length;t>=0;t--){var r=e.getMirror(t);this.appendMap(e.maps[t].invert(),null!=r&&r>t?n-r-1:null)}},u.prototype.invert=function(){var e=new u;return e.appendMappingInverted(this),e},u.prototype.map=function(e,t){if(void 0===t&&(t=1),this.mirror)return this._map(e,t,!0);for(var n=this.from;n<this.to;n++)e=this.maps[n].map(e,t);return e},u.prototype.mapResult=function(e,t){return void 0===t&&(t=1),this._map(e,t,!1)},u.prototype._map=function(e,t,n){for(var r=!1,o=this.from;o<this.to;o++){var i=this.maps[o].mapResult(e,t);if(null!=i.recover){var s=this.getMirror(o);if(null!=s&&s>o&&s<this.to){o=s,e=this.maps[s].recover(i.recover);continue}}i.deleted&&(r=!0),e=i.pos}return n?e:new c(e,r)},p.prototype=Object.create(Error.prototype),p.prototype.constructor=p,p.prototype.name="TransformError";var h=function(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new u},d={before:{configurable:!0},docChanged:{configurable:!0}};function f(){throw new Error("Override me")}d.before.get=function(){return this.docs.length?this.docs[0]:this.doc},h.prototype.step=function(e){var t=this.maybeStep(e);if(t.failed)throw new p(t.failed);return this},h.prototype.maybeStep=function(e){var t=e.apply(this.doc);return t.failed||this.addStep(e,t.doc),t},d.docChanged.get=function(){return this.steps.length>0},h.prototype.addStep=function(e,t){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=t},Object.defineProperties(h.prototype,d);var m=Object.create(null),v=function(){};v.prototype.apply=function(e){return f()},v.prototype.getMap=function(){return l.empty},v.prototype.invert=function(e){return f()},v.prototype.map=function(e){return f()},v.prototype.merge=function(e){return null},v.prototype.toJSON=function(){return f()},v.fromJSON=function(e,t){if(!t||!t.stepType)throw new RangeError("Invalid input for Step.fromJSON");var n=m[t.stepType];if(!n)throw new RangeError("No step type "+t.stepType+" defined");return n.fromJSON(e,t)},v.jsonID=function(e,t){if(e in m)throw new RangeError("Duplicate use of step JSON ID "+e);return m[e]=t,t.prototype.jsonID=e,t};var g=function(e,t){this.doc=e,this.failed=t};g.ok=function(e){return new g(e,null)},g.fail=function(e){return new g(null,e)},g.fromReplace=function(e,t,n,o){try{return g.ok(e.replace(t,n,o))}catch(e){if(e instanceof r.ReplaceError)return g.fail(e.message);throw e}};var y=function(e){function t(t,n,r,o){e.call(this),this.from=t,this.to=n,this.slice=r,this.structure=!!o}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(e){return this.structure&&w(e,this.from,this.to)?g.fail("Structure replace would overwrite content"):g.fromReplace(e,this.from,this.to,this.slice)},t.prototype.getMap=function(){return new l([this.from,this.to-this.from,this.slice.size])},t.prototype.invert=function(e){return new t(this.from,this.from+this.slice.size,e.slice(this.from,this.to))},t.prototype.map=function(e){var n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted?null:new t(n.pos,Math.max(n.pos,r.pos),this.slice)},t.prototype.merge=function(e){if(!(e instanceof t)||e.structure!=this.structure)return null;if(this.from+this.slice.size!=e.from||this.slice.openEnd||e.slice.openStart){if(e.to!=this.from||this.slice.openStart||e.slice.openEnd)return null;var n=this.slice.size+e.slice.size==0?r.Slice.empty:new r.Slice(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new t(e.from,this.to,n,this.structure)}var o=this.slice.size+e.slice.size==0?r.Slice.empty:new r.Slice(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new t(this.from,this.to+(e.to-e.from),o,this.structure)},t.prototype.toJSON=function(){var e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e},t.fromJSON=function(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new t(n.from,n.to,r.Slice.fromJSON(e,n.slice),!!n.structure)},t}(v);v.jsonID("replace",y);var b=function(e){function t(t,n,r,o,i,s,a){e.call(this),this.from=t,this.to=n,this.gapFrom=r,this.gapTo=o,this.slice=i,this.insert=s,this.structure=!!a}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(e){if(this.structure&&(w(e,this.from,this.gapFrom)||w(e,this.gapTo,this.to)))return g.fail("Structure gap-replace would overwrite content");var t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return g.fail("Gap is not a flat range");var n=this.slice.insertAt(this.insert,t.content);return n?g.fromReplace(e,this.from,this.to,n):g.fail("Content does not fit in gap")},t.prototype.getMap=function(){return new l([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])},t.prototype.invert=function(e){var n=this.gapTo-this.gapFrom;return new t(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)},t.prototype.map=function(e){var n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1),o=e.map(this.gapFrom,-1),i=e.map(this.gapTo,1);return n.deleted&&r.deleted||o<n.pos||i>r.pos?null:new t(n.pos,r.pos,o,i,this.slice,this.insert,this.structure)},t.prototype.toJSON=function(){var e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e},t.fromJSON=function(e,n){if("number"!=typeof n.from||"number"!=typeof n.to||"number"!=typeof n.gapFrom||"number"!=typeof n.gapTo||"number"!=typeof n.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new t(n.from,n.to,n.gapFrom,n.gapTo,r.Slice.fromJSON(e,n.slice),n.insert,!!n.structure)},t}(v);function w(e,t,n){for(var r=e.resolve(t),o=n-t,i=r.depth;o>0&&i>0&&r.indexAfter(i)==r.node(i).childCount;)i--,o--;if(o>0)for(var s=r.node(i).maybeChild(r.indexAfter(i));o>0;){if(!s||s.isLeaf)return!0;s=s.firstChild,o--}return!1}function S(e,t,n){return(0==t||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function x(e){for(var t=e.parent.content.cutByIndex(e.startIndex,e.endIndex),n=e.depth;;--n){var r=e.$from.node(n),o=e.$from.index(n),i=e.$to.indexAfter(n);if(n<e.depth&&r.canReplace(o,i,t))return n;if(0==n||r.type.spec.isolating||!S(r,o,i))break}}function k(e,t,n,r){void 0===r&&(r=e);var o=function(e,t){var n=e.parent,r=e.startIndex,o=e.endIndex,i=n.contentMatchAt(r).findWrapping(t);if(!i)return null;var s=i.length?i[0]:t;return n.canReplaceWith(r,o,s)?i:null}(e,t),i=o&&function(e,t){var n=e.parent,r=e.startIndex,o=e.endIndex,i=n.child(r),s=t.contentMatch.findWrapping(i.type);if(!s)return null;for(var a=(s.length?s[s.length-1]:t).contentMatch,c=r;a&&c<o;c++)a=a.matchType(n.child(c).type);if(!a||!a.validEnd)return null;return s}(r,t);return i?o.map(C).concat({type:t,attrs:n}).concat(i.map(C)):null}function C(e){return{type:e,attrs:null}}function O(e,t,n,r){void 0===n&&(n=1);var o=e.resolve(t),i=o.depth-n,s=r&&r[r.length-1]||o.parent;if(i<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!s.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(var a=o.depth-1,c=n-2;a>i;a--,c--){var l=o.node(a),u=o.index(a);if(l.type.spec.isolating)return!1;var p=l.content.cutByIndex(u,l.childCount),h=r&&r[c]||l;if(h!=l&&(p=p.replaceChild(0,h.type.create(h.attrs))),!l.canReplace(u+1,l.childCount)||!h.type.validContent(p))return!1}var d=o.indexAfter(i),f=r&&r[0];return o.node(i).canReplaceWith(d,d,f?f.type:o.node(i+1).type)}function M(e,t){var n=e.resolve(t),r=n.index();return N(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function N(e,t){return e&&t&&!e.isLeaf&&e.canAppend(t)}function T(e,t,n){void 0===n&&(n=-1);for(var r=e.resolve(t),o=r.depth;;o--){var i=void 0,s=void 0,a=r.index(o);if(o==r.depth?(i=r.nodeBefore,s=r.nodeAfter):n>0?(i=r.node(o+1),a++,s=r.node(o).maybeChild(a)):(i=r.node(o).maybeChild(a-1),s=r.node(o+1)),i&&!i.isTextblock&&N(i,s)&&r.node(o).canReplace(a,a+1))return t;if(0==o)break;t=n<0?r.before(o):r.after(o)}}function D(e,t,n){var r=e.resolve(t);if(!n.content.size)return t;for(var o=n.content,i=0;i<n.openStart;i++)o=o.firstChild.content;for(var s=1;s<=(0==n.openStart&&n.size?2:1);s++)for(var a=r.depth;a>=0;a--){var c=a==r.depth?0:r.pos<=(r.start(a+1)+r.end(a+1))/2?-1:1,l=r.index(a)+(c>0?1:0);if(1==s?r.node(a).canReplace(l,l,o):r.node(a).contentMatchAt(l).findWrapping(o.firstChild.type))return 0==c?r.pos:c<0?r.before(a+1):r.after(a+1)}return null}function A(e,t,n){for(var o=[],i=0;i<e.childCount;i++){var s=e.child(i);s.content.size&&(s=s.copy(A(s.content,t,s))),s.isInline&&(s=t(s,n,i)),o.push(s)}return r.Fragment.fromArray(o)}v.jsonID("replaceAround",b),h.prototype.lift=function(e,t){for(var n=e.$from,o=e.$to,i=e.depth,s=n.before(i+1),a=o.after(i+1),c=s,l=a,u=r.Fragment.empty,p=0,h=i,d=!1;h>t;h--)d||n.index(h)>0?(d=!0,u=r.Fragment.from(n.node(h).copy(u)),p++):c--;for(var f=r.Fragment.empty,m=0,v=i,g=!1;v>t;v--)g||o.after(v+1)<o.end(v)?(g=!0,f=r.Fragment.from(o.node(v).copy(f)),m++):l++;return this.step(new b(c,l,s,a,new r.Slice(u.append(f),p,m),u.size-p,!0))},h.prototype.wrap=function(e,t){for(var n=r.Fragment.empty,o=t.length-1;o>=0;o--)n=r.Fragment.from(t[o].type.create(t[o].attrs,n));var i=e.start,s=e.end;return this.step(new b(i,s,i,s,new r.Slice(n,0,0),t.length,!0))},h.prototype.setBlockType=function(e,t,n,o){var i=this;if(void 0===t&&(t=e),!n.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");var s=this.steps.length;return this.doc.nodesBetween(e,t,function(e,t){if(e.isTextblock&&!e.hasMarkup(n,o)&&function(e,t,n){var r=e.resolve(t),o=r.index();return r.parent.canReplaceWith(o,o+1,n)}(i.doc,i.mapping.slice(s).map(t),n)){i.clearIncompatible(i.mapping.slice(s).map(t,1),n);var a=i.mapping.slice(s),c=a.map(t,1),l=a.map(t+e.nodeSize,1);return i.step(new b(c,l,c+1,l-1,new r.Slice(r.Fragment.from(n.create(o,null,e.marks)),0,0),1,!0)),!1}}),this},h.prototype.setNodeMarkup=function(e,t,n,o){var i=this.doc.nodeAt(e);if(!i)throw new RangeError("No node at given position");t||(t=i.type);var s=t.create(n,null,o||i.marks);if(i.isLeaf)return this.replaceWith(e,e+i.nodeSize,s);if(!t.validContent(i.content))throw new RangeError("Invalid content for node type "+t.name);return this.step(new b(e,e+i.nodeSize,e+1,e+i.nodeSize-1,new r.Slice(r.Fragment.from(s),0,0),1,!0))},h.prototype.split=function(e,t,n){void 0===t&&(t=1);for(var o=this.doc.resolve(e),i=r.Fragment.empty,s=r.Fragment.empty,a=o.depth,c=o.depth-t,l=t-1;a>c;a--,l--){i=r.Fragment.from(o.node(a).copy(i));var u=n&&n[l];s=r.Fragment.from(u?u.type.create(u.attrs,s):o.node(a).copy(s))}return this.step(new y(e,e,new r.Slice(i.append(s),t,t),!0))},h.prototype.join=function(e,t){void 0===t&&(t=1);var n=new y(e-t,e+t,r.Slice.empty,!0);return this.step(n)};var E=function(e){function t(t,n,r){e.call(this),this.from=t,this.to=n,this.mark=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(e){var t=this,n=e.slice(this.from,this.to),o=e.resolve(this.from),i=o.node(o.sharedDepth(this.to)),s=new r.Slice(A(n.content,function(e,n){return n.type.allowsMarkType(t.mark.type)?e.mark(t.mark.addToSet(e.marks)):e},i),n.openStart,n.openEnd);return g.fromReplace(e,this.from,this.to,s)},t.prototype.invert=function(){return new R(this.from,this.to,this.mark)},t.prototype.map=function(e){var n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new t(n.pos,r.pos,this.mark)},t.prototype.merge=function(e){if(e instanceof t&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from)return new t(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark)},t.prototype.toJSON=function(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}},t.fromJSON=function(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new t(n.from,n.to,e.markFromJSON(n.mark))},t}(v);v.jsonID("addMark",E);var R=function(e){function t(t,n,r){e.call(this),this.from=t,this.to=n,this.mark=r}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.apply=function(e){var t=this,n=e.slice(this.from,this.to),o=new r.Slice(A(n.content,function(e){return e.mark(t.mark.removeFromSet(e.marks))}),n.openStart,n.openEnd);return g.fromReplace(e,this.from,this.to,o)},t.prototype.invert=function(){return new E(this.from,this.to,this.mark)},t.prototype.map=function(e){var n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new t(n.pos,r.pos,this.mark)},t.prototype.merge=function(e){if(e instanceof t&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from)return new t(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark)},t.prototype.toJSON=function(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}},t.fromJSON=function(e,n){if("number"!=typeof n.from||"number"!=typeof n.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new t(n.from,n.to,e.markFromJSON(n.mark))},t}(v);function _(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}v.jsonID("removeMark",R),h.prototype.addMark=function(e,t,n){var r=this,o=[],i=[],s=null,a=null;return this.doc.nodesBetween(e,t,function(r,c,l){if(r.isInline){var u=r.marks;if(!n.isInSet(u)&&l.type.allowsMarkType(n.type)){for(var p=Math.max(c,e),h=Math.min(c+r.nodeSize,t),d=n.addToSet(u),f=0;f<u.length;f++)u[f].isInSet(d)||(s&&s.to==p&&s.mark.eq(u[f])?s.to=h:o.push(s=new R(p,h,u[f])));a&&a.to==p?a.to=h:i.push(a=new E(p,h,n))}}}),o.forEach(function(e){return r.step(e)}),i.forEach(function(e){return r.step(e)}),this},h.prototype.removeMark=function(e,t,n){var o=this;void 0===n&&(n=null);var i=[],s=0;return this.doc.nodesBetween(e,t,function(o,a){if(o.isInline){s++;var c=null;if(n instanceof r.MarkType){var l=n.isInSet(o.marks);l&&(c=[l])}else n?n.isInSet(o.marks)&&(c=[n]):c=o.marks;if(c&&c.length)for(var u=Math.min(a+o.nodeSize,t),p=0;p<c.length;p++){for(var h=c[p],d=void 0,f=0;f<i.length;f++){var m=i[f];m.step==s-1&&h.eq(i[f].style)&&(d=m)}d?(d.to=u,d.step=s):i.push({style:h,from:Math.max(a,e),to:u,step:s})}}}),i.forEach(function(e){return o.step(new R(e.from,e.to,e.style))}),this},h.prototype.clearIncompatible=function(e,t,n){void 0===n&&(n=t.contentMatch);for(var o=this.doc.nodeAt(e),i=[],s=e+1,a=0;a<o.childCount;a++){var c=o.child(a),l=s+c.nodeSize,u=n.matchType(c.type,c.attrs);if(u){n=u;for(var p=0;p<c.marks.length;p++)t.allowsMarkType(c.marks[p].type)||this.step(new R(s,l,c.marks[p]))}else i.push(new y(s,l,r.Slice.empty));s=l}if(!n.validEnd){var h=n.fillBefore(r.Fragment.empty,!0);this.replace(s,s,new r.Slice(h,0,0))}for(var d=i.length-1;d>=0;d--)this.step(i[d]);return this},h.prototype.replace=function(e,t,n){void 0===t&&(t=e),void 0===n&&(n=r.Slice.empty);var o=function(e,t,n,o){if(void 0===n&&(n=t),void 0===o&&(o=r.Slice.empty),t==n&&!o.size)return null;var i=e.resolve(t),s=e.resolve(n);return _(i,s,o)?new y(t,n,o):new P(i,s,o).fit()}(this.doc,e,t,n);return o&&this.step(o),this},h.prototype.replaceWith=function(e,t,n){return this.replace(e,t,new r.Slice(r.Fragment.from(n),0,0))},h.prototype.delete=function(e,t){return this.replace(e,t,r.Slice.empty)},h.prototype.insert=function(e,t){return this.replaceWith(e,e,t)};var P=function(e,t,n){this.$to=t,this.$from=e,this.unplaced=n,this.frontier=[];for(var o=0;o<=e.depth;o++){var i=e.node(o);this.frontier.push({type:i.type,match:i.contentMatchAt(e.indexAfter(o))})}this.placed=r.Fragment.empty;for(var s=e.depth;s>0;s--)this.placed=r.Fragment.from(e.node(s).copy(this.placed))},$={depth:{configurable:!0}};function I(e,t,n){return 0==t?e.cutByIndex(n):e.replaceChild(0,e.firstChild.copy(I(e.firstChild.content,t-1,n)))}function z(e,t,n){return 0==t?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(z(e.lastChild.content,t-1,n)))}function B(e,t){for(var n=0;n<t;n++)e=e.firstChild.content;return e}function F(e,t,n){if(t<=0)return e;var o=e.content;return t>1&&(o=o.replaceChild(0,F(o.firstChild,t-1,1==o.childCount?n-1:0))),t>0&&(o=e.type.contentMatch.fillBefore(o).append(o),n<=0&&(o=o.append(e.type.contentMatch.matchFragment(o).fillBefore(r.Fragment.empty,!0)))),e.copy(o)}function V(e,t,n,r,o){var i=e.node(t),s=o?e.indexAfter(t):e.index(t);if(s==i.childCount&&!n.compatibleContent(i.type))return null;var a=r.fillBefore(i.content,!0,s);return a&&!function(e,t,n){for(var r=n;r<t.childCount;r++)if(!e.allowsMarks(t.child(r).marks))return!0;return!1}(n,i.content,s)?a:null}function j(e,t,n,o,i){if(t<n){var s=e.firstChild;e=e.replaceChild(0,s.copy(j(s.content,t+1,n,o,s)))}if(t>o){var a=i.contentMatchAt(0),c=a.fillBefore(e).append(e);e=c.append(a.matchFragment(c).fillBefore(r.Fragment.empty,!0))}return e}function L(e,t){for(var n=[],r=Math.min(e.depth,t.depth);r>=0;r--){var o=e.start(r);if(o<e.pos-(e.depth-r)||t.end(r)>t.pos+(t.depth-r)||e.node(r).type.spec.isolating||t.node(r).type.spec.isolating)break;o==t.start(r)&&n.push(r)}return n}$.depth.get=function(){return this.frontier.length-1},P.prototype.fit=function(){for(;this.unplaced.size;){var e=this.findFittable();e?this.placeNodes(e):this.openMore()||this.dropNode()}var t=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,o=this.$from,i=this.close(t<0?this.$to:o.doc.resolve(t));if(!i)return null;for(var s=this.placed,a=o.depth,c=i.depth;a&&c&&1==s.childCount;)s=s.firstChild.content,a--,c--;var l=new r.Slice(s,a,c);return t>-1?new b(o.pos,t,this.$to.pos,this.$to.end(),l,n):l.size||o.pos!=this.$to.pos?new y(o.pos,i.pos,l):void 0},P.prototype.findFittable=function(){for(var e=1;e<=2;e++)for(var t=this.unplaced.openStart;t>=0;t--)for(var n=void 0,o=(t?(n=B(this.unplaced.content,t-1).firstChild).content:this.unplaced.content).firstChild,i=this.depth;i>=0;i--){var s=this.frontier[i],a=s.type,c=s.match,l=void 0,u=void 0;if(1==e&&(o?c.matchType(o.type)||(u=c.fillBefore(r.Fragment.from(o),!1)):a.compatibleContent(n.type)))return{sliceDepth:t,frontierDepth:i,parent:n,inject:u};if(2==e&&o&&(l=c.findWrapping(o.type)))return{sliceDepth:t,frontierDepth:i,parent:n,wrap:l};if(n&&c.matchType(n.type))break}},P.prototype.openMore=function(){var e=this.unplaced,t=e.content,n=e.openStart,o=e.openEnd,i=B(t,n);return!(!i.childCount||i.firstChild.isLeaf)&&(this.unplaced=new r.Slice(t,n+1,Math.max(o,i.size+n>=t.size-o?n+1:0)),!0)},P.prototype.dropNode=function(){var e=this.unplaced,t=e.content,n=e.openStart,o=e.openEnd,i=B(t,n);if(i.childCount<=1&&n>0){var s=t.size-n<=n+i.size;this.unplaced=new r.Slice(I(t,n-1,1),n-1,s?n-1:o)}else this.unplaced=new r.Slice(I(t,n,1),n,o)},P.prototype.placeNodes=function(e){for(var t=e.sliceDepth,n=e.frontierDepth,o=e.parent,i=e.inject,s=e.wrap;this.depth>n;)this.closeFrontierNode();if(s)for(var a=0;a<s.length;a++)this.openFrontierNode(s[a]);var c=this.unplaced,l=o?o.content:c.content,u=c.openStart-t,p=0,h=[],d=this.frontier[n],f=d.match,m=d.type;if(i){for(var v=0;v<i.childCount;v++)h.push(i.child(v));f=f.matchFragment(i)}for(var g=l.size+t-(c.content.size-c.openEnd);p<l.childCount;){var y=l.child(p),b=f.matchType(y.type);if(!b)break;(++p>1||0==u||y.content.size)&&(f=b,h.push(F(y.mark(m.allowedMarks(y.marks)),1==p?u:0,p==l.childCount?g:-1)))}var w=p==l.childCount;w||(g=-1),this.placed=z(this.placed,n,r.Fragment.from(h)),this.frontier[n].match=f,w&&g<0&&o&&o.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(var S=0,x=l;S<g;S++){var k=x.lastChild;this.frontier.push({type:k.type,match:k.contentMatchAt(k.childCount)}),x=k.content}this.unplaced=w?0==t?r.Slice.empty:new r.Slice(I(c.content,t-1,1),t-1,g<0?c.openEnd:t-1):new r.Slice(I(c.content,t,p),c.openStart,c.openEnd)},P.prototype.mustMoveInline=function(){if(!this.$to.parent.isTextblock||this.$to.end()==this.$to.pos)return-1;var e,t=this.frontier[this.depth];if(!t.type.isTextblock||!V(this.$to,this.$to.depth,t.type,t.match,!1)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;for(var n=this.$to.depth,r=this.$to.after(n);n>1&&r==this.$to.end(--n);)++r;return r},P.prototype.findCloseLevel=function(e){e:for(var t=Math.min(this.depth,e.depth);t>=0;t--){var n=this.frontier[t],r=n.match,o=n.type,i=t<e.depth&&e.end(t+1)==e.pos+(e.depth-(t+1)),s=V(e,t,o,r,i);if(s){for(var a=t-1;a>=0;a--){var c=this.frontier[a],l=c.match,u=V(e,a,c.type,l,!0);if(!u||u.childCount)continue e}return{depth:t,fit:s,move:i?e.doc.resolve(e.after(t+1)):e}}}},P.prototype.close=function(e){var t=this.findCloseLevel(e);if(!t)return null;for(;this.depth>t.depth;)this.closeFrontierNode();t.fit.childCount&&(this.placed=z(this.placed,t.depth,t.fit)),e=t.move;for(var n=t.depth+1;n<=e.depth;n++){var r=e.node(n),o=r.type.contentMatch.fillBefore(r.content,!0,e.index(n));this.openFrontierNode(r.type,r.attrs,o)}return e},P.prototype.openFrontierNode=function(e,t,n){var o=this.frontier[this.depth];o.match=o.match.matchType(e),this.placed=z(this.placed,this.depth,r.Fragment.from(e.create(t,n))),this.frontier.push({type:e,match:e.contentMatch})},P.prototype.closeFrontierNode=function(){var e=this.frontier.pop().match.fillBefore(r.Fragment.empty,!0);e.childCount&&(this.placed=z(this.placed,this.frontier.length,e))},Object.defineProperties(P.prototype,$),h.prototype.replaceRange=function(e,t,n){if(!n.size)return this.deleteRange(e,t);var o=this.doc.resolve(e),i=this.doc.resolve(t);if(_(o,i,n))return this.step(new y(e,t,n));var s=L(o,this.doc.resolve(t));0==s[s.length-1]&&s.pop();var a=-(o.depth+1);s.unshift(a);for(var c=o.depth,l=o.pos-1;c>0;c--,l--){var u=o.node(c).type.spec;if(u.defining||u.isolating)break;s.indexOf(c)>-1?a=c:o.before(c)==l&&s.splice(1,0,-c)}for(var p=s.indexOf(a),h=[],d=n.openStart,f=n.content,m=0;;m++){var v=f.firstChild;if(h.push(v),m==n.openStart)break;f=v.content}d>0&&h[d-1].type.spec.defining&&o.node(p).type!=h[d-1].type?d-=1:d>=2&&h[d-1].isTextblock&&h[d-2].type.spec.defining&&o.node(p).type!=h[d-2].type&&(d-=2);for(var g=n.openStart;g>=0;g--){var b=(g+d+1)%(n.openStart+1),w=h[b];if(w)for(var S=0;S<s.length;S++){var x=s[(S+p)%s.length],k=!0;x<0&&(k=!1,x=-x);var C=o.node(x-1),O=o.index(x-1);if(C.canReplaceWith(O,O,w.type,w.marks))return this.replace(o.before(x),k?i.after(x):t,new r.Slice(j(n.content,0,n.openStart,b),b,n.openEnd))}}for(var M=this.steps.length,N=s.length-1;N>=0&&(this.replace(e,t,n),!(this.steps.length>M));N--){var T=s[N];N<0||(e=o.before(T),t=i.after(T))}return this},h.prototype.replaceRangeWith=function(e,t,n){if(!n.isInline&&e==t&&this.doc.resolve(e).parent.content.size){var o=function(e,t,n){var r=e.resolve(t);if(r.parent.canReplaceWith(r.index(),r.index(),n))return t;if(0==r.parentOffset)for(var o=r.depth-1;o>=0;o--){var i=r.index(o);if(r.node(o).canReplaceWith(i,i,n))return r.before(o+1);if(i>0)return null}if(r.parentOffset==r.parent.content.size)for(var s=r.depth-1;s>=0;s--){var a=r.indexAfter(s);if(r.node(s).canReplaceWith(a,a,n))return r.after(s+1);if(a<r.node(s).childCount)return null}}(this.doc,e,n.type);null!=o&&(e=t=o)}return this.replaceRange(e,t,new r.Slice(r.Fragment.from(n),0,0))},h.prototype.deleteRange=function(e,t){for(var n=this.doc.resolve(e),r=this.doc.resolve(t),o=L(n,r),i=0;i<o.length;i++){var s=o[i],a=i==o.length-1;if(a&&0==s||n.node(s).type.contentMatch.validEnd)return this.delete(n.start(s),r.end(s));if(s>0&&(a||n.node(s-1).canReplace(n.index(s-1),r.indexAfter(s-1))))return this.delete(n.before(s),r.after(s))}for(var c=1;c<=n.depth&&c<=r.depth;c++)if(e-n.start(c)==n.depth-c&&t>n.end(c)&&r.end(c)-t!=r.depth-c)return this.delete(n.before(c),t);return this.delete(e,t)}},J7Ao:function(e,t){e.exports=class{constructor(){this.seen={}}slug(e){let t=e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){const e=t;do{this.seen[e]++,t=e+"-"+this.seen[e]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t}}},MEpN:function(e,t,n){"use strict";function r(e){this.content=e}n.r(t),n.d(t,"ContentMatch",function(){return _}),n.d(t,"DOMParser",function(){return ee}),n.d(t,"DOMSerializer",function(){return de}),n.d(t,"Fragment",function(){return i}),n.d(t,"Mark",function(){return u}),n.d(t,"MarkType",function(){return Z}),n.d(t,"Node",function(){return D}),n.d(t,"NodeRange",function(){return M}),n.d(t,"NodeType",function(){return H}),n.d(t,"ReplaceError",function(){return p}),n.d(t,"ResolvedPos",function(){return S}),n.d(t,"Schema",function(){return Y}),n.d(t,"Slice",function(){return h}),r.prototype={constructor:r,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return-1==t?void 0:this.content[t+1]},update:function(e,t,n){var o=n&&n!=e?this.remove(n):this,i=o.find(e),s=o.content.slice();return-1==i?s.push(n||e,t):(s[i+1]=t,n&&(s[i]=n)),new r(s)},remove:function(e){var t=this.find(e);if(-1==t)return this;var n=this.content.slice();return n.splice(t,2),new r(n)},addToStart:function(e,t){return new r([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new r(n)},addBefore:function(e,t,n){var o=this.remove(t),i=o.content.slice(),s=o.find(e);return i.splice(-1==s?i.length:s,0,t,n),new r(i)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return(e=r.from(e)).size?new r(e.content.concat(this.subtract(e).content)):this},append:function(e){return(e=r.from(e)).size?new r(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=r.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},get size(){return this.content.length>>1}},r.from=function(e){if(e instanceof r)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new r(t)};var o=r;var i=function(e,t){if(this.content=e,this.size=t||0,null==t)for(var n=0;n<e.length;n++)this.size+=e[n].nodeSize},s={firstChild:{configurable:!0},lastChild:{configurable:!0},childCount:{configurable:!0}};i.prototype.nodesBetween=function(e,t,n,r,o){void 0===r&&(r=0);for(var i=0,s=0;s<t;i++){var a=this.content[i],c=s+a.nodeSize;if(c>e&&!1!==n(a,r+s,o,i)&&a.content.size){var l=s+1;a.nodesBetween(Math.max(0,e-l),Math.min(a.content.size,t-l),n,r+l)}s=c}},i.prototype.descendants=function(e){this.nodesBetween(0,this.size,e)},i.prototype.textBetween=function(e,t,n,r){var o="",i=!0;return this.nodesBetween(e,t,function(s,a){s.isText?(o+=s.text.slice(Math.max(e,a)-a,t-a),i=!n):s.isLeaf&&r?(o+=r,i=!n):!i&&s.isBlock&&(o+=n,i=!0)},0),o},i.prototype.append=function(e){if(!e.size)return this;if(!this.size)return e;var t=this.lastChild,n=e.firstChild,r=this.content.slice(),o=0;for(t.isText&&t.sameMarkup(n)&&(r[r.length-1]=t.withText(t.text+n.text),o=1);o<e.content.length;o++)r.push(e.content[o]);return new i(r,this.size+e.size)},i.prototype.cut=function(e,t){if(null==t&&(t=this.size),0==e&&t==this.size)return this;var n=[],r=0;if(t>e)for(var o=0,s=0;s<t;o++){var a=this.content[o],c=s+a.nodeSize;c>e&&((s<e||c>t)&&(a=a.isText?a.cut(Math.max(0,e-s),Math.min(a.text.length,t-s)):a.cut(Math.max(0,e-s-1),Math.min(a.content.size,t-s-1))),n.push(a),r+=a.nodeSize),s=c}return new i(n,r)},i.prototype.cutByIndex=function(e,t){return e==t?i.empty:0==e&&t==this.content.length?this:new i(this.content.slice(e,t))},i.prototype.replaceChild=function(e,t){var n=this.content[e];if(n==t)return this;var r=this.content.slice(),o=this.size+t.nodeSize-n.nodeSize;return r[e]=t,new i(r,o)},i.prototype.addToStart=function(e){return new i([e].concat(this.content),this.size+e.nodeSize)},i.prototype.addToEnd=function(e){return new i(this.content.concat(e),this.size+e.nodeSize)},i.prototype.eq=function(e){if(this.content.length!=e.content.length)return!1;for(var t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0},s.firstChild.get=function(){return this.content.length?this.content[0]:null},s.lastChild.get=function(){return this.content.length?this.content[this.content.length-1]:null},s.childCount.get=function(){return this.content.length},i.prototype.child=function(e){var t=this.content[e];if(!t)throw new RangeError("Index "+e+" out of range for "+this);return t},i.prototype.maybeChild=function(e){return this.content[e]},i.prototype.forEach=function(e){for(var t=0,n=0;t<this.content.length;t++){var r=this.content[t];e(r,n,t),n+=r.nodeSize}},i.prototype.findDiffStart=function(e,t){return void 0===t&&(t=0),function e(t,n,r){for(var o=0;;o++){if(o==t.childCount||o==n.childCount)return t.childCount==n.childCount?null:r;var i=t.child(o),s=n.child(o);if(i!=s){if(!i.sameMarkup(s))return r;if(i.isText&&i.text!=s.text){for(var a=0;i.text[a]==s.text[a];a++)r++;return r}if(i.content.size||s.content.size){var c=e(i.content,s.content,r+1);if(null!=c)return c}r+=i.nodeSize}else r+=i.nodeSize}}(this,e,t)},i.prototype.findDiffEnd=function(e,t,n){return void 0===t&&(t=this.size),void 0===n&&(n=e.size),function e(t,n,r,o){for(var i=t.childCount,s=n.childCount;;){if(0==i||0==s)return i==s?null:{a:r,b:o};var a=t.child(--i),c=n.child(--s),l=a.nodeSize;if(a!=c){if(!a.sameMarkup(c))return{a:r,b:o};if(a.isText&&a.text!=c.text){for(var u=0,p=Math.min(a.text.length,c.text.length);u<p&&a.text[a.text.length-u-1]==c.text[c.text.length-u-1];)u++,r--,o--;return{a:r,b:o}}if(a.content.size||c.content.size){var h=e(a.content,c.content,r-1,o-1);if(h)return h}r-=l,o-=l}else r-=l,o-=l}}(this,e,t,n)},i.prototype.findIndex=function(e,t){if(void 0===t&&(t=-1),0==e)return c(0,e);if(e==this.size)return c(this.content.length,e);if(e>this.size||e<0)throw new RangeError("Position "+e+" outside of fragment ("+this+")");for(var n=0,r=0;;n++){var o=r+this.child(n).nodeSize;if(o>=e)return o==e||t>0?c(n+1,o):c(n,r);r=o}},i.prototype.toString=function(){return"<"+this.toStringInner()+">"},i.prototype.toStringInner=function(){return this.content.join(", ")},i.prototype.toJSON=function(){return this.content.length?this.content.map(function(e){return e.toJSON()}):null},i.fromJSON=function(e,t){if(!t)return i.empty;if(!Array.isArray(t))throw new RangeError("Invalid input for Fragment.fromJSON");return new i(t.map(e.nodeFromJSON))},i.fromArray=function(e){if(!e.length)return i.empty;for(var t,n=0,r=0;r<e.length;r++){var o=e[r];n+=o.nodeSize,r&&o.isText&&e[r-1].sameMarkup(o)?(t||(t=e.slice(0,r)),t[t.length-1]=o.withText(t[t.length-1].text+o.text)):t&&t.push(o)}return new i(t||e,n)},i.from=function(e){if(!e)return i.empty;if(e instanceof i)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new i([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))},Object.defineProperties(i.prototype,s);var a={index:0,offset:0};function c(e,t){return a.index=e,a.offset=t,a}function l(e,t){if(e===t)return!0;if(!e||"object"!=typeof e||!t||"object"!=typeof t)return!1;var n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(var r=0;r<e.length;r++)if(!l(e[r],t[r]))return!1}else{for(var o in e)if(!(o in t&&l(e[o],t[o])))return!1;for(var i in t)if(!(i in e))return!1}return!0}i.empty=new i([],0);var u=function(e,t){this.type=e,this.attrs=t};function p(e){var t=Error.call(this,e);return t.__proto__=p.prototype,t}u.prototype.addToSet=function(e){for(var t,n=!1,r=0;r<e.length;r++){var o=e[r];if(this.eq(o))return e;if(this.type.excludes(o.type))t||(t=e.slice(0,r));else{if(o.type.excludes(this.type))return e;!n&&o.type.rank>this.type.rank&&(t||(t=e.slice(0,r)),t.push(this),n=!0),t&&t.push(o)}}return t||(t=e.slice()),n||t.push(this),t},u.prototype.removeFromSet=function(e){for(var t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e},u.prototype.isInSet=function(e){for(var t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1},u.prototype.eq=function(e){return this==e||this.type==e.type&&l(this.attrs,e.attrs)},u.prototype.toJSON=function(){var e={type:this.type.name};for(var t in this.attrs){e.attrs=this.attrs;break}return e},u.fromJSON=function(e,t){if(!t)throw new RangeError("Invalid input for Mark.fromJSON");var n=e.marks[t.type];if(!n)throw new RangeError("There is no mark type "+t.type+" in this schema");return n.create(t.attrs)},u.sameSet=function(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(var n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0},u.setFrom=function(e){if(!e||0==e.length)return u.none;if(e instanceof u)return[e];var t=e.slice();return t.sort(function(e,t){return e.type.rank-t.type.rank}),t},u.none=[],p.prototype=Object.create(Error.prototype),p.prototype.constructor=p,p.prototype.name="ReplaceError";var h=function(e,t,n){this.content=e,this.openStart=t,this.openEnd=n},d={size:{configurable:!0}};function f(e,t,n){if(n.openStart>e.depth)throw new p("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new p("Inconsistent open depths");return function e(t,n,r,o){var s=t.index(o),a=t.node(o);if(s==n.index(o)&&o<t.depth-r.openStart){var c=e(t,n,r,o+1);return a.copy(a.content.replaceChild(s,c))}if(r.content.size){if(r.openStart||r.openEnd||t.depth!=o||n.depth!=o){var l=function(e,t){for(var n=t.depth-e.openStart,r=t.node(n).copy(e.content),o=n-1;o>=0;o--)r=t.node(o).copy(i.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}(r,t),u=l.start,p=l.end;return b(a,function e(t,n,r,o,s){var a=t.depth>s&&v(t,n,s+1);var c=o.depth>s&&v(r,o,s+1);var l=[];y(null,t,s,l);a&&c&&n.index(s)==r.index(s)?(m(a,c),g(b(a,e(t,n,r,o,s+1)),l)):(a&&g(b(a,w(t,n,s+1)),l),y(n,r,s,l),c&&g(b(c,w(r,o,s+1)),l));y(o,null,s,l);return new i(l)}(t,u,p,n,o))}var h=t.parent,d=h.content;return b(h,d.cut(0,t.parentOffset).append(r.content).append(d.cut(n.parentOffset)))}return b(a,w(t,n,o))}(e,t,n,0)}function m(e,t){if(!t.type.compatibleContent(e.type))throw new p("Cannot join "+t.type.name+" onto "+e.type.name)}function v(e,t,n){var r=e.node(n);return m(r,t.node(n)),r}function g(e,t){var n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function y(e,t,n,r){var o=(t||e).node(n),i=0,s=t?t.index(n):o.childCount;e&&(i=e.index(n),e.depth>n?i++:e.textOffset&&(g(e.nodeAfter,r),i++));for(var a=i;a<s;a++)g(o.child(a),r);t&&t.depth==n&&t.textOffset&&g(t.nodeBefore,r)}function b(e,t){if(!e.type.validContent(t))throw new p("Invalid content for node "+e.type.name);return e.copy(t)}function w(e,t,n){var r=[];(y(null,e,n,r),e.depth>n)&&g(b(v(e,t,n+1),w(e,t,n+1)),r);return y(t,null,n,r),new i(r)}d.size.get=function(){return this.content.size-this.openStart-this.openEnd},h.prototype.insertAt=function(e,t){var n=function e(t,n,r,o){var i=t.findIndex(n);var s=i.index;var a=i.offset;var c=t.maybeChild(s);if(a==n||c.isText)return o&&!o.canReplace(s,s,r)?null:t.cut(0,n).append(r).append(t.cut(n));var l=e(c.content,n-a-1,r);return l&&t.replaceChild(s,c.copy(l))}(this.content,e+this.openStart,t,null);return n&&new h(n,this.openStart,this.openEnd)},h.prototype.removeBetween=function(e,t){return new h(function e(t,n,r){var o=t.findIndex(n);var i=o.index;var s=o.offset;var a=t.maybeChild(i);var c=t.findIndex(r);var l=c.index;var u=c.offset;if(s==n||a.isText){if(u!=r&&!t.child(l).isText)throw new RangeError("Removing non-flat range");return t.cut(0,n).append(t.cut(r))}if(i!=l)throw new RangeError("Removing non-flat range");return t.replaceChild(i,a.copy(e(a.content,n-s-1,r-s-1)))}(this.content,e+this.openStart,t+this.openStart),this.openStart,this.openEnd)},h.prototype.eq=function(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd},h.prototype.toString=function(){return this.content+"("+this.openStart+","+this.openEnd+")"},h.prototype.toJSON=function(){if(!this.content.size)return null;var e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e},h.fromJSON=function(e,t){if(!t)return h.empty;var n=t.openStart||0,r=t.openEnd||0;if("number"!=typeof n||"number"!=typeof r)throw new RangeError("Invalid input for Slice.fromJSON");return new h(i.fromJSON(e,t.content),t.openStart||0,t.openEnd||0)},h.maxOpen=function(e,t){void 0===t&&(t=!0);for(var n=0,r=0,o=e.firstChild;o&&!o.isLeaf&&(t||!o.type.spec.isolating);o=o.firstChild)n++;for(var i=e.lastChild;i&&!i.isLeaf&&(t||!i.type.spec.isolating);i=i.lastChild)r++;return new h(e,n,r)},Object.defineProperties(h.prototype,d),h.empty=new h(i.empty,0,0);var S=function(e,t,n){this.pos=e,this.path=t,this.depth=t.length/3-1,this.parentOffset=n},x={parent:{configurable:!0},doc:{configurable:!0},textOffset:{configurable:!0},nodeAfter:{configurable:!0},nodeBefore:{configurable:!0}};S.prototype.resolveDepth=function(e){return null==e?this.depth:e<0?this.depth+e:e},x.parent.get=function(){return this.node(this.depth)},x.doc.get=function(){return this.node(0)},S.prototype.node=function(e){return this.path[3*this.resolveDepth(e)]},S.prototype.index=function(e){return this.path[3*this.resolveDepth(e)+1]},S.prototype.indexAfter=function(e){return e=this.resolveDepth(e),this.index(e)+(e!=this.depth||this.textOffset?1:0)},S.prototype.start=function(e){return 0==(e=this.resolveDepth(e))?0:this.path[3*e-1]+1},S.prototype.end=function(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size},S.prototype.before=function(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]},S.prototype.after=function(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]+this.path[3*e].nodeSize},x.textOffset.get=function(){return this.pos-this.path[this.path.length-1]},x.nodeAfter.get=function(){var e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;var n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r},x.nodeBefore.get=function(){var e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):0==e?null:this.parent.child(e-1)},S.prototype.marks=function(){var e=this.parent,t=this.index();if(0==e.content.size)return u.none;if(this.textOffset)return e.child(t).marks;var n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){var o=n;n=r,r=o}for(var i=n.marks,s=0;s<i.length;s++)!1!==i[s].type.spec.inclusive||r&&i[s].isInSet(r.marks)||(i=i[s--].removeFromSet(i));return i},S.prototype.marksAcross=function(e){var t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;for(var n=t.marks,r=e.parent.maybeChild(e.index()),o=0;o<n.length;o++)!1!==n[o].type.spec.inclusive||r&&n[o].isInSet(r.marks)||(n=n[o--].removeFromSet(n));return n},S.prototype.sharedDepth=function(e){for(var t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0},S.prototype.blockRange=function(e,t){if(void 0===e&&(e=this),e.pos<this.pos)return e.blockRange(this);for(var n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new M(this,e,n)},S.prototype.sameParent=function(e){return this.pos-this.parentOffset==e.pos-e.parentOffset},S.prototype.max=function(e){return e.pos>this.pos?e:this},S.prototype.min=function(e){return e.pos<this.pos?e:this},S.prototype.toString=function(){for(var e="",t=1;t<=this.depth;t++)e+=(e?"/":"")+this.node(t).type.name+"_"+this.index(t-1);return e+":"+this.parentOffset},S.resolve=function(e,t){if(!(t>=0&&t<=e.content.size))throw new RangeError("Position "+t+" out of range");for(var n=[],r=0,o=t,i=e;;){var s=i.content.findIndex(o),a=s.index,c=s.offset,l=o-c;if(n.push(i,a,r+c),!l)break;if((i=i.child(a)).isText)break;o=l-1,r+=c+1}return new S(t,n,o)},S.resolveCached=function(e,t){for(var n=0;n<k.length;n++){var r=k[n];if(r.pos==t&&r.doc==e)return r}var o=k[C]=S.resolve(e,t);return C=(C+1)%O,o},Object.defineProperties(S.prototype,x);var k=[],C=0,O=12,M=function(e,t,n){this.$from=e,this.$to=t,this.depth=n},N={start:{configurable:!0},end:{configurable:!0},parent:{configurable:!0},startIndex:{configurable:!0},endIndex:{configurable:!0}};N.start.get=function(){return this.$from.before(this.depth+1)},N.end.get=function(){return this.$to.after(this.depth+1)},N.parent.get=function(){return this.$from.node(this.depth)},N.startIndex.get=function(){return this.$from.index(this.depth)},N.endIndex.get=function(){return this.$to.indexAfter(this.depth)},Object.defineProperties(M.prototype,N);var T=Object.create(null),D=function(e,t,n,r){this.type=e,this.attrs=t,this.content=n||i.empty,this.marks=r||u.none},A={nodeSize:{configurable:!0},childCount:{configurable:!0},textContent:{configurable:!0},firstChild:{configurable:!0},lastChild:{configurable:!0},isBlock:{configurable:!0},isTextblock:{configurable:!0},inlineContent:{configurable:!0},isInline:{configurable:!0},isText:{configurable:!0},isLeaf:{configurable:!0},isAtom:{configurable:!0}};A.nodeSize.get=function(){return this.isLeaf?1:2+this.content.size},A.childCount.get=function(){return this.content.childCount},D.prototype.child=function(e){return this.content.child(e)},D.prototype.maybeChild=function(e){return this.content.maybeChild(e)},D.prototype.forEach=function(e){this.content.forEach(e)},D.prototype.nodesBetween=function(e,t,n,r){void 0===r&&(r=0),this.content.nodesBetween(e,t,n,r,this)},D.prototype.descendants=function(e){this.nodesBetween(0,this.content.size,e)},A.textContent.get=function(){return this.textBetween(0,this.content.size,"")},D.prototype.textBetween=function(e,t,n,r){return this.content.textBetween(e,t,n,r)},A.firstChild.get=function(){return this.content.firstChild},A.lastChild.get=function(){return this.content.lastChild},D.prototype.eq=function(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)},D.prototype.sameMarkup=function(e){return this.hasMarkup(e.type,e.attrs,e.marks)},D.prototype.hasMarkup=function(e,t,n){return this.type==e&&l(this.attrs,t||e.defaultAttrs||T)&&u.sameSet(this.marks,n||u.none)},D.prototype.copy=function(e){return void 0===e&&(e=null),e==this.content?this:new this.constructor(this.type,this.attrs,e,this.marks)},D.prototype.mark=function(e){return e==this.marks?this:new this.constructor(this.type,this.attrs,this.content,e)},D.prototype.cut=function(e,t){return 0==e&&t==this.content.size?this:this.copy(this.content.cut(e,t))},D.prototype.slice=function(e,t,n){if(void 0===t&&(t=this.content.size),void 0===n&&(n=!1),e==t)return h.empty;var r=this.resolve(e),o=this.resolve(t),i=n?0:r.sharedDepth(t),s=r.start(i),a=r.node(i).content.cut(r.pos-s,o.pos-s);return new h(a,r.depth-i,o.depth-i)},D.prototype.replace=function(e,t,n){return f(this.resolve(e),this.resolve(t),n)},D.prototype.nodeAt=function(e){for(var t=this;;){var n=t.content.findIndex(e),r=n.index,o=n.offset;if(!(t=t.maybeChild(r)))return null;if(o==e||t.isText)return t;e-=o+1}},D.prototype.childAfter=function(e){var t=this.content.findIndex(e),n=t.index,r=t.offset;return{node:this.content.maybeChild(n),index:n,offset:r}},D.prototype.childBefore=function(e){if(0==e)return{node:null,index:0,offset:0};var t=this.content.findIndex(e),n=t.index,r=t.offset;if(r<e)return{node:this.content.child(n),index:n,offset:r};var o=this.content.child(n-1);return{node:o,index:n-1,offset:r-o.nodeSize}},D.prototype.resolve=function(e){return S.resolveCached(this,e)},D.prototype.resolveNoCache=function(e){return S.resolve(this,e)},D.prototype.rangeHasMark=function(e,t,n){var r=!1;return t>e&&this.nodesBetween(e,t,function(e){return n.isInSet(e.marks)&&(r=!0),!r}),r},A.isBlock.get=function(){return this.type.isBlock},A.isTextblock.get=function(){return this.type.isTextblock},A.inlineContent.get=function(){return this.type.inlineContent},A.isInline.get=function(){return this.type.isInline},A.isText.get=function(){return this.type.isText},A.isLeaf.get=function(){return this.type.isLeaf},A.isAtom.get=function(){return this.type.isAtom},D.prototype.toString=function(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);var e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),R(this.marks,e)},D.prototype.contentMatchAt=function(e){var t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw new Error("Called contentMatchAt on a node with invalid content");return t},D.prototype.canReplace=function(e,t,n,r,o){void 0===n&&(n=i.empty),void 0===r&&(r=0),void 0===o&&(o=n.childCount);var s=this.contentMatchAt(e).matchFragment(n,r,o),a=s&&s.matchFragment(this.content,t);if(!a||!a.validEnd)return!1;for(var c=r;c<o;c++)if(!this.type.allowsMarks(n.child(c).marks))return!1;return!0},D.prototype.canReplaceWith=function(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;var o=this.contentMatchAt(e).matchType(n),i=o&&o.matchFragment(this.content,t);return!!i&&i.validEnd},D.prototype.canAppend=function(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)},D.prototype.check=function(){if(!this.type.validContent(this.content))throw new RangeError("Invalid content for node "+this.type.name+": "+this.content.toString().slice(0,50));this.content.forEach(function(e){return e.check()})},D.prototype.toJSON=function(){var e={type:this.type.name};for(var t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(function(e){return e.toJSON()})),e},D.fromJSON=function(e,t){if(!t)throw new RangeError("Invalid input for Node.fromJSON");var n=null;if(t.marks){if(!Array.isArray(t.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=t.marks.map(e.markFromJSON)}if("text"==t.type){if("string"!=typeof t.text)throw new RangeError("Invalid text node in JSON");return e.text(t.text,n)}var r=i.fromJSON(e,t.content);return e.nodeType(t.type).create(t.attrs,r,n)},Object.defineProperties(D.prototype,A);var E=function(e){function t(t,n,r,o){if(e.call(this,t,n,null,o),!r)throw new RangeError("Empty text nodes are not allowed");this.text=r}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={textContent:{configurable:!0},nodeSize:{configurable:!0}};return t.prototype.toString=function(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):R(this.marks,JSON.stringify(this.text))},n.textContent.get=function(){return this.text},t.prototype.textBetween=function(e,t){return this.text.slice(e,t)},n.nodeSize.get=function(){return this.text.length},t.prototype.mark=function(e){return e==this.marks?this:new t(this.type,this.attrs,this.text,e)},t.prototype.withText=function(e){return e==this.text?this:new t(this.type,this.attrs,e,this.marks)},t.prototype.cut=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=this.text.length),0==e&&t==this.text.length?this:this.withText(this.text.slice(e,t))},t.prototype.eq=function(e){return this.sameMarkup(e)&&this.text==e.text},t.prototype.toJSON=function(){var t=e.prototype.toJSON.call(this);return t.text=this.text,t},Object.defineProperties(t.prototype,n),t}(D);function R(e,t){for(var n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}var _=function(e){this.validEnd=e,this.next=[],this.wrapCache=[]},P={inlineContent:{configurable:!0},defaultType:{configurable:!0},edgeCount:{configurable:!0}};_.parse=function(e,t){var n=new $(e,t);if(null==n.next)return _.empty;var r=z(n);n.next&&n.err("Unexpected trailing text");var o=function(e){var t=Object.create(null);return function n(r){var o=[];r.forEach(function(t){e[t].forEach(function(t){var n=t.term,r=t.to;if(n){var i=o.indexOf(n),s=i>-1&&o[i+1];q(e,r).forEach(function(e){s||o.push(n,s=[]),-1==s.indexOf(e)&&s.push(e)})}})});var i=t[r.join(",")]=new _(r.indexOf(e.length-1)>-1);for(var s=0;s<o.length;s+=2){var a=o[s+1].sort(L);i.next.push(o[s],t[a.join(",")]||n(a))}return i}(q(e,0))}(function(e){var t=[[]];return o(function e(t,i){if("choice"==t.type)return t.exprs.reduce(function(t,n){return t.concat(e(n,i))},[]);if("seq"==t.type)for(var s=0;;s++){var a=e(t.exprs[s],i);if(s==t.exprs.length-1)return a;o(a,i=n())}else{if("star"==t.type){var c=n();return r(i,c),o(e(t.expr,c),c),[r(c)]}if("plus"==t.type){var l=n();return o(e(t.expr,i),l),o(e(t.expr,l),l),[r(l)]}if("opt"==t.type)return[r(i)].concat(e(t.expr,i));if("range"==t.type){for(var u=i,p=0;p<t.min;p++){var h=n();o(e(t.expr,u),h),u=h}if(-1==t.max)o(e(t.expr,u),u);else for(var d=t.min;d<t.max;d++){var f=n();r(u,f),o(e(t.expr,u),f),u=f}return[r(u)]}if("name"==t.type)return[r(i,null,t.value)]}}(e,0),n()),t;function n(){return t.push([])-1}function r(e,n,r){var o={term:r,to:n};return t[e].push(o),o}function o(e,t){e.forEach(function(e){return e.to=t})}}(r));return function(e,t){for(var n=0,r=[e];n<r.length;n++){for(var o=r[n],i=!o.validEnd,s=[],a=0;a<o.next.length;a+=2){var c=o.next[a],l=o.next[a+1];s.push(c.name),!i||c.isText||c.hasRequiredAttrs()||(i=!1),-1==r.indexOf(l)&&r.push(l)}i&&t.err("Only non-generatable nodes ("+s.join(", ")+") in a required position")}}(o,n),o},_.prototype.matchType=function(e){for(var t=0;t<this.next.length;t+=2)if(this.next[t]==e)return this.next[t+1];return null},_.prototype.matchFragment=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.childCount);for(var r=this,o=t;r&&o<n;o++)r=r.matchType(e.child(o).type);return r},P.inlineContent.get=function(){var e=this.next[0];return!!e&&e.isInline},P.defaultType.get=function(){for(var e=0;e<this.next.length;e+=2){var t=this.next[e];if(!t.isText&&!t.hasRequiredAttrs())return t}},_.prototype.compatible=function(e){for(var t=0;t<this.next.length;t+=2)for(var n=0;n<e.next.length;n+=2)if(this.next[t]==e.next[n])return!0;return!1},_.prototype.fillBefore=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=0);var r=[this];return function o(s,a){var c=s.matchFragment(e,n);if(c&&(!t||c.validEnd))return i.from(a.map(function(e){return e.createAndFill()}));for(var l=0;l<s.next.length;l+=2){var u=s.next[l],p=s.next[l+1];if(!u.isText&&!u.hasRequiredAttrs()&&-1==r.indexOf(p)){r.push(p);var h=o(p,a.concat(u));if(h)return h}}}(this,[])},_.prototype.findWrapping=function(e){for(var t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];var n=this.computeWrapping(e);return this.wrapCache.push(e,n),n},_.prototype.computeWrapping=function(e){for(var t=Object.create(null),n=[{match:this,type:null,via:null}];n.length;){var r=n.shift(),o=r.match;if(o.matchType(e)){for(var i=[],s=r;s.type;s=s.via)i.push(s.type);return i.reverse()}for(var a=0;a<o.next.length;a+=2){var c=o.next[a];c.isLeaf||c.hasRequiredAttrs()||c.name in t||r.type&&!o.next[a+1].validEnd||(n.push({match:c.contentMatch,type:c,via:r}),t[c.name]=!0)}}},P.edgeCount.get=function(){return this.next.length>>1},_.prototype.edge=function(e){var t=e<<1;if(t>=this.next.length)throw new RangeError("There's no "+e+"th edge in this content match");return{type:this.next[t],next:this.next[t+1]}},_.prototype.toString=function(){var e=[];return function t(n){e.push(n);for(var r=1;r<n.next.length;r+=2)-1==e.indexOf(n.next[r])&&t(n.next[r])}(this),e.map(function(t,n){for(var r=n+(t.validEnd?"*":" ")+" ",o=0;o<t.next.length;o+=2)r+=(o?", ":"")+t.next[o].name+"->"+e.indexOf(t.next[o+1]);return r}).join("\n")},Object.defineProperties(_.prototype,P),_.empty=new _(!0);var $=function(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.unshift()},I={next:{configurable:!0}};function z(e){var t=[];do{t.push(B(e))}while(e.eat("|"));return 1==t.length?t[0]:{type:"choice",exprs:t}}function B(e){var t=[];do{t.push(F(e))}while(e.next&&")"!=e.next&&"|"!=e.next);return 1==t.length?t[0]:{type:"seq",exprs:t}}function F(e){for(var t=function(e){if(e.eat("(")){var t=z(e);return e.eat(")")||e.err("Missing closing paren"),t}if(!/\W/.test(e.next)){var n=function(e,t){var n=e.nodeTypes,r=n[t];if(r)return[r];var o=[];for(var i in n){var s=n[i];s.groups.indexOf(t)>-1&&o.push(s)}0==o.length&&e.err("No node type or group '"+t+"' found");return o}(e,e.next).map(function(t){return null==e.inline?e.inline=t.isInline:e.inline!=t.isInline&&e.err("Mixing inline and block content"),{type:"name",value:t}});return e.pos++,1==n.length?n[0]:{type:"choice",exprs:n}}e.err("Unexpected token '"+e.next+"'")}(e);;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else{if(!e.eat("{"))break;t=j(e,t)}return t}function V(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");var t=Number(e.next);return e.pos++,t}function j(e,t){var n=V(e),r=n;return e.eat(",")&&(r="}"!=e.next?V(e):-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:t}}function L(e,t){return t-e}function q(e,t){var n=[];return function t(r){var o=e[r];if(1==o.length&&!o[0].term)return t(o[0].to);n.push(r);for(var i=0;i<o.length;i++){var s=o[i],a=s.term,c=s.to;a||-1!=n.indexOf(c)||t(c)}}(t),n.sort(L)}function W(e){var t=Object.create(null);for(var n in e){var r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function K(e,t){var n=Object.create(null);for(var r in e){var o=t&&t[r];if(void 0===o){var i=e[r];if(!i.hasDefault)throw new RangeError("No value supplied for attribute "+r);o=i.default}n[r]=o}return n}function J(e){var t=Object.create(null);if(e)for(var n in e)t[n]=new G(e[n]);return t}I.next.get=function(){return this.tokens[this.pos]},$.prototype.eat=function(e){return this.next==e&&(this.pos++||!0)},$.prototype.err=function(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")},Object.defineProperties($.prototype,I);var H=function(e,t,n){this.name=e,this.schema=t,this.spec=n,this.groups=n.group?n.group.split(" "):[],this.attrs=J(n.attrs),this.defaultAttrs=W(this.attrs),this.contentMatch=null,this.markSet=null,this.inlineContent=null,this.isBlock=!(n.inline||"text"==e),this.isText="text"==e},U={isInline:{configurable:!0},isTextblock:{configurable:!0},isLeaf:{configurable:!0},isAtom:{configurable:!0}};U.isInline.get=function(){return!this.isBlock},U.isTextblock.get=function(){return this.isBlock&&this.inlineContent},U.isLeaf.get=function(){return this.contentMatch==_.empty},U.isAtom.get=function(){return this.isLeaf||this.spec.atom},H.prototype.hasRequiredAttrs=function(){for(var e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1},H.prototype.compatibleContent=function(e){return this==e||this.contentMatch.compatible(e.contentMatch)},H.prototype.computeAttrs=function(e){return!e&&this.defaultAttrs?this.defaultAttrs:K(this.attrs,e)},H.prototype.create=function(e,t,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new D(this,this.computeAttrs(e),i.from(t),u.setFrom(n))},H.prototype.createChecked=function(e,t,n){if(t=i.from(t),!this.validContent(t))throw new RangeError("Invalid content for node "+this.name);return new D(this,this.computeAttrs(e),t,u.setFrom(n))},H.prototype.createAndFill=function(e,t,n){if(e=this.computeAttrs(e),(t=i.from(t)).size){var r=this.contentMatch.fillBefore(t);if(!r)return null;t=r.append(t)}var o=this.contentMatch.matchFragment(t).fillBefore(i.empty,!0);return o?new D(this,e,t.append(o),u.setFrom(n)):null},H.prototype.validContent=function(e){var t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(var n=0;n<e.childCount;n++)if(!this.allowsMarks(e.child(n).marks))return!1;return!0},H.prototype.allowsMarkType=function(e){return null==this.markSet||this.markSet.indexOf(e)>-1},H.prototype.allowsMarks=function(e){if(null==this.markSet)return!0;for(var t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0},H.prototype.allowedMarks=function(e){if(null==this.markSet)return e;for(var t,n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||(t=e.slice(0,n));return t?t.length?t:u.empty:e},H.compile=function(e,t){var n=Object.create(null);e.forEach(function(e,r){return n[e]=new H(e,t,r)});var r=t.spec.topNode||"doc";if(!n[r])throw new RangeError("Schema is missing its top node type ('"+r+"')");if(!n.text)throw new RangeError("Every schema needs a 'text' type");for(var o in n.text.attrs)throw new RangeError("The text node type should not have attributes");return n},Object.defineProperties(H.prototype,U);var G=function(e){this.hasDefault=Object.prototype.hasOwnProperty.call(e,"default"),this.default=e.default},X={isRequired:{configurable:!0}};X.isRequired.get=function(){return!this.hasDefault},Object.defineProperties(G.prototype,X);var Z=function(e,t,n,r){this.name=e,this.schema=n,this.spec=r,this.attrs=J(r.attrs),this.rank=t,this.excluded=null;var o=W(this.attrs);this.instance=o&&new u(this,o)};Z.prototype.create=function(e){return!e&&this.instance?this.instance:new u(this,K(this.attrs,e))},Z.compile=function(e,t){var n=Object.create(null),r=0;return e.forEach(function(e,o){return n[e]=new Z(e,r++,t,o)}),n},Z.prototype.removeFromSet=function(e){for(var t=0;t<e.length;t++)if(e[t].type==this)return e.slice(0,t).concat(e.slice(t+1));return e},Z.prototype.isInSet=function(e){for(var t=0;t<e.length;t++)if(e[t].type==this)return e[t]},Z.prototype.excludes=function(e){return this.excluded.indexOf(e)>-1};var Y=function(e){for(var t in this.spec={},e)this.spec[t]=e[t];this.spec.nodes=o.from(e.nodes),this.spec.marks=o.from(e.marks),this.nodes=H.compile(this.spec.nodes,this),this.marks=Z.compile(this.spec.marks,this);var n=Object.create(null);for(var r in this.nodes){if(r in this.marks)throw new RangeError(r+" can not be both a node and a mark");var i=this.nodes[r],s=i.spec.content||"",a=i.spec.marks;i.contentMatch=n[s]||(n[s]=_.parse(s,this.nodes)),i.inlineContent=i.contentMatch.inlineContent,i.markSet="_"==a?null:a?Q(this,a.split(" ")):""!=a&&i.inlineContent?null:[]}for(var c in this.marks){var l=this.marks[c],u=l.spec.excludes;l.excluded=null==u?[l]:""==u?[]:Q(this,u.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached=Object.create(null),this.cached.wrappings=Object.create(null)};function Q(e,t){for(var n=[],r=0;r<t.length;r++){var o=t[r],i=e.marks[o],s=i;if(i)n.push(i);else for(var a in e.marks){var c=e.marks[a];("_"==o||c.spec.group&&c.spec.group.split(" ").indexOf(o)>-1)&&n.push(s=c)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[r]+"'")}return n}Y.prototype.node=function(e,t,n,r){if("string"==typeof e)e=this.nodeType(e);else{if(!(e instanceof H))throw new RangeError("Invalid node type: "+e);if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}return e.createChecked(t,n,r)},Y.prototype.text=function(e,t){var n=this.nodes.text;return new E(n,n.defaultAttrs,e,u.setFrom(t))},Y.prototype.mark=function(e,t){return"string"==typeof e&&(e=this.marks[e]),e.create(t)},Y.prototype.nodeFromJSON=function(e){return D.fromJSON(this,e)},Y.prototype.markFromJSON=function(e){return u.fromJSON(this,e)},Y.prototype.nodeType=function(e){var t=this.nodes[e];if(!t)throw new RangeError("Unknown node type: "+e);return t};var ee=function(e,t){var n=this;this.schema=e,this.rules=t,this.tags=[],this.styles=[],t.forEach(function(e){e.tag?n.tags.push(e):e.style&&n.styles.push(e)})};ee.prototype.parse=function(e,t){void 0===t&&(t={});var n=new ce(this,t,!1);return n.addAll(e,null,t.from,t.to),n.finish()},ee.prototype.parseSlice=function(e,t){void 0===t&&(t={});var n=new ce(this,t,!0);return n.addAll(e,null,t.from,t.to),h.maxOpen(n.finish())},ee.prototype.matchTag=function(e,t){for(var n=0;n<this.tags.length;n++){var r=this.tags[n];if(ue(e,r.tag)&&(void 0===r.namespace||e.namespaceURI==r.namespace)&&(!r.context||t.matchesContext(r.context))){if(r.getAttrs){var o=r.getAttrs(e);if(!1===o)continue;r.attrs=o}return r}}},ee.prototype.matchStyle=function(e,t,n){for(var r=0;r<this.styles.length;r++){var o=this.styles[r];if(!(0!=o.style.indexOf(e)||o.context&&!n.matchesContext(o.context)||o.style.length>e.length&&(61!=o.style.charCodeAt(e.length)||o.style.slice(e.length+1)!=t))){if(o.getAttrs){var i=o.getAttrs(t);if(!1===i)continue;o.attrs=i}return o}}},ee.schemaRules=function(e){var t=[];function n(e){for(var n=null==e.priority?50:e.priority,r=0;r<t.length;r++){var o=t[r];if((null==o.priority?50:o.priority)<n)break}t.splice(r,0,e)}var r=function(t){var r=e.marks[t].spec.parseDOM;r&&r.forEach(function(e){n(e=pe(e)),e.mark=t})};for(var o in e.marks)r(o);var i=function(t){var r=e.nodes[s].spec.parseDOM;r&&r.forEach(function(e){n(e=pe(e)),e.node=s})};for(var s in e.nodes)i();return t},ee.fromSchema=function(e){return e.cached.domParser||(e.cached.domParser=new ee(e,ee.schemaRules(e)))};var te={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},ne={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},re={ol:!0,ul:!0},oe=1,ie=2;function se(e){return(e?oe:0)|("full"===e?ie:0)}var ae=function(e,t,n,r,o,i,s){this.type=e,this.attrs=t,this.solid=o,this.match=i||(4&s?null:e.contentMatch),this.options=s,this.content=[],this.marks=n,this.activeMarks=u.none,this.pendingMarks=r};ae.prototype.findWrapping=function(e){if(!this.match){if(!this.type)return[];var t=this.type.contentMatch.fillBefore(i.from(e));if(!t){var n,r=this.type.contentMatch;return(n=r.findWrapping(e.type))?(this.match=r,n):null}this.match=this.type.contentMatch.matchFragment(t)}return this.match.findWrapping(e.type)},ae.prototype.finish=function(e){if(!(this.options&oe)){var t,n=this.content[this.content.length-1];n&&n.isText&&(t=/[ \t\r\n\u000c]+$/.exec(n.text))&&(n.text.length==t[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-t[0].length)))}var r=i.from(this.content);return!e&&this.match&&(r=r.append(this.match.fillBefore(i.empty,!0))),this.type?this.type.create(this.attrs,r,this.marks):r},ae.prototype.applyPending=function(e){for(var t=0,n=this.pendingMarks;t<n.length;t++){var r=n[t];(this.type?this.type.allowsMarkType(r.type):he(r.type,e))&&!r.isInSet(this.activeMarks)&&(this.activeMarks=r.addToSet(this.activeMarks),this.pendingMarks=r.removeFromSet(this.pendingMarks))}};var ce=function(e,t,n){this.parser=e,this.options=t,this.isOpen=n;var r,o=t.topNode,i=se(t.preserveWhitespace)|(n?4:0);r=o?new ae(o.type,o.attrs,u.none,u.none,!0,t.topMatch||o.type.contentMatch,i):new ae(n?null:e.schema.topNodeType,null,u.none,u.none,!0,null,i),this.nodes=[r],this.open=0,this.find=t.findPositions,this.needsBlock=!1},le={top:{configurable:!0},currentPos:{configurable:!0}};function ue(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function pe(e){var t={};for(var n in e)t[n]=e[n];return t}function he(e,t){var n=t.schema.nodes,r=function(r){var o=n[r];if(o.allowsMarkType(e)){var i=[],s=function(e){i.push(e);for(var n=0;n<e.edgeCount;n++){var r=e.edge(n),o=r.type,a=r.next;if(o==t)return!0;if(i.indexOf(a)<0&&s(a))return!0}};return s(o.contentMatch)?{v:!0}:void 0}};for(var o in n){var i=r(o);if(i)return i.v}}le.top.get=function(){return this.nodes[this.open]},ce.prototype.addDOM=function(e){if(3==e.nodeType)this.addTextNode(e);else if(1==e.nodeType){var t=e.getAttribute("style"),n=t?this.readStyles(function(e){var t,n=/\s*([\w-]+)\s*:\s*([^;]+)/g,r=[];for(;t=n.exec(e);)r.push(t[1],t[2].trim());return r}(t)):null,r=this.top;if(null!=n)for(var o=0;o<n.length;o++)this.addPendingMark(n[o]);if(this.addElement(e),null!=n)for(var i=0;i<n.length;i++)this.removePendingMark(n[i],r)}},ce.prototype.addTextNode=function(e){var t=e.nodeValue,n=this.top;if((n.type?n.type.inlineContent:n.content.length&&n.content[0].isInline)||/[^ \t\r\n\u000c]/.test(t)){if(n.options&oe)n.options&ie||(t=t.replace(/\r?\n|\r/g," "));else if(t=t.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(t)&&this.open==this.nodes.length-1){var r=n.content[n.content.length-1],o=e.previousSibling;(!r||o&&"BR"==o.nodeName||r.isText&&/[ \t\r\n\u000c]$/.test(r.text))&&(t=t.slice(1))}t&&this.insertNode(this.parser.schema.text(t)),this.findInText(e)}else this.findInside(e)},ce.prototype.addElement=function(e){var t=e.nodeName.toLowerCase();re.hasOwnProperty(t)&&function(e){for(var t=e.firstChild,n=null;t;t=t.nextSibling){var r=1==t.nodeType?t.nodeName.toLowerCase():null;r&&re.hasOwnProperty(r)&&n?(n.appendChild(t),t=n):"li"==r?n=t:r&&(n=null)}}(e);var n=this.options.ruleFromNode&&this.options.ruleFromNode(e)||this.parser.matchTag(e,this);if(n?n.ignore:ne.hasOwnProperty(t))this.findInside(e);else if(!n||n.skip){n&&n.skip.nodeType&&(e=n.skip);var r,o=this.top,i=this.needsBlock;if(te.hasOwnProperty(t))r=!0,o.type||(this.needsBlock=!0);else if(!e.firstChild)return void this.leafFallback(e);this.addAll(e),r&&this.sync(o),this.needsBlock=i}else this.addElementByRule(e,n)},ce.prototype.leafFallback=function(e){"BR"==e.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode("\n"))},ce.prototype.readStyles=function(e){for(var t=u.none,n=0;n<e.length;n+=2){var r=this.parser.matchStyle(e[n],e[n+1],this);if(r){if(r.ignore)return null;t=this.parser.schema.marks[r.mark].create(r.attrs).addToSet(t)}}return t},ce.prototype.addElementByRule=function(e,t){var n,r,o,i=this;t.node?(r=this.parser.schema.nodes[t.node]).isLeaf?this.insertNode(r.create(t.attrs))||this.leafFallback(e):n=this.enter(r,t.attrs,t.preserveWhitespace):(o=this.parser.schema.marks[t.mark].create(t.attrs),this.addPendingMark(o));var s=this.top;if(r&&r.isLeaf)this.findInside(e);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach(function(e){return i.insertNode(e)});else{var a=t.contentElement;"string"==typeof a?a=e.querySelector(a):"function"==typeof a&&(a=a(e)),a||(a=e),this.findAround(e,a,!0),this.addAll(a,n)}n&&(this.sync(s),this.open--),o&&this.removePendingMark(o,s)},ce.prototype.addAll=function(e,t,n,r){for(var o=n||0,i=n?e.childNodes[n]:e.firstChild,s=null==r?null:e.childNodes[r];i!=s;i=i.nextSibling,++o)this.findAtPoint(e,o),this.addDOM(i),t&&te.hasOwnProperty(i.nodeName.toLowerCase())&&this.sync(t);this.findAtPoint(e,o)},ce.prototype.findPlace=function(e){for(var t,n,r=this.open;r>=0;r--){var o=this.nodes[r],i=o.findWrapping(e);if(i&&(!t||t.length>i.length)&&(t=i,n=o,!i.length))break;if(o.solid)break}if(!t)return!1;this.sync(n);for(var s=0;s<t.length;s++)this.enterInner(t[s],null,!1);return!0},ce.prototype.insertNode=function(e){if(e.isInline&&this.needsBlock&&!this.top.type){var t=this.textblockFromContext();t&&this.enterInner(t)}if(this.findPlace(e)){this.closeExtra();var n=this.top;n.applyPending(e.type),n.match&&(n.match=n.match.matchType(e.type));for(var r=n.activeMarks,o=0;o<e.marks.length;o++)n.type&&!n.type.allowsMarkType(e.marks[o].type)||(r=e.marks[o].addToSet(r));return n.content.push(e.mark(r)),!0}return!1},ce.prototype.enter=function(e,t,n){var r=this.findPlace(e.create(t));return r&&this.enterInner(e,t,!0,n),r},ce.prototype.enterInner=function(e,t,n,r){this.closeExtra();var o=this.top;o.applyPending(e),o.match=o.match&&o.match.matchType(e,t);var i=null==r?-5&o.options:se(r);4&o.options&&0==o.content.length&&(i|=4),this.nodes.push(new ae(e,t,o.activeMarks,o.pendingMarks,n,null,i)),this.open++},ce.prototype.closeExtra=function(e){var t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}},ce.prototype.finish=function(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)},ce.prototype.sync=function(e){for(var t=this.open;t>=0;t--)if(this.nodes[t]==e)return void(this.open=t)},le.currentPos.get=function(){this.closeExtra();for(var e=0,t=this.open;t>=0;t--){for(var n=this.nodes[t].content,r=n.length-1;r>=0;r--)e+=n[r].nodeSize;t&&e++}return e},ce.prototype.findAtPoint=function(e,t){if(this.find)for(var n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)},ce.prototype.findInside=function(e){if(this.find)for(var t=0;t<this.find.length;t++)null==this.find[t].pos&&1==e.nodeType&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)},ce.prototype.findAround=function(e,t,n){if(e!=t&&this.find)for(var r=0;r<this.find.length;r++){if(null==this.find[r].pos&&1==e.nodeType&&e.contains(this.find[r].node))t.compareDocumentPosition(this.find[r].node)&(n?2:4)&&(this.find[r].pos=this.currentPos)}},ce.prototype.findInText=function(e){if(this.find)for(var t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))},ce.prototype.matchesContext=function(e){var t=this;if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);var n=e.split("/"),r=this.options.context,o=!(this.isOpen||r&&r.parent.type!=this.nodes[0].type),i=-(r?r.depth+1:0)+(o?0:1),s=function(e,a){for(;e>=0;e--){var c=n[e];if(""==c){if(e==n.length-1||0==e)continue;for(;a>=i;a--)if(s(e-1,a))return!0;return!1}var l=a>0||0==a&&o?t.nodes[a].type:r&&a>=i?r.node(a-i).type:null;if(!l||l.name!=c&&-1==l.groups.indexOf(c))return!1;a--}return!0};return s(n.length-1,this.open)},ce.prototype.textblockFromContext=function(){var e=this.options.context;if(e)for(var t=e.depth;t>=0;t--){var n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(var r in this.parser.schema.nodes){var o=this.parser.schema.nodes[r];if(o.isTextblock&&o.defaultAttrs)return o}},ce.prototype.addPendingMark=function(e){this.top.pendingMarks=e.addToSet(this.top.pendingMarks)},ce.prototype.removePendingMark=function(e,t){for(var n=this.open;n>=0;n--){var r=this.nodes[n];if(r.pendingMarks.lastIndexOf(e)>-1?r.pendingMarks=e.removeFromSet(r.pendingMarks):r.activeMarks=e.removeFromSet(r.activeMarks),r==t)break}},Object.defineProperties(ce.prototype,le);var de=function(e,t){this.nodes=e||{},this.marks=t||{}};function fe(e){var t={};for(var n in e){var r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function me(e){return e.document||window.document}de.prototype.serializeFragment=function(e,t,n){var r=this;void 0===t&&(t={}),n||(n=me(t).createDocumentFragment());var o=n,i=null;return e.forEach(function(e){if(i||e.marks.length){i||(i=[]);for(var n=0,s=0;n<i.length&&s<e.marks.length;){var a=e.marks[s];if(r.marks[a.type.name]){if(!a.eq(i[n])||!1===a.type.spec.spanning)break;n+=2,s++}else s++}for(;n<i.length;)o=i.pop(),i.pop();for(;s<e.marks.length;){var c=e.marks[s++],l=r.serializeMark(c,e.isInline,t);l&&(i.push(c,o),o.appendChild(l.dom),o=l.contentDOM||l.dom)}}o.appendChild(r.serializeNode(e,t))}),n},de.prototype.serializeNode=function(e,t){void 0===t&&(t={});var n=de.renderSpec(me(t),this.nodes[e.type.name](e)),r=n.dom,o=n.contentDOM;if(o){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");t.onContent?t.onContent(e,o,t):this.serializeFragment(e.content,t,o)}return r},de.prototype.serializeNodeAndMarks=function(e,t){void 0===t&&(t={});for(var n=this.serializeNode(e,t),r=e.marks.length-1;r>=0;r--){var o=this.serializeMark(e.marks[r],e.isInline,t);o&&((o.contentDOM||o.dom).appendChild(n),n=o.dom)}return n},de.prototype.serializeMark=function(e,t,n){void 0===n&&(n={});var r=this.marks[e.type.name];return r&&de.renderSpec(me(n),r(e,t))},de.renderSpec=function(e,t,n){if(void 0===n&&(n=null),"string"==typeof t)return{dom:e.createTextNode(t)};if(null!=t.nodeType)return{dom:t};var r=t[0],o=r.indexOf(" ");o>0&&(n=r.slice(0,o),r=r.slice(o+1));var i=null,s=n?e.createElementNS(n,r):e.createElement(r),a=t[1],c=1;if(a&&"object"==typeof a&&null==a.nodeType&&!Array.isArray(a))for(var l in c=2,a)if(null!=a[l]){var u=l.indexOf(" ");u>0?s.setAttributeNS(l.slice(0,u),l.slice(u+1),a[l]):s.setAttribute(l,a[l])}for(var p=c;p<t.length;p++){var h=t[p];if(0===h){if(p<t.length-1||p>c)throw new RangeError("Content hole must be the only child of its parent node");return{dom:s,contentDOM:s}}var d=de.renderSpec(e,h,n),f=d.dom,m=d.contentDOM;if(s.appendChild(f),m){if(i)throw new RangeError("Multiple content holes");i=m}}return{dom:s,contentDOM:i}},de.fromSchema=function(e){return e.cached.domSerializer||(e.cached.domSerializer=new de(this.nodesFromSchema(e),this.marksFromSchema(e)))},de.nodesFromSchema=function(e){var t=fe(e.nodes);return t.text||(t.text=function(e){return e.text}),t},de.marksFromSchema=function(e){return fe(e.marks)}},POQ2:function(e,t,n){"use strict";var r=n("4r5K"),o=n("Bz7v");t.highlight=s,t.highlightAuto=function(e,t){var n,a,c,l,u=t||{},p=u.subset||r.listLanguages(),h=u.prefix,d=p.length,f=-1;null!==h&&void 0!==h||(h=i);if("string"!=typeof e)throw o("Expected `string` for value, got `%s`",e);a={relevance:0,language:null,value:[]},n={relevance:0,language:null,value:[]};for(;++f<d;)l=p[f],r.getLanguage(l)&&((c=s(l,e,t)).language=l,c.relevance>a.relevance&&(a=c),c.relevance>n.relevance&&(a=n,n=c));a.language&&(n.secondBest=a);return n},t.registerLanguage=function(e,t){r.registerLanguage(e,t)},t.listLanguages=function(){return r.listLanguages()},t.registerAlias=function(e,t){var n,o=e;t&&((o={})[e]=t);for(n in o)r.registerAliases(o[n],{languageName:n})},a.prototype.addText=function(e){var t,n,r=this.stack;if(""===e)return;t=r[r.length-1],(n=t.children[t.children.length-1])&&"text"===n.type?n.value+=e:t.children.push({type:"text",value:e})},a.prototype.addKeyword=function(e,t){this.openNode(t),this.addText(e),this.closeNode()},a.prototype.addSublanguage=function(e,t){var n=this.stack,r=n[n.length-1],o=e.rootNode.children,i=t?{type:"element",tagName:"span",properties:{className:[t]},children:o}:o;r.children=r.children.concat(i)},a.prototype.openNode=function(e){var t=this.stack,n=this.options.classPrefix+e,r=t[t.length-1],o={type:"element",tagName:"span",properties:{className:[n]},children:[]};r.children.push(o),t.push(o)},a.prototype.closeNode=function(){this.stack.pop()},a.prototype.closeAllNodes=c,a.prototype.finalize=c,a.prototype.toHTML=function(){return""};var i="hljs-";function s(e,t,n){var s,c=r.configure({}),l=(n||{}).prefix;if("string"!=typeof e)throw o("Expected `string` for name, got `%s`",e);if(!r.getLanguage(e))throw o("Unknown language: `%s` is not registered",e);if("string"!=typeof t)throw o("Expected `string` for value, got `%s`",t);if(null!==l&&void 0!==l||(l=i),r.configure({__emitter:a,classPrefix:l}),s=r.highlight(e,t,!0),r.configure(c),s.errorRaised)throw s.errorRaised;return{relevance:s.relevance,language:s.language,value:s.emitter.rootNode.children}}function a(e){this.options=e,this.rootNode={children:[]},this.stack=[this.rootNode]}function c(){}},SbYC:function(e,t,n){const{defaults:r}=n("vbtb"),{cleanUrl:o,escape:i}=n("rUJ1");e.exports=class{constructor(e){this.options=e||r}code(e,t,n){const r=(t||"").match(/\S*/)[0];if(this.options.highlight){const t=this.options.highlight(e,r);null!=t&&t!==e&&(n=!0,e=t)}return r?'<pre><code class="'+this.options.langPrefix+i(r,!0)+'">'+(n?e:i(e,!0))+"</code></pre>\n":"<pre><code>"+(n?e:i(e,!0))+"</code></pre>"}blockquote(e){return"<blockquote>\n"+e+"</blockquote>\n"}html(e){return e}heading(e,t,n,r){return this.options.headerIds?"<h"+t+' id="'+this.options.headerPrefix+r.slug(n)+'">'+e+"</h"+t+">\n":"<h"+t+">"+e+"</h"+t+">\n"}hr(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}list(e,t,n){const r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"</"+r+">\n"}listitem(e){return"<li>"+e+"</li>\n"}checkbox(e){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}paragraph(e){return"<p>"+e+"</p>\n"}table(e,t){return t&&(t="<tbody>"+t+"</tbody>"),"<table>\n<thead>\n"+e+"</thead>\n"+t+"</table>\n"}tablerow(e){return"<tr>\n"+e+"</tr>\n"}tablecell(e,t){const n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"</"+n+">\n"}strong(e){return"<strong>"+e+"</strong>"}em(e){return"<em>"+e+"</em>"}codespan(e){return"<code>"+e+"</code>"}br(){return this.options.xhtml?"<br/>":"<br>"}del(e){return"<del>"+e+"</del>"}link(e,t,n){if(null===(e=o(this.options.sanitize,this.options.baseUrl,e)))return n;let r='<a href="'+i(e)+'"';return t&&(r+=' title="'+t+'"'),r+=">"+n+"</a>"}image(e,t,n){if(null===(e=o(this.options.sanitize,this.options.baseUrl,e)))return n;let r='<img src="'+e+'" alt="'+n+'"';return t&&(r+=' title="'+t+'"'),r+=this.options.xhtml?"/>":">"}text(e){return e}}},T9Ld:function(e,t,n){const{defaults:r}=n("vbtb"),{block:o}=n("e56X"),{rtrim:i,splitCells:s,escape:a}=n("rUJ1");e.exports=class e{constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||r,this.rules=o.normal,this.options.pedantic?this.rules=o.pedantic:this.options.gfm&&(this.rules=o.gfm)}static get rules(){return o}static lex(t,n){return new e(n).lex(t)}lex(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.token(e,!0)}token(e,t){let n,r,c,l,u,p,h,d,f,m,v,g,y,b,w,S;for(e=e.replace(/^ +$/gm,"");e;)if((c=this.rules.newline.exec(e))&&(e=e.substring(c[0].length),c[0].length>1&&this.tokens.push({type:"space"})),c=this.rules.code.exec(e)){const t=this.tokens[this.tokens.length-1];e=e.substring(c[0].length),t&&"paragraph"===t.type?t.text+="\n"+c[0].trimRight():(c=c[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",codeBlockStyle:"indented",text:this.options.pedantic?c:i(c,"\n")}))}else if(c=this.rules.fences.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"code",lang:c[2]?c[2].trim():c[2],text:c[3]||""});else if(c=this.rules.heading.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"heading",depth:c[1].length,text:c[2]});else if((c=this.rules.nptable.exec(e))&&(p={type:"table",header:s(c[1].replace(/^ *| *\| *$/g,"")),align:c[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:c[3]?c[3].replace(/\n$/,"").split("\n"):[]}).header.length===p.align.length){for(e=e.substring(c[0].length),v=0;v<p.align.length;v++)/^ *-+: *$/.test(p.align[v])?p.align[v]="right":/^ *:-+: *$/.test(p.align[v])?p.align[v]="center":/^ *:-+ *$/.test(p.align[v])?p.align[v]="left":p.align[v]=null;for(v=0;v<p.cells.length;v++)p.cells[v]=s(p.cells[v],p.header.length);this.tokens.push(p)}else if(c=this.rules.hr.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"hr"});else if(c=this.rules.blockquote.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"blockquote_start"}),c=c[0].replace(/^ *> ?/gm,""),this.token(c,t),this.tokens.push({type:"blockquote_end"});else if(c=this.rules.list.exec(e)){for(e=e.substring(c[0].length),h={type:"list_start",ordered:b=(l=c[2]).length>1,start:b?+l:"",loose:!1},this.tokens.push(h),d=[],n=!1,y=(c=c[0].match(this.rules.item)).length,v=0;v<y;v++)m=(p=c[v]).length,~(p=p.replace(/^ *([*+-]|\d+\.) */,"")).indexOf("\n ")&&(m-=p.length,p=this.options.pedantic?p.replace(/^ {1,4}/gm,""):p.replace(new RegExp("^ {1,"+m+"}","gm"),"")),v!==y-1&&(u=o.bullet.exec(c[v+1])[0],(l.length>1?1===u.length:u.length>1||this.options.smartLists&&u!==l)&&(e=c.slice(v+1).join("\n")+e,v=y-1)),r=n||/\n\n(?!\s*$)/.test(p),v!==y-1&&(n="\n"===p.charAt(p.length-1),r||(r=n)),r&&(h.loose=!0),S=void 0,(w=/^\[[ xX]\] /.test(p))&&(S=" "!==p[1],p=p.replace(/^\[[ xX]\] +/,"")),f={type:"list_item_start",task:w,checked:S,loose:r},d.push(f),this.tokens.push(f),this.token(p,!1),this.tokens.push({type:"list_item_end"});if(h.loose)for(y=d.length,v=0;v<y;v++)d[v].loose=!0;this.tokens.push({type:"list_end"})}else if(c=this.rules.html.exec(e))e=e.substring(c[0].length),this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:!this.options.sanitizer&&("pre"===c[1]||"script"===c[1]||"style"===c[1]),text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(c[0]):a(c[0]):c[0]});else if(t&&(c=this.rules.def.exec(e)))e=e.substring(c[0].length),c[3]&&(c[3]=c[3].substring(1,c[3].length-1)),g=c[1].toLowerCase().replace(/\s+/g," "),this.tokens.links[g]||(this.tokens.links[g]={href:c[2],title:c[3]});else if((c=this.rules.table.exec(e))&&(p={type:"table",header:s(c[1].replace(/^ *| *\| *$/g,"")),align:c[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:c[3]?c[3].replace(/\n$/,"").split("\n"):[]}).header.length===p.align.length){for(e=e.substring(c[0].length),v=0;v<p.align.length;v++)/^ *-+: *$/.test(p.align[v])?p.align[v]="right":/^ *:-+: *$/.test(p.align[v])?p.align[v]="center":/^ *:-+ *$/.test(p.align[v])?p.align[v]="left":p.align[v]=null;for(v=0;v<p.cells.length;v++)p.cells[v]=s(p.cells[v].replace(/^ *\| *| *\| *$/g,""),p.header.length);this.tokens.push(p)}else if(c=this.rules.lheading.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"heading",depth:"="===c[2].charAt(0)?1:2,text:c[1]});else if(t&&(c=this.rules.paragraph.exec(e)))e=e.substring(c[0].length),this.tokens.push({type:"paragraph",text:"\n"===c[1].charAt(c[1].length-1)?c[1].slice(0,-1):c[1]});else if(c=this.rules.text.exec(e))e=e.substring(c[0].length),this.tokens.push({type:"text",text:c[0]});else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0));return this.tokens}}},"UxO+":function(e,t,n){"use strict";n.r(t),n.d(t,"AllSelection",function(){return d}),n.d(t,"EditorState",function(){return x}),n.d(t,"NodeSelection",function(){return p}),n.d(t,"Plugin",function(){return O}),n.d(t,"PluginKey",function(){return T}),n.d(t,"Selection",function(){return s}),n.d(t,"SelectionRange",function(){return c}),n.d(t,"TextSelection",function(){return l}),n.d(t,"Transaction",function(){return g});var r=n("MEpN"),o=n("CsC6"),i=Object.create(null),s=function(e,t,n){this.ranges=n||[new c(e.min(t),e.max(t))],this.$anchor=e,this.$head=t},a={anchor:{configurable:!0},head:{configurable:!0},from:{configurable:!0},to:{configurable:!0},$from:{configurable:!0},$to:{configurable:!0},empty:{configurable:!0}};a.anchor.get=function(){return this.$anchor.pos},a.head.get=function(){return this.$head.pos},a.from.get=function(){return this.$from.pos},a.to.get=function(){return this.$to.pos},a.$from.get=function(){return this.ranges[0].$from},a.$to.get=function(){return this.ranges[0].$to},a.empty.get=function(){for(var e=this.ranges,t=0;t<e.length;t++)if(e[t].$from.pos!=e[t].$to.pos)return!1;return!0},s.prototype.content=function(){return this.$from.node(0).slice(this.from,this.to,!0)},s.prototype.replace=function(e,t){void 0===t&&(t=r.Slice.empty);for(var n=t.content.lastChild,o=null,i=0;i<t.openEnd;i++)o=n,n=n.lastChild;for(var s=e.steps.length,a=this.ranges,c=0;c<a.length;c++){var l=a[c],u=l.$from,p=l.$to,h=e.mapping.slice(s);e.replaceRange(h.map(u.pos),h.map(p.pos),c?r.Slice.empty:t),0==c&&v(e,s,(n?n.isInline:o&&o.isTextblock)?-1:1)}},s.prototype.replaceWith=function(e,t){for(var n=e.steps.length,r=this.ranges,o=0;o<r.length;o++){var i=r[o],s=i.$from,a=i.$to,c=e.mapping.slice(n),l=c.map(s.pos),u=c.map(a.pos);o?e.deleteRange(l,u):(e.replaceRangeWith(l,u,t),v(e,n,t.isInline?-1:1))}},s.findFrom=function(e,t,n){var r=e.parent.inlineContent?new l(e):m(e.node(0),e.parent,e.pos,e.index(),t,n);if(r)return r;for(var o=e.depth-1;o>=0;o--){var i=t<0?m(e.node(0),e.node(o),e.before(o+1),e.index(o),t,n):m(e.node(0),e.node(o),e.after(o+1),e.index(o)+1,t,n);if(i)return i}},s.near=function(e,t){return void 0===t&&(t=1),this.findFrom(e,t)||this.findFrom(e,-t)||new d(e.node(0))},s.atStart=function(e){return m(e,e,0,0,1)||new d(e)},s.atEnd=function(e){return m(e,e,e.content.size,e.childCount,-1)||new d(e)},s.fromJSON=function(e,t){if(!t||!t.type)throw new RangeError("Invalid input for Selection.fromJSON");var n=i[t.type];if(!n)throw new RangeError("No selection type "+t.type+" defined");return n.fromJSON(e,t)},s.jsonID=function(e,t){if(e in i)throw new RangeError("Duplicate use of selection JSON ID "+e);return i[e]=t,t.prototype.jsonID=e,t},s.prototype.getBookmark=function(){return l.between(this.$anchor,this.$head).getBookmark()},Object.defineProperties(s.prototype,a),s.prototype.visible=!0;var c=function(e,t){this.$from=e,this.$to=t},l=function(e){function t(t,n){void 0===n&&(n=t),e.call(this,t,n)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={$cursor:{configurable:!0}};return n.$cursor.get=function(){return this.$anchor.pos==this.$head.pos?this.$head:null},t.prototype.map=function(n,r){var o=n.resolve(r.map(this.head));if(!o.parent.inlineContent)return e.near(o);var i=n.resolve(r.map(this.anchor));return new t(i.parent.inlineContent?i:o,o)},t.prototype.replace=function(t,n){if(void 0===n&&(n=r.Slice.empty),e.prototype.replace.call(this,t,n),n==r.Slice.empty){var o=this.$from.marksAcross(this.$to);o&&t.ensureMarks(o)}},t.prototype.eq=function(e){return e instanceof t&&e.anchor==this.anchor&&e.head==this.head},t.prototype.getBookmark=function(){return new u(this.anchor,this.head)},t.prototype.toJSON=function(){return{type:"text",anchor:this.anchor,head:this.head}},t.fromJSON=function(e,n){if("number"!=typeof n.anchor||"number"!=typeof n.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new t(e.resolve(n.anchor),e.resolve(n.head))},t.create=function(e,t,n){void 0===n&&(n=t);var r=e.resolve(t);return new this(r,n==t?r:e.resolve(n))},t.between=function(n,r,o){var i=n.pos-r.pos;if(o&&!i||(o=i>=0?1:-1),!r.parent.inlineContent){var s=e.findFrom(r,o,!0)||e.findFrom(r,-o,!0);if(!s)return e.near(r,o);r=s.$head}return n.parent.inlineContent||(0==i?n=r:(n=(e.findFrom(n,-o,!0)||e.findFrom(n,o,!0)).$anchor).pos<r.pos!=i<0&&(n=r)),new t(n,r)},Object.defineProperties(t.prototype,n),t}(s);s.jsonID("text",l);var u=function(e,t){this.anchor=e,this.head=t};u.prototype.map=function(e){return new u(e.map(this.anchor),e.map(this.head))},u.prototype.resolve=function(e){return l.between(e.resolve(this.anchor),e.resolve(this.head))};var p=function(e){function t(t){var n=t.nodeAfter,r=t.node(0).resolve(t.pos+n.nodeSize);e.call(this,t,r),this.node=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.map=function(n,r){var o=r.mapResult(this.anchor),i=o.deleted,s=o.pos,a=n.resolve(s);return i?e.near(a):new t(a)},t.prototype.content=function(){return new r.Slice(r.Fragment.from(this.node),0,0)},t.prototype.eq=function(e){return e instanceof t&&e.anchor==this.anchor},t.prototype.toJSON=function(){return{type:"node",anchor:this.anchor}},t.prototype.getBookmark=function(){return new h(this.anchor)},t.fromJSON=function(e,n){if("number"!=typeof n.anchor)throw new RangeError("Invalid input for NodeSelection.fromJSON");return new t(e.resolve(n.anchor))},t.create=function(e,t){return new this(e.resolve(t))},t.isSelectable=function(e){return!e.isText&&!1!==e.type.spec.selectable},t}(s);p.prototype.visible=!1,s.jsonID("node",p);var h=function(e){this.anchor=e};h.prototype.map=function(e){var t=e.mapResult(this.anchor),n=t.deleted,r=t.pos;return n?new u(r,r):new h(r)},h.prototype.resolve=function(e){var t=e.resolve(this.anchor),n=t.nodeAfter;return n&&p.isSelectable(n)?new p(t):s.near(t)};var d=function(e){function t(t){e.call(this,t.resolve(0),t.resolve(t.content.size))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.replace=function(t,n){if(void 0===n&&(n=r.Slice.empty),n==r.Slice.empty){t.delete(0,t.doc.content.size);var o=e.atStart(t.doc);o.eq(t.selection)||t.setSelection(o)}else e.prototype.replace.call(this,t,n)},t.prototype.toJSON=function(){return{type:"all"}},t.fromJSON=function(e){return new t(e)},t.prototype.map=function(e){return new t(e)},t.prototype.eq=function(e){return e instanceof t},t.prototype.getBookmark=function(){return f},t}(s);s.jsonID("all",d);var f={map:function(){return this},resolve:function(e){return new d(e)}};function m(e,t,n,r,o,i){if(t.inlineContent)return l.create(e,n);for(var s=r-(o>0?0:1);o>0?s<t.childCount:s>=0;s+=o){var a=t.child(s);if(a.isAtom){if(!i&&p.isSelectable(a))return p.create(e,n-(o<0?a.nodeSize:0))}else{var c=m(e,a,n+o,o<0?a.childCount:0,o,i);if(c)return c}n+=a.nodeSize*o}}function v(e,t,n){var r=e.steps.length-1;if(!(r<t)){var i,a=e.steps[r];if(a instanceof o.c||a instanceof o.b)e.mapping.maps[r].forEach(function(e,t,n,r){null==i&&(i=r)}),e.setSelection(s.near(e.doc.resolve(i),n))}}var g=function(e){function t(t){e.call(this,t.doc),this.time=Date.now(),this.curSelection=t.selection,this.curSelectionFor=0,this.storedMarks=t.storedMarks,this.updated=0,this.meta=Object.create(null)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={selection:{configurable:!0},selectionSet:{configurable:!0},storedMarksSet:{configurable:!0},isGeneric:{configurable:!0},scrolledIntoView:{configurable:!0}};return n.selection.get=function(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection},t.prototype.setSelection=function(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=-3&(1|this.updated),this.storedMarks=null,this},n.selectionSet.get=function(){return(1&this.updated)>0},t.prototype.setStoredMarks=function(e){return this.storedMarks=e,this.updated|=2,this},t.prototype.ensureMarks=function(e){return r.Mark.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this},t.prototype.addStoredMark=function(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))},t.prototype.removeStoredMark=function(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))},n.storedMarksSet.get=function(){return(2&this.updated)>0},t.prototype.addStep=function(t,n){e.prototype.addStep.call(this,t,n),this.updated=-3&this.updated,this.storedMarks=null},t.prototype.setTime=function(e){return this.time=e,this},t.prototype.replaceSelection=function(e){return this.selection.replace(this,e),this},t.prototype.replaceSelectionWith=function(e,t){var n=this.selection;return!1!==t&&(e=e.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||r.Mark.none))),n.replaceWith(this,e),this},t.prototype.deleteSelection=function(){return this.selection.replace(this),this},t.prototype.insertText=function(e,t,n){void 0===n&&(n=t);var r=this.doc.type.schema;if(null==t)return e?this.replaceSelectionWith(r.text(e),!0):this.deleteSelection();if(!e)return this.deleteRange(t,n);var o=this.storedMarks;if(!o){var i=this.doc.resolve(t);o=n==t?i.marks():i.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(t,n,r.text(e,o)),this.selection.empty||this.setSelection(s.near(this.selection.$to)),this},t.prototype.setMeta=function(e,t){return this.meta["string"==typeof e?e:e.key]=t,this},t.prototype.getMeta=function(e){return this.meta["string"==typeof e?e:e.key]},n.isGeneric.get=function(){for(var e in this.meta)return!1;return!0},t.prototype.scrollIntoView=function(){return this.updated|=4,this},n.scrolledIntoView.get=function(){return(4&this.updated)>0},Object.defineProperties(t.prototype,n),t}(o.e);function y(e,t){return t&&e?e.bind(t):e}var b=function(e,t,n){this.name=e,this.init=y(t.init,n),this.apply=y(t.apply,n)},w=[new b("doc",{init:function(e){return e.doc||e.schema.topNodeType.createAndFill()},apply:function(e){return e.doc}}),new b("selection",{init:function(e,t){return e.selection||s.atStart(t.doc)},apply:function(e){return e.selection}}),new b("storedMarks",{init:function(e){return e.storedMarks||null},apply:function(e,t,n,r){return r.selection.$cursor?e.storedMarks:null}}),new b("scrollToSelection",{init:function(){return 0},apply:function(e,t){return e.scrolledIntoView?t+1:t}})],S=function(e,t){var n=this;this.schema=e,this.fields=w.concat(),this.plugins=[],this.pluginsByKey=Object.create(null),t&&t.forEach(function(e){if(n.pluginsByKey[e.key])throw new RangeError("Adding different instances of a keyed plugin ("+e.key+")");n.plugins.push(e),n.pluginsByKey[e.key]=e,e.spec.state&&n.fields.push(new b(e.key,e.spec.state,e))})},x=function(e){this.config=e},k={schema:{configurable:!0},plugins:{configurable:!0},tr:{configurable:!0}};k.schema.get=function(){return this.config.schema},k.plugins.get=function(){return this.config.plugins},x.prototype.apply=function(e){return this.applyTransaction(e).state},x.prototype.filterTransaction=function(e,t){void 0===t&&(t=-1);for(var n=0;n<this.config.plugins.length;n++)if(n!=t){var r=this.config.plugins[n];if(r.spec.filterTransaction&&!r.spec.filterTransaction.call(r,e,this))return!1}return!0},x.prototype.applyTransaction=function(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};for(var t=[e],n=this.applyInner(e),r=null;;){for(var o=!1,i=0;i<this.config.plugins.length;i++){var s=this.config.plugins[i];if(s.spec.appendTransaction){var a=r?r[i].n:0,c=r?r[i].state:this,l=a<t.length&&s.spec.appendTransaction.call(s,a?t.slice(a):t,c,n);if(l&&n.filterTransaction(l,i)){if(l.setMeta("appendedTransaction",e),!r){r=[];for(var u=0;u<this.config.plugins.length;u++)r.push(u<i?{state:n,n:t.length}:{state:this,n:0})}t.push(l),n=n.applyInner(l),o=!0}r&&(r[i]={state:n,n:t.length})}}if(!o)return{state:n,transactions:t}}},x.prototype.applyInner=function(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");for(var t=new x(this.config),n=this.config.fields,r=0;r<n.length;r++){var o=n[r];t[o.name]=o.apply(e,this[o.name],this,t)}for(var i=0;i<C.length;i++)C[i](this,e,t);return t},k.tr.get=function(){return new g(this)},x.create=function(e){for(var t=new S(e.schema||e.doc.type.schema,e.plugins),n=new x(t),r=0;r<t.fields.length;r++)n[t.fields[r].name]=t.fields[r].init(e,n);return n},x.prototype.reconfigure=function(e){for(var t=new S(e.schema||this.schema,e.plugins),n=t.fields,r=new x(t),o=0;o<n.length;o++){var i=n[o].name;r[i]=this.hasOwnProperty(i)?this[i]:n[o].init(e,r)}return r},x.prototype.toJSON=function(e){var t={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(t.storedMarks=this.storedMarks.map(function(e){return e.toJSON()})),e&&"object"==typeof e)for(var n in e){if("doc"==n||"selection"==n)throw new RangeError("The JSON fields `doc` and `selection` are reserved");var r=e[n],o=r.spec.state;o&&o.toJSON&&(t[n]=o.toJSON.call(r,this[r.key]))}return t},x.fromJSON=function(e,t,n){if(!t)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");var o=new S(e.schema,e.plugins),i=new x(o);return o.fields.forEach(function(o){if("doc"==o.name)i.doc=r.Node.fromJSON(e.schema,t.doc);else if("selection"==o.name)i.selection=s.fromJSON(i.doc,t.selection);else if("storedMarks"==o.name)t.storedMarks&&(i.storedMarks=t.storedMarks.map(e.schema.markFromJSON));else{if(n)for(var a in n){var c=n[a],l=c.spec.state;if(c.key==o.name&&l&&l.fromJSON&&Object.prototype.hasOwnProperty.call(t,a))return void(i[o.name]=l.fromJSON.call(c,e,t[a],i))}i[o.name]=o.init(e,i)}}),i},x.addApplyListener=function(e){C.push(e)},x.removeApplyListener=function(e){var t=C.indexOf(e);t>-1&&C.splice(t,1)},Object.defineProperties(x.prototype,k);var C=[];var O=function(e){this.props={},e.props&&function e(t,n,r){for(var o in t){var i=t[o];i instanceof Function?i=i.bind(n):"handleDOMEvents"==o&&(i=e(i,n,{})),r[o]=i}return r}(e.props,this,this.props),this.spec=e,this.key=e.key?e.key.key:N("plugin")};O.prototype.getState=function(e){return e[this.key]};var M=Object.create(null);function N(e){return e in M?e+"$"+ ++M[e]:(M[e]=0,e+"$")}var T=function(e){void 0===e&&(e="key"),this.key=N(e)};T.prototype.get=function(e){return e.config.pluginsByKey[this.key]},T.prototype.getState=function(e){return e[this.key]}},V2qZ:function(e,t,n){"use strict";n.d(t,"a",function(){return wt}),n.d(t,"b",function(){return Ct});var r=n("UxO+"),o=n("MEpN"),i=n("CsC6"),s={};if("undefined"!=typeof navigator&&"undefined"!=typeof document){var a=/Edge\/(\d+)/.exec(navigator.userAgent),c=/MSIE \d/.test(navigator.userAgent),l=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);s.mac=/Mac/.test(navigator.platform);var u=s.ie=!!(c||l||a);s.ie_version=c?document.documentMode||6:l?+l[1]:a?+a[1]:null,s.gecko=!u&&/gecko\/(\d+)/i.test(navigator.userAgent),s.gecko_version=s.gecko&&+(/Firefox\/(\d+)/.exec(navigator.userAgent)||[0,0])[1];var p=!u&&/Chrome\/(\d+)/.exec(navigator.userAgent);s.chrome=!!p,s.chrome_version=p&&+p[1],s.ios=!u&&/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent),s.android=/Android \d/.test(navigator.userAgent),s.webkit="webkitFontSmoothing"in document.documentElement.style,s.safari=/Apple Computer/.test(navigator.vendor),s.webkit_version=s.webkit&&+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]}var h=function(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t},d=function(e){var t=e.parentNode;return t&&11==t.nodeType?t.host:t},f=function(e,t,n){var r=document.createRange();return r.setEnd(e,null==n?e.nodeValue.length:n),r.setStart(e,t||0),r},m=function(e,t,n,r){return n&&(g(e,t,n,r,-1)||g(e,t,n,r,1))},v=/^(img|br|input|textarea|hr)$/i;function g(e,t,n,r,o){for(;;){if(e==n&&t==r)return!0;if(t==(o<0?0:y(e))){var i=e.parentNode;if(1!=i.nodeType||b(e)||v.test(e.nodeName)||"false"==e.contentEditable)return!1;t=h(e)+(o<0?0:1),e=i}else{if(1!=e.nodeType)return!1;if("false"==(e=e.childNodes[t+(o<0?-1:0)]).contentEditable)return!1;t=o<0?y(e):0}}}function y(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function b(e){for(var t,n=e;n&&!(t=n.pmViewDesc);n=n.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}var w=function(e){var t=e.isCollapsed;return t&&s.chrome&&e.rangeCount&&!e.getRangeAt(0).collapsed&&(t=!1),t};function S(e,t){var n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=e,n.key=n.code=t,n}function x(e){return{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function k(e,t){return"number"==typeof e?e:e[t]}function C(e){var t=e.getBoundingClientRect();return{left:t.left,right:t.left+e.clientWidth,top:t.top,bottom:t.top+e.clientHeight}}function O(e,t,n){for(var r=e.someProp("scrollThreshold")||0,o=e.someProp("scrollMargin")||5,i=e.dom.ownerDocument,s=n||e.dom;s;s=d(s))if(1==s.nodeType){var a=s==i.body||1!=s.nodeType,c=a?x(i):C(s),l=0,u=0;if(t.top<c.top+k(r,"top")?u=-(c.top-t.top+k(o,"top")):t.bottom>c.bottom-k(r,"bottom")&&(u=t.bottom-c.bottom+k(o,"bottom")),t.left<c.left+k(r,"left")?l=-(c.left-t.left+k(o,"left")):t.right>c.right-k(r,"right")&&(l=t.right-c.right+k(o,"right")),l||u)if(a)i.defaultView.scrollBy(l,u);else{var p=s.scrollLeft,h=s.scrollTop;u&&(s.scrollTop+=u),l&&(s.scrollLeft+=l);var f=s.scrollLeft-p,m=s.scrollTop-h;t={left:t.left-f,top:t.top-m,right:t.right-f,bottom:t.bottom-m}}if(a)break}}function M(e){for(var t=[],n=e.ownerDocument;e&&(t.push({dom:e,top:e.scrollTop,left:e.scrollLeft}),e!=n);e=d(e));return t}function N(e,t){for(var n=0;n<e.length;n++){var r=e[n],o=r.dom,i=r.top,s=r.left;o.scrollTop!=i+t&&(o.scrollTop=i+t),o.scrollLeft!=s&&(o.scrollLeft=s)}}var T=null;function D(e,t){for(var n,r,o=2e8,i=0,s=t.top,a=t.top,c=e.firstChild,l=0;c;c=c.nextSibling,l++){var u=void 0;if(1==c.nodeType)u=c.getClientRects();else{if(3!=c.nodeType)continue;u=f(c).getClientRects()}for(var p=0;p<u.length;p++){var h=u[p];if(h.top<=s&&h.bottom>=a){s=Math.max(h.bottom,s),a=Math.min(h.top,a);var d=h.left>t.left?h.left-t.left:h.right<t.left?t.left-h.right:0;if(d<o){n=c,o=d,r=d&&3==n.nodeType?{left:h.right<t.left?h.right:h.left,top:t.top}:t,1==c.nodeType&&d&&(i=l+(t.left>=(h.left+h.right)/2?1:0));continue}}!n&&(t.left>=h.right&&t.top>=h.top||t.left>=h.left&&t.top>=h.bottom)&&(i=l+1)}}return n&&3==n.nodeType?function(e,t){for(var n=e.nodeValue.length,r=document.createRange(),o=0;o<n;o++){r.setEnd(e,o+1),r.setStart(e,o);var i=R(r,1);if(i.top!=i.bottom&&A(t,i))return{node:e,offset:o+(t.left>=(i.left+i.right)/2?1:0)}}return{node:e,offset:0}}(n,r):!n||o&&1==n.nodeType?{node:e,offset:i}:D(n,r)}function A(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function E(e,t){var n,r,o,i,a=e.root;if(a.caretPositionFromPoint)try{var c=a.caretPositionFromPoint(t.left,t.top);c&&(o=(n=c).offsetNode,i=n.offset)}catch(e){}if(!o&&a.caretRangeFromPoint){var l=a.caretRangeFromPoint(t.left,t.top);l&&(o=(r=l).startContainer,i=r.startOffset)}var u,p=a.elementFromPoint(t.left,t.top+1);if(!p||!e.dom.contains(1!=p.nodeType?p.parentNode:p)){var h=e.dom.getBoundingClientRect();if(!A(t,h))return null;if(!(p=function e(t,n,r){var o=t.childNodes.length;if(o&&r.top<r.bottom)for(var i=Math.max(0,Math.min(o-1,Math.floor(o*(n.top-r.top)/(r.bottom-r.top))-2)),s=i;;){var a=t.childNodes[s];if(1==a.nodeType)for(var c=a.getClientRects(),l=0;l<c.length;l++){var u=c[l];if(A(n,u))return e(a,n,u)}if((s=(s+1)%o)==i)break}return t}(e.dom,t,h)))return null}if(s.safari&&p.draggable&&(o=i=null),p=function(e,t){var n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}(p,t),o){if(s.gecko&&1==o.nodeType&&(i=Math.min(i,o.childNodes.length))<o.childNodes.length){var d,f=o.childNodes[i];"IMG"==f.nodeName&&(d=f.getBoundingClientRect()).right<=t.left&&d.bottom>t.top&&i++}o==e.dom&&i==o.childNodes.length-1&&1==o.lastChild.nodeType&&t.top>o.lastChild.getBoundingClientRect().bottom?u=e.state.doc.content.size:0!=i&&1==o.nodeType&&"BR"==o.childNodes[i-1].nodeName||(u=function(e,t,n,r){for(var o=-1,i=t;i!=e.dom;){var s=e.docView.nearestDesc(i,!0);if(!s)return null;if(s.node.isBlock&&s.parent){var a=s.dom.getBoundingClientRect();if(a.left>r.left||a.top>r.top)o=s.posBefore;else{if(!(a.right<r.left||a.bottom<r.top))break;o=s.posAfter}}i=s.dom.parentNode}return o>-1?o:e.docView.posFromDOM(t,n)}(e,o,i,t))}null==u&&(u=function(e,t,n){var r=D(t,n),o=r.node,i=r.offset,s=-1;if(1==o.nodeType&&!o.firstChild){var a=o.getBoundingClientRect();s=a.left!=a.right&&n.left>(a.left+a.right)/2?1:-1}return e.docView.posFromDOM(o,i,s)}(e,p,t));var m=e.docView.nearestDesc(p,!0);return{pos:u,inside:m?m.posAtStart-m.border:-1}}function R(e,t){var n=e.getClientRects();return n.length?n[t<0?0:n.length-1]:e.getBoundingClientRect()}function _(e,t){var n=e.docView.domFromPos(t),r=n.node,o=n.offset;if(3==r.nodeType&&(s.webkit||s.gecko)){var i=R(f(r,o,o),0);if(s.gecko&&o&&/\s/.test(r.nodeValue[o-1])&&o<r.nodeValue.length){var a=R(f(r,o-1,o-1),-1);if(a.top==i.top){var c=R(f(r,o,o+1),-1);if(c.top!=i.top)return P(c,c.left<a.left)}}return i}if(1==r.nodeType&&!e.state.doc.resolve(t).parent.inlineContent){var l,u=!0;if(o<r.childNodes.length){var p=r.childNodes[o];1==p.nodeType&&(l=p.getBoundingClientRect())}if(!l&&o){var h=r.childNodes[o-1];1==h.nodeType&&(l=h.getBoundingClientRect(),u=!1)}return function(e,t){if(0==e.height)return e;var n=t?e.top:e.bottom;return{top:n,bottom:n,left:e.left,right:e.right}}(l||r.getBoundingClientRect(),u)}for(var d=-1;d<2;d+=2)if(d<0&&o){var m=void 0,v=3==r.nodeType?f(r,o-1,o):3==(m=r.childNodes[o-1]).nodeType?f(m):1==m.nodeType&&"BR"!=m.nodeName?m:null;if(v){var g=R(v,1);if(g.top<g.bottom)return P(g,!1)}}else if(d>0&&o<y(r)){var b=void 0,w=3==r.nodeType?f(r,o,o+1):3==(b=r.childNodes[o]).nodeType?f(b):1==b.nodeType?b:null;if(w){var S=R(w,-1);if(S.top<S.bottom)return P(S,!0)}}return P(R(3==r.nodeType?f(r):r,0),!1)}function P(e,t){if(0==e.width)return e;var n=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:n,right:n}}function $(e,t,n){var r=e.state,o=e.root.activeElement;r!=t&&e.updateState(t),o!=e.dom&&e.focus();try{return n()}finally{r!=t&&e.updateState(r),o!=e.dom&&o&&o.focus()}}var I=/[\u0590-\u08ac]/;var z=null,B=null,F=!1;function V(e,t,n){return z==t&&B==n?F:(z=t,B=n,F="up"==n||"down"==n?function(e,t,n){var r=t.selection,o="up"==n?r.$anchor.min(r.$head):r.$anchor.max(r.$head);return $(e,t,function(){for(var t=e.docView.domFromPos(o.pos).node;;){var r=e.docView.nearestDesc(t,!0);if(!r)break;if(r.node.isBlock){t=r.dom;break}t=r.dom.parentNode}for(var i=_(e,o.pos),s=t.firstChild;s;s=s.nextSibling){var a=void 0;if(1==s.nodeType)a=s.getClientRects();else{if(3!=s.nodeType)continue;a=f(s,0,s.nodeValue.length).getClientRects()}for(var c=0;c<a.length;c++){var l=a[c];if(l.bottom>l.top&&("up"==n?l.bottom<i.top+1:l.top>i.bottom-1))return!1}}return!0})}(e,t,n):function(e,t,n){var r=t.selection.$head;if(!r.parent.isTextblock)return!1;var o=r.parentOffset,i=!o,s=o==r.parent.content.size,a=getSelection();return I.test(r.parent.textContent)&&a.modify?$(e,t,function(){var t=a.getRangeAt(0),o=a.focusNode,i=a.focusOffset,s=a.caretBidiLevel;a.modify("move",n,"character");var c=!(r.depth?e.docView.domAfterPos(r.before()):e.dom).contains(1==a.focusNode.nodeType?a.focusNode:a.focusNode.parentNode)||o==a.focusNode&&i==a.focusOffset;return a.removeAllRanges(),a.addRange(t),null!=s&&(a.caretBidiLevel=s),c}):"left"==n||"backward"==n?i:s}(e,t,n))}var j=function(e,t,n,r){this.parent=e,this.children=t,this.dom=n,n.pmViewDesc=this,this.contentDOM=r,this.dirty=0},L={beforePosition:{configurable:!0},size:{configurable:!0},border:{configurable:!0},posBefore:{configurable:!0},posAtStart:{configurable:!0},posAfter:{configurable:!0},posAtEnd:{configurable:!0},contentLost:{configurable:!0}};j.prototype.matchesWidget=function(){return!1},j.prototype.matchesMark=function(){return!1},j.prototype.matchesNode=function(){return!1},j.prototype.matchesHack=function(){return!1},L.beforePosition.get=function(){return!1},j.prototype.parseRule=function(){return null},j.prototype.stopEvent=function(){return!1},L.size.get=function(){for(var e=0,t=0;t<this.children.length;t++)e+=this.children[t].size;return e},L.border.get=function(){return 0},j.prototype.destroy=function(){this.parent=null,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=null);for(var e=0;e<this.children.length;e++)this.children[e].destroy()},j.prototype.posBeforeChild=function(e){for(var t=0,n=this.posAtStart;t<this.children.length;t++){var r=this.children[t];if(r==e)return n;n+=r.size}},L.posBefore.get=function(){return this.parent.posBeforeChild(this)},L.posAtStart.get=function(){return this.parent?this.parent.posBeforeChild(this)+this.border:0},L.posAfter.get=function(){return this.posBefore+this.size},L.posAtEnd.get=function(){return this.posAtStart+this.size-2*this.border},j.prototype.localPosFromDOM=function(e,t,n){if(this.contentDOM&&this.contentDOM.contains(1==e.nodeType?e:e.parentNode)){if(n<0){var r,o;if(e==this.contentDOM)r=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;r=e.previousSibling}for(;r&&(!(o=r.pmViewDesc)||o.parent!=this);)r=r.previousSibling;return r?this.posBeforeChild(o)+o.size:this.posAtStart}var i,s;if(e==this.contentDOM)i=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.nextSibling}for(;i&&(!(s=i.pmViewDesc)||s.parent!=this);)i=i.nextSibling;return i?this.posBeforeChild(s):this.posAtEnd}var a;if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))a=2&e.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==t)for(var c=e;;c=c.parentNode){if(c==this.dom){a=!1;break}if(c.parentNode.firstChild!=c)break}if(null==a&&t==e.childNodes.length)for(var l=e;;l=l.parentNode){if(l==this.dom){a=!0;break}if(l.parentNode.lastChild!=l)break}}return(null==a?n>0:a)?this.posAtEnd:this.posAtStart},j.prototype.nearestDesc=function(e,t){for(var n=!0,r=e;r;r=r.parentNode){var o=this.getDesc(r);if(o&&(!t||o.node)){if(!n||!o.nodeDOM||(1==o.nodeDOM.nodeType?o.nodeDOM.contains(1==e.nodeType?e:e.parentNode):o.nodeDOM==e))return o;n=!1}}},j.prototype.getDesc=function(e){for(var t=e.pmViewDesc,n=t;n;n=n.parent)if(n==this)return t},j.prototype.posFromDOM=function(e,t,n){for(var r=e;r;r=r.parentNode){var o=this.getDesc(r);if(o)return o.localPosFromDOM(e,t,n)}return-1},j.prototype.descAt=function(e){for(var t=0,n=0;t<this.children.length;t++){var r=this.children[t],o=n+r.size;if(n==e&&o!=n){for(;!r.border&&r.children.length;)r=r.children[0];return r}if(e<o)return r.descAt(e-n-r.border);n=o}},j.prototype.domFromPos=function(e){if(!this.contentDOM)return{node:this.dom,offset:0};for(var t=0,n=0;;n++){if(t==e){for(;n<this.children.length&&(this.children[n].beforePosition||this.children[n].dom.parentNode!=this.contentDOM);)n++;return{node:this.contentDOM,offset:n==this.children.length?this.contentDOM.childNodes.length:h(this.children[n].dom)}}if(n==this.children.length)throw new Error("Invalid position "+e);var r=this.children[n],o=t+r.size;if(e<o)return r.domFromPos(e-t-r.border);t=o}},j.prototype.parseRange=function(e,t,n){if(void 0===n&&(n=0),0==this.children.length)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};for(var r=-1,o=-1,i=n,s=0;;s++){var a=this.children[s],c=i+a.size;if(-1==r&&e<=c){var l=i+a.border;if(e>=l&&t<=c-a.border&&a.node&&a.contentDOM&&this.contentDOM.contains(a.contentDOM))return a.parseRange(e,t,l);e=i;for(var u=s;u>0;u--){var p=this.children[u-1];if(p.size&&p.dom.parentNode==this.contentDOM&&!p.emptyChildAt(1)){r=h(p.dom)+1;break}e-=p.size}-1==r&&(r=0)}if(r>-1&&(c>t||s==this.children.length-1)){t=c;for(var d=s+1;d<this.children.length;d++){var f=this.children[d];if(f.size&&f.dom.parentNode==this.contentDOM&&!f.emptyChildAt(-1)){o=h(f.dom);break}t+=f.size}-1==o&&(o=this.contentDOM.childNodes.length);break}i=c}return{node:this.contentDOM,from:e,to:t,fromOffset:r,toOffset:o}},j.prototype.emptyChildAt=function(e){if(this.border||!this.contentDOM||!this.children.length)return!1;var t=this.children[e<0?0:this.children.length-1];return 0==t.size||t.emptyChildAt(e)},j.prototype.domAfterPos=function(e){var t=this.domFromPos(e),n=t.node,r=t.offset;if(1!=n.nodeType||r==n.childNodes.length)throw new RangeError("No node after pos "+e);return n.childNodes[r]},j.prototype.setSelection=function(e,t,n,r){for(var o=Math.min(e,t),i=Math.max(e,t),a=0,c=0;a<this.children.length;a++){var l=this.children[a],u=c+l.size;if(o>c&&i<u)return l.setSelection(e-c-l.border,t-c-l.border,n,r);c=u}var p=this.domFromPos(e),h=this.domFromPos(t),d=n.getSelection(),f=!1;if((s.gecko||s.safari)&&e==t){var v=p.node.childNodes[p.offset-1];f=v&&("BR"==v.nodeName||"false"==v.contentEditable)}if(r||f&&s.safari||!m(p.node,p.offset,d.anchorNode,d.anchorOffset)||!m(h.node,h.offset,d.focusNode,d.focusOffset)){var g=!1;if((d.extend||e==t)&&!f){d.collapse(p.node,p.offset);try{e!=t&&d.extend(h.node,h.offset),g=!0}catch(e){if(!(e instanceof DOMException))throw e}}if(!g){if(e>t){var y=p;p=h,h=y}var b=document.createRange();b.setEnd(h.node,h.offset),b.setStart(p.node,p.offset),d.removeAllRanges(),d.addRange(b)}}},j.prototype.ignoreMutation=function(e){return!this.contentDOM&&"selection"!=e.type},L.contentLost.get=function(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)},j.prototype.markDirty=function(e,t){for(var n=0,r=0;r<this.children.length;r++){var o=this.children[r],i=n+o.size;if(n==i?e<=i&&t>=n:e<i&&t>n){var s=n+o.border,a=i-o.border;if(e>=s&&t<=a)return this.dirty=e==n||t==i?2:1,void(e!=s||t!=a||!o.contentLost&&o.dom.parentNode==this.contentDOM?o.markDirty(e-s,t-s):o.dirty=3);o.dirty=3}n=i}this.dirty=2},j.prototype.markParentsDirty=function(){for(var e=1,t=this.parent;t;t=t.parent,e++){var n=1==e?2:1;t.dirty<n&&(t.dirty=n)}},Object.defineProperties(j.prototype,L);var q=[],W=function(e){function t(t,n,r,o){var i,s=n.type.toDOM;if("function"==typeof s&&(s=s(r,function(){return i?i.parent?i.parent.posBeforeChild(i):void 0:o})),!n.type.spec.raw){if(1!=s.nodeType){var a=document.createElement("span");a.appendChild(s),s=a}s.contentEditable=!1,s.classList.add("ProseMirror-widget")}e.call(this,t,q,s,null),this.widget=n,i=this}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={beforePosition:{configurable:!0}};return n.beforePosition.get=function(){return this.widget.type.side<0},t.prototype.matchesWidget=function(e){return 0==this.dirty&&e.type.eq(this.widget.type)},t.prototype.parseRule=function(){return{ignore:!0}},t.prototype.stopEvent=function(e){var t=this.widget.spec.stopEvent;return!!t&&t(e)},t.prototype.ignoreMutation=function(e){return"selection"!=e.type||this.widget.spec.ignoreSelection},Object.defineProperties(t.prototype,n),t}(j),K=function(e){function t(t,n,r,o){e.call(this,t,q,n,null),this.textDOM=r,this.text=o}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={size:{configurable:!0}};return n.size.get=function(){return this.text.length},t.prototype.localPosFromDOM=function(e,t){return e!=this.textDOM?this.posAtStart+(t?this.size:0):this.posAtStart+t},t.prototype.domFromPos=function(e){return{node:this.textDOM,offset:e}},t.prototype.ignoreMutation=function(e){return"characterData"===e.type&&e.target.nodeValue==e.oldValue},Object.defineProperties(t.prototype,n),t}(j),J=function(e){function t(t,n,r,o){e.call(this,t,[],r,o),this.mark=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.create=function(e,n,r,i){var s=i.nodeViews[n.type.name],a=s&&s(n,i,r);return a&&a.dom||(a=o.DOMSerializer.renderSpec(document,n.type.spec.toDOM(n,r))),new t(e,n,a.dom,a.contentDOM||a.dom)},t.prototype.parseRule=function(){return{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}},t.prototype.matchesMark=function(e){return 3!=this.dirty&&this.mark.eq(e)},t.prototype.markDirty=function(t,n){if(e.prototype.markDirty.call(this,t,n),0!=this.dirty){for(var r=this.parent;!r.node;)r=r.parent;r.dirty<this.dirty&&(r.dirty=this.dirty),this.dirty=0}},t.prototype.slice=function(e,n,r){var o=t.create(this.parent,this.mark,!0,r),i=this.children,s=this.size;n<s&&(i=ce(i,n,s,r)),e>0&&(i=ce(i,0,e,r));for(var a=0;a<i.length;a++)i[a].parent=o;return o.children=i,o},t}(j),H=function(e){function t(t,n,r,o,i,s,a,c,l){e.call(this,t,n.isLeaf?q:[],i,s),this.nodeDOM=a,this.node=n,this.outerDeco=r,this.innerDeco=o,s&&this.updateChildren(c,l)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={size:{configurable:!0},border:{configurable:!0}};return t.create=function(e,n,r,i,s,a){var c,l,u=s.nodeViews[n.type.name],p=u&&u(n,s,function(){return l?l.parent?l.parent.posBeforeChild(l):void 0:a},r),h=p&&p.dom,d=p&&p.contentDOM;if(n.isText)if(h){if(3!=h.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else h=document.createTextNode(n.text);else h||(h=(c=o.DOMSerializer.renderSpec(document,n.type.spec.toDOM(n))).dom,d=c.contentDOM);d||n.isText||"BR"==h.nodeName||(h.hasAttribute("contenteditable")||(h.contentEditable=!1),n.type.spec.draggable&&(h.draggable=!0));var f=h;return h=re(h,r,n),p?l=new Z(e,n,r,i,h,d,f,p,s,a+1):n.isText?new G(e,n,r,i,h,f,s):new t(e,n,r,i,h,d,f,s,a+1)},t.prototype.parseRule=function(){var e=this;if(this.node.type.spec.reparseInView)return null;var t={node:this.node.type.name,attrs:this.node.attrs};return this.node.type.spec.code&&(t.preserveWhitespace="full"),this.contentDOM&&!this.contentLost?t.contentElement=this.contentDOM:t.getContent=function(){return e.contentDOM?o.Fragment.empty:e.node.content},t},t.prototype.matchesNode=function(e,t,n){return 0==this.dirty&&e.eq(this.node)&&oe(t,this.outerDeco)&&n.eq(this.innerDeco)},n.size.get=function(){return this.node.nodeSize},n.border.get=function(){return this.node.isLeaf?0:1},t.prototype.updateChildren=function(e,t){var n=this,r=this.node.inlineContent,i=t,a=r&&e.composing&&this.localCompositionNode(e,t),c=new se(this,a&&a.node);!function(e,t,n,r){var o=t.locals(e),i=0;if(0==o.length){for(var s=0;s<e.childCount;s++){var a=e.child(s);r(a,o,t.forChild(i,a),s),i+=a.nodeSize}return}for(var c=0,l=[],u=null,p=0;;){if(c<o.length&&o[c].to==i){for(var h=o[c++],d=void 0;c<o.length&&o[c].to==i;)(d||(d=[h])).push(o[c++]);if(d){d.sort(ae);for(var f=0;f<d.length;f++)n(d[f],p,!!u)}else n(h,p,!!u)}var m=void 0,v=void 0;if(u)v=-1,m=u,u=null;else{if(!(p<e.childCount))break;v=p,m=e.child(p++)}for(var g=0;g<l.length;g++)l[g].to<=i&&l.splice(g--,1);for(;c<o.length&&o[c].from<=i&&o[c].to>i;)l.push(o[c++]);var y=i+m.nodeSize;if(m.isText){var b=y;c<o.length&&o[c].from<b&&(b=o[c].from);for(var w=0;w<l.length;w++)l[w].to<b&&(b=l[w].to);b<y&&(u=m.cut(b-i),m=m.cut(0,b-i),y=b,v=-1)}var S=l.length?m.isInline&&!m.isLeaf?l.filter(function(e){return!e.inline}):l.slice():q;r(m,S,t.forChild(i,m),v),i=y}}(this.node,this.innerDeco,function(t,s,a){t.spec.marks?c.syncToMarks(t.spec.marks,r,e):t.type.side>=0&&!a&&c.syncToMarks(s==n.node.childCount?o.Mark.none:n.node.child(s).marks,r,e),c.placeWidget(t,e,i)},function(t,n,o,s){c.syncToMarks(t.marks,r,e),c.findNodeMatch(t,n,o,s)||c.updateNextNode(t,n,o,e,s)||c.addNode(t,n,o,e,i),i+=t.nodeSize}),c.syncToMarks(q,r,e),this.node.isTextblock&&c.addTextblockHacks(),c.destroyRest(),(c.changed||2==this.dirty)&&(a&&this.protectLocalComposition(e,a),function e(t,n,r){var o=t.firstChild,i=!1;for(var s=0;s<n.length;s++){var a=n[s],c=a.dom;if(c.parentNode==t){for(;c!=o;)o=ie(o),i=!0;o=o.nextSibling}else i=!0,t.insertBefore(c,o);if(a instanceof J){var l=o?o.previousSibling:t.lastChild;e(a.contentDOM,a.children,r),o=l?l.nextSibling:t.firstChild}}for(;o;)o=ie(o),i=!0;i&&r.trackWrites==t&&(r.trackWrites=null)}(this.contentDOM,this.children,e),s.ios&&function(e){if("UL"==e.nodeName||"OL"==e.nodeName){var t=e.style.cssText;e.style.cssText=t+"; list-style: square !important",window.getComputedStyle(e).listStyle,e.style.cssText=t}}(this.dom))},t.prototype.localCompositionNode=function(e,t){var n=e.state.selection,o=n.from,i=n.to;if(!(!(e.state.selection instanceof r.TextSelection)||o<t||i>t+this.node.content.size)){var s=e.root.getSelection(),a=function(e,t){for(;;){if(3==e.nodeType)return e;if(1==e.nodeType&&t>0){if(e.childNodes.length>t&&3==e.childNodes[t].nodeType)return e.childNodes[t];e=e.childNodes[t-1],t=y(e)}else{if(!(1==e.nodeType&&t<e.childNodes.length))return null;e=e.childNodes[t],t=0}}}(s.focusNode,s.focusOffset);if(a&&this.dom.contains(a.parentNode)){var c=a.nodeValue,l=function(e,t,n,r){for(var o=0,i=0;o<e.childCount&&i<=r;){var s=e.child(o++),a=i;if(i+=s.nodeSize,s.isText){for(var c=s.text;o<e.childCount;){var l=e.child(o++);if(i+=l.nodeSize,!l.isText)break;c+=l.text}if(i>=n){var u=c.lastIndexOf(t,r-a);if(u>=0&&u+t.length+a>=n)return a+u}}}return-1}(this.node.content,c,o-t,i-t);return l<0?null:{node:a,pos:l,text:c}}}},t.prototype.protectLocalComposition=function(e,t){var n=t.node,r=t.pos,o=t.text;if(!this.getDesc(n)){for(var i=n;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=null)}var s=new K(this,i,n,o);e.compositionNodes.push(s),this.children=ce(this.children,r,r+o.length,e,s)}},t.prototype.update=function(e,t,n,r){return!(3==this.dirty||!e.sameMarkup(this.node))&&(this.updateInner(e,t,n,r),!0)},t.prototype.updateInner=function(e,t,n,r){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0},t.prototype.updateOuterDeco=function(e){if(!oe(e,this.outerDeco)){var t=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=te(this.dom,this.nodeDOM,ee(this.outerDeco,this.node,t),ee(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=null,this.dom.pmViewDesc=this),this.outerDeco=e}},t.prototype.selectNode=function(){this.nodeDOM.classList.add("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||(this.dom.draggable=!0)},t.prototype.deselectNode=function(){this.nodeDOM.classList.remove("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||this.dom.removeAttribute("draggable")},Object.defineProperties(t.prototype,n),t}(j);function U(e,t,n,r,o){return re(r,t,e),new H(null,e,t,n,r,r,r,o,0)}var G=function(e){function t(t,n,r,o,i,s,a){e.call(this,t,n,r,o,i,null,s,a)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.parseRule=function(){for(var e=this.nodeDOM.parentNode;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}},t.prototype.update=function(e,t,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!e.sameMarkup(this.node))&&(this.updateOuterDeco(t),0==this.dirty&&e.text==this.node.text||e.text==this.nodeDOM.nodeValue||(this.nodeDOM.nodeValue=e.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=e,this.dirty=0,!0)},t.prototype.inParent=function(){for(var e=this.parent.contentDOM,t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1},t.prototype.domFromPos=function(e){return{node:this.nodeDOM,offset:e}},t.prototype.localPosFromDOM=function(t,n,r){return t==this.nodeDOM?this.posAtStart+Math.min(n,this.node.text.length):e.prototype.localPosFromDOM.call(this,t,n,r)},t.prototype.ignoreMutation=function(e){return"characterData"!=e.type&&"selection"!=e.type},t.prototype.slice=function(e,n,r){var o=this.node.cut(e,n),i=document.createTextNode(o.text);return new t(this.parent,o,this.outerDeco,this.innerDeco,i,i,r)},t}(H),X=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.parseRule=function(){return{ignore:!0}},t.prototype.matchesHack=function(){return 0==this.dirty},t}(j),Z=function(e){function t(t,n,r,o,i,s,a,c,l,u){e.call(this,t,n,r,o,i,s,a,l,u),this.spec=c}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.update=function(t,n,r,o){if(3==this.dirty)return!1;if(this.spec.update){var i=this.spec.update(t,n);return i&&this.updateInner(t,n,r,o),i}return!(!this.contentDOM&&!t.isLeaf)&&e.prototype.update.call(this,t,n,r,o)},t.prototype.selectNode=function(){this.spec.selectNode?this.spec.selectNode():e.prototype.selectNode.call(this)},t.prototype.deselectNode=function(){this.spec.deselectNode?this.spec.deselectNode():e.prototype.deselectNode.call(this)},t.prototype.setSelection=function(t,n,r,o){this.spec.setSelection?this.spec.setSelection(t,n,r):e.prototype.setSelection.call(this,t,n,r,o)},t.prototype.destroy=function(){this.spec.destroy&&this.spec.destroy(),e.prototype.destroy.call(this)},t.prototype.stopEvent=function(e){return!!this.spec.stopEvent&&this.spec.stopEvent(e)},t.prototype.ignoreMutation=function(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):e.prototype.ignoreMutation.call(this,t)},t}(H);function Y(e){e&&(this.nodeName=e)}Y.prototype=Object.create(null);var Q=[new Y];function ee(e,t,n){if(0==e.length)return Q;for(var r=n?Q[0]:new Y,o=[r],i=0;i<e.length;i++){var s=e[i].type.attrs,a=r;if(s)for(var c in s.nodeName&&o.push(a=new Y(s.nodeName)),s){var l=s[c];null!=l&&(n&&1==o.length&&o.push(a=r=new Y(t.isInline?"span":"div")),"class"==c?a.class=(a.class?a.class+" ":"")+l:"style"==c?a.style=(a.style?a.style+";":"")+l:"nodeName"!=c&&(a[c]=l))}}return o}function te(e,t,n,r){if(n==Q&&r==Q)return t;for(var o=t,i=0;i<r.length;i++){var s=r[i],a=n[i];if(i){var c=void 0;a&&a.nodeName==s.nodeName&&o!=e&&(c=o.parentNode)&&c.tagName.toLowerCase()==s.nodeName?o=c:((c=document.createElement(s.nodeName)).pmIsDeco=!0,c.appendChild(o),a=Q[0],o=c)}ne(o,a||Q[0],s)}return o}function ne(e,t,n){for(var r in t)"class"==r||"style"==r||"nodeName"==r||r in n||e.removeAttribute(r);for(var o in n)"class"!=o&&"style"!=o&&"nodeName"!=o&&n[o]!=t[o]&&e.setAttribute(o,n[o]);if(t.class!=n.class){for(var i=t.class?t.class.split(" "):q,s=n.class?n.class.split(" "):q,a=0;a<i.length;a++)-1==s.indexOf(i[a])&&e.classList.remove(i[a]);for(var c=0;c<s.length;c++)-1==i.indexOf(s[c])&&e.classList.add(s[c])}if(t.style!=n.style){if(t.style)for(var l,u=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g;l=u.exec(t.style);)e.style.removeProperty(l[1]);n.style&&(e.style.cssText+=n.style)}}function re(e,t,n){return te(e,e,Q,ee(t,n,1!=e.nodeType))}function oe(e,t){if(e.length!=t.length)return!1;for(var n=0;n<e.length;n++)if(!e[n].type.eq(t[n].type))return!1;return!0}function ie(e){var t=e.nextSibling;return e.parentNode.removeChild(e),t}var se=function(e,t){this.top=e,this.lock=t,this.index=0,this.stack=[],this.changed=!1;var n=function(e,t){for(var n=[],r=e.childCount,o=t.length-1;r>0&&o>=0;o--){var i=t[o],s=i.node;if(s){if(s!=e.child(r-1))break;n.push(i),--r}}return{nodes:n.reverse(),offset:r}}(e.node.content,e.children);this.preMatched=n.nodes,this.preMatchOffset=n.offset};function ae(e,t){return e.type.side-t.type.side}function ce(e,t,n,r,o){for(var i=[],s=0,a=0;s<e.length;s++){var c=e[s],l=a,u=a+=c.size;l>=n||u<=t?i.push(c):(l<t&&i.push(c.slice(0,t-l,r)),o&&(i.push(o),o=null),u>n&&i.push(c.slice(n-l,c.size,r)))}return i}function le(e,t){var n=e.root.getSelection(),o=e.state.doc;if(!n.focusNode)return null;var i=e.docView.nearestDesc(n.focusNode),s=i&&0==i.size,a=e.docView.posFromDOM(n.focusNode,n.focusOffset);if(a<0)return null;var c,l,u=o.resolve(a);if(w(n)){for(c=u;i&&!i.node;)i=i.parent;if(i&&i.node.isAtom&&r.NodeSelection.isSelectable(i.node)&&i.parent&&(!i.node.isInline||!function(e,t,n){for(var r=0==t,o=t==y(e);r||o;){if(e==n)return!0;var i=h(e);if(!(e=e.parentNode))return!1;r=r&&0==i,o=o&&i==y(e)}}(n.focusNode,n.focusOffset,i.dom))){var p=i.posBefore;l=new r.NodeSelection(a==p?u:o.resolve(p))}}else{var d=e.docView.posFromDOM(n.anchorNode,n.anchorOffset);if(d<0)return null;c=o.resolve(d)}l||(l=ge(e,c,u,"pointer"==t||e.state.selection.head<u.pos&&!s?1:-1));return l}function ue(e,t){var n=e.state.selection;if(me(e,n),e.editable?e.hasFocus():ye(e)&&document.activeElement&&document.activeElement.contains(e.dom)){if(e.domObserver.disconnectSelection(),e.cursorWrapper)!function(e){var t=e.root.getSelection(),n=document.createRange(),r=e.cursorWrapper.dom,o="IMG"==r.nodeName;o?n.setEnd(r.parentNode,h(r)+1):n.setEnd(r,0);n.collapse(!1),t.removeAllRanges(),t.addRange(n),!o&&!e.state.selection.visible&&s.ie&&s.ie_version<=11&&(r.disabled=!0,r.disabled=!1)}(e);else{var o,i,a=n.anchor,c=n.head;!pe||n instanceof r.TextSelection||(n.$from.parent.inlineContent||(o=he(e,n.from)),n.empty||n.$from.parent.inlineContent||(i=he(e,n.to))),e.docView.setSelection(a,c,e.root,t),pe&&(o&&fe(o),i&&fe(i)),n.visible?e.dom.classList.remove("ProseMirror-hideselection"):(e.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&function(e){var t=e.dom.ownerDocument;t.removeEventListener("selectionchange",e.hideSelectionGuard);var n=e.root.getSelection(),r=n.anchorNode,o=n.anchorOffset;t.addEventListener("selectionchange",e.hideSelectionGuard=function(){n.anchorNode==r&&n.anchorOffset==o||(t.removeEventListener("selectionchange",e.hideSelectionGuard),e.dom.classList.remove("ProseMirror-hideselection"))})}(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}}se.prototype.getPreMatch=function(e){return e>=this.preMatchOffset?this.preMatched[e-this.preMatchOffset]:null},se.prototype.destroyBetween=function(e,t){if(e!=t){for(var n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}},se.prototype.destroyRest=function(){this.destroyBetween(this.index,this.top.children.length)},se.prototype.syncToMarks=function(e,t,n){for(var r=0,o=this.stack.length>>1,i=Math.min(o,e.length);r<i&&(r==o-1?this.top:this.stack[r+1<<1]).matchesMark(e[r])&&!1!==e[r].type.spec.spanning;)r++;for(;r<o;)this.destroyRest(),this.top.dirty=0,this.index=this.stack.pop(),this.top=this.stack.pop(),o--;for(;o<e.length;){this.stack.push(this.top,this.index+1);for(var s=-1,a=this.index;a<Math.min(this.index+3,this.top.children.length);a++)if(this.top.children[a].matchesMark(e[o])){s=a;break}if(s>-1)s>this.index&&(this.changed=!0,this.destroyBetween(this.index,s)),this.top=this.top.children[this.index];else{var c=J.create(this.top,e[o],t,n);this.top.children.splice(this.index,0,c),this.top=c,this.changed=!0}this.index=0,o++}},se.prototype.findNodeMatch=function(e,t,n,r){var o=-1,i=r<0?void 0:this.getPreMatch(r),s=this.top.children;if(i&&i.matchesNode(e,t,n))o=s.indexOf(i);else for(var a=this.index,c=Math.min(s.length,a+5);a<c;a++){var l=s[a];if(l.matchesNode(e,t,n)&&this.preMatched.indexOf(l)<0){o=a;break}}return!(o<0)&&(this.destroyBetween(this.index,o),this.index++,!0)},se.prototype.updateNextNode=function(e,t,n,r,o){for(var i=this.index;i<this.top.children.length;i++){var s=this.top.children[i];if(s instanceof H){var a=this.preMatched.indexOf(s);if(a>-1&&a+this.preMatchOffset!=o)return!1;var c=s.dom;if(!(this.lock&&(c==this.lock||1==c.nodeType&&c.contains(this.lock.parentNode))&&!(e.isText&&s.node&&s.node.isText&&s.nodeDOM.nodeValue==e.text&&3!=s.dirty&&oe(t,s.outerDeco)))&&s.update(e,t,n,r))return this.destroyBetween(this.index,i),s.dom!=c&&(this.changed=!0),this.index++,!0;break}}return!1},se.prototype.addNode=function(e,t,n,r,o){this.top.children.splice(this.index++,0,H.create(this.top,e,t,n,r,o)),this.changed=!0},se.prototype.placeWidget=function(e,t,n){var r=this.index<this.top.children.length?this.top.children[this.index]:null;if(!r||!r.matchesWidget(e)||e!=r.widget&&r.widget.type.toDOM.parentNode){var o=new W(this.top,e,t,n);this.top.children.splice(this.index++,0,o),this.changed=!0}else this.index++},se.prototype.addTextblockHacks=function(){for(var e=this.top.children[this.index-1];e instanceof J;)e=e.children[e.children.length-1];if(!e||!(e instanceof G)||/\n$/.test(e.node.text))if(this.index<this.top.children.length&&this.top.children[this.index].matchesHack())this.index++;else{var t=document.createElement("br");this.top.children.splice(this.index++,0,new X(this.top,q,t,null)),this.changed=!0}};var pe=s.safari||s.chrome&&s.chrome_version<63;function he(e,t){var n=e.docView.domFromPos(t),r=n.node,o=n.offset,i=o<r.childNodes.length?r.childNodes[o]:null,a=o?r.childNodes[o-1]:null;if(s.safari&&i&&"false"==i.contentEditable)return de(i);if(!(i&&"false"!=i.contentEditable||a&&"false"!=a.contentEditable)){if(i)return de(i);if(a)return de(a)}}function de(e){return e.contentEditable="true",s.safari&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function fe(e){e.contentEditable="false",e.wasDraggable&&(e.draggable=!0,e.wasDraggable=null)}function me(e,t){if(t instanceof r.NodeSelection){var n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(ve(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else ve(e)}function ve(e){e.lastSelectedViewDesc&&(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),e.lastSelectedViewDesc=null)}function ge(e,t,n,o){return e.someProp("createSelectionBetween",function(r){return r(e,t,n)})||r.TextSelection.between(t,n,o)}function ye(e){var t=e.root.getSelection();if(!t.anchorNode)return!1;try{return e.dom.contains(3==t.anchorNode.nodeType?t.anchorNode.parentNode:t.anchorNode)&&(e.editable||e.dom.contains(3==t.focusNode.nodeType?t.focusNode.parentNode:t.focusNode))}catch(e){return!1}}function be(e,t){var n=e.selection,o=n.$anchor,i=n.$head,s=t>0?o.max(i):o.min(i),a=s.parent.inlineContent?s.depth?e.doc.resolve(t>0?s.after():s.before()):null:s;return a&&r.Selection.findFrom(a,t)}function we(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function Se(e,t,n){var o=e.state.selection;if(!(o instanceof r.TextSelection)){if(o instanceof r.NodeSelection&&o.node.isInline)return we(e,new r.TextSelection(t>0?o.$to:o.$from));var i=be(e.state,t);return!!i&&we(e,i)}if(!o.empty||n.indexOf("s")>-1)return!1;if(e.endOfTextblock(t>0?"right":"left")){var a=be(e.state,t);return!!(a&&a instanceof r.NodeSelection)&&we(e,a)}if(!(s.mac&&n.indexOf("m")>-1)){var c,l=o.$head,u=l.textOffset?null:t<0?l.nodeBefore:l.nodeAfter;if(!u||u.isText)return!1;var p=t<0?l.pos-u.nodeSize:l.pos;return!!(u.isAtom||(c=e.docView.descAt(p))&&!c.contentDOM)&&(r.NodeSelection.isSelectable(u)?we(e,new r.NodeSelection(t<0?e.state.doc.resolve(l.pos-u.nodeSize):l)):!!s.webkit&&we(e,new r.TextSelection(e.state.doc.resolve(t<0?p:p+u.nodeSize))))}}function xe(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function ke(e){var t=e.pmViewDesc;return t&&0==t.size&&(e.nextSibling||"BR"!=e.nodeName)}function Ce(e){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n){var o,i,a=!1;for(s.gecko&&1==n.nodeType&&r<xe(n)&&ke(n.childNodes[r])&&(a=!0);;)if(r>0){if(1!=n.nodeType)break;var c=n.childNodes[r-1];if(ke(c))o=n,i=--r;else{if(3!=c.nodeType)break;r=(n=c).nodeValue.length}}else{if(Me(n))break;for(var l=n.previousSibling;l&&ke(l);)o=n.parentNode,i=h(l),l=l.previousSibling;if(l)r=xe(n=l);else{if((n=n.parentNode)==e.dom)break;r=0}}a?Ne(e,t,n,r):o&&Ne(e,t,o,i)}}function Oe(e){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n){for(var o,i,s=xe(n);;)if(r<s){if(1!=n.nodeType)break;if(!ke(n.childNodes[r]))break;o=n,i=++r}else{if(Me(n))break;for(var a=n.nextSibling;a&&ke(a);)o=a.parentNode,i=h(a)+1,a=a.nextSibling;if(a)r=0,s=xe(n=a);else{if((n=n.parentNode)==e.dom)break;r=s=0}}o&&Ne(e,t,o,i)}}function Me(e){var t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function Ne(e,t,n,r){if(w(t)){var o=document.createRange();o.setEnd(n,r),o.setStart(n,r),t.removeAllRanges(),t.addRange(o)}else t.extend&&t.extend(n,r);e.domObserver.setCurSelection();var i=e.state;setTimeout(function(){e.state==i&&ue(e)},50)}function Te(e,t,n){var o=e.state.selection;if(o instanceof r.TextSelection&&!o.empty||n.indexOf("s")>-1)return!1;if(s.mac&&n.indexOf("m")>-1)return!1;var i=o.$from,a=o.$to;if(!i.parent.inlineContent||e.endOfTextblock(t<0?"up":"down")){var c=be(e.state,t);if(c&&c instanceof r.NodeSelection)return we(e,c)}if(!i.parent.inlineContent){var l=r.Selection.findFrom(t<0?i:a,t);return!l||we(e,l)}return!1}function De(e,t){if(!(e.state.selection instanceof r.TextSelection))return!0;var n=e.state.selection,o=n.$head,i=n.$anchor,s=n.empty;if(!o.sameParent(i))return!0;if(!s)return!1;if(e.endOfTextblock(t>0?"forward":"backward"))return!0;var a=!o.textOffset&&(t<0?o.nodeBefore:o.nodeAfter);if(a&&!a.isText){var c=e.state.tr;return t<0?c.delete(o.pos-a.nodeSize,o.pos):c.delete(o.pos,o.pos+a.nodeSize),e.dispatch(c),!0}return!1}function Ae(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function Ee(e,t){var n=t.keyCode,r=function(e){var t="";return e.ctrlKey&&(t+="c"),e.metaKey&&(t+="m"),e.altKey&&(t+="a"),e.shiftKey&&(t+="s"),t}(t);return 8==n||s.mac&&72==n&&"c"==r?De(e,-1)||Ce(e):46==n||s.mac&&68==n&&"c"==r?De(e,1)||Oe(e):13==n||27==n||(37==n?Se(e,-1,r)||Ce(e):39==n?Se(e,1,r)||Oe(e):38==n?Te(e,-1,r)||Ce(e):40==n?function(e){if(s.safari&&!(e.state.selection.$head.parentOffset>0)){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n&&1==n.nodeType&&0==r&&n.firstChild&&"false"==n.firstChild.contentEditable){var o=n.firstChild;Ae(e,o,!0),setTimeout(function(){return Ae(e,o,!1)},20)}}}(e)||Te(e,1,r)||Oe(e):r==(s.mac?"m":"c")&&(66==n||73==n||89==n||90==n))}function Re(e){var t=e.pmViewDesc;if(t)return t.parseRule();if("BR"==e.nodeName&&e.parentNode){if(s.safari&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){var n=document.createElement("div");return n.appendChild(document.createElement("li")),{skip:n}}if(e.parentNode.lastChild==e||s.safari&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if("IMG"==e.nodeName&&e.getAttribute("mark-placeholder"))return{ignore:!0}}function _e(e,t,n,i,a){if(t<0){var c=e.lastSelectionTime>Date.now()-50?e.lastSelectionOrigin:null,l=le(e,c);if(l&&!e.state.selection.eq(l)){var u=e.state.tr.setSelection(l);"pointer"==c?u.setMeta("pointer",!0):"key"==c&&u.scrollIntoView(),e.dispatch(u)}}else{var p=e.state.doc.resolve(t),h=p.sharedDepth(n);t=p.before(h+1),n=e.state.doc.resolve(n).after(h+1);var d,f,m=e.state.selection,v=function(e,t,n){var r=e.docView.parseRange(t,n),i=r.node,a=r.fromOffset,c=r.toOffset,l=r.from,u=r.to,p=e.root.getSelection(),h=null,d=p.anchorNode;if(d&&e.dom.contains(1==d.nodeType?d:d.parentNode)&&(h=[{node:d,offset:p.anchorOffset}],w(p)||h.push({node:p.focusNode,offset:p.focusOffset})),s.chrome&&8===e.lastKeyCode)for(var f=c;f>a;f--){var m=i.childNodes[f-1],v=m.pmViewDesc;if("BR"==m.nodeType&&!v){c=f;break}if(!v||v.size)break}var g=e.state.doc,y=e.someProp("domParser")||o.DOMParser.fromSchema(e.state.schema),b=g.resolve(l),S=null,x=y.parse(i,{topNode:b.parent,topMatch:b.parent.contentMatchAt(b.index()),topOpen:!0,from:a,to:c,preserveWhitespace:!b.parent.type.spec.code||"full",editableContent:!0,findPositions:h,ruleFromNode:Re,context:b});if(h&&null!=h[0].pos){var k=h[0].pos,C=h[1]&&h[1].pos;null==C&&(C=k),S={anchor:k+l,head:C+l}}return{doc:x,sel:S,from:l,to:u}}(e,t,n),g=e.state.doc,y=g.slice(v.from,v.to);8===e.lastKeyCode&&Date.now()-100<e.lastKeyCodeTime?(d=e.state.selection.to,f="end"):(d=e.state.selection.from,f="start"),e.lastKeyCode=null;var b=function(e,t,n,r,o){var i=e.findDiffStart(t,n);if(null==i)return null;var s=e.findDiffEnd(t,n+e.size,n+t.size),a=s.a,c=s.b;if("end"==o){var l=Math.max(0,i-Math.min(a,c));r-=a+l-i}if(a<i&&e.size<t.size){var u=r<=i&&r>=a?i-r:0;c=(i-=u)+(c-a),a=i}else if(c<i){var p=r<=i&&r>=c?i-r:0;a=(i-=p)+(a-c),c=i}return{start:i,endA:a,endB:c}}(y.content,v.doc.content,v.from,d,f);if(!b){if(!(i&&m instanceof r.TextSelection&&!m.empty&&m.$head.sameParent(m.$anchor))||e.composing||v.sel&&v.sel.anchor!=v.sel.head){if(v.sel){var x=Pe(e,e.state.doc,v.sel);x&&!x.eq(e.state.selection)&&e.dispatch(e.state.tr.setSelection(x))}return}b={start:m.from,endA:m.to,endB:m.to}}e.domChangeCount++,e.state.selection.from<e.state.selection.to&&b.start==b.endB&&e.state.selection instanceof r.TextSelection&&(b.start>e.state.selection.from&&b.start<=e.state.selection.from+2?b.start=e.state.selection.from:b.endA<e.state.selection.to&&b.endA>=e.state.selection.to-2&&(b.endB+=e.state.selection.to-b.endA,b.endA=e.state.selection.to)),s.ie&&s.ie_version<=11&&b.endB==b.start+1&&b.endA==b.start&&b.start>v.from&&"  "==v.doc.textBetween(b.start-v.from-1,b.start-v.from+1)&&(b.start--,b.endA--,b.endB--);var k,C=v.doc.resolveNoCache(b.start-v.from),O=v.doc.resolveNoCache(b.endB-v.from),M=C.sameParent(O)&&C.parent.inlineContent;if((s.ios&&e.lastIOSEnter>Date.now()-225&&(!M||a.some(function(e){return"DIV"==e.nodeName||"P"==e.nodeName}))||!M&&C.pos<v.doc.content.size&&(k=r.Selection.findFrom(v.doc.resolve(C.pos+1),1,!0))&&k.head==O.pos)&&e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))}))e.lastIOSEnter=0;else if(e.state.selection.anchor>b.start&&function(e,t,n,r,o){if(!r.parent.isTextblock||n-t<=o.pos-r.pos||$e(r,!0,!1)<o.pos)return!1;var i=e.resolve(t);if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;var s=e.resolve($e(i,!0,!0));if(!s.parent.isTextblock||s.pos>n||$e(s,!0,!1)<n)return!1;return r.parent.content.cut(r.parentOffset).eq(s.parent.content)}(g,b.start,b.endA,C,O)&&e.someProp("handleKeyDown",function(t){return t(e,S(8,"Backspace"))}))s.android&&s.chrome&&e.domObserver.suppressSelectionUpdates();else{s.android&&!M&&C.start()!=O.start()&&0==O.parentOffset&&C.depth==O.depth&&v.sel&&v.sel.anchor==v.sel.head&&v.sel.head==b.endA&&(b.endB-=2,O=v.doc.resolveNoCache(b.endB-v.from),setTimeout(function(){e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))})},20));var N,T,D,A,E=b.start,R=b.endA;if(M)if(C.pos==O.pos)s.ie&&s.ie_version<=11&&0==C.parentOffset&&(e.domObserver.suppressSelectionUpdates(),setTimeout(function(){return ue(e)},20)),N=e.state.tr.delete(E,R),T=g.resolve(b.start).marksAcross(g.resolve(b.endA));else if(b.endA==b.endB&&(A=g.resolve(b.start))&&(D=function(e,t){for(var n,r,i,s=e.firstChild.marks,a=t.firstChild.marks,c=s,l=a,u=0;u<a.length;u++)c=a[u].removeFromSet(c);for(var p=0;p<s.length;p++)l=s[p].removeFromSet(l);if(1==c.length&&0==l.length)r=c[0],n="add",i=function(e){return e.mark(r.addToSet(e.marks))};else{if(0!=c.length||1!=l.length)return null;r=l[0],n="remove",i=function(e){return e.mark(r.removeFromSet(e.marks))}}for(var h=[],d=0;d<t.childCount;d++)h.push(i(t.child(d)));if(o.Fragment.from(h).eq(e))return{mark:r,type:n}}(C.parent.content.cut(C.parentOffset,O.parentOffset),A.parent.content.cut(A.parentOffset,b.endA-A.start()))))N=e.state.tr,"add"==D.type?N.addMark(E,R,D.mark):N.removeMark(E,R,D.mark);else if(C.parent.child(C.index()).isText&&C.index()==O.index()-(O.textOffset?0:1)){var _=C.parent.textBetween(C.parentOffset,O.parentOffset);if(e.someProp("handleTextInput",function(t){return t(e,E,R,_)}))return;N=e.state.tr.insertText(_,E,R)}if(N||(N=e.state.tr.replace(E,R,v.doc.slice(b.start-v.from,b.endB-v.from))),v.sel){var P=Pe(e,N.doc,v.sel);P&&!(s.chrome&&s.android&&e.composing&&P.empty&&(P.head==E||P.head==N.mapping.map(R)-1)||s.ie&&P.empty&&P.head==E)&&N.setSelection(P)}T&&N.ensureMarks(T),e.dispatch(N.scrollIntoView())}}}function Pe(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:ge(e,t.resolve(n.anchor),t.resolve(n.head))}function $e(e,t,n){for(var r=e.depth,o=t?e.end():e.pos;r>0&&(t||e.indexAfter(r)==e.node(r).childCount);)r--,o++,t=!1;if(n)for(var i=e.node(r).maybeChild(e.indexAfter(r));i&&!i.isLeaf;)i=i.firstChild,o++;return o}function Ie(e,t){for(var n=[],r=t.content,i=t.openStart,s=t.openEnd;i>1&&s>1&&1==r.childCount&&1==r.firstChild.childCount;){i--,s--;var a=r.firstChild;n.push(a.type.name,a.type.hasRequiredAttrs()?a.attrs:null),r=a.content}var c=e.someProp("clipboardSerializer")||o.DOMSerializer.fromSchema(e.state.schema),l=Le(),u=l.createElement("div");u.appendChild(c.serializeFragment(r,{document:l}));for(var p,h=u.firstChild;h&&1==h.nodeType&&(p=Ve[h.nodeName.toLowerCase()]);){for(var d=p.length-1;d>=0;d--){for(var f=l.createElement(p[d]);u.firstChild;)f.appendChild(u.firstChild);u.appendChild(f)}h=u.firstChild}return h&&1==h.nodeType&&h.setAttribute("data-pm-slice",i+" "+s+" "+JSON.stringify(n)),{dom:u,text:e.someProp("clipboardTextSerializer",function(e){return e(t)})||t.content.textBetween(0,t.content.size,"\n\n")}}function ze(e,t,n,r,i){var s,a,c=i.parent.type.spec.code;if(!n&&!t)return null;var l=t&&(r||c||!n);if(l){if(e.someProp("transformPastedText",function(e){t=e(t,c||r)}),c)return new o.Slice(o.Fragment.from(e.state.schema.text(t)),0,0);var u=e.someProp("clipboardTextParser",function(e){return e(t,i,r)});u?a=u:(s=document.createElement("div"),t.trim().split(/(?:\r\n?|\n)+/).forEach(function(e){s.appendChild(document.createElement("p")).textContent=e}))}else e.someProp("transformPastedHTML",function(e){n=e(n)}),s=function(e){var t=/(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));var n,r=Le().createElement("div"),o=/(?:<meta [^>]*>)*<([a-z][^>\s]+)/i.exec(e),i=0;(n=o&&Ve[o[1].toLowerCase()])&&(e=n.map(function(e){return"<"+e+">"}).join("")+e+n.map(function(e){return"</"+e+">"}).reverse().join(""),i=n.length);r.innerHTML=e;for(var s=0;s<i;s++)r=r.firstChild;return r}(n);var p=s&&s.querySelector("[data-pm-slice]"),h=p&&/^(\d+) (\d+) (.*)/.exec(p.getAttribute("data-pm-slice"));if(!a){var d=e.someProp("clipboardParser")||e.someProp("domParser")||o.DOMParser.fromSchema(e.state.schema);a=d.parseSlice(s,{preserveWhitespace:!(!l&&!h),context:i})}return a=h?function(e,t){if(!e.size)return e;var n,r=e.content.firstChild.type.schema;try{n=JSON.parse(t)}catch(t){return e}for(var i=e.content,s=e.openStart,a=e.openEnd,c=n.length-2;c>=0;c-=2){var l=r.nodes[n[c]];if(!l||l.hasRequiredAttrs())break;i=o.Fragment.from(l.create(n[c+1],i)),s++,a++}return new o.Slice(i,s,a)}(function(e,t,n){t<e.openStart&&(e=new o.Slice(Fe(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd));n<e.openEnd&&(e=new o.Slice(Fe(e.content,1,n,e.openEnd,0,0),e.openStart,n));return e}(a,+h[1],+h[2]),h[3]):o.Slice.maxOpen(function(e,t){if(e.childCount<2)return e;for(var n=function(n){var r=t.node(n),i=r.contentMatchAt(t.index(n)),s=void 0,a=[];if(e.forEach(function(e){if(a){var t,n=i.findWrapping(e.type);if(!n)return a=null;if(t=a.length&&s.length&&function e(t,n,r,i,s){if(s<t.length&&s<n.length&&t[s]==n[s]){var a=e(t,n,r,i.lastChild,s+1);if(a)return i.copy(i.content.replaceChild(i.childCount-1,a));var c=i.contentMatchAt(i.childCount);if(c.matchType(s==t.length-1?r.type:t[s+1]))return i.copy(i.content.append(o.Fragment.from(Be(r,t,s+1))))}}(n,s,e,a[a.length-1],0))a[a.length-1]=t;else{a.length&&(a[a.length-1]=function e(t,n){if(0==n)return t;var r=t.content.replaceChild(t.childCount-1,e(t.lastChild,n-1));var i=t.contentMatchAt(t.childCount).fillBefore(o.Fragment.empty,!0);return t.copy(r.append(i))}(a[a.length-1],s.length));var r=Be(e,n);a.push(r),i=i.matchType(r.type,r.attrs),s=n}}}),a)return{v:o.Fragment.from(a)}},r=t.depth;r>=0;r--){var i=n(r);if(i)return i.v}return e}(a.content,i),!1),e.someProp("transformPasted",function(e){a=e(a)}),a}function Be(e,t,n){void 0===n&&(n=0);for(var r=t.length-1;r>=n;r--)e=t[r].create(null,o.Fragment.from(e));return e}function Fe(e,t,n,r,i,s){var a=t<0?e.firstChild:e.lastChild,c=a.content;return i<r-1&&(c=Fe(c,t,n,r,i+1,s)),i>=n&&(c=t<0?a.contentMatchAt(0).fillBefore(c,e.childCount>1||s<=i).append(c):c.append(a.contentMatchAt(a.childCount).fillBefore(o.Fragment.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,a.copy(c))}var Ve={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]},je=null;function Le(){return je||(je=document.implementation.createHTMLDocument("title"))}var qe={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},We=s.ie&&s.ie_version<=11,Ke=function(){this.anchorNode=this.anchorOffset=this.focusNode=this.focusOffset=null};Ke.prototype.set=function(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset},Ke.prototype.eq=function(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset};var Je=function(e,t){var n=this;this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=window.MutationObserver&&new window.MutationObserver(function(e){for(var t=0;t<e.length;t++)n.queue.push(e[t]);s.ie&&s.ie_version<=11&&e.some(function(e){return"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length})?n.flushSoon():n.flush()}),this.currentSelection=new Ke,We&&(this.onCharData=function(e){n.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),n.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.suppressingSelectionUpdates=!1};Je.prototype.flushSoon=function(){var e=this;this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(function(){e.flushingSoon=-1,e.flush()},20))},Je.prototype.forceFlush=function(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())},Je.prototype.start=function(){this.observer&&this.observer.observe(this.view.dom,qe),We&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()},Je.prototype.stop=function(){var e=this;if(this.observer){var t=this.observer.takeRecords();if(t.length){for(var n=0;n<t.length;n++)this.queue.push(t[n]);window.setTimeout(function(){return e.flush()},20)}this.observer.disconnect()}We&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()},Je.prototype.connectSelection=function(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)},Je.prototype.disconnectSelection=function(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)},Je.prototype.suppressSelectionUpdates=function(){var e=this;this.suppressingSelectionUpdates=!0,setTimeout(function(){return e.suppressingSelectionUpdates=!1},50)},Je.prototype.onSelectionChange=function(){if(function(e){return(!e.editable||e.root.activeElement==e.dom)&&ye(e)}(this.view)){if(this.suppressingSelectionUpdates)return ue(this.view);if(s.ie&&s.ie_version<=11&&!this.view.state.selection.empty){var e=this.view.root.getSelection();if(e.focusNode&&m(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}},Je.prototype.setCurSelection=function(){this.currentSelection.set(this.view.root.getSelection())},Je.prototype.ignoreSelectionChange=function(e){if(0==e.rangeCount)return!0;var t=e.getRangeAt(0).commonAncestorContainer,n=this.view.docView.nearestDesc(t);return n&&n.ignoreMutation({type:"selection",target:3==t.nodeType?t.parentNode:t})?(this.setCurSelection(),!0):void 0},Je.prototype.flush=function(){if(this.view.docView&&!(this.flushingSoon>-1)){var e=this.observer?this.observer.takeRecords():[];this.queue.length&&(e=this.queue.concat(e),this.queue.length=0);var t=this.view.root.getSelection(),n=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(t)&&ye(this.view)&&!this.ignoreSelectionChange(t),r=-1,o=-1,i=!1,a=[];if(this.view.editable)for(var c=0;c<e.length;c++){var l=this.registerMutation(e[c],a);l&&(r=r<0?l.from:Math.min(l.from,r),o=o<0?l.to:Math.max(l.to,o),l.typeOver&&(i=!0))}if(s.gecko&&a.length>1){var u=a.filter(function(e){return"BR"==e.nodeName});if(2==u.length){var p=u[0],h=u[1];p.parentNode&&p.parentNode.parentNode==h.parentNode?h.remove():p.remove()}}(r>-1||n)&&(r>-1&&(this.view.docView.markDirty(r,o),function(e){if(He)return;He=!0,"normal"==getComputedStyle(e.dom).whiteSpace&&console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.")}(this.view)),this.handleDOMChange(r,o,i,a),this.view.docView.dirty?this.view.updateState(this.view.state):this.currentSelection.eq(t)||ue(this.view))}},Je.prototype.registerMutation=function(e,t){if(t.indexOf(e.target)>-1)return null;var n=this.view.docView.nearestDesc(e.target);if("attributes"==e.type&&(n==this.view.docView||"contenteditable"==e.attributeName||"style"==e.attributeName&&!e.oldValue&&!e.target.getAttribute("style")))return null;if(!n||n.ignoreMutation(e))return null;if("childList"==e.type){var r=e.previousSibling,o=e.nextSibling;if(s.ie&&s.ie_version<=11&&e.addedNodes.length)for(var i=0;i<e.addedNodes.length;i++){var a=e.addedNodes[i],c=a.previousSibling,l=a.nextSibling;(!c||Array.prototype.indexOf.call(e.addedNodes,c)<0)&&(r=c),(!l||Array.prototype.indexOf.call(e.addedNodes,l)<0)&&(o=l)}for(var u=r&&r.parentNode==e.target?h(r)+1:0,p=n.localPosFromDOM(e.target,u,-1),d=o&&o.parentNode==e.target?h(o):e.target.childNodes.length,f=0;f<e.addedNodes.length;f++)t.push(e.addedNodes[f]);return{from:p,to:n.localPosFromDOM(e.target,d,1)}}return"attributes"==e.type?{from:n.posAtStart-n.border,to:n.posAtEnd+n.border}:{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}};var He=!1;var Ue={},Ge={};function Xe(e,t){e.lastSelectionOrigin=t,e.lastSelectionTime=Date.now()}function Ze(e){e.someProp("handleDOMEvents",function(t){for(var n in t)e.eventHandlers[n]||e.dom.addEventListener(n,e.eventHandlers[n]=function(t){return Ye(e,t)})})}function Ye(e,t){return e.someProp("handleDOMEvents",function(n){var r=n[t.type];return!!r&&(r(e,t)||t.defaultPrevented)})}function Qe(e){return{left:e.clientX,top:e.clientY}}function et(e,t,n,r,o){if(-1==r)return!1;for(var i=e.state.doc.resolve(r),s=function(r){if(e.someProp(t,function(t){return r>i.depth?t(e,n,i.nodeAfter,i.before(r),o,!0):t(e,n,i.node(r),i.before(r),o,!1)}))return{v:!0}},a=i.depth+1;a>0;a--){var c=s(a);if(c)return c.v}return!1}function tt(e,t,n){e.focused||e.focus();var r=e.state.tr.setSelection(t);"pointer"==n&&r.setMeta("pointer",!0),e.dispatch(r)}function nt(e,t,n,o,i){return et(e,"handleClickOn",t,n,o)||e.someProp("handleClick",function(n){return n(e,t,o)})||(i?function(e,t){if(-1==t)return!1;var n,o,i=e.state.selection;i instanceof r.NodeSelection&&(n=i.node);for(var s=e.state.doc.resolve(t),a=s.depth+1;a>0;a--){var c=a>s.depth?s.nodeAfter:s.node(a);if(r.NodeSelection.isSelectable(c)){o=n&&i.$from.depth>0&&a>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos?s.before(i.$from.depth):s.before(a);break}}return null!=o&&(tt(e,r.NodeSelection.create(e.state.doc,o),"pointer"),!0)}(e,n):function(e,t){if(-1==t)return!1;var n=e.state.doc.resolve(t),o=n.nodeAfter;return!!(o&&o.isAtom&&r.NodeSelection.isSelectable(o))&&(tt(e,new r.NodeSelection(n),"pointer"),!0)}(e,n))}function rt(e,t,n,o){return et(e,"handleTripleClickOn",t,n,o)||e.someProp("handleTripleClick",function(n){return n(e,t,o)})||function(e,t){var n=e.state.doc;if(-1==t)return!!n.inlineContent&&(tt(e,r.TextSelection.create(n,0,n.content.size),"pointer"),!0);for(var o=n.resolve(t),i=o.depth+1;i>0;i--){var s=i>o.depth?o.nodeAfter:o.node(i),a=o.before(i);if(s.inlineContent)tt(e,r.TextSelection.create(n,a+1,a+1+s.content.size),"pointer");else{if(!r.NodeSelection.isSelectable(s))continue;tt(e,r.NodeSelection.create(n,a),"pointer")}return!0}}(e,n)}function ot(e){return pt(e)}Ge.keydown=function(e,t){if(e.shiftKey=16==t.keyCode||t.shiftKey,!at(e,t))if(e.domObserver.forceFlush(),e.lastKeyCode=t.keyCode,e.lastKeyCodeTime=Date.now(),!s.ios||13!=t.keyCode||t.ctrlKey||t.altKey||t.metaKey)e.someProp("handleKeyDown",function(n){return n(e,t)})||Ee(e,t)?t.preventDefault():Xe(e,"key");else{var n=Date.now();e.lastIOSEnter=n,e.lastIOSEnterFallbackTimeout=setTimeout(function(){e.lastIOSEnter==n&&(e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))}),e.lastIOSEnter=0)},200)}},Ge.keyup=function(e,t){16==t.keyCode&&(e.shiftKey=!1)},Ge.keypress=function(e,t){if(!(at(e,t)||!t.charCode||t.ctrlKey&&!t.altKey||s.mac&&t.metaKey))if(e.someProp("handleKeyPress",function(n){return n(e,t)}))t.preventDefault();else{var n=e.state.selection;if(!(n instanceof r.TextSelection&&n.$from.sameParent(n.$to))){var o=String.fromCharCode(t.charCode);e.someProp("handleTextInput",function(t){return t(e,n.$from.pos,n.$to.pos,o)})||e.dispatch(e.state.tr.insertText(o).scrollIntoView()),t.preventDefault()}}};var it=s.mac?"metaKey":"ctrlKey";Ue.mousedown=function(e,t){e.shiftKey=t.shiftKey;var n=ot(e),r=Date.now(),o="singleClick";r-e.lastClick.time<500&&function(e,t){var n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}(t,e.lastClick)&&!t[it]&&("singleClick"==e.lastClick.type?o="doubleClick":"doubleClick"==e.lastClick.type&&(o="tripleClick")),e.lastClick={time:r,x:t.clientX,y:t.clientY,type:o};var i=e.posAtCoords(Qe(t));i&&("singleClick"==o?e.mouseDown=new st(e,i,t,n):("doubleClick"==o?function(e,t,n,r){return et(e,"handleDoubleClickOn",t,n,r)||e.someProp("handleDoubleClick",function(n){return n(e,t,r)})}:rt)(e,i.pos,i.inside,t)?t.preventDefault():Xe(e,"pointer"))};var st=function(e,t,n,o){var i,a,c=this;if(this.view=e,this.startDoc=e.state.doc,this.pos=t,this.event=n,this.flushed=o,this.selectNode=n[it],this.allowDefault=n.shiftKey,t.inside>-1)i=e.state.doc.nodeAt(t.inside),a=t.inside;else{var l=e.state.doc.resolve(t.pos);i=l.parent,a=l.depth?l.before():0}this.mightDrag=null;var u=o?null:n.target,p=u?e.docView.nearestDesc(u,!0):null;this.target=p?p.dom:null,(i.type.spec.draggable&&!1!==i.type.spec.selectable||e.state.selection instanceof r.NodeSelection&&a==e.state.selection.from)&&(this.mightDrag={node:i,pos:a,addAttr:this.target&&!this.target.draggable,setUneditable:this.target&&s.gecko&&!this.target.hasAttribute("contentEditable")}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(function(){return c.target.setAttribute("contentEditable","false")},20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),Xe(e,"pointer")};function at(e,t){return!!e.composing||!!(s.safari&&Math.abs(t.timeStamp-e.compositionEndedAt)<500)&&(e.compositionEndedAt=-2e8,!0)}st.prototype.done=function(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.view.mouseDown=null},st.prototype.up=function(e){if(this.done(),this.view.dom.contains(3==e.target.nodeType?e.target.parentNode:e.target)){var t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(Qe(e))),this.allowDefault||!t?Xe(this.view,"pointer"):nt(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():this.flushed||s.safari&&this.mightDrag&&!this.mightDrag.node.isAtom||s.chrome&&!(this.view.state.selection instanceof r.TextSelection)&&(t.pos==this.view.state.selection.from||t.pos==this.view.state.selection.to)?(tt(this.view,r.Selection.near(this.view.state.doc.resolve(t.pos)),"pointer"),e.preventDefault()):Xe(this.view,"pointer")}},st.prototype.move=function(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0),Xe(this.view,"pointer")},Ue.touchdown=function(e){ot(e),Xe(e,"pointer")},Ue.contextmenu=function(e){return ot(e)};var ct=s.android?5e3:-1;function lt(e,t){clearTimeout(e.composingTimeout),t>-1&&(e.composingTimeout=setTimeout(function(){return pt(e)},t))}function ut(e){for(e.composing=!1;e.compositionNodes.length>0;)e.compositionNodes.pop().markParentsDirty()}function pt(e,t){if(e.domObserver.forceFlush(),ut(e),t||e.docView.dirty){var n=le(e);return n&&!n.eq(e.state.selection)?e.dispatch(e.state.tr.setSelection(n)):e.updateState(e.state),!0}return!1}Ge.compositionstart=Ge.compositionupdate=function(e){if(!e.composing){e.domObserver.flush();var t=e.state,n=t.selection.$from;if(t.selection.empty&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(function(e){return!1===e.type.spec.inclusive})))e.markCursor=e.state.storedMarks||n.marks(),pt(e,!0),e.markCursor=null;else if(pt(e),s.gecko&&t.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length)for(var r=e.root.getSelection(),o=r.focusNode,i=r.focusOffset;o&&1==o.nodeType&&0!=i;){var a=i<0?o.lastChild:o.childNodes[i-1];if(!a)break;if(3==a.nodeType){r.collapse(a,a.nodeValue.length);break}o=a,i=-1}e.composing=!0}lt(e,ct)},Ge.compositionend=function(e,t){e.composing&&(e.composing=!1,e.compositionEndedAt=t.timeStamp,lt(e,20))};var ht=s.ie&&s.ie_version<15||s.ios&&s.webkit_version<604;function dt(e,t,n,r){var i=ze(e,t,n,e.shiftKey,e.state.selection.$from);if(!e.someProp("handlePaste",function(t){return t(e,r,i||o.Slice.empty)})&&i){var s=function(e){return 0==e.openStart&&0==e.openEnd&&1==e.content.childCount?e.content.firstChild:null}(i),a=s?e.state.tr.replaceSelectionWith(s,e.shiftKey):e.state.tr.replaceSelection(i);e.dispatch(a.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste"))}}Ue.copy=Ge.cut=function(e,t){var n=e.state.selection,r="cut"==t.type;if(!n.empty){var o=ht?null:t.clipboardData,i=Ie(e,n.content()),s=i.dom,a=i.text;o?(t.preventDefault(),o.clearData(),o.setData("text/html",s.innerHTML),o.setData("text/plain",a)):function(e,t){if(e.dom.parentNode){var n=e.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(t),n.style.cssText="position: fixed; left: -10000px; top: 10px";var r=getSelection(),o=document.createRange();o.selectNodeContents(t),e.dom.blur(),r.removeAllRanges(),r.addRange(o),setTimeout(function(){n.parentNode&&n.parentNode.removeChild(n),e.focus()},50)}}(e,s),r&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))}},Ge.paste=function(e,t){var n=ht?null:t.clipboardData,r=n&&n.getData("text/html"),o=n&&n.getData("text/plain");n&&(r||o||n.files.length)?(dt(e,o,r,t),t.preventDefault()):function(e,t){if(e.dom.parentNode){var n=e.shiftKey||e.state.selection.$from.parent.type.spec.code,r=e.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus(),setTimeout(function(){e.focus(),r.parentNode&&r.parentNode.removeChild(r),n?dt(e,r.value,null,t):dt(e,r.textContent,r.innerHTML,t)},50)}}(e,t)};var ft=s.mac?"altKey":"ctrlKey";for(var mt in Ue.dragstart=function(e,t){var n=e.mouseDown;if(n&&n.done(),t.dataTransfer){var o=e.state.selection,i=o.empty?null:e.posAtCoords(Qe(t));if(i&&i.pos>=o.from&&i.pos<=(o instanceof r.NodeSelection?o.to-1:o.to));else if(n&&n.mightDrag)e.dispatch(e.state.tr.setSelection(r.NodeSelection.create(e.state.doc,n.mightDrag.pos)));else if(t.target&&1==t.target.nodeType){var s=e.docView.nearestDesc(t.target,!0);if(!s||!s.node.type.spec.draggable||s==e.docView)return;e.dispatch(e.state.tr.setSelection(r.NodeSelection.create(e.state.doc,s.posBefore)))}var a=e.state.selection.content(),c=Ie(e,a),l=c.dom,u=c.text;t.dataTransfer.clearData(),t.dataTransfer.setData(ht?"Text":"text/html",l.innerHTML),ht||t.dataTransfer.setData("text/plain",u),e.dragging=new function(e,t){this.slice=e,this.move=t}(a,!t[ft])}},Ue.dragend=function(e){window.setTimeout(function(){return e.dragging=null},50)},Ge.dragover=Ge.dragenter=function(e,t){return t.preventDefault()},Ge.drop=function(e,t){var n=e.dragging;if(e.dragging=null,t.dataTransfer){var s=e.posAtCoords(Qe(t));if(s){var a=e.state.doc.resolve(s.pos);if(a){var c=n&&n.slice||ze(e,t.dataTransfer.getData(ht?"Text":"text/plain"),ht?null:t.dataTransfer.getData("text/html"),!1,a),l=n&&!t[ft];if(e.someProp("handleDrop",function(n){return n(e,t,c||o.Slice.empty,l)}))t.preventDefault();else if(c){t.preventDefault();var u=c?Object(i.h)(e.state.doc,a.pos,c):a.pos;null==u&&(u=a.pos);var p=e.state.tr;l&&p.deleteSelection();var h=p.mapping.map(u),d=0==c.openStart&&0==c.openEnd&&1==c.content.childCount,f=p.doc;if(d?p.replaceRangeWith(h,h,c.content.firstChild):p.replaceRange(h,h,c),!p.doc.eq(f)){var m=p.doc.resolve(h);if(d&&r.NodeSelection.isSelectable(c.content.firstChild)&&m.nodeAfter&&m.nodeAfter.sameMarkup(c.content.firstChild))p.setSelection(new r.NodeSelection(m));else{var v=p.mapping.map(u);p.mapping.maps[p.mapping.maps.length-1].forEach(function(e,t,n,r){return v=r}),p.setSelection(ge(e,m,p.doc.resolve(v)))}e.focus(),e.dispatch(p.setMeta("uiEvent","drop"))}}}}}},Ue.focus=function(e){e.focused||(e.domObserver.stop(),e.dom.classList.add("ProseMirror-focused"),e.domObserver.start(),e.focused=!0,setTimeout(function(){e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.root.getSelection())&&ue(e)},20))},Ue.blur=function(e){e.focused&&(e.domObserver.stop(),e.dom.classList.remove("ProseMirror-focused"),e.domObserver.start(),e.domObserver.currentSelection.set({}),e.focused=!1)},Ue.beforeinput=function(e,t){if(s.chrome&&s.android&&"deleteContentBackward"==t.inputType){var n=e.domChangeCount;setTimeout(function(){if(e.domChangeCount==n&&(e.dom.blur(),e.focus(),!e.someProp("handleKeyDown",function(t){return t(e,S(8,"Backspace"))}))){var t=e.state.selection.$cursor;t&&t.pos>0&&e.dispatch(e.state.tr.delete(t.pos-1,t.pos).scrollIntoView())}},50)}},Ge)Ue[mt]=Ge[mt];function vt(e,t){if(e==t)return!0;for(var n in e)if(e[n]!==t[n])return!1;for(var r in t)if(!(r in e))return!1;return!0}var gt=function(e,t){this.spec=t||kt,this.side=this.spec.side||0,this.toDOM=e};gt.prototype.map=function(e,t,n,r){var o=e.mapResult(t.from+r,this.side<0?-1:1),i=o.pos;return o.deleted?null:new wt(i-n,i-n,this)},gt.prototype.valid=function(){return!0},gt.prototype.eq=function(e){return this==e||e instanceof gt&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&vt(this.spec,e.spec))};var yt=function(e,t){this.spec=t||kt,this.attrs=e};yt.prototype.map=function(e,t,n,r){var o=e.map(t.from+r,this.spec.inclusiveStart?-1:1)-n,i=e.map(t.to+r,this.spec.inclusiveEnd?1:-1)-n;return o>=i?null:new wt(o,i,this)},yt.prototype.valid=function(e,t){return t.from<t.to},yt.prototype.eq=function(e){return this==e||e instanceof yt&&vt(this.attrs,e.attrs)&&vt(this.spec,e.spec)},yt.is=function(e){return e.type instanceof yt};var bt=function(e,t){this.spec=t||kt,this.attrs=e};bt.prototype.map=function(e,t,n,r){var o=e.mapResult(t.from+r,1);if(o.deleted)return null;var i=e.mapResult(t.to+r,-1);return i.deleted||i.pos<=o.pos?null:new wt(o.pos-n,i.pos-n,this)},bt.prototype.valid=function(e,t){var n=e.content.findIndex(t.from),r=n.index,o=n.offset;return o==t.from&&o+e.child(r).nodeSize==t.to},bt.prototype.eq=function(e){return this==e||e instanceof bt&&vt(this.attrs,e.attrs)&&vt(this.spec,e.spec)};var wt=function(e,t,n){this.from=e,this.to=t,this.type=n},St={spec:{configurable:!0},inline:{configurable:!0}};wt.prototype.copy=function(e,t){return new wt(e,t,this.type)},wt.prototype.eq=function(e,t){return void 0===t&&(t=0),this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to},wt.prototype.map=function(e,t,n){return this.type.map(e,this,t,n)},wt.widget=function(e,t,n){return new wt(e,e,new gt(t,n))},wt.inline=function(e,t,n,r){return new wt(e,t,new yt(n,r))},wt.node=function(e,t,n,r){return new wt(e,t,new bt(n,r))},St.spec.get=function(){return this.type.spec},St.inline.get=function(){return this.type instanceof yt},Object.defineProperties(wt.prototype,St);var xt=[],kt={},Ct=function(e,t){this.local=e&&e.length?e:xt,this.children=t&&t.length?t:xt};Ct.create=function(e,t){return t.length?At(t,e,0,kt):Ot},Ct.prototype.find=function(e,t,n){var r=[];return this.findInner(null==e?0:e,null==t?1e9:t,r,0,n),r},Ct.prototype.findInner=function(e,t,n,r,o){for(var i=0;i<this.local.length;i++){var s=this.local[i];s.from<=t&&s.to>=e&&(!o||o(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(var a=0;a<this.children.length;a+=3)if(this.children[a]<t&&this.children[a+1]>e){var c=this.children[a]+1;this.children[a+2].findInner(e-c,t-c,n,r+c,o)}},Ct.prototype.map=function(e,t,n){return this==Ot||0==e.maps.length?this:this.mapInner(e,t,0,0,n||kt)},Ct.prototype.mapInner=function(e,t,n,r,o){for(var i,s=0;s<this.local.length;s++){var a=this.local[s].map(e,n,r);a&&a.type.valid(t,a)?(i||(i=[])).push(a):o.onRemove&&o.onRemove(this.local[s].spec)}return this.children.length?function(e,t,n,r,o,i,s){for(var a=e.slice(),c=function(e,t,n,r){for(var s=0;s<a.length;s+=3){var c=a[s+1],l=void 0;-1==c||e>c+i||(t>=a[s]+i?a[s+1]=-1:n>=o&&(l=r-n-(t-e))&&(a[s]+=l,a[s+1]+=l))}},l=0;l<n.maps.length;l++)n.maps[l].forEach(c);for(var u=!1,p=0;p<a.length;p+=3)if(-1==a[p+1]){var h=n.map(e[p]+i),d=h-o;if(d<0||d>=r.content.size){u=!0;continue}var f=n.map(e[p+1]+i,-1),m=f-o,v=r.content.findIndex(d),g=v.index,y=v.offset,b=r.maybeChild(g);if(b&&y==d&&y+b.nodeSize==m){var w=a[p+2].mapInner(n,b,h+1,e[p]+i+1,s);w!=Ot?(a[p]=d,a[p+1]=m,a[p+2]=w):(a[p+1]=-2,u=!0)}else u=!0}if(u){var S=function(e,t,n,r,o,i,s){function a(e,t){for(var i=0;i<e.local.length;i++){var c=e.local[i].map(r,o,t);c?n.push(c):s.onRemove&&s.onRemove(e.local[i].spec)}for(var l=0;l<e.children.length;l+=3)a(e.children[l+2],e.children[l]+t+1)}for(var c=0;c<e.length;c+=3)-1==e[c+1]&&a(e[c+2],t[c]+i+1);return n}(a,e,t||[],n,o,i,s),x=At(S,r,0,s);t=x.local;for(var k=0;k<a.length;k+=3)a[k+1]<0&&(a.splice(k,3),k-=3);for(var C=0,O=0;C<x.children.length;C+=3){for(var M=x.children[C];O<a.length&&a[O]<M;)O+=3;a.splice(O,0,x.children[C],x.children[C+1],x.children[C+2])}}return new Ct(t&&t.sort(Et),a)}(this.children,i,e,t,n,r,o):i?new Ct(i.sort(Et)):Ot},Ct.prototype.add=function(e,t){return t.length?this==Ot?Ct.create(e,t):this.addInner(e,t,0):this},Ct.prototype.addInner=function(e,t,n){var r,o=this,i=0;e.forEach(function(e,s){var a,c=s+n;if(a=Tt(t,e,c)){for(r||(r=o.children.slice());i<r.length&&r[i]<s;)i+=3;r[i]==s?r[i+2]=r[i+2].addInner(e,a,c+1):r.splice(i,0,s,s+e.nodeSize,At(a,e,c+1,kt)),i+=3}});var s=Nt(i?Dt(t):t,-n);return new Ct(s.length?this.local.concat(s).sort(Et):this.local,r||this.children)},Ct.prototype.remove=function(e){return 0==e.length||this==Ot?this:this.removeInner(e,0)},Ct.prototype.removeInner=function(e,t){for(var n=this.children,r=this.local,o=0;o<n.length;o+=3){for(var i=void 0,s=n[o]+t,a=n[o+1]+t,c=0,l=void 0;c<e.length;c++)(l=e[c])&&l.from>s&&l.to<a&&(e[c]=null,(i||(i=[])).push(l));if(i){n==this.children&&(n=this.children.slice());var u=n[o+2].removeInner(i,s+1);u!=Ot?n[o+2]=u:(n.splice(o,3),o-=3)}}if(r.length)for(var p=0,h=void 0;p<e.length;p++)if(h=e[p])for(var d=0;d<r.length;d++)r[d].eq(h,t)&&(r==this.local&&(r=this.local.slice()),r.splice(d--,1));return n==this.children&&r==this.local?this:r.length||n.length?new Ct(r,n):Ot},Ct.prototype.forChild=function(e,t){if(this==Ot)return this;if(t.isLeaf)return Ct.empty;for(var n,r,o=0;o<this.children.length;o+=3)if(this.children[o]>=e){this.children[o]==e&&(n=this.children[o+2]);break}for(var i=e+1,s=i+t.content.size,a=0;a<this.local.length;a++){var c=this.local[a];if(c.from<s&&c.to>i&&c.type instanceof yt){var l=Math.max(i,c.from)-i,u=Math.min(s,c.to)-i;l<u&&(r||(r=[])).push(c.copy(l,u))}}if(r){var p=new Ct(r.sort(Et));return n?new Mt([p,n]):p}return n||Ot},Ct.prototype.eq=function(e){if(this==e)return!0;if(!(e instanceof Ct)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(var t=0;t<this.local.length;t++)if(!this.local[t].eq(e.local[t]))return!1;for(var n=0;n<this.children.length;n+=3)if(this.children[n]!=e.children[n]||this.children[n+1]!=e.children[n+1]||!this.children[n+2].eq(e.children[n+2]))return!1;return!0},Ct.prototype.locals=function(e){return Rt(this.localsInner(e))},Ct.prototype.localsInner=function(e){if(this==Ot)return xt;if(e.inlineContent||!this.local.some(yt.is))return this.local;for(var t=[],n=0;n<this.local.length;n++)this.local[n].type instanceof yt||t.push(this.local[n]);return t};var Ot=new Ct;Ct.empty=Ot,Ct.removeOverlap=Rt;var Mt=function(e){this.members=e};function Nt(e,t){if(!t||!e.length)return e;for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(new wt(o.from+t,o.to+t,o.type))}return n}function Tt(e,t,n){if(t.isLeaf)return null;for(var r=n+t.nodeSize,o=null,i=0,s=void 0;i<e.length;i++)(s=e[i])&&s.from>n&&s.to<r&&((o||(o=[])).push(s),e[i]=null);return o}function Dt(e){for(var t=[],n=0;n<e.length;n++)null!=e[n]&&t.push(e[n]);return t}function At(e,t,n,r){var o=[],i=!1;t.forEach(function(t,s){var a=Tt(e,t,s+n);if(a){i=!0;var c=At(a,t,n+s+1,r);c!=Ot&&o.push(s,s+t.nodeSize,c)}});for(var s=Nt(i?Dt(e):e,-n).sort(Et),a=0;a<s.length;a++)s[a].type.valid(t,s[a])||(r.onRemove&&r.onRemove(s[a].spec),s.splice(a--,1));return s.length||o.length?new Ct(s,o):Ot}function Et(e,t){return e.from-t.from||e.to-t.to}function Rt(e){for(var t=e,n=0;n<t.length-1;n++){var r=t[n];if(r.from!=r.to)for(var o=n+1;o<t.length;o++){var i=t[o];if(i.from!=r.from){i.from<r.to&&(t==e&&(t=e.slice()),t[n]=r.copy(r.from,i.from),_t(t,o,r.copy(i.from,r.to)));break}i.to!=r.to&&(t==e&&(t=e.slice()),t[o]=i.copy(i.from,r.to),_t(t,o+1,i.copy(r.to,i.to)))}}return t}function _t(e,t,n){for(;t<e.length&&Et(n,e[t])>0;)t++;e.splice(t,0,n)}function Pt(e){var t=[];return e.someProp("decorations",function(n){var r=n(e.state);r&&r!=Ot&&t.push(r)}),e.cursorWrapper&&t.push(Ct.create(e.state.doc,[e.cursorWrapper.deco])),Mt.from(t)}Mt.prototype.forChild=function(e,t){if(t.isLeaf)return Ct.empty;for(var n=[],r=0;r<this.members.length;r++){var o=this.members[r].forChild(e,t);o!=Ot&&(o instanceof Mt?n=n.concat(o.members):n.push(o))}return Mt.from(n)},Mt.prototype.eq=function(e){if(!(e instanceof Mt)||e.members.length!=this.members.length)return!1;for(var t=0;t<this.members.length;t++)if(!this.members[t].eq(e.members[t]))return!1;return!0},Mt.prototype.locals=function(e){for(var t,n=!0,r=0;r<this.members.length;r++){var o=this.members[r].localsInner(e);if(o.length)if(t){n&&(t=t.slice(),n=!1);for(var i=0;i<o.length;i++)t.push(o[i])}else t=o}return t?Rt(n?t:t.sort(Et)):xt},Mt.from=function(e){switch(e.length){case 0:return Ot;case 1:return e[0];default:return new Mt(e)}};var $t=function(e,t){this._props=t,this.state=t.state,this.dispatch=this.dispatch.bind(this),this._root=null,this.focused=!1,this.trackWrites=null,this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):e.apply?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=Ft(this),this.markCursor=null,this.cursorWrapper=null,Bt(this),this.nodeViews=Vt(this),this.docView=U(this.state.doc,zt(this),Pt(this),this.dom,this),this.lastSelectedViewDesc=null,this.dragging=null,function(e){e.shiftKey=!1,e.mouseDown=null,e.lastKeyCode=null,e.lastKeyCodeTime=0,e.lastClick={time:0,x:0,y:0,type:""},e.lastSelectionOrigin=null,e.lastSelectionTime=0,e.lastIOSEnter=0,e.lastIOSEnterFallbackTimeout=null,e.composing=!1,e.composingTimeout=null,e.compositionNodes=[],e.compositionEndedAt=-2e8,e.domObserver=new Je(e,function(t,n,r,o){return _e(e,t,n,r,o)}),e.domObserver.start(),e.domChangeCount=0,e.eventHandlers=Object.create(null);var t=function(t){var n=Ue[t];e.dom.addEventListener(t,e.eventHandlers[t]=function(t){!function(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(var n=t.target;n!=e.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(t))return!1;return!0}(e,t)||Ye(e,t)||!e.editable&&t.type in Ge||n(e,t)})};for(var n in Ue)t(n);s.safari&&e.dom.addEventListener("input",function(){return null}),Ze(e)}(this),this.pluginViews=[],this.updatePluginViews()},It={props:{configurable:!0},root:{configurable:!0}};function zt(e){var t=Object.create(null);return t.class="ProseMirror",t.contenteditable=String(e.editable),e.someProp("attributes",function(n){if("function"==typeof n&&(n=n(e.state)),n)for(var r in n)"class"==r?t.class+=" "+n[r]:t[r]||"contenteditable"==r||"nodeName"==r||(t[r]=String(n[r]))}),[wt.node(0,e.state.doc.content.size,t)]}function Bt(e){if(e.markCursor){var t=document.createElement("img");t.setAttribute("mark-placeholder","true"),e.cursorWrapper={dom:t,deco:wt.widget(e.state.selection.head,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function Ft(e){return!e.someProp("editable",function(t){return!1===t(e.state)})}function Vt(e){var t={};return e.someProp("nodeViews",function(e){for(var n in e)Object.prototype.hasOwnProperty.call(t,n)||(t[n]=e[n])}),t}It.props.get=function(){if(this._props.state!=this.state){var e=this._props;for(var t in this._props={},e)this._props[t]=e[t];this._props.state=this.state}return this._props},$t.prototype.update=function(e){e.handleDOMEvents!=this._props.handleDOMEvents&&Ze(this),this._props=e,this.updateStateInner(e.state,!0)},$t.prototype.setProps=function(e){var t={};for(var n in this._props)t[n]=this._props[n];for(var r in t.state=this.state,e)t[r]=e[r];this.update(t)},$t.prototype.updateState=function(e){this.updateStateInner(e,this.state.plugins!=e.plugins)},$t.prototype.updateStateInner=function(e,t){var n=this,o=this.state,i=!1,a=!1;if(e.storedMarks&&this.composing&&(ut(this),a=!0),this.state=e,t){var c=Vt(this);(function(e,t){var n=0,r=0;for(var o in e){if(e[o]!=t[o])return!0;n++}for(var i in t)r++;return n!=r})(c,this.nodeViews)&&(this.nodeViews=c,i=!0),Ze(this)}this.editable=Ft(this),Bt(this);var l=Pt(this),u=zt(this),p=t?"reset":e.scrollToSelection>o.scrollToSelection?"to selection":"preserve",h=i||!this.docView.matchesNode(e.doc,u,l);!h&&e.selection.eq(o.selection)||(a=!0);var d="preserve"==p&&a&&null==this.dom.style.overflowAnchor&&function(e){for(var t,n,r=e.dom.getBoundingClientRect(),o=Math.max(0,r.top),i=(r.left+r.right)/2,s=o+1;s<Math.min(innerHeight,r.bottom);s+=5){var a=e.root.elementFromPoint(i,s);if(a!=e.dom&&e.dom.contains(a)){var c=a.getBoundingClientRect();if(c.top>=o-20){t=a,n=c.top;break}}}return{refDOM:t,refTop:n,stack:M(e.dom)}}(this);if(a){this.domObserver.stop();var f=h&&(s.ie||s.chrome)&&!this.composing&&!o.selection.empty&&!e.selection.empty&&function(e,t){var n=Math.min(e.$anchor.sharedDepth(e.head),t.$anchor.sharedDepth(t.head));return e.$anchor.start(n)!=t.$anchor.start(n)}(o.selection,e.selection);if(h){var v=s.chrome?this.trackWrites=this.root.getSelection().focusNode:null;!i&&this.docView.update(e.doc,u,l,this)||(this.docView.updateOuterDeco([]),this.docView.destroy(),this.docView=U(e.doc,u,l,this.dom,this)),v&&!this.trackWrites&&(f=!0)}f||!(this.mouseDown&&this.domObserver.currentSelection.eq(this.root.getSelection())&&function(e){var t=e.docView.domFromPos(e.state.selection.anchor),n=e.root.getSelection();return m(t.node,t.offset,n.anchorNode,n.anchorOffset)}(this))?ue(this,f):(me(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}if(this.updatePluginViews(o),"reset"==p)this.dom.scrollTop=0;else if("to selection"==p){var g=this.root.getSelection().focusNode;this.someProp("handleScrollToSelection",function(e){return e(n)})||(e.selection instanceof r.NodeSelection?O(this,this.docView.domAfterPos(e.selection.from).getBoundingClientRect(),g):O(this,this.coordsAtPos(e.selection.head),g))}else d&&function(e){var t=e.refDOM,n=e.refTop,r=e.stack,o=t?t.getBoundingClientRect().top:0;N(r,0==o?0:o-n)}(d)},$t.prototype.destroyPluginViews=function(){for(var e;e=this.pluginViews.pop();)e.destroy&&e.destroy()},$t.prototype.updatePluginViews=function(e){if(e&&e.plugins==this.state.plugins)for(var t=0;t<this.pluginViews.length;t++){var n=this.pluginViews[t];n.update&&n.update(this,e)}else{this.destroyPluginViews();for(var r=0;r<this.state.plugins.length;r++){var o=this.state.plugins[r];o.spec.view&&this.pluginViews.push(o.spec.view(this))}}},$t.prototype.someProp=function(e,t){var n,r=this._props&&this._props[e];if(null!=r&&(n=t?t(r):r))return n;var o=this.state.plugins;if(o)for(var i=0;i<o.length;i++){var s=o[i].props[e];if(null!=s&&(n=t?t(s):s))return n}},$t.prototype.hasFocus=function(){return this.root.activeElement==this.dom},$t.prototype.focus=function(){this.domObserver.stop(),this.editable&&function(e){if(e.setActive)return e.setActive();if(T)return e.focus(T);var t=M(e);e.focus(null==T?{get preventScroll(){return T={preventScroll:!0},!0}}:void 0),T||(T=!1,N(t,0))}(this.dom),ue(this),this.domObserver.start()},It.root.get=function(){var e=this._root;if(null==e)for(var t=this.dom.parentNode;t;t=t.parentNode)if(9==t.nodeType||11==t.nodeType&&t.host)return t.getSelection||(Object.getPrototypeOf(t).getSelection=function(){return document.getSelection()}),this._root=t;return e||document},$t.prototype.posAtCoords=function(e){return E(this,e)},$t.prototype.coordsAtPos=function(e){return _(this,e)},$t.prototype.domAtPos=function(e){return this.docView.domFromPos(e)},$t.prototype.nodeDOM=function(e){var t=this.docView.descAt(e);return t?t.nodeDOM:null},$t.prototype.posAtDOM=function(e,t,n){void 0===n&&(n=-1);var r=this.docView.posFromDOM(e,t,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r},$t.prototype.endOfTextblock=function(e,t){return V(this,t||this.state,e)},$t.prototype.destroy=function(){this.docView&&(!function(e){for(var t in e.domObserver.stop(),e.eventHandlers)e.dom.removeEventListener(t,e.eventHandlers[t]);clearTimeout(e.composingTimeout),clearTimeout(e.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],Pt(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null)},$t.prototype.dispatchEvent=function(e){return function(e,t){Ye(e,t)||!Ue[t.type]||!e.editable&&t.type in Ge||Ue[t.type](e,t)}(this,e)},$t.prototype.dispatch=function(e){var t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))},Object.defineProperties($t.prototype,It)},Vb5C:function(e,t,n){"use strict";n.r(t),n.d(t,"CellSelection",function(){return P}),n.d(t,"TableMap",function(){return f}),n.d(t,"TableView",function(){return Me}),n.d(t,"__clipCells",function(){return F}),n.d(t,"__insertCells",function(){return L}),n.d(t,"__pastedCells",function(){return z}),n.d(t,"addColSpan",function(){return R}),n.d(t,"addColumn",function(){return re}),n.d(t,"addColumnAfter",function(){return ie}),n.d(t,"addColumnBefore",function(){return oe}),n.d(t,"addRow",function(){return le}),n.d(t,"addRowAfter",function(){return pe}),n.d(t,"addRowBefore",function(){return ue}),n.d(t,"cellAround",function(){return S}),n.d(t,"colCount",function(){return T}),n.d(t,"columnIsHeader",function(){return _}),n.d(t,"columnResizing",function(){return De}),n.d(t,"columnResizingPluginKey",function(){return Te}),n.d(t,"deleteColumn",function(){return ae}),n.d(t,"deleteRow",function(){return de}),n.d(t,"deleteTable",function(){return Oe}),n.d(t,"findCell",function(){return N}),n.d(t,"fixTables",function(){return te}),n.d(t,"fixTablesKey",function(){return ee}),n.d(t,"goToNextCell",function(){return Ce}),n.d(t,"handlePaste",function(){return G}),n.d(t,"inSameTable",function(){return M}),n.d(t,"isInTable",function(){return x}),n.d(t,"mergeCells",function(){return me}),n.d(t,"moveCellForward",function(){return O}),n.d(t,"nextCell",function(){return D}),n.d(t,"pointsAtCell",function(){return C}),n.d(t,"removeColSpan",function(){return E}),n.d(t,"removeColumn",function(){return se}),n.d(t,"removeRow",function(){return he}),n.d(t,"rowIsHeader",function(){return ce}),n.d(t,"selectedRect",function(){return ne}),n.d(t,"selectionCell",function(){return k}),n.d(t,"setAttr",function(){return A}),n.d(t,"setCellAttr",function(){return ye}),n.d(t,"splitCell",function(){return ve}),n.d(t,"splitCellWithType",function(){return ge}),n.d(t,"tableEditing",function(){return $e}),n.d(t,"tableEditingKey",function(){return w}),n.d(t,"tableNodeTypes",function(){return b}),n.d(t,"tableNodes",function(){return y}),n.d(t,"toggleHeader",function(){return we}),n.d(t,"toggleHeaderCell",function(){return ke}),n.d(t,"toggleHeaderColumn",function(){return xe}),n.d(t,"toggleHeaderRow",function(){return Se}),n.d(t,"updateColumnsOnResize",function(){return Ne});var r,o,i=n("UxO+"),s=n("MEpN"),a=n("fwbU"),c=n("V2qZ"),l=n("CsC6");if("undefined"!=typeof WeakMap){var u=new WeakMap;r=function(e){return u.get(e)},o=function(e,t){return u.set(e,t),t}}else{var p=[],h=0;r=function(e){for(var t=0;t<p.length;t+=2)if(p[t]==e)return p[t+1]},o=function(e,t){return 10==h&&(h=0),p[h++]=e,p[h++]=t}}var d=function(e,t,n,r){this.left=e,this.top=t,this.right=n,this.bottom=r},f=function(e,t,n,r){this.width=e,this.height=t,this.map=n,this.problems=r};function m(e){if(e.colwidth)return e.colwidth.slice();for(var t=[],n=0;n<e.colspan;n++)t.push(0);return t}function v(e,t){var n=e.getAttribute("data-colwidth"),r=n&&/^\d+(,\d+)*$/.test(n)?n.split(",").map(function(e){return Number(e)}):null,o=Number(e.getAttribute("colspan")||1),i={colspan:o,rowspan:Number(e.getAttribute("rowspan")||1),colwidth:r&&r.length==o?r:null};for(var s in t){var a=t[s].getFromDOM,c=a&&a(e);null!=c&&(i[s]=c)}return i}function g(e,t){var n={};for(var r in 1!=e.attrs.colspan&&(n.colspan=e.attrs.colspan),1!=e.attrs.rowspan&&(n.rowspan=e.attrs.rowspan),e.attrs.colwidth&&(n["data-colwidth"]=e.attrs.colwidth.join(",")),t){var o=t[r].setDOMAttr;o&&o(e.attrs[r],n)}return n}function y(e){var t=e.cellAttributes||{},n={colspan:{default:1},rowspan:{default:1},colwidth:{default:null}};for(var r in t)n[r]={default:t[r].default};return{table:{content:"table_row+",tableRole:"table",isolating:!0,group:e.tableGroup,parseDOM:[{tag:"table"}],toDOM:function(){return["table",["tbody",0]]}},table_row:{content:"(table_cell | table_header)*",tableRole:"row",parseDOM:[{tag:"tr"}],toDOM:function(){return["tr",0]}},table_cell:{content:e.cellContent,attrs:n,tableRole:"cell",isolating:!0,parseDOM:[{tag:"td",getAttrs:function(e){return v(e,t)}}],toDOM:function(e){return["td",g(e,t),0]}},table_header:{content:e.cellContent,attrs:n,tableRole:"header_cell",isolating:!0,parseDOM:[{tag:"th",getAttrs:function(e){return v(e,t)}}],toDOM:function(e){return["th",g(e,t),0]}}}}function b(e){var t=e.cached.tableNodeTypes;if(!t)for(var n in t=e.cached.tableNodeTypes={},e.nodes){var r=e.nodes[n],o=r.spec.tableRole;o&&(t[o]=r)}return t}f.prototype.findCell=function(e){for(var t=0;t<this.map.length;t++){var n=this.map[t];if(n==e){for(var r=t%this.width,o=t/this.width|0,i=r+1,s=o+1,a=1;i<this.width&&this.map[t+a]==n;a++)i++;for(var c=1;s<this.height&&this.map[t+this.width*c]==n;c++)s++;return new d(r,o,i,s)}}throw new RangeError("No cell with offset "+e+" found")},f.prototype.colCount=function(e){for(var t=0;t<this.map.length;t++)if(this.map[t]==e)return t%this.width;throw new RangeError("No cell with offset "+e+" found")},f.prototype.nextCell=function(e,t,n){var r=this.findCell(e),o=r.left,i=r.right,s=r.top,a=r.bottom;return"horiz"==t?(n<0?0==o:i==this.width)?null:this.map[s*this.width+(n<0?o-1:i)]:(n<0?0==s:a==this.height)?null:this.map[o+this.width*(n<0?s-1:a)]},f.prototype.rectBetween=function(e,t){var n=this.findCell(e),r=n.left,o=n.right,i=n.top,s=n.bottom,a=this.findCell(t),c=a.left,l=a.right,u=a.top,p=a.bottom;return new d(Math.min(r,c),Math.min(i,u),Math.max(o,l),Math.max(s,p))},f.prototype.cellsInRect=function(e){for(var t=[],n={},r=e.top;r<e.bottom;r++)for(var o=e.left;o<e.right;o++){var i=r*this.width+o,s=this.map[i];n[s]||(n[s]=!0,o==e.left&&o&&this.map[i-1]==s||r==e.top&&r&&this.map[i-this.width]==s||t.push(s))}return t},f.prototype.positionAt=function(e,t,n){for(var r=0,o=0;;r++){var i=o+n.child(r).nodeSize;if(r==e){for(var s=t+e*this.width,a=(e+1)*this.width;s<a&&this.map[s]<o;)s++;return s==a?i-1:this.map[s]}o=i}},f.get=function(e){return r(e)||o(e,function(e){if("table"!=e.type.spec.tableRole)throw new RangeError("Not a table node: "+e.type.name);for(var t=function(e){for(var t=-1,n=!1,r=0;r<e.childCount;r++){var o=e.child(r),i=0;if(n)for(var s=0;s<r;s++)for(var a=e.child(s),c=0;c<a.childCount;c++){var l=a.child(c);s+l.attrs.rowspan>r&&(i+=l.attrs.colspan)}for(var u=0;u<o.childCount;u++){var p=o.child(u);i+=p.attrs.colspan,p.attrs.rowspan>1&&(n=!0)}-1==t?t=i:t!=i&&(t=Math.max(t,i))}return t}(e),n=e.childCount,r=[],o=0,i=null,s=[],a=0,c=t*n;a<c;a++)r[a]=0;for(var l=0,u=0;l<n;l++){var p=e.child(l);u++;for(var h=0;;h++){for(;o<r.length&&0!=r[o];)o++;if(h==p.childCount)break;for(var d=p.child(h),v=d.attrs,g=v.colspan,y=v.rowspan,b=v.colwidth,w=0;w<y;w++){if(w+l>=n){(i||(i=[])).push({type:"overlong_rowspan",pos:u,n:y-w});break}for(var S=o+w*t,x=0;x<g;x++){0==r[S+x]?r[S+x]=u:(i||(i=[])).push({type:"collision",row:l,pos:u,n:g-x});var k=b&&b[x];if(k){var C=(S+x)%t*2,O=s[C];null==O||O!=k&&1==s[C+1]?(s[C]=k,s[C+1]=1):O==k&&s[C+1]++}}}o+=g,u+=d.nodeSize}for(var M=(l+1)*t,N=0;o<M;)0==r[o++]&&N++;N&&(i||(i=[])).push({type:"missing",row:l,n:N}),u++}for(var T=new f(t,n,r,i),D=!1,A=0;!D&&A<s.length;A+=2)null!=s[A]&&s[A+1]<n&&(D=!0);D&&function(e,t,n){e.problems||(e.problems=[]);for(var r=0,o={};r<e.map.length;r++){var i=e.map[r];if(!o[i]){o[i]=!0;for(var s=n.nodeAt(i),a=null,c=0;c<s.attrs.colspan;c++){var l=(r+c)%e.width,u=t[2*l];null==u||s.attrs.colwidth&&s.attrs.colwidth[c]==u||((a||(a=m(s.attrs)))[c]=u)}a&&e.problems.unshift({type:"colwidth mismatch",pos:i,colwidth:a})}}}(T,s,e);return T}(e))};var w=new i.PluginKey("selectingCells");function S(e){for(var t=e.depth-1;t>0;t--)if("row"==e.node(t).type.spec.tableRole)return e.node(0).resolve(e.before(t+1));return null}function x(e){for(var t=e.selection.$head,n=t.depth;n>0;n--)if("row"==t.node(n).type.spec.tableRole)return!0;return!1}function k(e){var t=e.selection;return t.$anchorCell?t.$anchorCell.pos>t.$headCell.pos?t.$anchorCell:t.$headCell:t.node&&"cell"==t.node.type.spec.tableRole?t.$anchor:S(t.$head)||function(e){for(var t=e.nodeAfter,n=e.pos;t;t=t.firstChild,n++){var r=t.type.spec.tableRole;if("cell"==r||"header_cell"==r)return e.doc.resolve(n)}for(var o=e.nodeBefore,i=e.pos;o;o=o.lastChild,i--){var s=o.type.spec.tableRole;if("cell"==s||"header_cell"==s)return e.doc.resolve(i-o.nodeSize)}}(t.$head)}function C(e){return"row"==e.parent.type.spec.tableRole&&e.nodeAfter}function O(e){return e.node(0).resolve(e.pos+e.nodeAfter.nodeSize)}function M(e,t){return e.depth==t.depth&&e.pos>=t.start(-1)&&e.pos<=t.end(-1)}function N(e){return f.get(e.node(-1)).findCell(e.pos-e.start(-1))}function T(e){return f.get(e.node(-1)).colCount(e.pos-e.start(-1))}function D(e,t,n){var r=e.start(-1),o=f.get(e.node(-1)).nextCell(e.pos-r,t,n);return null==o?null:e.node(0).resolve(r+o)}function A(e,t,n){var r={};for(var o in e)r[o]=e[o];return r[t]=n,r}function E(e,t,n){void 0===n&&(n=1);var r=A(e,"colspan",e.colspan-n);return r.colwidth&&(r.colwidth=r.colwidth.slice(),r.colwidth.splice(t,n),r.colwidth.some(function(e){return e>0})||(r.colwidth=null)),r}function R(e,t,n){void 0===n&&(n=1);var r=A(e,"colspan",e.colspan+n);if(r.colwidth){r.colwidth=r.colwidth.slice();for(var o=0;o<n;o++)r.colwidth.splice(t,0,0)}return r}function _(e,t,n){for(var r=b(t.type.schema).header_cell,o=0;o<e.height;o++)if(t.nodeAt(e.map[n+o*e.width]).type!=r)return!1;return!0}var P=function(e){function t(t,n){void 0===n&&(n=t);var r=t.node(-1),o=f.get(r),s=t.start(-1),a=o.rectBetween(t.pos-s,n.pos-s),c=t.node(0),l=o.cellsInRect(a).filter(function(e){return e!=n.pos-s});l.unshift(n.pos-s);var u=l.map(function(e){var t=r.nodeAt(e),n=e+s+1;return new i.SelectionRange(c.resolve(n),c.resolve(n+t.content.size))});e.call(this,u[0].$from,u[0].$to,u),this.$anchorCell=t,this.$headCell=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.map=function(e,n){var r=e.resolve(n.map(this.$anchorCell.pos)),o=e.resolve(n.map(this.$headCell.pos));if(C(r)&&C(o)&&M(r,o)){var s=this.$anchorCell.node(-1)!=r.node(-1);return s&&this.isRowSelection()?t.rowSelection(r,o):s&&this.isColSelection()?t.colSelection(r,o):new t(r,o)}return i.TextSelection.between(r,o)},t.prototype.content=function(){for(var e=this.$anchorCell.node(-1),t=f.get(e),n=this.$anchorCell.start(-1),r=t.rectBetween(this.$anchorCell.pos-n,this.$headCell.pos-n),o={},i=[],a=r.top;a<r.bottom;a++){for(var c=[],l=a*t.width+r.left,u=r.left;u<r.right;u++,l++){var p=t.map[l];if(!o[p]){o[p]=!0;var h=t.findCell(p),d=e.nodeAt(p),m=r.left-h.left,v=h.right-r.right;if(m>0||v>0){var g=d.attrs;m>0&&(g=E(g,0,m)),v>0&&(g=E(g,g.colspan-v,v)),d=h.left<r.left?d.type.createAndFill(g):d.type.create(g,d.content)}if(h.top<r.top||h.bottom>r.bottom){var y=A(d.attrs,"rowspan",Math.min(h.bottom,r.bottom)-Math.max(h.top,r.top));d=h.top<r.top?d.type.createAndFill(y):d.type.create(y,d.content)}c.push(d)}}i.push(e.child(a).copy(s.Fragment.from(c)))}var b=this.isColSelection()&&this.isRowSelection()?e:i;return new s.Slice(s.Fragment.from(b),1,1)},t.prototype.replace=function(t,n){void 0===n&&(n=s.Slice.empty);for(var r=t.steps.length,o=this.ranges,i=0;i<o.length;i++){var a=o[i],c=a.$from,l=a.$to,u=t.mapping.slice(r);t.replace(u.map(c.pos),u.map(l.pos),i?s.Slice.empty:n)}var p=e.findFrom(t.doc.resolve(t.mapping.slice(r).map(this.to)),-1);p&&t.setSelection(p)},t.prototype.replaceWith=function(e,t){this.replace(e,new s.Slice(s.Fragment.from(t),0,0))},t.prototype.forEachCell=function(e){for(var t=this.$anchorCell.node(-1),n=f.get(t),r=this.$anchorCell.start(-1),o=n.cellsInRect(n.rectBetween(this.$anchorCell.pos-r,this.$headCell.pos-r)),i=0;i<o.length;i++)e(t.nodeAt(o[i]),r+o[i])},t.prototype.isColSelection=function(){var e=this.$anchorCell.index(-1),t=this.$headCell.index(-1);if(Math.min(e,t)>0)return!1;var n=e+this.$anchorCell.nodeAfter.attrs.rowspan,r=t+this.$headCell.nodeAfter.attrs.rowspan;return Math.max(n,r)==this.$headCell.node(-1).childCount},t.colSelection=function(e,n){void 0===n&&(n=e);var r=f.get(e.node(-1)),o=e.start(-1),i=r.findCell(e.pos-o),s=r.findCell(n.pos-o),a=e.node(0);return i.top<=s.top?(i.top>0&&(e=a.resolve(o+r.map[i.left])),s.bottom<r.height&&(n=a.resolve(o+r.map[r.width*(r.height-1)+s.right-1]))):(s.top>0&&(n=a.resolve(o+r.map[s.left])),i.bottom<r.height&&(e=a.resolve(o+r.map[r.width*(r.height-1)+i.right-1]))),new t(e,n)},t.prototype.isRowSelection=function(){var e=f.get(this.$anchorCell.node(-1)),t=this.$anchorCell.start(-1),n=e.colCount(this.$anchorCell.pos-t),r=e.colCount(this.$headCell.pos-t);if(Math.min(n,r)>0)return!1;var o=n+this.$anchorCell.nodeAfter.attrs.colspan,i=r+this.$headCell.nodeAfter.attrs.colspan;return Math.max(o,i)==e.width},t.prototype.eq=function(e){return e instanceof t&&e.$anchorCell.pos==this.$anchorCell.pos&&e.$headCell.pos==this.$headCell.pos},t.rowSelection=function(e,n){void 0===n&&(n=e);var r=f.get(e.node(-1)),o=e.start(-1),i=r.findCell(e.pos-o),s=r.findCell(n.pos-o),a=e.node(0);return i.left<=s.left?(i.left>0&&(e=a.resolve(o+r.map[i.top*r.width])),s.right<r.width&&(n=a.resolve(o+r.map[r.width*(s.top+1)-1]))):(s.left>0&&(n=a.resolve(o+r.map[s.top*r.width])),i.right<r.width&&(e=a.resolve(o+r.map[r.width*(i.top+1)-1]))),new t(e,n)},t.prototype.toJSON=function(){return{type:"cell",anchor:this.$anchorCell.pos,head:this.$headCell.pos}},t.fromJSON=function(e,n){return new t(e.resolve(n.anchor),e.resolve(n.head))},t.create=function(e,n,r){return void 0===r&&(r=n),new t(e.resolve(n),e.resolve(r))},t.prototype.getBookmark=function(){return new $(this.$anchorCell.pos,this.$headCell.pos)},t}(i.Selection);P.prototype.visible=!1,i.Selection.jsonID("cell",P);var $=function(e,t){this.anchor=e,this.head=t};function I(e){if(!(e.selection instanceof P))return null;var t=[];return e.selection.forEachCell(function(e,n){t.push(c.a.node(n,n+e.nodeSize,{class:"selectedCell"}))}),c.b.create(e.doc,t)}function z(e){if(!e.size)return null;for(var t=e.content,n=e.openStart,r=e.openEnd;1==t.childCount&&(n>0&&r>0||"table"==t.firstChild.type.spec.tableRole);)n--,r--,t=t.firstChild.content;var o=t.firstChild,i=o.type.spec.tableRole,a=o.type.schema,c=[];if("row"==i)for(var l=0;l<t.childCount;l++){var u=t.child(l).content,p=l?0:Math.max(0,n-1),h=l<t.childCount-1?0:Math.max(0,r-1);(p||h)&&(u=B(b(a).row,new s.Slice(u,p,h)).content),c.push(u)}else{if("cell"!=i&&"header_cell"!=i)return null;c.push(n||r?B(b(a).row,new s.Slice(t,n,r)).content:t)}return function(e,t){for(var n=[],r=0;r<t.length;r++)for(var o=t[r],i=o.childCount-1;i>=0;i--)for(var a=o.child(i).attrs,c=a.rowspan,l=a.colspan,u=r;u<r+c;u++)n[u]=(n[u]||0)+l;for(var p=0,h=0;h<n.length;h++)p=Math.max(p,n[h]);for(var d=0;d<n.length;d++)if(d>=t.length&&t.push(s.Fragment.empty),n[d]<p){for(var f=b(e).cell.createAndFill(),m=[],v=n[d];v<p;v++)m.push(f);t[d]=t[d].append(s.Fragment.from(m))}return{height:t.length,width:p,rows:t}}(a,c)}function B(e,t){var n=e.createAndFill();return new l.e(n).replace(0,n.content.size,t).doc}function F(e,t,n){var r=e.width,o=e.height,i=e.rows;if(r!=t){for(var a=[],c=[],l=0;l<i.length;l++){for(var u=i[l],p=[],h=a[l]||0,d=0;h<t;d++){var f=u.child(d%u.childCount);h+f.attrs.colspan>t&&(f=f.type.create(E(f.attrs,f.attrs.colspan,h+f.attrs.colspan-t),f.content)),p.push(f),h+=f.attrs.colspan;for(var m=1;m<f.attrs.rowspan;m++)a[l+m]=(a[l+m]||0)+f.attrs.colspan}c.push(s.Fragment.from(p))}i=c,r=t}if(o!=n){for(var v=[],g=0,y=0;g<n;g++,y++){for(var b=[],w=i[y%o],S=0;S<w.childCount;S++){var x=w.child(S);g+x.attrs.rowspan>n&&(x=x.type.create(A(x.attrs,"rowspan",Math.max(1,n-x.attrs.rowspan)),x.content)),b.push(x)}v.push(s.Fragment.from(b))}i=v,o=n}return{width:r,height:o,rows:i}}function V(e,t,n,r,o,i,s,a){if(0==s||s==t.height)return!1;for(var c=!1,l=o;l<i;l++){var u=s*t.width+l,p=t.map[u];if(t.map[u-t.width]==p){c=!0;var h=n.nodeAt(p),d=t.findCell(p),f=d.top,m=d.left;e.setNodeMarkup(e.mapping.slice(a).map(p+r),null,A(h.attrs,"rowspan",s-f)),e.insert(e.mapping.slice(a).map(t.positionAt(s,m,n)),h.type.createAndFill(A(h.attrs,"rowspan",f+h.attrs.rowspan-s))),l+=h.attrs.colspan-1}}return c}function j(e,t,n,r,o,i,s,a){if(0==s||s==t.width)return!1;for(var c=!1,l=o;l<i;l++){var u=l*t.width+s,p=t.map[u];if(t.map[u-1]==p){c=!0;var h=n.nodeAt(p),d=t.colCount(p),f=e.mapping.slice(a).map(p+r);e.setNodeMarkup(f,null,E(h.attrs,s-d,h.attrs.colspan-(s-d))),e.insert(f+h.nodeSize,h.type.createAndFill(E(h.attrs,0,s-d))),l+=h.attrs.rowspan-1}}return c}function L(e,t,n,r,o){var i=n?e.doc.nodeAt(n-1):e.doc,a=f.get(i),c=r.top,l=r.left,u=l+o.width,p=c+o.height,h=e.tr,d=0;function m(){i=n?h.doc.nodeAt(n-1):h.doc,a=f.get(i),d=h.mapping.maps.length}(function(e,t,n,r,o,i,a){var c,l,u=b(e.doc.type.schema);if(o>t.width)for(var p=0,h=0;p<t.height;p++){var d=n.child(p);h+=d.nodeSize;var f=[],m=void 0;m=null==d.lastChild||d.lastChild.type==u.cell?c||(c=u.cell.createAndFill()):l||(l=u.header_cell.createAndFill());for(var v=t.width;v<o;v++)f.push(m);e.insert(e.mapping.slice(a).map(h-1+r),f)}if(i>t.height){for(var g=[],y=0,w=(t.height-1)*t.width;y<Math.max(t.width,o);y++){var S=!(y>=t.width)&&n.nodeAt(t.map[w+y]).type==u.header_cell;g.push(S?l||(l=u.header_cell.createAndFill()):c||(c=u.cell.createAndFill()))}for(var x=u.row.create(null,s.Fragment.from(g)),k=[],C=t.height;C<i;C++)k.push(x);e.insert(e.mapping.slice(a).map(r+n.nodeSize-2),k)}return!(!c&&!l)})(h,a,i,n,u,p,d)&&m(),V(h,a,i,n,l,u,c,d)&&m(),V(h,a,i,n,l,u,p,d)&&m(),j(h,a,i,n,c,p,l,d)&&m(),j(h,a,i,n,c,p,u,d)&&m();for(var v=c;v<p;v++){var g=a.positionAt(v,l,i),y=a.positionAt(v,u,i);h.replace(h.mapping.slice(d).map(g+n),h.mapping.slice(d).map(y+n),new s.Slice(o.rows[v-c],0,0))}m(),h.setSelection(new P(h.doc.resolve(n+a.positionAt(c,l,i)),h.doc.resolve(n+a.positionAt(p-1,u-1,i)))),t(h)}$.prototype.map=function(e){return new $(e.map(this.anchor),e.map(this.head))},$.prototype.resolve=function(e){var t=e.resolve(this.anchor),n=e.resolve(this.head);return"row"==t.parent.type.spec.tableRole&&"row"==n.parent.type.spec.tableRole&&t.index()<t.parent.childCount&&n.index()<n.parent.childCount&&M(t,n)?new P(t,n):i.Selection.near(n,1)};var q=Object(a.a)({ArrowLeft:K("horiz",-1),ArrowRight:K("horiz",1),ArrowUp:K("vert",-1),ArrowDown:K("vert",1),"Shift-ArrowLeft":J("horiz",-1),"Shift-ArrowRight":J("horiz",1),"Shift-ArrowUp":J("vert",-1),"Shift-ArrowDown":J("vert",1),Backspace:H,"Mod-Backspace":H,Delete:H,"Mod-Delete":H});function W(e,t,n){return!n.eq(e.selection)&&(t&&t(e.tr.setSelection(n).scrollIntoView()),!0)}function K(e,t){return function(n,r,o){var s=n.selection;if(s instanceof P)return W(n,r,i.Selection.near(s.$headCell,t));if("horiz"!=e&&!s.empty)return!1;var a=Z(o,e,t);if(null==a)return!1;if("horiz"==e)return W(n,r,i.Selection.near(n.doc.resolve(s.head+t),t));var c=n.doc.resolve(a),l=D(c,e,t);return W(n,r,l?i.Selection.near(l,1):t<0?i.Selection.near(n.doc.resolve(c.before(-1)),-1):i.Selection.near(n.doc.resolve(c.after(-1)),1))}}function J(e,t){return function(n,r,o){var i=n.selection;if(!(i instanceof P)){var s=Z(o,e,t);if(null==s)return!1;i=new P(n.doc.resolve(s))}var a=D(i.$headCell,e,t);return!!a&&W(n,r,new P(i.$anchorCell,a))}}function H(e,t){var n=e.selection;if(!(n instanceof P))return!1;if(t){var r=e.tr,o=b(e.schema).cell.createAndFill().content;n.forEachCell(function(e,t){e.content.eq(o)||r.replace(r.mapping.map(t+1),r.mapping.map(t+e.nodeSize-1),new s.Slice(o,0,0))}),r.docChanged&&t(r)}return!0}function U(e,t){var n=S(e.state.doc.resolve(t));return!!n&&(e.dispatch(e.state.tr.setSelection(new P(n))),!0)}function G(e,t,n){if(!x(e.state))return!1;var r=z(n),o=e.state.selection;if(o instanceof P){r||(r={width:1,height:1,rows:[s.Fragment.from(B(b(e.state.schema).cell,n))]});var i=o.$anchorCell.node(-1),a=o.$anchorCell.start(-1),c=f.get(i).rectBetween(o.$anchorCell.pos-a,o.$headCell.pos-a);return r=F(r,c.right-c.left,c.bottom-c.top),L(e.state,e.dispatch,a,c,r),!0}if(r){var l=k(e.state),u=l.start(-1);return L(e.state,e.dispatch,u,f.get(l.node(-1)).findCell(l.pos-u),r),!0}return!1}function X(e,t){if(!t.ctrlKey&&!t.metaKey){var n,r=Y(e,t.target);if(t.shiftKey&&e.state.selection instanceof P)o(e.state.selection.$anchorCell,t),t.preventDefault();else if(t.shiftKey&&r&&null!=(n=S(e.state.selection.$anchor))&&Q(e,t).pos!=n.pos)o(n,t),t.preventDefault();else if(!r)return;e.root.addEventListener("mouseup",i),e.root.addEventListener("dragstart",i),e.root.addEventListener("mousemove",s)}function o(t,n){var r=Q(e,n),o=null==w.getState(e.state);if(!r||!M(t,r)){if(!o)return;r=t}var i=new P(t,r);if(o||!e.state.selection.eq(i)){var s=e.state.tr.setSelection(i);o&&s.setMeta(w,t.pos),e.dispatch(s)}}function i(){e.root.removeEventListener("mouseup",i),e.root.removeEventListener("dragstart",i),e.root.removeEventListener("mousemove",s),null!=w.getState(e.state)&&e.dispatch(e.state.tr.setMeta(w,-1))}function s(n){var s,a=w.getState(e.state);if(null!=a)s=e.state.doc.resolve(a);else if(Y(e,n.target)!=r&&!(s=Q(e,t)))return i();s&&o(s,n)}}function Z(e,t,n){if(!(e.state.selection instanceof i.TextSelection))return null;for(var r=e.state.selection.$head,o=r.depth-1;o>=0;o--){var s=r.node(o);if((n<0?r.index(o):r.indexAfter(o))!=(n<0?0:s.childCount))return null;if("cell"==s.type.spec.tableRole||"header_cell"==s.type.spec.tableRole){var a=r.before(o),c="vert"==t?n>0?"down":"up":n>0?"right":"left";return e.endOfTextblock(c)?a:null}}return null}function Y(e,t){for(;t&&t!=e.dom;t=t.parentNode)if("TD"==t.nodeName||"TH"==t.nodeName)return t}function Q(e,t){var n=e.posAtCoords({left:t.clientX,top:t.clientY});return n&&n?S(e.state.doc.resolve(n.pos)):null}var ee=new i.PluginKey("fix-tables");function te(e,t){var n,r=function(t,r){"table"==t.type.spec.tableRole&&(n=function(e,t,n,r){var o=f.get(t);if(!o.problems)return r;r||(r=e.tr);for(var i,s,a=[],c=0;c<o.height;c++)a.push(0);for(var l=0;l<o.problems.length;l++){var u=o.problems[l];if("collision"==u.type){for(var p=t.nodeAt(u.pos),h=0;h<p.attrs.rowspan;h++)a[u.row+h]+=u.n;r.setNodeMarkup(r.mapping.map(n+1+u.pos),null,E(p.attrs,p.attrs.colspan-u.n,u.n))}else if("missing"==u.type)a[u.row]+=u.n;else if("overlong_rowspan"==u.type){var d=t.nodeAt(u.pos);r.setNodeMarkup(r.mapping.map(n+1+u.pos),null,A(d.attrs,"rowspan",d.attrs.rowspan-u.n))}else if("colwidth mismatch"==u.type){var m=t.nodeAt(u.pos);r.setNodeMarkup(r.mapping.map(n+1+u.pos),null,A(m.attrs,"colwidth",u.colwidth))}}for(var v=0;v<a.length;v++)a[v]&&(null==i&&(i=v),s=v);for(var g=0,y=n+1;g<o.height;g++){var w=t.child(g),S=y+w.nodeSize,x=a[g];if(x>0){var k="cell";w.firstChild&&(k=w.firstChild.type.spec.tableRole);for(var C=[],O=0;O<x;O++)C.push(b(e.schema)[k].createAndFill());var M=0!=g&&i!=g-1||s!=g?S-1:y+1;r.insert(r.mapping.map(M),C)}y=S}return r.setMeta(ee,{fixTables:!0})}(e,t,r,n))};return t?t.doc!=e.doc&&function e(t,n,r,o){var i=t.childCount,s=n.childCount;e:for(var a=0,c=0;a<s;a++){for(var l=n.child(a),u=c,p=Math.min(i,a+3);u<p;u++)if(t.child(u)==l){c=u+1,r+=l.nodeSize;continue e}o(l,r),c<i&&t.child(c).sameMarkup(l)?e(t.child(c),l,r+1,o):l.nodesBetween(0,l.content.size,o,r+1),r+=l.nodeSize}}(t.doc,e.doc,0,r):e.doc.descendants(r),n}function ne(e){var t,n=e.selection,r=k(e),o=r.node(-1),i=r.start(-1),s=f.get(o);return(t=n instanceof P?s.rectBetween(n.$anchorCell.pos-i,n.$headCell.pos-i):s.findCell(r.pos-i)).tableStart=i,t.map=s,t.table=o,t}function re(e,t,n){var r=t.map,o=t.tableStart,i=t.table,s=n>0?-1:0;_(r,i,n+s)&&(s=0==n||n==r.width?null:0);for(var a=0;a<r.height;a++){var c=a*r.width+n;if(n>0&&n<r.width&&r.map[c-1]==r.map[c]){var l=r.map[c],u=i.nodeAt(l);e.setNodeMarkup(e.mapping.map(o+l),null,R(u.attrs,n-r.colCount(l))),a+=u.attrs.rowspan-1}else{var p=null==s?b(i.type.schema).cell:i.nodeAt(r.map[c+s]).type,h=r.positionAt(a,n,i);e.insert(e.mapping.map(o+h),p.createAndFill())}}return e}function oe(e,t){if(!x(e))return!1;if(t){var n=ne(e);t(re(e.tr,n,n.left))}return!0}function ie(e,t){if(!x(e))return!1;if(t){var n=ne(e);t(re(e.tr,n,n.right))}return!0}function se(e,t,n){for(var r=t.map,o=t.table,i=t.tableStart,s=e.mapping.maps.length,a=0;a<r.height;){var c=a*r.width+n,l=r.map[c],u=o.nodeAt(l);if(n>0&&r.map[c-1]==l||n<r.width-1&&r.map[c+1]==l)e.setNodeMarkup(e.mapping.slice(s).map(i+l),null,E(u.attrs,n-r.colCount(l)));else{var p=e.mapping.slice(s).map(i+l);e.delete(p,p+u.nodeSize)}a+=u.attrs.rowspan}}function ae(e,t){if(!x(e))return!1;if(t){var n=ne(e),r=e.tr;if(0==n.left&&n.right==n.map.width)return!1;for(var o=n.right-1;se(r,n,o),o!=n.left;o--)n.table=n.tableStart?r.doc.nodeAt(n.tableStart-1):r.doc,n.map=f.get(n.table);t(r)}return!0}function ce(e,t,n){for(var r=b(t.type.schema).header_cell,o=0;o<e.width;o++)if(t.nodeAt(e.map[o+n*e.width]).type!=r)return!1;return!0}function le(e,t,n){for(var r=t.map,o=t.tableStart,i=t.table,s=o,a=0;a<n;a++)s+=i.child(a).nodeSize;var c=[],l=n>0?-1:0;ce(r,i,n+l)&&(l=0==n||n==r.height?null:0);for(var u=0,p=r.width*n;u<r.width;u++,p++)if(n>0&&n<r.height&&r.map[p]==r.map[p-r.width]){var h=r.map[p],d=i.nodeAt(h).attrs;e.setNodeMarkup(o+h,null,A(d,"rowspan",d.rowspan+1)),u+=d.colspan-1}else{var f=null==l?b(i.type.schema).cell:i.nodeAt(r.map[p+l*r.width]).type;c.push(f.createAndFill())}return e.insert(s,b(i.type.schema).row.create(null,c)),e}function ue(e,t){if(!x(e))return!1;if(t){var n=ne(e);t(le(e.tr,n,n.top))}return!0}function pe(e,t){if(!x(e))return!1;if(t){var n=ne(e);t(le(e.tr,n,n.bottom))}return!0}function he(e,t,n){for(var r=t.map,o=t.table,i=t.tableStart,s=0,a=0;a<n;a++)s+=o.child(a).nodeSize;var c=s+o.child(n).nodeSize,l=e.mapping.maps.length;e.delete(s+i,c+i);for(var u=0,p=n*r.width;u<r.width;u++,p++){var h=r.map[p];if(n>0&&h==r.map[p-r.width]){var d=o.nodeAt(h).attrs;e.setNodeMarkup(e.mapping.slice(l).map(h+i),null,A(d,"rowspan",d.rowspan-1)),u+=d.colspan-1}else if(n<r.width&&h==r.map[p+r.width]){var f=o.nodeAt(h),m=f.type.create(A(f.attrs,"rowspan",f.attrs.rowspan-1),f.content),v=r.positionAt(n+1,u,o);e.insert(e.mapping.slice(l).map(i+v),m),u+=f.attrs.colspan-1}}}function de(e,t){if(!x(e))return!1;if(t){var n=ne(e),r=e.tr;if(0==n.top&&n.bottom==n.map.height)return!1;for(var o=n.bottom-1;he(r,n,o),o!=n.top;o--)n.table=n.tableStart?r.doc.nodeAt(n.tableStart-1):r.doc,n.map=f.get(n.table);t(r)}return!0}function fe(e){var t=e.content;return 1==t.childCount&&t.firstChild.isTextblock&&0==t.firstChild.childCount}function me(e,t){var n=e.selection;if(!(n instanceof P)||n.$anchorCell.pos==n.$headCell.pos)return!1;var r=ne(e),o=r.map;if(function(e,t){for(var n=e.width,r=e.height,o=e.map,i=t.top*n+t.left,s=i,a=(t.bottom-1)*n+t.left,c=i+(t.right-t.left-1),l=t.top;l<t.bottom;l++){if(t.left>0&&o[s]==o[s-1]||t.right<n&&o[c]==o[c+1])return!0;s+=n,c+=n}for(var u=t.left;u<t.right;u++){if(t.top>0&&o[i]==o[i-n]||t.bottom<r&&o[a]==o[a+n])return!0;i++,a++}return!1}(o,r))return!1;if(t){for(var i,a,c=e.tr,l={},u=s.Fragment.empty,p=r.top;p<r.bottom;p++)for(var h=r.left;h<r.right;h++){var d=o.map[p*o.width+h],f=r.table.nodeAt(d);if(!l[d])if(l[d]=!0,null==i)i=d,a=f;else{fe(f)||(u=u.append(f.content));var m=c.mapping.map(d+r.tableStart);c.delete(m,m+f.nodeSize)}}if(c.setNodeMarkup(i+r.tableStart,null,A(R(a.attrs,a.attrs.colspan,r.right-r.left-a.attrs.colspan),"rowspan",r.bottom-r.top)),u.size){var v=i+1+a.content.size,g=fe(a)?i+1:v;c.replaceWith(g+r.tableStart,v+r.tableStart,u)}c.setSelection(new P(c.doc.resolve(i+r.tableStart))),t(c)}return!0}function ve(e,t){var n=b(e.schema);return ge(function(e){var t=e.node;return n[t.type.spec.tableRole]})(e,t)}function ge(e){return function(t,n){var r,o,i=t.selection;if(i instanceof P){if(i.$anchorCell.pos!=i.$headCell.pos)return!1;r=i.$anchorCell.nodeAfter,o=i.$anchorCell.pos}else{if(!(r=function(e){for(var t=e.depth;t>0;t--){var n=e.node(t).type.spec.tableRole;if("cell"===n||"header_cell"===n)return e.node(t)}return null}(i.$from)))return!1;o=S(i.$from).pos}if(1==r.attrs.colspan&&1==r.attrs.rowspan)return!1;if(n){var s=r.attrs,a=[],c=s.colwidth;s.rowspan>1&&(s=A(s,"rowspan",1)),s.colspan>1&&(s=A(s,"colspan",1));for(var l,u=ne(t),p=t.tr,h=0;h<u.right-u.left;h++)a.push(c?A(s,"colwidth",c&&c[h]?[c[h]]:null):s);for(var d=u.top;d<u.bottom;d++){var f=u.map.positionAt(d,u.left,u.table);d==u.top&&(f+=r.nodeSize);for(var m=u.left,v=0;m<u.right;m++,v++)m==u.left&&d==u.top||p.insert(l=p.mapping.map(f+u.tableStart,1),e({node:r,row:d,col:m}).createAndFill(a[v]))}p.setNodeMarkup(o,e({node:r,row:u.top,col:u.left}),a[0]),i instanceof P&&p.setSelection(new P(p.doc.resolve(i.$anchorCell.pos),l&&p.doc.resolve(l))),n(p)}return!0}}function ye(e,t){return function(n,r){if(!x(n))return!1;var o=k(n);if(o.nodeAfter.attrs[e]===t)return!1;if(r){var i=n.tr;n.selection instanceof P?n.selection.forEachCell(function(n,r){n.attrs[e]!==t&&i.setNodeMarkup(r,null,A(n.attrs,e,t))}):i.setNodeMarkup(o.pos,null,A(o.nodeAfter.attrs,e,t)),r(i)}return!0}}function be(e,t,n){for(var r=t.map.cellsInRect({left:0,top:0,right:"row"==e?t.map.width:1,bottom:"column"==e?t.map.height:1}),o=0;o<r.length;o++){var i=t.table.nodeAt(r[o]);if(i&&i.type!==n.header_cell)return!1}return!0}function we(e,t){return(t=t||{useDeprecatedLogic:!1}).useDeprecatedLogic?function(e){return function(t,n){if(!x(t))return!1;if(n){for(var r=b(t.schema),o=ne(t),i=t.tr,s=o.map.cellsInRect("column"==e?new d(o.left,0,o.right,o.map.height):"row"==e?new d(0,o.top,o.map.width,o.bottom):o),a=s.map(function(e){return o.table.nodeAt(e)}),c=0;c<s.length;c++)a[c].type==r.header_cell&&i.setNodeMarkup(o.tableStart+s[c],r.cell,a[c].attrs);if(0==i.steps.length)for(var l=0;l<s.length;l++)i.setNodeMarkup(o.tableStart+s[l],r.header_cell,a[l].attrs);n(i)}return!0}}(e):function(t,n){if(!x(t))return!1;if(n){var r=b(t.schema),o=ne(t),i=t.tr,s=be("row",o,r),a=be("column",o,r),c=("column"===e?s:"row"===e&&a)?1:0,l="column"==e?new d(0,c,1,o.map.height):"row"==e?new d(c,0,o.map.width,1):o,u="column"==e?a?r.cell:r.header_cell:"row"==e?s?r.cell:r.header_cell:r.cell;o.map.cellsInRect(l).forEach(function(e){var t=e+o.tableStart,n=i.doc.nodeAt(t);n&&i.setNodeMarkup(t,u,n.attrs)}),n(i)}return!0}}var Se=we("row",{useDeprecatedLogic:!0}),xe=we("column",{useDeprecatedLogic:!0}),ke=we("cell",{useDeprecatedLogic:!0});function Ce(e){return function(t,n){if(!x(t))return!1;var r=function(e,t){if(t<0){var n=e.nodeBefore;if(n)return e.pos-n.nodeSize;for(var r=e.index(-1)-1,o=e.before();r>=0;r--){var i=e.node(-1).child(r);if(i.childCount)return o-1-i.lastChild.nodeSize;o-=i.nodeSize}}else{if(e.index()<e.parent.childCount-1)return e.pos+e.nodeAfter.nodeSize;for(var s=e.node(-1),a=e.indexAfter(-1),c=e.after();a<s.childCount;a++){var l=s.child(a);if(l.childCount)return c+1;c+=l.nodeSize}}}(k(t),e);if(null!=r){if(n){var o=t.doc.resolve(r);n(t.tr.setSelection(i.TextSelection.between(o,O(o))).scrollIntoView())}return!0}}}function Oe(e,t){for(var n=e.selection.$anchor,r=n.depth;r>0;r--){if("table"==n.node(r).type.spec.tableRole)return t&&t(e.tr.delete(n.before(r),n.after(r)).scrollIntoView()),!0}return!1}var Me=function(e,t){this.node=e,this.cellMinWidth=t,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table")),this.colgroup=this.table.appendChild(document.createElement("colgroup")),Ne(e,this.colgroup,this.table,t),this.contentDOM=this.table.appendChild(document.createElement("tbody"))};function Ne(e,t,n,r,o,i){for(var s=0,a=!0,c=t.firstChild,l=e.firstChild,u=0,p=0;u<l.childCount;u++)for(var h=l.child(u).attrs,d=h.colspan,f=h.colwidth,m=0;m<d;m++,p++){var v=o==p?i:f&&f[m],g=v?v+"px":"";s+=v||r,v||(a=!1),c?(c.style.width!=g&&(c.style.width=g),c=c.nextSibling):t.appendChild(document.createElement("col")).style.width=g}for(;c;){var y=c.nextSibling;c.parentNode.removeChild(c),c=y}a?(n.style.width=s+"px",n.style.minWidth=""):(n.style.width="",n.style.minWidth=s+"px")}Me.prototype.update=function(e){return e.type==this.node.type&&(this.node=e,Ne(e,this.colgroup,this.table,this.cellMinWidth),!0)},Me.prototype.ignoreMutation=function(e){return"attributes"==e.type&&(e.target==this.table||this.colgroup.contains(e.target))};var Te=new i.PluginKey("tableColumnResizing");function De(e){void 0===e&&(e={});var t=e.handleWidth;void 0===t&&(t=5);var n=e.cellMinWidth;void 0===n&&(n=25);var r=e.View;void 0===r&&(r=Me);var o=e.lastColumnResizable;return void 0===o&&(o=!0),new i.Plugin({key:Te,state:{init:function(e,t){return this.spec.props.nodeViews[b(t.schema).table.name]=function(e,t){return new r(e,n,t)},new Ae(-1,!1)},apply:function(e,t){return t.apply(e)}},props:{attributes:function(e){return Te.getState(e).activeHandle>-1?{class:"resize-cursor"}:null},handleDOMEvents:{mousemove:function(e,n){!function(e,t,n,r,o){var i=Te.getState(e.state);if(!i.dragging){var s=function(e){for(;e&&"TD"!=e.nodeName&&"TH"!=e.nodeName;)e=e.classList.contains("ProseMirror")?null:e.parentNode;return e}(t.target),a=-1;if(s){var c=s.getBoundingClientRect(),l=c.left,u=c.right;t.clientX-l<=n?a=Ee(e,t,"left"):u-t.clientX<=n&&(a=Ee(e,t,"right"))}if(a!=i.activeHandle){if(!o&&-1!==a){var p=e.state.doc.resolve(a),h=p.node(-1),d=f.get(h),m=p.start(-1),v=d.colCount(p.pos-m)+p.nodeAfter.attrs.colspan-1;if(v==d.width-1)return}_e(e,a)}}}(e,n,t,0,o)},mouseleave:function(e){!function(e){var t=Te.getState(e.state);t.activeHandle>-1&&!t.dragging&&_e(e,-1)}(e)},mousedown:function(e,t){!function(e,t,n){var r=Te.getState(e.state);if(-1==r.activeHandle||r.dragging)return!1;var o=e.state.doc.nodeAt(r.activeHandle),i=function(e,t,n){var r=n.colspan,o=n.colwidth,i=o&&o[o.length-1];if(i)return i;var s=e.domAtPos(t),a=s.node.childNodes[s.offset].offsetWidth,c=r;if(o)for(var l=0;l<r;l++)o[l]&&(a-=o[l],c--);return a/c}(e,r.activeHandle,o.attrs);function s(t){window.removeEventListener("mouseup",s),window.removeEventListener("mousemove",a);var r=Te.getState(e.state);r.dragging&&(!function(e,t,n){for(var r=e.state.doc.resolve(t),o=r.node(-1),i=f.get(o),s=r.start(-1),a=i.colCount(r.pos-s)+r.nodeAfter.attrs.colspan-1,c=e.state.tr,l=0;l<i.height;l++){var u=l*i.width+a;if(!l||i.map[u]!=i.map[u-i.width]){var p=i.map[u],h=o.nodeAt(p),d=h.attrs,m=1==d.colspan?0:a-i.colCount(p);if(!d.colwidth||d.colwidth[m]!=n){var v=d.colwidth?d.colwidth.slice():Pe(d.colspan);v[m]=n,c.setNodeMarkup(s+p,null,A(d,"colwidth",v))}}}c.docChanged&&e.dispatch(c)}(e,r.activeHandle,Re(r.dragging,t,n)),e.dispatch(e.state.tr.setMeta(Te,{setDragging:null})))}function a(t){if(!t.which)return s(t);var r=Te.getState(e.state),o=Re(r.dragging,t,n);!function(e,t,n,r){var o=e.state.doc.resolve(t),i=o.node(-1),s=o.start(-1),a=f.get(i).colCount(o.pos-s)+o.nodeAfter.attrs.colspan-1,c=e.domAtPos(o.start(-1)).node;for(;"TABLE"!=c.nodeName;)c=c.parentNode;Ne(i,c.firstChild,c,r,a,n)}(e,r.activeHandle,o,n)}e.dispatch(e.state.tr.setMeta(Te,{setDragging:{startX:t.clientX,startWidth:i}})),window.addEventListener("mouseup",s),window.addEventListener("mousemove",a),t.preventDefault()}(e,t,n)}},decorations:function(e){var t=Te.getState(e);if(t.activeHandle>-1)return function(e,t){for(var n=[],r=e.doc.resolve(t),o=r.node(-1),i=f.get(o),s=r.start(-1),a=i.colCount(r.pos-s)+r.nodeAfter.attrs.colspan,l=0;l<i.height;l++){var u=a+l*i.width-1;if(!(a!=i.width&&i.map[u]==i.map[u+1]||0!=l&&i.map[u-1]==i.map[u-1-i.width])){var p=i.map[u],h=s+p+o.nodeAt(p).nodeSize-1,d=document.createElement("div");d.className="column-resize-handle",n.push(c.a.widget(h,d))}}return c.b.create(e.doc,n)}(e,t.activeHandle)},nodeViews:{}}})}var Ae=function(e,t){this.activeHandle=e,this.dragging=t};function Ee(e,t,n){var r=e.posAtCoords({left:t.clientX,top:t.clientY});if(!r)return-1;var o=r.pos,i=S(e.state.doc.resolve(o));if(!i)return-1;if("right"==n)return i.pos;var s=f.get(i.node(-1)),a=i.start(-1),c=s.map.indexOf(i.pos-a);return c%s.width==0?-1:a+s.map[c-1]}function Re(e,t,n){var r=t.clientX-e.startX;return Math.max(n,e.startWidth+r)}function _e(e,t){e.dispatch(e.state.tr.setMeta(Te,{setHandle:t}))}function Pe(e){for(var t=[],n=0;n<e;n++)t.push(0);return t}function $e(e){void 0===e&&(e={});var t=e.allowTableNodeSelection;return void 0===t&&(t=!1),new i.Plugin({key:w,state:{init:function(){return null},apply:function(e,t){var n=e.getMeta(w);if(null!=n)return-1==n?null:n;if(null==t||!e.docChanged)return t;var r=e.mapping.mapResult(t),o=r.deleted,i=r.pos;return o?null:i}},props:{decorations:I,handleDOMEvents:{mousedown:X},createSelectionBetween:function(e){if(null!=w.getState(e.state))return e.state.selection},handleTripleClick:U,handleKeyDown:q,handlePaste:G},appendTransaction:function(e,n,r){return function(e,t,n){var r,o,s=(t||e).selection,a=(t||e).doc;if(s instanceof i.NodeSelection&&(o=s.node.type.spec.tableRole)){if("cell"==o||"header_cell"==o)r=P.create(a,s.from);else if("row"==o){var c=a.resolve(s.from+1);r=P.rowSelection(c,c)}else if(!n){var l=f.get(s.node),u=s.from+1,p=u+l.map[l.width*l.height-1];r=P.create(a,u+1,p)}}else s instanceof i.TextSelection&&function(e){var t=e.$from,n=e.$to;if(t.pos==n.pos||t.pos<t.pos-6)return!1;for(var r=t.pos,o=n.pos,i=t.depth;i>=0&&!(t.after(i+1)<t.end(i));i--,r++);for(var s=n.depth;s>=0&&!(n.before(s+1)>n.start(s));s--,o--);return r==o&&/row|table/.test(t.node(i).type.spec.tableRole)}(s)?r=i.TextSelection.create(a,s.from):s instanceof i.TextSelection&&function(e){for(var t,n,r=e.$from,o=e.$to,i=r.depth;i>0;i--){var s=r.node(i);if("cell"===s.type.spec.tableRole||"header_cell"===s.type.spec.tableRole){t=s;break}}for(var a=o.depth;a>0;a--){var c=o.node(a);if("cell"===c.type.spec.tableRole||"header_cell"===c.type.spec.tableRole){n=c;break}}return t!==n&&0===o.parentOffset}(s)&&(r=i.TextSelection.create(a,s.$from.start(),s.$from.end()));return r&&(t||(t=e.tr)).setSelection(r),t}(r,te(r,n),t)}})}Ae.prototype.apply=function(e){var t=this,n=e.getMeta(Te);if(n&&null!=n.setHandle)return new Ae(n.setHandle,null);if(n&&void 0!==n.setDragging)return new Ae(t.activeHandle,n.setDragging);if(t.activeHandle>-1&&e.docChanged){var r=e.mapping.map(t.activeHandle,-1);C(e.doc.resolve(r))||(r=null),t=new Ae(r,t.dragging)}return t}},Xb7u:function(e,t,n){!function(){var t;function n(e){for(var t,n,r,o,i=1,s=[].slice.call(arguments),a=0,c=e.length,l="",u=!1,p=!1,h=function(){return s[i++]},d=function(){for(var n="";/\d/.test(e[a]);)n+=e[a++],t=e[a];return n.length>0?parseInt(n):null};a<c;++a)if(t=e[a],u)switch(u=!1,"."==t?(p=!1,t=e[++a]):"0"==t&&"."==e[a+1]?(p=!0,t=e[a+=2]):p=!0,o=d(),t){case"b":l+=parseInt(h(),10).toString(2);break;case"c":"string"==typeof(n=h())||n instanceof String?l+=n:l+=String.fromCharCode(parseInt(n,10));break;case"d":l+=parseInt(h(),10);break;case"f":r=String(parseFloat(h()).toFixed(o||6)),l+=p?r:r.replace(/^0/,"");break;case"j":l+=JSON.stringify(h());break;case"o":l+="0"+parseInt(h(),10).toString(8);break;case"s":l+=h();break;case"x":l+="0x"+parseInt(h(),10).toString(16);break;case"X":l+="0x"+parseInt(h(),10).toString(16).toUpperCase();break;default:l+=t}else"%"===t?u=!0:l+=t;return l}(t=e.exports=n).format=n,t.vsprintf=function(e,t){return n.apply(null,[e].concat(t))},"undefined"!=typeof console&&"function"==typeof console.log&&(t.printf=function(){console.log(n.apply(null,arguments))})}()},e56X:function(e,t,n){const{noopTest:r,edit:o,merge:i}=n("rUJ1"),s={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|<![A-Z][\\s\\S]*?>\\n*|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\n*|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|</(?!script|pre|style)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *<?([^\s>]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:r,table:r,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};s.def=o(s.def).replace("label",s._label).replace("title",s._title).getRegex(),s.bullet=/(?:[*+-]|\d{1,9}\.)/,s.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,s.item=o(s.item,"gm").replace(/bull/g,s.bullet).getRegex(),s.list=o(s.list).replace(/bull/g,s.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+s.def.source+")").getRegex(),s._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",s._comment=/<!--(?!-?>)[\s\S]*?-->/,s.html=o(s.html,"i").replace("comment",s._comment).replace("tag",s._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),s.paragraph=o(s._paragraph).replace("hr",s.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",s._tag).getRegex(),s.blockquote=o(s.blockquote).replace("paragraph",s.paragraph).getRegex(),s.normal=i({},s),s.gfm=i({},s.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n *([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n *\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),s.gfm.nptable=o(s.gfm.nptable).replace("hr",s.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[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",s._tag).getRegex(),s.gfm.table=o(s.gfm.table).replace("hr",s.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[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|!--)").replace("tag",s._tag).getRegex(),s.pedantic=i({},s.normal,{html:o("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",s._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(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:r,paragraph:o(s.normal._paragraph).replace("hr",s.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",s.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});const a={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:r,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*<\[])\*(?!\*)|^_([^\s<][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s<"][\s\S]*?[^\s\*])\*(?!\*|[^\spunctuation])|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:r,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*]|\b_|$)|[^ ](?= {2,}\n))|(?= {2,}\n))/,_punctuation:"!\"#$%&'()*+,\\-./:;<=>?@\\[^_{|}~"};a.em=o(a.em).replace(/punctuation/g,a._punctuation).getRegex(),a._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,a._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,a._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])?)+(?![-_])/,a.autolink=o(a.autolink).replace("scheme",a._scheme).replace("email",a._email).getRegex(),a._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,a.tag=o(a.tag).replace("comment",s._comment).replace("attribute",a._attribute).getRegex(),a._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,a._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,a._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,a.link=o(a.link).replace("label",a._label).replace("href",a._href).replace("title",a._title).getRegex(),a.reflink=o(a.reflink).replace("label",a._label).getRegex(),a.normal=i({},a),a.pedantic=i({},a.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:o(/^!?\[(label)\]\((.*?)\)/).replace("label",a._label).getRegex(),reflink:o(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",a._label).getRegex()}),a.gfm=i({},a.normal,{escape:o(a.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\<!\[`*~]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))|(?= {2,}\n|[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))/}),a.gfm.url=o(a.gfm.url,"i").replace("email",a.gfm._extended_email).getRegex(),a.breaks=i({},a.gfm,{br:o(a.br).replace("{2,}","*").getRegex(),text:o(a.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()}),e.exports={block:s,inline:a}},fwbU:function(e,t,n){"use strict";n.d(t,"a",function(){return y}),n.d(t,"b",function(){return g});for(var r={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",229:"q"},o={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"',229:"Q"},i="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),s="undefined"!=typeof navigator&&/Apple Computer/.test(navigator.vendor),a="undefined"!=typeof navigator&&/Gecko\/\d+/.test(navigator.userAgent),c="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),l="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),u=i&&(c||+i[1]<57)||a&&c,p=0;p<10;p++)r[48+p]=r[96+p]=String(p);for(p=1;p<=24;p++)r[p+111]="F"+p;for(p=65;p<=90;p++)r[p]=String.fromCharCode(p+32),o[p]=String.fromCharCode(p);for(var h in r)o.hasOwnProperty(h)||(o[h]=r[h]);var d=n("UxO+"),f="undefined"!=typeof navigator&&/Mac/.test(navigator.platform);function m(e){var t,n,r,o,i=e.split(/-(?!$)/),s=i[i.length-1];"Space"==s&&(s=" ");for(var a=0;a<i.length-1;a++){var c=i[a];if(/^(cmd|meta|m)$/i.test(c))o=!0;else if(/^a(lt)?$/i.test(c))t=!0;else if(/^(c|ctrl|control)$/i.test(c))n=!0;else if(/^s(hift)?$/i.test(c))r=!0;else{if(!/^mod$/i.test(c))throw new Error("Unrecognized modifier name: "+c);f?o=!0:n=!0}}return t&&(s="Alt-"+s),n&&(s="Ctrl-"+s),o&&(s="Meta-"+s),r&&(s="Shift-"+s),s}function v(e,t,n){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),!1!==n&&t.shiftKey&&(e="Shift-"+e),e}function g(e){return new d.Plugin({props:{handleKeyDown:y(e)}})}function y(e){var t=function(e){var t=Object.create(null);for(var n in e)t[m(n)]=e[n];return t}(e);return function(e,n){var i,a=function(e){var t=!(u&&(e.ctrlKey||e.altKey||e.metaKey)||(s||l)&&e.shiftKey&&e.key&&1==e.key.length)&&e.key||(e.shiftKey?o:r)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(n),c=1==a.length&&" "!=a,p=t[v(a,n,!c)];if(p&&p(e.state,e.dispatch,e))return!0;if(c&&(n.shiftKey||n.altKey||n.metaKey||a.charCodeAt(0)>127)&&(i=r[n.keyCode])&&i!=a){var h=t[v(i,n,!0)];if(h&&h(e.state,e.dispatch,e))return!0}else if(c&&n.shiftKey){var d=t[v(a,n,!0)];if(d&&d(e.state,e.dispatch,e))return!0}return!1}}},hyX7:function(e,t,n){const r=n("SbYC"),{defaults:o}=n("vbtb"),{inline:i}=n("e56X"),{findClosingBracket:s,escape:a}=n("rUJ1");e.exports=class e{constructor(e,t){if(this.options=t||o,this.links=e,this.rules=i.normal,this.options.renderer=this.options.renderer||new r,this.renderer=this.options.renderer,this.renderer.options=this.options,!this.links)throw new Error("Tokens array requires a `links` property.");this.options.pedantic?this.rules=i.pedantic:this.options.gfm&&(this.options.breaks?this.rules=i.breaks:this.rules=i.gfm)}static get rules(){return i}static output(t,n,r){return new e(n,r).output(t)}output(t){let n,r,o,i,c,l,u="";for(;t;)if(c=this.rules.escape.exec(t))t=t.substring(c[0].length),u+=a(c[1]);else if(c=this.rules.tag.exec(t))!this.inLink&&/^<a /i.test(c[0])?this.inLink=!0:this.inLink&&/^<\/a>/i.test(c[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(c[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(c[0])&&(this.inRawBlock=!1),t=t.substring(c[0].length),u+=this.renderer.html(this.options.sanitize?this.options.sanitizer?this.options.sanitizer(c[0]):a(c[0]):c[0]);else if(c=this.rules.link.exec(t)){const r=s(c[2],"()");if(r>-1){const e=(0===c[0].indexOf("!")?5:4)+c[1].length+r;c[2]=c[2].substring(0,r),c[0]=c[0].substring(0,e).trim(),c[3]=""}t=t.substring(c[0].length),this.inLink=!0,o=c[2],this.options.pedantic?(n=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o))?(o=n[1],i=n[3]):i="":i=c[3]?c[3].slice(1,-1):"",o=o.trim().replace(/^<([\s\S]*)>$/,"$1"),u+=this.outputLink(c,{href:e.escapes(o),title:e.escapes(i)}),this.inLink=!1}else if((c=this.rules.reflink.exec(t))||(c=this.rules.nolink.exec(t))){if(t=t.substring(c[0].length),n=(c[2]||c[1]).replace(/\s+/g," "),!(n=this.links[n.toLowerCase()])||!n.href){u+=c[0].charAt(0),t=c[0].substring(1)+t;continue}this.inLink=!0,u+=this.outputLink(c,n),this.inLink=!1}else if(c=this.rules.strong.exec(t))t=t.substring(c[0].length),u+=this.renderer.strong(this.output(c[4]||c[3]||c[2]||c[1]));else if(c=this.rules.em.exec(t))t=t.substring(c[0].length),u+=this.renderer.em(this.output(c[6]||c[5]||c[4]||c[3]||c[2]||c[1]));else if(c=this.rules.code.exec(t))t=t.substring(c[0].length),u+=this.renderer.codespan(a(c[2].trim(),!0));else if(c=this.rules.br.exec(t))t=t.substring(c[0].length),u+=this.renderer.br();else if(c=this.rules.del.exec(t))t=t.substring(c[0].length),u+=this.renderer.del(this.output(c[1]));else if(c=this.rules.autolink.exec(t))t=t.substring(c[0].length),o="@"===c[2]?"mailto:"+(r=a(this.mangle(c[1]))):r=a(c[1]),u+=this.renderer.link(o,null,r);else if(this.inLink||!(c=this.rules.url.exec(t))){if(c=this.rules.text.exec(t))t=t.substring(c[0].length),this.inRawBlock?u+=this.renderer.text(this.options.sanitize?this.options.sanitizer?this.options.sanitizer(c[0]):a(c[0]):c[0]):u+=this.renderer.text(a(this.smartypants(c[0])));else if(t)throw new Error("Infinite loop on byte: "+t.charCodeAt(0))}else{if("@"===c[2])o="mailto:"+(r=a(c[0]));else{do{l=c[0],c[0]=this.rules._backpedal.exec(c[0])[0]}while(l!==c[0]);r=a(c[0]),o="www."===c[1]?"http://"+r:r}t=t.substring(c[0].length),u+=this.renderer.link(o,null,r)}return u}static escapes(t){return t?t.replace(e.rules._escapes,"$1"):t}outputLink(e,t){const n=t.href,r=t.title?a(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(n,r,this.output(e[1])):this.renderer.image(n,r,a(e[1]))}smartypants(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e}mangle(e){if(!this.options.mangle)return e;const t=e.length;let n,r="",o=0;for(;o<t;o++)n=e.charCodeAt(o),Math.random()>.5&&(n="x"+n.toString(16)),r+="&#"+n+";";return r}}},mG1W:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n("UxO+"),o=n("MEpN"),i=n("Vb5C"),s=function(e,t){return function(n){Array.isArray(e)||(e=[e]);for(var r=0,o=e.length;r<o;r++){var i=R(e[r])(n.selection);if(i){var s=m(i.pos,t)(n);if(s!==n)return s}}return n}},a=function(e){return function(t){if(h(t.selection)){var n=t.selection,i=n.$from,s=n.$to;if(e instanceof o.Fragment&&i.parent.canReplace(i.index(),i.indexAfter(),e)||i.parent.canReplaceWith(i.index(),i.indexAfter(),e.type))return f(t.replaceWith(i.pos,s.pos,e).setSelection(new r.NodeSelection(t.doc.resolve(i.pos))))}return t}},c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return function(n){var o=r.Selection.findFrom(n.doc.resolve(e),t,!0);return o?n.setSelection(o):n}},l=function(e){return e.type&&e.type.spec.selectable},u=function(e,t,n){return function(e){return l(e)&&e.type.isLeaf}(e)?n.setSelection(new r.NodeSelection(n.doc.resolve(t))):c(t)(n)},p=function(e,t,n){return function(r){var o="number"==typeof t,i=r.selection.$from,c=o?r.doc.resolve(t):h(r.selection)?r.doc.resolve(i.pos+1):i,p=c.parent;if(h(r.selection)&&n&&r!==(r=a(e)(r)))return r;if(w(p)&&r!==(r=s(p.type,e)(r))){var d=l(e)?c.before(c.depth):c.pos;return u(e,d,r)}if(b(c,e)){r.insert(c.pos,e);var m=o?c.pos:l(e)?r.selection.$anchor.pos-1:r.selection.$anchor.pos;return f(u(e,m,r))}for(var v=c.depth;v>0;v--){var g=c.after(v),y=r.doc.resolve(g);if(b(y,e))return r.insert(g,e),f(u(e,g,r))}return r}},h=function(e){return e instanceof r.NodeSelection},d=function(e,t){return Array.isArray(e)&&e.indexOf(t.type)>-1||t.type===e},f=function(e){return Object.assign(Object.create(e),e).setTime(Date.now())},m=function(e,t){return function(n){var r=n.doc.nodeAt(e),o=n.doc.resolve(e);if(v(o,t)){var i=(n=n.replaceWith(e,e+r.nodeSize,t)).selection.$from.pos-1;return n=c(Math.max(i,0),-1)(n),n=c(n.selection.$from.start())(n),f(n)}return n}},v=function(e,t){var n=e.node(e.depth);return n&&n.type.validContent(t instanceof o.Fragment?t:o.Fragment.from(t))},g=function(e){return function(t){var n=t.doc.nodeAt(e);return f(t.delete(e,e+n.nodeSize))}},y=function(e){if(e.cached.tableNodeTypes)return e.cached.tableNodeTypes;var t={};return Object.keys(e.nodes).forEach(function(n){var r=e.nodes[n];r.spec.tableRole&&(t[r.spec.tableRole]=r)}),e.cached.tableNodeTypes=t,t},b=function(e,t){var n=e.index();return t instanceof o.Fragment?e.parent.canReplace(n,n,t):t instanceof o.Node&&e.parent.canReplaceWith(n,n,t.type)},w=function(e){return!e||"paragraph"===e.type.name&&2===e.nodeSize},S=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return t?e.createChecked(null,t):e.createAndFill()},x=function(e){return function(t){for(var n=i.TableMap.get(t.$anchorCell.node(-1)),r=t.$anchorCell.start(-1),o=n.cellsInRect(e),s=n.cellsInRect(n.rectBetween(t.$anchorCell.pos-r,t.$headCell.pos-r)),a=0,c=o.length;a<c;a++)if(-1===s.indexOf(o[a]))return!1;return!0}},k=function(e){return e[0].map(function(t,n){return e.map(function(e){return e[n]})})},C=function(e){for(var t=i.TableMap.get(e),n=[],r=0;r<t.height;r++){for(var o=[],s={},a=0;a<t.width;a++){var c=t.map[r*t.width+a],l=e.nodeAt(c),u=t.findCell(c);s[c]||u.top!==r?o.push(null):(s[c]=!0,o.push(l))}n.push(o)}return n},O=function(e,t){for(var n=[],r=i.TableMap.get(e),o=0;o<r.height;o++){for(var s=e.child(o),a=[],c=0;c<r.width;c++)if(t[o][c]){var l=r.map[o*r.width+c],u=t[o][c],p=e.nodeAt(l).type.createChecked(Object.assign({},u.attrs),u.content,u.marks);a.push(p)}n.push(s.type.createChecked(s.attrs,a,s.marks))}return e.type.createChecked(e.attrs,n,e.marks)},M=function(e,t,n,r){var o=t[0]>n[0]?-1:1,i=e.splice(t[0],t.length),s=i.length%2==0?1:0,a=void 0;return a=-1===r&&1===o?n[0]-1:1===r&&-1===o?n[n.length-1]-s+1:-1===o?n[0]:n[n.length-1]-s,e.splice.apply(e,[a,0].concat(i)),e},N=function(e,t,n,r){var o="Target position is invalid, you can't move the "+r+" "+e+" to "+t+", the target can't be split. You could use tryToFit option.";if(1===(e>t?-1:1)){if(-1!==n.slice(0,n.length-1).indexOf(t))throw new Error(o)}else if(-1!==n.slice(1).indexOf(t))throw new Error(o);return!0},T=function(e){return function(t){var n=t.$from;return D(n,e)}},D=function(e,t){for(var n=e.depth;n>0;n--){var r=e.node(n);if(t(r))return{pos:n>0?e.before(n):0,start:e.start(n),depth:n,node:r}}},A=function(e,t){return function(n){var r=T(e)(n);if(r)return P(r.pos,t)}},E=function(e){return function(t){return!!T(e)(t)}},R=function(e){return function(t){return T(function(t){return d(e,t)})(t)}},_=function(e){var t=e.$from.nodeBefore,n=r.Selection.findFrom(e.$from,-1);if(n&&t){var o=R(t.type)(n);return o?o.pos:n.$from.pos}},P=function(e,t){var n=t(e),r=n.node.childNodes[n.offset];return n.node.nodeType===Node.TEXT_NODE?n.node.parentNode:r&&r.nodeType!==Node.TEXT_NODE?r:n.node},$=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!e)throw new Error('Invalid "node" parameter');var n=[];return e.descendants(function(e,r){if(n.push({node:e,pos:r}),!t)return!1}),n},I=function(e,t,n){if(!e)throw new Error('Invalid "node" parameter');if(!t)throw new Error('Invalid "predicate" parameter');return $(e,n).filter(function(e){return t(e.node)})},z=function(e,t,n){return I(e,function(e){return e.type===t},n)};var B=function(e){return T(function(e){return e.type.spec.tableRole&&"table"===e.type.spec.tableRole})(e)},F=function(e){return e instanceof i.CellSelection},V=function(e){if(F(e)){var t=i.TableMap.get(e.$anchorCell.node(-1));return x({left:0,right:t.width,top:0,bottom:t.height})(e)}return!1},j=function(e){return function(t){var n=B(t);if(n){var r=i.TableMap.get(n.node);return(Array.isArray(e)?e:Array.from([e])).reduce(function(e,t){if(t>=0&&t<=r.width-1){var o=r.cellsInRect({left:t,right:t+1,top:0,bottom:r.height});return e.concat(o.map(function(e){var t=n.node.nodeAt(e),r=e+n.start;return{pos:r,start:r+1,node:t}}))}},[])}}},L=function(e){return function(t){var n=B(t);if(n){var r=i.TableMap.get(n.node);return(Array.isArray(e)?e:Array.from([e])).reduce(function(e,t){if(t>=0&&t<=r.height-1){var o=r.cellsInRect({left:0,right:r.width,top:t,bottom:t+1});return e.concat(o.map(function(e){var t=n.node.nodeAt(e),r=e+n.start;return{pos:r,start:r+1,node:t}}))}},[])}}},q=function(e){return function(t,n){return function(r){var o=B(r.selection),s="row"===e;if(o){var a=i.TableMap.get(o.node);if(t>=0&&t<(s?a.height:a.width)){var c=s?0:t,l=s?t:0,u=s?a.width:t+1,p=s?t+1:a.height;if(n){var h=Z(r.selection.$from);if(!h)return r;var d=a.findCell(h.pos-o.start);s?(l=Math.min(l,d.top),p=Math.max(p,d.bottom)):(c=Math.min(c,d.left),u=Math.max(u,d.right))}var m=a.cellsInRect({left:c,top:l,right:s?u:c+1,bottom:s?l+1:p}),v=p-l==1?m:a.cellsInRect({left:s?c:u-1,top:s?p-1:l,right:u,bottom:p}),g=o.start+m[0],y=o.start+v[v.length-1],b=r.doc.resolve(g),w=r.doc.resolve(y);return f(r.setSelection(new i.CellSelection(w,b)))}}return r}}},W=q("column"),K=q("row"),J=function(e){return function(t){var n=B(t.selection);if(n){var r=i.TableMap.get(n.node);if(e>=0&&e<=r.height){for(var o=n.node,s=y(o.type.schema),a=n.start,c=0;c<e+1;c++)a+=o.child(c).nodeSize;var l=o.child(e),u=[],h=0;if(l.forEach(function(e){1===e.attrs.rowspan&&(h+=e.attrs.colspan,u.push(s[e.type.spec.tableRole].createAndFill(e.attrs,e.marks)))}),h<r.width){for(var d=[],f=function(n){var r=Q(n,function(t,r){var o=t.node.attrs.rowspan;return o>1&&n+o>e})(t);d.push.apply(d,function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}(r))},m=e;m>=0;m--)f(m);d.length&&d.forEach(function(e){t=X(e,{rowspan:e.node.attrs.rowspan+1})(t)})}return p(s.row.create(l.attrs,u),a)(t)}}return t}},H=function(e){return function(t){var n=B(t.selection);if(n){var r=i.TableMap.get(n.node);if(0===e&&1===r.width)return G(t);if(e>=0&&e<=r.width)return i.removeColumn(t,{map:r,tableStart:n.start,table:n.node},e),f(t)}return t}},U=function(e){return function(t){var n=B(t.selection);if(n){var r=i.TableMap.get(n.node);if(0===e&&1===r.height)return G(t);if(e>=0&&e<=r.height)return i.removeRow(t,{map:r,tableStart:n.start,table:n.node},e),f(t)}return t}},G=function(e){for(var t=e.selection.$from,n=t.depth;n>0;n--){if("table"===t.node(n).type.spec.tableRole)return f(e.delete(t.before(n),t.after(n)))}return e},X=function(e,t){return function(n){return e?(n.setNodeMarkup(e.pos,null,Object.assign({},e.node.attrs,t)),f(n)):n}},Z=function(e){return D(e,function(e){return e.type.spec.tableRole&&/cell/i.test(e.type.spec.tableRole)})},Y=function(e){var t=Z(e);if(t){var n=function(e){return D(e,function(e){return e.type.spec.tableRole&&/table/i.test(e.type.spec.tableRole)})}(e),r=i.TableMap.get(n.node),o=t.pos-n.start;return r.rectBetween(o,o)}},Q=function(e,t){return function(n){var r=[],o=L(e)(n.selection);if(o)for(var i=o.length-1;i>=0;i--)t(o[i],n)&&r.push(o[i]);return r}},ee=function(e){return function(t){for(var n=e,r=e,o=function(e){var o=j(e)(t.selection);o&&o.forEach(function(t){var o=t.node.attrs.colspan+e-1;o>=n&&(n=e),o>r&&(r=o)})},i=e;i>=0;i--)o(i);var s=function(e){var n=j(e)(t.selection);n&&n.forEach(function(t){var n=t.node.attrs.colspan+e-1;t.node.attrs.colspan>1&&n>r&&(r=n)})};for(i=e;i<=r;i++)s(i);var a=[];for(i=n;i<=r;i++){var c=j(i)(t.selection);c&&c.length&&a.push(i)}n=a[0],r=a[a.length-1];for(var l=j(n)(t.selection),u=L(0)(t.selection),p=t.doc.resolve(l[l.length-1].pos),h=void 0,d=r;d>=n;d--){var f=j(d)(t.selection);if(f&&f.length){for(var m=u.length-1;m>=0;m--)if(u[m].pos===f[0].pos){h=f[0];break}if(h)break}}return{$anchor:p,$head:t.doc.resolve(h.pos),indexes:a}}},te=function(e){return function(t){for(var n=e,r=e,o=function(e){L(e)(t.selection).forEach(function(t){var o=t.node.attrs.rowspan+e-1;o>=n&&(n=e),o>r&&(r=o)})},i=e;i>=0;i--)o(i);var s=function(e){L(e)(t.selection).forEach(function(t){var n=t.node.attrs.rowspan+e-1;t.node.attrs.rowspan>1&&n>r&&(r=n)})};for(i=e;i<=r;i++)s(i);var a=[];for(i=n;i<=r;i++){var c=L(i)(t.selection);c&&c.length&&a.push(i)}n=a[0],r=a[a.length-1];for(var l=L(n)(t.selection),u=j(0)(t.selection),p=t.doc.resolve(l[l.length-1].pos),h=void 0,d=r;d>=n;d--){var f=L(d)(t.selection);if(f&&f.length){for(var m=u.length-1;m>=0;m--)if(u[m].pos===f[0].pos){h=f[0];break}if(h)break}}return{$anchor:p,$head:t.doc.resolve(h.pos),indexes:a}}};t.isNodeSelection=h,t.canInsert=b,t.convertTableNodeToArrayOfRows=C,t.convertArrayOfRowsToTableNode=O,t.findParentNode=T,t.findParentNodeClosestToPos=D,t.findParentDomRef=A,t.hasParentNode=E,t.findParentNodeOfType=R,t.findParentNodeOfTypeClosestToPos=function(e,t){return D(e,function(e){return d(t,e)})},t.hasParentNodeOfType=function(e){return function(t){return E(function(t){return d(e,t)})(t)}},t.findParentDomRefOfType=function(e,t){return function(n){return A(function(t){return d(e,t)},t)(n)}},t.findSelectedNodeOfType=function(e){return function(t){if(h(t)){var n=t.node,r=t.$from;if(d(e,n))return{node:n,pos:r.pos,depth:r.depth}}}},t.findPositionOfNodeBefore=_,t.findDomRefAtPos=P,t.flatten=$,t.findChildren=I,t.findTextNodes=function(e,t){return I(e,function(e){return e.isText},t)},t.findInlineNodes=function(e,t){return I(e,function(e){return e.isInline},t)},t.findBlockNodes=function(e,t){return I(e,function(e){return e.isBlock},t)},t.findChildrenByAttr=function(e,t,n){return I(e,function(e){return!!t(e.attrs)},n)},t.findChildrenByType=z,t.findChildrenByMark=function(e,t,n){return I(e,function(e){return t.isInSet(e.marks)},n)},t.contains=function(e,t){return!!z(e,t).length},t.findTable=B,t.isCellSelection=F,t.getSelectionRect=function(e){if(F(e)){var t=e.$anchorCell.start(-1);return i.TableMap.get(e.$anchorCell.node(-1)).rectBetween(e.$anchorCell.pos-t,e.$headCell.pos-t)}},t.isColumnSelected=function(e){return function(t){if(F(t)){var n=i.TableMap.get(t.$anchorCell.node(-1));return x({left:e,right:e+1,top:0,bottom:n.height})(t)}return!1}},t.isRowSelected=function(e){return function(t){if(F(t)){var n=i.TableMap.get(t.$anchorCell.node(-1));return x({left:0,right:n.width,top:e,bottom:e+1})(t)}return!1}},t.isTableSelected=V,t.getCellsInColumn=j,t.getCellsInRow=L,t.getCellsInTable=function(e){var t=B(e);if(t){var n=i.TableMap.get(t.node);return n.cellsInRect({left:0,right:n.width,top:0,bottom:n.height}).map(function(e){var n=t.node.nodeAt(e),r=e+t.start;return{pos:r,start:r+1,node:n}})}},t.selectColumn=W,t.selectRow=K,t.selectTable=function(e){var t=B(e.selection);if(t){var n=i.TableMap.get(t.node).map;if(n&&n.length){var r=t.start+n[0],o=t.start+n[n.length-1],s=e.doc.resolve(r),a=e.doc.resolve(o);return f(e.setSelection(new i.CellSelection(a,s)))}}return e},t.emptyCell=function(e,t){return function(n){if(e){var r=y(t).cell.createAndFill().content;if(!e.node.content.eq(r))return n.replaceWith(e.pos+1,e.pos+e.node.nodeSize,r),f(n)}return n}},t.addColumnAt=function(e){return function(t){var n=B(t.selection);if(n){var r=i.TableMap.get(n.node);if(e>=0&&e<=r.width)return f(i.addColumn(t,{map:r,tableStart:n.start,table:n.node},e))}return t}},t.moveRow=function(e,t,n){return function(r){var o=Object.assign({tryToFit:!1,direction:0},n),i=B(r.selection);if(!i)return r;var s=te(e)(r).indexes,a=te(t)(r).indexes;if(s.indexOf(t)>-1)return r;!o.tryToFit&&a.length>1&&N(e,t,a,"row");var c=function(e,t,n,r){var o=C(e.node);return o=M(o,t,n,r),O(e.node,o)}(i,s,a,o.direction);return f(r).replaceWith(i.pos,i.pos+i.node.nodeSize,c)}},t.moveColumn=function(e,t,n){return function(r){var o=Object.assign({tryToFit:!1,direction:0},n),i=B(r.selection);if(!i)return r;var s=ee(e)(r).indexes,a=ee(t)(r).indexes;if(s.indexOf(t)>-1)return r;!o.tryToFit&&a.length>1&&N(e,t,a,"column");var c=function(e,t,n,r){var o=k(C(e.node));return o=M(o,t,n,r),o=k(o),O(e.node,o)}(i,s,a,o.direction);return f(r).replaceWith(i.pos,i.pos+i.node.nodeSize,c)}},t.addRowAt=function(e,t){return function(n){var r=B(n.selection);if(r){var o=i.TableMap.get(r.node),s=e-1;if(t&&s>=0)return f(J(s)(n));if(e>=0&&e<=o.height)return f(i.addRow(n,{map:o,tableStart:r.start,table:r.node},e))}return n}},t.cloneRowAt=J,t.removeColumnAt=H,t.removeRowAt=U,t.removeTable=G,t.removeSelectedColumns=function(e){var t=e.selection;if(V(t))return G(e);if(F(t)){var n=B(t);if(n){var r=i.TableMap.get(n.node),o=r.rectBetween(t.$anchorCell.pos-n.start,t.$headCell.pos-n.start);if(0==o.left&&o.right==r.width)return!1;for(var s=Object.assign({},o,{map:r,table:n.node,tableStart:n.start}),a=s.right-1;i.removeColumn(e,s,a),a!==s.left;a--)s.table=s.tableStart?e.doc.nodeAt(s.tableStart-1):e.doc,s.map=i.TableMap.get(s.table);return f(e)}}return e},t.removeSelectedRows=function(e){var t=e.selection;if(V(t))return G(e);if(F(t)){var n=B(t);if(n){var r=i.TableMap.get(n.node),o=r.rectBetween(t.$anchorCell.pos-n.start,t.$headCell.pos-n.start);if(0==o.top&&o.bottom==r.height)return!1;for(var s=Object.assign({},o,{map:r,table:n.node,tableStart:n.start}),a=s.bottom-1;i.removeRow(e,s,a),a!==s.top;a--)s.table=s.tableStart?e.doc.nodeAt(s.tableStart-1):e.doc,s.map=i.TableMap.get(s.table);return f(e)}}return e},t.removeColumnClosestToPos=function(e){return function(t){var n=Y(e);return n?H(n.left)(c(e.pos)(t)):t}},t.removeRowClosestToPos=function(e){return function(t){var n=Y(e);return n?U(n.top)(c(e.pos)(t)):t}},t.forEachCellInColumn=function(e,t,n){return function(o){var i=j(e)(o.selection);if(i){for(var s=i.length-1;s>=0;s--)o=t(i[s],o);if(n){var a=o.doc.resolve(o.mapping.map(i[i.length-1].pos));o.setSelection(r.Selection.near(a))}return f(o)}return o}},t.forEachCellInRow=function(e,t,n){return function(o){var i=L(e)(o.selection);if(i){for(var s=i.length-1;s>=0;s--)o=t(i[s],o);if(n){var a=o.doc.resolve(o.mapping.map(i[i.length-1].pos));o.setSelection(r.Selection.near(a))}}return o}},t.setCellAttrs=X,t.createTable=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3,r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,i=y(e),s=i.cell,a=i.header_cell,c=i.row,l=i.table,u=[],p=[],h=0;h<n;h++)u.push(S(s,o)),r&&p.push(S(a,o));for(var d=[],f=0;f<t;f++)d.push(c.createChecked(null,r&&0===f?p:u));return l.createChecked(null,d)},t.findCellClosestToPos=Z,t.findCellRectClosestToPos=Y,t.getSelectionRangeInColumn=ee,t.getSelectionRangeInRow=te,t.removeParentNodeOfType=function(e){return function(t){var n=R(e)(t.selection);return n?g(n.pos)(t):t}},t.replaceParentNodeOfType=s,t.removeSelectedNode=function(e){if(h(e.selection)){var t=e.selection.$from.pos,n=e.selection.$to.pos;return f(e.delete(t,n))}return e},t.replaceSelectedNode=a,t.setTextSelection=c,t.safeInsert=p,t.setParentNodeMarkup=function(e,t,n,r){return function(o){var i=R(e)(o.selection);return i?f(o.setNodeMarkup(i.pos,t,Object.assign({},i.node.attrs,n),r)):o}},t.selectParentNodeOfType=function(e){return function(t){if(!h(t.selection)){var n=R(e)(t.selection);if(n)return f(t.setSelection(r.NodeSelection.create(t.doc,n.pos)))}return t}},t.removeNodeBefore=function(e){var t=_(e.selection);return"number"==typeof t?g(t)(e):e}},oV9I:function(e,t,n){"use strict";n.d(t,"a",function(){return l}),n.d(t,"b",function(){return p}),n.d(t,"c",function(){return u}),n.d(t,"d",function(){return h}),n.d(t,"e",function(){return d}),n.d(t,"f",function(){return f});var r=n("mG1W"); -/*! - * tiptap-utils v1.10.0 - * (c) 2020 Scrumpy UG (limited liability) - * @license MIT - */ -function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach(function(t){o(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function a(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return c(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return c(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function l(e,t){var n=e.selection,r=n.from,o=n.to,i=[];e.doc.nodesBetween(r,o,function(e){i=[].concat(a(i),a(e.marks))});var s=i.find(function(e){return e.type.name===t.name});return s?s.attrs:{}}function u(e,t){var n=e.selection,r=n.from,o=n.to,i=[];e.doc.nodesBetween(r,o,function(e){i=[].concat(a(i),[e])});var s=i.reverse().find(function(e){return e.type.name===t.name});return s?s.attrs:{}}function p(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!e||!t)return!1;var n=e.parent.childAfter(e.parentOffset);if(!n.node)return!1;var r=n.node.marks.find(function(e){return e.type===t});if(!r)return!1;for(var o=e.index(),i=e.start()+n.offset,s=o+1,a=i+n.node.nodeSize;o>0&&r.isInSet(e.parent.child(o-1).marks);)o-=1,i-=e.parent.child(o).nodeSize;for(;s<e.parent.childCount&&r.isInSet(e.parent.child(s).marks);)a+=e.parent.child(s).nodeSize,s+=1;return{from:i,to:a}}function h(e,t){var n=e.selection,r=n.from,o=n.$from,i=n.to;return n.empty?!!t.isInSet(e.storedMarks||o.marks()):!!e.doc.rangeHasMark(r,i,t)}function d(e){var t=e.types,n=e.node;return Array.isArray(t)&&t.includes(n.type)||n.type===t}function f(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=Object(r.findSelectedNodeOfType)(t)(e.selection)||Object(r.findParentNode)(function(e){return e.type===t})(e.selection);return Object.keys(n).length&&o?o.node.hasMarkup(t,s(s({},o.node.attrs),n)):!!o}},"qd4/":function(e,t,n){"use strict";n.d(t,"a",function(){return r.b}),n.d(t,"b",function(){return r.c}),n.d(t,"k",function(){return r.e}),n.d(t,"r",function(){return r.f}),n.d(t,"d",function(){return c}),n.d(t,"l",function(){return l}),n.d(t,"m",function(){return a}),n.d(t,"o",function(){return u.c}),n.d(t,"u",function(){return u.e}),n.d(t,"c",function(){return f}),n.d(t,"e",function(){return m}),n.d(t,"f",function(){return y}),n.d(t,"g",function(){return v}),n.d(t,"h",function(){return g}),n.d(t,"i",function(){return b}),n.d(t,"j",function(){return w}),n.d(t,"n",function(){return S}),n.d(t,"p",function(){return x}),n.d(t,"q",function(){return C}),n.d(t,"s",function(){return O}),n.d(t,"t",function(){return M});var r=n("ABBN"),o=n("CsC6"),i=n("MEpN");function s(e,t){return function(n,r){var s=n.selection,a=s.$from,c=s.$to,l=a.blockRange(c),u=!1,p=l;if(!l)return!1;if(l.depth>=2&&a.node(l.depth-1).type.compatibleContent(e)&&0==l.startIndex){if(0==a.index(l.depth-1))return!1;var h=n.doc.resolve(l.start-2);p=new i.NodeRange(h,h,l.depth),l.endIndex<l.parent.childCount&&(l=new i.NodeRange(a,n.doc.resolve(c.end(l.depth)),l.depth)),u=!0}var d=Object(o.i)(p,e,t,l);return!!d&&(r&&r(function(e,t,n,r,s){for(var a=i.Fragment.empty,c=n.length-1;c>=0;c--)a=i.Fragment.from(n[c].type.create(n[c].attrs,a));e.step(new o.b(t.start-(r?2:0),t.end,t.start,t.end,new i.Slice(a,0,0),n.length,!0));for(var l=0,u=0;u<n.length;u++)n[u].type==s&&(l=u+1);for(var p=n.length-l,h=t.start+n.length-(r?2:0),d=t.parent,f=t.startIndex,m=t.endIndex,v=!0;f<m;f++,v=!1)!v&&Object(o.g)(e.doc,h,p)&&(e.split(h,p),h+=2*p),h+=d.child(f).nodeSize;return e}(n.tr,l,d,u,e).scrollIntoView()),!0)}}function a(e){return function(t,n){var r=t.selection,s=r.$from,a=r.$to,c=r.node;if(c&&c.isBlock||s.depth<2||!s.sameParent(a))return!1;var l=s.node(-1);if(l.type!=e)return!1;if(0==s.parent.content.size&&s.node(-1).childCount==s.indexAfter(-1)){if(2==s.depth||s.node(-3).type!=e||s.index(-2)!=s.node(-2).childCount-1)return!1;if(n){for(var u=i.Fragment.empty,p=s.index(-1)>0,h=s.depth-(p?1:2);h>=s.depth-3;h--)u=i.Fragment.from(s.node(h).copy(u));u=u.append(i.Fragment.from(e.createAndFill()));var d=t.tr.replace(s.before(p?null:-1),s.after(-3),new i.Slice(u,p?3:2,2));d.setSelection(t.selection.constructor.near(d.doc.resolve(s.pos+(p?3:2)))),n(d.scrollIntoView())}return!0}var f=a.pos==s.end()?l.contentMatchAt(0).defaultType:null,m=t.tr.delete(s.pos,a.pos),v=f&&[null,{type:f}];return!!Object(o.g)(m.doc,s.pos,2,v)&&(n&&n(m.split(s.pos,2,v).scrollIntoView()),!0)}}function c(e){return function(t,n){var r=t.selection,s=r.$from,a=r.$to,c=s.blockRange(a,function(t){return t.childCount&&t.firstChild.type==e});return!!c&&(!n||(s.node(c.depth-1).type==e?function(e,t,n,r){var s=e.tr,a=r.end,c=r.$to.end(r.depth);a<c&&(s.step(new o.b(a-1,c,a,c,new i.Slice(i.Fragment.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new i.NodeRange(s.doc.resolve(r.$from.pos),s.doc.resolve(c),r.depth));return t(s.lift(r,Object(o.k)(r)).scrollIntoView()),!0}(t,n,e,c):function(e,t,n){for(var r=e.tr,s=n.parent,a=n.end,c=n.endIndex-1,l=n.startIndex;c>l;c--)a-=s.child(c).nodeSize,r.delete(a-1,a+1);var u=r.doc.resolve(n.start),p=u.nodeAfter,h=0==n.startIndex,d=n.endIndex==s.childCount,f=u.node(-1),m=u.index(-1);if(!f.canReplace(m+(h?0:1),m+1,p.content.append(d?i.Fragment.empty:i.Fragment.from(s))))return!1;var v=u.pos,g=v+p.nodeSize;return r.step(new o.b(v-(h?1:0),g+(d?1:0),v+1,g-1,new i.Slice((h?i.Fragment.empty:i.Fragment.from(s.copy(i.Fragment.empty))).append(d?i.Fragment.empty:i.Fragment.from(s.copy(i.Fragment.empty))),h?0:1,d?0:1),h?0:1)),t(r.scrollIntoView()),!0}(t,n,c)))}}function l(e){return function(t,n){var r=t.selection,s=r.$from,a=r.$to,c=s.blockRange(a,function(t){return t.childCount&&t.firstChild.type==e});if(!c)return!1;var l=c.startIndex;if(0==l)return!1;var u=c.parent,p=u.child(l-1);if(p.type!=e)return!1;if(n){var h=p.lastChild&&p.lastChild.type==u.type,d=i.Fragment.from(h?e.create():null),f=new i.Slice(i.Fragment.from(e.create(null,i.Fragment.from(u.type.create(null,d)))),h?3:1,0),m=c.start,v=c.end;n(t.tr.step(new o.b(m-(h?3:1),v,m,v,f,1,!0)).scrollIntoView())}return!0}}var u=n("+V57"),p=n("UxO+"),h=n("oV9I"),d=n("mG1W"); -/*! - * tiptap-commands v1.14.5 - * (c) 2020 überdosis GbR (limited liability) - * @license MIT - */ -function f(e=""){return(t,n)=>{const{$from:r}=t.selection,{pos:o}=r.pos;return n(t.tr.insertText(e,o)),!0}}function m(e,t,n){return new u.a(e,(e,r,o,i)=>{const s=n instanceof Function?n(r):n,{tr:a}=e,c=r.length-1;let l=i,u=o;if(r[c]){const n=o+r[0].indexOf(r[c-1]),s=n+r[c-1].length-1,p=n+r[c-1].lastIndexOf(r[c]),h=p+r[c].length;if(function(e,t,n){let r=[];return n.doc.nodesBetween(e,t,(e,t)=>{r=[...r,...e.marks.map(n=>({start:t,end:t+e.nodeSize,mark:n}))]}),r}(o,i,e).filter(e=>{const{excluded:n}=e.mark.type;return n.find(e=>e.name===t.name)}).filter(e=>e.end>n).length)return!1;h<s&&a.delete(h,s),p>n&&a.delete(n,p),l=(u=n)+r[c].length}return a.addMark(u,l,t.create(s)),a.removeStoredMark(t),a})}function v(e,t,n){return new u.a(e,(e,r,o,i)=>{const s=n instanceof Function?n(r):n,{tr:a}=e;return r[0]&&a.replaceWith(o-1,i,t.create(s)),a})}function g(e,t,n){const r=o=>{const s=[];return o.forEach(o=>{if(o.isText){const{text:r}=o;let i,a=0;do{if(i=e.exec(r)){const e=i.index,r=e+i[0].length,c=n instanceof Function?n(i[0]):n;e>0&&s.push(o.cut(a,e)),s.push(o.cut(e,r).mark(t.create(c).addToSet(o.marks))),a=r}}while(i);a<r.length&&s.push(o.cut(a))}else s.push(o.copy(r(o.content)))}),i.Fragment.fromArray(s)};return new p.Plugin({props:{transformPasted:e=>new i.Slice(r(e.content),e.openStart,e.openEnd)}})}function y(e,t,n){const r=(o,s)=>{const a=[];return o.forEach(o=>{if(o.isText){const{text:r,marks:i}=o;let c,l=0;const u=!!i.filter(e=>"link"===e.type.name)[0];for(;!u&&null!==(c=e.exec(r));)if(s&&s.type.allowsMarkType(t)&&c[1]){const e=c.index,r=e+c[0].length,i=e+c[0].indexOf(c[1]),s=i+c[1].length,u=n instanceof Function?n(c):n;e>0&&a.push(o.cut(l,e)),a.push(o.cut(i,s).mark(t.create(u).addToSet(o.marks))),l=r}l<r.length&&a.push(o.cut(l))}else a.push(o.copy(r(o.content,o)))}),i.Fragment.fromArray(a)};return new p.Plugin({props:{transformPasted:e=>new i.Slice(r(e.content),e.openStart,e.openEnd)}})}function b(e){return(t,n)=>{const{tr:r,selection:o}=t;let{from:i,to:s}=o;const{$from:a,empty:c}=o;if(c){const t=Object(h.b)(a,e);i=t.from,s=t.to}return r.removeMark(i,s,e),n(r)}}function w(e=null,t,n={}){return(r,o)=>{const{$from:i,$to:s}=r.selection,a=i.index(),c=e?e.from:i.pos,l=e?e.to:s.pos;return!!i.parent.canReplaceWith(a,a,t)&&(o&&o(r.tr.replaceWith(c,l,t.create(n))),!0)}}function S(e){return function(t,n){const{$from:r,$to:o,node:s}=t.selection;if(s&&s.isBlock||r.depth<2||!r.sameParent(o))return!1;const a=r.node(-1);if(a.type!=e)return!1;if(0==r.parent.content.size){if(2==r.depth||r.node(-3).type!=e||r.index(-2)!=r.node(-2).childCount-1)return!1;if(n){let o=i.Fragment.empty;const s=r.index(-1)>0;for(let e=r.depth-(s?1:2);e>=r.depth-3;e--)o=i.Fragment.from(r.node(e).copy(o));o=o.append(i.Fragment.from(e.createAndFill()));const a=t.tr.replace(r.before(s?null:-1),r.after(-3),new i.Slice(o,s?3:2,2));a.setSelection(t.selection.constructor.near(a.doc.resolve(r.pos+(s?3:2)))),n(a.scrollIntoView())}return!0}const c=o.pos==r.end()?a.contentMatchAt(r.indexAfter(-1)).defaultType:null,l=t.tr.delete(r.pos,o.pos);let u=c&&[{type:e},{type:c}];return u||(u=[{type:e},null]),!!function(e,t,n=1,r){const o=e.resolve(t),i=o.depth-n,s=r&&r[r.length-1]||o.parent;if(i<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!s.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(let l=o.depth-1,u=n-2;l>i;l--,u--){const e=o.node(l),t=o.index(l);if(e.type.spec.isolating)return!1;let n=e.content.cutByIndex(t,e.childCount);const i=r&&r[u]||e;if(i!=e&&(n=n.replaceChild(0,i.type.create(i.attrs))),!e.canReplace(t+1,e.childCount))return!1}const a=o.indexAfter(i),c=r&&r[0];return o.node(i).canReplaceWith(a,a,c?c.type:o.node(i+1).type)}(l.doc,r.pos,2,u)&&(n&&n(l.split(r.pos,2,u).scrollIntoView()),!0)}}function x(e,t,n={}){return(o,i,s)=>{return Object(h.f)(o,e,n)?Object(r.e)(t)(o,i,s):Object(r.e)(e,n)(o,i,s)}}function k(e,t){return e.type===t.nodes.bullet_list||e.type===t.nodes.ordered_list||e.type===t.nodes.todo_list}function C(e,t){return(n,r,o)=>{const{schema:i,selection:a}=n,{$from:l,$to:u}=a,p=l.blockRange(u);if(!p)return!1;const h=Object(d.findParentNode)(e=>k(e,i))(a);if(p.depth>=1&&h&&p.depth-h.depth<=1){if(h.node.type===e)return c(t)(n,r,o);if(k(h.node,i)&&e.validContent(h.node.content)){const{tr:t}=n;return t.setNodeMarkup(h.pos,e),r&&r(t),!1}}return s(e)(n,r,o)}}function O(e,t={}){return(n,o,i)=>{return Object(h.f)(n,e,t)?Object(r.d)(n,o):Object(r.g)(e,t)(n,o,i)}}function M(e,t){return(n,r)=>{const{tr:o,selection:i,doc:s}=n;let{from:a,to:c}=i;const{$from:l,empty:u}=i;if(u){const t=Object(h.b)(l,e);a=t.from,c=t.to}return s.rangeHasMark(a,c,e)&&o.removeMark(a,c,e),o.addMark(a,c,e.create(t)),r(o)}}},rUJ1:function(e,t){const n=/[&<>"']/,r=/[&<>"']/g,o=/[<>"']|&(?!#?\w+;)/,i=/[<>"']|&(?!#?\w+;)/g,s={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},a=e=>s[e];const c=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function l(e){return e.replace(c,(e,t)=>"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):"")}const u=/(^|[^\[])\^/g;const p=/[^\w:]/g,h=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;const d={},f=/^[^:]+:\/*[^/]*$/,m=/^([^:]+:)[\s\S]*$/,v=/^([^:]+:\/*[^/]*)[\s\S]*$/;function g(e,t){d[" "+e]||(f.test(e)?d[" "+e]=e+"/":d[" "+e]=y(e,"/",!0));const n=-1===(e=d[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(m,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(v,"$1")+t:e+t}function y(e,t,n){const r=e.length;if(0===r)return"";let o=0;for(;o<r;){const i=e.charAt(r-o-1);if(i!==t||n){if(i===t||!n)break;o++}else o++}return e.substr(0,r-o)}e.exports={escape:function(e,t){if(t){if(n.test(e))return e.replace(r,a)}else if(o.test(e))return e.replace(i,a);return e},unescape:l,edit:function(e,t){e=e.source||e,t=t||"";const n={replace:(t,r)=>(r=(r=r.source||r).replace(u,"$1"),e=e.replace(t,r),n),getRegex:()=>new RegExp(e,t)};return n},cleanUrl:function(e,t,n){if(e){let e;try{e=decodeURIComponent(l(n)).replace(p,"").toLowerCase()}catch(e){return null}if(0===e.indexOf("javascript:")||0===e.indexOf("vbscript:")||0===e.indexOf("data:"))return null}t&&!h.test(n)&&(n=g(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(e){return null}return n},resolveUrl:g,noopTest:{exec:function(){}},merge:function(e){let t,n,r=1;for(;r<arguments.length;r++)for(n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},splitCells:function(e,t){const n=e.replace(/\|/g,(e,t,n)=>{let r=!1,o=t;for(;--o>=0&&"\\"===n[o];)r=!r;return r?"|":" |"}).split(/ \|/);let r=0;if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(/\\\|/g,"|");return n},rtrim:y,findClosingBracket:function(e,t){if(-1===e.indexOf(t[1]))return-1;const n=e.length;let r=0,o=0;for(;o<n;o++)if("\\"===e[o])o++;else if(e[o]===t[0])r++;else if(e[o]===t[1]&&--r<0)return o;return-1},checkSanitizeDeprecation:function(e){e&&e.sanitize&&!e.silent&&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")}}},vbtb:function(e,t){function n(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,xhtml:!1}}e.exports={defaults:{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,xhtml:!1},getDefaults:n,changeDefaults:function(t){e.exports.defaults=t}}},zUJn:function(e,t,n){"use strict";n.d(t,"g",function(){return r.Plugin}),n.d(t,"h",function(){return r.PluginKey}),n.d(t,"a",function(){return fn}),n.d(t,"b",function(){return mn}),n.d(t,"c",function(){return gn}),n.d(t,"d",function(){return on}),n.d(t,"e",function(){return an}),n.d(t,"f",function(){return ln});var r=n("UxO+"),o=n("MEpN"),i=n("CsC6"),s={};if("undefined"!=typeof navigator&&"undefined"!=typeof document){var a=/Edge\/(\d+)/.exec(navigator.userAgent),c=/MSIE \d/.test(navigator.userAgent),l=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);s.mac=/Mac/.test(navigator.platform);var u=s.ie=!!(c||l||a);s.ie_version=c?document.documentMode||6:l?+l[1]:a?+a[1]:null,s.gecko=!u&&/gecko\/(\d+)/i.test(navigator.userAgent),s.gecko_version=s.gecko&&+(/Firefox\/(\d+)/.exec(navigator.userAgent)||[0,0])[1];var p=!u&&/Chrome\/(\d+)/.exec(navigator.userAgent);s.chrome=!!p,s.chrome_version=p&&+p[1],s.ios=!u&&/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent),s.android=/Android \d/.test(navigator.userAgent),s.webkit="webkitFontSmoothing"in document.documentElement.style,s.safari=/Apple Computer/.test(navigator.vendor),s.webkit_version=s.webkit&&+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]}var h=function(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t},d=function(e){var t=e.parentNode;return t&&11==t.nodeType?t.host:t},f=function(e,t,n){var r=document.createRange();return r.setEnd(e,null==n?e.nodeValue.length:n),r.setStart(e,t||0),r},m=function(e,t,n,r){return n&&(g(e,t,n,r,-1)||g(e,t,n,r,1))},v=/^(img|br|input|textarea|hr)$/i;function g(e,t,n,r,o){for(;;){if(e==n&&t==r)return!0;if(t==(o<0?0:y(e))){var i=e.parentNode;if(1!=i.nodeType||b(e)||v.test(e.nodeName)||"false"==e.contentEditable)return!1;t=h(e)+(o<0?0:1),e=i}else{if(1!=e.nodeType)return!1;if("false"==(e=e.childNodes[t+(o<0?-1:0)]).contentEditable)return!1;t=o<0?y(e):0}}}function y(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function b(e){for(var t,n=e;n&&!(t=n.pmViewDesc);n=n.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}var w=function(e){var t=e.isCollapsed;return t&&s.chrome&&e.rangeCount&&!e.getRangeAt(0).collapsed&&(t=!1),t};function S(e,t){var n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=e,n.key=n.code=t,n}function x(e){return{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function k(e,t){return"number"==typeof e?e:e[t]}function C(e){var t=e.getBoundingClientRect();return{left:t.left,right:t.left+e.clientWidth,top:t.top,bottom:t.top+e.clientHeight}}function O(e,t,n){for(var r=e.someProp("scrollThreshold")||0,o=e.someProp("scrollMargin")||5,i=e.dom.ownerDocument,s=n||e.dom;s;s=d(s))if(1==s.nodeType){var a=s==i.body||1!=s.nodeType,c=a?x(i):C(s),l=0,u=0;if(t.top<c.top+k(r,"top")?u=-(c.top-t.top+k(o,"top")):t.bottom>c.bottom-k(r,"bottom")&&(u=t.bottom-c.bottom+k(o,"bottom")),t.left<c.left+k(r,"left")?l=-(c.left-t.left+k(o,"left")):t.right>c.right-k(r,"right")&&(l=t.right-c.right+k(o,"right")),l||u)if(a)i.defaultView.scrollBy(l,u);else{var p=s.scrollLeft,h=s.scrollTop;u&&(s.scrollTop+=u),l&&(s.scrollLeft+=l);var f=s.scrollLeft-p,m=s.scrollTop-h;t={left:t.left-f,top:t.top-m,right:t.right-f,bottom:t.bottom-m}}if(a)break}}function M(e){for(var t=[],n=e.ownerDocument;e&&(t.push({dom:e,top:e.scrollTop,left:e.scrollLeft}),e!=n);e=d(e));return t}function N(e,t){for(var n=0;n<e.length;n++){var r=e[n],o=r.dom,i=r.top,s=r.left;o.scrollTop!=i+t&&(o.scrollTop=i+t),o.scrollLeft!=s&&(o.scrollLeft=s)}}var T=null;function D(e,t){for(var n,r,o=2e8,i=0,s=t.top,a=t.top,c=e.firstChild,l=0;c;c=c.nextSibling,l++){var u=void 0;if(1==c.nodeType)u=c.getClientRects();else{if(3!=c.nodeType)continue;u=f(c).getClientRects()}for(var p=0;p<u.length;p++){var h=u[p];if(h.top<=s&&h.bottom>=a){s=Math.max(h.bottom,s),a=Math.min(h.top,a);var d=h.left>t.left?h.left-t.left:h.right<t.left?t.left-h.right:0;if(d<o){n=c,o=d,r=d&&3==n.nodeType?{left:h.right<t.left?h.right:h.left,top:t.top}:t,1==c.nodeType&&d&&(i=l+(t.left>=(h.left+h.right)/2?1:0));continue}}!n&&(t.left>=h.right&&t.top>=h.top||t.left>=h.left&&t.top>=h.bottom)&&(i=l+1)}}return n&&3==n.nodeType?function(e,t){for(var n=e.nodeValue.length,r=document.createRange(),o=0;o<n;o++){r.setEnd(e,o+1),r.setStart(e,o);var i=R(r,1);if(i.top!=i.bottom&&A(t,i))return{node:e,offset:o+(t.left>=(i.left+i.right)/2?1:0)}}return{node:e,offset:0}}(n,r):!n||o&&1==n.nodeType?{node:e,offset:i}:D(n,r)}function A(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function E(e,t){var n,r,o,i,a=e.root;if(a.caretPositionFromPoint)try{var c=a.caretPositionFromPoint(t.left,t.top);c&&(o=(n=c).offsetNode,i=n.offset)}catch(e){}if(!o&&a.caretRangeFromPoint){var l=a.caretRangeFromPoint(t.left,t.top);l&&(o=(r=l).startContainer,i=r.startOffset)}var u,p=a.elementFromPoint(t.left,t.top+1);if(!p||!e.dom.contains(1!=p.nodeType?p.parentNode:p)){var h=e.dom.getBoundingClientRect();if(!A(t,h))return null;if(!(p=function e(t,n,r){var o=t.childNodes.length;if(o&&r.top<r.bottom)for(var i=Math.max(0,Math.min(o-1,Math.floor(o*(n.top-r.top)/(r.bottom-r.top))-2)),s=i;;){var a=t.childNodes[s];if(1==a.nodeType)for(var c=a.getClientRects(),l=0;l<c.length;l++){var u=c[l];if(A(n,u))return e(a,n,u)}if((s=(s+1)%o)==i)break}return t}(e.dom,t,h)))return null}if(s.safari&&p.draggable&&(o=i=null),p=function(e,t){var n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}(p,t),o){if(s.gecko&&1==o.nodeType&&(i=Math.min(i,o.childNodes.length))<o.childNodes.length){var d,f=o.childNodes[i];"IMG"==f.nodeName&&(d=f.getBoundingClientRect()).right<=t.left&&d.bottom>t.top&&i++}o==e.dom&&i==o.childNodes.length-1&&1==o.lastChild.nodeType&&t.top>o.lastChild.getBoundingClientRect().bottom?u=e.state.doc.content.size:0!=i&&1==o.nodeType&&"BR"==o.childNodes[i-1].nodeName||(u=function(e,t,n,r){for(var o=-1,i=t;i!=e.dom;){var s=e.docView.nearestDesc(i,!0);if(!s)return null;if(s.node.isBlock&&s.parent){var a=s.dom.getBoundingClientRect();if(a.left>r.left||a.top>r.top)o=s.posBefore;else{if(!(a.right<r.left||a.bottom<r.top))break;o=s.posAfter}}i=s.dom.parentNode}return o>-1?o:e.docView.posFromDOM(t,n)}(e,o,i,t))}null==u&&(u=function(e,t,n){var r=D(t,n),o=r.node,i=r.offset,s=-1;if(1==o.nodeType&&!o.firstChild){var a=o.getBoundingClientRect();s=a.left!=a.right&&n.left>(a.left+a.right)/2?1:-1}return e.docView.posFromDOM(o,i,s)}(e,p,t));var m=e.docView.nearestDesc(p,!0);return{pos:u,inside:m?m.posAtStart-m.border:-1}}function R(e,t){var n=e.getClientRects();return n.length?n[t<0?0:n.length-1]:e.getBoundingClientRect()}function _(e,t){var n=e.docView.domFromPos(t),r=n.node,o=n.offset;if(3==r.nodeType&&(s.webkit||s.gecko)){var i=R(f(r,o,o),0);if(s.gecko&&o&&/\s/.test(r.nodeValue[o-1])&&o<r.nodeValue.length){var a=R(f(r,o-1,o-1),-1);if(a.top==i.top){var c=R(f(r,o,o+1),-1);if(c.top!=i.top)return P(c,c.left<a.left)}}return i}if(1==r.nodeType&&!e.state.doc.resolve(t).parent.inlineContent){var l,u=!0;if(o<r.childNodes.length){var p=r.childNodes[o];1==p.nodeType&&(l=p.getBoundingClientRect())}if(!l&&o){var h=r.childNodes[o-1];1==h.nodeType&&(l=h.getBoundingClientRect(),u=!1)}return function(e,t){if(0==e.height)return e;var n=t?e.top:e.bottom;return{top:n,bottom:n,left:e.left,right:e.right}}(l||r.getBoundingClientRect(),u)}for(var d=-1;d<2;d+=2)if(d<0&&o){var m=void 0,v=3==r.nodeType?f(r,o-1,o):3==(m=r.childNodes[o-1]).nodeType?f(m):1==m.nodeType&&"BR"!=m.nodeName?m:null;if(v){var g=R(v,1);if(g.top<g.bottom)return P(g,!1)}}else if(d>0&&o<y(r)){var b=void 0,w=3==r.nodeType?f(r,o,o+1):3==(b=r.childNodes[o]).nodeType?f(b):1==b.nodeType?b:null;if(w){var S=R(w,-1);if(S.top<S.bottom)return P(S,!0)}}return P(R(3==r.nodeType?f(r):r,0),!1)}function P(e,t){if(0==e.width)return e;var n=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:n,right:n}}function $(e,t,n){var r=e.state,o=e.root.activeElement;r!=t&&e.updateState(t),o!=e.dom&&e.focus();try{return n()}finally{r!=t&&e.updateState(r),o!=e.dom&&o&&o.focus()}}var I=/[\u0590-\u08ac]/;var z=null,B=null,F=!1;function V(e,t,n){return z==t&&B==n?F:(z=t,B=n,F="up"==n||"down"==n?function(e,t,n){var r=t.selection,o="up"==n?r.$anchor.min(r.$head):r.$anchor.max(r.$head);return $(e,t,function(){for(var t=e.docView.domFromPos(o.pos).node;;){var r=e.docView.nearestDesc(t,!0);if(!r)break;if(r.node.isBlock){t=r.dom;break}t=r.dom.parentNode}for(var i=_(e,o.pos),s=t.firstChild;s;s=s.nextSibling){var a=void 0;if(1==s.nodeType)a=s.getClientRects();else{if(3!=s.nodeType)continue;a=f(s,0,s.nodeValue.length).getClientRects()}for(var c=0;c<a.length;c++){var l=a[c];if(l.bottom>l.top&&("up"==n?l.bottom<i.top+1:l.top>i.bottom-1))return!1}}return!0})}(e,t,n):function(e,t,n){var r=t.selection.$head;if(!r.parent.isTextblock)return!1;var o=r.parentOffset,i=!o,s=o==r.parent.content.size,a=getSelection();return I.test(r.parent.textContent)&&a.modify?$(e,t,function(){var t=a.getRangeAt(0),o=a.focusNode,i=a.focusOffset,s=a.caretBidiLevel;a.modify("move",n,"character");var c=!(r.depth?e.docView.domAfterPos(r.before()):e.dom).contains(1==a.focusNode.nodeType?a.focusNode:a.focusNode.parentNode)||o==a.focusNode&&i==a.focusOffset;return a.removeAllRanges(),a.addRange(t),null!=s&&(a.caretBidiLevel=s),c}):"left"==n||"backward"==n?i:s}(e,t,n))}var j=function(e,t,n,r){this.parent=e,this.children=t,this.dom=n,n.pmViewDesc=this,this.contentDOM=r,this.dirty=0},L={beforePosition:{configurable:!0},size:{configurable:!0},border:{configurable:!0},posBefore:{configurable:!0},posAtStart:{configurable:!0},posAfter:{configurable:!0},posAtEnd:{configurable:!0},contentLost:{configurable:!0}};j.prototype.matchesWidget=function(){return!1},j.prototype.matchesMark=function(){return!1},j.prototype.matchesNode=function(){return!1},j.prototype.matchesHack=function(){return!1},L.beforePosition.get=function(){return!1},j.prototype.parseRule=function(){return null},j.prototype.stopEvent=function(){return!1},L.size.get=function(){for(var e=0,t=0;t<this.children.length;t++)e+=this.children[t].size;return e},L.border.get=function(){return 0},j.prototype.destroy=function(){this.parent=null,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=null);for(var e=0;e<this.children.length;e++)this.children[e].destroy()},j.prototype.posBeforeChild=function(e){for(var t=0,n=this.posAtStart;t<this.children.length;t++){var r=this.children[t];if(r==e)return n;n+=r.size}},L.posBefore.get=function(){return this.parent.posBeforeChild(this)},L.posAtStart.get=function(){return this.parent?this.parent.posBeforeChild(this)+this.border:0},L.posAfter.get=function(){return this.posBefore+this.size},L.posAtEnd.get=function(){return this.posAtStart+this.size-2*this.border},j.prototype.localPosFromDOM=function(e,t,n){if(this.contentDOM&&this.contentDOM.contains(1==e.nodeType?e:e.parentNode)){if(n<0){var r,o;if(e==this.contentDOM)r=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;r=e.previousSibling}for(;r&&(!(o=r.pmViewDesc)||o.parent!=this);)r=r.previousSibling;return r?this.posBeforeChild(o)+o.size:this.posAtStart}var i,s;if(e==this.contentDOM)i=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.nextSibling}for(;i&&(!(s=i.pmViewDesc)||s.parent!=this);)i=i.nextSibling;return i?this.posBeforeChild(s):this.posAtEnd}var a;if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))a=2&e.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==t)for(var c=e;;c=c.parentNode){if(c==this.dom){a=!1;break}if(c.parentNode.firstChild!=c)break}if(null==a&&t==e.childNodes.length)for(var l=e;;l=l.parentNode){if(l==this.dom){a=!0;break}if(l.parentNode.lastChild!=l)break}}return(null==a?n>0:a)?this.posAtEnd:this.posAtStart},j.prototype.nearestDesc=function(e,t){for(var n=!0,r=e;r;r=r.parentNode){var o=this.getDesc(r);if(o&&(!t||o.node)){if(!n||!o.nodeDOM||(1==o.nodeDOM.nodeType?o.nodeDOM.contains(1==e.nodeType?e:e.parentNode):o.nodeDOM==e))return o;n=!1}}},j.prototype.getDesc=function(e){for(var t=e.pmViewDesc,n=t;n;n=n.parent)if(n==this)return t},j.prototype.posFromDOM=function(e,t,n){for(var r=e;r;r=r.parentNode){var o=this.getDesc(r);if(o)return o.localPosFromDOM(e,t,n)}return-1},j.prototype.descAt=function(e){for(var t=0,n=0;t<this.children.length;t++){var r=this.children[t],o=n+r.size;if(n==e&&o!=n){for(;!r.border&&r.children.length;)r=r.children[0];return r}if(e<o)return r.descAt(e-n-r.border);n=o}},j.prototype.domFromPos=function(e){if(!this.contentDOM)return{node:this.dom,offset:0};for(var t=0,n=0;;n++){if(t==e){for(;n<this.children.length&&(this.children[n].beforePosition||this.children[n].dom.parentNode!=this.contentDOM);)n++;return{node:this.contentDOM,offset:n==this.children.length?this.contentDOM.childNodes.length:h(this.children[n].dom)}}if(n==this.children.length)throw new Error("Invalid position "+e);var r=this.children[n],o=t+r.size;if(e<o)return r.domFromPos(e-t-r.border);t=o}},j.prototype.parseRange=function(e,t,n){if(void 0===n&&(n=0),0==this.children.length)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};for(var r=-1,o=-1,i=n,s=0;;s++){var a=this.children[s],c=i+a.size;if(-1==r&&e<=c){var l=i+a.border;if(e>=l&&t<=c-a.border&&a.node&&a.contentDOM&&this.contentDOM.contains(a.contentDOM))return a.parseRange(e,t,l);e=i;for(var u=s;u>0;u--){var p=this.children[u-1];if(p.size&&p.dom.parentNode==this.contentDOM&&!p.emptyChildAt(1)){r=h(p.dom)+1;break}e-=p.size}-1==r&&(r=0)}if(r>-1&&(c>t||s==this.children.length-1)){t=c;for(var d=s+1;d<this.children.length;d++){var f=this.children[d];if(f.size&&f.dom.parentNode==this.contentDOM&&!f.emptyChildAt(-1)){o=h(f.dom);break}t+=f.size}-1==o&&(o=this.contentDOM.childNodes.length);break}i=c}return{node:this.contentDOM,from:e,to:t,fromOffset:r,toOffset:o}},j.prototype.emptyChildAt=function(e){if(this.border||!this.contentDOM||!this.children.length)return!1;var t=this.children[e<0?0:this.children.length-1];return 0==t.size||t.emptyChildAt(e)},j.prototype.domAfterPos=function(e){var t=this.domFromPos(e),n=t.node,r=t.offset;if(1!=n.nodeType||r==n.childNodes.length)throw new RangeError("No node after pos "+e);return n.childNodes[r]},j.prototype.setSelection=function(e,t,n,r){for(var o=Math.min(e,t),i=Math.max(e,t),a=0,c=0;a<this.children.length;a++){var l=this.children[a],u=c+l.size;if(o>c&&i<u)return l.setSelection(e-c-l.border,t-c-l.border,n,r);c=u}var p=this.domFromPos(e),h=this.domFromPos(t),d=n.getSelection();if(r||!m(p.node,p.offset,d.anchorNode,d.anchorOffset)||!m(h.node,h.offset,d.focusNode,d.focusOffset)){var f=!1;if(s.gecko&&e==t){var v=p.node.childNodes[p.offset-1];v&&"BR"==v.nodeName&&(f=!0)}var g=!1;if((d.extend||e==t)&&!f){d.collapse(p.node,p.offset);try{e!=t&&d.extend(h.node,h.offset),g=!0}catch(e){if(!(e instanceof DOMException))throw e}}if(!g){if(e>t){var y=p;p=h,h=y}var b=document.createRange();b.setEnd(h.node,h.offset),b.setStart(p.node,p.offset),d.removeAllRanges(),d.addRange(b)}}},j.prototype.ignoreMutation=function(e){return!this.contentDOM&&"selection"!=e.type},L.contentLost.get=function(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)},j.prototype.markDirty=function(e,t){for(var n=0,r=0;r<this.children.length;r++){var o=this.children[r],i=n+o.size;if(n==i?e<=i&&t>=n:e<i&&t>n){var s=n+o.border,a=i-o.border;if(e>=s&&t<=a)return this.dirty=e==n||t==i?2:1,void(e!=s||t!=a||!o.contentLost&&o.dom.parentNode==this.contentDOM?o.markDirty(e-s,t-s):o.dirty=3);o.dirty=3}n=i}this.dirty=2},j.prototype.markParentsDirty=function(){for(var e=1,t=this.parent;t;t=t.parent,e++){var n=1==e?2:1;t.dirty<n&&(t.dirty=n)}},Object.defineProperties(j.prototype,L);var q=[],W=function(e){function t(t,n,r,o){var i,s=n.type.toDOM;if("function"==typeof s&&(s=s(r,function(){return i?i.parent?i.parent.posBeforeChild(i):void 0:o})),!n.type.spec.raw){if(1!=s.nodeType){var a=document.createElement("span");a.appendChild(s),s=a}s.contentEditable=!1,s.classList.add("ProseMirror-widget")}e.call(this,t,q,s,null),this.widget=n,i=this}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={beforePosition:{configurable:!0}};return n.beforePosition.get=function(){return this.widget.type.side<0},t.prototype.matchesWidget=function(e){return 0==this.dirty&&e.type.eq(this.widget.type)},t.prototype.parseRule=function(){return{ignore:!0}},t.prototype.stopEvent=function(e){var t=this.widget.spec.stopEvent;return!!t&&t(e)},t.prototype.ignoreMutation=function(e){return"selection"!=e.type||this.widget.spec.ignoreSelection},Object.defineProperties(t.prototype,n),t}(j),K=function(e){function t(t,n,r,o){e.call(this,t,q,n,null),this.textDOM=r,this.text=o}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={size:{configurable:!0}};return n.size.get=function(){return this.text.length},t.prototype.localPosFromDOM=function(e,t){return e!=this.textDOM?this.posAtStart+(t?this.size:0):this.posAtStart+t},t.prototype.domFromPos=function(e){return{node:this.textDOM,offset:e}},t.prototype.ignoreMutation=function(e){return"characterData"===e.type&&e.target.nodeValue==e.oldValue},Object.defineProperties(t.prototype,n),t}(j),J=function(e){function t(t,n,r,o){e.call(this,t,[],r,o),this.mark=n}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.create=function(e,n,r,i){var s=i.nodeViews[n.type.name],a=s&&s(n,i,r);return a&&a.dom||(a=o.DOMSerializer.renderSpec(document,n.type.spec.toDOM(n,r))),new t(e,n,a.dom,a.contentDOM||a.dom)},t.prototype.parseRule=function(){return{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}},t.prototype.matchesMark=function(e){return 3!=this.dirty&&this.mark.eq(e)},t.prototype.markDirty=function(t,n){if(e.prototype.markDirty.call(this,t,n),0!=this.dirty){for(var r=this.parent;!r.node;)r=r.parent;r.dirty<this.dirty&&(r.dirty=this.dirty),this.dirty=0}},t.prototype.slice=function(e,n,r){var o=t.create(this.parent,this.mark,!0,r),i=this.children,s=this.size;n<s&&(i=ce(i,n,s,r)),e>0&&(i=ce(i,0,e,r));for(var a=0;a<i.length;a++)i[a].parent=o;return o.children=i,o},t}(j),H=function(e){function t(t,n,r,o,i,s,a,c,l){e.call(this,t,n.isLeaf?q:[],i,s),this.nodeDOM=a,this.node=n,this.outerDeco=r,this.innerDeco=o,s&&this.updateChildren(c,l)}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={size:{configurable:!0},border:{configurable:!0}};return t.create=function(e,n,r,i,s,a){var c,l,u=s.nodeViews[n.type.name],p=u&&u(n,s,function(){return l?l.parent?l.parent.posBeforeChild(l):void 0:a},r),h=p&&p.dom,d=p&&p.contentDOM;if(n.isText)if(h){if(3!=h.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else h=document.createTextNode(n.text);else h||(h=(c=o.DOMSerializer.renderSpec(document,n.type.spec.toDOM(n))).dom,d=c.contentDOM);d||n.isText||"BR"==h.nodeName||(h.hasAttribute("contenteditable")||(h.contentEditable=!1),n.type.spec.draggable&&(h.draggable=!0));var f=h;return h=re(h,r,n),p?l=new Z(e,n,r,i,h,d,f,p,s,a+1):n.isText?new G(e,n,r,i,h,f,s):new t(e,n,r,i,h,d,f,s,a+1)},t.prototype.parseRule=function(){var e=this;if(this.node.type.spec.reparseInView)return null;var t={node:this.node.type.name,attrs:this.node.attrs};return this.node.type.spec.code&&(t.preserveWhitespace="full"),this.contentDOM&&!this.contentLost?t.contentElement=this.contentDOM:t.getContent=function(){return e.contentDOM?o.Fragment.empty:e.node.content},t},t.prototype.matchesNode=function(e,t,n){return 0==this.dirty&&e.eq(this.node)&&oe(t,this.outerDeco)&&n.eq(this.innerDeco)},n.size.get=function(){return this.node.nodeSize},n.border.get=function(){return this.node.isLeaf?0:1},t.prototype.updateChildren=function(e,t){var n=this,r=this.node.inlineContent,i=t,a=r&&e.composing&&this.localCompositionNode(e,t),c=new se(this,a&&a.node);!function(e,t,n,r){var o=t.locals(e),i=0;if(0==o.length){for(var s=0;s<e.childCount;s++){var a=e.child(s);r(a,o,t.forChild(i,a),s),i+=a.nodeSize}return}for(var c=0,l=[],u=null,p=0;;){if(c<o.length&&o[c].to==i){for(var h=o[c++],d=void 0;c<o.length&&o[c].to==i;)(d||(d=[h])).push(o[c++]);if(d){d.sort(ae);for(var f=0;f<d.length;f++)n(d[f],p,!!u)}else n(h,p,!!u)}var m=void 0,v=void 0;if(u)v=-1,m=u,u=null;else{if(!(p<e.childCount))break;v=p,m=e.child(p++)}for(var g=0;g<l.length;g++)l[g].to<=i&&l.splice(g--,1);for(;c<o.length&&o[c].from<=i&&o[c].to>i;)l.push(o[c++]);var y=i+m.nodeSize;if(m.isText){var b=y;c<o.length&&o[c].from<b&&(b=o[c].from);for(var w=0;w<l.length;w++)l[w].to<b&&(b=l[w].to);b<y&&(u=m.cut(b-i),m=m.cut(0,b-i),y=b,v=-1)}var S=l.length?m.isInline&&!m.isLeaf?l.filter(function(e){return!e.inline}):l.slice():q;r(m,S,t.forChild(i,m),v),i=y}}(this.node,this.innerDeco,function(t,s,a){t.spec.marks?c.syncToMarks(t.spec.marks,r,e):t.type.side>=0&&!a&&c.syncToMarks(s==n.node.childCount?o.Mark.none:n.node.child(s).marks,r,e),c.placeWidget(t,e,i)},function(t,n,o,s){c.syncToMarks(t.marks,r,e),c.findNodeMatch(t,n,o,s)||c.updateNextNode(t,n,o,e,s)||c.addNode(t,n,o,e,i),i+=t.nodeSize}),c.syncToMarks(q,r,e),this.node.isTextblock&&c.addTextblockHacks(),c.destroyRest(),(c.changed||2==this.dirty)&&(a&&this.protectLocalComposition(e,a),function e(t,n,r){var o=t.firstChild,i=!1;for(var s=0;s<n.length;s++){var a=n[s],c=a.dom;if(c.parentNode==t){for(;c!=o;)o=ie(o),i=!0;o=o.nextSibling}else i=!0,t.insertBefore(c,o);if(a instanceof J){var l=o?o.previousSibling:t.lastChild;e(a.contentDOM,a.children,r),o=l?l.nextSibling:t.firstChild}}for(;o;)o=ie(o),i=!0;i&&r.trackWrites==t&&(r.trackWrites=null)}(this.contentDOM,this.children,e),s.ios&&function(e){if("UL"==e.nodeName||"OL"==e.nodeName){var t=e.style.cssText;e.style.cssText=t+"; list-style: square !important",window.getComputedStyle(e).listStyle,e.style.cssText=t}}(this.dom))},t.prototype.localCompositionNode=function(e,t){var n=e.state.selection,o=n.from,i=n.to;if(!(!(e.state.selection instanceof r.TextSelection)||o<t||i>t+this.node.content.size)){var s=e.root.getSelection(),a=function(e,t){for(;;){if(3==e.nodeType)return e;if(1==e.nodeType&&t>0){if(e.childNodes.length>t&&3==e.childNodes[t].nodeType)return e.childNodes[t];e=e.childNodes[t-1],t=y(e)}else{if(!(1==e.nodeType&&t<e.childNodes.length))return null;e=e.childNodes[t],t=0}}}(s.focusNode,s.focusOffset);if(a&&this.dom.contains(a.parentNode)){var c=a.nodeValue,l=function(e,t,n,r){for(var o=0,i=0;o<e.childCount&&i<=r;){var s=e.child(o++),a=i;if(i+=s.nodeSize,s.isText){for(var c=s.text;o<e.childCount;){var l=e.child(o++);if(i+=l.nodeSize,!l.isText)break;c+=l.text}if(i>=n){var u=c.lastIndexOf(t,r-a);if(u>=0&&u+t.length+a>=n)return a+u}}}return-1}(this.node.content,c,o-t,i-t);return l<0?null:{node:a,pos:l,text:c}}}},t.prototype.protectLocalComposition=function(e,t){var n=t.node,r=t.pos,o=t.text;if(!this.getDesc(n)){for(var i=n;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=null)}var s=new K(this,i,n,o);e.compositionNodes.push(s),this.children=ce(this.children,r,r+o.length,e,s)}},t.prototype.update=function(e,t,n,r){return!(3==this.dirty||!e.sameMarkup(this.node))&&(this.updateInner(e,t,n,r),!0)},t.prototype.updateInner=function(e,t,n,r){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0},t.prototype.updateOuterDeco=function(e){if(!oe(e,this.outerDeco)){var t=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=te(this.dom,this.nodeDOM,ee(this.outerDeco,this.node,t),ee(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=null,this.dom.pmViewDesc=this),this.outerDeco=e}},t.prototype.selectNode=function(){this.nodeDOM.classList.add("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||(this.dom.draggable=!0)},t.prototype.deselectNode=function(){this.nodeDOM.classList.remove("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||this.dom.removeAttribute("draggable")},Object.defineProperties(t.prototype,n),t}(j);function U(e,t,n,r,o){return re(r,t,e),new H(null,e,t,n,r,r,r,o,0)}var G=function(e){function t(t,n,r,o,i,s,a){e.call(this,t,n,r,o,i,null,s,a)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.parseRule=function(){for(var e=this.nodeDOM.parentNode;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}},t.prototype.update=function(e,t,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!e.sameMarkup(this.node))&&(this.updateOuterDeco(t),0==this.dirty&&e.text==this.node.text||e.text==this.nodeDOM.nodeValue||(this.nodeDOM.nodeValue=e.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=e,this.dirty=0,!0)},t.prototype.inParent=function(){for(var e=this.parent.contentDOM,t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1},t.prototype.domFromPos=function(e){return{node:this.nodeDOM,offset:e}},t.prototype.localPosFromDOM=function(t,n,r){return t==this.nodeDOM?this.posAtStart+Math.min(n,this.node.text.length):e.prototype.localPosFromDOM.call(this,t,n,r)},t.prototype.ignoreMutation=function(e){return"characterData"!=e.type&&"selection"!=e.type},t.prototype.slice=function(e,n,r){var o=this.node.cut(e,n),i=document.createTextNode(o.text);return new t(this.parent,o,this.outerDeco,this.innerDeco,i,i,r)},t}(H),X=function(e){function t(){e.apply(this,arguments)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.parseRule=function(){return{ignore:!0}},t.prototype.matchesHack=function(){return 0==this.dirty},t}(j),Z=function(e){function t(t,n,r,o,i,s,a,c,l,u){e.call(this,t,n,r,o,i,s,a,l,u),this.spec=c}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.update=function(t,n,r,o){if(3==this.dirty)return!1;if(this.spec.update){var i=this.spec.update(t,n);return i&&this.updateInner(t,n,r,o),i}return!(!this.contentDOM&&!t.isLeaf)&&e.prototype.update.call(this,t,n,r,o)},t.prototype.selectNode=function(){this.spec.selectNode?this.spec.selectNode():e.prototype.selectNode.call(this)},t.prototype.deselectNode=function(){this.spec.deselectNode?this.spec.deselectNode():e.prototype.deselectNode.call(this)},t.prototype.setSelection=function(t,n,r,o){this.spec.setSelection?this.spec.setSelection(t,n,r):e.prototype.setSelection.call(this,t,n,r,o)},t.prototype.destroy=function(){this.spec.destroy&&this.spec.destroy(),e.prototype.destroy.call(this)},t.prototype.stopEvent=function(e){return!!this.spec.stopEvent&&this.spec.stopEvent(e)},t.prototype.ignoreMutation=function(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):e.prototype.ignoreMutation.call(this,t)},t}(H);function Y(e){e&&(this.nodeName=e)}Y.prototype=Object.create(null);var Q=[new Y];function ee(e,t,n){if(0==e.length)return Q;for(var r=n?Q[0]:new Y,o=[r],i=0;i<e.length;i++){var s=e[i].type.attrs,a=r;if(s)for(var c in s.nodeName&&o.push(a=new Y(s.nodeName)),s){var l=s[c];null!=l&&(n&&1==o.length&&o.push(a=r=new Y(t.isInline?"span":"div")),"class"==c?a.class=(a.class?a.class+" ":"")+l:"style"==c?a.style=(a.style?a.style+";":"")+l:"nodeName"!=c&&(a[c]=l))}}return o}function te(e,t,n,r){if(n==Q&&r==Q)return t;for(var o=t,i=0;i<r.length;i++){var s=r[i],a=n[i];if(i){var c=void 0;a&&a.nodeName==s.nodeName&&o!=e&&(c=o.parentNode)&&c.tagName.toLowerCase()==s.nodeName?o=c:((c=document.createElement(s.nodeName)).pmIsDeco=!0,c.appendChild(o),a=Q[0],o=c)}ne(o,a||Q[0],s)}return o}function ne(e,t,n){for(var r in t)"class"==r||"style"==r||"nodeName"==r||r in n||e.removeAttribute(r);for(var o in n)"class"!=o&&"style"!=o&&"nodeName"!=o&&n[o]!=t[o]&&e.setAttribute(o,n[o]);if(t.class!=n.class){for(var i=t.class?t.class.split(" "):q,s=n.class?n.class.split(" "):q,a=0;a<i.length;a++)-1==s.indexOf(i[a])&&e.classList.remove(i[a]);for(var c=0;c<s.length;c++)-1==i.indexOf(s[c])&&e.classList.add(s[c])}if(t.style!=n.style){if(t.style)for(var l,u=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g;l=u.exec(t.style);)e.style.removeProperty(l[1]);n.style&&(e.style.cssText+=n.style)}}function re(e,t,n){return te(e,e,Q,ee(t,n,1!=e.nodeType))}function oe(e,t){if(e.length!=t.length)return!1;for(var n=0;n<e.length;n++)if(!e[n].type.eq(t[n].type))return!1;return!0}function ie(e){var t=e.nextSibling;return e.parentNode.removeChild(e),t}var se=function(e,t){this.top=e,this.lock=t,this.index=0,this.stack=[],this.changed=!1;var n=function(e,t){for(var n=[],r=e.childCount,o=t.length-1;r>0&&o>=0;o--){var i=t[o],s=i.node;if(s){if(s!=e.child(r-1))break;n.push(i),--r}}return{nodes:n.reverse(),offset:r}}(e.node.content,e.children);this.preMatched=n.nodes,this.preMatchOffset=n.offset};function ae(e,t){return e.type.side-t.type.side}function ce(e,t,n,r,o){for(var i=[],s=0,a=0;s<e.length;s++){var c=e[s],l=a,u=a+=c.size;l>=n||u<=t?i.push(c):(l<t&&i.push(c.slice(0,t-l,r)),o&&(i.push(o),o=null),u>n&&i.push(c.slice(n-l,c.size,r)))}return i}function le(e,t){var n=e.selection,o=n.$anchor,i=n.$head,s=t>0?o.max(i):o.min(i),a=s.parent.inlineContent?s.depth?e.doc.resolve(t>0?s.after():s.before()):null:s;return a&&r.Selection.findFrom(a,t)}function ue(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function pe(e,t,n){var o=e.state.selection;if(!(o instanceof r.TextSelection)){if(o instanceof r.NodeSelection&&o.node.isInline)return ue(e,new r.TextSelection(t>0?o.$to:o.$from));var i=le(e.state,t);return!!i&&ue(e,i)}if(!o.empty||n.indexOf("s")>-1)return!1;if(e.endOfTextblock(t>0?"right":"left")){var a=le(e.state,t);return!!(a&&a instanceof r.NodeSelection)&&ue(e,a)}if(!(s.mac&&n.indexOf("m")>-1)){var c,l=o.$head,u=l.textOffset?null:t<0?l.nodeBefore:l.nodeAfter;if(!u||u.isText)return!1;var p=t<0?l.pos-u.nodeSize:l.pos;return!!(u.isAtom||(c=e.docView.descAt(p))&&!c.contentDOM)&&(r.NodeSelection.isSelectable(u)?ue(e,new r.NodeSelection(t<0?e.state.doc.resolve(l.pos-u.nodeSize):l)):!!s.webkit&&ue(e,new r.TextSelection(e.state.doc.resolve(t<0?p:p+u.nodeSize))))}}function he(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function de(e){var t=e.pmViewDesc;return t&&0==t.size&&(e.nextSibling||"BR"!=e.nodeName)}function fe(e){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n){var o,i,a=!1;for(s.gecko&&1==n.nodeType&&r<he(n)&&de(n.childNodes[r])&&(a=!0);;)if(r>0){if(1!=n.nodeType)break;var c=n.childNodes[r-1];if(de(c))o=n,i=--r;else{if(3!=c.nodeType)break;r=(n=c).nodeValue.length}}else{if(ve(n))break;for(var l=n.previousSibling;l&&de(l);)o=n.parentNode,i=h(l),l=l.previousSibling;if(l)r=he(n=l);else{if((n=n.parentNode)==e.dom)break;r=0}}a?ge(e,t,n,r):o&&ge(e,t,o,i)}}function me(e){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n){for(var o,i,s=he(n);;)if(r<s){if(1!=n.nodeType)break;if(!de(n.childNodes[r]))break;o=n,i=++r}else{if(ve(n))break;for(var a=n.nextSibling;a&&de(a);)o=a.parentNode,i=h(a)+1,a=a.nextSibling;if(a)r=0,s=he(n=a);else{if((n=n.parentNode)==e.dom)break;r=s=0}}o&&ge(e,t,o,i)}}function ve(e){var t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function ge(e,t,n,r){if(w(t)){var o=document.createRange();o.setEnd(n,r),o.setStart(n,r),t.removeAllRanges(),t.addRange(o)}else t.extend&&t.extend(n,r);e.domObserver.setCurSelection()}function ye(e,t,n){var o=e.state.selection;if(o instanceof r.TextSelection&&!o.empty||n.indexOf("s")>-1)return!1;if(s.mac&&n.indexOf("m")>-1)return!1;var i=o.$from,a=o.$to;if(!i.parent.inlineContent||e.endOfTextblock(t<0?"up":"down")){var c=le(e.state,t);if(c&&c instanceof r.NodeSelection)return ue(e,c)}if(!i.parent.inlineContent){var l=r.Selection.findFrom(t<0?i:a,t);return!l||ue(e,l)}return!1}function be(e,t){if(!(e.state.selection instanceof r.TextSelection))return!0;var n=e.state.selection,o=n.$head,i=n.$anchor,s=n.empty;if(!o.sameParent(i))return!0;if(!s)return!1;if(e.endOfTextblock(t>0?"forward":"backward"))return!0;var a=!o.textOffset&&(t<0?o.nodeBefore:o.nodeAfter);if(a&&!a.isText){var c=e.state.tr;return t<0?c.delete(o.pos-a.nodeSize,o.pos):c.delete(o.pos,o.pos+a.nodeSize),e.dispatch(c),!0}return!1}function we(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function Se(e,t){var n=t.keyCode,r=function(e){var t="";return e.ctrlKey&&(t+="c"),e.metaKey&&(t+="m"),e.altKey&&(t+="a"),e.shiftKey&&(t+="s"),t}(t);return 8==n||s.mac&&72==n&&"c"==r?be(e,-1)||fe(e):46==n||s.mac&&68==n&&"c"==r?be(e,1)||me(e):13==n||27==n||(37==n?pe(e,-1,r)||fe(e):39==n?pe(e,1,r)||me(e):38==n?ye(e,-1,r)||fe(e):40==n?function(e){if(s.chrome&&!(e.state.selection.$head.parentOffset>0)){var t=e.root.getSelection(),n=t.focusNode,r=t.focusOffset;if(n&&1==n.nodeType&&0==r&&n.firstChild&&"false"==n.firstChild.contentEditable){var o=n.firstChild;we(e,o,!0),setTimeout(function(){return we(e,o,!1)},20)}}}(e)||ye(e,1,r)||me(e):r==(s.mac?"m":"c")&&(66==n||73==n||89==n||90==n))}function xe(e,t){var n=e.root.getSelection(),o=e.state.doc;if(!n.focusNode)return null;var i=e.docView.nearestDesc(n.focusNode),s=i&&0==i.size,a=e.docView.posFromDOM(n.focusNode,n.focusOffset);if(a<0)return null;var c,l,u=o.resolve(a);if(w(n)){for(c=u;i&&!i.node;)i=i.parent;if(i&&i.node.isAtom&&r.NodeSelection.isSelectable(i.node)&&i.parent&&(!i.node.isInline||!function(e,t,n){for(var r=0==t,o=t==y(e);r||o;){if(e==n)return!0;var i=h(e);if(!(e=e.parentNode))return!1;r=r&&0==i,o=o&&i==y(e)}}(n.focusNode,n.focusOffset,i.dom))){var p=i.posBefore;l=new r.NodeSelection(a==p?u:o.resolve(p))}}else{var d=e.docView.posFromDOM(n.anchorNode,n.anchorOffset);if(d<0)return null;c=o.resolve(d)}l||(l=Ae(e,c,u,"pointer"==t||e.state.selection.head<u.pos&&!s?1:-1));return l}function ke(e,t){var n=e.state.selection;if(Te(e,n),e.editable?e.hasFocus():Ee(e)&&document.activeElement&&document.activeElement.contains(e.dom)){if(e.domObserver.disconnectSelection(),e.cursorWrapper)!function(e){var t=e.root.getSelection(),n=document.createRange(),r=e.cursorWrapper.dom,o="IMG"==r.nodeName;o?n.setEnd(r.parentNode,h(r)+1):n.setEnd(r,0);n.collapse(!1),t.removeAllRanges(),t.addRange(n),!o&&!e.state.selection.visible&&s.ie&&s.ie_version<=11&&(r.disabled=!0,r.disabled=!1)}(e);else{var o,i,a=n.anchor,c=n.head;!Ce||n instanceof r.TextSelection||(n.$from.parent.inlineContent||(o=Oe(e,n.from)),n.empty||n.$from.parent.inlineContent||(i=Oe(e,n.to))),e.docView.setSelection(a,c,e.root,t),Ce&&(o&&Ne(o),i&&Ne(i)),n.visible?e.dom.classList.remove("ProseMirror-hideselection"):(e.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&function(e){var t=e.dom.ownerDocument;t.removeEventListener("selectionchange",e.hideSelectionGuard);var n=e.root.getSelection(),r=n.anchorNode,o=n.anchorOffset;t.addEventListener("selectionchange",e.hideSelectionGuard=function(){n.anchorNode==r&&n.anchorOffset==o||(t.removeEventListener("selectionchange",e.hideSelectionGuard),e.dom.classList.remove("ProseMirror-hideselection"))})}(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}}se.prototype.getPreMatch=function(e){return e>=this.preMatchOffset?this.preMatched[e-this.preMatchOffset]:null},se.prototype.destroyBetween=function(e,t){if(e!=t){for(var n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}},se.prototype.destroyRest=function(){this.destroyBetween(this.index,this.top.children.length)},se.prototype.syncToMarks=function(e,t,n){for(var r=0,o=this.stack.length>>1,i=Math.min(o,e.length);r<i&&(r==o-1?this.top:this.stack[r+1<<1]).matchesMark(e[r])&&!1!==e[r].type.spec.spanning;)r++;for(;r<o;)this.destroyRest(),this.top.dirty=0,this.index=this.stack.pop(),this.top=this.stack.pop(),o--;for(;o<e.length;){this.stack.push(this.top,this.index+1);for(var s=-1,a=this.index;a<Math.min(this.index+3,this.top.children.length);a++)if(this.top.children[a].matchesMark(e[o])){s=a;break}if(s>-1)s>this.index&&(this.changed=!0,this.destroyBetween(this.index,s)),this.top=this.top.children[this.index];else{var c=J.create(this.top,e[o],t,n);this.top.children.splice(this.index,0,c),this.top=c,this.changed=!0}this.index=0,o++}},se.prototype.findNodeMatch=function(e,t,n,r){var o=-1,i=r<0?void 0:this.getPreMatch(r),s=this.top.children;if(i&&i.matchesNode(e,t,n))o=s.indexOf(i);else for(var a=this.index,c=Math.min(s.length,a+5);a<c;a++){var l=s[a];if(l.matchesNode(e,t,n)&&this.preMatched.indexOf(l)<0){o=a;break}}return!(o<0)&&(this.destroyBetween(this.index,o),this.index++,!0)},se.prototype.updateNextNode=function(e,t,n,r,o){for(var i=this.index;i<this.top.children.length;i++){var s=this.top.children[i];if(s instanceof H){var a=this.preMatched.indexOf(s);if(a>-1&&a+this.preMatchOffset!=o)return!1;var c=s.dom;if(!(this.lock&&(c==this.lock||1==c.nodeType&&c.contains(this.lock.parentNode))&&!(e.isText&&s.node&&s.node.isText&&s.nodeDOM.nodeValue==e.text&&3!=s.dirty&&oe(t,s.outerDeco)))&&s.update(e,t,n,r))return this.destroyBetween(this.index,i),s.dom!=c&&(this.changed=!0),this.index++,!0;break}}return!1},se.prototype.addNode=function(e,t,n,r,o){this.top.children.splice(this.index++,0,H.create(this.top,e,t,n,r,o)),this.changed=!0},se.prototype.placeWidget=function(e,t,n){var r=this.index<this.top.children.length?this.top.children[this.index]:null;if(!r||!r.matchesWidget(e)||e!=r.widget&&r.widget.type.toDOM.parentNode){var o=new W(this.top,e,t,n);this.top.children.splice(this.index++,0,o),this.changed=!0}else this.index++},se.prototype.addTextblockHacks=function(){for(var e=this.top.children[this.index-1];e instanceof J;)e=e.children[e.children.length-1];if(!e||!(e instanceof G)||/\n$/.test(e.node.text))if(this.index<this.top.children.length&&this.top.children[this.index].matchesHack())this.index++;else{var t=document.createElement("br");this.top.children.splice(this.index++,0,new X(this.top,q,t,null)),this.changed=!0}};var Ce=s.safari||s.chrome&&s.chrome_version<63;function Oe(e,t){var n=e.docView.domFromPos(t),r=n.node,o=n.offset,i=o<r.childNodes.length?r.childNodes[o]:null,a=o?r.childNodes[o-1]:null;if(s.safari&&i&&"false"==i.contentEditable)return Me(i);if(!(i&&"false"!=i.contentEditable||a&&"false"!=a.contentEditable)){if(i)return Me(i);if(a)return Me(a)}}function Me(e){return e.contentEditable="true",s.safari&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function Ne(e){e.contentEditable="false",e.wasDraggable&&(e.draggable=!0,e.wasDraggable=null)}function Te(e,t){if(t instanceof r.NodeSelection){var n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(De(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else De(e)}function De(e){e.lastSelectedViewDesc&&(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),e.lastSelectedViewDesc=null)}function Ae(e,t,n,o){return e.someProp("createSelectionBetween",function(r){return r(e,t,n)})||r.TextSelection.between(t,n,o)}function Ee(e){var t=e.root.getSelection();if(!t.anchorNode)return!1;try{return e.dom.contains(3==t.anchorNode.nodeType?t.anchorNode.parentNode:t.anchorNode)&&(e.editable||e.dom.contains(3==t.focusNode.nodeType?t.focusNode.parentNode:t.focusNode))}catch(e){return!1}}function Re(e){var t=e.pmViewDesc;if(t)return t.parseRule();if("BR"==e.nodeName&&e.parentNode){if(s.safari&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){var n=document.createElement("div");return n.appendChild(document.createElement("li")),{skip:n}}if(e.parentNode.lastChild==e||s.safari&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if("IMG"==e.nodeName&&e.getAttribute("mark-placeholder"))return{ignore:!0}}function _e(e,t,n,i,a){if(t<0){var c=e.lastSelectionTime>Date.now()-50?e.lastSelectionOrigin:null,l=xe(e,c);if(l&&!e.state.selection.eq(l)){var u=e.state.tr.setSelection(l);"pointer"==c?u.setMeta("pointer",!0):"key"==c&&u.scrollIntoView(),e.dispatch(u)}}else{var p=e.state.doc.resolve(t),h=p.sharedDepth(n);t=p.before(h+1),n=e.state.doc.resolve(n).after(h+1);var d,f,m=e.state.selection,v=function(e,t,n){var r=e.docView.parseRange(t,n),i=r.node,a=r.fromOffset,c=r.toOffset,l=r.from,u=r.to,p=e.root.getSelection(),h=null,d=p.anchorNode;if(d&&e.dom.contains(1==d.nodeType?d:d.parentNode)&&(h=[{node:d,offset:p.anchorOffset}],w(p)||h.push({node:p.focusNode,offset:p.focusOffset})),s.chrome&&8===e.lastKeyCode)for(var f=c;f>a;f--){var m=i.childNodes[f-1],v=m.pmViewDesc;if("BR"==m.nodeType&&!v){c=f;break}if(!v||v.size)break}var g=e.state.doc,y=e.someProp("domParser")||o.DOMParser.fromSchema(e.state.schema),b=g.resolve(l),S=null,x=y.parse(i,{topNode:b.parent,topMatch:b.parent.contentMatchAt(b.index()),topOpen:!0,from:a,to:c,preserveWhitespace:!b.parent.type.spec.code||"full",editableContent:!0,findPositions:h,ruleFromNode:Re,context:b});if(h&&null!=h[0].pos){var k=h[0].pos,C=h[1]&&h[1].pos;null==C&&(C=k),S={anchor:k+l,head:C+l}}return{doc:x,sel:S,from:l,to:u}}(e,t,n),g=e.state.doc,y=g.slice(v.from,v.to);8===e.lastKeyCode&&Date.now()-100<e.lastKeyCodeTime?(d=e.state.selection.to,f="end"):(d=e.state.selection.from,f="start"),e.lastKeyCode=null;var b=function(e,t,n,r,o){var i=e.findDiffStart(t,n);if(null==i)return null;var s=e.findDiffEnd(t,n+e.size,n+t.size),a=s.a,c=s.b;if("end"==o){var l=Math.max(0,i-Math.min(a,c));r-=a+l-i}if(a<i&&e.size<t.size){var u=r<=i&&r>=a?i-r:0;c=(i-=u)+(c-a),a=i}else if(c<i){var p=r<=i&&r>=c?i-r:0;a=(i-=p)+(a-c),c=i}return{start:i,endA:a,endB:c}}(y.content,v.doc.content,v.from,d,f);if(!b){if(!(i&&m instanceof r.TextSelection&&!m.empty&&m.$head.sameParent(m.$anchor))||e.composing||v.sel&&v.sel.anchor!=v.sel.head){if(v.sel){var x=Pe(e,e.state.doc,v.sel);x&&!x.eq(e.state.selection)&&e.dispatch(e.state.tr.setSelection(x))}return}b={start:m.from,endA:m.to,endB:m.to}}e.domChangeCount++,e.state.selection.from<e.state.selection.to&&b.start==b.endB&&e.state.selection instanceof r.TextSelection&&(b.start>e.state.selection.from&&b.start<=e.state.selection.from+2?b.start=e.state.selection.from:b.endA<e.state.selection.to&&b.endA>=e.state.selection.to-2&&(b.endB+=e.state.selection.to-b.endA,b.endA=e.state.selection.to)),s.ie&&s.ie_version<=11&&b.endB==b.start+1&&b.endA==b.start&&b.start>v.from&&"  "==v.doc.textBetween(b.start-v.from-1,b.start-v.from+1)&&(b.start--,b.endA--,b.endB--);var k,C=v.doc.resolveNoCache(b.start-v.from),O=v.doc.resolveNoCache(b.endB-v.from),M=C.sameParent(O)&&C.parent.inlineContent;if((s.ios&&e.lastIOSEnter>Date.now()-225&&(!M||a.some(function(e){return"DIV"==e.nodeName||"P"==e.nodeName}))||!M&&C.pos<v.doc.content.size&&(k=r.Selection.findFrom(v.doc.resolve(C.pos+1),1,!0))&&k.head==O.pos)&&e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))}))e.lastIOSEnter=0;else if(e.state.selection.anchor>b.start&&function(e,t,n,r,o){if(!r.parent.isTextblock||n-t<=o.pos-r.pos||$e(r,!0,!1)<o.pos)return!1;var i=e.resolve(t);if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;var s=e.resolve($e(i,!0,!0));if(!s.parent.isTextblock||s.pos>n||$e(s,!0,!1)<n)return!1;return r.parent.content.cut(r.parentOffset).eq(s.parent.content)}(g,b.start,b.endA,C,O)&&e.someProp("handleKeyDown",function(t){return t(e,S(8,"Backspace"))}))s.android&&s.chrome&&e.domObserver.suppressSelectionUpdates();else{s.android&&!M&&C.start()!=O.start()&&0==O.parentOffset&&C.depth==O.depth&&v.sel&&v.sel.anchor==v.sel.head&&v.sel.head==b.endA&&(b.endB-=2,O=v.doc.resolveNoCache(b.endB-v.from),setTimeout(function(){e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))})},20));var N,T,D,A,E=b.start,R=b.endA;if(M)if(C.pos==O.pos)s.ie&&s.ie_version<=11&&0==C.parentOffset&&(e.domObserver.suppressSelectionUpdates(),setTimeout(function(){return ke(e)},20)),N=e.state.tr.delete(E,R),T=g.resolve(b.start).marksAcross(g.resolve(b.endA));else if(b.endA==b.endB&&(A=g.resolve(b.start))&&(D=function(e,t){for(var n,r,i,s=e.firstChild.marks,a=t.firstChild.marks,c=s,l=a,u=0;u<a.length;u++)c=a[u].removeFromSet(c);for(var p=0;p<s.length;p++)l=s[p].removeFromSet(l);if(1==c.length&&0==l.length)r=c[0],n="add",i=function(e){return e.mark(r.addToSet(e.marks))};else{if(0!=c.length||1!=l.length)return null;r=l[0],n="remove",i=function(e){return e.mark(r.removeFromSet(e.marks))}}for(var h=[],d=0;d<t.childCount;d++)h.push(i(t.child(d)));if(o.Fragment.from(h).eq(e))return{mark:r,type:n}}(C.parent.content.cut(C.parentOffset,O.parentOffset),A.parent.content.cut(A.parentOffset,b.endA-A.start()))))N=e.state.tr,"add"==D.type?N.addMark(E,R,D.mark):N.removeMark(E,R,D.mark);else if(C.parent.child(C.index()).isText&&C.index()==O.index()-(O.textOffset?0:1)){var _=C.parent.textBetween(C.parentOffset,O.parentOffset);if(e.someProp("handleTextInput",function(t){return t(e,E,R,_)}))return;N=e.state.tr.insertText(_,E,R)}if(N||(N=e.state.tr.replace(E,R,v.doc.slice(b.start-v.from,b.endB-v.from))),v.sel){var P=Pe(e,N.doc,v.sel);P&&!(s.chrome&&s.android&&e.composing&&P.empty&&(P.head==E||P.head==N.mapping.map(R)-1)||s.ie&&P.empty&&P.head==E)&&N.setSelection(P)}T&&N.ensureMarks(T),e.dispatch(N.scrollIntoView())}}}function Pe(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:Ae(e,t.resolve(n.anchor),t.resolve(n.head))}function $e(e,t,n){for(var r=e.depth,o=t?e.end():e.pos;r>0&&(t||e.indexAfter(r)==e.node(r).childCount);)r--,o++,t=!1;if(n)for(var i=e.node(r).maybeChild(e.indexAfter(r));i&&!i.isLeaf;)i=i.firstChild,o++;return o}function Ie(e,t){for(var n=[],r=t.content,i=t.openStart,s=t.openEnd;i>1&&s>1&&1==r.childCount&&1==r.firstChild.childCount;){i--,s--;var a=r.firstChild;n.push(a.type.name,a.type.hasRequiredAttrs()?a.attrs:null),r=a.content}var c=e.someProp("clipboardSerializer")||o.DOMSerializer.fromSchema(e.state.schema),l=Le(),u=l.createElement("div");u.appendChild(c.serializeFragment(r,{document:l}));for(var p,h=u.firstChild;h&&1==h.nodeType&&(p=Ve[h.nodeName.toLowerCase()]);){for(var d=p.length-1;d>=0;d--){for(var f=l.createElement(p[d]);u.firstChild;)f.appendChild(u.firstChild);u.appendChild(f)}h=u.firstChild}return h&&1==h.nodeType&&h.setAttribute("data-pm-slice",i+" "+s+" "+JSON.stringify(n)),{dom:u,text:e.someProp("clipboardTextSerializer",function(e){return e(t)})||t.content.textBetween(0,t.content.size,"\n\n")}}function ze(e,t,n,r,i){var s,a,c=i.parent.type.spec.code;if(!n&&!t)return null;var l=t&&(r||c||!n);if(l){if(e.someProp("transformPastedText",function(e){t=e(t,c||r)}),c)return new o.Slice(o.Fragment.from(e.state.schema.text(t)),0,0);var u=e.someProp("clipboardTextParser",function(e){return e(t,i,r)});u?a=u:(s=document.createElement("div"),t.trim().split(/(?:\r\n?|\n)+/).forEach(function(e){s.appendChild(document.createElement("p")).textContent=e}))}else e.someProp("transformPastedHTML",function(e){n=e(n)}),s=function(e){var t=/(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));var n,r=Le().createElement("div"),o=/(?:<meta [^>]*>)*<([a-z][^>\s]+)/i.exec(e),i=0;(n=o&&Ve[o[1].toLowerCase()])&&(e=n.map(function(e){return"<"+e+">"}).join("")+e+n.map(function(e){return"</"+e+">"}).reverse().join(""),i=n.length);r.innerHTML=e;for(var s=0;s<i;s++)r=r.firstChild;return r}(n);var p=s&&s.querySelector("[data-pm-slice]"),h=p&&/^(\d+) (\d+) (.*)/.exec(p.getAttribute("data-pm-slice"));if(!a){var d=e.someProp("clipboardParser")||e.someProp("domParser")||o.DOMParser.fromSchema(e.state.schema);a=d.parseSlice(s,{preserveWhitespace:!(!l&&!h),context:i})}return a=h?function(e,t){if(!e.size)return e;var n,r=e.content.firstChild.type.schema;try{n=JSON.parse(t)}catch(t){return e}for(var i=e.content,s=e.openStart,a=e.openEnd,c=n.length-2;c>=0;c-=2){var l=r.nodes[n[c]];if(!l||l.hasRequiredAttrs())break;i=o.Fragment.from(l.create(n[c+1],i)),s++,a++}return new o.Slice(i,s,a)}(function(e,t,n){t<e.openStart&&(e=new o.Slice(Fe(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd));n<e.openEnd&&(e=new o.Slice(Fe(e.content,1,n,e.openEnd,0,0),e.openStart,n));return e}(a,+h[1],+h[2]),h[3]):o.Slice.maxOpen(function(e,t){if(e.childCount<2)return e;for(var n=function(n){var r=t.node(n),i=r.contentMatchAt(t.index(n)),s=void 0,a=[];if(e.forEach(function(e){if(a){var t,n=i.findWrapping(e.type);if(!n)return a=null;if(t=a.length&&s.length&&function e(t,n,r,i,s){if(s<t.length&&s<n.length&&t[s]==n[s]){var a=e(t,n,r,i.lastChild,s+1);if(a)return i.copy(i.content.replaceChild(i.childCount-1,a));var c=i.contentMatchAt(i.childCount);if(c.matchType(s==t.length-1?r.type:t[s+1]))return i.copy(i.content.append(o.Fragment.from(Be(r,t,s+1))))}}(n,s,e,a[a.length-1],0))a[a.length-1]=t;else{a.length&&(a[a.length-1]=function e(t,n){if(0==n)return t;var r=t.content.replaceChild(t.childCount-1,e(t.lastChild,n-1));var i=t.contentMatchAt(t.childCount).fillBefore(o.Fragment.empty,!0);return t.copy(r.append(i))}(a[a.length-1],s.length));var r=Be(e,n);a.push(r),i=i.matchType(r.type,r.attrs),s=n}}}),a)return{v:o.Fragment.from(a)}},r=t.depth;r>=0;r--){var i=n(r);if(i)return i.v}return e}(a.content,i),!1),e.someProp("transformPasted",function(e){a=e(a)}),a}function Be(e,t,n){void 0===n&&(n=0);for(var r=t.length-1;r>=n;r--)e=t[r].create(null,o.Fragment.from(e));return e}function Fe(e,t,n,r,i,s){var a=t<0?e.firstChild:e.lastChild,c=a.content;return i<r-1&&(c=Fe(c,t,n,r,i+1,s)),i>=n&&(c=t<0?a.contentMatchAt(0).fillBefore(c,e.childCount>1||s<=i).append(c):c.append(a.contentMatchAt(a.childCount).fillBefore(o.Fragment.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,a.copy(c))}var Ve={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]},je=null;function Le(){return je||(je=document.implementation.createHTMLDocument("title"))}var qe={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},We=s.ie&&s.ie_version<=11,Ke=function(){this.anchorNode=this.anchorOffset=this.focusNode=this.focusOffset=null};Ke.prototype.set=function(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset},Ke.prototype.eq=function(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset};var Je=function(e,t){var n=this;this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=window.MutationObserver&&new window.MutationObserver(function(e){for(var t=0;t<e.length;t++)n.queue.push(e[t]);s.ie&&s.ie_version<=11&&e.some(function(e){return"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length})?n.flushSoon():n.flush()}),this.currentSelection=new Ke,We&&(this.onCharData=function(e){n.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),n.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.suppressingSelectionUpdates=!1};Je.prototype.flushSoon=function(){var e=this;this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(function(){e.flushingSoon=-1,e.flush()},20))},Je.prototype.forceFlush=function(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())},Je.prototype.start=function(){this.observer&&this.observer.observe(this.view.dom,qe),We&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()},Je.prototype.stop=function(){var e=this;if(this.observer){var t=this.observer.takeRecords();if(t.length){for(var n=0;n<t.length;n++)this.queue.push(t[n]);window.setTimeout(function(){return e.flush()},20)}this.observer.disconnect()}We&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()},Je.prototype.connectSelection=function(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)},Je.prototype.disconnectSelection=function(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)},Je.prototype.suppressSelectionUpdates=function(){var e=this;this.suppressingSelectionUpdates=!0,setTimeout(function(){return e.suppressingSelectionUpdates=!1},50)},Je.prototype.onSelectionChange=function(){if(function(e){return(!e.editable||e.root.activeElement==e.dom)&&Ee(e)}(this.view)){if(this.suppressingSelectionUpdates)return ke(this.view);if(s.ie&&s.ie_version<=11&&!this.view.state.selection.empty){var e=this.view.root.getSelection();if(e.focusNode&&m(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}},Je.prototype.setCurSelection=function(){this.currentSelection.set(this.view.root.getSelection())},Je.prototype.ignoreSelectionChange=function(e){if(0==e.rangeCount)return!0;var t=e.getRangeAt(0).commonAncestorContainer,n=this.view.docView.nearestDesc(t);return n&&n.ignoreMutation({type:"selection",target:3==t.nodeType?t.parentNode:t})?(this.setCurSelection(),!0):void 0},Je.prototype.flush=function(){if(this.view.docView&&!(this.flushingSoon>-1)){var e=this.observer?this.observer.takeRecords():[];this.queue.length&&(e=this.queue.concat(e),this.queue.length=0);var t=this.view.root.getSelection(),n=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(t)&&Ee(this.view)&&!this.ignoreSelectionChange(t),r=-1,o=-1,i=!1,a=[];if(this.view.editable)for(var c=0;c<e.length;c++){var l=this.registerMutation(e[c],a);l&&(r=r<0?l.from:Math.min(l.from,r),o=o<0?l.to:Math.max(l.to,o),l.typeOver&&(i=!0))}if(s.gecko&&a.length>1){var u=a.filter(function(e){return"BR"==e.nodeName});if(2==u.length){var p=u[0],h=u[1];p.parentNode&&p.parentNode.parentNode==h.parentNode?h.remove():p.remove()}}(r>-1||n)&&(r>-1&&(this.view.docView.markDirty(r,o),function(e){if(He)return;He=!0,"normal"==getComputedStyle(e.dom).whiteSpace&&console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.")}(this.view)),this.handleDOMChange(r,o,i,a),this.view.docView.dirty?this.view.updateState(this.view.state):this.currentSelection.eq(t)||ke(this.view))}},Je.prototype.registerMutation=function(e,t){if(t.indexOf(e.target)>-1)return null;var n=this.view.docView.nearestDesc(e.target);if("attributes"==e.type&&(n==this.view.docView||"contenteditable"==e.attributeName||"style"==e.attributeName&&!e.oldValue&&!e.target.getAttribute("style")))return null;if(!n||n.ignoreMutation(e))return null;if("childList"==e.type){var r=e.previousSibling,o=e.nextSibling;if(s.ie&&s.ie_version<=11&&e.addedNodes.length)for(var i=0;i<e.addedNodes.length;i++){var a=e.addedNodes[i],c=a.previousSibling,l=a.nextSibling;(!c||Array.prototype.indexOf.call(e.addedNodes,c)<0)&&(r=c),(!l||Array.prototype.indexOf.call(e.addedNodes,l)<0)&&(o=l)}for(var u=r&&r.parentNode==e.target?h(r)+1:0,p=n.localPosFromDOM(e.target,u,-1),d=o&&o.parentNode==e.target?h(o):e.target.childNodes.length,f=0;f<e.addedNodes.length;f++)t.push(e.addedNodes[f]);return{from:p,to:n.localPosFromDOM(e.target,d,1)}}return"attributes"==e.type?{from:n.posAtStart-n.border,to:n.posAtEnd+n.border}:{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}};var He=!1;var Ue={},Ge={};function Xe(e,t){e.lastSelectionOrigin=t,e.lastSelectionTime=Date.now()}function Ze(e){e.someProp("handleDOMEvents",function(t){for(var n in t)e.eventHandlers[n]||e.dom.addEventListener(n,e.eventHandlers[n]=function(t){return Ye(e,t)})})}function Ye(e,t){return e.someProp("handleDOMEvents",function(n){var r=n[t.type];return!!r&&(r(e,t)||t.defaultPrevented)})}function Qe(e){return{left:e.clientX,top:e.clientY}}function et(e,t,n,r,o){if(-1==r)return!1;for(var i=e.state.doc.resolve(r),s=function(r){if(e.someProp(t,function(t){return r>i.depth?t(e,n,i.nodeAfter,i.before(r),o,!0):t(e,n,i.node(r),i.before(r),o,!1)}))return{v:!0}},a=i.depth+1;a>0;a--){var c=s(a);if(c)return c.v}return!1}function tt(e,t,n){e.focused||e.focus();var r=e.state.tr.setSelection(t);"pointer"==n&&r.setMeta("pointer",!0),e.dispatch(r)}function nt(e,t,n,o,i){return et(e,"handleClickOn",t,n,o)||e.someProp("handleClick",function(n){return n(e,t,o)})||(i?function(e,t){if(-1==t)return!1;var n,o,i=e.state.selection;i instanceof r.NodeSelection&&(n=i.node);for(var s=e.state.doc.resolve(t),a=s.depth+1;a>0;a--){var c=a>s.depth?s.nodeAfter:s.node(a);if(r.NodeSelection.isSelectable(c)){o=n&&i.$from.depth>0&&a>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos?s.before(i.$from.depth):s.before(a);break}}return null!=o&&(tt(e,r.NodeSelection.create(e.state.doc,o),"pointer"),!0)}(e,n):function(e,t){if(-1==t)return!1;var n=e.state.doc.resolve(t),o=n.nodeAfter;return!!(o&&o.isAtom&&r.NodeSelection.isSelectable(o))&&(tt(e,new r.NodeSelection(n),"pointer"),!0)}(e,n))}function rt(e,t,n,o){return et(e,"handleTripleClickOn",t,n,o)||e.someProp("handleTripleClick",function(n){return n(e,t,o)})||function(e,t){var n=e.state.doc;if(-1==t)return!!n.inlineContent&&(tt(e,r.TextSelection.create(n,0,n.content.size),"pointer"),!0);for(var o=n.resolve(t),i=o.depth+1;i>0;i--){var s=i>o.depth?o.nodeAfter:o.node(i),a=o.before(i);if(s.inlineContent)tt(e,r.TextSelection.create(n,a+1,a+1+s.content.size),"pointer");else{if(!r.NodeSelection.isSelectable(s))continue;tt(e,r.NodeSelection.create(n,a),"pointer")}return!0}}(e,n)}function ot(e){return pt(e)}Ge.keydown=function(e,t){if(e.shiftKey=16==t.keyCode||t.shiftKey,!at(e,t))if(e.domObserver.forceFlush(),e.lastKeyCode=t.keyCode,e.lastKeyCodeTime=Date.now(),!s.ios||13!=t.keyCode||t.ctrlKey||t.altKey||t.metaKey)e.someProp("handleKeyDown",function(n){return n(e,t)})||Se(e,t)?t.preventDefault():Xe(e,"key");else{var n=Date.now();e.lastIOSEnter=n,e.lastIOSEnterFallbackTimeout=setTimeout(function(){e.lastIOSEnter==n&&(e.someProp("handleKeyDown",function(t){return t(e,S(13,"Enter"))}),e.lastIOSEnter=0)},200)}},Ge.keyup=function(e,t){16==t.keyCode&&(e.shiftKey=!1)},Ge.keypress=function(e,t){if(!(at(e,t)||!t.charCode||t.ctrlKey&&!t.altKey||s.mac&&t.metaKey))if(e.someProp("handleKeyPress",function(n){return n(e,t)}))t.preventDefault();else{var n=e.state.selection;if(!(n instanceof r.TextSelection&&n.$from.sameParent(n.$to))){var o=String.fromCharCode(t.charCode);e.someProp("handleTextInput",function(t){return t(e,n.$from.pos,n.$to.pos,o)})||e.dispatch(e.state.tr.insertText(o).scrollIntoView()),t.preventDefault()}}};var it=s.mac?"metaKey":"ctrlKey";Ue.mousedown=function(e,t){e.shiftKey=t.shiftKey;var n=ot(e),r=Date.now(),o="singleClick";r-e.lastClick.time<500&&function(e,t){var n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}(t,e.lastClick)&&!t[it]&&("singleClick"==e.lastClick.type?o="doubleClick":"doubleClick"==e.lastClick.type&&(o="tripleClick")),e.lastClick={time:r,x:t.clientX,y:t.clientY,type:o};var i=e.posAtCoords(Qe(t));i&&("singleClick"==o?e.mouseDown=new st(e,i,t,n):("doubleClick"==o?function(e,t,n,r){return et(e,"handleDoubleClickOn",t,n,r)||e.someProp("handleDoubleClick",function(n){return n(e,t,r)})}:rt)(e,i.pos,i.inside,t)?t.preventDefault():Xe(e,"pointer"))};var st=function(e,t,n,o){var i,a,c=this;if(this.view=e,this.startDoc=e.state.doc,this.pos=t,this.event=n,this.flushed=o,this.selectNode=n[it],this.allowDefault=n.shiftKey,t.inside>-1)i=e.state.doc.nodeAt(t.inside),a=t.inside;else{var l=e.state.doc.resolve(t.pos);i=l.parent,a=l.depth?l.before():0}this.mightDrag=null;var u=o?null:n.target,p=u?e.docView.nearestDesc(u,!0):null;this.target=p?p.dom:null,(i.type.spec.draggable&&!1!==i.type.spec.selectable||e.state.selection instanceof r.NodeSelection&&a==e.state.selection.from)&&(this.mightDrag={node:i,pos:a,addAttr:this.target&&!this.target.draggable,setUneditable:this.target&&s.gecko&&!this.target.hasAttribute("contentEditable")}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(function(){return c.target.setAttribute("contentEditable","false")},20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),Xe(e,"pointer")};function at(e,t){return!!e.composing||!!(s.safari&&Math.abs(t.timeStamp-e.compositionEndedAt)<500)&&(e.compositionEndedAt=-2e8,!0)}st.prototype.done=function(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.view.mouseDown=null},st.prototype.up=function(e){if(this.done(),this.view.dom.contains(3==e.target.nodeType?e.target.parentNode:e.target)){var t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(Qe(e))),this.allowDefault||!t?Xe(this.view,"pointer"):nt(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():this.flushed||s.safari&&this.mightDrag&&!this.mightDrag.node.isAtom||s.chrome&&!(this.view.state.selection instanceof r.TextSelection)&&(t.pos==this.view.state.selection.from||t.pos==this.view.state.selection.to)?(tt(this.view,r.Selection.near(this.view.state.doc.resolve(t.pos)),"pointer"),e.preventDefault()):Xe(this.view,"pointer")}},st.prototype.move=function(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0),Xe(this.view,"pointer")},Ue.touchdown=function(e){ot(e),Xe(e,"pointer")},Ue.contextmenu=function(e){return ot(e)};var ct=s.android?5e3:-1;function lt(e,t){clearTimeout(e.composingTimeout),t>-1&&(e.composingTimeout=setTimeout(function(){return pt(e)},t))}function ut(e){for(e.composing=!1;e.compositionNodes.length>0;)e.compositionNodes.pop().markParentsDirty()}function pt(e,t){if(e.domObserver.forceFlush(),ut(e),t||e.docView.dirty){var n=xe(e);return n&&!n.eq(e.state.selection)?e.dispatch(e.state.tr.setSelection(n)):e.updateState(e.state),!0}return!1}Ge.compositionstart=Ge.compositionupdate=function(e){if(!e.composing){e.domObserver.flush();var t=e.state,n=t.selection.$from;if(t.selection.empty&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(function(e){return!1===e.type.spec.inclusive})))e.markCursor=e.state.storedMarks||n.marks(),pt(e,!0),e.markCursor=null;else if(pt(e),s.gecko&&t.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length)for(var r=e.root.getSelection(),o=r.focusNode,i=r.focusOffset;o&&1==o.nodeType&&0!=i;){var a=i<0?o.lastChild:o.childNodes[i-1];if(!a)break;if(3==a.nodeType){r.collapse(a,a.nodeValue.length);break}o=a,i=-1}e.composing=!0}lt(e,ct)},Ge.compositionend=function(e,t){e.composing&&(e.composing=!1,e.compositionEndedAt=t.timeStamp,lt(e,20))};var ht=s.ie&&s.ie_version<15||s.ios&&s.webkit_version<604;function dt(e,t,n,r){var i=ze(e,t,n,e.shiftKey,e.state.selection.$from);if(!e.someProp("handlePaste",function(t){return t(e,r,i||o.Slice.empty)})&&i){var s=function(e){return 0==e.openStart&&0==e.openEnd&&1==e.content.childCount?e.content.firstChild:null}(i),a=s?e.state.tr.replaceSelectionWith(s,e.shiftKey):e.state.tr.replaceSelection(i);e.dispatch(a.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste"))}}Ue.copy=Ge.cut=function(e,t){var n=e.state.selection,r="cut"==t.type;if(!n.empty){var o=ht?null:t.clipboardData,i=Ie(e,n.content()),s=i.dom,a=i.text;o?(t.preventDefault(),o.clearData(),o.setData("text/html",s.innerHTML),o.setData("text/plain",a)):function(e,t){if(e.dom.parentNode){var n=e.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(t),n.style.cssText="position: fixed; left: -10000px; top: 10px";var r=getSelection(),o=document.createRange();o.selectNodeContents(t),e.dom.blur(),r.removeAllRanges(),r.addRange(o),setTimeout(function(){n.parentNode&&n.parentNode.removeChild(n),e.focus()},50)}}(e,s),r&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))}},Ge.paste=function(e,t){var n=ht?null:t.clipboardData,r=n&&n.getData("text/html"),o=n&&n.getData("text/plain");n&&(r||o||n.files.length)?(dt(e,o,r,t),t.preventDefault()):function(e,t){if(e.dom.parentNode){var n=e.shiftKey||e.state.selection.$from.parent.type.spec.code,r=e.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus(),setTimeout(function(){e.focus(),r.parentNode&&r.parentNode.removeChild(r),n?dt(e,r.value,null,t):dt(e,r.textContent,r.innerHTML,t)},50)}}(e,t)};var ft=s.mac?"altKey":"ctrlKey";for(var mt in Ue.dragstart=function(e,t){var n=e.mouseDown;if(n&&n.done(),t.dataTransfer){var o=e.state.selection,i=o.empty?null:e.posAtCoords(Qe(t));if(i&&i.pos>=o.from&&i.pos<=(o instanceof r.NodeSelection?o.to-1:o.to));else if(n&&n.mightDrag)e.dispatch(e.state.tr.setSelection(r.NodeSelection.create(e.state.doc,n.mightDrag.pos)));else if(t.target&&1==t.target.nodeType){var s=e.docView.nearestDesc(t.target,!0);if(!s||!s.node.type.spec.draggable||s==e.docView)return;e.dispatch(e.state.tr.setSelection(r.NodeSelection.create(e.state.doc,s.posBefore)))}var a=e.state.selection.content(),c=Ie(e,a),l=c.dom,u=c.text;t.dataTransfer.clearData(),t.dataTransfer.setData(ht?"Text":"text/html",l.innerHTML),ht||t.dataTransfer.setData("text/plain",u),e.dragging=new function(e,t){this.slice=e,this.move=t}(a,!t[ft])}},Ue.dragend=function(e){window.setTimeout(function(){return e.dragging=null},50)},Ge.dragover=Ge.dragenter=function(e,t){return t.preventDefault()},Ge.drop=function(e,t){var n=e.dragging;if(e.dragging=null,t.dataTransfer){var s=e.posAtCoords(Qe(t));if(s){var a=e.state.doc.resolve(s.pos);if(a){var c=n&&n.slice||ze(e,t.dataTransfer.getData(ht?"Text":"text/plain"),ht?null:t.dataTransfer.getData("text/html"),!1,a);if(e.someProp("handleDrop",function(r){return r(e,t,c||o.Slice.empty,n&&n.move)}))t.preventDefault();else if(c){t.preventDefault();var l=c?Object(i.h)(e.state.doc,a.pos,c):a.pos;null==l&&(l=a.pos);var u=e.state.tr;n&&n.move&&u.deleteSelection();var p=u.mapping.map(l),h=0==c.openStart&&0==c.openEnd&&1==c.content.childCount,d=u.doc;if(h?u.replaceRangeWith(p,p,c.content.firstChild):u.replaceRange(p,p,c),!u.doc.eq(d)){var f=u.doc.resolve(p);h&&r.NodeSelection.isSelectable(c.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(c.content.firstChild)?u.setSelection(new r.NodeSelection(f)):u.setSelection(Ae(e,f,u.doc.resolve(u.mapping.map(l)))),e.focus(),e.dispatch(u.setMeta("uiEvent","drop"))}}}}}},Ue.focus=function(e){e.focused||(e.domObserver.stop(),e.dom.classList.add("ProseMirror-focused"),e.domObserver.start(),e.focused=!0,setTimeout(function(){e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.root.getSelection())&&ke(e)},20))},Ue.blur=function(e){e.focused&&(e.domObserver.stop(),e.dom.classList.remove("ProseMirror-focused"),e.domObserver.start(),e.domObserver.currentSelection.set({}),e.focused=!1)},Ue.beforeinput=function(e,t){if(s.chrome&&s.android&&"deleteContentBackward"==t.inputType){var n=e.domChangeCount;setTimeout(function(){if(e.domChangeCount==n&&(e.dom.blur(),e.focus(),!e.someProp("handleKeyDown",function(t){return t(e,S(8,"Backspace"))}))){var t=e.state.selection.$cursor;t&&t.pos>0&&e.dispatch(e.state.tr.delete(t.pos-1,t.pos).scrollIntoView())}},50)}},Ge)Ue[mt]=Ge[mt];function vt(e,t){if(e==t)return!0;for(var n in e)if(e[n]!==t[n])return!1;for(var r in t)if(!(r in e))return!1;return!0}var gt=function(e,t){this.spec=t||kt,this.side=this.spec.side||0,this.toDOM=e};gt.prototype.map=function(e,t,n,r){var o=e.mapResult(t.from+r,this.side<0?-1:1),i=o.pos;return o.deleted?null:new wt(i-n,i-n,this)},gt.prototype.valid=function(){return!0},gt.prototype.eq=function(e){return this==e||e instanceof gt&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&vt(this.spec,e.spec))};var yt=function(e,t){this.spec=t||kt,this.attrs=e};yt.prototype.map=function(e,t,n,r){var o=e.map(t.from+r,this.spec.inclusiveStart?-1:1)-n,i=e.map(t.to+r,this.spec.inclusiveEnd?1:-1)-n;return o>=i?null:new wt(o,i,this)},yt.prototype.valid=function(e,t){return t.from<t.to},yt.prototype.eq=function(e){return this==e||e instanceof yt&&vt(this.attrs,e.attrs)&&vt(this.spec,e.spec)},yt.is=function(e){return e.type instanceof yt};var bt=function(e,t){this.spec=t||kt,this.attrs=e};bt.prototype.map=function(e,t,n,r){var o=e.mapResult(t.from+r,1);if(o.deleted)return null;var i=e.mapResult(t.to+r,-1);return i.deleted||i.pos<=o.pos?null:new wt(o.pos-n,i.pos-n,this)},bt.prototype.valid=function(e,t){var n=e.content.findIndex(t.from),r=n.index,o=n.offset;return o==t.from&&o+e.child(r).nodeSize==t.to},bt.prototype.eq=function(e){return this==e||e instanceof bt&&vt(this.attrs,e.attrs)&&vt(this.spec,e.spec)};var wt=function(e,t,n){this.from=e,this.to=t,this.type=n},St={spec:{configurable:!0},inline:{configurable:!0}};wt.prototype.copy=function(e,t){return new wt(e,t,this.type)},wt.prototype.eq=function(e,t){return void 0===t&&(t=0),this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to},wt.prototype.map=function(e,t,n){return this.type.map(e,this,t,n)},wt.widget=function(e,t,n){return new wt(e,e,new gt(t,n))},wt.inline=function(e,t,n,r){return new wt(e,t,new yt(n,r))},wt.node=function(e,t,n,r){return new wt(e,t,new bt(n,r))},St.spec.get=function(){return this.type.spec},St.inline.get=function(){return this.type instanceof yt},Object.defineProperties(wt.prototype,St);var xt=[],kt={},Ct=function(e,t){this.local=e&&e.length?e:xt,this.children=t&&t.length?t:xt};Ct.create=function(e,t){return t.length?At(t,e,0,kt):Ot},Ct.prototype.find=function(e,t,n){var r=[];return this.findInner(null==e?0:e,null==t?1e9:t,r,0,n),r},Ct.prototype.findInner=function(e,t,n,r,o){for(var i=0;i<this.local.length;i++){var s=this.local[i];s.from<=t&&s.to>=e&&(!o||o(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(var a=0;a<this.children.length;a+=3)if(this.children[a]<t&&this.children[a+1]>e){var c=this.children[a]+1;this.children[a+2].findInner(e-c,t-c,n,r+c,o)}},Ct.prototype.map=function(e,t,n){return this==Ot||0==e.maps.length?this:this.mapInner(e,t,0,0,n||kt)},Ct.prototype.mapInner=function(e,t,n,r,o){for(var i,s=0;s<this.local.length;s++){var a=this.local[s].map(e,n,r);a&&a.type.valid(t,a)?(i||(i=[])).push(a):o.onRemove&&o.onRemove(this.local[s].spec)}return this.children.length?function(e,t,n,r,o,i,s){for(var a=e.slice(),c=function(e,t,n,r){for(var s=0;s<a.length;s+=3){var c=a[s+1],l=void 0;-1==c||e>c+i||(t>=a[s]+i?a[s+1]=-1:n>=o&&(l=r-n-(t-e))&&(a[s]+=l,a[s+1]+=l))}},l=0;l<n.maps.length;l++)n.maps[l].forEach(c);for(var u=!1,p=0;p<a.length;p+=3)if(-1==a[p+1]){var h=n.map(a[p]+i),d=h-o;if(d<0||d>=r.content.size){u=!0;continue}var f=n.map(e[p+1]+i,-1),m=f-o,v=r.content.findIndex(d),g=v.index,y=v.offset,b=r.maybeChild(g);if(b&&y==d&&y+b.nodeSize==m){var w=a[p+2].mapInner(n,b,h+1,a[p]+i+1,s);w!=Ot?(a[p]=d,a[p+1]=m,a[p+2]=w):(a[p+1]=-2,u=!0)}else u=!0}if(u){var S=function(e,t,n,r,o,i,s){function a(e,t){for(var i=0;i<e.local.length;i++){var c=e.local[i].map(r,o,t);c?n.push(c):s.onRemove&&s.onRemove(e.local[i].spec)}for(var l=0;l<e.children.length;l+=3)a(e.children[l+2],e.children[l]+t+1)}for(var c=0;c<e.length;c+=3)-1==e[c+1]&&a(e[c+2],t[c]+i+1);return n}(a,e,t||[],n,o,i,s),x=At(S,r,0,s);t=x.local;for(var k=0;k<a.length;k+=3)a[k+1]<0&&(a.splice(k,3),k-=3);for(var C=0,O=0;C<x.children.length;C+=3){for(var M=x.children[C];O<a.length&&a[O]<M;)O+=3;a.splice(O,0,x.children[C],x.children[C+1],x.children[C+2])}}return new Ct(t&&t.sort(Et),a)}(this.children,i,e,t,n,r,o):i?new Ct(i.sort(Et)):Ot},Ct.prototype.add=function(e,t){return t.length?this==Ot?Ct.create(e,t):this.addInner(e,t,0):this},Ct.prototype.addInner=function(e,t,n){var r,o=this,i=0;e.forEach(function(e,s){var a,c=s+n;if(a=Tt(t,e,c)){for(r||(r=o.children.slice());i<r.length&&r[i]<s;)i+=3;r[i]==s?r[i+2]=r[i+2].addInner(e,a,c+1):r.splice(i,0,s,s+e.nodeSize,At(a,e,c+1,kt)),i+=3}});var s=Nt(i?Dt(t):t,-n);return new Ct(s.length?this.local.concat(s).sort(Et):this.local,r||this.children)},Ct.prototype.remove=function(e){return 0==e.length||this==Ot?this:this.removeInner(e,0)},Ct.prototype.removeInner=function(e,t){for(var n=this.children,r=this.local,o=0;o<n.length;o+=3){for(var i=void 0,s=n[o]+t,a=n[o+1]+t,c=0,l=void 0;c<e.length;c++)(l=e[c])&&l.from>s&&l.to<a&&(e[c]=null,(i||(i=[])).push(l));if(i){n==this.children&&(n=this.children.slice());var u=n[o+2].removeInner(i,s+1);u!=Ot?n[o+2]=u:(n.splice(o,3),o-=3)}}if(r.length)for(var p=0,h=void 0;p<e.length;p++)if(h=e[p])for(var d=0;d<r.length;d++)r[d].eq(h,t)&&(r==this.local&&(r=this.local.slice()),r.splice(d--,1));return n==this.children&&r==this.local?this:r.length||n.length?new Ct(r,n):Ot},Ct.prototype.forChild=function(e,t){if(this==Ot)return this;if(t.isLeaf)return Ct.empty;for(var n,r,o=0;o<this.children.length;o+=3)if(this.children[o]>=e){this.children[o]==e&&(n=this.children[o+2]);break}for(var i=e+1,s=i+t.content.size,a=0;a<this.local.length;a++){var c=this.local[a];if(c.from<s&&c.to>i&&c.type instanceof yt){var l=Math.max(i,c.from)-i,u=Math.min(s,c.to)-i;l<u&&(r||(r=[])).push(c.copy(l,u))}}if(r){var p=new Ct(r.sort(Et));return n?new Mt([p,n]):p}return n||Ot},Ct.prototype.eq=function(e){if(this==e)return!0;if(!(e instanceof Ct)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(var t=0;t<this.local.length;t++)if(!this.local[t].eq(e.local[t]))return!1;for(var n=0;n<this.children.length;n+=3)if(this.children[n]!=e.children[n]||this.children[n+1]!=e.children[n+1]||!this.children[n+2].eq(e.children[n+2]))return!1;return!0},Ct.prototype.locals=function(e){return Rt(this.localsInner(e))},Ct.prototype.localsInner=function(e){if(this==Ot)return xt;if(e.inlineContent||!this.local.some(yt.is))return this.local;for(var t=[],n=0;n<this.local.length;n++)this.local[n].type instanceof yt||t.push(this.local[n]);return t};var Ot=new Ct;Ct.empty=Ot,Ct.removeOverlap=Rt;var Mt=function(e){this.members=e};function Nt(e,t){if(!t||!e.length)return e;for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(new wt(o.from+t,o.to+t,o.type))}return n}function Tt(e,t,n){if(t.isLeaf)return null;for(var r=n+t.nodeSize,o=null,i=0,s=void 0;i<e.length;i++)(s=e[i])&&s.from>n&&s.to<r&&((o||(o=[])).push(s),e[i]=null);return o}function Dt(e){for(var t=[],n=0;n<e.length;n++)null!=e[n]&&t.push(e[n]);return t}function At(e,t,n,r){var o=[],i=!1;t.forEach(function(t,s){var a=Tt(e,t,s+n);if(a){i=!0;var c=At(a,t,n+s+1,r);c!=Ot&&o.push(s,s+t.nodeSize,c)}});for(var s=Nt(i?Dt(e):e,-n).sort(Et),a=0;a<s.length;a++)s[a].type.valid(t,s[a])||(r.onRemove&&r.onRemove(s[a].spec),s.splice(a--,1));return s.length||o.length?new Ct(s,o):Ot}function Et(e,t){return e.from-t.from||e.to-t.to}function Rt(e){for(var t=e,n=0;n<t.length-1;n++){var r=t[n];if(r.from!=r.to)for(var o=n+1;o<t.length;o++){var i=t[o];if(i.from!=r.from){i.from<r.to&&(t==e&&(t=e.slice()),t[n]=r.copy(r.from,i.from),_t(t,o,r.copy(i.from,r.to)));break}i.to!=r.to&&(t==e&&(t=e.slice()),t[o]=i.copy(i.from,r.to),_t(t,o+1,i.copy(r.to,i.to)))}}return t}function _t(e,t,n){for(;t<e.length&&Et(n,e[t])>0;)t++;e.splice(t,0,n)}function Pt(e){var t=[];return e.someProp("decorations",function(n){var r=n(e.state);r&&r!=Ot&&t.push(r)}),e.cursorWrapper&&t.push(Ct.create(e.state.doc,[e.cursorWrapper.deco])),Mt.from(t)}Mt.prototype.forChild=function(e,t){if(t.isLeaf)return Ct.empty;for(var n=[],r=0;r<this.members.length;r++){var o=this.members[r].forChild(e,t);o!=Ot&&(o instanceof Mt?n=n.concat(o.members):n.push(o))}return Mt.from(n)},Mt.prototype.eq=function(e){if(!(e instanceof Mt)||e.members.length!=this.members.length)return!1;for(var t=0;t<this.members.length;t++)if(!this.members[t].eq(e.members[t]))return!1;return!0},Mt.prototype.locals=function(e){for(var t,n=!0,r=0;r<this.members.length;r++){var o=this.members[r].localsInner(e);if(o.length)if(t){n&&(t=t.slice(),n=!1);for(var i=0;i<o.length;i++)t.push(o[i])}else t=o}return t?Rt(n?t:t.sort(Et)):xt},Mt.from=function(e){switch(e.length){case 0:return Ot;case 1:return e[0];default:return new Mt(e)}};var $t=function(e,t){this._props=t,this.state=t.state,this.dispatch=this.dispatch.bind(this),this._root=null,this.focused=!1,this.trackWrites=null,this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):e.apply?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=Ft(this),this.markCursor=null,this.cursorWrapper=null,Bt(this),this.nodeViews=Vt(this),this.docView=U(this.state.doc,zt(this),Pt(this),this.dom,this),this.lastSelectedViewDesc=null,this.dragging=null,function(e){e.shiftKey=!1,e.mouseDown=null,e.lastKeyCode=null,e.lastKeyCodeTime=0,e.lastClick={time:0,x:0,y:0,type:""},e.lastSelectionOrigin=null,e.lastSelectionTime=0,e.lastIOSEnter=0,e.lastIOSEnterFallbackTimeout=null,e.composing=!1,e.composingTimeout=null,e.compositionNodes=[],e.compositionEndedAt=-2e8,e.domObserver=new Je(e,function(t,n,r,o){return _e(e,t,n,r,o)}),e.domObserver.start(),e.domChangeCount=0,e.eventHandlers=Object.create(null);var t=function(t){var n=Ue[t];e.dom.addEventListener(t,e.eventHandlers[t]=function(t){!function(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(var n=t.target;n!=e.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(t))return!1;return!0}(e,t)||Ye(e,t)||!e.editable&&t.type in Ge||n(e,t)})};for(var n in Ue)t(n);s.safari&&e.dom.addEventListener("input",function(){return null}),Ze(e)}(this),this.pluginViews=[],this.updatePluginViews()},It={props:{configurable:!0},root:{configurable:!0}};function zt(e){var t=Object.create(null);return t.class="ProseMirror",t.contenteditable=String(e.editable),e.someProp("attributes",function(n){if("function"==typeof n&&(n=n(e.state)),n)for(var r in n)"class"==r?t.class+=" "+n[r]:t[r]||"contenteditable"==r||"nodeName"==r||(t[r]=String(n[r]))}),[wt.node(0,e.state.doc.content.size,t)]}function Bt(e){if(e.markCursor){var t=document.createElement("img");t.setAttribute("mark-placeholder","true"),e.cursorWrapper={dom:t,deco:wt.widget(e.state.selection.head,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function Ft(e){return!e.someProp("editable",function(t){return!1===t(e.state)})}function Vt(e){var t={};return e.someProp("nodeViews",function(e){for(var n in e)Object.prototype.hasOwnProperty.call(t,n)||(t[n]=e[n])}),t}It.props.get=function(){if(this._props.state!=this.state){var e=this._props;for(var t in this._props={},e)this._props[t]=e[t];this._props.state=this.state}return this._props},$t.prototype.update=function(e){e.handleDOMEvents!=this._props.handleDOMEvents&&Ze(this),this._props=e,this.updateStateInner(e.state,!0)},$t.prototype.setProps=function(e){var t={};for(var n in this._props)t[n]=this._props[n];for(var r in t.state=this.state,e)t[r]=e[r];this.update(t)},$t.prototype.updateState=function(e){this.updateStateInner(e,this.state.plugins!=e.plugins)},$t.prototype.updateStateInner=function(e,t){var n=this,o=this.state,i=!1,a=!1;if(e.storedMarks&&this.composing&&(ut(this),a=!0),this.state=e,t){var c=Vt(this);(function(e,t){var n=0,r=0;for(var o in e){if(e[o]!=t[o])return!0;n++}for(var i in t)r++;return n!=r})(c,this.nodeViews)&&(this.nodeViews=c,i=!0),Ze(this)}this.editable=Ft(this),Bt(this);var l=Pt(this),u=zt(this),p=t?"reset":e.scrollToSelection>o.scrollToSelection?"to selection":"preserve",h=i||!this.docView.matchesNode(e.doc,u,l);!h&&e.selection.eq(o.selection)||(a=!0);var d="preserve"==p&&a&&null==this.dom.style.overflowAnchor&&function(e){for(var t,n,r=e.dom.getBoundingClientRect(),o=Math.max(0,r.top),i=(r.left+r.right)/2,s=o+1;s<Math.min(innerHeight,r.bottom);s+=5){var a=e.root.elementFromPoint(i,s);if(a!=e.dom&&e.dom.contains(a)){var c=a.getBoundingClientRect();if(c.top>=o-20){t=a,n=c.top;break}}}return{refDOM:t,refTop:n,stack:M(e.dom)}}(this);if(a){this.domObserver.stop();var f=h&&(s.ie||s.chrome)&&!this.composing&&!o.selection.empty&&!e.selection.empty&&function(e,t){var n=Math.min(e.$anchor.sharedDepth(e.head),t.$anchor.sharedDepth(t.head));return e.$anchor.start(n)!=t.$anchor.start(n)}(o.selection,e.selection);if(h){var v=s.chrome?this.trackWrites=this.root.getSelection().focusNode:null;!i&&this.docView.update(e.doc,u,l,this)||(this.docView.updateOuterDeco([]),this.docView.destroy(),this.docView=U(e.doc,u,l,this.dom,this)),v&&!this.trackWrites&&(f=!0)}f||!(this.mouseDown&&this.domObserver.currentSelection.eq(this.root.getSelection())&&function(e){var t=e.docView.domFromPos(e.state.selection.anchor),n=e.root.getSelection();return m(t.node,t.offset,n.anchorNode,n.anchorOffset)}(this))?ke(this,f):(Te(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}if(this.updatePluginViews(o),"reset"==p)this.dom.scrollTop=0;else if("to selection"==p){var g=this.root.getSelection().focusNode;this.someProp("handleScrollToSelection",function(e){return e(n)})||(e.selection instanceof r.NodeSelection?O(this,this.docView.domAfterPos(e.selection.from).getBoundingClientRect(),g):O(this,this.coordsAtPos(e.selection.head),g))}else d&&function(e){var t=e.refDOM,n=e.refTop,r=e.stack,o=t?t.getBoundingClientRect().top:0;N(r,0==o?0:o-n)}(d)},$t.prototype.destroyPluginViews=function(){for(var e;e=this.pluginViews.pop();)e.destroy&&e.destroy()},$t.prototype.updatePluginViews=function(e){if(e&&e.plugins==this.state.plugins)for(var t=0;t<this.pluginViews.length;t++){var n=this.pluginViews[t];n.update&&n.update(this,e)}else{this.destroyPluginViews();for(var r=0;r<this.state.plugins.length;r++){var o=this.state.plugins[r];o.spec.view&&this.pluginViews.push(o.spec.view(this))}}},$t.prototype.someProp=function(e,t){var n,r=this._props&&this._props[e];if(null!=r&&(n=t?t(r):r))return n;var o=this.state.plugins;if(o)for(var i=0;i<o.length;i++){var s=o[i].props[e];if(null!=s&&(n=t?t(s):s))return n}},$t.prototype.hasFocus=function(){return this.root.activeElement==this.dom},$t.prototype.focus=function(){this.domObserver.stop(),this.editable&&function(e){if(e.setActive)return e.setActive();if(T)return e.focus(T);var t=M(e);e.focus(null==T?{get preventScroll(){return T={preventScroll:!0},!0}}:void 0),T||(T=!1,N(t,0))}(this.dom),ke(this),this.domObserver.start()},It.root.get=function(){var e=this._root;if(null==e)for(var t=this.dom.parentNode;t;t=t.parentNode)if(9==t.nodeType||11==t.nodeType&&t.host)return t.getSelection||(Object.getPrototypeOf(t).getSelection=function(){return document.getSelection()}),this._root=t;return e||document},$t.prototype.posAtCoords=function(e){return E(this,e)},$t.prototype.coordsAtPos=function(e){return _(this,e)},$t.prototype.domAtPos=function(e){return this.docView.domFromPos(e)},$t.prototype.nodeDOM=function(e){var t=this.docView.descAt(e);return t?t.nodeDOM:null},$t.prototype.posAtDOM=function(e,t,n){void 0===n&&(n=-1);var r=this.docView.posFromDOM(e,t,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r},$t.prototype.endOfTextblock=function(e,t){return V(this,t||this.state,e)},$t.prototype.destroy=function(){this.docView&&(!function(e){for(var t in e.domObserver.stop(),e.eventHandlers)e.dom.removeEventListener(t,e.eventHandlers[t]);clearTimeout(e.composingTimeout),clearTimeout(e.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],Pt(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null)},$t.prototype.dispatchEvent=function(e){return function(e,t){Ye(e,t)||!Ue[t.type]||!e.editable&&t.type in Ge||Ue[t.type](e,t)}(this,e)},$t.prototype.dispatch=function(e){var t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))},Object.defineProperties($t.prototype,It);var jt=function(e,t){var n=this;this.editorView=e,this.width=t.width||1,this.color=t.color||"black",this.class=t.class,this.cursorPos=null,this.element=null,this.timeout=null,this.handlers=["dragover","dragend","drop","dragleave"].map(function(t){var r=function(e){return n[t](e)};return e.dom.addEventListener(t,r),{name:t,handler:r}})};jt.prototype.destroy=function(){var e=this;this.handlers.forEach(function(t){var n=t.name,r=t.handler;return e.editorView.dom.removeEventListener(n,r)})},jt.prototype.update=function(e,t){null!=this.cursorPos&&t.doc!=e.state.doc&&this.updateOverlay()},jt.prototype.setCursor=function(e){e!=this.cursorPos&&(this.cursorPos=e,null==e?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay())},jt.prototype.updateOverlay=function(){var e,t=this.editorView.state.doc.resolve(this.cursorPos);if(!t.parent.inlineContent){var n=t.nodeBefore,r=t.nodeAfter;if(n||r){var o=this.editorView.nodeDOM(this.cursorPos-(n?n.nodeSize:0)).getBoundingClientRect(),i=n?o.bottom:o.top;n&&r&&(i=(i+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2),e={left:o.left,right:o.right,top:i-this.width/2,bottom:i+this.width/2}}}if(!e){var s=this.editorView.coordsAtPos(this.cursorPos);e={left:s.left-this.width/2,right:s.left+this.width/2,top:s.top,bottom:s.bottom}}var a=this.editorView.dom.offsetParent;this.element||(this.element=a.appendChild(document.createElement("div")),this.class&&(this.element.className=this.class),this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none; background-color: "+this.color);var c=!a||a==document.body&&"static"==getComputedStyle(a).position?{left:-pageXOffset,top:-pageYOffset}:a.getBoundingClientRect();this.element.style.left=e.left-c.left+"px",this.element.style.top=e.top-c.top+"px",this.element.style.width=e.right-e.left+"px",this.element.style.height=e.bottom-e.top+"px"},jt.prototype.scheduleRemoval=function(e){var t=this;clearTimeout(this.timeout),this.timeout=setTimeout(function(){return t.setCursor(null)},e)},jt.prototype.dragover=function(e){if(this.editorView.editable){var t=this.editorView.posAtCoords({left:e.clientX,top:e.clientY});if(t){var n=t.pos;this.editorView.dragging&&this.editorView.dragging.slice&&null==(n=Object(i.h)(this.editorView.state.doc,n,this.editorView.dragging.slice))&&(n=t.pos),this.setCursor(n),this.scheduleRemoval(5e3)}}},jt.prototype.dragend=function(){this.scheduleRemoval(20)},jt.prototype.drop=function(){this.scheduleRemoval(20)},jt.prototype.dragleave=function(e){e.target!=this.editorView.dom&&this.editorView.dom.contains(e.relatedTarget)||this.setCursor(null)};var Lt=n("fwbU"),qt=n("V2qZ"),Wt=function(e){function t(t){e.call(this,t,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.map=function(n,r){var o=n.resolve(r.map(this.head));return t.valid(o)?new t(o):e.near(o)},t.prototype.content=function(){return o.Slice.empty},t.prototype.eq=function(e){return e instanceof t&&e.head==this.head},t.prototype.toJSON=function(){return{type:"gapcursor",pos:this.head}},t.fromJSON=function(e,n){if("number"!=typeof n.pos)throw new RangeError("Invalid input for GapCursor.fromJSON");return new t(e.resolve(n.pos))},t.prototype.getBookmark=function(){return new Kt(this.anchor)},t.valid=function(e){var t=e.parent;if(t.isTextblock||!function(e){for(var t=e.depth;t>=0;t--){var n=e.index(t);if(0!=n)for(var r=e.node(t).child(n-1);;r=r.lastChild){if(0==r.childCount&&!r.inlineContent||r.isAtom||r.type.spec.isolating)return!0;if(r.inlineContent)return!1}}return!0}(e)||!function(e){for(var t=e.depth;t>=0;t--){var n=e.indexAfter(t),r=e.node(t);if(n!=r.childCount)for(var o=r.child(n);;o=o.firstChild){if(0==o.childCount&&!o.inlineContent||o.isAtom||o.type.spec.isolating)return!0;if(o.inlineContent)return!1}}return!0}(e))return!1;var n=t.type.spec.allowGapCursor;if(null!=n)return n;var r=t.contentMatchAt(e.index()).defaultType;return r&&r.isTextblock},t.findFrom=function(e,n,o){e:for(;;){if(!o&&t.valid(e))return e;for(var i=e.pos,s=null,a=e.depth;;a--){var c=e.node(a);if(n>0?e.indexAfter(a)<c.childCount:e.index(a)>0){s=c.child(n>0?e.indexAfter(a):e.index(a)-1);break}if(0==a)return null;i+=n;var l=e.doc.resolve(i);if(t.valid(l))return l}for(;;){var u=n>0?s.firstChild:s.lastChild;if(!u){if(s.isAtom&&!s.isText&&!r.NodeSelection.isSelectable(s)){e=e.doc.resolve(i+s.nodeSize*n),o=!1;continue e}break}s=u,i+=n;var p=e.doc.resolve(i);if(t.valid(p))return p}return null}},t}(r.Selection);Wt.prototype.visible=!1,r.Selection.jsonID("gapcursor",Wt);var Kt=function(e){this.pos=e};Kt.prototype.map=function(e){return new Kt(e.map(this.pos))},Kt.prototype.resolve=function(e){var t=e.resolve(this.pos);return Wt.valid(t)?new Wt(t):r.Selection.near(t)};var Jt=function(){return new r.Plugin({props:{decorations:Xt,createSelectionBetween:function(e,t,n){if(t.pos==n.pos&&Wt.valid(n))return new Wt(n)},handleClick:Gt,handleKeyDown:Ht}})},Ht=Object(Lt.a)({ArrowLeft:Ut("horiz",-1),ArrowRight:Ut("horiz",1),ArrowUp:Ut("vert",-1),ArrowDown:Ut("vert",1)});function Ut(e,t){var n="vert"==e?t>0?"down":"up":t>0?"right":"left";return function(e,o,i){var s=e.selection,a=t>0?s.$to:s.$from,c=s.empty;if(s instanceof r.TextSelection){if(!i.endOfTextblock(n)||0==a.depth)return!1;c=!1,a=e.doc.resolve(t>0?a.after():a.before())}var l=Wt.findFrom(a,t,c);return!!l&&(o&&o(e.tr.setSelection(new Wt(l))),!0)}}function Gt(e,t,n){if(!e.editable)return!1;var o=e.state.doc.resolve(t);if(!Wt.valid(o))return!1;var i=e.posAtCoords({left:n.clientX,top:n.clientY}).inside;return!(i>-1&&r.NodeSelection.isSelectable(e.state.doc.nodeAt(i)))&&(e.dispatch(e.state.tr.setSelection(new Wt(o))),!0)}function Xt(e){if(!(e.selection instanceof Wt))return null;var t=document.createElement("div");return t.className="ProseMirror-gapcursor",qt.b.create(e.doc,[qt.a.widget(e.selection.head,t,{key:"gapcursor"})])}var Zt=n("ABBN"),Yt=n("+V57"),Qt=n("oV9I"),en=n("Kw5r"),tn=n("qd4/");class nn{constructor(e,{editor:t,extension:n,parent:r,node:o,view:i,decorations:s,getPos:a}){this.component=e,this.editor=t,this.extension=n,this.parent=r,this.node=o,this.view=i,this.decorations=s,this.isNode=!!this.node.marks,this.isMark=!this.isNode,this.getPos=this.isMark?this.getMarkPos:a,this.captureEvents=!0,this.dom=this.createDOM(),this.contentDOM=this.vm.$refs.content}createDOM(){const e=en.default.extend(this.component),t={editor:this.editor,node:this.node,view:this.view,getPos:()=>this.getPos(),decorations:this.decorations,selected:!1,options:this.extension.options,updateAttrs:e=>this.updateAttrs(e)};return"function"==typeof this.extension.setSelection&&(this.setSelection=this.extension.setSelection),"function"==typeof this.extension.update&&(this.update=this.extension.update),this.vm=new e({parent:this.parent,propsData:t}).$mount(),this.vm.$el}update(e,t){return e.type===this.node.type&&(e===this.node&&this.decorations===t||(this.node=e,this.decorations=t,this.updateComponentProps({node:e,decorations:t}),!0))}updateComponentProps(e){if(!this.vm._props)return;const t=en.default.config.silent;en.default.config.silent=!0,Object.entries(e).forEach(([e,t])=>{this.vm._props[e]=t}),en.default.config.silent=t}updateAttrs(e){if(!this.view.editable)return;const{state:t}=this.view,{type:n}=this.node,r=this.getPos(),o={...this.node.attrs,...e},i=this.isMark?t.tr.removeMark(r.from,r.to,n).addMark(r.from,r.to,n.create(o)):t.tr.setNodeMarkup(r,null,o);this.view.dispatch(i)}ignoreMutation(e){return"selection"!==e.type&&(!this.contentDOM||!this.contentDOM.contains(e.target))}stopEvent(e){if("function"==typeof this.extension.stopEvent)return this.extension.stopEvent(e);const t=!!this.extension.schema.draggable;if(t&&"mousedown"===e.type){const t=e.target.closest&&e.target.closest("[data-drag-handle]");t&&(this.dom===t||this.dom.contains(t))&&(this.captureEvents=!1,document.addEventListener("dragend",()=>{this.captureEvents=!0},{once:!0}))}const n="copy"===e.type,r="paste"===e.type,o="cut"===e.type,i=e.type.startsWith("drag")||"drop"===e.type;return!(t&&i||n||r||o)&&this.captureEvents}selectNode(){this.updateComponentProps({selected:!0})}deselectNode(){this.updateComponentProps({selected:!1})}getMarkPos(){const e=this.view.posAtDOM(this.dom),t=this.view.state.doc.resolve(e);return Object(Qt.b)(t,this.node.type)}destroy(){this.vm.$destroy()}}class rn{on(e,t){return this._callbacks=this._callbacks||{},this._callbacks[e]||(this._callbacks[e]=[]),this._callbacks[e].push(t),this}emit(e,...t){this._callbacks=this._callbacks||{};const n=this._callbacks[e];return n&&n.forEach(e=>e.apply(this,t)),this}off(e,t){if(arguments.length){const n=this._callbacks?this._callbacks[e]:null;n&&(t?this._callbacks[e]=n.filter(e=>e!==t):delete this._callbacks[e])}else this._callbacks={};return this}}class on{constructor(e={}){this.options={...this.defaultOptions,...e}}init(){return null}bindEditor(e=null){this.editor=e}get name(){return null}get type(){return"extension"}get defaultOptions(){return{}}get plugins(){return[]}inputRules(){return[]}pasteRules(){return[]}keys(){return{}}}class sn{constructor(e=[],t){e.forEach(e=>{e.bindEditor(t),e.init()}),this.extensions=e}get nodes(){return this.extensions.filter(e=>"node"===e.type).reduce((e,{name:t,schema:n})=>({...e,[t]:n}),{})}get options(){const{view:e}=this;return this.extensions.reduce((t,n)=>({...t,[n.name]:new Proxy(n.options,{set(t,n,r){const o=t[n]!==r;return Object.assign(t,{[n]:r}),o&&e.updateState(e.state),!0}})}),{})}get marks(){return this.extensions.filter(e=>"mark"===e.type).reduce((e,{name:t,schema:n})=>({...e,[t]:n}),{})}get plugins(){return this.extensions.filter(e=>e.plugins).reduce((e,{plugins:t})=>[...e,...t],[])}keymaps({schema:e}){const t=this.extensions.filter(e=>["extension"].includes(e.type)).filter(e=>e.keys).map(t=>t.keys({schema:e})),n=this.extensions.filter(e=>["node","mark"].includes(e.type)).filter(e=>e.keys).map(t=>t.keys({type:e["".concat(t.type,"s")][t.name],schema:e}));return[...t,...n].map(e=>Object(Lt.b)(e))}inputRules({schema:e,excludedExtensions:t}){if(!(t instanceof Array)&&t)return[];const n=t instanceof Array?this.extensions.filter(e=>!t.includes(e.name)):this.extensions,r=n.filter(e=>["extension"].includes(e.type)).filter(e=>e.inputRules).map(t=>t.inputRules({schema:e})),o=n.filter(e=>["node","mark"].includes(e.type)).filter(e=>e.inputRules).map(t=>t.inputRules({type:e["".concat(t.type,"s")][t.name],schema:e}));return[...r,...o].reduce((e,t)=>[...e,...t],[])}pasteRules({schema:e,excludedExtensions:t}){if(!(t instanceof Array)&&t)return[];const n=t instanceof Array?this.extensions.filter(e=>!t.includes(e.name)):this.extensions,r=n.filter(e=>["extension"].includes(e.type)).filter(e=>e.pasteRules).map(t=>t.pasteRules({schema:e})),o=n.filter(e=>["node","mark"].includes(e.type)).filter(e=>e.pasteRules).map(t=>t.pasteRules({type:e["".concat(t.type,"s")][t.name],schema:e}));return[...r,...o].reduce((e,t)=>[...e,...t],[])}commands({schema:e,view:t}){return this.extensions.filter(e=>e.commands).reduce((n,r)=>{const{name:o,type:i}=r,s={},a=r.commands({schema:e,...["node","mark"].includes(i)?{type:e["".concat(i,"s")][o]}:{}}),c=(e,n)=>!!t.editable&&(t.focus(),e(n)(t.state,t.dispatch,t)),l=(e,t)=>{Array.isArray(t)?s[e]=(e=>t.forEach(t=>c(t,e))):"function"==typeof t&&(s[e]=(e=>c(t,e)))};return"object"==typeof a?Object.entries(a).forEach(([e,t])=>{l(e,t)}):l(o,a),{...n,...s}},{})}}class an extends on{constructor(e={}){super(e)}get type(){return"mark"}get view(){return null}get schema(){return null}command(){return()=>{}}}function cn(e=0,t=0,n=0){return Math.min(Math.max(parseInt(e,10),t),n)}class ln extends on{constructor(e={}){super(e)}get type(){return"node"}get view(){return null}get schema(){return null}command(){return()=>{}}}class un extends ln{get name(){return"doc"}get schema(){return{content:"block+"}}}class pn extends ln{get name(){return"paragraph"}get schema(){return{content:"inline*",group:"block",draggable:!1,parseDOM:[{tag:"p"}],toDOM:()=>["p",0]}}commands({type:e}){return()=>Object(tn.k)(e)}}class hn extends ln{get name(){return"text"}get schema(){return{group:"inline"}}}var dn='.ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n}\n\n.ProseMirror-gapcursor:after {\n content: "";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n';class fn extends rn{constructor(e={}){super(),this.defaultOptions={editorProps:{},editable:!0,autoFocus:null,extensions:[],content:"",topNode:"doc",emptyDocument:{type:"doc",content:[{type:"paragraph"}]},useBuiltInExtensions:!0,disableInputRules:!1,disablePasteRules:!1,dropCursor:{},enableDropCursor:!0,enableGapCursor:!0,parseOptions:{},injectCSS:!0,onInit:()=>{},onTransaction:()=>{},onUpdate:()=>{},onFocus:()=>{},onBlur:()=>{},onPaste:()=>{},onDrop:()=>{}},this.events=["init","transaction","update","focus","blur","paste","drop"],this.init(e)}init(e={}){this.setOptions({...this.defaultOptions,...e}),this.focused=!1,this.selection={from:0,to:0},this.element=document.createElement("div"),this.extensions=this.createExtensions(),this.nodes=this.createNodes(),this.marks=this.createMarks(),this.schema=this.createSchema(),this.plugins=this.createPlugins(),this.keymaps=this.createKeymaps(),this.inputRules=this.createInputRules(),this.pasteRules=this.createPasteRules(),this.view=this.createView(),this.commands=this.createCommands(),this.setActiveNodesAndMarks(),this.options.injectCSS&&function(e){{const t=document.createElement("style");t.type="text/css",t.textContent=e;const{head:n}=document,{firstChild:r}=n;r?n.insertBefore(t,r):n.appendChild(t)}}(dn),null!==this.options.autoFocus&&this.focus(this.options.autoFocus),this.events.forEach(e=>{this.on(e,this.options[ -/*! - * tiptap v1.29.5 - * (c) 2020 überdosis GbR (limited liability) - * @license MIT - */ -function(e){return e.replace(/(?:^\w|[A-Z]|\b\w)/g,(e,t)=>0===t?e.toLowerCase():e.toUpperCase()).replace(/\s+/g,"")}("on ".concat(e))]||(()=>{}))}),this.emit("init",{view:this.view,state:this.state}),this.extensions.view=this.view}setOptions(e){this.options={...this.options,...e},this.view&&this.state&&this.view.updateState(this.state)}get builtInExtensions(){return this.options.useBuiltInExtensions?[new un,new hn,new pn]:[]}get state(){return this.view?this.view.state:null}createExtensions(){return new sn([...this.builtInExtensions,...this.options.extensions],this)}createPlugins(){return this.extensions.plugins}createKeymaps(){return this.extensions.keymaps({schema:this.schema})}createInputRules(){return this.extensions.inputRules({schema:this.schema,excludedExtensions:this.options.disableInputRules})}createPasteRules(){return this.extensions.pasteRules({schema:this.schema,excludedExtensions:this.options.disablePasteRules})}createCommands(){return this.extensions.commands({schema:this.schema,view:this.view})}createNodes(){return this.extensions.nodes}createMarks(){return this.extensions.marks}createSchema(){return new o.Schema({topNode:this.options.topNode,nodes:this.nodes,marks:this.marks})}createState(){return r.EditorState.create({schema:this.schema,doc:this.createDocument(this.options.content),plugins:[...this.plugins,Object(Yt.b)({rules:this.inputRules}),...this.pasteRules,...this.keymaps,Object(Lt.b)({Backspace:Yt.d}),Object(Lt.b)(Zt.a),...this.options.enableDropCursor?[function(e){return void 0===e&&(e={}),new r.Plugin({view:function(t){return new jt(t,e)}})}(this.options.dropCursor)]:[],...this.options.enableGapCursor?[Jt()]:[],new r.Plugin({key:new r.PluginKey("editable"),props:{editable:()=>this.options.editable}}),new r.Plugin({props:{attributes:{tabindex:0},handleDOMEvents:{focus:(e,t)=>{this.focused=!0,this.emit("focus",{event:t,state:e.state,view:e});const n=this.state.tr.setMeta("focused",!0);this.view.dispatch(n)},blur:(e,t)=>{this.focused=!1,this.emit("blur",{event:t,state:e.state,view:e});const n=this.state.tr.setMeta("focused",!1);this.view.dispatch(n)}}}}),new r.Plugin({props:this.options.editorProps})]})}createDocument(e,t=this.options.parseOptions){if(null===e)return this.schema.nodeFromJSON(this.options.emptyDocument);if("object"==typeof e)try{return this.schema.nodeFromJSON(e)}catch(t){return console.warn("[tiptap warn]: Invalid content.","Passed value:",e,"Error:",t),this.schema.nodeFromJSON(this.options.emptyDocument)}if("string"==typeof e){const n="<div>".concat(e,"</div>"),r=(new window.DOMParser).parseFromString(n,"text/html").body.firstElementChild;return o.DOMParser.fromSchema(this.schema).parse(r,t)}return!1}createView(){return new $t(this.element,{state:this.createState(),handlePaste:(...e)=>{this.emit("paste",...e)},handleDrop:(...e)=>{this.emit("drop",...e)},dispatchTransaction:this.dispatchTransaction.bind(this)})}setParentComponent(e=null){e&&this.view.setProps({nodeViews:this.initNodeViews({parent:e,extensions:[...this.builtInExtensions,...this.options.extensions]})})}initNodeViews({parent:e,extensions:t}){return t.filter(e=>["node","mark"].includes(e.type)).filter(e=>e.view).reduce((t,n)=>{return{...t,[n.name]:(t,r,o,i)=>{const s=n.view;return new nn(s,{editor:this,extension:n,parent:e,node:t,view:r,getPos:o,decorations:i})}}},{})}dispatchTransaction(e){const t=this.state.apply(e);this.view.updateState(t),this.selection={from:this.state.selection.from,to:this.state.selection.to},this.setActiveNodesAndMarks(),this.emit("transaction",{getHTML:this.getHTML.bind(this),getJSON:this.getJSON.bind(this),state:this.state,transaction:e}),e.docChanged&&!e.getMeta("preventUpdate")&&this.emitUpdate(e)}emitUpdate(e){this.emit("update",{getHTML:this.getHTML.bind(this),getJSON:this.getJSON.bind(this),state:this.state,transaction:e})}resolveSelection(e=null){if(this.selection&&null===e)return this.selection;if("start"===e||!0===e)return{from:0,to:0};if("end"===e){const{doc:e}=this.state;return{from:e.content.size,to:e.content.size}}return{from:e,to:e}}focus(e=null){if(this.view.focused&&null===e||!1===e)return;const{from:t,to:n}=this.resolveSelection(e);this.setSelection(t,n),setTimeout(()=>this.view.focus(),10)}setSelection(e=0,t=0){const{doc:n,tr:o}=this.state,i=cn(e,0,n.content.size),s=cn(t,0,n.content.size),a=r.TextSelection.create(n,i,s),c=o.setSelection(a);this.view.dispatch(c)}blur(){this.view.dom.blur()}getSchemaJSON(){return JSON.parse(JSON.stringify({nodes:this.extensions.nodes,marks:this.extensions.marks}))}getHTML(){const e=document.createElement("div"),t=o.DOMSerializer.fromSchema(this.schema).serializeFragment(this.state.doc.content);return e.appendChild(t),e.innerHTML}getJSON(){return this.state.doc.toJSON()}setContent(e={},t=!1,n){const{doc:o,tr:i}=this.state,s=this.createDocument(e,n),a=r.TextSelection.create(o,0,o.content.size),c=i.setSelection(a).replaceSelectionWith(s,!1).setMeta("preventUpdate",!t);this.view.dispatch(c)}clearContent(e=!1){this.setContent(this.options.emptyDocument,e)}setActiveNodesAndMarks(){this.activeMarks=Object.entries(this.schema.marks).reduce((e,[t,n])=>({...e,[t]:(e={})=>Object(Qt.d)(this.state,n,e)}),{}),this.activeMarkAttrs=Object.entries(this.schema.marks).reduce((e,[t,n])=>({...e,[t]:Object(Qt.a)(this.state,n)}),{}),this.activeNodes=Object.entries(this.schema.nodes).reduce((e,[t,n])=>({...e,[t]:(e={})=>Object(Qt.f)(this.state,n,e)}),{})}getMarkAttrs(e=null){return this.activeMarkAttrs[e]}getNodeAttrs(e=null){return{...Object(Qt.c)(this.state,this.schema.nodes[e])}}get isActive(){return Object.entries({...this.activeMarks,...this.activeNodes}).reduce((e,[t,n])=>({...e,[t]:(e={})=>n(e)}),{})}registerPlugin(e=null,t){const n="function"==typeof t?t(e,this.state.plugins):[e,...this.state.plugins],r=this.state.reconfigure({plugins:n});this.view.updateState(r)}unregisterPlugin(e=null){if(!e||!this.view.docView)return;const t=this.state.reconfigure({plugins:this.state.plugins.filter(t=>!t.key.startsWith("".concat(e,"$")))});this.view.updateState(t)}destroy(){this.view&&this.view.destroy()}}var mn={props:{editor:{default:null,type:Object}},watch:{editor:{immediate:!0,handler(e){e&&e.element&&this.$nextTick(()=>{this.$el.appendChild(e.element.firstChild),e.setParentComponent(this)})}}},render:e=>e("div"),beforeDestroy(){this.editor.element=this.$el}};class vn{constructor({options:e}){this.options=e,this.preventHide=!1,this.mousedownHandler=this.handleClick.bind(this),this.options.element.addEventListener("mousedown",this.mousedownHandler,{capture:!0}),this.blurHandler=(()=>{this.preventHide?this.preventHide=!1:this.options.editor.emit("menubar:focusUpdate",!1)}),this.options.editor.on("blur",this.blurHandler)}handleClick(){this.preventHide=!0}destroy(){this.options.element.removeEventListener("mousedown",this.mousedownHandler),this.options.editor.off("blur",this.blurHandler)}}var gn={props:{editor:{default:null,type:Object}},data:()=>({focused:!1}),watch:{editor:{immediate:!0,handler(e){e&&this.$nextTick(()=>{e.registerPlugin(function(e){return new r.Plugin({key:new r.PluginKey("menu_bar"),view:t=>new vn({editorView:t,options:e})})}({editor:e,element:this.$el})),this.focused=e.focused,e.on("focus",()=>{this.focused=!0}),e.on("menubar:focusUpdate",e=>{this.focused=e})})}}},render(){return this.editor?this.$scopedSlots.default({focused:this.focused,focus:this.editor.focus,commands:this.editor.commands,isActive:this.editor.isActive,getMarkAttrs:this.editor.getMarkAttrs.bind(this.editor),getNodeAttrs:this.editor.getNodeAttrs.bind(this.editor)}):null}};Object,Boolean;Object}}]); -//# sourceMappingURL=chunk-68ea.6d56674a.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea.6d56674a.js.map b/priv/static/adminfe/static/js/chunk-68ea.6d56674a.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/marked/src/TextRenderer.js","webpack:///./node_modules/prosemirror-inputrules/dist/index.es.js","webpack:///./node_modules/marked/src/marked.js","webpack:///./node_modules/lowlight/node_modules/highlight.js/lib/core.js","webpack:///./node_modules/marked/src/Parser.js","webpack:///./node_modules/prosemirror-collab/dist/index.es.js","webpack:///./node_modules/rope-sequence/dist/index.es.js","webpack:///./node_modules/prosemirror-history/dist/index.es.js","webpack:///./node_modules/tiptap-extensions/dist/extensions.esm.js","webpack:///./node_modules/prosemirror-commands/dist/index.es.js","webpack:///./node_modules/fault/index.js","webpack:///./node_modules/prosemirror-transform/dist/index.es.js","webpack:///./node_modules/marked/src/Slugger.js","webpack:///./node_modules/orderedmap/index.es.js","webpack:///./node_modules/prosemirror-model/dist/index.es.js","webpack:///./node_modules/lowlight/lib/core.js","webpack:///./node_modules/marked/src/Renderer.js","webpack:///./node_modules/marked/src/Lexer.js","webpack:///./node_modules/prosemirror-state/dist/index.es.js","webpack:///./node_modules/prosemirror-view/dist/index.es.js","webpack:///./node_modules/prosemirror-tables/dist/index.es.js","webpack:///./node_modules/format/format.js","webpack:///./node_modules/marked/src/rules.js","webpack:///./node_modules/w3c-keyname/index.es.js","webpack:///./node_modules/prosemirror-keymap/dist/index.es.js","webpack:///./node_modules/marked/src/InlineLexer.js","webpack:///./node_modules/prosemirror-utils/dist/index.js","webpack:///./node_modules/tiptap-utils/dist/utils.esm.js","webpack:///./node_modules/prosemirror-schema-list/dist/index.es.js","webpack:///./node_modules/tiptap-commands/dist/commands.esm.js","webpack:///./node_modules/marked/src/helpers.js","webpack:///./node_modules/marked/src/defaults.js","webpack:///./node_modules/tiptap/node_modules/prosemirror-view/dist/index.es.js","webpack:///./node_modules/prosemirror-dropcursor/dist/index.es.js","webpack:///./node_modules/prosemirror-gapcursor/dist/index.es.js","webpack:///./node_modules/tiptap/dist/tiptap.esm.js"],"names":["module","exports","[object Object]","text","href","title","__webpack_require__","d","__webpack_exports__","InputRule","inputRules","textblockTypeInputRule","undoInputRule","wrappingInputRule","prosemirror_state__WEBPACK_IMPORTED_MODULE_0__","prosemirror_transform__WEBPACK_IMPORTED_MODULE_1__","match","handler","this","string","state","start","end","insert","offset","lastIndexOf","slice","length","cutOff","tr","insertText","stringHandler","MAX_MATCH","ref","rules","plugin","init","apply","prev","stored","getMeta","selectionSet","docChanged","props","handleTextInput","view","from","to","run","handleDOMEvents","compositionend","setTimeout","$cursor","selection","pos","isInputRules","composing","$from","doc","resolve","parent","type","spec","code","textBefore","textBetween","Math","max","parentOffset","i","exec","dispatch","setMeta","transform","plugins","undoable","getState","toUndo","j","steps","step","invert","docs","marks","replaceWith","schema","regexp","nodeType","getAttrs","joinPredicate","attrs","Function","delete","range","blockRange","wrapping","Object","wrap","before","nodeBefore","join","$start","node","canReplaceWith","index","indexAfter","setBlockType","Lexer","Parser","Renderer","TextRenderer","InlineLexer","Slugger","merge","checkSanitizeDeprecation","escape","getDefaults","changeDefaults","defaults","marked","src","opt","callback","Error","prototype","toString","call","highlight","tokens","pending","lex","e","done","err","out","parse","token","lang","escaped","message","silent","options","setOptions","parser","lexer","inlineLexer","output","deepFreeze","obj","freeze","objIsFunction","getOwnPropertyNames","forEach","prop","hasOwnProperty","isFrozen","Response","mode","undefined","data","ignore","escapeHTML","value","replace","inherit","original","objects","result","key","tag","nodeName","toLowerCase","utils","__proto__","nodeStream","_nodeStream","child","firstChild","nextSibling","nodeValue","push","event","mergeStreams","highlighted","processed","nodeStack","selectStream","open","map","attributes","attr","close","render","stream","substring","reverse","splice","pop","substr","SPAN_CLOSE","emitsWrappingTags","kind","HTMLRenderer","parseTree","buffer","classPrefix","walk","className","sublanguage","span","TokenTree","rootNode","children","stack","top","root","add","closeNode","JSON","stringify","builder","constructor","_walk","addText","openNode","every","el","_collapse","TokenTreeEmitter","super","emitter","name","source","re","C_NUMBER_RE","BACKSLASH_ESCAPE","begin","relevance","APOS_STRING_MODE","illegal","contains","QUOTE_STRING_MODE","PHRASAL_WORDS_MODE","COMMENT","modeOptions","C_LINE_COMMENT_MODE","C_BLOCK_COMMENT_MODE","HASH_COMMENT_MODE","NUMBER_MODE","C_NUMBER_MODE","BINARY_NUMBER_MODE","CSS_NUMBER_MODE","NUMBER_RE","REGEXP_MODE","TITLE_MODE","UNDERSCORE_TITLE_MODE","METHOD_GUARD","MODES","IDENT_RE","UNDERSCORE_IDENT_RE","BINARY_NUMBER_RE","RE_STARTERS_RE","SHEBANG","opts","beginShebang","binary","args","x","concat","on:begin","m","resp","ignoreMatch","END_SAME_AS_BEGIN","assign","_beginMatch","on:end","COMMON_KEYWORDS","split","compileLanguage","language","langRe","global","RegExp","case_insensitive","MultiRegex","matchIndexes","regexes","matchAt","position","countMatchGroups","terminators","matcherRe","regexps","separator","backreferenceRe","numCaptures","ret","String","Number","lastIndex","s","findIndex","matchData","ResumableMultiRegex","multiRegexes","count","regexIndex","matcher","addRule","compile","getMatcher","skipIfhasPrecedingOrTrailingDot","response","input","after","includes","compileMode","cmode","compiled","__beforeBegin","keywords","beginKeywords","kw_pattern","$pattern","rawKeywords","compiled_keywords","splitAndCompile","keys","keywordList","keyword","pair","providedScore","commonKeyword","scoreForKeyword","compileKeywords","lexemes","keywordPatternRe","beginRe","endSameAsBegin","endsWithParent","endRe","terminator_end","illegalRe","c","variants","cached_variants","variant","dependencyOnParent","starts","expand_or_clone_mode","mm","term","rule","buildModeRegex","escape$1","inherit$1","nodeStream$1","mergeStreams$1","NO_MATCH","Symbol","hljs","ArrayProto","languages","create","aliases","SAFE_MODE","fixMarkupRe","LANGUAGE_NOT_FOUND","PLAINTEXT_LANGUAGE","disableAutodetect","noHighlightRe","languageDetectRe","tabReplace","useBR","__emitter","shouldNotHighlight","languageName","test","ignoreIllegals","continuation","context","fire","_highlight","codeToHighlight","keywordData","matchText","processBuffer","subLanguage","mode_buffer","continuations","highlightAuto","addSublanguage","processSubLanguage","last_index","buf","keywordRelevance","addKeyword","processKeywords","startNewMode","doIgnore","lexeme","continueScanAtSamePosition","doBeginMatch","new_mode","beforeCallbacks","cb","skip","excludeBegin","returnBegin","doEndMatch","matchPlusRemainder","end_mode","endOfMode","matched","startsWith","endsParent","origin","returnEnd","excludeEnd","lastMatch","processLexeme","textBeforeMatch","badRule","iterations","getLanguage","console","error","md","list","current","unshift","item","processContinuations","considerAll","processedCount","closeAllNodes","finalize","toHTML","illegalBy","msg","sofar","errorRaised","languageSubset","justTextHighlightResult","secondBest","filter","autoDetection","second_best","fixMarkup","html","highlightBlock","element","block","classes","parentNode","warn","find","_class","blockLanguage","document","createElement","innerHTML","textContent","originalStream","resultNode","prevClassName","currentLang","resultLang","trim","buildClassName","relavance","initHighlighting","called","blocks","querySelectorAll","registerAliases","aliasList","alias","configure","userOptions","initHighlightingOnLoad","window","addEventListener","registerLanguage","languageDefinition","rawDefinition","bind","listLanguages","requireLanguage","addPlugin","debugMode","safeMode","versionString","HLJS","unescape","renderer","slugger","inline","links","inlineText","next","tok","body","peek","hr","heading","depth","row","cell","header","tablecell","align","tablerow","cells","table","blockquote","ordered","loose","checked","task","nextToken","checkbox","parseText","listitem","paragraph","errMsg","log","dist_index_es","RopeSequence","append","other","leafAppend","leafPrepend","appendInner","prepend","Append","empty","sliceInner","min","get","getInner","f","forEachInner","forEachInvertedInner","elt","values","Leaf","prototypeAccessors","configurable","flatten","defineProperties","left","right","leftLen","inner","rope_sequence_dist_index_es","Branch","items","eventCount","popEvent","preserveItems","this$1","remap","mapFrom","remapping","maps","remaining","addAfter","addBefore","Item","maybeStep","mapping","appendMap","addTransform","histOptions","newItems","oldItems","lastItem","merged","overflow","DEPTH_OVERFLOW","n","cutPoint","cutOffEvents","prosemirror_transform_dist_index_es","mirrorPos","mirrorOffset","addMaps","array","rebased","rebasedTransform","rebasedCount","rebasedItems","newUntil","iRebased","getMirror","newMaps","branch","emptyItemCount","compress","upto","events","getMap","newItem","last","HistoryState","undone","prevRanges","prevTime","rangesFor","_from","_to","mapRanges","ranges","histTransaction","history","redo","mustPreserveItems","historyKey","config","added","getBookmark","newHist","setSelection","historyState","scrollIntoView","cachedPreserveItems","cachedPreserveItemsPlugins","historyPreserveItems","closeHistoryKey","index_es_history","newGroupDelay","hist","historyTr","appended","newGroup","time","adjacent","isAdjacentTo","applyTransaction","undo","extensions_esm_Blockquote","tiptap_esm","content","group","defining","draggable","parseDOM","toDOM","commands_esm","nodes","Ctrl->","extensions_esm_BulletList","list_item","Shift-Ctrl-8","extensions_esm_CodeBlock","preserveWhitespace","Shift-Ctrl-\\","extensions_esm_Heading","defaultOptions","levels","level","default","reduce","extensions_esm_HorizontalRule","replaceSelectionWith","extensions_esm_ListItem","Enter","Tab","Shift-Tab","extensions_esm_OrderedList","order","dom","hasAttribute","getAttribute","Shift-Ctrl-9","childCount","prosemirror_tables_dist_index_es","tableGroup","cellContent","cellAttributes","background","getFromDOM","style","backgroundColor","extensions_esm_Bold","fontWeight","Mod-b","extensions_esm_Italic","Mod-i","extensions_esm_Link","openOnClick","target","inclusive","rel","url","handleClick","utils_esm","link","HTMLAnchorElement","stopPropagation","extensions_esm_Underline","Mod-u","extensions_esm_History","Mod-z","Mod-y","Shift-Mod-z","Mod-я","Shift-Mod-я","undoDepth","redoDepth","baseKeymap","chainCommands","exitCode","lift","toggleMark","wrapIn","prosemirror_transform__WEBPACK_IMPORTED_MODULE_0__","prosemirror_model__WEBPACK_IMPORTED_MODULE_1__","prosemirror_state__WEBPACK_IMPORTED_MODULE_2__","deleteSelection","textblockAt","side","lastChild","isTextblock","findCutBefore","$pos","isolating","findCutAfter","$to","defaultBlockAt","edgeCount","edge","hasRequiredAttrs","$head","$anchor","sameParent","above","contentMatchAt","createAndFill","near","splitBlock","isBlock","atEnd","size","deflt","types","can","canReplace","setNodeMarkup","deleteBarrier","$cut","conn","nodeAfter","compatibleContent","nodeSize","clearIncompatible","joinMaybeClear","findWrapping","matchType","validEnd","copy","joinAt","selAfter","findFrom","applicable","nodesBetween","hasMarkup","markType","loop","allowsMarkType","inlineContent","v","returned","markApplies","isInSet","storedMarks","removeStoredMark","addStoredMark","has","ref$1","rangeHasMark","i$1","ref$2","$from$1","$to$1","removeMark","addMark","commands","len","arguments","backspace","endOfTextblock","isSelectable","deleteRange","isAtom","del","pcBaseKeymap","Mod-Enter","Backspace","Mod-Backspace","Delete","Mod-Delete","Mod-a","macBaseKeymap","Ctrl-h","Alt-Backspace","Ctrl-d","Ctrl-Alt-Backspace","Alt-Delete","Alt-d","navigator","platform","os","formatter","fault","EConstructor","FormattedError","displayName","format","eval","EvalError","RangeError","reference","ReferenceError","syntax","SyntaxError","TypeError","uri","URIError","Mapping","ReplaceAroundStep","ReplaceStep","Step","Transform","canJoin","canSplit","dropPoint","joinPoint","liftTarget","prosemirror_model__WEBPACK_IMPORTED_MODULE_0__","lower16","factor16","pow","makeRecover","recoverIndex","MapResult","deleted","recover","StepMap","inverted","diff","recoverOffset","mapResult","assoc","_map","simple","oldIndex","newIndex","oldSize","newSize","touches","oldStart","newStart","mirror","TransformError","mirrors","setMirror","appendMapping","startSize","mirr","appendMappingInverted","totalSize","inverse","corr","mustOverride","object","failed","addStep","stepsByID","_doc","_mapping","_other","toJSON","fromJSON","json","stepType","jsonID","id","stepClass","StepResult","ok","fail","fromReplace","structure","contentBetween","openEnd","openStart","slice$1","gapFrom","gapTo","gap","inserted","insertAt","removeBetween","dist","maybeChild","isLeaf","canCut","cutByIndex","startIndex","endIndex","innerRange","around","outer","findWrappingOutside","inside","contentMatch","innerMatch","findWrappingInside","withAttrs","typesAfter","base","innerType","validContent","index$1","rest","replaceChild","baseType","joinable","a","b","canAppend","dir","pass","bias","insertPos","mapFragment","fragment","mapped","isInline","fromArray","gapStart","gapEnd","splitting","d$1","splitting$1","wrappers","canChangeType","startM","endM","nodeAt","newNode","typeAfter","AddMarkStep","mark","oldSlice","sharedDepth","addToSet","RemoveMarkStep","eq","markFromJSON","removeFromSet","fitsTrivially","removed","removing","adding","newSet","toRemove","found","found$1","parentType","delSteps","cur","allowed","fill","fillBefore","Fitter","fit","replaceStep","unplaced","frontier","placed","prototypeAccessors$1","dropFromFragment","addToFragment","contentAt","closeNodeStart","frag","matchFragment","contentAfterFits","allowsMarks","invalidMarks","closeFragment","oldOpen","newOpen","first","coveredDepths","findFittable","placeNodes","openMore","dropNode","moveInline","mustMoveInline","placedSize","sliceDepth","frontierDepth","inject","openAtEnd","closeFrontierNode","openFrontierNode","taken","openEndCount","matches","allowedMarks","toEnd","i$2","findCloseLevel","scan","dropInner","match$1","move","replaceRange","targetDepths","preferredTarget","indexOf","preferredTargetIndex","leftNodes","preferredDepth","openDepth","targetDepth","expand","startSteps","replaceRangeWith","point","insertPoint","covered","seen","slug","originalSlug","OrderedMap","update","newKey","self","remove","addToStart","addToEnd","place","without","subtract","index_es","Fragment","nodeStart","descendants","blockSeparator","leafText","separated","isText","sameMarkup","withText","cut","p","findDiffStart","childA","childB","findDiffEnd","otherPos","posA","posB","iA","iB","same","minSize","round","retIndex","curPos","toStringInner","Array","isArray","nodeFromJSON","joined","compareDeep","p$1","Mark","ReplaceError","set","excludes","rank","_","sameSet","setFrom","none","sort","Slice","replaceOuter","$along","extra","resolveNoCache","prepareSliceForReplace","index_es_close","replaceThreeWay","$end","addRange","checkJoin","addNode","replaceTwoWay","main","sub","$before","$after","textOffset","insertInto","removeRange","indexTo","offsetTo","maxOpen","openIsolating","n$1","ResolvedPos","path","prototypeAccessors$2","resolveDepth","val","dOff","tmp","marksAcross","pred","NodeRange","str","rem","resolveCached","resolveCache","cached","resolveCachePos","resolveCacheSize","prototypeAccessors$1$1","emptyAttrs","Node","prototypeAccessors$3","startPos","defaultAttrs","includeParents","childAfter","childBefore","toDebugString","wrapMarks","replacement","one","two","check","TextNode","ContentMatch","wrapCache","prototypeAccessors$4","defaultType","nodeTypes","TokenStream","expr","parseExpr","nfa","labeled","explore","states","known","nullFrom","states$1","cmp","dfa","connect","exprs","loop$1","next$1","next$2","edges","work","dead","checkForDeadEnds","compatible","search","finished","tp","computed","computeWrapping","active","via","shift","prototypeAccessors$1$2","parseExprSeq","eat","parseExprSubscript","typeName","type$1","groups","resolveName","parseExprAtom","parseExprRange","parseNum","attrName","hasDefault","computeAttrs","built","given","initAttrs","Attribute","NodeType","markSet","prototypeAccessors$5","atom","isRequired","createChecked","topType","topNode","prototypeAccessors$1$3","MarkType","excluded","instance","index_es_Schema","contentExprCache","prop$1","contentExpr","markExpr","gatherMarks","prop$2","excl","topNodeType","wrappings","mark$1","text$1","DOMParser","tags","styles","ParseContext","addAll","finish","parseSlice","matchTag","namespace","namespaceURI","matchesContext","matchStyle","charCodeAt","schemaRules","priority","rules$1","name$1","fromSchema","domParser","blockTags","address","article","aside","canvas","dd","div","dl","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","hgroup","li","noscript","ol","pre","section","tfoot","ul","ignoreTags","head","script","listTags","OPT_PRESERVE_WS","OPT_PRESERVE_WS_FULL","wsOptionsFor","NodeContext","pendingMarks","solid","activeMarks","applyPending","nextType","markMayApply","isOpen","topContext","topOptions","topMatch","findPositions","needsBlock","prototypeAccessors$6","currentPos","selector","msMatchesSelector","webkitMatchesSelector","mozMatchesSelector","addDOM","addTextNode","readStyles","parseStyles","addPendingMark","addElement","removePendingMark","domNodeBefore","previousSibling","insertNode","findInText","findInside","prevItem","appendChild","normalizeList","ruleFromNode","sync","oldNeedsBlock","leafFallback","addElementByRule","ownerDocument","createTextNode","enter","startIn","getContent","contentDOM","contentElement","querySelector","findAround","childNodes","findAtPoint","findPlace","route","cx","enterInner","textblockFromContext","closeExtra","preserveWS","topOpen","compareDocumentPosition","textNode","some","parts","option","useRoot","minDepth","part","$context","DOMSerializer","gatherToDOM","serializeFragment","createDocumentFragment","keep","rendered","spanning","markDOM","serializeMark","serializeNode","renderSpec","onContent","serializeNodeAndMarks","xmlNS","tagName","space","createElementNS","space$1","setAttributeNS","setAttribute","innerContent","domSerializer","nodesFromSchema","marksFromSchema","high","settings","subset","prefix","defaultPrefix","registerAlias","Emitter","tail","results","properties","noop","cleanUrl","infostring","langPrefix","quote","raw","headerIds","headerPrefix","xhtml","flags","sanitize","baseUrl","rtrim","splitCells","normal","pedantic","gfm","cap","bull","listStart","listItems","t","l","isordered","istask","ischecked","newline","lastToken","trimRight","codeBlockStyle","fences","nptable","bullet","smartLists","charAt","sanitizer","def","lheading","r","AllSelection","EditorState","NodeSelection","Plugin","PluginKey","Selection","SelectionRange","TextSelection","Transaction","classesById","anchor","lastNode","lastParent","selectionToInsertionEnd","textOnly","findSelectionIn","atStart","cls","selectionClass","between","visible","ensureMarks","TextBookmark","dPos","NodeBookmark","selectable","sel","AllBookmark","startLen","_newFrom","newTo","Date","now","curSelection","curSelectionFor","updated","meta","storedMarksSet","isGeneric","scrolledIntoView","setStoredMarks","setTime","replaceSelection","inheritMarks","FieldDesc","desc","baseFields","_marks","_old","Configuration","fields","pluginsByKey","filterTransaction","rootTr","transactions","trs","newState","applyInner","haveNew","appendTransaction","oldState","newInstance","field","applyListeners","$config","reconfigure","pluginFields","addApplyListener","removeApplyListener","bindProps","createKey","Decoration","DecorationSet","prosemirror_transform__WEBPACK_IMPORTED_MODULE_2__","ie_edge","userAgent","ie_upto10","ie_11up","mac","ie","ie_version","documentMode","gecko","gecko_version","chrome","chrome_version","ios","android","webkit","documentElement","safari","vendor","webkit_version","domIndex","host","textRange","createRange","setEnd","setStart","isEquivalentPosition","off","targetNode","targetOff","scanFor","atomElements","hasBlockDesc","contentEditable","pmViewDesc","selectionCollapsed","domSel","collapsed","isCollapsed","rangeCount","getRangeAt","keyEvent","keyCode","createEvent","initEvent","windowRect","clientWidth","bottom","clientHeight","getSide","clientRect","rect","getBoundingClientRect","scrollRectIntoView","startDOM","scrollThreshold","someProp","scrollMargin","atTop","bounding","moveX","moveY","defaultView","scrollBy","startX","scrollLeft","startY","scrollTop","dX","dY","scrollStack","restoreScrollStack","dTop","preventScrollSupported","findOffsetInNode","coords","closest","coordsClosest","dxClosest","rowBot","rowTop","childIndex","rects","getClientRects","dx","singleRect","inRect","findOffsetInText","posAtCoords","assign$1","caretPositionFromPoint","pos$1","offsetNode","caretRangeFromPoint","startContainer","startOffset","elementFromPoint","box","startI","floor","targetKludge","box$1","outside","docView","nearestDesc","posBefore","posAfter","posFromDOM","posFromCaret","posFromElement","posAtStart","border","coordsAtPos","domFromPos","rectBefore","rectAfter","flattenV","rect$1","height","y","flattenH","rect$2","target$1","rect$3","width","withFlushedState","viewState","activeElement","updateState","focus","maybeRTL","cachedState","cachedDir","cachedResult","nearest","boxes","endOfTextblockVertical","getSelection","modify","oldRange","oldNode","focusNode","oldOff","focusOffset","oldBidiLevel","caretBidiLevel","domAfterPos","removeAllRanges","endOfTextblockHorizontal","ViewDesc","dirty","beforePosition","posAtEnd","contentLost","matchesWidget","matchesMark","matchesNode","matchesHack","parseRule","stopEvent","destroy","posBeforeChild","localPosFromDOM","domBefore","domAfter","desc$1","search$1","onlyNodes","getDesc","nodeDOM","descAt","parseRange","fromOffset","toOffset","childBase","emptyChildAt","j$1","force","anchorDOM","headDOM","brKludge","anchorNode","anchorOffset","domSelExtended","extend","collapse","DOMException","ignoreMutation","mutation","markDirty","startInside","endInside","markParentsDirty","nothing","WidgetViewDesc","widget","classList","stop","ignoreSelection","CompositionViewDesc","textDOM","mut","oldValue","MarkViewDesc","custom","nodeViews","replaceNodes","NodeViewDesc","outerDeco","innerDeco","updateChildren","descObj","applyOuterDeco","CustomNodeViewDesc","TextViewDesc","reparseInView","sameOuterDeco","composition","localCompositionNode","updater","ViewTreeUpdater","deco","onWidget","onNode","locals","forChild","decoIndex","restNode","parentIndex","widgets","compareSide","child$1","cutAt","i$3","iterDeco","insideNode","syncToMarks","placeWidget","findNodeMatch","updateNextNode","addTextblockHacks","destroyRest","changed","protectLocalComposition","renderDescs","parentDOM","descs","written","childDOM","rm","insertBefore","trackWrites","oldCSS","cssText","getComputedStyle","listStyle","iosHacks","nearbyTextNode","textPos","childStart","findTextInFragment","removeChild","compositionNodes","updateInner","updateOuterDeco","needsWrap","oldDOM","patchOuterDeco","computeOuterDeco","selectNode","deselectNode","removeAttribute","docViewDesc","pmIsDeco","inParent","BRHackViewDesc","OuterDecoLevel","noDeco","class","outerDOM","prevComputed","curComputed","curDOM","patchAttributes","prevList","curList","removeProperty","lockedNode","lock","preMatch","preMatched","preMatchOffset","selectionFromDOM","inWidget","isOnEdge","selectionBetween","selectionToDOM","syncNodeSelection","editable","hasFocus","hasSelection","domObserver","disconnectSelection","cursorWrapper","img","disabled","selectCursorWrapper","resetEditableFrom","resetEditableTo","brokenSelectBetweenUneditable","temporarilyEditableNear","resetEditable","removeEventListener","hideSelectionGuard","removeClassOnSelectionChange","setCurSelection","connectSelection","getPreMatch","destroyBetween","maxKeep","markDesc","nextDOM","setEditable","wasDraggable","lastSelectedViewDesc","clearNodeSelection","moveSelectionBlock","$side","selectHorizontally","mods","nodePos","nodeLen","isIgnorable","skipIgnoredNodesLeft","moveNode","moveOffset","isBlockNode","setSelFocus","skipIgnoredNodesRight","selectVertically","beyond","stopNativeHorizontalDelete","nextNode","switchEditable","captureKeyDown","ctrlKey","metaKey","altKey","shiftKey","getMods","safariDownArrowBug","readDOMChange","typeOver","addedNodes","lastSelectionTime","lastSelectionOrigin","newSel","tr$1","shared","preferredPos","preferredSide","from_","to_","lastKeyCode","startDoc","editableContent","anchor$1","parseBetween","compare","lastKeyCodeTime","change","endA","endB","adjust","move$1","findDiff","sel$1","resolveSelection","domChangeCount","nextSel","inlineChange","lastIOSEnter","old","$newStart","$newEnd","skipClosingAndOpening","$next","looksLikeJoin","suppressSelectionUpdates","markChange","$from1","chFrom","chTo","curMarks","prevMarks","isMarkChange","sel$2","parsedSel","fromEnd","mayOpen","serializeForClipboard","serializer","detachedDoc","wrapMap","wrapper","parseFromClipboard","plainText","inCode","asText","parsed","metas","firstTag","readHTML","contextNode","sliceData","addContext","closeRange","closeSlice","lastWrap","inLast","addToSibling","sibling","withWrappers","closeRight","wrapped","normalizeSiblings","thead","tbody","caption","colgroup","col","td","th","_detachedDoc","implementation","createHTMLDocument","observeOptions","childList","characterData","characterDataOldValue","attributeOldValue","subtree","useCharData","SelectionState","DOMObserver","handleDOMChange","queue","flushingSoon","observer","MutationObserver","mutations","removedNodes","flushSoon","flush","currentSelection","onCharData","prevValue","onSelectionChange","suppressingSelectionUpdates","forceFlush","clearTimeout","observe","take","takeRecords","disconnect","hasFocusAndSelection","ignoreSelectionChange","container","commonAncestorContainer","result$1","registerMutation","brs","cssChecked","whiteSpace","checkCSS","attributeName","handlers","editHandlers","setSelectionOrigin","ensureListeners","currentHandlers","eventHandlers","runCustomHandler","defaultPrevented","eventCoords","clientX","clientY","runHandlerOnContext","propName","updateSelection","focused","handleSingleClick","selectedNode","selectAt","selectClickedNode","selectClickedLeaf","handleTripleClick","defaultTripleClick","forceDOMFlush","endComposition","keydown","inOrNearComposition","preventDefault","lastIOSEnterFallbackTimeout","keyup","keypress","charCode","fromCharCode","selectNodeModifier","mousedown","flushed","lastClick","click","dy","isNear","mouseDown","MouseDown","targetPos","allowDefault","mightDrag","targetDesc","addAttr","setUneditable","up","abs","timeStamp","compositionEndedAt","touchdown","contextmenu","timeoutComposition","scheduleComposeEnd","delay","composingTimeout","clearComposition","forceUpdate","compositionstart","compositionupdate","markCursor","brokenClipboardAPI","doPaste","singleNode","sliceSingleNode","clipboardData","clearData","setData","selectNodeContents","blur","captureCopy","paste","getData","files","capturePaste","dragCopyModifier","dragstart","dataTransfer","dragging","dragend","dragover","dragenter","drop","eventPos","$mouse","isNode","beforeInsert","beforeinput","inputType","compareObjs","WidgetType","noSpec","oldOffset","valid","InlineType","inclusiveStart","inclusiveEnd","is","local","decorations","buildTree","predicate","findInner","childOff","mapInner","newLocal","onRemove","oldChildren","oldEnd","newEnd","dSize","mustRebuild","fromLocal","toLocal","childOffset","childNode","gather","mapAndGatherRemainingDecorations","from$1","byPos","mapChildren","addInner","baseOffset","takeSpansForNode","moveSpans","withoutNulls","removeInner","span$1","dec","localSet","DecorationGroup","removeOverlap","localsInner","members","spans","hasNulls","localStart","working","insertAhead","viewDecorations","sorted","EditorView","_props","_root","mount","mounted","getEditable","updateCursorWrapper","buildNodeViews","computeDocDeco","bubbles","eventBelongsToView","initInput","pluginViews","updatePluginViews","contenteditable","updateStateInner","setProps","reconfigured","redraw","updateSel","nA","nB","changedNodeViews","scroll","scrollToSelection","updateDoc","oldScrollPos","overflowAnchor","refDOM","refTop","innerHeight","localRect","storeScrollPos","forceSelUpdate","sel1","sel2","selectionContextChanged","chromeKludge","anchorInRightPlace","newRefTop","resetScrollPos","destroyPluginViews","prevState","pluginView","setActive","preventScroll","focusPreventScroll","getPrototypeOf","domAtPos","posAtDOM","destroyInput","dispatchEvent","dispatchTransaction","CellSelection","TableMap","TableView","clipCells","insertCells","pastedCells","addColSpan","addColumn","addColumnAfter","addColumnBefore","addRow","addRowAfter","addRowBefore","cellAround","colCount","columnIsHeader","columnResizing","key$1","deleteColumn","deleteRow","deleteTable","findCell","fixTables","fixTablesKey","goToNextCell","handlePaste","inSameTable","isInTable","mergeCells","moveCellForward","nextCell","pointsAtCell","removeColSpan","removeColumn","removeRow","rowIsHeader","selectedRect","selectionCell","setAttr","setCellAttr","splitCell","splitCellWithType","tableEditing","tableNodeTypes","tableNodes","toggleHeader","toggleHeaderCell","toggleHeaderColumn","toggleHeaderRow","updateColumns","readFromCache","addToCache","prosemirror_keymap__WEBPACK_IMPORTED_MODULE_2__","prosemirror_view__WEBPACK_IMPORTED_MODULE_3__","prosemirror_transform__WEBPACK_IMPORTED_MODULE_4__","WeakMap","cache","cache$1","cachePos","Rect","problems","freshColWidth","colwidth","colspan","getCellAttrs","extraAttrs","widthAttr","widths","rowspan","getter","setCellAttrs","setter","setDOMAttr","cellAttrs","tableRole","table_row","table_cell","table_header","role","axis","rectBetween","leftA","rightA","topA","bottomA","leftB","rightB","topB","bottomB","cellsInRect","positionAt","rowStart","rowEnd","rowEndIndex","hasRowSpan","rowNode","rowWidth","prevRow","cell$1","findWidth","mapPos","colWidths","cellNode","h","w","colW","widthIndex","expectedPos","missing","tableMap","badWidths","colWidth","findBadColWidths","computeMap","$anchorCell","$headCell","role$1","cellNear","$a","$b","moved","headerCell","header_cell","tableChanged","isRowSelection","rowSelection","isColSelection","colSelection","rows","rowContent","cellRect","extraLeft","extraRight","attrs$1","forEachCell","anchorTop","headTop","anchorBot","headBot","anchorRect","headRect","anchorLeft","headLeft","anchorRight","headRight","anchorCell","headCell","CellBookmark","drawCellSelection","fitSlice","r$1","r$2","ensureRectangular","newWidth","newHeight","newRows","newRows$1","row$1","cells$1","isolateHorizontal","cellTop","cellLeft","isolateVertical","updatePos","tableStart","recomp","emptyHead","start$1","emptyRow","growTable","handleKeyDown","ArrowLeft","arrow","ArrowRight","ArrowUp","ArrowDown","Shift-ArrowLeft","shiftArrow","Shift-ArrowRight","Shift-ArrowUp","Shift-ArrowDown","deleteCellSelection","maybeSetSelection","atEndOfCell","$cell","baseContent","handleMouseDown","startEvent","startDOMCell","domInCell","setCellSelection","cellUnderMouse","starting","cellPos","dirStr","mousePos","tablePos","mustAdd","prob","cell$2","tableNodeType","fixTable","changedDescendants","curSize","refColumn","mapStart","rowPos","refRow","nextRow","newPos","isEmpty","indexTop","indexLeft","indexBottom","indexRight","cellsOverlapRectangle","mergedPos","mergedCell","getCellType","cellWrapping","baseAttrs","lastCell","isHeaderEnabledByType","cellPositions","useDeprecatedLogic","deprecated_toggleHeader","isHeaderRowEnabled","isHeaderColumnEnabled","selectionStartsAt","cellsRect","newType","relativeCellPos","direction","rowNode$1","findNextCell","cellMinWidth","overrideCol","overrideValue","totalWidth","fixedWidth","hasWidth","cssWidth","minWidth","record","handleWidth","View","lastColumnResizable","ResizeState","activeHandle","mousemove","pluginState","domCellAround","edgeCell","updateHandle","handleMouseMove","mouseleave","handleMouseLeave","domWidth","offsetWidth","currentColWidth","mapIndex","zeroes","updateColumnWidth","draggedWidth","setDragging","which","dragged","displayColumnWidth","startWidth","handleMouseDown$1","handleDecorations","setHandle","allowTableNodeSelection","createSelectionBetween","normalize","afterFrom","beforeTo","isCellBoundarySelection","fromCellBoundaryNode","toCellBoundaryNode","node$1","isTextSelectionAcrossCells","normalizeSelection","action","handle","fmt","arg","precision","argIndex","leadingZero","nextArg","slurpNumber","digits","parseInt","parseFloat","toFixed","toUpperCase","vsprintf","replacements","printf","noopTest","edit","_paragraph","_label","_title","getRegex","_tag","_comment","autolink","reflink","nolink","strong","em","br","_punctuation","_escapes","_scheme","_email","_attribute","_href","_extended_email","_backpedal","breaks","8","9","10","12","13","16","17","18","20","27","32","33","34","35","36","37","38","39","40","44","45","46","59","61","91","92","106","107","108","109","110","111","144","145","160","161","162","163","164","165","173","186","187","188","189","190","191","192","219","220","221","222","229","48","49","50","51","52","53","54","55","56","57","brokenModifierNames","index_es_mac","normalizeKeyName","alt","ctrl","mod","modifiers","keymap","bindings","keydownHandler","baseName","keyName","isChar","direct","fromCode","withShift","findClosingBracket","prevCapZero","inLink","inRawBlock","lastParenIndex","linkLen","outputLink","escapes","codespan","mangle","smartypants","image","ch","random","defineProperty","prosemirrorState","prosemirrorModel","prosemirrorTables","replaceParentNodeOfType","findParentNodeOfType","newTr","replaceNodeAtPos","replaceSelectedNode","isNodeSelection","_tr$selection","cloneTr","setTextSelection","nextSelection","isSelectableNode","shouldSelectNode","safeInsert","tryToReplace","hasPosition","$insertPos","isEmptyParagraph","canInsert","_pos","_pos2","equalNodeType","removeNodeAtPos","roles","createCell","cellType","isRectSelected","selectedCells","transpose","column","convertTableNodeToArrayOfRows","tableNode","rowIndex","rowCells","colIndex","convertArrayOfRowsToTableNode","arrayOfNodes","rowsPM","newCell","moveRowInArrayOfRows","indexesOrigin","indexesTarget","directionOverride","rowsExtracted","positionOffset","checkInvalidMovements","originIndex","targetIndex","targets","errorMessage","findParentNode","_ref","findParentNodeClosestToPos","findParentDomRef","findDomRefAtPos","hasParentNode","findPositionOfNodeBefore","maybeSelection","TEXT_NODE","descend","findChildren","findChildrenByType","findTable","isCellSelection","isTableSelected","getCellsInColumn","columnIndex","acc","getCellsInRow","select","findCellClosestToPos","selRect","cellsInFirstRow","cellsInLastRow","selectColumn","selectRow","cloneRowAt","cloneRow","rowSpanCells","_loop","_i","foundCells","filterCellsInRow","arr","arr2","_toConsumableArray","removeColumnAt","removeTable","removeRowAt","findCellRectClosestToPos","findTableClosestToPos","getSelectionRangeInColumn","_loop2","maybeEndIndex","_loop3","indexes","maybeCells","firstSelectedColumnCells","firstRowCells","_i3","columnCells","getSelectionRangeInRow","_loop4","_loop5","firstSelectedRowCells","firstColumnCells","_i4","findParentNodeOfTypeClosestToPos","hasParentNodeOfType","findParentDomRefOfType","findSelectedNodeOfType","findTextNodes","findInlineNodes","findBlockNodes","findChildrenByAttr","findChildrenByMark","getSelectionRect","isColumnSelected","isRowSelected","getCellsInTable","selectTable","emptyCell","addColumnAt","moveRow","originRowIndex","targetRowIndex","tryToFit","indexesOriginRow","indexesTargetRow","newTable","moveTableRow","moveColumn","originColumnIndex","targetColumnIndex","indexesOriginColumn","indexesTargetColumn","moveTableColumn","addRowAt","clonePreviousRow","cloneRowIndex","removeSelectedColumns","pmTableRect","removeSelectedRows","removeColumnClosestToPos","removeRowClosestToPos","forEachCellInColumn","cellTransform","setCursorToLastCell","forEachCellInRow","createTable","rowsCount","colsCount","withHeaderRow","_tableNodeTypes","tableCell","tableHeader","tableRow","headerCells","_i2","removeParentNodeOfType","removeSelectedNode","setParentNodeMarkup","selectParentNodeOfType","removeNodeBefore","_defineProperty","enumerable","writable","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","_objectSpread2","getOwnPropertyDescriptors","_arrayLikeToArray","_arrayWithoutHoles","iter","iterator","_iterableToArray","o","minLen","_unsupportedIterableToArray","_nonIterableSpread","getMarkAttrs","_state$selection","markItem","getNodeAttrs","nodeItem","getMarkRange","endPos","markIsActive","nodeEqualsType","nodeIsActive","prosemirror_utils__WEBPACK_IMPORTED_MODULE_0__","wrapInList","listType","doJoin","outerRange","$insert","prosemirror_model_dist_index_es","joinBefore","splitDepth","splitPos","doWrapInList","splitListItem","itemType","grandParent","keepItem","liftListItem","endOfList","liftToOuterList","indexBefore","liftOutOfList","sinkListItem","nestedBefore","markInputRule","prosemirror_inputrules_dist_index_es","markEnd","markStart","matchStart","matchEnd","textStart","textEnd","getMarksBetween","nodeInputRule","pasteRule","prosemirror_state_dist_index_es","transformPasted","markPasteRule","isLink","replaceText","splitToDefaultListItem","toggleBlockType","toggletype","isList","bullet_list","ordered_list","todo_list","toggleList","parentList","toggleWrap","updateMark","escapeTest","escapeReplace","escapeTestNoEncode","escapeReplaceNoEncode","escapeReplacements","&","<",">","\"","'","getEscapeReplacement","unescapeTest","caret","nonWordAndColonTest","originIndependentUrl","baseUrls","justDomain","protocol","domain","resolveUrl","relativeBase","suffLen","currChar","encode","regex","prot","decodeURIComponent","encodeURI","curr","newDefaults","index_es_result","index_es_ViewDesc","geckoKludge","index_es_MarkViewDesc","index_es_NodeViewDesc","chromeDownArrowBug","index_es_MouseDown","index_es_empty","DropCursorView","editorView","color","cursorPos","timeout","updateOverlay","setCursor","nodeRect","offsetParent","parentRect","pageXOffset","pageYOffset","scheduleRemoval","dragleave","relatedTarget","index_es_GapCursor","GapCursor","GapBookmark","closedBefore","closedAfter","override","allowGapCursor","mustMove","$cur","$cur$1","gapCursor","drawGapCursor","_view","prosemirror_keymap_dist_index_es","$found","prosemirror_view_dist_index_es","tiptap_esm_ComponentView","component","editor","extension","getPos","isMark","getMarkPos","captureEvents","createDOM","vm","$refs","Component","vue_runtime_esm","selected","updateAttrs","propsData","$mount","$el","updateComponentProps","originalSilent","entries","newAttrs","transaction","dragHandle","once","isCopy","isPaste","isCut","isDrag","resolvedPos","$destroy","fn","_callbacks","callbacks","Extension","tiptap_esm_ExtensionManager","extensions","bindEditor","Proxy","allPlugins","extensionKeymaps","nodeMarkKeymaps","excludedExtensions","allowedExtensions","extensionInputRules","nodeMarkInputRules","allInputRules","extensionPasteRules","pasteRules","nodeMarkPasteRules","allPasteRules","allCommands","_name","_value","commandName","commandValue","minMax","Doc","tiptap_esm_Paragraph","Text","css","tiptap_esm_Editor","editorProps","autoFocus","emptyDocument","useBuiltInExtensions","disableInputRules","disablePasteRules","dropCursor","enableDropCursor","enableGapCursor","parseOptions","injectCSS","onInit","onTransaction","onUpdate","onFocus","onBlur","onPaste","onDrop","createExtensions","createNodes","createMarks","createSchema","createPlugins","keymaps","createKeymaps","createInputRules","createPasteRules","createView","createCommands","setActiveNodesAndMarks","on","word","camelCase","emit","builtInExtensions","createDocument","prosemirror_commands_dist_index_es","tabindex","htmlString","parseFromString","firstElementChild","createState","handleDrop","initNodeViews","getHTML","getJSON","emitUpdate","resolvedFrom","resolvedEnd","setContent","activeMarkAttrs","activeNodes","isActive","handlePlugins","EditorContent","watch","immediate","$nextTick","setParentComponent","Menu","preventHide","mousedownHandler","capture","blurHandler","EditorMenuBar","registerPlugin","MenuBar","$scopedSlots","Boolean"],"mappings":"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","file":"static/js/chunk-68ea.6d56674a.js","sourcesContent":["/**\n * TextRenderer\n * returns only the textual part of the token\n */\nmodule.exports = class TextRenderer {\n // no need for block level renderers\n strong(text) {\n return text;\n }\n\n em(text) {\n return text;\n }\n\n codespan(text) {\n return text;\n }\n\n del(text) {\n return text;\n }\n\n html(text) {\n return text;\n }\n\n text(text) {\n return text;\n }\n\n link(href, title, text) {\n return '' + text;\n }\n\n image(href, title, text) {\n return '' + text;\n }\n\n br() {\n return '';\n }\n};\n","import { Plugin } from 'prosemirror-state';\nimport { findWrapping, canJoin } from 'prosemirror-transform';\n\n// ::- Input rules are regular expressions describing a piece of text\n// that, when typed, causes something to happen. This might be\n// changing two dashes into an emdash, wrapping a paragraph starting\n// with `\"> \"` into a blockquote, or something entirely different.\nvar InputRule = function InputRule(match, handler) {\n this.match = match;\n this.handler = typeof handler == \"string\" ? stringHandler(handler) : handler;\n};\n\nfunction stringHandler(string) {\n return function(state, match, start, end) {\n var insert = string;\n if (match[1]) {\n var offset = match[0].lastIndexOf(match[1]);\n insert += match[0].slice(offset + match[1].length);\n start += offset;\n var cutOff = start - end;\n if (cutOff > 0) {\n insert = match[0].slice(offset - cutOff, offset) + insert;\n start = end;\n }\n }\n return state.tr.insertText(insert, start, end)\n }\n}\n\nvar MAX_MATCH = 500;\n\n// :: (config: {rules: [InputRule]}) → Plugin\n// Create an input rules plugin. When enabled, it will cause text\n// input that matches any of the given rules to trigger the rule's\n// action.\nfunction inputRules(ref) {\n var rules = ref.rules;\n\n var plugin = new Plugin({\n state: {\n init: function init() { return null },\n apply: function apply(tr, prev) {\n var stored = tr.getMeta(this);\n if (stored) { return stored }\n return tr.selectionSet || tr.docChanged ? null : prev\n }\n },\n\n props: {\n handleTextInput: function handleTextInput(view, from, to, text) {\n return run(view, from, to, text, rules, plugin)\n },\n handleDOMEvents: {\n compositionend: function (view) {\n setTimeout(function () {\n var ref = view.state.selection;\n var $cursor = ref.$cursor;\n if ($cursor) { run(view, $cursor.pos, $cursor.pos, \"\", rules, plugin); }\n });\n }\n }\n },\n\n isInputRules: true\n });\n return plugin\n}\n\nfunction run(view, from, to, text, rules, plugin) {\n if (view.composing) { return false }\n var state = view.state, $from = state.doc.resolve(from);\n if ($from.parent.type.spec.code) { return false }\n var textBefore = $from.parent.textBetween(Math.max(0, $from.parentOffset - MAX_MATCH), $from.parentOffset,\n null, \"\\ufffc\") + text;\n for (var i = 0; i < rules.length; i++) {\n var match = rules[i].match.exec(textBefore);\n var tr = match && rules[i].handler(state, match, from - (match[0].length - text.length), to);\n if (!tr) { continue }\n view.dispatch(tr.setMeta(plugin, {transform: tr, from: from, to: to, text: text}));\n return true\n }\n return false\n}\n\n// :: (EditorState, ?(Transaction)) → bool\n// This is a command that will undo an input rule, if applying such a\n// rule was the last thing that the user did.\nfunction undoInputRule(state, dispatch) {\n var plugins = state.plugins;\n for (var i = 0; i < plugins.length; i++) {\n var plugin = plugins[i], undoable = (void 0);\n if (plugin.spec.isInputRules && (undoable = plugin.getState(state))) {\n if (dispatch) {\n var tr = state.tr, toUndo = undoable.transform;\n for (var j = toUndo.steps.length - 1; j >= 0; j--)\n { tr.step(toUndo.steps[j].invert(toUndo.docs[j])); }\n var marks = tr.doc.resolve(undoable.from).marks();\n dispatch(tr.replaceWith(undoable.from, undoable.to, state.schema.text(undoable.text, marks)));\n }\n return true\n }\n }\n return false\n}\n\n// :: InputRule Converts double dashes to an emdash.\nvar emDash = new InputRule(/--$/, \"—\");\n// :: InputRule Converts three dots to an ellipsis character.\nvar ellipsis = new InputRule(/\\.\\.\\.$/, \"…\");\n// :: InputRule “Smart” opening double quotes.\nvar openDoubleQuote = new InputRule(/(?:^|[\\s\\{\\[\\(\\<'\"\\u2018\\u201C])(\")$/, \"“\");\n// :: InputRule “Smart” closing double quotes.\nvar closeDoubleQuote = new InputRule(/\"$/, \"”\");\n// :: InputRule “Smart” opening single quotes.\nvar openSingleQuote = new InputRule(/(?:^|[\\s\\{\\[\\(\\<'\"\\u2018\\u201C])(')$/, \"‘\");\n// :: InputRule “Smart” closing single quotes.\nvar closeSingleQuote = new InputRule(/'$/, \"’\");\n\n// :: [InputRule] Smart-quote related input rules.\nvar smartQuotes = [openDoubleQuote, closeDoubleQuote, openSingleQuote, closeSingleQuote];\n\n// :: (RegExp, NodeType, ?union<Object, ([string]) → ?Object>, ?([string], Node) → bool) → InputRule\n// Build an input rule for automatically wrapping a textblock when a\n// given string is typed. The `regexp` argument is\n// directly passed through to the `InputRule` constructor. You'll\n// probably want the regexp to start with `^`, so that the pattern can\n// only occur at the start of a textblock.\n//\n// `nodeType` is the type of node to wrap in. If it needs attributes,\n// you can either pass them directly, or pass a function that will\n// compute them from the regular expression match.\n//\n// By default, if there's a node with the same type above the newly\n// wrapped node, the rule will try to [join](#transform.Transform.join) those\n// two nodes. You can pass a join predicate, which takes a regular\n// expression match and the node before the wrapped node, and can\n// return a boolean to indicate whether a join should happen.\nfunction wrappingInputRule(regexp, nodeType, getAttrs, joinPredicate) {\n return new InputRule(regexp, function (state, match, start, end) {\n var attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n var tr = state.tr.delete(start, end);\n var $start = tr.doc.resolve(start), range = $start.blockRange(), wrapping = range && findWrapping(range, nodeType, attrs);\n if (!wrapping) { return null }\n tr.wrap(range, wrapping);\n var before = tr.doc.resolve(start - 1).nodeBefore;\n if (before && before.type == nodeType && canJoin(tr.doc, start - 1) &&\n (!joinPredicate || joinPredicate(match, before)))\n { tr.join(start - 1); }\n return tr\n })\n}\n\n// :: (RegExp, NodeType, ?union<Object, ([string]) → ?Object>) → InputRule\n// Build an input rule that changes the type of a textblock when the\n// matched text is typed into it. You'll usually want to start your\n// regexp with `^` to that it is only matched at the start of a\n// textblock. The optional `getAttrs` parameter can be used to compute\n// the new node's attributes, and works the same as in the\n// `wrappingInputRule` function.\nfunction textblockTypeInputRule(regexp, nodeType, getAttrs) {\n return new InputRule(regexp, function (state, match, start, end) {\n var $start = state.doc.resolve(start);\n var attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n if (!$start.node(-1).canReplaceWith($start.index(-1), $start.indexAfter(-1), nodeType)) { return null }\n return state.tr\n .delete(start, end)\n .setBlockType(start, start, nodeType, attrs)\n })\n}\n\nexport { InputRule, closeDoubleQuote, closeSingleQuote, ellipsis, emDash, inputRules, openDoubleQuote, openSingleQuote, smartQuotes, textblockTypeInputRule, undoInputRule, wrappingInputRule };\n//# sourceMappingURL=index.es.js.map\n","const Lexer = require('./Lexer.js');\nconst Parser = require('./Parser.js');\nconst Renderer = require('./Renderer.js');\nconst TextRenderer = require('./TextRenderer.js');\nconst InlineLexer = require('./InlineLexer.js');\nconst Slugger = require('./Slugger.js');\nconst {\n merge,\n checkSanitizeDeprecation,\n escape\n} = require('./helpers.js');\nconst {\n getDefaults,\n changeDefaults,\n defaults\n} = require('./defaults.js');\n\n/**\n * Marked\n */\nfunction marked(src, opt, callback) {\n // throw error in case of non string input\n if (typeof src === 'undefined' || src === null) {\n throw new Error('marked(): input parameter is undefined or null');\n }\n if (typeof src !== 'string') {\n throw new Error('marked(): input parameter is of type '\n + Object.prototype.toString.call(src) + ', string expected');\n }\n\n if (callback || typeof opt === 'function') {\n if (!callback) {\n callback = opt;\n opt = null;\n }\n\n opt = merge({}, marked.defaults, opt || {});\n checkSanitizeDeprecation(opt);\n const highlight = opt.highlight;\n let tokens,\n pending,\n i = 0;\n\n try {\n tokens = Lexer.lex(src, opt);\n } catch (e) {\n return callback(e);\n }\n\n pending = tokens.length;\n\n const done = function(err) {\n if (err) {\n opt.highlight = highlight;\n return callback(err);\n }\n\n let out;\n\n try {\n out = Parser.parse(tokens, opt);\n } catch (e) {\n err = e;\n }\n\n opt.highlight = highlight;\n\n return err\n ? callback(err)\n : callback(null, out);\n };\n\n if (!highlight || highlight.length < 3) {\n return done();\n }\n\n delete opt.highlight;\n\n if (!pending) return done();\n\n for (; i < tokens.length; i++) {\n (function(token) {\n if (token.type !== 'code') {\n return --pending || done();\n }\n return highlight(token.text, token.lang, function(err, code) {\n if (err) return done(err);\n if (code == null || code === token.text) {\n return --pending || done();\n }\n token.text = code;\n token.escaped = true;\n --pending || done();\n });\n })(tokens[i]);\n }\n\n return;\n }\n try {\n opt = merge({}, marked.defaults, opt || {});\n checkSanitizeDeprecation(opt);\n return Parser.parse(Lexer.lex(src, opt), opt);\n } catch (e) {\n e.message += '\\nPlease report this to https://github.com/markedjs/marked.';\n if ((opt || marked.defaults).silent) {\n return '<p>An error occurred:</p><pre>'\n + escape(e.message + '', true)\n + '</pre>';\n }\n throw e;\n }\n}\n\n/**\n * Options\n */\n\nmarked.options =\nmarked.setOptions = function(opt) {\n merge(marked.defaults, opt);\n changeDefaults(marked.defaults);\n return marked;\n};\n\nmarked.getDefaults = getDefaults;\n\nmarked.defaults = defaults;\n\n/**\n * Expose\n */\n\nmarked.Parser = Parser;\nmarked.parser = Parser.parse;\n\nmarked.Renderer = Renderer;\nmarked.TextRenderer = TextRenderer;\n\nmarked.Lexer = Lexer;\nmarked.lexer = Lexer.lex;\n\nmarked.InlineLexer = InlineLexer;\nmarked.inlineLexer = InlineLexer.output;\n\nmarked.Slugger = Slugger;\n\nmarked.parse = marked;\n\nmodule.exports = marked;\n","// https://github.com/substack/deep-freeze/blob/master/index.js\n/** @param {any} obj */\nfunction deepFreeze(obj) {\n Object.freeze(obj);\n\n var objIsFunction = typeof obj === 'function';\n\n Object.getOwnPropertyNames(obj).forEach(function(prop) {\n if (Object.hasOwnProperty.call(obj, prop)\n && obj[prop] !== null\n && (typeof obj[prop] === \"object\" || typeof obj[prop] === \"function\")\n // IE11 fix: https://github.com/highlightjs/highlight.js/issues/2318\n // TODO: remove in the future\n && (objIsFunction ? prop !== 'caller' && prop !== 'callee' && prop !== 'arguments' : true)\n && !Object.isFrozen(obj[prop])) {\n deepFreeze(obj[prop]);\n }\n });\n\n return obj;\n}\n\nclass Response {\n /**\n * @param {CompiledMode} mode\n */\n constructor(mode) {\n // eslint-disable-next-line no-undefined\n if (mode.data === undefined) mode.data = {};\n\n this.data = mode.data;\n }\n\n ignoreMatch() {\n this.ignore = true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {string}\n */\nfunction escapeHTML(value) {\n return value\n .replace(/&/g, '&amp;')\n .replace(/</g, '&lt;')\n .replace(/>/g, '&gt;')\n .replace(/\"/g, '&quot;')\n .replace(/'/g, '&#x27;');\n}\n\n/**\n * performs a shallow merge of multiple objects into one\n *\n * @template T\n * @param {T} original\n * @param {Record<string,any>[]} objects\n * @returns {T} a single new object\n */\nfunction inherit(original, ...objects) {\n /** @type Record<string,any> */\n var result = {};\n\n for (const key in original) {\n result[key] = original[key];\n }\n objects.forEach(function(obj) {\n for (const key in obj) {\n result[key] = obj[key];\n }\n });\n return /** @type {T} */ (result);\n}\n\n/* Stream merging */\n\n/**\n * @typedef Event\n * @property {'start'|'stop'} event\n * @property {number} offset\n * @property {Node} node\n */\n\n/**\n * @param {Node} node\n */\nfunction tag(node) {\n return node.nodeName.toLowerCase();\n}\n\n/**\n * @param {Node} node\n */\nfunction nodeStream(node) {\n /** @type Event[] */\n var result = [];\n (function _nodeStream(node, offset) {\n for (var child = node.firstChild; child; child = child.nextSibling) {\n if (child.nodeType === 3) {\n offset += child.nodeValue.length;\n } else if (child.nodeType === 1) {\n result.push({\n event: 'start',\n offset: offset,\n node: child\n });\n offset = _nodeStream(child, offset);\n // Prevent void elements from having an end tag that would actually\n // double them in the output. There are more void elements in HTML\n // but we list only those realistically expected in code display.\n if (!tag(child).match(/br|hr|img|input/)) {\n result.push({\n event: 'stop',\n offset: offset,\n node: child\n });\n }\n }\n }\n return offset;\n })(node, 0);\n return result;\n}\n\n/**\n * @param {any} original - the original stream\n * @param {any} highlighted - stream of the highlighted source\n * @param {string} value - the original source itself\n */\nfunction mergeStreams(original, highlighted, value) {\n var processed = 0;\n var result = '';\n var nodeStack = [];\n\n function selectStream() {\n if (!original.length || !highlighted.length) {\n return original.length ? original : highlighted;\n }\n if (original[0].offset !== highlighted[0].offset) {\n return (original[0].offset < highlighted[0].offset) ? original : highlighted;\n }\n\n /*\n To avoid starting the stream just before it should stop the order is\n ensured that original always starts first and closes last:\n\n if (event1 == 'start' && event2 == 'start')\n return original;\n if (event1 == 'start' && event2 == 'stop')\n return highlighted;\n if (event1 == 'stop' && event2 == 'start')\n return original;\n if (event1 == 'stop' && event2 == 'stop')\n return highlighted;\n\n ... which is collapsed to:\n */\n return highlighted[0].event === 'start' ? original : highlighted;\n }\n\n /**\n * @param {Node} node\n */\n function open(node) {\n /** @param {Attr} attr */\n function attr_str(attr) {\n return ' ' + attr.nodeName + '=\"' + escapeHTML(attr.value) + '\"';\n }\n // @ts-ignore\n result += '<' + tag(node) + [].map.call(node.attributes, attr_str).join('') + '>';\n }\n\n /**\n * @param {Node} node\n */\n function close(node) {\n result += '</' + tag(node) + '>';\n }\n\n /**\n * @param {Event} event\n */\n function render(event) {\n (event.event === 'start' ? open : close)(event.node);\n }\n\n while (original.length || highlighted.length) {\n var stream = selectStream();\n result += escapeHTML(value.substring(processed, stream[0].offset));\n processed = stream[0].offset;\n if (stream === original) {\n /*\n On any opening or closing tag of the original markup we first close\n the entire highlighted node stack, then render the original tag along\n with all the following original tags at the same offset and then\n reopen all the tags on the highlighted stack.\n */\n nodeStack.reverse().forEach(close);\n do {\n render(stream.splice(0, 1)[0]);\n stream = selectStream();\n } while (stream === original && stream.length && stream[0].offset === processed);\n nodeStack.reverse().forEach(open);\n } else {\n if (stream[0].event === 'start') {\n nodeStack.push(stream[0].node);\n } else {\n nodeStack.pop();\n }\n render(stream.splice(0, 1)[0]);\n }\n }\n return result + escapeHTML(value.substr(processed));\n}\n\nvar utils = /*#__PURE__*/Object.freeze({\n __proto__: null,\n escapeHTML: escapeHTML,\n inherit: inherit,\n nodeStream: nodeStream,\n mergeStreams: mergeStreams\n});\n\n/**\n * @typedef {object} Renderer\n * @property {(text: string) => void} addText\n * @property {(node: Node) => void} openNode\n * @property {(node: Node) => void} closeNode\n * @property {() => string} value\n */\n\n/** @typedef {{kind?: string, sublanguage?: boolean}} Node */\n/** @typedef {{walk: (r: Renderer) => void}} Tree */\n/** */\n\nconst SPAN_CLOSE = '</span>';\n\n/**\n * Determines if a node needs to be wrapped in <span>\n *\n * @param {Node} node */\nconst emitsWrappingTags = (node) => {\n return !!node.kind;\n};\n\n/** @type {Renderer} */\nclass HTMLRenderer {\n /**\n * Creates a new HTMLRenderer\n *\n * @param {Tree} parseTree - the parse tree (must support `walk` API)\n * @param {{classPrefix: string}} options\n */\n constructor(parseTree, options) {\n this.buffer = \"\";\n this.classPrefix = options.classPrefix;\n parseTree.walk(this);\n }\n\n /**\n * Adds texts to the output stream\n *\n * @param {string} text */\n addText(text) {\n this.buffer += escapeHTML(text);\n }\n\n /**\n * Adds a node open to the output stream (if needed)\n *\n * @param {Node} node */\n openNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n let className = node.kind;\n if (!node.sublanguage) {\n className = `${this.classPrefix}${className}`;\n }\n this.span(className);\n }\n\n /**\n * Adds a node close to the output stream (if needed)\n *\n * @param {Node} node */\n closeNode(node) {\n if (!emitsWrappingTags(node)) return;\n\n this.buffer += SPAN_CLOSE;\n }\n\n /**\n * returns the accumulated buffer\n */\n value() {\n return this.buffer;\n }\n\n // helpers\n\n /**\n * Builds a span element\n *\n * @param {string} className */\n span(className) {\n this.buffer += `<span class=\"${className}\">`;\n }\n}\n\n/** @typedef {{kind?: string, sublanguage?: boolean, children: Node[]} | string} Node */\n/** @typedef {{kind?: string, sublanguage?: boolean, children: Node[]} } DataNode */\n/** */\n\nclass TokenTree {\n constructor() {\n /** @type DataNode */\n this.rootNode = { children: [] };\n this.stack = [this.rootNode];\n }\n\n get top() {\n return this.stack[this.stack.length - 1];\n }\n\n get root() { return this.rootNode; }\n\n /** @param {Node} node */\n add(node) {\n this.top.children.push(node);\n }\n\n /** @param {string} kind */\n openNode(kind) {\n /** @type Node */\n const node = { kind, children: [] };\n this.add(node);\n this.stack.push(node);\n }\n\n closeNode() {\n if (this.stack.length > 1) {\n return this.stack.pop();\n }\n // eslint-disable-next-line no-undefined\n return undefined;\n }\n\n closeAllNodes() {\n while (this.closeNode());\n }\n\n toJSON() {\n return JSON.stringify(this.rootNode, null, 4);\n }\n\n /**\n * @typedef { import(\"./html_renderer\").Renderer } Renderer\n * @param {Renderer} builder\n */\n walk(builder) {\n // this does not\n return this.constructor._walk(builder, this.rootNode);\n // this works\n // return TokenTree._walk(builder, this.rootNode);\n }\n\n /**\n * @param {Renderer} builder\n * @param {Node} node\n */\n static _walk(builder, node) {\n if (typeof node === \"string\") {\n builder.addText(node);\n } else if (node.children) {\n builder.openNode(node);\n node.children.forEach((child) => this._walk(builder, child));\n builder.closeNode(node);\n }\n return builder;\n }\n\n /**\n * @param {Node} node\n */\n static _collapse(node) {\n if (typeof node === \"string\") return;\n if (!node.children) return;\n\n if (node.children.every(el => typeof el === \"string\")) {\n // node.text = node.children.join(\"\");\n // delete node.children;\n node.children = [node.children.join(\"\")];\n } else {\n node.children.forEach((child) => {\n TokenTree._collapse(child);\n });\n }\n }\n}\n\n/**\n Currently this is all private API, but this is the minimal API necessary\n that an Emitter must implement to fully support the parser.\n\n Minimal interface:\n\n - addKeyword(text, kind)\n - addText(text)\n - addSublanguage(emitter, subLanguageName)\n - finalize()\n - openNode(kind)\n - closeNode()\n - closeAllNodes()\n - toHTML()\n\n*/\n\n/**\n * @implements {Emitter}\n */\nclass TokenTreeEmitter extends TokenTree {\n /**\n * @param {*} options\n */\n constructor(options) {\n super();\n this.options = options;\n }\n\n /**\n * @param {string} text\n * @param {string} kind\n */\n addKeyword(text, kind) {\n if (text === \"\") { return; }\n\n this.openNode(kind);\n this.addText(text);\n this.closeNode();\n }\n\n /**\n * @param {string} text\n */\n addText(text) {\n if (text === \"\") { return; }\n\n this.add(text);\n }\n\n /**\n * @param {Emitter & {root: DataNode}} emitter\n * @param {string} name\n */\n addSublanguage(emitter, name) {\n /** @type DataNode */\n const node = emitter.root;\n node.kind = name;\n node.sublanguage = true;\n this.add(node);\n }\n\n toHTML() {\n const renderer = new HTMLRenderer(this, this.options);\n return renderer.value();\n }\n\n finalize() {\n return true;\n }\n}\n\n/**\n * @param {string} value\n * @returns {RegExp}\n * */\nfunction escape(value) {\n return new RegExp(value.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'), 'm');\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param {RegExp} re\n * @returns {number}\n */\nfunction countMatchGroups(re) {\n return (new RegExp(re.toString() + '|')).exec('').length - 1;\n}\n\n/**\n * Does lexeme start with a regular expression match at the beginning\n * @param {RegExp} re\n * @param {string} lexeme\n */\nfunction startsWith(re, lexeme) {\n var match = re && re.exec(lexeme);\n return match && match.index === 0;\n}\n\n// join logically computes regexps.join(separator), but fixes the\n// backreferences so they continue to match.\n// it also places each individual regular expression into it's own\n// match group, keeping track of the sequencing of those match groups\n// is currently an exercise for the caller. :-)\n/**\n * @param {(string | RegExp)[]} regexps\n * @param {string} separator\n * @returns {string}\n */\nfunction join(regexps, separator = \"|\") {\n // backreferenceRe matches an open parenthesis or backreference. To avoid\n // an incorrect parse, it additionally matches the following:\n // - [...] elements, where the meaning of parentheses and escapes change\n // - other escape sequences, so we do not misparse escape sequences as\n // interesting elements\n // - non-matching or lookahead parentheses, which do not capture. These\n // follow the '(' with a '?'.\n var backreferenceRe = /\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;\n var numCaptures = 0;\n var ret = '';\n for (var i = 0; i < regexps.length; i++) {\n numCaptures += 1;\n var offset = numCaptures;\n var re = source(regexps[i]);\n if (i > 0) {\n ret += separator;\n }\n ret += \"(\";\n while (re.length > 0) {\n var match = backreferenceRe.exec(re);\n if (match == null) {\n ret += re;\n break;\n }\n ret += re.substring(0, match.index);\n re = re.substring(match.index + match[0].length);\n if (match[0][0] === '\\\\' && match[1]) {\n // Adjust the backreference.\n ret += '\\\\' + String(Number(match[1]) + offset);\n } else {\n ret += match[0];\n if (match[0] === '(') {\n numCaptures++;\n }\n }\n }\n ret += \")\";\n }\n return ret;\n}\n\n// Common regexps\nconst IDENT_RE = '[a-zA-Z]\\\\w*';\nconst UNDERSCORE_IDENT_RE = '[a-zA-Z_]\\\\w*';\nconst NUMBER_RE = '\\\\b\\\\d+(\\\\.\\\\d+)?';\nconst C_NUMBER_RE = '(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)'; // 0x..., 0..., decimal, float\nconst BINARY_NUMBER_RE = '\\\\b(0b[01]+)'; // 0b...\nconst RE_STARTERS_RE = '!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~';\n\n/**\n* @param { Partial<Mode> & {binary?: string | RegExp} } opts\n*/\nconst SHEBANG = (opts = {}) => {\n const beginShebang = /^#![ ]*\\//;\n if (opts.binary) {\n opts.begin = concat(\n beginShebang,\n /.*\\b/,\n opts.binary,\n /\\b.*/);\n }\n return inherit({\n className: 'meta',\n begin: beginShebang,\n end: /$/,\n relevance: 0,\n /** @type {ModeCallback} */\n \"on:begin\": (m, resp) => {\n if (m.index !== 0) resp.ignoreMatch();\n }\n }, opts);\n};\n\n// Common modes\nconst BACKSLASH_ESCAPE = {\n begin: '\\\\\\\\[\\\\s\\\\S]', relevance: 0\n};\nconst APOS_STRING_MODE = {\n className: 'string',\n begin: '\\'',\n end: '\\'',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst QUOTE_STRING_MODE = {\n className: 'string',\n begin: '\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [BACKSLASH_ESCAPE]\n};\nconst PHRASAL_WORDS_MODE = {\n begin: /\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b/\n};\n/**\n * Creates a comment mode\n *\n * @param {string | RegExp} begin\n * @param {string | RegExp} end\n * @param {Mode | {}} [modeOptions]\n * @returns {Partial<Mode>}\n */\nconst COMMENT = function(begin, end, modeOptions = {}) {\n var mode = inherit(\n {\n className: 'comment',\n begin,\n end,\n contains: []\n },\n modeOptions\n );\n mode.contains.push(PHRASAL_WORDS_MODE);\n mode.contains.push({\n className: 'doctag',\n begin: '(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):',\n relevance: 0\n });\n return mode;\n};\nconst C_LINE_COMMENT_MODE = COMMENT('//', '$');\nconst C_BLOCK_COMMENT_MODE = COMMENT('/\\\\*', '\\\\*/');\nconst HASH_COMMENT_MODE = COMMENT('#', '$');\nconst NUMBER_MODE = {\n className: 'number',\n begin: NUMBER_RE,\n relevance: 0\n};\nconst C_NUMBER_MODE = {\n className: 'number',\n begin: C_NUMBER_RE,\n relevance: 0\n};\nconst BINARY_NUMBER_MODE = {\n className: 'number',\n begin: BINARY_NUMBER_RE,\n relevance: 0\n};\nconst CSS_NUMBER_MODE = {\n className: 'number',\n begin: NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n};\nconst REGEXP_MODE = {\n // this outer rule makes sure we actually have a WHOLE regex and not simply\n // an expression such as:\n //\n // 3 / something\n //\n // (which will then blow up when regex's `illegal` sees the newline)\n begin: /(?=\\/[^/\\n]*\\/)/,\n contains: [{\n className: 'regexp',\n begin: /\\//,\n end: /\\/[gimuy]*/,\n illegal: /\\n/,\n contains: [\n BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [BACKSLASH_ESCAPE]\n }\n ]\n }]\n};\nconst TITLE_MODE = {\n className: 'title',\n begin: IDENT_RE,\n relevance: 0\n};\nconst UNDERSCORE_TITLE_MODE = {\n className: 'title',\n begin: UNDERSCORE_IDENT_RE,\n relevance: 0\n};\nconst METHOD_GUARD = {\n // excludes method names from keyword processing\n begin: '\\\\.\\\\s*' + UNDERSCORE_IDENT_RE,\n relevance: 0\n};\n\n/**\n * Adds end same as begin mechanics to a mode\n *\n * Your mode must include at least a single () match group as that first match\n * group is what is used for comparison\n * @param {Partial<Mode>} mode\n */\nconst END_SAME_AS_BEGIN = function(mode) {\n return Object.assign(mode,\n {\n /** @type {ModeCallback} */\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1]; },\n /** @type {ModeCallback} */\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); }\n });\n};\n\nvar MODES = /*#__PURE__*/Object.freeze({\n __proto__: null,\n IDENT_RE: IDENT_RE,\n UNDERSCORE_IDENT_RE: UNDERSCORE_IDENT_RE,\n NUMBER_RE: NUMBER_RE,\n C_NUMBER_RE: C_NUMBER_RE,\n BINARY_NUMBER_RE: BINARY_NUMBER_RE,\n RE_STARTERS_RE: RE_STARTERS_RE,\n SHEBANG: SHEBANG,\n BACKSLASH_ESCAPE: BACKSLASH_ESCAPE,\n APOS_STRING_MODE: APOS_STRING_MODE,\n QUOTE_STRING_MODE: QUOTE_STRING_MODE,\n PHRASAL_WORDS_MODE: PHRASAL_WORDS_MODE,\n COMMENT: COMMENT,\n C_LINE_COMMENT_MODE: C_LINE_COMMENT_MODE,\n C_BLOCK_COMMENT_MODE: C_BLOCK_COMMENT_MODE,\n HASH_COMMENT_MODE: HASH_COMMENT_MODE,\n NUMBER_MODE: NUMBER_MODE,\n C_NUMBER_MODE: C_NUMBER_MODE,\n BINARY_NUMBER_MODE: BINARY_NUMBER_MODE,\n CSS_NUMBER_MODE: CSS_NUMBER_MODE,\n REGEXP_MODE: REGEXP_MODE,\n TITLE_MODE: TITLE_MODE,\n UNDERSCORE_TITLE_MODE: UNDERSCORE_TITLE_MODE,\n METHOD_GUARD: METHOD_GUARD,\n END_SAME_AS_BEGIN: END_SAME_AS_BEGIN\n});\n\n// keywords that should have no default relevance value\nvar COMMON_KEYWORDS = 'of and for in not or if then'.split(' ');\n\n// compilation\n\n/**\n * Compiles a language definition result\n *\n * Given the raw result of a language definition (Language), compiles this so\n * that it is ready for highlighting code.\n * @param {Language} language\n * @returns {CompiledLanguage}\n */\nfunction compileLanguage(language) {\n /**\n * Builds a regex with the case sensativility of the current language\n *\n * @param {RegExp | string} value\n * @param {boolean} [global]\n */\n function langRe(value, global) {\n return new RegExp(\n source(value),\n 'm' + (language.case_insensitive ? 'i' : '') + (global ? 'g' : '')\n );\n }\n\n /**\n Stores multiple regular expressions and allows you to quickly search for\n them all in a string simultaneously - returning the first match. It does\n this by creating a huge (a|b|c) regex - each individual item wrapped with ()\n and joined by `|` - using match groups to track position. When a match is\n found checking which position in the array has content allows us to figure\n out which of the original regexes / match groups triggered the match.\n\n The match object itself (the result of `Regex.exec`) is returned but also\n enhanced by merging in any meta-data that was registered with the regex.\n This is how we keep track of which mode matched, and what type of rule\n (`illegal`, `begin`, end, etc).\n */\n class MultiRegex {\n constructor() {\n this.matchIndexes = {};\n // @ts-ignore\n this.regexes = [];\n this.matchAt = 1;\n this.position = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n opts.position = this.position++;\n // @ts-ignore\n this.matchIndexes[this.matchAt] = opts;\n this.regexes.push([opts, re]);\n this.matchAt += countMatchGroups(re) + 1;\n }\n\n compile() {\n if (this.regexes.length === 0) {\n // avoids the need to check length every time exec is called\n // @ts-ignore\n this.exec = () => null;\n }\n const terminators = this.regexes.map(el => el[1]);\n this.matcherRe = langRe(join(terminators), true);\n this.lastIndex = 0;\n }\n\n /** @param {string} s */\n exec(s) {\n this.matcherRe.lastIndex = this.lastIndex;\n const match = this.matcherRe.exec(s);\n if (!match) { return null; }\n\n // eslint-disable-next-line no-undefined\n const i = match.findIndex((el, i) => i > 0 && el !== undefined);\n // @ts-ignore\n const matchData = this.matchIndexes[i];\n // trim off any earlier non-relevant match groups (ie, the other regex\n // match groups that make up the multi-matcher)\n match.splice(0, i);\n\n return Object.assign(match, matchData);\n }\n }\n\n /*\n Created to solve the key deficiently with MultiRegex - there is no way to\n test for multiple matches at a single location. Why would we need to do\n that? In the future a more dynamic engine will allow certain matches to be\n ignored. An example: if we matched say the 3rd regex in a large group but\n decided to ignore it - we'd need to started testing again at the 4th\n regex... but MultiRegex itself gives us no real way to do that.\n\n So what this class creates MultiRegexs on the fly for whatever search\n position they are needed.\n\n NOTE: These additional MultiRegex objects are created dynamically. For most\n grammars most of the time we will never actually need anything more than the\n first MultiRegex - so this shouldn't have too much overhead.\n\n Say this is our search group, and we match regex3, but wish to ignore it.\n\n regex1 | regex2 | regex3 | regex4 | regex5 ' ie, startAt = 0\n\n What we need is a new MultiRegex that only includes the remaining\n possibilities:\n\n regex4 | regex5 ' ie, startAt = 3\n\n This class wraps all that complexity up in a simple API... `startAt` decides\n where in the array of expressions to start doing the matching. It\n auto-increments, so if a match is found at position 2, then startAt will be\n set to 3. If the end is reached startAt will return to 0.\n\n MOST of the time the parser will be setting startAt manually to 0.\n */\n class ResumableMultiRegex {\n constructor() {\n // @ts-ignore\n this.rules = [];\n // @ts-ignore\n this.multiRegexes = [];\n this.count = 0;\n\n this.lastIndex = 0;\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n getMatcher(index) {\n if (this.multiRegexes[index]) return this.multiRegexes[index];\n\n const matcher = new MultiRegex();\n this.rules.slice(index).forEach(([re, opts]) => matcher.addRule(re, opts));\n matcher.compile();\n this.multiRegexes[index] = matcher;\n return matcher;\n }\n\n considerAll() {\n this.regexIndex = 0;\n }\n\n // @ts-ignore\n addRule(re, opts) {\n this.rules.push([re, opts]);\n if (opts.type === \"begin\") this.count++;\n }\n\n /** @param {string} s */\n exec(s) {\n const m = this.getMatcher(this.regexIndex);\n m.lastIndex = this.lastIndex;\n const result = m.exec(s);\n if (result) {\n this.regexIndex += result.position + 1;\n if (this.regexIndex === this.count) { // wrap-around\n this.regexIndex = 0;\n }\n }\n\n // this.regexIndex = 0;\n return result;\n }\n }\n\n /**\n * Given a mode, builds a huge ResumableMultiRegex that can be used to walk\n * the content and find matches.\n *\n * @param {CompiledMode} mode\n * @returns {ResumableMultiRegex}\n */\n function buildModeRegex(mode) {\n const mm = new ResumableMultiRegex();\n\n mode.contains.forEach(term => mm.addRule(term.begin, { rule: term, type: \"begin\" }));\n\n if (mode.terminator_end) {\n mm.addRule(mode.terminator_end, { type: \"end\" });\n }\n if (mode.illegal) {\n mm.addRule(mode.illegal, { type: \"illegal\" });\n }\n\n return mm;\n }\n\n // TODO: We need negative look-behind support to do this properly\n /**\n * Skip a match if it has a preceding or trailing dot\n *\n * This is used for `beginKeywords` to prevent matching expressions such as\n * `bob.keyword.do()`. The mode compiler automatically wires this up as a\n * special _internal_ 'on:begin' callback for modes with `beginKeywords`\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\n function skipIfhasPrecedingOrTrailingDot(match, response) {\n const before = match.input[match.index - 1];\n const after = match.input[match.index + match[0].length];\n if (before === \".\" || after === \".\") {\n response.ignoreMatch();\n }\n }\n\n /** skip vs abort vs ignore\n *\n * @skip - The mode is still entered and exited normally (and contains rules apply),\n * but all content is held and added to the parent buffer rather than being\n * output when the mode ends. Mostly used with `sublanguage` to build up\n * a single large buffer than can be parsed by sublanguage.\n *\n * - The mode begin ands ends normally.\n * - Content matched is added to the parent mode buffer.\n * - The parser cursor is moved forward normally.\n *\n * @abort - A hack placeholder until we have ignore. Aborts the mode (as if it\n * never matched) but DOES NOT continue to match subsequent `contains`\n * modes. Abort is bad/suboptimal because it can result in modes\n * farther down not getting applied because an earlier rule eats the\n * content but then aborts.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is added to the mode buffer.\n * - The parser cursor is moved forward accordingly.\n *\n * @ignore - Ignores the mode (as if it never matched) and continues to match any\n * subsequent `contains` modes. Ignore isn't technically possible with\n * the current parser implementation.\n *\n * - The mode does not begin.\n * - Content matched by `begin` is ignored.\n * - The parser cursor is not moved forward.\n */\n\n /**\n * Compiles an individual mode\n *\n * This can raise an error if the mode contains certain detectable known logic\n * issues.\n * @param {Mode} mode\n * @param {CompiledMode | null} [parent]\n * @returns {CompiledMode | never}\n */\n function compileMode(mode, parent) {\n const cmode = /** @type CompiledMode */ (mode);\n if (mode.compiled) return cmode;\n mode.compiled = true;\n\n // __beforeBegin is considered private API, internal use only\n mode.__beforeBegin = null;\n\n mode.keywords = mode.keywords || mode.beginKeywords;\n\n let kw_pattern = null;\n if (typeof mode.keywords === \"object\") {\n kw_pattern = mode.keywords.$pattern;\n delete mode.keywords.$pattern;\n }\n\n if (mode.keywords) {\n mode.keywords = compileKeywords(mode.keywords, language.case_insensitive);\n }\n\n // both are not allowed\n if (mode.lexemes && kw_pattern) {\n throw new Error(\"ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) \");\n }\n\n // `mode.lexemes` was the old standard before we added and now recommend\n // using `keywords.$pattern` to pass the keyword pattern\n cmode.keywordPatternRe = langRe(mode.lexemes || kw_pattern || /\\w+/, true);\n\n if (parent) {\n if (mode.beginKeywords) {\n // for languages with keywords that include non-word characters checking for\n // a word boundary is not sufficient, so instead we check for a word boundary\n // or whitespace - this does no harm in any case since our keyword engine\n // doesn't allow spaces in keywords anyways and we still check for the boundary\n // first\n mode.begin = '\\\\b(' + mode.beginKeywords.split(' ').join('|') + ')(?=\\\\b|\\\\s)';\n mode.__beforeBegin = skipIfhasPrecedingOrTrailingDot;\n }\n if (!mode.begin) mode.begin = /\\B|\\b/;\n cmode.beginRe = langRe(mode.begin);\n if (mode.endSameAsBegin) mode.end = mode.begin;\n if (!mode.end && !mode.endsWithParent) mode.end = /\\B|\\b/;\n if (mode.end) cmode.endRe = langRe(mode.end);\n cmode.terminator_end = source(mode.end) || '';\n if (mode.endsWithParent && parent.terminator_end) {\n cmode.terminator_end += (mode.end ? '|' : '') + parent.terminator_end;\n }\n }\n if (mode.illegal) cmode.illegalRe = langRe(mode.illegal);\n // eslint-disable-next-line no-undefined\n if (mode.relevance === undefined) mode.relevance = 1;\n if (!mode.contains) mode.contains = [];\n\n mode.contains = [].concat(...mode.contains.map(function(c) {\n return expand_or_clone_mode(c === 'self' ? mode : c);\n }));\n mode.contains.forEach(function(c) { compileMode(/** @type Mode */ (c), cmode); });\n\n if (mode.starts) {\n compileMode(mode.starts, parent);\n }\n\n cmode.matcher = buildModeRegex(cmode);\n return cmode;\n }\n\n // self is not valid at the top-level\n if (language.contains && language.contains.includes('self')) {\n throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");\n }\n return compileMode(/** @type Mode */ (language));\n}\n\n/**\n * Determines if a mode has a dependency on it's parent or not\n *\n * If a mode does have a parent dependency then often we need to clone it if\n * it's used in multiple places so that each copy points to the correct parent,\n * where-as modes without a parent can often safely be re-used at the bottom of\n * a mode chain.\n *\n * @param {Mode | null} mode\n * @returns {boolean} - is there a dependency on the parent?\n * */\nfunction dependencyOnParent(mode) {\n if (!mode) return false;\n\n return mode.endsWithParent || dependencyOnParent(mode.starts);\n}\n\n/**\n * Expands a mode or clones it if necessary\n *\n * This is necessary for modes with parental dependenceis (see notes on\n * `dependencyOnParent`) and for nodes that have `variants` - which must then be\n * exploded into their own individual modes at compile time.\n *\n * @param {Mode} mode\n * @returns {Mode | Mode[]}\n * */\nfunction expand_or_clone_mode(mode) {\n if (mode.variants && !mode.cached_variants) {\n mode.cached_variants = mode.variants.map(function(variant) {\n return inherit(mode, { variants: null }, variant);\n });\n }\n\n // EXPAND\n // if we have variants then essentially \"replace\" the mode with the variants\n // this happens in compileMode, where this function is called from\n if (mode.cached_variants) {\n return mode.cached_variants;\n }\n\n // CLONE\n // if we have dependencies on parents then we need a unique\n // instance of ourselves, so we can be reused with many\n // different parents without issue\n if (dependencyOnParent(mode)) {\n return inherit(mode, { starts: mode.starts ? inherit(mode.starts) : null });\n }\n\n if (Object.isFrozen(mode)) {\n return inherit(mode);\n }\n\n // no special dependency issues, just return ourselves\n return mode;\n}\n\n/***********************************************\n Keywords\n***********************************************/\n\n/**\n * Given raw keywords from a language definition, compile them.\n *\n * @param {string | Record<string,string>} rawKeywords\n * @param {boolean} case_insensitive\n */\nfunction compileKeywords(rawKeywords, case_insensitive) {\n /** @type KeywordDict */\n var compiled_keywords = {};\n\n if (typeof rawKeywords === 'string') { // string\n splitAndCompile('keyword', rawKeywords);\n } else {\n Object.keys(rawKeywords).forEach(function(className) {\n splitAndCompile(className, rawKeywords[className]);\n });\n }\n return compiled_keywords;\n\n // ---\n\n /**\n * Compiles an individual list of keywords\n *\n * Ex: \"for if when while|5\"\n *\n * @param {string} className\n * @param {string} keywordList\n */\n function splitAndCompile(className, keywordList) {\n if (case_insensitive) {\n keywordList = keywordList.toLowerCase();\n }\n keywordList.split(' ').forEach(function(keyword) {\n var pair = keyword.split('|');\n compiled_keywords[pair[0]] = [className, scoreForKeyword(pair[0], pair[1])];\n });\n }\n}\n\n/**\n * Returns the proper score for a given keyword\n *\n * Also takes into account comment keywords, which will be scored 0 UNLESS\n * another score has been manually assigned.\n * @param {string} keyword\n * @param {string} [providedScore]\n */\nfunction scoreForKeyword(keyword, providedScore) {\n // manual scores always win over common keywords\n // so you can force a score of 1 if you really insist\n if (providedScore) {\n return Number(providedScore);\n }\n\n return commonKeyword(keyword) ? 0 : 1;\n}\n\n/**\n * Determines if a given keyword is common or not\n *\n * @param {string} keyword */\nfunction commonKeyword(keyword) {\n return COMMON_KEYWORDS.includes(keyword.toLowerCase());\n}\n\nvar version = \"10.1.2\";\n\n/*\nSyntax highlighting with language autodetection.\nhttps://highlightjs.org/\n*/\n\nconst escape$1 = escapeHTML;\nconst inherit$1 = inherit;\n\nconst { nodeStream: nodeStream$1, mergeStreams: mergeStreams$1 } = utils;\nconst NO_MATCH = Symbol(\"nomatch\");\n\n/**\n * @param {any} hljs - object that is extended (legacy)\n * @returns {HLJSApi}\n */\nconst HLJS = function(hljs) {\n // Convenience variables for build-in objects\n /** @type {unknown[]} */\n var ArrayProto = [];\n\n // Global internal variables used within the highlight.js library.\n /** @type {Record<string, Language>} */\n var languages = Object.create(null);\n /** @type {Record<string, string>} */\n var aliases = Object.create(null);\n /** @type {HLJSPlugin[]} */\n var plugins = [];\n\n // safe/production mode - swallows more errors, tries to keep running\n // even if a single syntax or parse hits a fatal error\n var SAFE_MODE = true;\n var fixMarkupRe = /(^(<[^>]+>|\\t|)+|\\n)/gm;\n var LANGUAGE_NOT_FOUND = \"Could not find the language '{}', did you forget to load/include a language module?\";\n /** @type {Language} */\n const PLAINTEXT_LANGUAGE = { disableAutodetect: true, name: 'Plain text', contains: [] };\n\n // Global options used when within external APIs. This is modified when\n // calling the `hljs.configure` function.\n /** @type HLJSOptions */\n var options = {\n noHighlightRe: /^(no-?highlight)$/i,\n languageDetectRe: /\\blang(?:uage)?-([\\w-]+)\\b/i,\n classPrefix: 'hljs-',\n tabReplace: null,\n useBR: false,\n languages: null,\n // beta configuration options, subject to change, welcome to discuss\n // https://github.com/highlightjs/highlight.js/issues/1086\n __emitter: TokenTreeEmitter\n };\n\n /* Utility functions */\n\n /**\n * Tests a language name to see if highlighting should be skipped\n * @param {string} languageName\n */\n function shouldNotHighlight(languageName) {\n return options.noHighlightRe.test(languageName);\n }\n\n /**\n * @param {HighlightedHTMLElement} block - the HTML element to determine language for\n */\n function blockLanguage(block) {\n var classes = block.className + ' ';\n\n classes += block.parentNode ? block.parentNode.className : '';\n\n // language-* takes precedence over non-prefixed class names.\n const match = options.languageDetectRe.exec(classes);\n if (match) {\n var language = getLanguage(match[1]);\n if (!language) {\n console.warn(LANGUAGE_NOT_FOUND.replace(\"{}\", match[1]));\n console.warn(\"Falling back to no-highlight mode for this block.\", block);\n }\n return language ? match[1] : 'no-highlight';\n }\n\n return classes\n .split(/\\s+/)\n .find((_class) => shouldNotHighlight(_class) || getLanguage(_class));\n }\n\n /**\n * Core highlighting function.\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} code - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {Mode} [continuation] - current continuation mode, if any\n *\n * @returns {HighlightResult} Result - an object that represents the result\n * @property {string} language - the language name\n * @property {number} relevance - the relevance score\n * @property {string} value - the highlighted HTML code\n * @property {string} code - the original raw code\n * @property {Mode} top - top of the current mode stack\n * @property {boolean} illegal - indicates whether any illegal matches were found\n */\n function highlight(languageName, code, ignoreIllegals, continuation) {\n /** @type {{ code: string, language: string, result?: any }} */\n var context = {\n code,\n language: languageName\n };\n // the plugin can change the desired language or the code to be highlighted\n // just be changing the object it was passed\n fire(\"before:highlight\", context);\n\n // a before plugin can usurp the result completely by providing it's own\n // in which case we don't even need to call highlight\n var result = context.result ?\n context.result :\n _highlight(context.language, context.code, ignoreIllegals, continuation);\n\n result.code = context.code;\n // the plugin can change anything in result to suite it\n fire(\"after:highlight\", result);\n\n return result;\n }\n\n /**\n * private highlight that's used internally and does not fire callbacks\n *\n * @param {string} languageName - the language to use for highlighting\n * @param {string} code - the code to highlight\n * @param {boolean} [ignoreIllegals] - whether to ignore illegal matches, default is to bail\n * @param {Mode} [continuation] - current continuation mode, if any\n */\n function _highlight(languageName, code, ignoreIllegals, continuation) {\n var codeToHighlight = code;\n\n /**\n * Return keyword data if a match is a keyword\n * @param {CompiledMode} mode - current mode\n * @param {RegExpMatchArray} match - regexp match data\n * @returns {KeywordData | false}\n */\n function keywordData(mode, match) {\n var matchText = language.case_insensitive ? match[0].toLowerCase() : match[0];\n return Object.prototype.hasOwnProperty.call(mode.keywords, matchText) && mode.keywords[matchText];\n }\n\n function processKeywords() {\n if (!top.keywords) {\n emitter.addText(mode_buffer);\n return;\n }\n\n let last_index = 0;\n top.keywordPatternRe.lastIndex = 0;\n let match = top.keywordPatternRe.exec(mode_buffer);\n let buf = \"\";\n\n while (match) {\n buf += mode_buffer.substring(last_index, match.index);\n const data = keywordData(top, match);\n if (data) {\n const [kind, keywordRelevance] = data;\n emitter.addText(buf);\n buf = \"\";\n\n relevance += keywordRelevance;\n emitter.addKeyword(match[0], kind);\n } else {\n buf += match[0];\n }\n last_index = top.keywordPatternRe.lastIndex;\n match = top.keywordPatternRe.exec(mode_buffer);\n }\n buf += mode_buffer.substr(last_index);\n emitter.addText(buf);\n }\n\n function processSubLanguage() {\n if (mode_buffer === \"\") return;\n /** @type HighlightResult */\n var result = null;\n\n if (typeof top.subLanguage === 'string') {\n if (!languages[top.subLanguage]) {\n emitter.addText(mode_buffer);\n return;\n }\n result = _highlight(top.subLanguage, mode_buffer, true, continuations[top.subLanguage]);\n continuations[top.subLanguage] = result.top;\n } else {\n result = highlightAuto(mode_buffer, top.subLanguage.length ? top.subLanguage : null);\n }\n\n // Counting embedded language score towards the host language may be disabled\n // with zeroing the containing mode relevance. Use case in point is Markdown that\n // allows XML everywhere and makes every XML snippet to have a much larger Markdown\n // score.\n if (top.relevance > 0) {\n relevance += result.relevance;\n }\n emitter.addSublanguage(result.emitter, result.language);\n }\n\n function processBuffer() {\n if (top.subLanguage != null) {\n processSubLanguage();\n } else {\n processKeywords();\n }\n mode_buffer = '';\n }\n\n /**\n * @param {Mode} mode - new mode to start\n */\n function startNewMode(mode) {\n if (mode.className) {\n emitter.openNode(mode.className);\n }\n top = Object.create(mode, { parent: { value: top } });\n return top;\n }\n\n /**\n * @param {CompiledMode } mode - the mode to potentially end\n * @param {RegExpMatchArray} match - the latest match\n * @param {string} matchPlusRemainder - match plus remainder of content\n * @returns {CompiledMode | void} - the next mode, or if void continue on in current mode\n */\n function endOfMode(mode, match, matchPlusRemainder) {\n let matched = startsWith(mode.endRe, matchPlusRemainder);\n\n if (matched) {\n if (mode[\"on:end\"]) {\n const resp = new Response(mode);\n mode[\"on:end\"](match, resp);\n if (resp.ignore) matched = false;\n }\n\n if (matched) {\n while (mode.endsParent && mode.parent) {\n mode = mode.parent;\n }\n return mode;\n }\n }\n // even if on:end fires an `ignore` it's still possible\n // that we might trigger the end node because of a parent mode\n if (mode.endsWithParent) {\n return endOfMode(mode.parent, match, matchPlusRemainder);\n }\n }\n\n /**\n * Handle matching but then ignoring a sequence of text\n *\n * @param {string} lexeme - string containing full match text\n */\n function doIgnore(lexeme) {\n if (top.matcher.regexIndex === 0) {\n // no more regexs to potentially match here, so we move the cursor forward one\n // space\n mode_buffer += lexeme[0];\n return 1;\n } else {\n // no need to move the cursor, we still have additional regexes to try and\n // match at this very spot\n continueScanAtSamePosition = true;\n return 0;\n }\n }\n\n /**\n * Handle the start of a new potential mode match\n *\n * @param {EnhancedMatch} match - the current match\n * @returns {number} how far to advance the parse cursor\n */\n function doBeginMatch(match) {\n var lexeme = match[0];\n var new_mode = match.rule;\n\n const resp = new Response(new_mode);\n // first internal before callbacks, then the public ones\n const beforeCallbacks = [new_mode.__beforeBegin, new_mode[\"on:begin\"]];\n for (const cb of beforeCallbacks) {\n if (!cb) continue;\n cb(match, resp);\n if (resp.ignore) return doIgnore(lexeme);\n }\n\n if (new_mode && new_mode.endSameAsBegin) {\n new_mode.endRe = escape(lexeme);\n }\n\n if (new_mode.skip) {\n mode_buffer += lexeme;\n } else {\n if (new_mode.excludeBegin) {\n mode_buffer += lexeme;\n }\n processBuffer();\n if (!new_mode.returnBegin && !new_mode.excludeBegin) {\n mode_buffer = lexeme;\n }\n }\n startNewMode(new_mode);\n // if (mode[\"after:begin\"]) {\n // let resp = new Response(mode);\n // mode[\"after:begin\"](match, resp);\n // }\n return new_mode.returnBegin ? 0 : lexeme.length;\n }\n\n /**\n * Handle the potential end of mode\n *\n * @param {RegExpMatchArray} match - the current match\n */\n function doEndMatch(match) {\n var lexeme = match[0];\n var matchPlusRemainder = codeToHighlight.substr(match.index);\n\n var end_mode = endOfMode(top, match, matchPlusRemainder);\n if (!end_mode) { return NO_MATCH; }\n\n var origin = top;\n if (origin.skip) {\n mode_buffer += lexeme;\n } else {\n if (!(origin.returnEnd || origin.excludeEnd)) {\n mode_buffer += lexeme;\n }\n processBuffer();\n if (origin.excludeEnd) {\n mode_buffer = lexeme;\n }\n }\n do {\n if (top.className) {\n emitter.closeNode();\n }\n if (!top.skip && !top.subLanguage) {\n relevance += top.relevance;\n }\n top = top.parent;\n } while (top !== end_mode.parent);\n if (end_mode.starts) {\n if (end_mode.endSameAsBegin) {\n end_mode.starts.endRe = end_mode.endRe;\n }\n startNewMode(end_mode.starts);\n }\n return origin.returnEnd ? 0 : lexeme.length;\n }\n\n function processContinuations() {\n var list = [];\n for (var current = top; current !== language; current = current.parent) {\n if (current.className) {\n list.unshift(current.className);\n }\n }\n list.forEach(item => emitter.openNode(item));\n }\n\n /** @type {{type?: MatchType, index?: number, rule?: Mode}}} */\n var lastMatch = {};\n\n /**\n * Process an individual match\n *\n * @param {string} textBeforeMatch - text preceeding the match (since the last match)\n * @param {EnhancedMatch} [match] - the match itself\n */\n function processLexeme(textBeforeMatch, match) {\n var lexeme = match && match[0];\n\n // add non-matched text to the current mode buffer\n mode_buffer += textBeforeMatch;\n\n if (lexeme == null) {\n processBuffer();\n return 0;\n }\n\n // we've found a 0 width match and we're stuck, so we need to advance\n // this happens when we have badly behaved rules that have optional matchers to the degree that\n // sometimes they can end up matching nothing at all\n // Ref: https://github.com/highlightjs/highlight.js/issues/2140\n if (lastMatch.type === \"begin\" && match.type === \"end\" && lastMatch.index === match.index && lexeme === \"\") {\n // spit the \"skipped\" character that our regex choked on back into the output sequence\n mode_buffer += codeToHighlight.slice(match.index, match.index + 1);\n if (!SAFE_MODE) {\n /** @type {AnnotatedError} */\n const err = new Error('0 width match regex');\n err.languageName = languageName;\n err.badRule = lastMatch.rule;\n throw err;\n }\n return 1;\n }\n lastMatch = match;\n\n if (match.type === \"begin\") {\n return doBeginMatch(match);\n } else if (match.type === \"illegal\" && !ignoreIllegals) {\n // illegal match, we do not continue processing\n /** @type {AnnotatedError} */\n const err = new Error('Illegal lexeme \"' + lexeme + '\" for mode \"' + (top.className || '<unnamed>') + '\"');\n err.mode = top;\n throw err;\n } else if (match.type === \"end\") {\n var processed = doEndMatch(match);\n if (processed !== NO_MATCH) {\n return processed;\n }\n }\n\n // edge case for when illegal matches $ (end of line) which is technically\n // a 0 width match but not a begin/end match so it's not caught by the\n // first handler (when ignoreIllegals is true)\n if (match.type === \"illegal\" && lexeme === \"\") {\n // advance so we aren't stuck in an infinite loop\n return 1;\n }\n\n // infinite loops are BAD, this is a last ditch catch all. if we have a\n // decent number of iterations yet our index (cursor position in our\n // parsing) still 3x behind our index then something is very wrong\n // so we bail\n if (iterations > 100000 && iterations > match.index * 3) {\n const err = new Error('potential infinite loop, way more iterations than matches');\n throw err;\n }\n\n /*\n Why might be find ourselves here? Only one occasion now. An end match that was\n triggered but could not be completed. When might this happen? When an `endSameasBegin`\n rule sets the end rule to a specific match. Since the overall mode termination rule that's\n being used to scan the text isn't recompiled that means that any match that LOOKS like\n the end (but is not, because it is not an exact match to the beginning) will\n end up here. A definite end match, but when `doEndMatch` tries to \"reapply\"\n the end rule and fails to match, we wind up here, and just silently ignore the end.\n\n This causes no real harm other than stopping a few times too many.\n */\n\n mode_buffer += lexeme;\n return lexeme.length;\n }\n\n var language = getLanguage(languageName);\n if (!language) {\n console.error(LANGUAGE_NOT_FOUND.replace(\"{}\", languageName));\n throw new Error('Unknown language: \"' + languageName + '\"');\n }\n\n var md = compileLanguage(language);\n var result = '';\n /** @type {CompiledMode} */\n var top = continuation || md;\n /** @type Record<string,Mode> */\n var continuations = {}; // keep continuations for sub-languages\n var emitter = new options.__emitter(options);\n processContinuations();\n var mode_buffer = '';\n var relevance = 0;\n var index = 0;\n var iterations = 0;\n var continueScanAtSamePosition = false;\n\n try {\n top.matcher.considerAll();\n\n for (;;) {\n iterations++;\n if (continueScanAtSamePosition) {\n // only regexes not matched previously will now be\n // considered for a potential match\n continueScanAtSamePosition = false;\n } else {\n top.matcher.lastIndex = index;\n top.matcher.considerAll();\n }\n const match = top.matcher.exec(codeToHighlight);\n // console.log(\"match\", match[0], match.rule && match.rule.begin)\n if (!match) break;\n\n const beforeMatch = codeToHighlight.substring(index, match.index);\n const processedCount = processLexeme(beforeMatch, match);\n index = match.index + processedCount;\n }\n processLexeme(codeToHighlight.substr(index));\n emitter.closeAllNodes();\n emitter.finalize();\n result = emitter.toHTML();\n\n return {\n relevance: relevance,\n value: result,\n language: languageName,\n illegal: false,\n emitter: emitter,\n top: top\n };\n } catch (err) {\n if (err.message && err.message.includes('Illegal')) {\n return {\n illegal: true,\n illegalBy: {\n msg: err.message,\n context: codeToHighlight.slice(index - 100, index + 100),\n mode: err.mode\n },\n sofar: result,\n relevance: 0,\n value: escape$1(codeToHighlight),\n emitter: emitter\n };\n } else if (SAFE_MODE) {\n return {\n illegal: false,\n relevance: 0,\n value: escape$1(codeToHighlight),\n emitter: emitter,\n language: languageName,\n top: top,\n errorRaised: err\n };\n } else {\n throw err;\n }\n }\n }\n\n /**\n * returns a valid highlight result, without actually doing any actual work,\n * auto highlight starts with this and it's possible for small snippets that\n * auto-detection may not find a better match\n * @param {string} code\n * @returns {HighlightResult}\n */\n function justTextHighlightResult(code) {\n const result = {\n relevance: 0,\n emitter: new options.__emitter(options),\n value: escape$1(code),\n illegal: false,\n top: PLAINTEXT_LANGUAGE\n };\n result.emitter.addText(code);\n return result;\n }\n\n /**\n Highlighting with language detection. Accepts a string with the code to\n highlight. Returns an object with the following properties:\n\n - language (detected language)\n - relevance (int)\n - value (an HTML string with highlighting markup)\n - second_best (object with the same structure for second-best heuristically\n detected language, may be absent)\n\n @param {string} code\n @param {Array<string>} [languageSubset]\n @returns {AutoHighlightResult}\n */\n function highlightAuto(code, languageSubset) {\n languageSubset = languageSubset || options.languages || Object.keys(languages);\n var result = justTextHighlightResult(code);\n var secondBest = result;\n languageSubset.filter(getLanguage).filter(autoDetection).forEach(function(name) {\n var current = _highlight(name, code, false);\n current.language = name;\n if (current.relevance > secondBest.relevance) {\n secondBest = current;\n }\n if (current.relevance > result.relevance) {\n secondBest = result;\n result = current;\n }\n });\n if (secondBest.language) {\n // second_best (with underscore) is the expected API\n result.second_best = secondBest;\n }\n return result;\n }\n\n /**\n Post-processing of the highlighted markup:\n\n - replace TABs with something more useful\n - replace real line-breaks with '<br>' for non-pre containers\n\n @param {string} html\n @returns {string}\n */\n function fixMarkup(html) {\n if (!(options.tabReplace || options.useBR)) {\n return html;\n }\n\n return html.replace(fixMarkupRe, match => {\n if (match === '\\n') {\n return options.useBR ? '<br>' : match;\n } else if (options.tabReplace) {\n return match.replace(/\\t/g, options.tabReplace);\n }\n return match;\n });\n }\n\n /**\n * Builds new class name for block given the language name\n *\n * @param {string} prevClassName\n * @param {string} [currentLang]\n * @param {string} [resultLang]\n */\n function buildClassName(prevClassName, currentLang, resultLang) {\n var language = currentLang ? aliases[currentLang] : resultLang;\n var result = [prevClassName.trim()];\n\n if (!prevClassName.match(/\\bhljs\\b/)) {\n result.push('hljs');\n }\n\n if (!prevClassName.includes(language)) {\n result.push(language);\n }\n\n return result.join(' ').trim();\n }\n\n /**\n * Applies highlighting to a DOM node containing code. Accepts a DOM node and\n * two optional parameters for fixMarkup.\n *\n * @param {HighlightedHTMLElement} element - the HTML element to highlight\n */\n function highlightBlock(element) {\n /** @type HTMLElement */\n let node = null;\n const language = blockLanguage(element);\n\n if (shouldNotHighlight(language)) return;\n\n fire(\"before:highlightBlock\",\n { block: element, language: language });\n\n if (options.useBR) {\n node = document.createElement('div');\n node.innerHTML = element.innerHTML.replace(/\\n/g, '').replace(/<br[ /]*>/g, '\\n');\n } else {\n node = element;\n }\n const text = node.textContent;\n const result = language ? highlight(language, text, true) : highlightAuto(text);\n\n const originalStream = nodeStream$1(node);\n if (originalStream.length) {\n const resultNode = document.createElement('div');\n resultNode.innerHTML = result.value;\n result.value = mergeStreams$1(originalStream, nodeStream$1(resultNode), text);\n }\n result.value = fixMarkup(result.value);\n\n fire(\"after:highlightBlock\", { block: element, result: result });\n\n element.innerHTML = result.value;\n element.className = buildClassName(element.className, language, result.language);\n element.result = {\n language: result.language,\n // TODO: remove with version 11.0\n re: result.relevance,\n relavance: result.relevance\n };\n if (result.second_best) {\n element.second_best = {\n language: result.second_best.language,\n // TODO: remove with version 11.0\n re: result.second_best.relevance,\n relavance: result.second_best.relevance\n };\n }\n }\n\n /**\n * Updates highlight.js global options with the passed options\n *\n * @param {{}} userOptions\n */\n function configure(userOptions) {\n options = inherit$1(options, userOptions);\n }\n\n /**\n * Highlights to all <pre><code> blocks on a page\n *\n * @type {Function & {called?: boolean}}\n */\n const initHighlighting = () => {\n if (initHighlighting.called) return;\n initHighlighting.called = true;\n\n var blocks = document.querySelectorAll('pre code');\n ArrayProto.forEach.call(blocks, highlightBlock);\n };\n\n // Higlights all when DOMContentLoaded fires\n function initHighlightingOnLoad() {\n // @ts-ignore\n window.addEventListener('DOMContentLoaded', initHighlighting, false);\n }\n\n /**\n * Register a language grammar module\n *\n * @param {string} languageName\n * @param {LanguageFn} languageDefinition\n */\n function registerLanguage(languageName, languageDefinition) {\n var lang = null;\n try {\n lang = languageDefinition(hljs);\n } catch (error) {\n console.error(\"Language definition for '{}' could not be registered.\".replace(\"{}\", languageName));\n // hard or soft error\n if (!SAFE_MODE) { throw error; } else { console.error(error); }\n // languages that have serious errors are replaced with essentially a\n // \"plaintext\" stand-in so that the code blocks will still get normal\n // css classes applied to them - and one bad language won't break the\n // entire highlighter\n lang = PLAINTEXT_LANGUAGE;\n }\n // give it a temporary name if it doesn't have one in the meta-data\n if (!lang.name) lang.name = languageName;\n languages[languageName] = lang;\n lang.rawDefinition = languageDefinition.bind(null, hljs);\n\n if (lang.aliases) {\n registerAliases(lang.aliases, { languageName });\n }\n }\n\n /**\n * @returns {string[]} List of language internal names\n */\n function listLanguages() {\n return Object.keys(languages);\n }\n\n /**\n intended usage: When one language truly requires another\n\n Unlike `getLanguage`, this will throw when the requested language\n is not available.\n\n @param {string} name - name of the language to fetch/require\n @returns {Language | never}\n */\n function requireLanguage(name) {\n var lang = getLanguage(name);\n if (lang) { return lang; }\n\n var err = new Error('The \\'{}\\' language is required, but not loaded.'.replace('{}', name));\n throw err;\n }\n\n /**\n * @param {string} name - name of the language to retrieve\n * @returns {Language | undefined}\n */\n function getLanguage(name) {\n name = (name || '').toLowerCase();\n return languages[name] || languages[aliases[name]];\n }\n\n /**\n *\n * @param {string|string[]} aliasList - single alias or list of aliases\n * @param {{languageName: string}} opts\n */\n function registerAliases(aliasList, { languageName }) {\n if (typeof aliasList === 'string') {\n aliasList = [aliasList];\n }\n aliasList.forEach(alias => { aliases[alias] = languageName; });\n }\n\n /**\n * Determines if a given language has auto-detection enabled\n * @param {string} name - name of the language\n */\n function autoDetection(name) {\n var lang = getLanguage(name);\n return lang && !lang.disableAutodetect;\n }\n\n /**\n * @param {HLJSPlugin} plugin\n */\n function addPlugin(plugin) {\n plugins.push(plugin);\n }\n\n /**\n *\n * @param {PluginEvent} event\n * @param {any} args\n */\n function fire(event, args) {\n var cb = event;\n plugins.forEach(function(plugin) {\n if (plugin[cb]) {\n plugin[cb](args);\n }\n });\n }\n\n /* Interface definition */\n\n Object.assign(hljs, {\n highlight,\n highlightAuto,\n fixMarkup,\n highlightBlock,\n configure,\n initHighlighting,\n initHighlightingOnLoad,\n registerLanguage,\n listLanguages,\n getLanguage,\n registerAliases,\n requireLanguage,\n autoDetection,\n inherit: inherit$1,\n addPlugin\n });\n\n hljs.debugMode = function() { SAFE_MODE = false; };\n hljs.safeMode = function() { SAFE_MODE = true; };\n hljs.versionString = version;\n\n for (const key in MODES) {\n // @ts-ignore\n if (typeof MODES[key] === \"object\") {\n // @ts-ignore\n deepFreeze(MODES[key]);\n }\n }\n\n // merge all the modes/regexs into our main object\n Object.assign(hljs, MODES);\n\n return hljs;\n};\n\n// export an \"instance\" of the highlighter\nvar highlight = HLJS({});\n\nmodule.exports = highlight;\n","const Renderer = require('./Renderer.js');\nconst Slugger = require('./Slugger.js');\nconst InlineLexer = require('./InlineLexer.js');\nconst TextRenderer = require('./TextRenderer.js');\nconst { defaults } = require('./defaults.js');\nconst {\n merge,\n unescape\n} = require('./helpers.js');\n\n/**\n * Parsing & Compiling\n */\nmodule.exports = class Parser {\n constructor(options) {\n this.tokens = [];\n this.token = null;\n this.options = options || defaults;\n this.options.renderer = this.options.renderer || new Renderer();\n this.renderer = this.options.renderer;\n this.renderer.options = this.options;\n this.slugger = new Slugger();\n }\n\n /**\n * Static Parse Method\n */\n static parse(tokens, options) {\n const parser = new Parser(options);\n return parser.parse(tokens);\n };\n\n /**\n * Parse Loop\n */\n parse(tokens) {\n this.inline = new InlineLexer(tokens.links, this.options);\n // use an InlineLexer with a TextRenderer to extract pure text\n this.inlineText = new InlineLexer(\n tokens.links,\n merge({}, this.options, { renderer: new TextRenderer() })\n );\n this.tokens = tokens.reverse();\n\n let out = '';\n while (this.next()) {\n out += this.tok();\n }\n\n return out;\n };\n\n /**\n * Next Token\n */\n next() {\n this.token = this.tokens.pop();\n return this.token;\n };\n\n /**\n * Preview Next Token\n */\n peek() {\n return this.tokens[this.tokens.length - 1] || 0;\n };\n\n /**\n * Parse Text Tokens\n */\n parseText() {\n let body = this.token.text;\n\n while (this.peek().type === 'text') {\n body += '\\n' + this.next().text;\n }\n\n return this.inline.output(body);\n };\n\n /**\n * Parse Current Token\n */\n tok() {\n let body = '';\n switch (this.token.type) {\n case 'space': {\n return '';\n }\n case 'hr': {\n return this.renderer.hr();\n }\n case 'heading': {\n return this.renderer.heading(\n this.inline.output(this.token.text),\n this.token.depth,\n unescape(this.inlineText.output(this.token.text)),\n this.slugger);\n }\n case 'code': {\n return this.renderer.code(this.token.text,\n this.token.lang,\n this.token.escaped);\n }\n case 'table': {\n let header = '',\n i,\n row,\n cell,\n j;\n\n // header\n cell = '';\n for (i = 0; i < this.token.header.length; i++) {\n cell += this.renderer.tablecell(\n this.inline.output(this.token.header[i]),\n { header: true, align: this.token.align[i] }\n );\n }\n header += this.renderer.tablerow(cell);\n\n for (i = 0; i < this.token.cells.length; i++) {\n row = this.token.cells[i];\n\n cell = '';\n for (j = 0; j < row.length; j++) {\n cell += this.renderer.tablecell(\n this.inline.output(row[j]),\n { header: false, align: this.token.align[j] }\n );\n }\n\n body += this.renderer.tablerow(cell);\n }\n return this.renderer.table(header, body);\n }\n case 'blockquote_start': {\n body = '';\n\n while (this.next().type !== 'blockquote_end') {\n body += this.tok();\n }\n\n return this.renderer.blockquote(body);\n }\n case 'list_start': {\n body = '';\n const ordered = this.token.ordered,\n start = this.token.start;\n\n while (this.next().type !== 'list_end') {\n body += this.tok();\n }\n\n return this.renderer.list(body, ordered, start);\n }\n case 'list_item_start': {\n body = '';\n const loose = this.token.loose;\n const checked = this.token.checked;\n const task = this.token.task;\n\n if (this.token.task) {\n if (loose) {\n if (this.peek().type === 'text') {\n const nextToken = this.peek();\n nextToken.text = this.renderer.checkbox(checked) + ' ' + nextToken.text;\n } else {\n this.tokens.push({\n type: 'text',\n text: this.renderer.checkbox(checked)\n });\n }\n } else {\n body += this.renderer.checkbox(checked);\n }\n }\n\n while (this.next().type !== 'list_item_end') {\n body += !loose && this.token.type === 'text'\n ? this.parseText()\n : this.tok();\n }\n return this.renderer.listitem(body, task, checked);\n }\n case 'html': {\n // TODO parse inline content if parameter markdown=1\n return this.renderer.html(this.token.text);\n }\n case 'paragraph': {\n return this.renderer.paragraph(this.inline.output(this.token.text));\n }\n case 'text': {\n return this.renderer.paragraph(this.parseText());\n }\n default: {\n const errMsg = 'Token with \"' + this.token.type + '\" type was not found.';\n if (this.options.silent) {\n console.log(errMsg);\n } else {\n throw new Error(errMsg);\n }\n }\n }\n };\n};\n","import { PluginKey, Plugin, TextSelection } from 'prosemirror-state';\n\nvar Rebaseable = function Rebaseable(step, inverted, origin) {\n this.step = step;\n this.inverted = inverted;\n this.origin = origin;\n};\n\n// : ([Rebaseable], [Step], Transform) → [Rebaseable]\n// Undo a given set of steps, apply a set of other steps, and then\n// redo them.\nfunction rebaseSteps(steps, over, transform) {\n for (var i = steps.length - 1; i >= 0; i--) { transform.step(steps[i].inverted); }\n for (var i$1 = 0; i$1 < over.length; i$1++) { transform.step(over[i$1]); }\n var result = [];\n for (var i$2 = 0, mapFrom = steps.length; i$2 < steps.length; i$2++) {\n var mapped = steps[i$2].step.map(transform.mapping.slice(mapFrom));\n mapFrom--;\n if (mapped && !transform.maybeStep(mapped).failed) {\n transform.mapping.setMirror(mapFrom, transform.steps.length - 1);\n result.push(new Rebaseable(mapped, mapped.invert(transform.docs[transform.docs.length - 1]), steps[i$2].origin));\n }\n }\n return result\n}\n\n// This state field accumulates changes that have to be sent to the\n// central authority in the collaborating group and makes it possible\n// to integrate changes made by peers into our local document. It is\n// defined by the plugin, and will be available as the `collab` field\n// in the resulting editor state.\nvar CollabState = function CollabState(version, unconfirmed) {\n // : number\n // The version number of the last update received from the central\n // authority. Starts at 0 or the value of the `version` property\n // in the option object, for the editor's value when the option\n // was enabled.\n this.version = version;\n\n // : [Rebaseable]\n // The local steps that havent been successfully sent to the\n // server yet.\n this.unconfirmed = unconfirmed;\n};\n\nfunction unconfirmedFrom(transform) {\n var result = [];\n for (var i = 0; i < transform.steps.length; i++)\n { result.push(new Rebaseable(transform.steps[i],\n transform.steps[i].invert(transform.docs[i]),\n transform)); }\n return result\n}\n\nvar collabKey = new PluginKey(\"collab\");\n\n// :: (?Object) → Plugin\n//\n// Creates a plugin that enables the collaborative editing framework\n// for the editor.\n//\n// config::- An optional set of options\n//\n// version:: ?number\n// The starting version number of the collaborative editing.\n// Defaults to 0.\n//\n// clientID:: ?union<number, string>\n// This client's ID, used to distinguish its changes from those of\n// other clients. Defaults to a random 32-bit number.\nfunction collab(config) {\n if ( config === void 0 ) config = {};\n\n config = {version: config.version || 0,\n clientID: config.clientID == null ? Math.floor(Math.random() * 0xFFFFFFFF) : config.clientID};\n\n return new Plugin({\n key: collabKey,\n\n state: {\n init: function () { return new CollabState(config.version, []); },\n apply: function apply(tr, collab) {\n var newState = tr.getMeta(collabKey);\n if (newState)\n { return newState }\n if (tr.docChanged)\n { return new CollabState(collab.version, collab.unconfirmed.concat(unconfirmedFrom(tr))) }\n return collab\n }\n },\n\n config: config,\n // This is used to notify the history plugin to not merge steps,\n // so that the history can be rebased.\n historyPreserveItems: true\n })\n}\n\n// :: (state: EditorState, steps: [Step], clientIDs: [union<number, string>], options: ?Object) → Transaction\n// Create a transaction that represents a set of new steps received from\n// the authority. Applying this transaction moves the state forward to\n// adjust to the authority's view of the document.\n//\n// options::- Additional options.\n//\n// mapSelectionBackward:: ?boolean\n// When enabled (the default is `false`), if the current selection\n// is a [text selection](#state.TextSelection), its sides are\n// mapped with a negative bias for this transaction, so that\n// content inserted at the cursor ends up after the cursor. Users\n// usually prefer this, but it isn't done by default for reasons\n// of backwards compatibility.\nfunction receiveTransaction(state, steps, clientIDs, options) {\n // Pushes a set of steps (received from the central authority) into\n // the editor state (which should have the collab plugin enabled).\n // Will recognize its own changes, and confirm unconfirmed steps as\n // appropriate. Remaining unconfirmed steps will be rebased over\n // remote steps.\n var collabState = collabKey.getState(state);\n var version = collabState.version + steps.length;\n var ourID = collabKey.get(state).spec.config.clientID;\n\n // Find out which prefix of the steps originated with us\n var ours = 0;\n while (ours < clientIDs.length && clientIDs[ours] == ourID) { ++ours; }\n var unconfirmed = collabState.unconfirmed.slice(ours);\n steps = ours ? steps.slice(ours) : steps;\n\n // If all steps originated with us, we're done.\n if (!steps.length)\n { return state.tr.setMeta(collabKey, new CollabState(version, unconfirmed)) }\n\n var nUnconfirmed = unconfirmed.length;\n var tr = state.tr;\n if (nUnconfirmed) {\n unconfirmed = rebaseSteps(unconfirmed, steps, tr);\n } else {\n for (var i = 0; i < steps.length; i++) { tr.step(steps[i]); }\n unconfirmed = [];\n }\n\n var newCollabState = new CollabState(version, unconfirmed);\n if (options && options.mapSelectionBackward && state.selection instanceof TextSelection) {\n tr.setSelection(TextSelection.between(tr.doc.resolve(tr.mapping.map(state.selection.anchor, -1)),\n tr.doc.resolve(tr.mapping.map(state.selection.head, -1)), -1));\n tr.updated &= ~1;\n }\n return tr.setMeta(\"rebased\", nUnconfirmed).setMeta(\"addToHistory\", false).setMeta(collabKey, newCollabState)\n}\n\n// :: (state: EditorState) → ?{version: number, steps: [Step], clientID: union<number, string>, origins: [Transaction]}\n// Provides data describing the editor's unconfirmed steps, which need\n// to be sent to the central authority. Returns null when there is\n// nothing to send.\n//\n// `origins` holds the _original_ transactions that produced each\n// steps. This can be useful for looking up time stamps and other\n// metadata for the steps, but note that the steps may have been\n// rebased, whereas the origin transactions are still the old,\n// unchanged objects.\nfunction sendableSteps(state) {\n var collabState = collabKey.getState(state);\n if (collabState.unconfirmed.length == 0) { return null }\n return {\n version: collabState.version,\n steps: collabState.unconfirmed.map(function (s) { return s.step; }),\n clientID: collabKey.get(state).spec.config.clientID,\n get origins() { return this._origins || (this._origins = collabState.unconfirmed.map(function (s) { return s.origin; })) }\n }\n}\n\n// :: (EditorState) → number\n// Get the version up to which the collab plugin has synced with the\n// central authority.\nfunction getVersion(state) {\n return collabKey.getState(state).version\n}\n\nexport { collab, getVersion, rebaseSteps, receiveTransaction, sendableSteps };\n//# sourceMappingURL=index.es.js.map\n","var GOOD_LEAF_SIZE = 200;\n\n// :: class<T> A rope sequence is a persistent sequence data structure\n// that supports appending, prepending, and slicing without doing a\n// full copy. It is represented as a mostly-balanced tree.\nvar RopeSequence = function RopeSequence () {};\n\nRopeSequence.prototype.append = function append (other) {\n if (!other.length) { return this }\n other = RopeSequence.from(other);\n\n return (!this.length && other) ||\n (other.length < GOOD_LEAF_SIZE && this.leafAppend(other)) ||\n (this.length < GOOD_LEAF_SIZE && other.leafPrepend(this)) ||\n this.appendInner(other)\n};\n\n// :: (union<[T], RopeSequence<T>>) → RopeSequence<T>\n// Prepend an array or other rope to this one, returning a new rope.\nRopeSequence.prototype.prepend = function prepend (other) {\n if (!other.length) { return this }\n return RopeSequence.from(other).append(this)\n};\n\nRopeSequence.prototype.appendInner = function appendInner (other) {\n return new Append(this, other)\n};\n\n// :: (?number, ?number) → RopeSequence<T>\n// Create a rope repesenting a sub-sequence of this rope.\nRopeSequence.prototype.slice = function slice (from, to) {\n if ( from === void 0 ) from = 0;\n if ( to === void 0 ) to = this.length;\n\n if (from >= to) { return RopeSequence.empty }\n return this.sliceInner(Math.max(0, from), Math.min(this.length, to))\n};\n\n// :: (number) → T\n// Retrieve the element at the given position from this rope.\nRopeSequence.prototype.get = function get (i) {\n if (i < 0 || i >= this.length) { return undefined }\n return this.getInner(i)\n};\n\n// :: ((element: T, index: number) → ?bool, ?number, ?number)\n// Call the given function for each element between the given\n// indices. This tends to be more efficient than looping over the\n// indices and calling `get`, because it doesn't have to descend the\n// tree for every element.\nRopeSequence.prototype.forEach = function forEach (f, from, to) {\n if ( from === void 0 ) from = 0;\n if ( to === void 0 ) to = this.length;\n\n if (from <= to)\n { this.forEachInner(f, from, to, 0); }\n else\n { this.forEachInvertedInner(f, from, to, 0); }\n};\n\n// :: ((element: T, index: number) → U, ?number, ?number) → [U]\n// Map the given functions over the elements of the rope, producing\n// a flat array.\nRopeSequence.prototype.map = function map (f, from, to) {\n if ( from === void 0 ) from = 0;\n if ( to === void 0 ) to = this.length;\n\n var result = [];\n this.forEach(function (elt, i) { return result.push(f(elt, i)); }, from, to);\n return result\n};\n\n// :: (?union<[T], RopeSequence<T>>) → RopeSequence<T>\n// Create a rope representing the given array, or return the rope\n// itself if a rope was given.\nRopeSequence.from = function from (values) {\n if (values instanceof RopeSequence) { return values }\n return values && values.length ? new Leaf(values) : RopeSequence.empty\n};\n\nvar Leaf = /*@__PURE__*/(function (RopeSequence) {\n function Leaf(values) {\n RopeSequence.call(this);\n this.values = values;\n }\n\n if ( RopeSequence ) Leaf.__proto__ = RopeSequence;\n Leaf.prototype = Object.create( RopeSequence && RopeSequence.prototype );\n Leaf.prototype.constructor = Leaf;\n\n var prototypeAccessors = { length: { configurable: true },depth: { configurable: true } };\n\n Leaf.prototype.flatten = function flatten () {\n return this.values\n };\n\n Leaf.prototype.sliceInner = function sliceInner (from, to) {\n if (from == 0 && to == this.length) { return this }\n return new Leaf(this.values.slice(from, to))\n };\n\n Leaf.prototype.getInner = function getInner (i) {\n return this.values[i]\n };\n\n Leaf.prototype.forEachInner = function forEachInner (f, from, to, start) {\n for (var i = from; i < to; i++)\n { if (f(this.values[i], start + i) === false) { return false } }\n };\n\n Leaf.prototype.forEachInvertedInner = function forEachInvertedInner (f, from, to, start) {\n for (var i = from - 1; i >= to; i--)\n { if (f(this.values[i], start + i) === false) { return false } }\n };\n\n Leaf.prototype.leafAppend = function leafAppend (other) {\n if (this.length + other.length <= GOOD_LEAF_SIZE)\n { return new Leaf(this.values.concat(other.flatten())) }\n };\n\n Leaf.prototype.leafPrepend = function leafPrepend (other) {\n if (this.length + other.length <= GOOD_LEAF_SIZE)\n { return new Leaf(other.flatten().concat(this.values)) }\n };\n\n prototypeAccessors.length.get = function () { return this.values.length };\n\n prototypeAccessors.depth.get = function () { return 0 };\n\n Object.defineProperties( Leaf.prototype, prototypeAccessors );\n\n return Leaf;\n}(RopeSequence));\n\n// :: RopeSequence\n// The empty rope sequence.\nRopeSequence.empty = new Leaf([]);\n\nvar Append = /*@__PURE__*/(function (RopeSequence) {\n function Append(left, right) {\n RopeSequence.call(this);\n this.left = left;\n this.right = right;\n this.length = left.length + right.length;\n this.depth = Math.max(left.depth, right.depth) + 1;\n }\n\n if ( RopeSequence ) Append.__proto__ = RopeSequence;\n Append.prototype = Object.create( RopeSequence && RopeSequence.prototype );\n Append.prototype.constructor = Append;\n\n Append.prototype.flatten = function flatten () {\n return this.left.flatten().concat(this.right.flatten())\n };\n\n Append.prototype.getInner = function getInner (i) {\n return i < this.left.length ? this.left.get(i) : this.right.get(i - this.left.length)\n };\n\n Append.prototype.forEachInner = function forEachInner (f, from, to, start) {\n var leftLen = this.left.length;\n if (from < leftLen &&\n this.left.forEachInner(f, from, Math.min(to, leftLen), start) === false)\n { return false }\n if (to > leftLen &&\n this.right.forEachInner(f, Math.max(from - leftLen, 0), Math.min(this.length, to) - leftLen, start + leftLen) === false)\n { return false }\n };\n\n Append.prototype.forEachInvertedInner = function forEachInvertedInner (f, from, to, start) {\n var leftLen = this.left.length;\n if (from > leftLen &&\n this.right.forEachInvertedInner(f, from - leftLen, Math.max(to, leftLen) - leftLen, start + leftLen) === false)\n { return false }\n if (to < leftLen &&\n this.left.forEachInvertedInner(f, Math.min(from, leftLen), to, start) === false)\n { return false }\n };\n\n Append.prototype.sliceInner = function sliceInner (from, to) {\n if (from == 0 && to == this.length) { return this }\n var leftLen = this.left.length;\n if (to <= leftLen) { return this.left.slice(from, to) }\n if (from >= leftLen) { return this.right.slice(from - leftLen, to - leftLen) }\n return this.left.slice(from, leftLen).append(this.right.slice(0, to - leftLen))\n };\n\n Append.prototype.leafAppend = function leafAppend (other) {\n var inner = this.right.leafAppend(other);\n if (inner) { return new Append(this.left, inner) }\n };\n\n Append.prototype.leafPrepend = function leafPrepend (other) {\n var inner = this.left.leafPrepend(other);\n if (inner) { return new Append(inner, this.right) }\n };\n\n Append.prototype.appendInner = function appendInner (other) {\n if (this.left.depth >= Math.max(this.right.depth, other.depth) + 1)\n { return new Append(this.left, new Append(this.right, other)) }\n return new Append(this, other)\n };\n\n return Append;\n}(RopeSequence));\n\nvar ropeSequence = RopeSequence;\n\nexport default ropeSequence;\n","import RopeSequence from 'rope-sequence';\nimport { Mapping } from 'prosemirror-transform';\nimport { PluginKey, Plugin } from 'prosemirror-state';\n\n// ProseMirror's history isn't simply a way to roll back to a previous\n// state, because ProseMirror supports applying changes without adding\n// them to the history (for example during collaboration).\n//\n// To this end, each 'Branch' (one for the undo history and one for\n// the redo history) keeps an array of 'Items', which can optionally\n// hold a step (an actual undoable change), and always hold a position\n// map (which is needed to move changes below them to apply to the\n// current document).\n//\n// An item that has both a step and a selection bookmark is the start\n// of an 'event' — a group of changes that will be undone or redone at\n// once. (It stores only the bookmark, since that way we don't have to\n// provide a document until the selection is actually applied, which\n// is useful when compressing.)\n\n// Used to schedule history compression\nvar max_empty_items = 500;\n\nvar Branch = function Branch(items, eventCount) {\n this.items = items;\n this.eventCount = eventCount;\n};\n\n// : (EditorState, bool) → ?{transform: Transform, selection: ?SelectionBookmark, remaining: Branch}\n// Pop the latest event off the branch's history and apply it\n// to a document transform.\nBranch.prototype.popEvent = function popEvent (state, preserveItems) {\n var this$1 = this;\n\n if (this.eventCount == 0) { return null }\n\n var end = this.items.length;\n for (;; end--) {\n var next = this.items.get(end - 1);\n if (next.selection) { --end; break }\n }\n\n var remap, mapFrom;\n if (preserveItems) {\n remap = this.remapping(end, this.items.length);\n mapFrom = remap.maps.length;\n }\n var transform = state.tr;\n var selection, remaining;\n var addAfter = [], addBefore = [];\n\n this.items.forEach(function (item, i) {\n if (!item.step) {\n if (!remap) {\n remap = this$1.remapping(end, i + 1);\n mapFrom = remap.maps.length;\n }\n mapFrom--;\n addBefore.push(item);\n return\n }\n\n if (remap) {\n addBefore.push(new Item(item.map));\n var step = item.step.map(remap.slice(mapFrom)), map;\n\n if (step && transform.maybeStep(step).doc) {\n map = transform.mapping.maps[transform.mapping.maps.length - 1];\n addAfter.push(new Item(map, null, null, addAfter.length + addBefore.length));\n }\n mapFrom--;\n if (map) { remap.appendMap(map, mapFrom); }\n } else {\n transform.maybeStep(item.step);\n }\n\n if (item.selection) {\n selection = remap ? item.selection.map(remap.slice(mapFrom)) : item.selection;\n remaining = new Branch(this$1.items.slice(0, end).append(addBefore.reverse().concat(addAfter)), this$1.eventCount - 1);\n return false\n }\n }, this.items.length, 0);\n\n return {remaining: remaining, transform: transform, selection: selection}\n};\n\n// : (Transform, ?SelectionBookmark, Object) → Branch\n// Create a new branch with the given transform added.\nBranch.prototype.addTransform = function addTransform (transform, selection, histOptions, preserveItems) {\n var newItems = [], eventCount = this.eventCount;\n var oldItems = this.items, lastItem = !preserveItems && oldItems.length ? oldItems.get(oldItems.length - 1) : null;\n\n for (var i = 0; i < transform.steps.length; i++) {\n var step = transform.steps[i].invert(transform.docs[i]);\n var item = new Item(transform.mapping.maps[i], step, selection), merged = (void 0);\n if (merged = lastItem && lastItem.merge(item)) {\n item = merged;\n if (i) { newItems.pop(); }\n else { oldItems = oldItems.slice(0, oldItems.length - 1); }\n }\n newItems.push(item);\n if (selection) {\n eventCount++;\n selection = null;\n }\n if (!preserveItems) { lastItem = item; }\n }\n var overflow = eventCount - histOptions.depth;\n if (overflow > DEPTH_OVERFLOW) {\n oldItems = cutOffEvents(oldItems, overflow);\n eventCount -= overflow;\n }\n return new Branch(oldItems.append(newItems), eventCount)\n};\n\nBranch.prototype.remapping = function remapping (from, to) {\n var maps = new Mapping;\n this.items.forEach(function (item, i) {\n var mirrorPos = item.mirrorOffset != null && i - item.mirrorOffset >= from\n ? maps.maps.length - item.mirrorOffset : null;\n maps.appendMap(item.map, mirrorPos);\n }, from, to);\n return maps\n};\n\nBranch.prototype.addMaps = function addMaps (array) {\n if (this.eventCount == 0) { return this }\n return new Branch(this.items.append(array.map(function (map) { return new Item(map); })), this.eventCount)\n};\n\n// : (Transform, number)\n// When the collab module receives remote changes, the history has\n// to know about those, so that it can adjust the steps that were\n// rebased on top of the remote changes, and include the position\n// maps for the remote changes in its array of items.\nBranch.prototype.rebased = function rebased (rebasedTransform, rebasedCount) {\n if (!this.eventCount) { return this }\n\n var rebasedItems = [], start = Math.max(0, this.items.length - rebasedCount);\n\n var mapping = rebasedTransform.mapping;\n var newUntil = rebasedTransform.steps.length;\n var eventCount = this.eventCount;\n this.items.forEach(function (item) { if (item.selection) { eventCount--; } }, start);\n\n var iRebased = rebasedCount;\n this.items.forEach(function (item) {\n var pos = mapping.getMirror(--iRebased);\n if (pos == null) { return }\n newUntil = Math.min(newUntil, pos);\n var map = mapping.maps[pos];\n if (item.step) {\n var step = rebasedTransform.steps[pos].invert(rebasedTransform.docs[pos]);\n var selection = item.selection && item.selection.map(mapping.slice(iRebased + 1, pos));\n if (selection) { eventCount++; }\n rebasedItems.push(new Item(map, step, selection));\n } else {\n rebasedItems.push(new Item(map));\n }\n }, start);\n\n var newMaps = [];\n for (var i = rebasedCount; i < newUntil; i++)\n { newMaps.push(new Item(mapping.maps[i])); }\n var items = this.items.slice(0, start).append(newMaps).append(rebasedItems);\n var branch = new Branch(items, eventCount);\n\n if (branch.emptyItemCount() > max_empty_items)\n { branch = branch.compress(this.items.length - rebasedItems.length); }\n return branch\n};\n\nBranch.prototype.emptyItemCount = function emptyItemCount () {\n var count = 0;\n this.items.forEach(function (item) { if (!item.step) { count++; } });\n return count\n};\n\n// Compressing a branch means rewriting it to push the air (map-only\n// items) out. During collaboration, these naturally accumulate\n// because each remote change adds one. The `upto` argument is used\n// to ensure that only the items below a given level are compressed,\n// because `rebased` relies on a clean, untouched set of items in\n// order to associate old items with rebased steps.\nBranch.prototype.compress = function compress (upto) {\n if ( upto === void 0 ) upto = this.items.length;\n\n var remap = this.remapping(0, upto), mapFrom = remap.maps.length;\n var items = [], events = 0;\n this.items.forEach(function (item, i) {\n if (i >= upto) {\n items.push(item);\n if (item.selection) { events++; }\n } else if (item.step) {\n var step = item.step.map(remap.slice(mapFrom)), map = step && step.getMap();\n mapFrom--;\n if (map) { remap.appendMap(map, mapFrom); }\n if (step) {\n var selection = item.selection && item.selection.map(remap.slice(mapFrom));\n if (selection) { events++; }\n var newItem = new Item(map.invert(), step, selection), merged, last = items.length - 1;\n if (merged = items.length && items[last].merge(newItem))\n { items[last] = merged; }\n else\n { items.push(newItem); }\n }\n } else if (item.map) {\n mapFrom--;\n }\n }, this.items.length, 0);\n return new Branch(RopeSequence.from(items.reverse()), events)\n};\n\nBranch.empty = new Branch(RopeSequence.empty, 0);\n\nfunction cutOffEvents(items, n) {\n var cutPoint;\n items.forEach(function (item, i) {\n if (item.selection && (n-- == 0)) {\n cutPoint = i;\n return false\n }\n });\n return items.slice(cutPoint)\n}\n\nvar Item = function Item(map, step, selection, mirrorOffset) {\n // The (forward) step map for this item.\n this.map = map;\n // The inverted step\n this.step = step;\n // If this is non-null, this item is the start of a group, and\n // this selection is the starting selection for the group (the one\n // that was active before the first step was applied)\n this.selection = selection;\n // If this item is the inverse of a previous mapping on the stack,\n // this points at the inverse's offset\n this.mirrorOffset = mirrorOffset;\n};\n\nItem.prototype.merge = function merge (other) {\n if (this.step && other.step && !other.selection) {\n var step = other.step.merge(this.step);\n if (step) { return new Item(step.getMap().invert(), step, this.selection) }\n }\n};\n\n// The value of the state field that tracks undo/redo history for that\n// state. Will be stored in the plugin state when the history plugin\n// is active.\nvar HistoryState = function HistoryState(done, undone, prevRanges, prevTime) {\n this.done = done;\n this.undone = undone;\n this.prevRanges = prevRanges;\n this.prevTime = prevTime;\n};\n\nvar DEPTH_OVERFLOW = 20;\n\n// : (HistoryState, EditorState, Transaction, Object)\n// Record a transformation in undo history.\nfunction applyTransaction(history, state, tr, options) {\n var historyTr = tr.getMeta(historyKey), rebased;\n if (historyTr) { return historyTr.historyState }\n\n if (tr.getMeta(closeHistoryKey)) { history = new HistoryState(history.done, history.undone, null, 0); }\n\n var appended = tr.getMeta(\"appendedTransaction\");\n\n if (tr.steps.length == 0) {\n return history\n } else if (appended && appended.getMeta(historyKey)) {\n if (appended.getMeta(historyKey).redo)\n { return new HistoryState(history.done.addTransform(tr, null, options, mustPreserveItems(state)),\n history.undone, rangesFor(tr.mapping.maps[tr.steps.length - 1]), history.prevTime) }\n else\n { return new HistoryState(history.done, history.undone.addTransform(tr, null, options, mustPreserveItems(state)),\n null, history.prevTime) }\n } else if (tr.getMeta(\"addToHistory\") !== false && !(appended && appended.getMeta(\"addToHistory\") === false)) {\n // Group transforms that occur in quick succession into one event.\n var newGroup = history.prevTime == 0 || !appended && (history.prevTime < (tr.time || 0) - options.newGroupDelay ||\n !isAdjacentTo(tr, history.prevRanges));\n var prevRanges = appended ? mapRanges(history.prevRanges, tr.mapping) : rangesFor(tr.mapping.maps[tr.steps.length - 1]);\n return new HistoryState(history.done.addTransform(tr, newGroup ? state.selection.getBookmark() : null,\n options, mustPreserveItems(state)),\n Branch.empty, prevRanges, tr.time)\n } else if (rebased = tr.getMeta(\"rebased\")) {\n // Used by the collab module to tell the history that some of its\n // content has been rebased.\n return new HistoryState(history.done.rebased(tr, rebased),\n history.undone.rebased(tr, rebased),\n mapRanges(history.prevRanges, tr.mapping), history.prevTime)\n } else {\n return new HistoryState(history.done.addMaps(tr.mapping.maps),\n history.undone.addMaps(tr.mapping.maps),\n mapRanges(history.prevRanges, tr.mapping), history.prevTime)\n }\n}\n\nfunction isAdjacentTo(transform, prevRanges) {\n if (!prevRanges) { return false }\n if (!transform.docChanged) { return true }\n var adjacent = false;\n transform.mapping.maps[0].forEach(function (start, end) {\n for (var i = 0; i < prevRanges.length; i += 2)\n { if (start <= prevRanges[i + 1] && end >= prevRanges[i])\n { adjacent = true; } }\n });\n return adjacent\n}\n\nfunction rangesFor(map) {\n var result = [];\n map.forEach(function (_from, _to, from, to) { return result.push(from, to); });\n return result\n}\n\nfunction mapRanges(ranges, mapping) {\n if (!ranges) { return null }\n var result = [];\n for (var i = 0; i < ranges.length; i += 2) {\n var from = mapping.map(ranges[i], 1), to = mapping.map(ranges[i + 1], -1);\n if (from <= to) { result.push(from, to); }\n }\n return result\n}\n\n// : (HistoryState, EditorState, (tr: Transaction), bool)\n// Apply the latest event from one branch to the document and shift the event\n// onto the other branch.\nfunction histTransaction(history, state, dispatch, redo) {\n var preserveItems = mustPreserveItems(state), histOptions = historyKey.get(state).spec.config;\n var pop = (redo ? history.undone : history.done).popEvent(state, preserveItems);\n if (!pop) { return }\n\n var selection = pop.selection.resolve(pop.transform.doc);\n var added = (redo ? history.done : history.undone).addTransform(pop.transform, state.selection.getBookmark(),\n histOptions, preserveItems);\n\n var newHist = new HistoryState(redo ? added : pop.remaining, redo ? pop.remaining : added, null, 0);\n dispatch(pop.transform.setSelection(selection).setMeta(historyKey, {redo: redo, historyState: newHist}).scrollIntoView());\n}\n\nvar cachedPreserveItems = false, cachedPreserveItemsPlugins = null;\n// Check whether any plugin in the given state has a\n// `historyPreserveItems` property in its spec, in which case we must\n// preserve steps exactly as they came in, so that they can be\n// rebased.\nfunction mustPreserveItems(state) {\n var plugins = state.plugins;\n if (cachedPreserveItemsPlugins != plugins) {\n cachedPreserveItems = false;\n cachedPreserveItemsPlugins = plugins;\n for (var i = 0; i < plugins.length; i++) { if (plugins[i].spec.historyPreserveItems) {\n cachedPreserveItems = true;\n break\n } }\n }\n return cachedPreserveItems\n}\n\n// :: (Transaction) → Transaction\n// Set a flag on the given transaction that will prevent further steps\n// from being appended to an existing history event (so that they\n// require a separate undo command to undo).\nfunction closeHistory(tr) {\n return tr.setMeta(closeHistoryKey, true)\n}\n\nvar historyKey = new PluginKey(\"history\");\nvar closeHistoryKey = new PluginKey(\"closeHistory\");\n\n// :: (?Object) → Plugin\n// Returns a plugin that enables the undo history for an editor. The\n// plugin will track undo and redo stacks, which can be used with the\n// [`undo`](#history.undo) and [`redo`](#history.redo) commands.\n//\n// You can set an `\"addToHistory\"` [metadata\n// property](#state.Transaction.setMeta) of `false` on a transaction\n// to prevent it from being rolled back by undo.\n//\n// config::-\n// Supports the following configuration options:\n//\n// depth:: ?number\n// The amount of history events that are collected before the\n// oldest events are discarded. Defaults to 100.\n//\n// newGroupDelay:: ?number\n// The delay between changes after which a new group should be\n// started. Defaults to 500 (milliseconds). Note that when changes\n// aren't adjacent, a new group is always started.\nfunction history(config) {\n config = {depth: config && config.depth || 100,\n newGroupDelay: config && config.newGroupDelay || 500};\n return new Plugin({\n key: historyKey,\n\n state: {\n init: function init() {\n return new HistoryState(Branch.empty, Branch.empty, null, 0)\n },\n apply: function apply(tr, hist, state) {\n return applyTransaction(hist, state, tr, config)\n }\n },\n\n config: config\n })\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// A command function that undoes the last change, if any.\nfunction undo(state, dispatch) {\n var hist = historyKey.getState(state);\n if (!hist || hist.done.eventCount == 0) { return false }\n if (dispatch) { histTransaction(hist, state, dispatch, false); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// A command function that redoes the last undone change, if any.\nfunction redo(state, dispatch) {\n var hist = historyKey.getState(state);\n if (!hist || hist.undone.eventCount == 0) { return false }\n if (dispatch) { histTransaction(hist, state, dispatch, true); }\n return true\n}\n\n// :: (EditorState) → number\n// The amount of undoable events available in a given state.\nfunction undoDepth(state) {\n var hist = historyKey.getState(state);\n return hist ? hist.done.eventCount : 0\n}\n\n// :: (EditorState) → number\n// The amount of redoable events available in a given editor state.\nfunction redoDepth(state) {\n var hist = historyKey.getState(state);\n return hist ? hist.undone.eventCount : 0\n}\n\nexport { HistoryState, closeHistory, history, redo, redoDepth, undo, undoDepth };\n//# sourceMappingURL=index.es.js.map\n","\n /*!\n * tiptap-extensions v1.32.6\n * (c) 2020 überdosis GbR (limited liability)\n * @license MIT\n */\n \nimport { Node, Plugin, PluginKey, Mark, Extension } from 'tiptap';\nimport { toggleWrap, wrappingInputRule, toggleList, toggleBlockType, setBlockType, textblockTypeInputRule, chainCommands, exitCode, nodeInputRule, splitListItem, sinkListItem, liftListItem, insertText, replaceText, splitToDefaultListItem, toggleMark, markInputRule, markPasteRule, updateMark, removeMark, pasteRule } from 'tiptap-commands';\nimport low from 'lowlight/lib/core';\nimport { DecorationSet, Decoration } from 'prosemirror-view';\nimport { findBlockNodes, createTable } from 'prosemirror-utils';\nimport { Plugin as Plugin$1, PluginKey as PluginKey$1, TextSelection } from 'prosemirror-state';\nimport { tableNodes, addColumnBefore, addColumnAfter, deleteColumn, addRowBefore, addRowAfter, deleteRow, deleteTable, mergeCells, splitCell, toggleHeaderColumn, toggleHeaderRow, toggleHeaderCell, setCellAttr, fixTables, goToNextCell, columnResizing, tableEditing } from 'prosemirror-tables';\nimport { getMarkAttrs, nodeEqualsType } from 'tiptap-utils';\nimport { Step } from 'prosemirror-transform';\nimport { sendableSteps, getVersion, receiveTransaction, collab } from 'prosemirror-collab';\nimport { history, undo, redo, undoDepth, redoDepth } from 'prosemirror-history';\n\nclass Blockquote extends Node {\n get name() {\n return 'blockquote';\n }\n\n get schema() {\n return {\n content: 'block*',\n group: 'block',\n defining: true,\n draggable: false,\n parseDOM: [{\n tag: 'blockquote'\n }],\n toDOM: () => ['blockquote', 0]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleWrap(type, schema.nodes.paragraph);\n }\n\n keys({\n type\n }) {\n return {\n 'Ctrl->': toggleWrap(type)\n };\n }\n\n inputRules({\n type\n }) {\n return [wrappingInputRule(/^\\s*>\\s$/, type)];\n }\n\n}\n\nclass BulletList extends Node {\n get name() {\n return 'bullet_list';\n }\n\n get schema() {\n return {\n content: 'list_item+',\n group: 'block',\n parseDOM: [{\n tag: 'ul'\n }],\n toDOM: () => ['ul', 0]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleList(type, schema.nodes.list_item);\n }\n\n keys({\n type,\n schema\n }) {\n return {\n 'Shift-Ctrl-8': toggleList(type, schema.nodes.list_item)\n };\n }\n\n inputRules({\n type\n }) {\n return [wrappingInputRule(/^\\s*([-+*])\\s$/, type)];\n }\n\n}\n\nclass CodeBlock extends Node {\n get name() {\n return 'code_block';\n }\n\n get schema() {\n return {\n content: 'text*',\n marks: '',\n group: 'block',\n code: true,\n defining: true,\n draggable: false,\n parseDOM: [{\n tag: 'pre',\n preserveWhitespace: 'full'\n }],\n toDOM: () => ['pre', ['code', 0]]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleBlockType(type, schema.nodes.paragraph);\n }\n\n keys({\n type\n }) {\n return {\n 'Shift-Ctrl-\\\\': setBlockType(type)\n };\n }\n\n inputRules({\n type\n }) {\n return [textblockTypeInputRule(/^```$/, type)];\n }\n\n}\n\nfunction getDecorations({\n doc,\n name\n}) {\n const decorations = [];\n const blocks = findBlockNodes(doc).filter(item => item.node.type.name === name);\n\n const flatten = list => list.reduce((a, b) => a.concat(Array.isArray(b) ? flatten(b) : b), []);\n\n function parseNodes(nodes, className = []) {\n return nodes.map(node => {\n const classes = [...className, ...(node.properties ? node.properties.className : [])];\n\n if (node.children) {\n return parseNodes(node.children, classes);\n }\n\n return {\n text: node.value,\n classes\n };\n });\n }\n\n blocks.forEach(block => {\n let startPos = block.pos + 1;\n const nodes = low.highlightAuto(block.node.textContent).value;\n flatten(parseNodes(nodes)).map(node => {\n const from = startPos;\n const to = from + node.text.length;\n startPos = to;\n return { ...node,\n from,\n to\n };\n }).forEach(node => {\n const decoration = Decoration.inline(node.from, node.to, {\n class: node.classes.join(' ')\n });\n decorations.push(decoration);\n });\n });\n return DecorationSet.create(doc, decorations);\n}\n\nfunction HighlightPlugin({\n name\n}) {\n return new Plugin({\n name: new PluginKey('highlight'),\n state: {\n init: (_, {\n doc\n }) => getDecorations({\n doc,\n name\n }),\n apply: (transaction, decorationSet, oldState, newState) => {\n // TODO: find way to cache decorations\n // https://discuss.prosemirror.net/t/how-to-update-multiple-inline-decorations-on-node-change/1493\n const oldNodeName = oldState.selection.$head.parent.type.name;\n const newNodeName = newState.selection.$head.parent.type.name;\n const oldNodes = findBlockNodes(oldState.doc).filter(item => item.node.type.name === name);\n const newNodes = findBlockNodes(newState.doc).filter(item => item.node.type.name === name); // Apply decorations if selection includes named node, or transaction changes named node.\n\n if (transaction.docChanged && ([oldNodeName, newNodeName].includes(name) || newNodes.length !== oldNodes.length)) {\n return getDecorations({\n doc: transaction.doc,\n name\n });\n }\n\n return decorationSet.map(transaction.mapping, transaction.doc);\n }\n },\n props: {\n decorations(state) {\n return this.getState(state);\n }\n\n }\n });\n}\n\nclass CodeBlockHighlight extends Node {\n constructor(options = {}) {\n super(options);\n\n try {\n Object.entries(this.options.languages).forEach(([name, mapping]) => {\n low.registerLanguage(name, mapping);\n });\n } catch (err) {\n throw new Error('Invalid syntax highlight definitions: define at least one highlight.js language mapping');\n }\n }\n\n get name() {\n return 'code_block';\n }\n\n get defaultOptions() {\n return {\n languages: {}\n };\n }\n\n get schema() {\n return {\n content: 'text*',\n marks: '',\n group: 'block',\n code: true,\n defining: true,\n draggable: false,\n parseDOM: [{\n tag: 'pre',\n preserveWhitespace: 'full'\n }],\n toDOM: () => ['pre', ['code', 0]]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleBlockType(type, schema.nodes.paragraph);\n }\n\n keys({\n type\n }) {\n return {\n 'Shift-Ctrl-\\\\': setBlockType(type)\n };\n }\n\n inputRules({\n type\n }) {\n return [textblockTypeInputRule(/^```$/, type)];\n }\n\n get plugins() {\n return [HighlightPlugin({\n name: this.name\n })];\n }\n\n}\n\nclass HardBreak extends Node {\n get name() {\n return 'hard_break';\n }\n\n get schema() {\n return {\n inline: true,\n group: 'inline',\n selectable: false,\n parseDOM: [{\n tag: 'br'\n }],\n toDOM: () => ['br']\n };\n }\n\n keys({\n type\n }) {\n const command = chainCommands(exitCode, (state, dispatch) => {\n dispatch(state.tr.replaceSelectionWith(type.create()).scrollIntoView());\n return true;\n });\n return {\n 'Mod-Enter': command,\n 'Shift-Enter': command\n };\n }\n\n}\n\nclass Heading extends Node {\n get name() {\n return 'heading';\n }\n\n get defaultOptions() {\n return {\n levels: [1, 2, 3, 4, 5, 6]\n };\n }\n\n get schema() {\n return {\n attrs: {\n level: {\n default: 1\n }\n },\n content: 'inline*',\n group: 'block',\n defining: true,\n draggable: false,\n parseDOM: this.options.levels.map(level => ({\n tag: \"h\".concat(level),\n attrs: {\n level\n }\n })),\n toDOM: node => [\"h\".concat(node.attrs.level), 0]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return attrs => toggleBlockType(type, schema.nodes.paragraph, attrs);\n }\n\n keys({\n type\n }) {\n return this.options.levels.reduce((items, level) => ({ ...items,\n ...{\n [\"Shift-Ctrl-\".concat(level)]: setBlockType(type, {\n level\n })\n }\n }), {});\n }\n\n inputRules({\n type\n }) {\n return this.options.levels.map(level => textblockTypeInputRule(new RegExp(\"^(#{1,\".concat(level, \"})\\\\s$\")), type, () => ({\n level\n })));\n }\n\n}\n\nclass HorizontalRule extends Node {\n get name() {\n return 'horizontal_rule';\n }\n\n get schema() {\n return {\n group: 'block',\n parseDOM: [{\n tag: 'hr'\n }],\n toDOM: () => ['hr']\n };\n }\n\n commands({\n type\n }) {\n return () => (state, dispatch) => dispatch(state.tr.replaceSelectionWith(type.create()));\n }\n\n inputRules({\n type\n }) {\n return [nodeInputRule(/^(?:---|___\\s|\\*\\*\\*\\s)$/, type)];\n }\n\n}\n\n/**\n * Matches following attributes in Markdown-typed image: [, alt, src, title]\n *\n * Example:\n * ![Lorem](image.jpg) -> [, \"Lorem\", \"image.jpg\"]\n * ![](image.jpg \"Ipsum\") -> [, \"\", \"image.jpg\", \"Ipsum\"]\n * ![Lorem](image.jpg \"Ipsum\") -> [, \"Lorem\", \"image.jpg\", \"Ipsum\"]\n */\n\nconst IMAGE_INPUT_REGEX = /!\\[(.+|:?)]\\((\\S+)(?:(?:\\s+)[\"'](\\S+)[\"'])?\\)/;\nclass Image extends Node {\n get name() {\n return 'image';\n }\n\n get schema() {\n return {\n inline: true,\n attrs: {\n src: {},\n alt: {\n default: null\n },\n title: {\n default: null\n }\n },\n group: 'inline',\n draggable: true,\n parseDOM: [{\n tag: 'img[src]',\n getAttrs: dom => ({\n src: dom.getAttribute('src'),\n title: dom.getAttribute('title'),\n alt: dom.getAttribute('alt')\n })\n }],\n toDOM: node => ['img', node.attrs]\n };\n }\n\n commands({\n type\n }) {\n return attrs => (state, dispatch) => {\n const {\n selection\n } = state;\n const position = selection.$cursor ? selection.$cursor.pos : selection.$to.pos;\n const node = type.create(attrs);\n const transaction = state.tr.insert(position, node);\n dispatch(transaction);\n };\n }\n\n inputRules({\n type\n }) {\n return [nodeInputRule(IMAGE_INPUT_REGEX, type, match => {\n const [, alt, src, title] = match;\n return {\n src,\n alt,\n title\n };\n })];\n }\n\n get plugins() {\n return [new Plugin({\n props: {\n handleDOMEvents: {\n drop(view, event) {\n const hasFiles = event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files.length;\n\n if (!hasFiles) {\n return;\n }\n\n const images = Array.from(event.dataTransfer.files).filter(file => /image/i.test(file.type));\n\n if (images.length === 0) {\n return;\n }\n\n event.preventDefault();\n const {\n schema\n } = view.state;\n const coordinates = view.posAtCoords({\n left: event.clientX,\n top: event.clientY\n });\n images.forEach(image => {\n const reader = new FileReader();\n\n reader.onload = readerEvent => {\n const node = schema.nodes.image.create({\n src: readerEvent.target.result\n });\n const transaction = view.state.tr.insert(coordinates.pos, node);\n view.dispatch(transaction);\n };\n\n reader.readAsDataURL(image);\n });\n }\n\n }\n }\n })];\n }\n\n}\n\nclass ListItem extends Node {\n get name() {\n return 'list_item';\n }\n\n get schema() {\n return {\n content: 'paragraph block*',\n defining: true,\n draggable: false,\n parseDOM: [{\n tag: 'li'\n }],\n toDOM: () => ['li', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n Enter: splitListItem(type),\n Tab: sinkListItem(type),\n 'Shift-Tab': liftListItem(type)\n };\n }\n\n}\n\nfunction triggerCharacter({\n char = '@',\n allowSpaces = false,\n startOfLine = false\n}) {\n return $position => {\n // cancel if top level node\n if ($position.depth <= 0) {\n return false;\n } // Matching expressions used for later\n\n\n const escapedChar = \"\\\\\".concat(char);\n const suffix = new RegExp(\"\\\\s\".concat(escapedChar, \"$\"));\n const prefix = startOfLine ? '^' : '';\n const regexp = allowSpaces ? new RegExp(\"\".concat(prefix).concat(escapedChar, \".*?(?=\\\\s\").concat(escapedChar, \"|$)\"), 'gm') : new RegExp(\"\".concat(prefix, \"(?:^)?\").concat(escapedChar, \"[^\\\\s\").concat(escapedChar, \"]*\"), 'gm'); // Lookup the boundaries of the current node\n\n const textFrom = $position.before();\n const textTo = $position.end();\n const text = $position.doc.textBetween(textFrom, textTo, '\\0', '\\0');\n let match = regexp.exec(text);\n let position;\n\n while (match !== null) {\n // JavaScript doesn't have lookbehinds; this hacks a check that first character is \" \"\n // or the line beginning\n const matchPrefix = match.input.slice(Math.max(0, match.index - 1), match.index);\n\n if (/^[\\s\\0]?$/.test(matchPrefix)) {\n // The absolute position of the match in the document\n const from = match.index + $position.start();\n let to = from + match[0].length; // Edge case handling; if spaces are allowed and we're directly in between\n // two triggers\n\n if (allowSpaces && suffix.test(text.slice(to - 1, to + 1))) {\n match[0] += ' ';\n to += 1;\n } // If the $position is located within the matched substring, return that range\n\n\n if (from < $position.pos && to >= $position.pos) {\n position = {\n range: {\n from,\n to\n },\n query: match[0].slice(char.length),\n text: match[0]\n };\n }\n }\n\n match = regexp.exec(text);\n }\n\n return position;\n };\n}\n\nfunction SuggestionsPlugin({\n matcher = {\n char: '@',\n allowSpaces: false,\n startOfLine: false\n },\n appendText = null,\n suggestionClass = 'suggestion',\n command = () => false,\n items = [],\n onEnter = () => false,\n onChange = () => false,\n onExit = () => false,\n onKeyDown = () => false,\n onFilter = (searchItems, query) => {\n if (!query) {\n return searchItems;\n }\n\n return searchItems.filter(item => JSON.stringify(item).toLowerCase().includes(query.toLowerCase()));\n }\n}) {\n return new Plugin$1({\n key: new PluginKey$1('suggestions'),\n\n view() {\n return {\n update: async (view, prevState) => {\n const prev = this.key.getState(prevState);\n const next = this.key.getState(view.state); // See how the state changed\n\n const moved = prev.active && next.active && prev.range.from !== next.range.from;\n const started = !prev.active && next.active;\n const stopped = prev.active && !next.active;\n const changed = !started && !stopped && prev.query !== next.query;\n const handleStart = started || moved;\n const handleChange = changed && !moved;\n const handleExit = stopped || moved; // Cancel when suggestion isn't active\n\n if (!handleStart && !handleChange && !handleExit) {\n return;\n }\n\n const state = handleExit ? prev : next;\n const decorationNode = document.querySelector(\"[data-decoration-id=\\\"\".concat(state.decorationId, \"\\\"]\")); // build a virtual node for popper.js or tippy.js\n // this can be used for building popups without a DOM node\n\n const virtualNode = decorationNode ? {\n getBoundingClientRect() {\n return decorationNode.getBoundingClientRect();\n },\n\n clientWidth: decorationNode.clientWidth,\n clientHeight: decorationNode.clientHeight\n } : null;\n const props = {\n view,\n range: state.range,\n query: state.query,\n text: state.text,\n decorationNode,\n virtualNode,\n items: handleChange || handleStart ? await onFilter(Array.isArray(items) ? items : await items(), state.query) : [],\n command: ({\n range,\n attrs\n }) => {\n command({\n range,\n attrs,\n schema: view.state.schema\n })(view.state, view.dispatch, view);\n\n if (appendText) {\n insertText(appendText)(view.state, view.dispatch, view);\n }\n }\n }; // Trigger the hooks when necessary\n\n if (handleExit) {\n onExit(props);\n }\n\n if (handleChange) {\n onChange(props);\n }\n\n if (handleStart) {\n onEnter(props);\n }\n }\n };\n },\n\n state: {\n // Initialize the plugin's internal state.\n init() {\n return {\n active: false,\n range: {},\n query: null,\n text: null\n };\n },\n\n // Apply changes to the plugin state from a view transaction.\n apply(tr, prev) {\n const {\n selection\n } = tr;\n const next = { ...prev\n }; // We can only be suggesting if there is no selection\n\n if (selection.from === selection.to) {\n // Reset active state if we just left the previous suggestion range\n if (selection.from < prev.range.from || selection.from > prev.range.to) {\n next.active = false;\n } // Try to match against where our cursor currently is\n\n\n const $position = selection.$from;\n const match = triggerCharacter(matcher)($position);\n const decorationId = (Math.random() + 1).toString(36).substr(2, 5); // If we found a match, update the current state to show it\n\n if (match) {\n next.active = true;\n next.decorationId = prev.decorationId ? prev.decorationId : decorationId;\n next.range = match.range;\n next.query = match.query;\n next.text = match.text;\n } else {\n next.active = false;\n }\n } else {\n next.active = false;\n } // Make sure to empty the range if suggestion is inactive\n\n\n if (!next.active) {\n next.decorationId = null;\n next.range = {};\n next.query = null;\n next.text = null;\n }\n\n return next;\n }\n\n },\n props: {\n // Call the keydown hook if suggestion is active.\n handleKeyDown(view, event) {\n const {\n active,\n range\n } = this.getState(view.state);\n if (!active) return false;\n return onKeyDown({\n view,\n event,\n range\n });\n },\n\n // Setup decorator on the currently active suggestion.\n decorations(editorState) {\n const {\n active,\n range,\n decorationId\n } = this.getState(editorState);\n if (!active) return null;\n return DecorationSet.create(editorState.doc, [Decoration.inline(range.from, range.to, {\n nodeName: 'span',\n class: suggestionClass,\n 'data-decoration-id': decorationId\n })]);\n }\n\n }\n });\n}\n\nclass Mention extends Node {\n get name() {\n return 'mention';\n }\n\n get defaultOptions() {\n return {\n matcher: {\n char: '@',\n allowSpaces: false,\n startOfLine: false\n },\n mentionClass: 'mention',\n suggestionClass: 'mention-suggestion'\n };\n }\n\n get schema() {\n return {\n attrs: {\n id: {},\n label: {}\n },\n group: 'inline',\n inline: true,\n selectable: false,\n atom: true,\n toDOM: node => ['span', {\n class: this.options.mentionClass,\n 'data-mention-id': node.attrs.id\n }, \"\".concat(this.options.matcher.char).concat(node.attrs.label)],\n parseDOM: [{\n tag: 'span[data-mention-id]',\n getAttrs: dom => {\n const id = dom.getAttribute('data-mention-id');\n const label = dom.innerText.split(this.options.matcher.char).join('');\n return {\n id,\n label\n };\n }\n }]\n };\n }\n\n commands({\n schema\n }) {\n return attrs => replaceText(null, schema.nodes[this.name], attrs);\n }\n\n get plugins() {\n return [SuggestionsPlugin({\n command: ({\n range,\n attrs,\n schema\n }) => replaceText(range, schema.nodes[this.name], attrs),\n appendText: ' ',\n matcher: this.options.matcher,\n items: this.options.items,\n onEnter: this.options.onEnter,\n onChange: this.options.onChange,\n onExit: this.options.onExit,\n onKeyDown: this.options.onKeyDown,\n onFilter: this.options.onFilter,\n suggestionClass: this.options.suggestionClass\n })];\n }\n\n}\n\nclass OrderedList extends Node {\n get name() {\n return 'ordered_list';\n }\n\n get schema() {\n return {\n attrs: {\n order: {\n default: 1\n }\n },\n content: 'list_item+',\n group: 'block',\n parseDOM: [{\n tag: 'ol',\n getAttrs: dom => ({\n order: dom.hasAttribute('start') ? +dom.getAttribute('start') : 1\n })\n }],\n toDOM: node => node.attrs.order === 1 ? ['ol', 0] : ['ol', {\n start: node.attrs.order\n }, 0]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleList(type, schema.nodes.list_item);\n }\n\n keys({\n type,\n schema\n }) {\n return {\n 'Shift-Ctrl-9': toggleList(type, schema.nodes.list_item)\n };\n }\n\n inputRules({\n type\n }) {\n return [wrappingInputRule(/^(\\d+)\\.\\s$/, type, match => ({\n order: +match[1]\n }), (match, node) => node.childCount + node.attrs.order === +match[1])];\n }\n\n}\n\nvar TableNodes = tableNodes({\n tableGroup: 'block',\n cellContent: 'block+',\n cellAttributes: {\n background: {\n default: null,\n\n getFromDOM(dom) {\n return dom.style.backgroundColor || null;\n },\n\n setDOMAttr(value, attrs) {\n if (value) {\n const style = {\n style: \"\".concat(attrs.style || '', \"background-color: \").concat(value, \";\")\n };\n Object.assign(attrs, style);\n }\n }\n\n }\n }\n});\n\nclass Table extends Node {\n get name() {\n return 'table';\n }\n\n get defaultOptions() {\n return {\n resizable: false\n };\n }\n\n get schema() {\n return TableNodes.table;\n }\n\n commands({\n schema\n }) {\n return {\n createTable: ({\n rowsCount,\n colsCount,\n withHeaderRow\n }) => (state, dispatch) => {\n const offset = state.tr.selection.anchor + 1;\n const nodes = createTable(schema, rowsCount, colsCount, withHeaderRow);\n const tr = state.tr.replaceSelectionWith(nodes).scrollIntoView();\n const resolvedPos = tr.doc.resolve(offset);\n tr.setSelection(TextSelection.near(resolvedPos));\n dispatch(tr);\n },\n addColumnBefore: () => addColumnBefore,\n addColumnAfter: () => addColumnAfter,\n deleteColumn: () => deleteColumn,\n addRowBefore: () => addRowBefore,\n addRowAfter: () => addRowAfter,\n deleteRow: () => deleteRow,\n deleteTable: () => deleteTable,\n toggleCellMerge: () => (state, dispatch) => {\n if (mergeCells(state, dispatch)) {\n return;\n }\n\n splitCell(state, dispatch);\n },\n mergeCells: () => mergeCells,\n splitCell: () => splitCell,\n toggleHeaderColumn: () => toggleHeaderColumn,\n toggleHeaderRow: () => toggleHeaderRow,\n toggleHeaderCell: () => toggleHeaderCell,\n setCellAttr: () => setCellAttr,\n fixTables: () => fixTables\n };\n }\n\n keys() {\n return {\n Tab: goToNextCell(1),\n 'Shift-Tab': goToNextCell(-1)\n };\n }\n\n get plugins() {\n return [...(this.options.resizable ? [columnResizing()] : []), tableEditing()];\n }\n\n}\n\nclass TableHeader extends Node {\n get name() {\n return 'table_header';\n }\n\n get schema() {\n return TableNodes.table_header;\n }\n\n}\n\nclass TableCell extends Node {\n get name() {\n return 'table_cell';\n }\n\n get schema() {\n return TableNodes.table_cell;\n }\n\n}\n\nclass TableRow extends Node {\n get name() {\n return 'table_row';\n }\n\n get schema() {\n return TableNodes.table_row;\n }\n\n}\n\nclass TodoItem extends Node {\n get name() {\n return 'todo_item';\n }\n\n get defaultOptions() {\n return {\n nested: false\n };\n }\n\n get view() {\n return {\n props: ['node', 'updateAttrs', 'view'],\n methods: {\n onChange() {\n this.updateAttrs({\n done: !this.node.attrs.done\n });\n }\n\n },\n template: \"\\n <li :data-type=\\\"node.type.name\\\" :data-done=\\\"node.attrs.done.toString()\\\" data-drag-handle>\\n <span class=\\\"todo-checkbox\\\" contenteditable=\\\"false\\\" @click=\\\"onChange\\\"></span>\\n <div class=\\\"todo-content\\\" ref=\\\"content\\\" :contenteditable=\\\"view.editable.toString()\\\"></div>\\n </li>\\n \"\n };\n }\n\n get schema() {\n return {\n attrs: {\n done: {\n default: false\n }\n },\n draggable: true,\n content: this.options.nested ? '(paragraph|todo_list)+' : 'paragraph+',\n toDOM: node => {\n const {\n done\n } = node.attrs;\n return ['li', {\n 'data-type': this.name,\n 'data-done': done.toString()\n }, ['span', {\n class: 'todo-checkbox',\n contenteditable: 'false'\n }], ['div', {\n class: 'todo-content'\n }, 0]];\n },\n parseDOM: [{\n priority: 51,\n tag: \"[data-type=\\\"\".concat(this.name, \"\\\"]\"),\n getAttrs: dom => ({\n done: dom.getAttribute('data-done') === 'true'\n })\n }]\n };\n }\n\n keys({\n type\n }) {\n return {\n Enter: splitToDefaultListItem(type),\n Tab: this.options.nested ? sinkListItem(type) : () => {},\n 'Shift-Tab': liftListItem(type)\n };\n }\n\n}\n\nclass TodoList extends Node {\n get name() {\n return 'todo_list';\n }\n\n get schema() {\n return {\n group: 'block',\n content: 'todo_item+',\n toDOM: () => ['ul', {\n 'data-type': this.name\n }, 0],\n parseDOM: [{\n priority: 51,\n tag: \"[data-type=\\\"\".concat(this.name, \"\\\"]\")\n }]\n };\n }\n\n commands({\n type,\n schema\n }) {\n return () => toggleList(type, schema.nodes.todo_item);\n }\n\n inputRules({\n type\n }) {\n return [wrappingInputRule(/^\\s*(\\[ \\])\\s$/, type)];\n }\n\n}\n\nclass Bold extends Mark {\n get name() {\n return 'bold';\n }\n\n get schema() {\n return {\n parseDOM: [{\n tag: 'strong'\n }, {\n tag: 'b',\n getAttrs: node => node.style.fontWeight !== 'normal' && null\n }, {\n style: 'font-weight',\n getAttrs: value => /^(bold(er)?|[5-9]\\d{2,})$/.test(value) && null\n }],\n toDOM: () => ['strong', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n 'Mod-b': toggleMark(type)\n };\n }\n\n commands({\n type\n }) {\n return () => toggleMark(type);\n }\n\n inputRules({\n type\n }) {\n return [markInputRule(/(?:\\*\\*|__)([^*_]+)(?:\\*\\*|__)$/, type)];\n }\n\n pasteRules({\n type\n }) {\n return [markPasteRule(/(?:\\*\\*|__)([^*_]+)(?:\\*\\*|__)/g, type)];\n }\n\n}\n\nclass Code extends Mark {\n get name() {\n return 'code';\n }\n\n get schema() {\n return {\n excludes: '_',\n parseDOM: [{\n tag: 'code'\n }],\n toDOM: () => ['code', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n 'Mod-`': toggleMark(type)\n };\n }\n\n commands({\n type\n }) {\n return () => toggleMark(type);\n }\n\n inputRules({\n type\n }) {\n return [markInputRule(/(?:`)([^`]+)(?:`)$/, type)];\n }\n\n pasteRules({\n type\n }) {\n return [markPasteRule(/(?:`)([^`]+)(?:`)/g, type)];\n }\n\n}\n\nclass Italic extends Mark {\n get name() {\n return 'italic';\n }\n\n get schema() {\n return {\n parseDOM: [{\n tag: 'i'\n }, {\n tag: 'em'\n }, {\n style: 'font-style=italic'\n }],\n toDOM: () => ['em', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n 'Mod-i': toggleMark(type)\n };\n }\n\n commands({\n type\n }) {\n return () => toggleMark(type);\n }\n\n inputRules({\n type\n }) {\n return [markInputRule(/(?:^|[^_])(_([^_]+)_)$/, type), markInputRule(/(?:^|[^*])(\\*([^*]+)\\*)$/, type)];\n }\n\n pasteRules({\n type\n }) {\n return [markPasteRule(/_([^_]+)_/g, type), markPasteRule(/\\*([^*]+)\\*/g, type)];\n }\n\n}\n\nclass Link extends Mark {\n get name() {\n return 'link';\n }\n\n get defaultOptions() {\n return {\n openOnClick: true,\n target: null\n };\n }\n\n get schema() {\n return {\n attrs: {\n href: {\n default: null\n },\n target: {\n default: null\n }\n },\n inclusive: false,\n parseDOM: [{\n tag: 'a[href]',\n getAttrs: dom => ({\n href: dom.getAttribute('href'),\n target: dom.getAttribute('target')\n })\n }],\n toDOM: node => ['a', { ...node.attrs,\n rel: 'noopener noreferrer nofollow',\n target: this.options.target\n }, 0]\n };\n }\n\n commands({\n type\n }) {\n return attrs => {\n if (attrs.href) {\n return updateMark(type, attrs);\n }\n\n return removeMark(type);\n };\n }\n\n pasteRules({\n type\n }) {\n return [pasteRule(/https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\\.[a-zA-Z]{2,}\\b([-a-zA-Z0-9@:%_+.~#?&//=,]*)/gi, type, url => ({\n href: url\n }))];\n }\n\n get plugins() {\n if (!this.options.openOnClick) {\n return [];\n }\n\n return [new Plugin({\n props: {\n handleClick: (view, pos, event) => {\n const {\n schema\n } = view.state;\n const attrs = getMarkAttrs(view.state, schema.marks.link);\n\n if (attrs.href && event.target instanceof HTMLAnchorElement) {\n event.stopPropagation();\n window.open(attrs.href, attrs.target);\n }\n }\n }\n })];\n }\n\n}\n\nclass Strike extends Mark {\n get name() {\n return 'strike';\n }\n\n get schema() {\n return {\n parseDOM: [{\n tag: 's'\n }, {\n tag: 'del'\n }, {\n tag: 'strike'\n }, {\n style: 'text-decoration',\n getAttrs: value => value === 'line-through'\n }],\n toDOM: () => ['s', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n 'Mod-d': toggleMark(type)\n };\n }\n\n commands({\n type\n }) {\n return () => toggleMark(type);\n }\n\n inputRules({\n type\n }) {\n return [markInputRule(/~([^~]+)~$/, type)];\n }\n\n pasteRules({\n type\n }) {\n return [markPasteRule(/~([^~]+)~/g, type)];\n }\n\n}\n\nclass Underline extends Mark {\n get name() {\n return 'underline';\n }\n\n get schema() {\n return {\n parseDOM: [{\n tag: 'u'\n }, {\n style: 'text-decoration',\n getAttrs: value => value === 'underline'\n }],\n toDOM: () => ['u', 0]\n };\n }\n\n keys({\n type\n }) {\n return {\n 'Mod-u': toggleMark(type)\n };\n }\n\n commands({\n type\n }) {\n return () => toggleMark(type);\n }\n\n}\n\nclass Collaboration extends Extension {\n get name() {\n return 'collaboration';\n }\n\n init() {\n this.getSendableSteps = this.debounce(state => {\n const sendable = sendableSteps(state);\n\n if (sendable) {\n this.options.onSendable({\n editor: this.editor,\n sendable: {\n version: sendable.version,\n steps: sendable.steps.map(step => step.toJSON()),\n clientID: sendable.clientID\n }\n });\n }\n }, this.options.debounce);\n this.editor.on('transaction', ({\n state\n }) => {\n this.getSendableSteps(state);\n });\n }\n\n get defaultOptions() {\n return {\n version: 0,\n clientID: Math.floor(Math.random() * 0xFFFFFFFF),\n debounce: 250,\n onSendable: () => {},\n update: ({\n steps,\n version\n }) => {\n const {\n state,\n view,\n schema\n } = this.editor;\n\n if (getVersion(state) > version) {\n return;\n }\n\n view.dispatch(receiveTransaction(state, steps.map(item => Step.fromJSON(schema, item.step)), steps.map(item => item.clientID)));\n }\n };\n }\n\n get plugins() {\n return [collab({\n version: this.options.version,\n clientID: this.options.clientID\n })];\n }\n\n debounce(fn, delay) {\n let timeout;\n return function (...args) {\n if (timeout) {\n clearTimeout(timeout);\n }\n\n timeout = setTimeout(() => {\n fn(...args);\n timeout = null;\n }, delay);\n };\n }\n\n}\n\nclass Focus extends Extension {\n get name() {\n return 'focus';\n }\n\n get defaultOptions() {\n return {\n className: 'has-focus',\n nested: false\n };\n }\n\n get plugins() {\n return [new Plugin({\n props: {\n decorations: ({\n doc,\n plugins,\n selection\n }) => {\n const editablePlugin = plugins.find(plugin => plugin.key.startsWith('editable$'));\n const editable = editablePlugin.props.editable();\n const active = editable && this.options.className;\n const {\n focused\n } = this.editor;\n const {\n anchor\n } = selection;\n const decorations = [];\n\n if (!active || !focused) {\n return false;\n }\n\n doc.descendants((node, pos) => {\n const hasAnchor = anchor >= pos && anchor <= pos + node.nodeSize;\n\n if (hasAnchor && !node.isText) {\n const decoration = Decoration.node(pos, pos + node.nodeSize, {\n class: this.options.className\n });\n decorations.push(decoration);\n }\n\n return this.options.nested;\n });\n return DecorationSet.create(doc, decorations);\n }\n }\n })];\n }\n\n}\n\nclass History extends Extension {\n get name() {\n return 'history';\n }\n\n get defaultOptions() {\n return {\n depth: '',\n newGroupDelay: ''\n };\n }\n\n keys() {\n const keymap = {\n 'Mod-z': undo,\n 'Mod-y': redo,\n 'Shift-Mod-z': redo,\n // Russian language\n 'Mod-я': undo,\n 'Shift-Mod-я': redo\n };\n return keymap;\n }\n\n get plugins() {\n return [history({\n depth: this.options.depth,\n newGroupDelay: this.options.newGroupDelay\n })];\n }\n\n commands() {\n return {\n undo: () => undo,\n redo: () => redo,\n undoDepth: () => undoDepth,\n redoDepth: () => redoDepth\n };\n }\n\n}\n\nclass Placeholder extends Extension {\n get name() {\n return 'placeholder';\n }\n\n get defaultOptions() {\n return {\n emptyEditorClass: 'is-editor-empty',\n emptyNodeClass: 'is-empty',\n emptyNodeText: 'Write something …',\n showOnlyWhenEditable: true,\n showOnlyCurrent: true\n };\n }\n\n get plugins() {\n return [new Plugin({\n props: {\n decorations: ({\n doc,\n plugins,\n selection\n }) => {\n const editablePlugin = plugins.find(plugin => plugin.key.startsWith('editable$'));\n const editable = editablePlugin.props.editable();\n const active = editable || !this.options.showOnlyWhenEditable;\n const {\n anchor\n } = selection;\n const decorations = [];\n const isEditorEmpty = doc.textContent.length === 0;\n\n if (!active) {\n return false;\n }\n\n doc.descendants((node, pos) => {\n const hasAnchor = anchor >= pos && anchor <= pos + node.nodeSize;\n const isNodeEmpty = node.content.size === 0;\n\n if ((hasAnchor || !this.options.showOnlyCurrent) && isNodeEmpty) {\n const classes = [this.options.emptyNodeClass];\n\n if (isEditorEmpty) {\n classes.push(this.options.emptyEditorClass);\n }\n\n const decoration = Decoration.node(pos, pos + node.nodeSize, {\n class: classes.join(' '),\n 'data-empty-text': typeof this.options.emptyNodeText === 'function' ? this.options.emptyNodeText(node) : this.options.emptyNodeText\n });\n decorations.push(decoration);\n }\n\n return false;\n });\n return DecorationSet.create(doc, decorations);\n }\n }\n })];\n }\n\n}\n\nclass Search extends Extension {\n constructor(options = {}) {\n super(options);\n this.results = [];\n this.searchTerm = null;\n this._updating = false;\n }\n\n get name() {\n return 'search';\n }\n\n get defaultOptions() {\n return {\n autoSelectNext: true,\n findClass: 'find',\n searching: false,\n caseSensitive: false,\n disableRegex: true,\n alwaysSearch: false\n };\n }\n\n commands() {\n return {\n find: attrs => this.find(attrs),\n replace: attrs => this.replace(attrs),\n replaceAll: attrs => this.replaceAll(attrs),\n clearSearch: () => this.clear()\n };\n }\n\n get findRegExp() {\n return RegExp(this.searchTerm, !this.options.caseSensitive ? 'gui' : 'gu');\n }\n\n get decorations() {\n return this.results.map(deco => Decoration.inline(deco.from, deco.to, {\n class: this.options.findClass\n }));\n }\n\n _search(doc) {\n this.results = [];\n const mergedTextNodes = [];\n let index = 0;\n\n if (!this.searchTerm) {\n return;\n }\n\n doc.descendants((node, pos) => {\n if (node.isText) {\n if (mergedTextNodes[index]) {\n mergedTextNodes[index] = {\n text: mergedTextNodes[index].text + node.text,\n pos: mergedTextNodes[index].pos\n };\n } else {\n mergedTextNodes[index] = {\n text: node.text,\n pos\n };\n }\n } else {\n index += 1;\n }\n });\n mergedTextNodes.forEach(({\n text,\n pos\n }) => {\n const search = this.findRegExp;\n let m; // eslint-disable-next-line no-cond-assign\n\n while (m = search.exec(text)) {\n if (m[0] === '') {\n break;\n }\n\n this.results.push({\n from: pos + m.index,\n to: pos + m.index + m[0].length\n });\n }\n });\n }\n\n replace(replace) {\n return (state, dispatch) => {\n const firstResult = this.results[0];\n\n if (!firstResult) {\n return;\n }\n\n const {\n from,\n to\n } = this.results[0];\n dispatch(state.tr.insertText(replace, from, to));\n this.editor.commands.find(this.searchTerm);\n };\n }\n\n rebaseNextResult(replace, index, lastOffset = 0) {\n const nextIndex = index + 1;\n\n if (!this.results[nextIndex]) {\n return null;\n }\n\n const {\n from: currentFrom,\n to: currentTo\n } = this.results[index];\n const offset = currentTo - currentFrom - replace.length + lastOffset;\n const {\n from,\n to\n } = this.results[nextIndex];\n this.results[nextIndex] = {\n to: to - offset,\n from: from - offset\n };\n return offset;\n }\n\n replaceAll(replace) {\n return ({\n tr\n }, dispatch) => {\n let offset;\n\n if (!this.results.length) {\n return;\n }\n\n this.results.forEach(({\n from,\n to\n }, index) => {\n tr.insertText(replace, from, to);\n offset = this.rebaseNextResult(replace, index, offset);\n });\n dispatch(tr);\n this.editor.commands.find(this.searchTerm);\n };\n }\n\n find(searchTerm) {\n return (state, dispatch) => {\n this.searchTerm = this.options.disableRegex ? searchTerm.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&') : searchTerm;\n this.updateView(state, dispatch);\n };\n }\n\n clear() {\n return (state, dispatch) => {\n this.searchTerm = null;\n this.updateView(state, dispatch);\n };\n }\n\n updateView({\n tr\n }, dispatch) {\n this._updating = true;\n dispatch(tr);\n this._updating = false;\n }\n\n createDeco(doc) {\n this._search(doc);\n\n return this.decorations ? DecorationSet.create(doc, this.decorations) : [];\n }\n\n get plugins() {\n return [new Plugin({\n state: {\n init() {\n return DecorationSet.empty;\n },\n\n apply: (tr, old) => {\n if (this._updating || this.options.searching || tr.docChanged && this.options.alwaysSearch) {\n return this.createDeco(tr.doc);\n }\n\n if (tr.docChanged) {\n return old.map(tr.mapping, tr.doc);\n }\n\n return old;\n }\n },\n props: {\n decorations(state) {\n return this.getState(state);\n }\n\n }\n })];\n }\n\n}\n\nclass TrailingNode extends Extension {\n get name() {\n return 'trailing_node';\n }\n\n get defaultOptions() {\n return {\n node: 'paragraph',\n notAfter: ['paragraph']\n };\n }\n\n get plugins() {\n const plugin = new PluginKey(this.name);\n const disabledNodes = Object.entries(this.editor.schema.nodes).map(([, value]) => value).filter(node => this.options.notAfter.includes(node.name));\n return [new Plugin({\n key: plugin,\n view: () => ({\n update: view => {\n const {\n state\n } = view;\n const insertNodeAtEnd = plugin.getState(state);\n\n if (!insertNodeAtEnd) {\n return;\n }\n\n const {\n doc,\n schema,\n tr\n } = state;\n const type = schema.nodes[this.options.node];\n const transaction = tr.insert(doc.content.size, type.create());\n view.dispatch(transaction);\n }\n }),\n state: {\n init: (_, state) => {\n const lastNode = state.tr.doc.lastChild;\n return !nodeEqualsType({\n node: lastNode,\n types: disabledNodes\n });\n },\n apply: (tr, value) => {\n if (!tr.docChanged) {\n return value;\n }\n\n const lastNode = tr.doc.lastChild;\n return !nodeEqualsType({\n node: lastNode,\n types: disabledNodes\n });\n }\n }\n })];\n }\n\n}\n\nexport { Blockquote, Bold, BulletList, Code, CodeBlock, CodeBlockHighlight, Collaboration, Focus, HardBreak, Heading, HighlightPlugin as Highlight, History, HorizontalRule, Image, Italic, Link, ListItem, Mention, OrderedList, Placeholder, Search, Strike, SuggestionsPlugin as Suggestions, Table, TableCell, TableHeader, TableRow, TodoItem, TodoList, TrailingNode, Underline };\n","import { liftTarget, canJoin, joinPoint, canSplit, ReplaceAroundStep, findWrapping } from 'prosemirror-transform';\nimport { Fragment, Slice } from 'prosemirror-model';\nimport { NodeSelection, Selection, TextSelection, AllSelection } from 'prosemirror-state';\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Delete the selection, if there is one.\nfunction deleteSelection(state, dispatch) {\n if (state.selection.empty) { return false }\n if (dispatch) { dispatch(state.tr.deleteSelection().scrollIntoView()); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction), ?EditorView) → bool\n// If the selection is empty and at the start of a textblock, try to\n// reduce the distance between that block and the one before it—if\n// there's a block directly before it that can be joined, join them.\n// If not, try to move the selected block closer to the next one in\n// the document structure by lifting it out of its parent or moving it\n// into a parent of the previous block. Will use the view for accurate\n// (bidi-aware) start-of-textblock detection if given.\nfunction joinBackward(state, dispatch, view) {\n var ref = state.selection;\n var $cursor = ref.$cursor;\n if (!$cursor || (view ? !view.endOfTextblock(\"backward\", state)\n : $cursor.parentOffset > 0))\n { return false }\n\n var $cut = findCutBefore($cursor);\n\n // If there is no node before this, try to lift\n if (!$cut) {\n var range = $cursor.blockRange(), target = range && liftTarget(range);\n if (target == null) { return false }\n if (dispatch) { dispatch(state.tr.lift(range, target).scrollIntoView()); }\n return true\n }\n\n var before = $cut.nodeBefore;\n // Apply the joining algorithm\n if (!before.type.spec.isolating && deleteBarrier(state, $cut, dispatch))\n { return true }\n\n // If the node below has no content and the node above is\n // selectable, delete the node below and select the one above.\n if ($cursor.parent.content.size == 0 &&\n (textblockAt(before, \"end\") || NodeSelection.isSelectable(before))) {\n if (dispatch) {\n var tr = state.tr.deleteRange($cursor.before(), $cursor.after());\n tr.setSelection(textblockAt(before, \"end\") ? Selection.findFrom(tr.doc.resolve(tr.mapping.map($cut.pos, -1)), -1)\n : NodeSelection.create(tr.doc, $cut.pos - before.nodeSize));\n dispatch(tr.scrollIntoView());\n }\n return true\n }\n\n // If the node before is an atom, delete it\n if (before.isAtom && $cut.depth == $cursor.depth - 1) {\n if (dispatch) { dispatch(state.tr.delete($cut.pos - before.nodeSize, $cut.pos).scrollIntoView()); }\n return true\n }\n\n return false\n}\n\nfunction textblockAt(node, side) {\n for (; node; node = (side == \"start\" ? node.firstChild : node.lastChild))\n { if (node.isTextblock) { return true } }\n return false\n}\n\n// :: (EditorState, ?(tr: Transaction), ?EditorView) → bool\n// When the selection is empty and at the start of a textblock, select\n// the node before that textblock, if possible. This is intended to be\n// bound to keys like backspace, after\n// [`joinBackward`](#commands.joinBackward) or other deleting\n// commands, as a fall-back behavior when the schema doesn't allow\n// deletion at the selected point.\nfunction selectNodeBackward(state, dispatch, view) {\n var ref = state.selection;\n var $head = ref.$head;\n var empty = ref.empty;\n var $cut = $head;\n if (!empty) { return false }\n\n if ($head.parent.isTextblock) {\n if (view ? !view.endOfTextblock(\"backward\", state) : $head.parentOffset > 0) { return false }\n $cut = findCutBefore($head);\n }\n var node = $cut && $cut.nodeBefore;\n if (!node || !NodeSelection.isSelectable(node)) { return false }\n if (dispatch)\n { dispatch(state.tr.setSelection(NodeSelection.create(state.doc, $cut.pos - node.nodeSize)).scrollIntoView()); }\n return true\n}\n\nfunction findCutBefore($pos) {\n if (!$pos.parent.type.spec.isolating) { for (var i = $pos.depth - 1; i >= 0; i--) {\n if ($pos.index(i) > 0) { return $pos.doc.resolve($pos.before(i + 1)) }\n if ($pos.node(i).type.spec.isolating) { break }\n } }\n return null\n}\n\n// :: (EditorState, ?(tr: Transaction), ?EditorView) → bool\n// If the selection is empty and the cursor is at the end of a\n// textblock, try to reduce or remove the boundary between that block\n// and the one after it, either by joining them or by moving the other\n// block closer to this one in the tree structure. Will use the view\n// for accurate start-of-textblock detection if given.\nfunction joinForward(state, dispatch, view) {\n var ref = state.selection;\n var $cursor = ref.$cursor;\n if (!$cursor || (view ? !view.endOfTextblock(\"forward\", state)\n : $cursor.parentOffset < $cursor.parent.content.size))\n { return false }\n\n var $cut = findCutAfter($cursor);\n\n // If there is no node after this, there's nothing to do\n if (!$cut) { return false }\n\n var after = $cut.nodeAfter;\n // Try the joining algorithm\n if (deleteBarrier(state, $cut, dispatch)) { return true }\n\n // If the node above has no content and the node below is\n // selectable, delete the node above and select the one below.\n if ($cursor.parent.content.size == 0 &&\n (textblockAt(after, \"start\") || NodeSelection.isSelectable(after))) {\n if (dispatch) {\n var tr = state.tr.deleteRange($cursor.before(), $cursor.after());\n tr.setSelection(textblockAt(after, \"start\") ? Selection.findFrom(tr.doc.resolve(tr.mapping.map($cut.pos)), 1)\n : NodeSelection.create(tr.doc, tr.mapping.map($cut.pos)));\n dispatch(tr.scrollIntoView());\n }\n return true\n }\n\n // If the next node is an atom, delete it\n if (after.isAtom && $cut.depth == $cursor.depth - 1) {\n if (dispatch) { dispatch(state.tr.delete($cut.pos, $cut.pos + after.nodeSize).scrollIntoView()); }\n return true\n }\n\n return false\n}\n\n// :: (EditorState, ?(tr: Transaction), ?EditorView) → bool\n// When the selection is empty and at the end of a textblock, select\n// the node coming after that textblock, if possible. This is intended\n// to be bound to keys like delete, after\n// [`joinForward`](#commands.joinForward) and similar deleting\n// commands, to provide a fall-back behavior when the schema doesn't\n// allow deletion at the selected point.\nfunction selectNodeForward(state, dispatch, view) {\n var ref = state.selection;\n var $head = ref.$head;\n var empty = ref.empty;\n var $cut = $head;\n if (!empty) { return false }\n if ($head.parent.isTextblock) {\n if (view ? !view.endOfTextblock(\"forward\", state) : $head.parentOffset < $head.parent.content.size)\n { return false }\n $cut = findCutAfter($head);\n }\n var node = $cut && $cut.nodeAfter;\n if (!node || !NodeSelection.isSelectable(node)) { return false }\n if (dispatch)\n { dispatch(state.tr.setSelection(NodeSelection.create(state.doc, $cut.pos)).scrollIntoView()); }\n return true\n}\n\nfunction findCutAfter($pos) {\n if (!$pos.parent.type.spec.isolating) { for (var i = $pos.depth - 1; i >= 0; i--) {\n var parent = $pos.node(i);\n if ($pos.index(i) + 1 < parent.childCount) { return $pos.doc.resolve($pos.after(i + 1)) }\n if (parent.type.spec.isolating) { break }\n } }\n return null\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Join the selected block or, if there is a text selection, the\n// closest ancestor block of the selection that can be joined, with\n// the sibling above it.\nfunction joinUp(state, dispatch) {\n var sel = state.selection, nodeSel = sel instanceof NodeSelection, point;\n if (nodeSel) {\n if (sel.node.isTextblock || !canJoin(state.doc, sel.from)) { return false }\n point = sel.from;\n } else {\n point = joinPoint(state.doc, sel.from, -1);\n if (point == null) { return false }\n }\n if (dispatch) {\n var tr = state.tr.join(point);\n if (nodeSel) { tr.setSelection(NodeSelection.create(tr.doc, point - state.doc.resolve(point).nodeBefore.nodeSize)); }\n dispatch(tr.scrollIntoView());\n }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Join the selected block, or the closest ancestor of the selection\n// that can be joined, with the sibling after it.\nfunction joinDown(state, dispatch) {\n var sel = state.selection, point;\n if (sel instanceof NodeSelection) {\n if (sel.node.isTextblock || !canJoin(state.doc, sel.to)) { return false }\n point = sel.to;\n } else {\n point = joinPoint(state.doc, sel.to, 1);\n if (point == null) { return false }\n }\n if (dispatch)\n { dispatch(state.tr.join(point).scrollIntoView()); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Lift the selected block, or the closest ancestor block of the\n// selection that can be lifted, out of its parent node.\nfunction lift(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var range = $from.blockRange($to), target = range && liftTarget(range);\n if (target == null) { return false }\n if (dispatch) { dispatch(state.tr.lift(range, target).scrollIntoView()); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// If the selection is in a node whose type has a truthy\n// [`code`](#model.NodeSpec.code) property in its spec, replace the\n// selection with a newline character.\nfunction newlineInCode(state, dispatch) {\n var ref = state.selection;\n var $head = ref.$head;\n var $anchor = ref.$anchor;\n if (!$head.parent.type.spec.code || !$head.sameParent($anchor)) { return false }\n if (dispatch) { dispatch(state.tr.insertText(\"\\n\").scrollIntoView()); }\n return true\n}\n\nfunction defaultBlockAt(match) {\n for (var i = 0; i < match.edgeCount; i++) {\n var ref = match.edge(i);\n var type = ref.type;\n if (type.isTextblock && !type.hasRequiredAttrs()) { return type }\n }\n return null\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// When the selection is in a node with a truthy\n// [`code`](#model.NodeSpec.code) property in its spec, create a\n// default block after the code block, and move the cursor there.\nfunction exitCode(state, dispatch) {\n var ref = state.selection;\n var $head = ref.$head;\n var $anchor = ref.$anchor;\n if (!$head.parent.type.spec.code || !$head.sameParent($anchor)) { return false }\n var above = $head.node(-1), after = $head.indexAfter(-1), type = defaultBlockAt(above.contentMatchAt(after));\n if (!above.canReplaceWith(after, after, type)) { return false }\n if (dispatch) {\n var pos = $head.after(), tr = state.tr.replaceWith(pos, pos, type.createAndFill());\n tr.setSelection(Selection.near(tr.doc.resolve(pos), 1));\n dispatch(tr.scrollIntoView());\n }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// If a block node is selected, create an empty paragraph before (if\n// it is its parent's first child) or after it.\nfunction createParagraphNear(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n if ($from.parent.inlineContent || $to.parent.inlineContent) { return false }\n var type = defaultBlockAt($from.parent.contentMatchAt($to.indexAfter()));\n if (!type || !type.isTextblock) { return false }\n if (dispatch) {\n var side = (!$from.parentOffset && $to.index() < $to.parent.childCount ? $from : $to).pos;\n var tr = state.tr.insert(side, type.createAndFill());\n tr.setSelection(TextSelection.create(tr.doc, side + 1));\n dispatch(tr.scrollIntoView());\n }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// If the cursor is in an empty textblock that can be lifted, lift the\n// block.\nfunction liftEmptyBlock(state, dispatch) {\n var ref = state.selection;\n var $cursor = ref.$cursor;\n if (!$cursor || $cursor.parent.content.size) { return false }\n if ($cursor.depth > 1 && $cursor.after() != $cursor.end(-1)) {\n var before = $cursor.before();\n if (canSplit(state.doc, before)) {\n if (dispatch) { dispatch(state.tr.split(before).scrollIntoView()); }\n return true\n }\n }\n var range = $cursor.blockRange(), target = range && liftTarget(range);\n if (target == null) { return false }\n if (dispatch) { dispatch(state.tr.lift(range, target).scrollIntoView()); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Split the parent block of the selection. If the selection is a text\n// selection, also delete its content.\nfunction splitBlock(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n if (state.selection instanceof NodeSelection && state.selection.node.isBlock) {\n if (!$from.parentOffset || !canSplit(state.doc, $from.pos)) { return false }\n if (dispatch) { dispatch(state.tr.split($from.pos).scrollIntoView()); }\n return true\n }\n\n if (!$from.parent.isBlock) { return false }\n\n if (dispatch) {\n var atEnd = $to.parentOffset == $to.parent.content.size;\n var tr = state.tr;\n if (state.selection instanceof TextSelection) { tr.deleteSelection(); }\n var deflt = $from.depth == 0 ? null : defaultBlockAt($from.node(-1).contentMatchAt($from.indexAfter(-1)));\n var types = atEnd && deflt ? [{type: deflt}] : null;\n var can = canSplit(tr.doc, tr.mapping.map($from.pos), 1, types);\n if (!types && !can && canSplit(tr.doc, tr.mapping.map($from.pos), 1, deflt && [{type: deflt}])) {\n types = [{type: deflt}];\n can = true;\n }\n if (can) {\n tr.split(tr.mapping.map($from.pos), 1, types);\n if (!atEnd && !$from.parentOffset && $from.parent.type != deflt &&\n $from.node(-1).canReplace($from.index(-1), $from.indexAfter(-1), Fragment.from(deflt.create(), $from.parent)))\n { tr.setNodeMarkup(tr.mapping.map($from.before()), deflt); }\n }\n dispatch(tr.scrollIntoView());\n }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Acts like [`splitBlock`](#commands.splitBlock), but without\n// resetting the set of active marks at the cursor.\nfunction splitBlockKeepMarks(state, dispatch) {\n return splitBlock(state, dispatch && (function (tr) {\n var marks = state.storedMarks || (state.selection.$to.parentOffset && state.selection.$from.marks());\n if (marks) { tr.ensureMarks(marks); }\n dispatch(tr);\n }))\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Move the selection to the node wrapping the current selection, if\n// any. (Will not select the document node.)\nfunction selectParentNode(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var to = ref.to;\n var pos;\n var same = $from.sharedDepth(to);\n if (same == 0) { return false }\n pos = $from.before(same);\n if (dispatch) { dispatch(state.tr.setSelection(NodeSelection.create(state.doc, pos))); }\n return true\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Select the whole document.\nfunction selectAll(state, dispatch) {\n if (dispatch) { dispatch(state.tr.setSelection(new AllSelection(state.doc))); }\n return true\n}\n\nfunction joinMaybeClear(state, $pos, dispatch) {\n var before = $pos.nodeBefore, after = $pos.nodeAfter, index = $pos.index();\n if (!before || !after || !before.type.compatibleContent(after.type)) { return false }\n if (!before.content.size && $pos.parent.canReplace(index - 1, index)) {\n if (dispatch) { dispatch(state.tr.delete($pos.pos - before.nodeSize, $pos.pos).scrollIntoView()); }\n return true\n }\n if (!$pos.parent.canReplace(index, index + 1) || !(after.isTextblock || canJoin(state.doc, $pos.pos)))\n { return false }\n if (dispatch)\n { dispatch(state.tr\n .clearIncompatible($pos.pos, before.type, before.contentMatchAt(before.childCount))\n .join($pos.pos)\n .scrollIntoView()); }\n return true\n}\n\nfunction deleteBarrier(state, $cut, dispatch) {\n var before = $cut.nodeBefore, after = $cut.nodeAfter, conn, match;\n if (before.type.spec.isolating || after.type.spec.isolating) { return false }\n if (joinMaybeClear(state, $cut, dispatch)) { return true }\n\n if ($cut.parent.canReplace($cut.index(), $cut.index() + 1) &&\n (conn = (match = before.contentMatchAt(before.childCount)).findWrapping(after.type)) &&\n match.matchType(conn[0] || after.type).validEnd) {\n if (dispatch) {\n var end = $cut.pos + after.nodeSize, wrap = Fragment.empty;\n for (var i = conn.length - 1; i >= 0; i--)\n { wrap = Fragment.from(conn[i].create(null, wrap)); }\n wrap = Fragment.from(before.copy(wrap));\n var tr = state.tr.step(new ReplaceAroundStep($cut.pos - 1, end, $cut.pos, end, new Slice(wrap, 1, 0), conn.length, true));\n var joinAt = end + 2 * conn.length;\n if (canJoin(tr.doc, joinAt)) { tr.join(joinAt); }\n dispatch(tr.scrollIntoView());\n }\n return true\n }\n\n var selAfter = Selection.findFrom($cut, 1);\n var range = selAfter && selAfter.$from.blockRange(selAfter.$to), target = range && liftTarget(range);\n if (target != null && target >= $cut.depth) {\n if (dispatch) { dispatch(state.tr.lift(range, target).scrollIntoView()); }\n return true\n }\n\n return false\n}\n\n// Parameterized commands\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Wrap the selection in a node of the given type with the given\n// attributes.\nfunction wrapIn(nodeType, attrs) {\n return function(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var range = $from.blockRange($to), wrapping = range && findWrapping(range, nodeType, attrs);\n if (!wrapping) { return false }\n if (dispatch) { dispatch(state.tr.wrap(range, wrapping).scrollIntoView()); }\n return true\n }\n}\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Returns a command that tries to set the selected textblocks to the\n// given node type with the given attributes.\nfunction setBlockType(nodeType, attrs) {\n return function(state, dispatch) {\n var ref = state.selection;\n var from = ref.from;\n var to = ref.to;\n var applicable = false;\n state.doc.nodesBetween(from, to, function (node, pos) {\n if (applicable) { return false }\n if (!node.isTextblock || node.hasMarkup(nodeType, attrs)) { return }\n if (node.type == nodeType) {\n applicable = true;\n } else {\n var $pos = state.doc.resolve(pos), index = $pos.index();\n applicable = $pos.parent.canReplaceWith(index, index + 1, nodeType);\n }\n });\n if (!applicable) { return false }\n if (dispatch) { dispatch(state.tr.setBlockType(from, to, nodeType, attrs).scrollIntoView()); }\n return true\n }\n}\n\nfunction markApplies(doc, ranges, type) {\n var loop = function ( i ) {\n var ref = ranges[i];\n var $from = ref.$from;\n var $to = ref.$to;\n var can = $from.depth == 0 ? doc.type.allowsMarkType(type) : false;\n doc.nodesBetween($from.pos, $to.pos, function (node) {\n if (can) { return false }\n can = node.inlineContent && node.type.allowsMarkType(type);\n });\n if (can) { return { v: true } }\n };\n\n for (var i = 0; i < ranges.length; i++) {\n var returned = loop( i );\n\n if ( returned ) return returned.v;\n }\n return false\n}\n\n// :: (MarkType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Create a command function that toggles the given mark with the\n// given attributes. Will return `false` when the current selection\n// doesn't support that mark. This will remove the mark if any marks\n// of that type exist in the selection, or add it otherwise. If the\n// selection is empty, this applies to the [stored\n// marks](#state.EditorState.storedMarks) instead of a range of the\n// document.\nfunction toggleMark(markType, attrs) {\n return function(state, dispatch) {\n var ref = state.selection;\n var empty = ref.empty;\n var $cursor = ref.$cursor;\n var ranges = ref.ranges;\n if ((empty && !$cursor) || !markApplies(state.doc, ranges, markType)) { return false }\n if (dispatch) {\n if ($cursor) {\n if (markType.isInSet(state.storedMarks || $cursor.marks()))\n { dispatch(state.tr.removeStoredMark(markType)); }\n else\n { dispatch(state.tr.addStoredMark(markType.create(attrs))); }\n } else {\n var has = false, tr = state.tr;\n for (var i = 0; !has && i < ranges.length; i++) {\n var ref$1 = ranges[i];\n var $from = ref$1.$from;\n var $to = ref$1.$to;\n has = state.doc.rangeHasMark($from.pos, $to.pos, markType);\n }\n for (var i$1 = 0; i$1 < ranges.length; i$1++) {\n var ref$2 = ranges[i$1];\n var $from$1 = ref$2.$from;\n var $to$1 = ref$2.$to;\n if (has) { tr.removeMark($from$1.pos, $to$1.pos, markType); }\n else { tr.addMark($from$1.pos, $to$1.pos, markType.create(attrs)); }\n }\n dispatch(tr.scrollIntoView());\n }\n }\n return true\n }\n}\n\nfunction wrapDispatchForJoin(dispatch, isJoinable) {\n return function (tr) {\n if (!tr.isGeneric) { return dispatch(tr) }\n\n var ranges = [];\n for (var i = 0; i < tr.mapping.maps.length; i++) {\n var map = tr.mapping.maps[i];\n for (var j = 0; j < ranges.length; j++)\n { ranges[j] = map.map(ranges[j]); }\n map.forEach(function (_s, _e, from, to) { return ranges.push(from, to); });\n }\n\n // Figure out which joinable points exist inside those ranges,\n // by checking all node boundaries in their parent nodes.\n var joinable = [];\n for (var i$1 = 0; i$1 < ranges.length; i$1 += 2) {\n var from = ranges[i$1], to = ranges[i$1 + 1];\n var $from = tr.doc.resolve(from), depth = $from.sharedDepth(to), parent = $from.node(depth);\n for (var index = $from.indexAfter(depth), pos = $from.after(depth + 1); pos <= to; ++index) {\n var after = parent.maybeChild(index);\n if (!after) { break }\n if (index && joinable.indexOf(pos) == -1) {\n var before = parent.child(index - 1);\n if (before.type == after.type && isJoinable(before, after))\n { joinable.push(pos); }\n }\n pos += after.nodeSize;\n }\n }\n // Join the joinable points\n joinable.sort(function (a, b) { return a - b; });\n for (var i$2 = joinable.length - 1; i$2 >= 0; i$2--) {\n if (canJoin(tr.doc, joinable[i$2])) { tr.join(joinable[i$2]); }\n }\n dispatch(tr);\n }\n}\n\n// :: ((state: EditorState, ?(tr: Transaction)) → bool, union<(before: Node, after: Node) → bool, [string]>) → (state: EditorState, ?(tr: Transaction)) → bool\n// Wrap a command so that, when it produces a transform that causes\n// two joinable nodes to end up next to each other, those are joined.\n// Nodes are considered joinable when they are of the same type and\n// when the `isJoinable` predicate returns true for them or, if an\n// array of strings was passed, if their node type name is in that\n// array.\nfunction autoJoin(command, isJoinable) {\n if (Array.isArray(isJoinable)) {\n var types = isJoinable;\n isJoinable = function (node) { return types.indexOf(node.type.name) > -1; };\n }\n return function (state, dispatch) { return command(state, dispatch && wrapDispatchForJoin(dispatch, isJoinable)); }\n}\n\n// :: (...[(EditorState, ?(tr: Transaction), ?EditorView) → bool]) → (EditorState, ?(tr: Transaction), ?EditorView) → bool\n// Combine a number of command functions into a single function (which\n// calls them one by one until one returns true).\nfunction chainCommands() {\n var commands = [], len = arguments.length;\n while ( len-- ) commands[ len ] = arguments[ len ];\n\n return function(state, dispatch, view) {\n for (var i = 0; i < commands.length; i++)\n { if (commands[i](state, dispatch, view)) { return true } }\n return false\n }\n}\n\nvar backspace = chainCommands(deleteSelection, joinBackward, selectNodeBackward);\nvar del = chainCommands(deleteSelection, joinForward, selectNodeForward);\n\n// :: Object\n// A basic keymap containing bindings not specific to any schema.\n// Binds the following keys (when multiple commands are listed, they\n// are chained with [`chainCommands`](#commands.chainCommands)):\n//\n// * **Enter** to `newlineInCode`, `createParagraphNear`, `liftEmptyBlock`, `splitBlock`\n// * **Mod-Enter** to `exitCode`\n// * **Backspace** and **Mod-Backspace** to `deleteSelection`, `joinBackward`, `selectNodeBackward`\n// * **Delete** and **Mod-Delete** to `deleteSelection`, `joinForward`, `selectNodeForward`\n// * **Mod-Delete** to `deleteSelection`, `joinForward`, `selectNodeForward`\n// * **Mod-a** to `selectAll`\nvar pcBaseKeymap = {\n \"Enter\": chainCommands(newlineInCode, createParagraphNear, liftEmptyBlock, splitBlock),\n \"Mod-Enter\": exitCode,\n \"Backspace\": backspace,\n \"Mod-Backspace\": backspace,\n \"Delete\": del,\n \"Mod-Delete\": del,\n \"Mod-a\": selectAll\n};\n\n// :: Object\n// A copy of `pcBaseKeymap` that also binds **Ctrl-h** like Backspace,\n// **Ctrl-d** like Delete, **Alt-Backspace** like Ctrl-Backspace, and\n// **Ctrl-Alt-Backspace**, **Alt-Delete**, and **Alt-d** like\n// Ctrl-Delete.\nvar macBaseKeymap = {\n \"Ctrl-h\": pcBaseKeymap[\"Backspace\"],\n \"Alt-Backspace\": pcBaseKeymap[\"Mod-Backspace\"],\n \"Ctrl-d\": pcBaseKeymap[\"Delete\"],\n \"Ctrl-Alt-Backspace\": pcBaseKeymap[\"Mod-Delete\"],\n \"Alt-Delete\": pcBaseKeymap[\"Mod-Delete\"],\n \"Alt-d\": pcBaseKeymap[\"Mod-Delete\"]\n};\nfor (var key in pcBaseKeymap) { macBaseKeymap[key] = pcBaseKeymap[key]; }\n\n// declare global: os, navigator\nvar mac = typeof navigator != \"undefined\" ? /Mac/.test(navigator.platform)\n : typeof os != \"undefined\" ? os.platform() == \"darwin\" : false;\n\n// :: Object\n// Depending on the detected platform, this will hold\n// [`pcBasekeymap`](#commands.pcBaseKeymap) or\n// [`macBaseKeymap`](#commands.macBaseKeymap).\nvar baseKeymap = mac ? macBaseKeymap : pcBaseKeymap;\n\nexport { autoJoin, baseKeymap, chainCommands, createParagraphNear, deleteSelection, exitCode, joinBackward, joinDown, joinForward, joinUp, lift, liftEmptyBlock, macBaseKeymap, newlineInCode, pcBaseKeymap, selectAll, selectNodeBackward, selectNodeForward, selectParentNode, setBlockType, splitBlock, splitBlockKeepMarks, toggleMark, wrapIn };\n//# sourceMappingURL=index.es.js.map\n","'use strict'\n\nvar formatter = require('format')\n\nvar fault = create(Error)\n\nmodule.exports = fault\n\nfault.eval = create(EvalError)\nfault.range = create(RangeError)\nfault.reference = create(ReferenceError)\nfault.syntax = create(SyntaxError)\nfault.type = create(TypeError)\nfault.uri = create(URIError)\n\nfault.create = create\n\n// Create a new `EConstructor`, with the formatted `format` as a first argument.\nfunction create(EConstructor) {\n FormattedError.displayName = EConstructor.displayName || EConstructor.name\n\n return FormattedError\n\n function FormattedError(format) {\n if (format) {\n format = formatter.apply(null, arguments)\n }\n\n return new EConstructor(format)\n }\n}\n","import { ReplaceError, Slice, Fragment, MarkType } from 'prosemirror-model';\n\n// Mappable:: interface\n// There are several things that positions can be mapped through.\n// Such objects conform to this interface.\n//\n// map:: (pos: number, assoc: ?number) → number\n// Map a position through this object. When given, `assoc` (should\n// be -1 or 1, defaults to 1) determines with which side the\n// position is associated, which determines in which direction to\n// move when a chunk of content is inserted at the mapped position.\n//\n// mapResult:: (pos: number, assoc: ?number) → MapResult\n// Map a position, and return an object containing additional\n// information about the mapping. The result's `deleted` field tells\n// you whether the position was deleted (completely enclosed in a\n// replaced range) during the mapping. When content on only one side\n// is deleted, the position itself is only considered deleted when\n// `assoc` points in the direction of the deleted content.\n\n// Recovery values encode a range index and an offset. They are\n// represented as numbers, because tons of them will be created when\n// mapping, for example, a large number of decorations. The number's\n// lower 16 bits provide the index, the remaining bits the offset.\n//\n// Note: We intentionally don't use bit shift operators to en- and\n// decode these, since those clip to 32 bits, which we might in rare\n// cases want to overflow. A 64-bit float can represent 48-bit\n// integers precisely.\n\nvar lower16 = 0xffff;\nvar factor16 = Math.pow(2, 16);\n\nfunction makeRecover(index, offset) { return index + offset * factor16 }\nfunction recoverIndex(value) { return value & lower16 }\nfunction recoverOffset(value) { return (value - (value & lower16)) / factor16 }\n\n// ::- An object representing a mapped position with extra\n// information.\nvar MapResult = function MapResult(pos, deleted, recover) {\n if ( deleted === void 0 ) deleted = false;\n if ( recover === void 0 ) recover = null;\n\n // :: number The mapped version of the position.\n this.pos = pos;\n // :: bool Tells you whether the position was deleted, that is,\n // whether the step removed its surroundings from the document.\n this.deleted = deleted;\n this.recover = recover;\n};\n\n// :: class extends Mappable\n// A map describing the deletions and insertions made by a step, which\n// can be used to find the correspondence between positions in the\n// pre-step version of a document and the same position in the\n// post-step version.\nvar StepMap = function StepMap(ranges, inverted) {\n if ( inverted === void 0 ) inverted = false;\n\n this.ranges = ranges;\n this.inverted = inverted;\n};\n\nStepMap.prototype.recover = function recover (value) {\n var diff = 0, index = recoverIndex(value);\n if (!this.inverted) { for (var i = 0; i < index; i++)\n { diff += this.ranges[i * 3 + 2] - this.ranges[i * 3 + 1]; } }\n return this.ranges[index * 3] + diff + recoverOffset(value)\n};\n\n// : (number, ?number) → MapResult\nStepMap.prototype.mapResult = function mapResult (pos, assoc) {\n if ( assoc === void 0 ) assoc = 1;\n return this._map(pos, assoc, false) };\n\n// : (number, ?number) → number\nStepMap.prototype.map = function map (pos, assoc) {\n if ( assoc === void 0 ) assoc = 1;\n return this._map(pos, assoc, true) };\n\nStepMap.prototype._map = function _map (pos, assoc, simple) {\n var diff = 0, oldIndex = this.inverted ? 2 : 1, newIndex = this.inverted ? 1 : 2;\n for (var i = 0; i < this.ranges.length; i += 3) {\n var start = this.ranges[i] - (this.inverted ? diff : 0);\n if (start > pos) { break }\n var oldSize = this.ranges[i + oldIndex], newSize = this.ranges[i + newIndex], end = start + oldSize;\n if (pos <= end) {\n var side = !oldSize ? assoc : pos == start ? -1 : pos == end ? 1 : assoc;\n var result = start + diff + (side < 0 ? 0 : newSize);\n if (simple) { return result }\n var recover = pos == (assoc < 0 ? start : end) ? null : makeRecover(i / 3, pos - start);\n return new MapResult(result, assoc < 0 ? pos != start : pos != end, recover)\n }\n diff += newSize - oldSize;\n }\n return simple ? pos + diff : new MapResult(pos + diff)\n};\n\nStepMap.prototype.touches = function touches (pos, recover) {\n var diff = 0, index = recoverIndex(recover);\n var oldIndex = this.inverted ? 2 : 1, newIndex = this.inverted ? 1 : 2;\n for (var i = 0; i < this.ranges.length; i += 3) {\n var start = this.ranges[i] - (this.inverted ? diff : 0);\n if (start > pos) { break }\n var oldSize = this.ranges[i + oldIndex], end = start + oldSize;\n if (pos <= end && i == index * 3) { return true }\n diff += this.ranges[i + newIndex] - oldSize;\n }\n return false\n};\n\n// :: ((oldStart: number, oldEnd: number, newStart: number, newEnd: number))\n// Calls the given function on each of the changed ranges included in\n// this map.\nStepMap.prototype.forEach = function forEach (f) {\n var oldIndex = this.inverted ? 2 : 1, newIndex = this.inverted ? 1 : 2;\n for (var i = 0, diff = 0; i < this.ranges.length; i += 3) {\n var start = this.ranges[i], oldStart = start - (this.inverted ? diff : 0), newStart = start + (this.inverted ? 0 : diff);\n var oldSize = this.ranges[i + oldIndex], newSize = this.ranges[i + newIndex];\n f(oldStart, oldStart + oldSize, newStart, newStart + newSize);\n diff += newSize - oldSize;\n }\n};\n\n// :: () → StepMap\n// Create an inverted version of this map. The result can be used to\n// map positions in the post-step document to the pre-step document.\nStepMap.prototype.invert = function invert () {\n return new StepMap(this.ranges, !this.inverted)\n};\n\nStepMap.prototype.toString = function toString () {\n return (this.inverted ? \"-\" : \"\") + JSON.stringify(this.ranges)\n};\n\n// :: (n: number) → StepMap\n// Create a map that moves all positions by offset `n` (which may be\n// negative). This can be useful when applying steps meant for a\n// sub-document to a larger document, or vice-versa.\nStepMap.offset = function offset (n) {\n return n == 0 ? StepMap.empty : new StepMap(n < 0 ? [0, -n, 0] : [0, 0, n])\n};\n\nStepMap.empty = new StepMap([]);\n\n// :: class extends Mappable\n// A mapping represents a pipeline of zero or more [step\n// maps](#transform.StepMap). It has special provisions for losslessly\n// handling mapping positions through a series of steps in which some\n// steps are inverted versions of earlier steps. (This comes up when\n// ‘[rebasing](/docs/guide/#transform.rebasing)’ steps for\n// collaboration or history management.)\nvar Mapping = function Mapping(maps, mirror, from, to) {\n // :: [StepMap]\n // The step maps in this mapping.\n this.maps = maps || [];\n // :: number\n // The starting position in the `maps` array, used when `map` or\n // `mapResult` is called.\n this.from = from || 0;\n // :: number\n // The end position in the `maps` array.\n this.to = to == null ? this.maps.length : to;\n this.mirror = mirror;\n};\n\n// :: (?number, ?number) → Mapping\n// Create a mapping that maps only through a part of this one.\nMapping.prototype.slice = function slice (from, to) {\n if ( from === void 0 ) from = 0;\n if ( to === void 0 ) to = this.maps.length;\n\n return new Mapping(this.maps, this.mirror, from, to)\n};\n\nMapping.prototype.copy = function copy () {\n return new Mapping(this.maps.slice(), this.mirror && this.mirror.slice(), this.from, this.to)\n};\n\n// :: (StepMap, ?number)\n// Add a step map to the end of this mapping. If `mirrors` is\n// given, it should be the index of the step map that is the mirror\n// image of this one.\nMapping.prototype.appendMap = function appendMap (map, mirrors) {\n this.to = this.maps.push(map);\n if (mirrors != null) { this.setMirror(this.maps.length - 1, mirrors); }\n};\n\n// :: (Mapping)\n// Add all the step maps in a given mapping to this one (preserving\n// mirroring information).\nMapping.prototype.appendMapping = function appendMapping (mapping) {\n for (var i = 0, startSize = this.maps.length; i < mapping.maps.length; i++) {\n var mirr = mapping.getMirror(i);\n this.appendMap(mapping.maps[i], mirr != null && mirr < i ? startSize + mirr : null);\n }\n};\n\n// :: (number) → ?number\n// Finds the offset of the step map that mirrors the map at the\n// given offset, in this mapping (as per the second argument to\n// `appendMap`).\nMapping.prototype.getMirror = function getMirror (n) {\n if (this.mirror) { for (var i = 0; i < this.mirror.length; i++)\n { if (this.mirror[i] == n) { return this.mirror[i + (i % 2 ? -1 : 1)] } } }\n};\n\nMapping.prototype.setMirror = function setMirror (n, m) {\n if (!this.mirror) { this.mirror = []; }\n this.mirror.push(n, m);\n};\n\n// :: (Mapping)\n// Append the inverse of the given mapping to this one.\nMapping.prototype.appendMappingInverted = function appendMappingInverted (mapping) {\n for (var i = mapping.maps.length - 1, totalSize = this.maps.length + mapping.maps.length; i >= 0; i--) {\n var mirr = mapping.getMirror(i);\n this.appendMap(mapping.maps[i].invert(), mirr != null && mirr > i ? totalSize - mirr - 1 : null);\n }\n};\n\n// :: () → Mapping\n// Create an inverted version of this mapping.\nMapping.prototype.invert = function invert () {\n var inverse = new Mapping;\n inverse.appendMappingInverted(this);\n return inverse\n};\n\n// : (number, ?number) → number\n// Map a position through this mapping.\nMapping.prototype.map = function map (pos, assoc) {\n if ( assoc === void 0 ) assoc = 1;\n\n if (this.mirror) { return this._map(pos, assoc, true) }\n for (var i = this.from; i < this.to; i++)\n { pos = this.maps[i].map(pos, assoc); }\n return pos\n};\n\n// : (number, ?number) → MapResult\n// Map a position through this mapping, returning a mapping\n// result.\nMapping.prototype.mapResult = function mapResult (pos, assoc) {\n if ( assoc === void 0 ) assoc = 1;\n return this._map(pos, assoc, false) };\n\nMapping.prototype._map = function _map (pos, assoc, simple) {\n var deleted = false;\n\n for (var i = this.from; i < this.to; i++) {\n var map = this.maps[i], result = map.mapResult(pos, assoc);\n if (result.recover != null) {\n var corr = this.getMirror(i);\n if (corr != null && corr > i && corr < this.to) {\n i = corr;\n pos = this.maps[corr].recover(result.recover);\n continue\n }\n }\n\n if (result.deleted) { deleted = true; }\n pos = result.pos;\n }\n\n return simple ? pos : new MapResult(pos, deleted)\n};\n\nfunction TransformError(message) {\n var err = Error.call(this, message);\n err.__proto__ = TransformError.prototype;\n return err\n}\n\nTransformError.prototype = Object.create(Error.prototype);\nTransformError.prototype.constructor = TransformError;\nTransformError.prototype.name = \"TransformError\";\n\n// ::- Abstraction to build up and track an array of\n// [steps](#transform.Step) representing a document transformation.\n//\n// Most transforming methods return the `Transform` object itself, so\n// that they can be chained.\nvar Transform = function Transform(doc) {\n // :: Node\n // The current document (the result of applying the steps in the\n // transform).\n this.doc = doc;\n // :: [Step]\n // The steps in this transform.\n this.steps = [];\n // :: [Node]\n // The documents before each of the steps.\n this.docs = [];\n // :: Mapping\n // A mapping with the maps for each of the steps in this transform.\n this.mapping = new Mapping;\n};\n\nvar prototypeAccessors = { before: { configurable: true },docChanged: { configurable: true } };\n\n// :: Node The starting document.\nprototypeAccessors.before.get = function () { return this.docs.length ? this.docs[0] : this.doc };\n\n// :: (step: Step) → this\n// Apply a new step in this transform, saving the result. Throws an\n// error when the step fails.\nTransform.prototype.step = function step (object) {\n var result = this.maybeStep(object);\n if (result.failed) { throw new TransformError(result.failed) }\n return this\n};\n\n// :: (Step) → StepResult\n// Try to apply a step in this transformation, ignoring it if it\n// fails. Returns the step result.\nTransform.prototype.maybeStep = function maybeStep (step) {\n var result = step.apply(this.doc);\n if (!result.failed) { this.addStep(step, result.doc); }\n return result\n};\n\n// :: bool\n// True when the document has been changed (when there are any\n// steps).\nprototypeAccessors.docChanged.get = function () {\n return this.steps.length > 0\n};\n\nTransform.prototype.addStep = function addStep (step, doc) {\n this.docs.push(this.doc);\n this.steps.push(step);\n this.mapping.appendMap(step.getMap());\n this.doc = doc;\n};\n\nObject.defineProperties( Transform.prototype, prototypeAccessors );\n\nfunction mustOverride() { throw new Error(\"Override me\") }\n\nvar stepsByID = Object.create(null);\n\n// ::- A step object represents an atomic change. It generally applies\n// only to the document it was created for, since the positions\n// stored in it will only make sense for that document.\n//\n// New steps are defined by creating classes that extend `Step`,\n// overriding the `apply`, `invert`, `map`, `getMap` and `fromJSON`\n// methods, and registering your class with a unique\n// JSON-serialization identifier using\n// [`Step.jsonID`](#transform.Step^jsonID).\nvar Step = function Step () {};\n\nStep.prototype.apply = function apply (_doc) { return mustOverride() };\n\n// :: () → StepMap\n// Get the step map that represents the changes made by this step,\n// and which can be used to transform between positions in the old\n// and the new document.\nStep.prototype.getMap = function getMap () { return StepMap.empty };\n\n// :: (doc: Node) → Step\n// Create an inverted version of this step. Needs the document as it\n// was before the step as argument.\nStep.prototype.invert = function invert (_doc) { return mustOverride() };\n\n// :: (mapping: Mappable) → ?Step\n// Map this step through a mappable thing, returning either a\n// version of that step with its positions adjusted, or `null` if\n// the step was entirely deleted by the mapping.\nStep.prototype.map = function map (_mapping) { return mustOverride() };\n\n// :: (other: Step) → ?Step\n// Try to merge this step with another one, to be applied directly\n// after it. Returns the merged step when possible, null if the\n// steps can't be merged.\nStep.prototype.merge = function merge (_other) { return null };\n\n// :: () → Object\n// Create a JSON-serializeable representation of this step. When\n// defining this for a custom subclass, make sure the result object\n// includes the step type's [JSON id](#transform.Step^jsonID) under\n// the `stepType` property.\nStep.prototype.toJSON = function toJSON () { return mustOverride() };\n\n// :: (Schema, Object) → Step\n// Deserialize a step from its JSON representation. Will call\n// through to the step class' own implementation of this method.\nStep.fromJSON = function fromJSON (schema, json) {\n if (!json || !json.stepType) { throw new RangeError(\"Invalid input for Step.fromJSON\") }\n var type = stepsByID[json.stepType];\n if (!type) { throw new RangeError((\"No step type \" + (json.stepType) + \" defined\")) }\n return type.fromJSON(schema, json)\n};\n\n// :: (string, constructor<Step>)\n// To be able to serialize steps to JSON, each step needs a string\n// ID to attach to its JSON representation. Use this method to\n// register an ID for your step classes. Try to pick something\n// that's unlikely to clash with steps from other modules.\nStep.jsonID = function jsonID (id, stepClass) {\n if (id in stepsByID) { throw new RangeError(\"Duplicate use of step JSON ID \" + id) }\n stepsByID[id] = stepClass;\n stepClass.prototype.jsonID = id;\n return stepClass\n};\n\n// ::- The result of [applying](#transform.Step.apply) a step. Contains either a\n// new document or a failure value.\nvar StepResult = function StepResult(doc, failed) {\n // :: ?Node The transformed document.\n this.doc = doc;\n // :: ?string Text providing information about a failed step.\n this.failed = failed;\n};\n\n// :: (Node) → StepResult\n// Create a successful step result.\nStepResult.ok = function ok (doc) { return new StepResult(doc, null) };\n\n// :: (string) → StepResult\n// Create a failed step result.\nStepResult.fail = function fail (message) { return new StepResult(null, message) };\n\n// :: (Node, number, number, Slice) → StepResult\n// Call [`Node.replace`](#model.Node.replace) with the given\n// arguments. Create a successful result if it succeeds, and a\n// failed one if it throws a `ReplaceError`.\nStepResult.fromReplace = function fromReplace (doc, from, to, slice) {\n try {\n return StepResult.ok(doc.replace(from, to, slice))\n } catch (e) {\n if (e instanceof ReplaceError) { return StepResult.fail(e.message) }\n throw e\n }\n};\n\n// ::- Replace a part of the document with a slice of new content.\nvar ReplaceStep = /*@__PURE__*/(function (Step) {\n function ReplaceStep(from, to, slice, structure) {\n Step.call(this);\n this.from = from;\n this.to = to;\n this.slice = slice;\n this.structure = !!structure;\n }\n\n if ( Step ) ReplaceStep.__proto__ = Step;\n ReplaceStep.prototype = Object.create( Step && Step.prototype );\n ReplaceStep.prototype.constructor = ReplaceStep;\n\n ReplaceStep.prototype.apply = function apply (doc) {\n if (this.structure && contentBetween(doc, this.from, this.to))\n { return StepResult.fail(\"Structure replace would overwrite content\") }\n return StepResult.fromReplace(doc, this.from, this.to, this.slice)\n };\n\n ReplaceStep.prototype.getMap = function getMap () {\n return new StepMap([this.from, this.to - this.from, this.slice.size])\n };\n\n ReplaceStep.prototype.invert = function invert (doc) {\n return new ReplaceStep(this.from, this.from + this.slice.size, doc.slice(this.from, this.to))\n };\n\n ReplaceStep.prototype.map = function map (mapping) {\n var from = mapping.mapResult(this.from, 1), to = mapping.mapResult(this.to, -1);\n if (from.deleted && to.deleted) { return null }\n return new ReplaceStep(from.pos, Math.max(from.pos, to.pos), this.slice)\n };\n\n ReplaceStep.prototype.merge = function merge (other) {\n if (!(other instanceof ReplaceStep) || other.structure != this.structure) { return null }\n\n if (this.from + this.slice.size == other.from && !this.slice.openEnd && !other.slice.openStart) {\n var slice = this.slice.size + other.slice.size == 0 ? Slice.empty\n : new Slice(this.slice.content.append(other.slice.content), this.slice.openStart, other.slice.openEnd);\n return new ReplaceStep(this.from, this.to + (other.to - other.from), slice, this.structure)\n } else if (other.to == this.from && !this.slice.openStart && !other.slice.openEnd) {\n var slice$1 = this.slice.size + other.slice.size == 0 ? Slice.empty\n : new Slice(other.slice.content.append(this.slice.content), other.slice.openStart, this.slice.openEnd);\n return new ReplaceStep(other.from, this.to, slice$1, this.structure)\n } else {\n return null\n }\n };\n\n ReplaceStep.prototype.toJSON = function toJSON () {\n var json = {stepType: \"replace\", from: this.from, to: this.to};\n if (this.slice.size) { json.slice = this.slice.toJSON(); }\n if (this.structure) { json.structure = true; }\n return json\n };\n\n ReplaceStep.fromJSON = function fromJSON (schema, json) {\n if (typeof json.from != \"number\" || typeof json.to != \"number\")\n { throw new RangeError(\"Invalid input for ReplaceStep.fromJSON\") }\n return new ReplaceStep(json.from, json.to, Slice.fromJSON(schema, json.slice), !!json.structure)\n };\n\n return ReplaceStep;\n}(Step));\n\nStep.jsonID(\"replace\", ReplaceStep);\n\n// ::- Replace a part of the document with a slice of content, but\n// preserve a range of the replaced content by moving it into the\n// slice.\nvar ReplaceAroundStep = /*@__PURE__*/(function (Step) {\n function ReplaceAroundStep(from, to, gapFrom, gapTo, slice, insert, structure) {\n Step.call(this);\n this.from = from;\n this.to = to;\n this.gapFrom = gapFrom;\n this.gapTo = gapTo;\n this.slice = slice;\n this.insert = insert;\n this.structure = !!structure;\n }\n\n if ( Step ) ReplaceAroundStep.__proto__ = Step;\n ReplaceAroundStep.prototype = Object.create( Step && Step.prototype );\n ReplaceAroundStep.prototype.constructor = ReplaceAroundStep;\n\n ReplaceAroundStep.prototype.apply = function apply (doc) {\n if (this.structure && (contentBetween(doc, this.from, this.gapFrom) ||\n contentBetween(doc, this.gapTo, this.to)))\n { return StepResult.fail(\"Structure gap-replace would overwrite content\") }\n\n var gap = doc.slice(this.gapFrom, this.gapTo);\n if (gap.openStart || gap.openEnd)\n { return StepResult.fail(\"Gap is not a flat range\") }\n var inserted = this.slice.insertAt(this.insert, gap.content);\n if (!inserted) { return StepResult.fail(\"Content does not fit in gap\") }\n return StepResult.fromReplace(doc, this.from, this.to, inserted)\n };\n\n ReplaceAroundStep.prototype.getMap = function getMap () {\n return new StepMap([this.from, this.gapFrom - this.from, this.insert,\n this.gapTo, this.to - this.gapTo, this.slice.size - this.insert])\n };\n\n ReplaceAroundStep.prototype.invert = function invert (doc) {\n var gap = this.gapTo - this.gapFrom;\n return new ReplaceAroundStep(this.from, this.from + this.slice.size + gap,\n this.from + this.insert, this.from + this.insert + gap,\n doc.slice(this.from, this.to).removeBetween(this.gapFrom - this.from, this.gapTo - this.from),\n this.gapFrom - this.from, this.structure)\n };\n\n ReplaceAroundStep.prototype.map = function map (mapping) {\n var from = mapping.mapResult(this.from, 1), to = mapping.mapResult(this.to, -1);\n var gapFrom = mapping.map(this.gapFrom, -1), gapTo = mapping.map(this.gapTo, 1);\n if ((from.deleted && to.deleted) || gapFrom < from.pos || gapTo > to.pos) { return null }\n return new ReplaceAroundStep(from.pos, to.pos, gapFrom, gapTo, this.slice, this.insert, this.structure)\n };\n\n ReplaceAroundStep.prototype.toJSON = function toJSON () {\n var json = {stepType: \"replaceAround\", from: this.from, to: this.to,\n gapFrom: this.gapFrom, gapTo: this.gapTo, insert: this.insert};\n if (this.slice.size) { json.slice = this.slice.toJSON(); }\n if (this.structure) { json.structure = true; }\n return json\n };\n\n ReplaceAroundStep.fromJSON = function fromJSON (schema, json) {\n if (typeof json.from != \"number\" || typeof json.to != \"number\" ||\n typeof json.gapFrom != \"number\" || typeof json.gapTo != \"number\" || typeof json.insert != \"number\")\n { throw new RangeError(\"Invalid input for ReplaceAroundStep.fromJSON\") }\n return new ReplaceAroundStep(json.from, json.to, json.gapFrom, json.gapTo,\n Slice.fromJSON(schema, json.slice), json.insert, !!json.structure)\n };\n\n return ReplaceAroundStep;\n}(Step));\n\nStep.jsonID(\"replaceAround\", ReplaceAroundStep);\n\nfunction contentBetween(doc, from, to) {\n var $from = doc.resolve(from), dist = to - from, depth = $from.depth;\n while (dist > 0 && depth > 0 && $from.indexAfter(depth) == $from.node(depth).childCount) {\n depth--;\n dist--;\n }\n if (dist > 0) {\n var next = $from.node(depth).maybeChild($from.indexAfter(depth));\n while (dist > 0) {\n if (!next || next.isLeaf) { return true }\n next = next.firstChild;\n dist--;\n }\n }\n return false\n}\n\nfunction canCut(node, start, end) {\n return (start == 0 || node.canReplace(start, node.childCount)) &&\n (end == node.childCount || node.canReplace(0, end))\n}\n\n// :: (NodeRange) → ?number\n// Try to find a target depth to which the content in the given range\n// can be lifted. Will not go across\n// [isolating](#model.NodeSpec.isolating) parent nodes.\nfunction liftTarget(range) {\n var parent = range.parent;\n var content = parent.content.cutByIndex(range.startIndex, range.endIndex);\n for (var depth = range.depth;; --depth) {\n var node = range.$from.node(depth);\n var index = range.$from.index(depth), endIndex = range.$to.indexAfter(depth);\n if (depth < range.depth && node.canReplace(index, endIndex, content))\n { return depth }\n if (depth == 0 || node.type.spec.isolating || !canCut(node, index, endIndex)) { break }\n }\n}\n\n// :: (NodeRange, number) → this\n// Split the content in the given range off from its parent, if there\n// is sibling content before or after it, and move it up the tree to\n// the depth specified by `target`. You'll probably want to use\n// [`liftTarget`](#transform.liftTarget) to compute `target`, to make\n// sure the lift is valid.\nTransform.prototype.lift = function(range, target) {\n var $from = range.$from;\n var $to = range.$to;\n var depth = range.depth;\n\n var gapStart = $from.before(depth + 1), gapEnd = $to.after(depth + 1);\n var start = gapStart, end = gapEnd;\n\n var before = Fragment.empty, openStart = 0;\n for (var d = depth, splitting = false; d > target; d--)\n { if (splitting || $from.index(d) > 0) {\n splitting = true;\n before = Fragment.from($from.node(d).copy(before));\n openStart++;\n } else {\n start--;\n } }\n var after = Fragment.empty, openEnd = 0;\n for (var d$1 = depth, splitting$1 = false; d$1 > target; d$1--)\n { if (splitting$1 || $to.after(d$1 + 1) < $to.end(d$1)) {\n splitting$1 = true;\n after = Fragment.from($to.node(d$1).copy(after));\n openEnd++;\n } else {\n end++;\n } }\n\n return this.step(new ReplaceAroundStep(start, end, gapStart, gapEnd,\n new Slice(before.append(after), openStart, openEnd),\n before.size - openStart, true))\n};\n\n// :: (NodeRange, NodeType, ?Object, ?NodeRange) → ?[{type: NodeType, attrs: ?Object}]\n// Try to find a valid way to wrap the content in the given range in a\n// node of the given type. May introduce extra nodes around and inside\n// the wrapper node, if necessary. Returns null if no valid wrapping\n// could be found. When `innerRange` is given, that range's content is\n// used as the content to fit into the wrapping, instead of the\n// content of `range`.\nfunction findWrapping(range, nodeType, attrs, innerRange) {\n if ( innerRange === void 0 ) innerRange = range;\n\n var around = findWrappingOutside(range, nodeType);\n var inner = around && findWrappingInside(innerRange, nodeType);\n if (!inner) { return null }\n return around.map(withAttrs).concat({type: nodeType, attrs: attrs}).concat(inner.map(withAttrs))\n}\n\nfunction withAttrs(type) { return {type: type, attrs: null} }\n\nfunction findWrappingOutside(range, type) {\n var parent = range.parent;\n var startIndex = range.startIndex;\n var endIndex = range.endIndex;\n var around = parent.contentMatchAt(startIndex).findWrapping(type);\n if (!around) { return null }\n var outer = around.length ? around[0] : type;\n return parent.canReplaceWith(startIndex, endIndex, outer) ? around : null\n}\n\nfunction findWrappingInside(range, type) {\n var parent = range.parent;\n var startIndex = range.startIndex;\n var endIndex = range.endIndex;\n var inner = parent.child(startIndex);\n var inside = type.contentMatch.findWrapping(inner.type);\n if (!inside) { return null }\n var lastType = inside.length ? inside[inside.length - 1] : type;\n var innerMatch = lastType.contentMatch;\n for (var i = startIndex; innerMatch && i < endIndex; i++)\n { innerMatch = innerMatch.matchType(parent.child(i).type); }\n if (!innerMatch || !innerMatch.validEnd) { return null }\n return inside\n}\n\n// :: (NodeRange, [{type: NodeType, attrs: ?Object}]) → this\n// Wrap the given [range](#model.NodeRange) in the given set of wrappers.\n// The wrappers are assumed to be valid in this position, and should\n// probably be computed with [`findWrapping`](#transform.findWrapping).\nTransform.prototype.wrap = function(range, wrappers) {\n var content = Fragment.empty;\n for (var i = wrappers.length - 1; i >= 0; i--)\n { content = Fragment.from(wrappers[i].type.create(wrappers[i].attrs, content)); }\n\n var start = range.start, end = range.end;\n return this.step(new ReplaceAroundStep(start, end, start, end, new Slice(content, 0, 0), wrappers.length, true))\n};\n\n// :: (number, ?number, NodeType, ?Object) → this\n// Set the type of all textblocks (partly) between `from` and `to` to\n// the given node type with the given attributes.\nTransform.prototype.setBlockType = function(from, to, type, attrs) {\n var this$1 = this;\n if ( to === void 0 ) to = from;\n\n if (!type.isTextblock) { throw new RangeError(\"Type given to setBlockType should be a textblock\") }\n var mapFrom = this.steps.length;\n this.doc.nodesBetween(from, to, function (node, pos) {\n if (node.isTextblock && !node.hasMarkup(type, attrs) && canChangeType(this$1.doc, this$1.mapping.slice(mapFrom).map(pos), type)) {\n // Ensure all markup that isn't allowed in the new node type is cleared\n this$1.clearIncompatible(this$1.mapping.slice(mapFrom).map(pos, 1), type);\n var mapping = this$1.mapping.slice(mapFrom);\n var startM = mapping.map(pos, 1), endM = mapping.map(pos + node.nodeSize, 1);\n this$1.step(new ReplaceAroundStep(startM, endM, startM + 1, endM - 1,\n new Slice(Fragment.from(type.create(attrs, null, node.marks)), 0, 0), 1, true));\n return false\n }\n });\n return this\n};\n\nfunction canChangeType(doc, pos, type) {\n var $pos = doc.resolve(pos), index = $pos.index();\n return $pos.parent.canReplaceWith(index, index + 1, type)\n}\n\n// :: (number, ?NodeType, ?Object, ?[Mark]) → this\n// Change the type, attributes, and/or marks of the node at `pos`.\n// When `type` isn't given, the existing node type is preserved,\nTransform.prototype.setNodeMarkup = function(pos, type, attrs, marks) {\n var node = this.doc.nodeAt(pos);\n if (!node) { throw new RangeError(\"No node at given position\") }\n if (!type) { type = node.type; }\n var newNode = type.create(attrs, null, marks || node.marks);\n if (node.isLeaf)\n { return this.replaceWith(pos, pos + node.nodeSize, newNode) }\n\n if (!type.validContent(node.content))\n { throw new RangeError(\"Invalid content for node type \" + type.name) }\n\n return this.step(new ReplaceAroundStep(pos, pos + node.nodeSize, pos + 1, pos + node.nodeSize - 1,\n new Slice(Fragment.from(newNode), 0, 0), 1, true))\n};\n\n// :: (Node, number, number, ?[?{type: NodeType, attrs: ?Object}]) → bool\n// Check whether splitting at the given position is allowed.\nfunction canSplit(doc, pos, depth, typesAfter) {\n if ( depth === void 0 ) depth = 1;\n\n var $pos = doc.resolve(pos), base = $pos.depth - depth;\n var innerType = (typesAfter && typesAfter[typesAfter.length - 1]) || $pos.parent;\n if (base < 0 || $pos.parent.type.spec.isolating ||\n !$pos.parent.canReplace($pos.index(), $pos.parent.childCount) ||\n !innerType.type.validContent($pos.parent.content.cutByIndex($pos.index(), $pos.parent.childCount)))\n { return false }\n for (var d = $pos.depth - 1, i = depth - 2; d > base; d--, i--) {\n var node = $pos.node(d), index$1 = $pos.index(d);\n if (node.type.spec.isolating) { return false }\n var rest = node.content.cutByIndex(index$1, node.childCount);\n var after = (typesAfter && typesAfter[i]) || node;\n if (after != node) { rest = rest.replaceChild(0, after.type.create(after.attrs)); }\n if (!node.canReplace(index$1 + 1, node.childCount) || !after.type.validContent(rest))\n { return false }\n }\n var index = $pos.indexAfter(base);\n var baseType = typesAfter && typesAfter[0];\n return $pos.node(base).canReplaceWith(index, index, baseType ? baseType.type : $pos.node(base + 1).type)\n}\n\n// :: (number, ?number, ?[?{type: NodeType, attrs: ?Object}]) → this\n// Split the node at the given position, and optionally, if `depth` is\n// greater than one, any number of nodes above that. By default, the\n// parts split off will inherit the node type of the original node.\n// This can be changed by passing an array of types and attributes to\n// use after the split.\nTransform.prototype.split = function(pos, depth, typesAfter) {\n if ( depth === void 0 ) depth = 1;\n\n var $pos = this.doc.resolve(pos), before = Fragment.empty, after = Fragment.empty;\n for (var d = $pos.depth, e = $pos.depth - depth, i = depth - 1; d > e; d--, i--) {\n before = Fragment.from($pos.node(d).copy(before));\n var typeAfter = typesAfter && typesAfter[i];\n after = Fragment.from(typeAfter ? typeAfter.type.create(typeAfter.attrs, after) : $pos.node(d).copy(after));\n }\n return this.step(new ReplaceStep(pos, pos, new Slice(before.append(after), depth, depth), true))\n};\n\n// :: (Node, number) → bool\n// Test whether the blocks before and after a given position can be\n// joined.\nfunction canJoin(doc, pos) {\n var $pos = doc.resolve(pos), index = $pos.index();\n return joinable($pos.nodeBefore, $pos.nodeAfter) &&\n $pos.parent.canReplace(index, index + 1)\n}\n\nfunction joinable(a, b) {\n return a && b && !a.isLeaf && a.canAppend(b)\n}\n\n// :: (Node, number, ?number) → ?number\n// Find an ancestor of the given position that can be joined to the\n// block before (or after if `dir` is positive). Returns the joinable\n// point, if any.\nfunction joinPoint(doc, pos, dir) {\n if ( dir === void 0 ) dir = -1;\n\n var $pos = doc.resolve(pos);\n for (var d = $pos.depth;; d--) {\n var before = (void 0), after = (void 0), index = $pos.index(d);\n if (d == $pos.depth) {\n before = $pos.nodeBefore;\n after = $pos.nodeAfter;\n } else if (dir > 0) {\n before = $pos.node(d + 1);\n index++;\n after = $pos.node(d).maybeChild(index);\n } else {\n before = $pos.node(d).maybeChild(index - 1);\n after = $pos.node(d + 1);\n }\n if (before && !before.isTextblock && joinable(before, after) &&\n $pos.node(d).canReplace(index, index + 1)) { return pos }\n if (d == 0) { break }\n pos = dir < 0 ? $pos.before(d) : $pos.after(d);\n }\n}\n\n// :: (number, ?number) → this\n// Join the blocks around the given position. If depth is 2, their\n// last and first siblings are also joined, and so on.\nTransform.prototype.join = function(pos, depth) {\n if ( depth === void 0 ) depth = 1;\n\n var step = new ReplaceStep(pos - depth, pos + depth, Slice.empty, true);\n return this.step(step)\n};\n\n// :: (Node, number, NodeType) → ?number\n// Try to find a point where a node of the given type can be inserted\n// near `pos`, by searching up the node hierarchy when `pos` itself\n// isn't a valid place but is at the start or end of a node. Return\n// null if no position was found.\nfunction insertPoint(doc, pos, nodeType) {\n var $pos = doc.resolve(pos);\n if ($pos.parent.canReplaceWith($pos.index(), $pos.index(), nodeType)) { return pos }\n\n if ($pos.parentOffset == 0)\n { for (var d = $pos.depth - 1; d >= 0; d--) {\n var index = $pos.index(d);\n if ($pos.node(d).canReplaceWith(index, index, nodeType)) { return $pos.before(d + 1) }\n if (index > 0) { return null }\n } }\n if ($pos.parentOffset == $pos.parent.content.size)\n { for (var d$1 = $pos.depth - 1; d$1 >= 0; d$1--) {\n var index$1 = $pos.indexAfter(d$1);\n if ($pos.node(d$1).canReplaceWith(index$1, index$1, nodeType)) { return $pos.after(d$1 + 1) }\n if (index$1 < $pos.node(d$1).childCount) { return null }\n } }\n}\n\n// :: (Node, number, Slice) → ?number\n// Finds a position at or around the given position where the given\n// slice can be inserted. Will look at parent nodes' nearest boundary\n// and try there, even if the original position wasn't directly at the\n// start or end of that node. Returns null when no position was found.\nfunction dropPoint(doc, pos, slice) {\n var $pos = doc.resolve(pos);\n if (!slice.content.size) { return pos }\n var content = slice.content;\n for (var i = 0; i < slice.openStart; i++) { content = content.firstChild.content; }\n for (var pass = 1; pass <= (slice.openStart == 0 && slice.size ? 2 : 1); pass++) {\n for (var d = $pos.depth; d >= 0; d--) {\n var bias = d == $pos.depth ? 0 : $pos.pos <= ($pos.start(d + 1) + $pos.end(d + 1)) / 2 ? -1 : 1;\n var insertPos = $pos.index(d) + (bias > 0 ? 1 : 0);\n if (pass == 1\n ? $pos.node(d).canReplace(insertPos, insertPos, content)\n : $pos.node(d).contentMatchAt(insertPos).findWrapping(content.firstChild.type))\n { return bias == 0 ? $pos.pos : bias < 0 ? $pos.before(d + 1) : $pos.after(d + 1) }\n }\n }\n return null\n}\n\nfunction mapFragment(fragment, f, parent) {\n var mapped = [];\n for (var i = 0; i < fragment.childCount; i++) {\n var child = fragment.child(i);\n if (child.content.size) { child = child.copy(mapFragment(child.content, f, child)); }\n if (child.isInline) { child = f(child, parent, i); }\n mapped.push(child);\n }\n return Fragment.fromArray(mapped)\n}\n\n// ::- Add a mark to all inline content between two positions.\nvar AddMarkStep = /*@__PURE__*/(function (Step) {\n function AddMarkStep(from, to, mark) {\n Step.call(this);\n this.from = from;\n this.to = to;\n this.mark = mark;\n }\n\n if ( Step ) AddMarkStep.__proto__ = Step;\n AddMarkStep.prototype = Object.create( Step && Step.prototype );\n AddMarkStep.prototype.constructor = AddMarkStep;\n\n AddMarkStep.prototype.apply = function apply (doc) {\n var this$1 = this;\n\n var oldSlice = doc.slice(this.from, this.to), $from = doc.resolve(this.from);\n var parent = $from.node($from.sharedDepth(this.to));\n var slice = new Slice(mapFragment(oldSlice.content, function (node, parent) {\n if (!parent.type.allowsMarkType(this$1.mark.type)) { return node }\n return node.mark(this$1.mark.addToSet(node.marks))\n }, parent), oldSlice.openStart, oldSlice.openEnd);\n return StepResult.fromReplace(doc, this.from, this.to, slice)\n };\n\n AddMarkStep.prototype.invert = function invert () {\n return new RemoveMarkStep(this.from, this.to, this.mark)\n };\n\n AddMarkStep.prototype.map = function map (mapping) {\n var from = mapping.mapResult(this.from, 1), to = mapping.mapResult(this.to, -1);\n if (from.deleted && to.deleted || from.pos >= to.pos) { return null }\n return new AddMarkStep(from.pos, to.pos, this.mark)\n };\n\n AddMarkStep.prototype.merge = function merge (other) {\n if (other instanceof AddMarkStep &&\n other.mark.eq(this.mark) &&\n this.from <= other.to && this.to >= other.from)\n { return new AddMarkStep(Math.min(this.from, other.from),\n Math.max(this.to, other.to), this.mark) }\n };\n\n AddMarkStep.prototype.toJSON = function toJSON () {\n return {stepType: \"addMark\", mark: this.mark.toJSON(),\n from: this.from, to: this.to}\n };\n\n AddMarkStep.fromJSON = function fromJSON (schema, json) {\n if (typeof json.from != \"number\" || typeof json.to != \"number\")\n { throw new RangeError(\"Invalid input for AddMarkStep.fromJSON\") }\n return new AddMarkStep(json.from, json.to, schema.markFromJSON(json.mark))\n };\n\n return AddMarkStep;\n}(Step));\n\nStep.jsonID(\"addMark\", AddMarkStep);\n\n// ::- Remove a mark from all inline content between two positions.\nvar RemoveMarkStep = /*@__PURE__*/(function (Step) {\n function RemoveMarkStep(from, to, mark) {\n Step.call(this);\n this.from = from;\n this.to = to;\n this.mark = mark;\n }\n\n if ( Step ) RemoveMarkStep.__proto__ = Step;\n RemoveMarkStep.prototype = Object.create( Step && Step.prototype );\n RemoveMarkStep.prototype.constructor = RemoveMarkStep;\n\n RemoveMarkStep.prototype.apply = function apply (doc) {\n var this$1 = this;\n\n var oldSlice = doc.slice(this.from, this.to);\n var slice = new Slice(mapFragment(oldSlice.content, function (node) {\n return node.mark(this$1.mark.removeFromSet(node.marks))\n }), oldSlice.openStart, oldSlice.openEnd);\n return StepResult.fromReplace(doc, this.from, this.to, slice)\n };\n\n RemoveMarkStep.prototype.invert = function invert () {\n return new AddMarkStep(this.from, this.to, this.mark)\n };\n\n RemoveMarkStep.prototype.map = function map (mapping) {\n var from = mapping.mapResult(this.from, 1), to = mapping.mapResult(this.to, -1);\n if (from.deleted && to.deleted || from.pos >= to.pos) { return null }\n return new RemoveMarkStep(from.pos, to.pos, this.mark)\n };\n\n RemoveMarkStep.prototype.merge = function merge (other) {\n if (other instanceof RemoveMarkStep &&\n other.mark.eq(this.mark) &&\n this.from <= other.to && this.to >= other.from)\n { return new RemoveMarkStep(Math.min(this.from, other.from),\n Math.max(this.to, other.to), this.mark) }\n };\n\n RemoveMarkStep.prototype.toJSON = function toJSON () {\n return {stepType: \"removeMark\", mark: this.mark.toJSON(),\n from: this.from, to: this.to}\n };\n\n RemoveMarkStep.fromJSON = function fromJSON (schema, json) {\n if (typeof json.from != \"number\" || typeof json.to != \"number\")\n { throw new RangeError(\"Invalid input for RemoveMarkStep.fromJSON\") }\n return new RemoveMarkStep(json.from, json.to, schema.markFromJSON(json.mark))\n };\n\n return RemoveMarkStep;\n}(Step));\n\nStep.jsonID(\"removeMark\", RemoveMarkStep);\n\n// :: (number, number, Mark) → this\n// Add the given mark to the inline content between `from` and `to`.\nTransform.prototype.addMark = function(from, to, mark) {\n var this$1 = this;\n\n var removed = [], added = [], removing = null, adding = null;\n this.doc.nodesBetween(from, to, function (node, pos, parent) {\n if (!node.isInline) { return }\n var marks = node.marks;\n if (!mark.isInSet(marks) && parent.type.allowsMarkType(mark.type)) {\n var start = Math.max(pos, from), end = Math.min(pos + node.nodeSize, to);\n var newSet = mark.addToSet(marks);\n\n for (var i = 0; i < marks.length; i++) {\n if (!marks[i].isInSet(newSet)) {\n if (removing && removing.to == start && removing.mark.eq(marks[i]))\n { removing.to = end; }\n else\n { removed.push(removing = new RemoveMarkStep(start, end, marks[i])); }\n }\n }\n\n if (adding && adding.to == start)\n { adding.to = end; }\n else\n { added.push(adding = new AddMarkStep(start, end, mark)); }\n }\n });\n\n removed.forEach(function (s) { return this$1.step(s); });\n added.forEach(function (s) { return this$1.step(s); });\n return this\n};\n\n// :: (number, number, ?union<Mark, MarkType>) → this\n// Remove marks from inline nodes between `from` and `to`. When `mark`\n// is a single mark, remove precisely that mark. When it is a mark type,\n// remove all marks of that type. When it is null, remove all marks of\n// any type.\nTransform.prototype.removeMark = function(from, to, mark) {\n var this$1 = this;\n if ( mark === void 0 ) mark = null;\n\n var matched = [], step = 0;\n this.doc.nodesBetween(from, to, function (node, pos) {\n if (!node.isInline) { return }\n step++;\n var toRemove = null;\n if (mark instanceof MarkType) {\n var found = mark.isInSet(node.marks);\n if (found) { toRemove = [found]; }\n } else if (mark) {\n if (mark.isInSet(node.marks)) { toRemove = [mark]; }\n } else {\n toRemove = node.marks;\n }\n if (toRemove && toRemove.length) {\n var end = Math.min(pos + node.nodeSize, to);\n for (var i = 0; i < toRemove.length; i++) {\n var style = toRemove[i], found$1 = (void 0);\n for (var j = 0; j < matched.length; j++) {\n var m = matched[j];\n if (m.step == step - 1 && style.eq(matched[j].style)) { found$1 = m; }\n }\n if (found$1) {\n found$1.to = end;\n found$1.step = step;\n } else {\n matched.push({style: style, from: Math.max(pos, from), to: end, step: step});\n }\n }\n }\n });\n matched.forEach(function (m) { return this$1.step(new RemoveMarkStep(m.from, m.to, m.style)); });\n return this\n};\n\n// :: (number, NodeType, ?ContentMatch) → this\n// Removes all marks and nodes from the content of the node at `pos`\n// that don't match the given new parent node type. Accepts an\n// optional starting [content match](#model.ContentMatch) as third\n// argument.\nTransform.prototype.clearIncompatible = function(pos, parentType, match) {\n if ( match === void 0 ) match = parentType.contentMatch;\n\n var node = this.doc.nodeAt(pos);\n var delSteps = [], cur = pos + 1;\n for (var i = 0; i < node.childCount; i++) {\n var child = node.child(i), end = cur + child.nodeSize;\n var allowed = match.matchType(child.type, child.attrs);\n if (!allowed) {\n delSteps.push(new ReplaceStep(cur, end, Slice.empty));\n } else {\n match = allowed;\n for (var j = 0; j < child.marks.length; j++) { if (!parentType.allowsMarkType(child.marks[j].type))\n { this.step(new RemoveMarkStep(cur, end, child.marks[j])); } }\n }\n cur = end;\n }\n if (!match.validEnd) {\n var fill = match.fillBefore(Fragment.empty, true);\n this.replace(cur, cur, new Slice(fill, 0, 0));\n }\n for (var i$1 = delSteps.length - 1; i$1 >= 0; i$1--) { this.step(delSteps[i$1]); }\n return this\n};\n\n// :: (Node, number, ?number, ?Slice) → ?Step\n// ‘Fit’ a slice into a given position in the document, producing a\n// [step](#transform.Step) that inserts it. Will return null if\n// there's no meaningful way to insert the slice here, or inserting it\n// would be a no-op (an empty slice over an empty range).\nfunction replaceStep(doc, from, to, slice) {\n if ( to === void 0 ) to = from;\n if ( slice === void 0 ) slice = Slice.empty;\n\n if (from == to && !slice.size) { return null }\n\n var $from = doc.resolve(from), $to = doc.resolve(to);\n // Optimization -- avoid work if it's obvious that it's not needed.\n if (fitsTrivially($from, $to, slice)) { return new ReplaceStep(from, to, slice) }\n return new Fitter($from, $to, slice).fit()\n}\n\n// :: (number, ?number, ?Slice) → this\n// Replace the part of the document between `from` and `to` with the\n// given `slice`.\nTransform.prototype.replace = function(from, to, slice) {\n if ( to === void 0 ) to = from;\n if ( slice === void 0 ) slice = Slice.empty;\n\n var step = replaceStep(this.doc, from, to, slice);\n if (step) { this.step(step); }\n return this\n};\n\n// :: (number, number, union<Fragment, Node, [Node]>) → this\n// Replace the given range with the given content, which may be a\n// fragment, node, or array of nodes.\nTransform.prototype.replaceWith = function(from, to, content) {\n return this.replace(from, to, new Slice(Fragment.from(content), 0, 0))\n};\n\n// :: (number, number) → this\n// Delete the content between the given positions.\nTransform.prototype.delete = function(from, to) {\n return this.replace(from, to, Slice.empty)\n};\n\n// :: (number, union<Fragment, Node, [Node]>) → this\n// Insert the given content at the given position.\nTransform.prototype.insert = function(pos, content) {\n return this.replaceWith(pos, pos, content)\n};\n\nfunction fitsTrivially($from, $to, slice) {\n return !slice.openStart && !slice.openEnd && $from.start() == $to.start() &&\n $from.parent.canReplace($from.index(), $to.index(), slice.content)\n}\n\n// Algorithm for 'placing' the elements of a slice into a gap:\n//\n// We consider the content of each node that is open to the left to be\n// independently placeable. I.e. in <p(\"foo\"), p(\"bar\")>, when the\n// paragraph on the left is open, \"foo\" can be placed (somewhere on\n// the left side of the replacement gap) independently from p(\"bar\").\n//\n// This class tracks the state of the placement progress in the\n// following properties:\n//\n// - `frontier` holds a stack of `{type, match}` objects that\n// represent the open side of the replacement. It starts at\n// `$from`, then moves forward as content is placed, and is finally\n// reconciled with `$to`.\n//\n// - `unplaced` is a slice that represents the content that hasn't\n// been placed yet.\n//\n// - `placed` is a fragment of placed content. Its open-start value\n// is implicit in `$from`, and its open-end value in `frontier`.\nvar Fitter = function Fitter($from, $to, slice) {\n this.$to = $to;\n this.$from = $from;\n this.unplaced = slice;\n\n this.frontier = [];\n for (var i = 0; i <= $from.depth; i++) {\n var node = $from.node(i);\n this.frontier.push({\n type: node.type,\n match: node.contentMatchAt($from.indexAfter(i))\n });\n }\n\n this.placed = Fragment.empty;\n for (var i$1 = $from.depth; i$1 > 0; i$1--)\n { this.placed = Fragment.from($from.node(i$1).copy(this.placed)); }\n};\n\nvar prototypeAccessors$1 = { depth: { configurable: true } };\n\nprototypeAccessors$1.depth.get = function () { return this.frontier.length - 1 };\n\nFitter.prototype.fit = function fit () {\n // As long as there's unplaced content, try to place some of it.\n // If that fails, either increase the open score of the unplaced\n // slice, or drop nodes from it, and then try again.\n while (this.unplaced.size) {\n var fit = this.findFittable();\n if (fit) { this.placeNodes(fit); }\n else { this.openMore() || this.dropNode(); }\n }\n // When there's inline content directly after the frontier _and_\n // directly after `this.$to`, we must generate a `ReplaceAround`\n // step that pulls that content into the node after the frontier.\n // That means the fitting must be done to the end of the textblock\n // node after `this.$to`, not `this.$to` itself.\n var moveInline = this.mustMoveInline(), placedSize = this.placed.size - this.depth - this.$from.depth;\n var $from = this.$from, $to = this.close(moveInline < 0 ? this.$to : $from.doc.resolve(moveInline));\n if (!$to) { return null }\n\n // If closing to `$to` succeeded, create a step\n var content = this.placed, openStart = $from.depth, openEnd = $to.depth;\n while (openStart && openEnd && content.childCount == 1) { // Normalize by dropping open parent nodes\n content = content.firstChild.content;\n openStart--; openEnd--;\n }\n var slice = new Slice(content, openStart, openEnd);\n if (moveInline > -1)\n { return new ReplaceAroundStep($from.pos, moveInline, this.$to.pos, this.$to.end(), slice, placedSize) }\n if (slice.size || $from.pos != this.$to.pos) // Don't generate no-op steps\n { return new ReplaceStep($from.pos, $to.pos, slice) }\n};\n\n// Find a position on the start spine of `this.unplaced` that has\n// content that can be moved somewhere on the frontier. Returns two\n// depths, one for the slice and one for the frontier.\nFitter.prototype.findFittable = function findFittable () {\n // Only try wrapping nodes (pass 2) after finding a place without\n // wrapping failed.\n for (var pass = 1; pass <= 2; pass++) {\n for (var sliceDepth = this.unplaced.openStart; sliceDepth >= 0; sliceDepth--) {\n var fragment = (void 0), parent = (void 0);\n if (sliceDepth) {\n parent = contentAt(this.unplaced.content, sliceDepth - 1).firstChild;\n fragment = parent.content;\n } else {\n fragment = this.unplaced.content;\n }\n var first = fragment.firstChild;\n for (var frontierDepth = this.depth; frontierDepth >= 0; frontierDepth--) {\n var ref = this.frontier[frontierDepth];\n var type = ref.type;\n var match = ref.match;\n var wrap = (void 0), inject = (void 0);\n // In pass 1, if the next node matches, or there is no next\n // node but the parents look compatible, we've found a\n // place.\n if (pass == 1 && (first ? match.matchType(first.type) || (inject = match.fillBefore(Fragment.from(first), false))\n : type.compatibleContent(parent.type)))\n { return {sliceDepth: sliceDepth, frontierDepth: frontierDepth, parent: parent, inject: inject} }\n // In pass 2, look for a set of wrapping nodes that make\n // `first` fit here.\n else if (pass == 2 && first && (wrap = match.findWrapping(first.type)))\n { return {sliceDepth: sliceDepth, frontierDepth: frontierDepth, parent: parent, wrap: wrap} }\n // Don't continue looking further up if the parent node\n // would fit here.\n if (parent && match.matchType(parent.type)) { break }\n }\n }\n }\n};\n\nFitter.prototype.openMore = function openMore () {\n var ref = this.unplaced;\n var content = ref.content;\n var openStart = ref.openStart;\n var openEnd = ref.openEnd;\n var inner = contentAt(content, openStart);\n if (!inner.childCount || inner.firstChild.isLeaf) { return false }\n this.unplaced = new Slice(content, openStart + 1,\n Math.max(openEnd, inner.size + openStart >= content.size - openEnd ? openStart + 1 : 0));\n return true\n};\n\nFitter.prototype.dropNode = function dropNode () {\n var ref = this.unplaced;\n var content = ref.content;\n var openStart = ref.openStart;\n var openEnd = ref.openEnd;\n var inner = contentAt(content, openStart);\n if (inner.childCount <= 1 && openStart > 0) {\n var openAtEnd = content.size - openStart <= openStart + inner.size;\n this.unplaced = new Slice(dropFromFragment(content, openStart - 1, 1), openStart - 1,\n openAtEnd ? openStart - 1 : openEnd);\n } else {\n this.unplaced = new Slice(dropFromFragment(content, openStart, 1), openStart, openEnd);\n }\n};\n\n// : ({sliceDepth: number, frontierDepth: number, parent: ?Node, wrap: ?[NodeType], inject: ?Fragment})\n// Move content from the unplaced slice at `sliceDepth` to the\n// frontier node at `frontierDepth`. Close that frontier node when\n// applicable.\nFitter.prototype.placeNodes = function placeNodes (ref) {\n var sliceDepth = ref.sliceDepth;\n var frontierDepth = ref.frontierDepth;\n var parent = ref.parent;\n var inject = ref.inject;\n var wrap = ref.wrap;\n\n while (this.depth > frontierDepth) { this.closeFrontierNode(); }\n if (wrap) { for (var i = 0; i < wrap.length; i++) { this.openFrontierNode(wrap[i]); } }\n\n var slice = this.unplaced, fragment = parent ? parent.content : slice.content;\n var openStart = slice.openStart - sliceDepth;\n var taken = 0, add = [];\n var ref$1 = this.frontier[frontierDepth];\n var match = ref$1.match;\n var type = ref$1.type;\n if (inject) {\n for (var i$1 = 0; i$1 < inject.childCount; i$1++) { add.push(inject.child(i$1)); }\n match = match.matchFragment(inject);\n }\n // Computes the amount of (end) open nodes at the end of the\n // fragment. When 0, the parent is open, but no more. When\n // negative, nothing is open.\n var openEndCount = (fragment.size + sliceDepth) - (slice.content.size - slice.openEnd);\n // Scan over the fragment, fitting as many child nodes as\n // possible.\n while (taken < fragment.childCount) {\n var next = fragment.child(taken), matches = match.matchType(next.type);\n if (!matches) { break }\n taken++;\n if (taken > 1 || openStart == 0 || next.content.size) { // Drop empty open nodes\n match = matches;\n add.push(closeNodeStart(next.mark(type.allowedMarks(next.marks)), taken == 1 ? openStart : 0,\n taken == fragment.childCount ? openEndCount : -1));\n }\n }\n var toEnd = taken == fragment.childCount;\n if (!toEnd) { openEndCount = -1; }\n\n this.placed = addToFragment(this.placed, frontierDepth, Fragment.from(add));\n this.frontier[frontierDepth].match = match;\n\n // If the parent types match, and the entire node was moved, and\n // it's not open, close this frontier node right away.\n if (toEnd && openEndCount < 0 && parent && parent.type == this.frontier[this.depth].type && this.frontier.length > 1)\n { this.closeFrontierNode(); }\n\n // Add new frontier nodes for any open nodes at the end.\n for (var i$2 = 0, cur = fragment; i$2 < openEndCount; i$2++) {\n var node = cur.lastChild;\n this.frontier.push({type: node.type, match: node.contentMatchAt(node.childCount)});\n cur = node.content;\n }\n\n // Update `this.unplaced`. Drop the entire node from which we\n // placed it we got to its end, otherwise just drop the placed\n // nodes.\n this.unplaced = !toEnd ? new Slice(dropFromFragment(slice.content, sliceDepth, taken), slice.openStart, slice.openEnd)\n : sliceDepth == 0 ? Slice.empty\n : new Slice(dropFromFragment(slice.content, sliceDepth - 1, 1),\n sliceDepth - 1, openEndCount < 0 ? slice.openEnd : sliceDepth - 1);\n};\n\nFitter.prototype.mustMoveInline = function mustMoveInline () {\n if (!this.$to.parent.isTextblock || this.$to.end() == this.$to.pos) { return -1 }\n var top = this.frontier[this.depth], level;\n if (!top.type.isTextblock || !contentAfterFits(this.$to, this.$to.depth, top.type, top.match, false) ||\n (this.$to.depth == this.depth && (level = this.findCloseLevel(this.$to)) && level.depth == this.depth)) { return -1 }\n\n var ref = this.$to;\n var depth = ref.depth;\n var after = this.$to.after(depth);\n while (depth > 1 && after == this.$to.end(--depth)) { ++after; }\n return after\n};\n\nFitter.prototype.findCloseLevel = function findCloseLevel ($to) {\n scan: for (var i = Math.min(this.depth, $to.depth); i >= 0; i--) {\n var ref = this.frontier[i];\n var match = ref.match;\n var type = ref.type;\n var dropInner = i < $to.depth && $to.end(i + 1) == $to.pos + ($to.depth - (i + 1));\n var fit = contentAfterFits($to, i, type, match, dropInner);\n if (!fit) { continue }\n for (var d = i - 1; d >= 0; d--) {\n var ref$1 = this.frontier[d];\n var match$1 = ref$1.match;\n var type$1 = ref$1.type;\n var matches = contentAfterFits($to, d, type$1, match$1, true);\n if (!matches || matches.childCount) { continue scan }\n }\n return {depth: i, fit: fit, move: dropInner ? $to.doc.resolve($to.after(i + 1)) : $to}\n }\n};\n\nFitter.prototype.close = function close ($to) {\n var close = this.findCloseLevel($to);\n if (!close) { return null }\n\n while (this.depth > close.depth) { this.closeFrontierNode(); }\n if (close.fit.childCount) { this.placed = addToFragment(this.placed, close.depth, close.fit); }\n $to = close.move;\n for (var d = close.depth + 1; d <= $to.depth; d++) {\n var node = $to.node(d), add = node.type.contentMatch.fillBefore(node.content, true, $to.index(d));\n this.openFrontierNode(node.type, node.attrs, add);\n }\n return $to\n};\n\nFitter.prototype.openFrontierNode = function openFrontierNode (type, attrs, content) {\n var top = this.frontier[this.depth];\n top.match = top.match.matchType(type);\n this.placed = addToFragment(this.placed, this.depth, Fragment.from(type.create(attrs, content)));\n this.frontier.push({type: type, match: type.contentMatch});\n};\n\nFitter.prototype.closeFrontierNode = function closeFrontierNode () {\n var open = this.frontier.pop();\n var add = open.match.fillBefore(Fragment.empty, true);\n if (add.childCount) { this.placed = addToFragment(this.placed, this.frontier.length, add); }\n};\n\nObject.defineProperties( Fitter.prototype, prototypeAccessors$1 );\n\nfunction dropFromFragment(fragment, depth, count) {\n if (depth == 0) { return fragment.cutByIndex(count) }\n return fragment.replaceChild(0, fragment.firstChild.copy(dropFromFragment(fragment.firstChild.content, depth - 1, count)))\n}\n\nfunction addToFragment(fragment, depth, content) {\n if (depth == 0) { return fragment.append(content) }\n return fragment.replaceChild(fragment.childCount - 1,\n fragment.lastChild.copy(addToFragment(fragment.lastChild.content, depth - 1, content)))\n}\n\nfunction contentAt(fragment, depth) {\n for (var i = 0; i < depth; i++) { fragment = fragment.firstChild.content; }\n return fragment\n}\n\nfunction closeNodeStart(node, openStart, openEnd) {\n if (openStart <= 0) { return node }\n var frag = node.content;\n if (openStart > 1)\n { frag = frag.replaceChild(0, closeNodeStart(frag.firstChild, openStart - 1, frag.childCount == 1 ? openEnd - 1 : 0)); }\n if (openStart > 0) {\n frag = node.type.contentMatch.fillBefore(frag).append(frag);\n if (openEnd <= 0) { frag = frag.append(node.type.contentMatch.matchFragment(frag).fillBefore(Fragment.empty, true)); }\n }\n return node.copy(frag)\n}\n\nfunction contentAfterFits($to, depth, type, match, open) {\n var node = $to.node(depth), index = open ? $to.indexAfter(depth) : $to.index(depth);\n if (index == node.childCount && !type.compatibleContent(node.type)) { return null }\n var fit = match.fillBefore(node.content, true, index);\n return fit && !invalidMarks(type, node.content, index) ? fit : null\n}\n\nfunction invalidMarks(type, fragment, start) {\n for (var i = start; i < fragment.childCount; i++)\n { if (!type.allowsMarks(fragment.child(i).marks)) { return true } }\n return false\n}\n\n// :: (number, number, Slice) → this\n// Replace a range of the document with a given slice, using `from`,\n// `to`, and the slice's [`openStart`](#model.Slice.openStart) property\n// as hints, rather than fixed start and end points. This method may\n// grow the replaced area or close open nodes in the slice in order to\n// get a fit that is more in line with WYSIWYG expectations, by\n// dropping fully covered parent nodes of the replaced region when\n// they are marked [non-defining](#model.NodeSpec.defining), or\n// including an open parent node from the slice that _is_ marked as\n// [defining](#model.NodeSpec.defining).\n//\n// This is the method, for example, to handle paste. The similar\n// [`replace`](#transform.Transform.replace) method is a more\n// primitive tool which will _not_ move the start and end of its given\n// range, and is useful in situations where you need more precise\n// control over what happens.\nTransform.prototype.replaceRange = function(from, to, slice) {\n if (!slice.size) { return this.deleteRange(from, to) }\n\n var $from = this.doc.resolve(from), $to = this.doc.resolve(to);\n if (fitsTrivially($from, $to, slice))\n { return this.step(new ReplaceStep(from, to, slice)) }\n\n var targetDepths = coveredDepths($from, this.doc.resolve(to));\n // Can't replace the whole document, so remove 0 if it's present\n if (targetDepths[targetDepths.length - 1] == 0) { targetDepths.pop(); }\n // Negative numbers represent not expansion over the whole node at\n // that depth, but replacing from $from.before(-D) to $to.pos.\n var preferredTarget = -($from.depth + 1);\n targetDepths.unshift(preferredTarget);\n // This loop picks a preferred target depth, if one of the covering\n // depths is not outside of a defining node, and adds negative\n // depths for any depth that has $from at its start and does not\n // cross a defining node.\n for (var d = $from.depth, pos = $from.pos - 1; d > 0; d--, pos--) {\n var spec = $from.node(d).type.spec;\n if (spec.defining || spec.isolating) { break }\n if (targetDepths.indexOf(d) > -1) { preferredTarget = d; }\n else if ($from.before(d) == pos) { targetDepths.splice(1, 0, -d); }\n }\n // Try to fit each possible depth of the slice into each possible\n // target depth, starting with the preferred depths.\n var preferredTargetIndex = targetDepths.indexOf(preferredTarget);\n\n var leftNodes = [], preferredDepth = slice.openStart;\n for (var content = slice.content, i = 0;; i++) {\n var node = content.firstChild;\n leftNodes.push(node);\n if (i == slice.openStart) { break }\n content = node.content;\n }\n // Back up if the node directly above openStart, or the node above\n // that separated only by a non-defining textblock node, is defining.\n if (preferredDepth > 0 && leftNodes[preferredDepth - 1].type.spec.defining &&\n $from.node(preferredTargetIndex).type != leftNodes[preferredDepth - 1].type)\n { preferredDepth -= 1; }\n else if (preferredDepth >= 2 && leftNodes[preferredDepth - 1].isTextblock && leftNodes[preferredDepth - 2].type.spec.defining &&\n $from.node(preferredTargetIndex).type != leftNodes[preferredDepth - 2].type)\n { preferredDepth -= 2; }\n\n for (var j = slice.openStart; j >= 0; j--) {\n var openDepth = (j + preferredDepth + 1) % (slice.openStart + 1);\n var insert = leftNodes[openDepth];\n if (!insert) { continue }\n for (var i$1 = 0; i$1 < targetDepths.length; i$1++) {\n // Loop over possible expansion levels, starting with the\n // preferred one\n var targetDepth = targetDepths[(i$1 + preferredTargetIndex) % targetDepths.length], expand = true;\n if (targetDepth < 0) { expand = false; targetDepth = -targetDepth; }\n var parent = $from.node(targetDepth - 1), index = $from.index(targetDepth - 1);\n if (parent.canReplaceWith(index, index, insert.type, insert.marks))\n { return this.replace($from.before(targetDepth), expand ? $to.after(targetDepth) : to,\n new Slice(closeFragment(slice.content, 0, slice.openStart, openDepth),\n openDepth, slice.openEnd)) }\n }\n }\n\n var startSteps = this.steps.length;\n for (var i$2 = targetDepths.length - 1; i$2 >= 0; i$2--) {\n this.replace(from, to, slice);\n if (this.steps.length > startSteps) { break }\n var depth = targetDepths[i$2];\n if (i$2 < 0) { continue }\n from = $from.before(depth); to = $to.after(depth);\n }\n return this\n};\n\nfunction closeFragment(fragment, depth, oldOpen, newOpen, parent) {\n if (depth < oldOpen) {\n var first = fragment.firstChild;\n fragment = fragment.replaceChild(0, first.copy(closeFragment(first.content, depth + 1, oldOpen, newOpen, first)));\n }\n if (depth > newOpen) {\n var match = parent.contentMatchAt(0);\n var start = match.fillBefore(fragment).append(fragment);\n fragment = start.append(match.matchFragment(start).fillBefore(Fragment.empty, true));\n }\n return fragment\n}\n\n// :: (number, number, Node) → this\n// Replace the given range with a node, but use `from` and `to` as\n// hints, rather than precise positions. When from and to are the same\n// and are at the start or end of a parent node in which the given\n// node doesn't fit, this method may _move_ them out towards a parent\n// that does allow the given node to be placed. When the given range\n// completely covers a parent node, this method may completely replace\n// that parent node.\nTransform.prototype.replaceRangeWith = function(from, to, node) {\n if (!node.isInline && from == to && this.doc.resolve(from).parent.content.size) {\n var point = insertPoint(this.doc, from, node.type);\n if (point != null) { from = to = point; }\n }\n return this.replaceRange(from, to, new Slice(Fragment.from(node), 0, 0))\n};\n\n// :: (number, number) → this\n// Delete the given range, expanding it to cover fully covered\n// parent nodes until a valid replace is found.\nTransform.prototype.deleteRange = function(from, to) {\n var $from = this.doc.resolve(from), $to = this.doc.resolve(to);\n var covered = coveredDepths($from, $to);\n for (var i = 0; i < covered.length; i++) {\n var depth = covered[i], last = i == covered.length - 1;\n if ((last && depth == 0) || $from.node(depth).type.contentMatch.validEnd)\n { return this.delete($from.start(depth), $to.end(depth)) }\n if (depth > 0 && (last || $from.node(depth - 1).canReplace($from.index(depth - 1), $to.indexAfter(depth - 1))))\n { return this.delete($from.before(depth), $to.after(depth)) }\n }\n for (var d = 1; d <= $from.depth && d <= $to.depth; d++) {\n if (from - $from.start(d) == $from.depth - d && to > $from.end(d) && $to.end(d) - to != $to.depth - d)\n { return this.delete($from.before(d), to) }\n }\n return this.delete(from, to)\n};\n\n// : (ResolvedPos, ResolvedPos) → [number]\n// Returns an array of all depths for which $from - $to spans the\n// whole content of the nodes at that depth.\nfunction coveredDepths($from, $to) {\n var result = [], minDepth = Math.min($from.depth, $to.depth);\n for (var d = minDepth; d >= 0; d--) {\n var start = $from.start(d);\n if (start < $from.pos - ($from.depth - d) ||\n $to.end(d) > $to.pos + ($to.depth - d) ||\n $from.node(d).type.spec.isolating ||\n $to.node(d).type.spec.isolating) { break }\n if (start == $to.start(d)) { result.push(d); }\n }\n return result\n}\n\nexport { AddMarkStep, MapResult, Mapping, RemoveMarkStep, ReplaceAroundStep, ReplaceStep, Step, StepMap, StepResult, Transform, TransformError, canJoin, canSplit, dropPoint, findWrapping, insertPoint, joinPoint, liftTarget, replaceStep };\n//# sourceMappingURL=index.es.js.map\n","/**\n * Slugger generates header id\n */\nmodule.exports = class Slugger {\n constructor() {\n this.seen = {};\n }\n\n /**\n * Convert string to unique id\n */\n slug(value) {\n let slug = value\n .toLowerCase()\n .trim()\n // remove html tags\n .replace(/<[!\\/a-z].*?>/ig, '')\n // remove unwanted chars\n .replace(/[\\u2000-\\u206F\\u2E00-\\u2E7F\\\\'!\"#$%&()*+,./:;<=>?@[\\]^`{|}~]/g, '')\n .replace(/\\s/g, '-');\n\n if (this.seen.hasOwnProperty(slug)) {\n const originalSlug = slug;\n do {\n this.seen[originalSlug]++;\n slug = originalSlug + '-' + this.seen[originalSlug];\n } while (this.seen.hasOwnProperty(slug));\n }\n this.seen[slug] = 0;\n\n return slug;\n };\n};\n","// ::- Persistent data structure representing an ordered mapping from\n// strings to values, with some convenient update methods.\nfunction OrderedMap(content) {\n this.content = content;\n}\n\nOrderedMap.prototype = {\n constructor: OrderedMap,\n\n find: function(key) {\n for (var i = 0; i < this.content.length; i += 2)\n if (this.content[i] === key) return i\n return -1\n },\n\n // :: (string) → ?any\n // Retrieve the value stored under `key`, or return undefined when\n // no such key exists.\n get: function(key) {\n var found = this.find(key);\n return found == -1 ? undefined : this.content[found + 1]\n },\n\n // :: (string, any, ?string) → OrderedMap\n // Create a new map by replacing the value of `key` with a new\n // value, or adding a binding to the end of the map. If `newKey` is\n // given, the key of the binding will be replaced with that key.\n update: function(key, value, newKey) {\n var self = newKey && newKey != key ? this.remove(newKey) : this;\n var found = self.find(key), content = self.content.slice();\n if (found == -1) {\n content.push(newKey || key, value);\n } else {\n content[found + 1] = value;\n if (newKey) content[found] = newKey;\n }\n return new OrderedMap(content)\n },\n\n // :: (string) → OrderedMap\n // Return a map with the given key removed, if it existed.\n remove: function(key) {\n var found = this.find(key);\n if (found == -1) return this\n var content = this.content.slice();\n content.splice(found, 2);\n return new OrderedMap(content)\n },\n\n // :: (string, any) → OrderedMap\n // Add a new key to the start of the map.\n addToStart: function(key, value) {\n return new OrderedMap([key, value].concat(this.remove(key).content))\n },\n\n // :: (string, any) → OrderedMap\n // Add a new key to the end of the map.\n addToEnd: function(key, value) {\n var content = this.remove(key).content.slice();\n content.push(key, value);\n return new OrderedMap(content)\n },\n\n // :: (string, string, any) → OrderedMap\n // Add a key after the given key. If `place` is not found, the new\n // key is added to the end.\n addBefore: function(place, key, value) {\n var without = this.remove(key), content = without.content.slice();\n var found = without.find(place);\n content.splice(found == -1 ? content.length : found, 0, key, value);\n return new OrderedMap(content)\n },\n\n // :: ((key: string, value: any))\n // Call the given function for each key/value pair in the map, in\n // order.\n forEach: function(f) {\n for (var i = 0; i < this.content.length; i += 2)\n f(this.content[i], this.content[i + 1]);\n },\n\n // :: (union<Object, OrderedMap>) → OrderedMap\n // Create a new map by prepending the keys in this map that don't\n // appear in `map` before the keys in `map`.\n prepend: function(map) {\n map = OrderedMap.from(map);\n if (!map.size) return this\n return new OrderedMap(map.content.concat(this.subtract(map).content))\n },\n\n // :: (union<Object, OrderedMap>) → OrderedMap\n // Create a new map by appending the keys in this map that don't\n // appear in `map` after the keys in `map`.\n append: function(map) {\n map = OrderedMap.from(map);\n if (!map.size) return this\n return new OrderedMap(this.subtract(map).content.concat(map.content))\n },\n\n // :: (union<Object, OrderedMap>) → OrderedMap\n // Create a map containing all the keys in this map that don't\n // appear in `map`.\n subtract: function(map) {\n var result = this;\n map = OrderedMap.from(map);\n for (var i = 0; i < map.content.length; i += 2)\n result = result.remove(map.content[i]);\n return result\n },\n\n // :: number\n // The amount of keys in this map.\n get size() {\n return this.content.length >> 1\n }\n};\n\n// :: (?union<Object, OrderedMap>) → OrderedMap\n// Return a map with the given content. If null, create an empty\n// map. If given an ordered map, return that map itself. If given an\n// object, create a map from the object's properties.\nOrderedMap.from = function(value) {\n if (value instanceof OrderedMap) return value\n var content = [];\n if (value) for (var prop in value) content.push(prop, value[prop]);\n return new OrderedMap(content)\n};\n\nvar orderedmap = OrderedMap;\n\nexport default orderedmap;\n","import OrderedMap from 'orderedmap';\n\nfunction findDiffStart(a, b, pos) {\n for (var i = 0;; i++) {\n if (i == a.childCount || i == b.childCount)\n { return a.childCount == b.childCount ? null : pos }\n\n var childA = a.child(i), childB = b.child(i);\n if (childA == childB) { pos += childA.nodeSize; continue }\n\n if (!childA.sameMarkup(childB)) { return pos }\n\n if (childA.isText && childA.text != childB.text) {\n for (var j = 0; childA.text[j] == childB.text[j]; j++)\n { pos++; }\n return pos\n }\n if (childA.content.size || childB.content.size) {\n var inner = findDiffStart(childA.content, childB.content, pos + 1);\n if (inner != null) { return inner }\n }\n pos += childA.nodeSize;\n }\n}\n\nfunction findDiffEnd(a, b, posA, posB) {\n for (var iA = a.childCount, iB = b.childCount;;) {\n if (iA == 0 || iB == 0)\n { return iA == iB ? null : {a: posA, b: posB} }\n\n var childA = a.child(--iA), childB = b.child(--iB), size = childA.nodeSize;\n if (childA == childB) {\n posA -= size; posB -= size;\n continue\n }\n\n if (!childA.sameMarkup(childB)) { return {a: posA, b: posB} }\n\n if (childA.isText && childA.text != childB.text) {\n var same = 0, minSize = Math.min(childA.text.length, childB.text.length);\n while (same < minSize && childA.text[childA.text.length - same - 1] == childB.text[childB.text.length - same - 1]) {\n same++; posA--; posB--;\n }\n return {a: posA, b: posB}\n }\n if (childA.content.size || childB.content.size) {\n var inner = findDiffEnd(childA.content, childB.content, posA - 1, posB - 1);\n if (inner) { return inner }\n }\n posA -= size; posB -= size;\n }\n}\n\n// ::- A fragment represents a node's collection of child nodes.\n//\n// Like nodes, fragments are persistent data structures, and you\n// should not mutate them or their content. Rather, you create new\n// instances whenever needed. The API tries to make this easy.\nvar Fragment = function Fragment(content, size) {\n this.content = content;\n // :: number\n // The size of the fragment, which is the total of the size of its\n // content nodes.\n this.size = size || 0;\n if (size == null) { for (var i = 0; i < content.length; i++)\n { this.size += content[i].nodeSize; } }\n};\n\nvar prototypeAccessors = { firstChild: { configurable: true },lastChild: { configurable: true },childCount: { configurable: true } };\n\n// :: (number, number, (node: Node, start: number, parent: Node, index: number) → ?bool, ?number)\n// Invoke a callback for all descendant nodes between the given two\n// positions (relative to start of this fragment). Doesn't descend\n// into a node when the callback returns `false`.\nFragment.prototype.nodesBetween = function nodesBetween (from, to, f, nodeStart, parent) {\n if ( nodeStart === void 0 ) nodeStart = 0;\n\n for (var i = 0, pos = 0; pos < to; i++) {\n var child = this.content[i], end = pos + child.nodeSize;\n if (end > from && f(child, nodeStart + pos, parent, i) !== false && child.content.size) {\n var start = pos + 1;\n child.nodesBetween(Math.max(0, from - start),\n Math.min(child.content.size, to - start),\n f, nodeStart + start);\n }\n pos = end;\n }\n};\n\n// :: ((node: Node, pos: number, parent: Node) → ?bool)\n// Call the given callback for every descendant node. The callback\n// may return `false` to prevent traversal of a given node's children.\nFragment.prototype.descendants = function descendants (f) {\n this.nodesBetween(0, this.size, f);\n};\n\n// : (number, number, ?string, ?string) → string\nFragment.prototype.textBetween = function textBetween (from, to, blockSeparator, leafText) {\n var text = \"\", separated = true;\n this.nodesBetween(from, to, function (node, pos) {\n if (node.isText) {\n text += node.text.slice(Math.max(from, pos) - pos, to - pos);\n separated = !blockSeparator;\n } else if (node.isLeaf && leafText) {\n text += leafText;\n separated = !blockSeparator;\n } else if (!separated && node.isBlock) {\n text += blockSeparator;\n separated = true;\n }\n }, 0);\n return text\n};\n\n// :: (Fragment) → Fragment\n// Create a new fragment containing the combined content of this\n// fragment and the other.\nFragment.prototype.append = function append (other) {\n if (!other.size) { return this }\n if (!this.size) { return other }\n var last = this.lastChild, first = other.firstChild, content = this.content.slice(), i = 0;\n if (last.isText && last.sameMarkup(first)) {\n content[content.length - 1] = last.withText(last.text + first.text);\n i = 1;\n }\n for (; i < other.content.length; i++) { content.push(other.content[i]); }\n return new Fragment(content, this.size + other.size)\n};\n\n// :: (number, ?number) → Fragment\n// Cut out the sub-fragment between the two given positions.\nFragment.prototype.cut = function cut (from, to) {\n if (to == null) { to = this.size; }\n if (from == 0 && to == this.size) { return this }\n var result = [], size = 0;\n if (to > from) { for (var i = 0, pos = 0; pos < to; i++) {\n var child = this.content[i], end = pos + child.nodeSize;\n if (end > from) {\n if (pos < from || end > to) {\n if (child.isText)\n { child = child.cut(Math.max(0, from - pos), Math.min(child.text.length, to - pos)); }\n else\n { child = child.cut(Math.max(0, from - pos - 1), Math.min(child.content.size, to - pos - 1)); }\n }\n result.push(child);\n size += child.nodeSize;\n }\n pos = end;\n } }\n return new Fragment(result, size)\n};\n\nFragment.prototype.cutByIndex = function cutByIndex (from, to) {\n if (from == to) { return Fragment.empty }\n if (from == 0 && to == this.content.length) { return this }\n return new Fragment(this.content.slice(from, to))\n};\n\n// :: (number, Node) → Fragment\n// Create a new fragment in which the node at the given index is\n// replaced by the given node.\nFragment.prototype.replaceChild = function replaceChild (index, node) {\n var current = this.content[index];\n if (current == node) { return this }\n var copy = this.content.slice();\n var size = this.size + node.nodeSize - current.nodeSize;\n copy[index] = node;\n return new Fragment(copy, size)\n};\n\n// : (Node) → Fragment\n// Create a new fragment by prepending the given node to this\n// fragment.\nFragment.prototype.addToStart = function addToStart (node) {\n return new Fragment([node].concat(this.content), this.size + node.nodeSize)\n};\n\n// : (Node) → Fragment\n// Create a new fragment by appending the given node to this\n// fragment.\nFragment.prototype.addToEnd = function addToEnd (node) {\n return new Fragment(this.content.concat(node), this.size + node.nodeSize)\n};\n\n// :: (Fragment) → bool\n// Compare this fragment to another one.\nFragment.prototype.eq = function eq (other) {\n if (this.content.length != other.content.length) { return false }\n for (var i = 0; i < this.content.length; i++)\n { if (!this.content[i].eq(other.content[i])) { return false } }\n return true\n};\n\n// :: ?Node\n// The first child of the fragment, or `null` if it is empty.\nprototypeAccessors.firstChild.get = function () { return this.content.length ? this.content[0] : null };\n\n// :: ?Node\n// The last child of the fragment, or `null` if it is empty.\nprototypeAccessors.lastChild.get = function () { return this.content.length ? this.content[this.content.length - 1] : null };\n\n// :: number\n// The number of child nodes in this fragment.\nprototypeAccessors.childCount.get = function () { return this.content.length };\n\n// :: (number) → Node\n// Get the child node at the given index. Raise an error when the\n// index is out of range.\nFragment.prototype.child = function child (index) {\n var found = this.content[index];\n if (!found) { throw new RangeError(\"Index \" + index + \" out of range for \" + this) }\n return found\n};\n\n// :: (number) → ?Node\n// Get the child node at the given index, if it exists.\nFragment.prototype.maybeChild = function maybeChild (index) {\n return this.content[index]\n};\n\n// :: ((node: Node, offset: number, index: number))\n// Call `f` for every child node, passing the node, its offset\n// into this parent node, and its index.\nFragment.prototype.forEach = function forEach (f) {\n for (var i = 0, p = 0; i < this.content.length; i++) {\n var child = this.content[i];\n f(child, p, i);\n p += child.nodeSize;\n }\n};\n\n// :: (Fragment) → ?number\n// Find the first position at which this fragment and another\n// fragment differ, or `null` if they are the same.\nFragment.prototype.findDiffStart = function findDiffStart$1 (other, pos) {\n if ( pos === void 0 ) pos = 0;\n\n return findDiffStart(this, other, pos)\n};\n\n// :: (Fragment) → ?{a: number, b: number}\n// Find the first position, searching from the end, at which this\n// fragment and the given fragment differ, or `null` if they are the\n// same. Since this position will not be the same in both nodes, an\n// object with two separate positions is returned.\nFragment.prototype.findDiffEnd = function findDiffEnd$1 (other, pos, otherPos) {\n if ( pos === void 0 ) pos = this.size;\n if ( otherPos === void 0 ) otherPos = other.size;\n\n return findDiffEnd(this, other, pos, otherPos)\n};\n\n// : (number, ?number) → {index: number, offset: number}\n// Find the index and inner offset corresponding to a given relative\n// position in this fragment. The result object will be reused\n// (overwritten) the next time the function is called. (Not public.)\nFragment.prototype.findIndex = function findIndex (pos, round) {\n if ( round === void 0 ) round = -1;\n\n if (pos == 0) { return retIndex(0, pos) }\n if (pos == this.size) { return retIndex(this.content.length, pos) }\n if (pos > this.size || pos < 0) { throw new RangeError((\"Position \" + pos + \" outside of fragment (\" + (this) + \")\")) }\n for (var i = 0, curPos = 0;; i++) {\n var cur = this.child(i), end = curPos + cur.nodeSize;\n if (end >= pos) {\n if (end == pos || round > 0) { return retIndex(i + 1, end) }\n return retIndex(i, curPos)\n }\n curPos = end;\n }\n};\n\n// :: () → string\n// Return a debugging string that describes this fragment.\nFragment.prototype.toString = function toString () { return \"<\" + this.toStringInner() + \">\" };\n\nFragment.prototype.toStringInner = function toStringInner () { return this.content.join(\", \") };\n\n// :: () → ?Object\n// Create a JSON-serializeable representation of this fragment.\nFragment.prototype.toJSON = function toJSON () {\n return this.content.length ? this.content.map(function (n) { return n.toJSON(); }) : null\n};\n\n// :: (Schema, ?Object) → Fragment\n// Deserialize a fragment from its JSON representation.\nFragment.fromJSON = function fromJSON (schema, value) {\n if (!value) { return Fragment.empty }\n if (!Array.isArray(value)) { throw new RangeError(\"Invalid input for Fragment.fromJSON\") }\n return new Fragment(value.map(schema.nodeFromJSON))\n};\n\n// :: ([Node]) → Fragment\n// Build a fragment from an array of nodes. Ensures that adjacent\n// text nodes with the same marks are joined together.\nFragment.fromArray = function fromArray (array) {\n if (!array.length) { return Fragment.empty }\n var joined, size = 0;\n for (var i = 0; i < array.length; i++) {\n var node = array[i];\n size += node.nodeSize;\n if (i && node.isText && array[i - 1].sameMarkup(node)) {\n if (!joined) { joined = array.slice(0, i); }\n joined[joined.length - 1] = node.withText(joined[joined.length - 1].text + node.text);\n } else if (joined) {\n joined.push(node);\n }\n }\n return new Fragment(joined || array, size)\n};\n\n// :: (?union<Fragment, Node, [Node]>) → Fragment\n// Create a fragment from something that can be interpreted as a set\n// of nodes. For `null`, it returns the empty fragment. For a\n// fragment, the fragment itself. For a node or array of nodes, a\n// fragment containing those nodes.\nFragment.from = function from (nodes) {\n if (!nodes) { return Fragment.empty }\n if (nodes instanceof Fragment) { return nodes }\n if (Array.isArray(nodes)) { return this.fromArray(nodes) }\n if (nodes.attrs) { return new Fragment([nodes], nodes.nodeSize) }\n throw new RangeError(\"Can not convert \" + nodes + \" to a Fragment\" +\n (nodes.nodesBetween ? \" (looks like multiple versions of prosemirror-model were loaded)\" : \"\"))\n};\n\nObject.defineProperties( Fragment.prototype, prototypeAccessors );\n\nvar found = {index: 0, offset: 0};\nfunction retIndex(index, offset) {\n found.index = index;\n found.offset = offset;\n return found\n}\n\n// :: Fragment\n// An empty fragment. Intended to be reused whenever a node doesn't\n// contain anything (rather than allocating a new empty fragment for\n// each leaf node).\nFragment.empty = new Fragment([], 0);\n\nfunction compareDeep(a, b) {\n if (a === b) { return true }\n if (!(a && typeof a == \"object\") ||\n !(b && typeof b == \"object\")) { return false }\n var array = Array.isArray(a);\n if (Array.isArray(b) != array) { return false }\n if (array) {\n if (a.length != b.length) { return false }\n for (var i = 0; i < a.length; i++) { if (!compareDeep(a[i], b[i])) { return false } }\n } else {\n for (var p in a) { if (!(p in b) || !compareDeep(a[p], b[p])) { return false } }\n for (var p$1 in b) { if (!(p$1 in a)) { return false } }\n }\n return true\n}\n\n// ::- A mark is a piece of information that can be attached to a node,\n// such as it being emphasized, in code font, or a link. It has a type\n// and optionally a set of attributes that provide further information\n// (such as the target of the link). Marks are created through a\n// `Schema`, which controls which types exist and which\n// attributes they have.\nvar Mark = function Mark(type, attrs) {\n // :: MarkType\n // The type of this mark.\n this.type = type;\n // :: Object\n // The attributes associated with this mark.\n this.attrs = attrs;\n};\n\n// :: ([Mark]) → [Mark]\n// Given a set of marks, create a new set which contains this one as\n// well, in the right position. If this mark is already in the set,\n// the set itself is returned. If any marks that are set to be\n// [exclusive](#model.MarkSpec.excludes) with this mark are present,\n// those are replaced by this one.\nMark.prototype.addToSet = function addToSet (set) {\n var copy, placed = false;\n for (var i = 0; i < set.length; i++) {\n var other = set[i];\n if (this.eq(other)) { return set }\n if (this.type.excludes(other.type)) {\n if (!copy) { copy = set.slice(0, i); }\n } else if (other.type.excludes(this.type)) {\n return set\n } else {\n if (!placed && other.type.rank > this.type.rank) {\n if (!copy) { copy = set.slice(0, i); }\n copy.push(this);\n placed = true;\n }\n if (copy) { copy.push(other); }\n }\n }\n if (!copy) { copy = set.slice(); }\n if (!placed) { copy.push(this); }\n return copy\n};\n\n// :: ([Mark]) → [Mark]\n// Remove this mark from the given set, returning a new set. If this\n// mark is not in the set, the set itself is returned.\nMark.prototype.removeFromSet = function removeFromSet (set) {\n for (var i = 0; i < set.length; i++)\n { if (this.eq(set[i]))\n { return set.slice(0, i).concat(set.slice(i + 1)) } }\n return set\n};\n\n// :: ([Mark]) → bool\n// Test whether this mark is in the given set of marks.\nMark.prototype.isInSet = function isInSet (set) {\n for (var i = 0; i < set.length; i++)\n { if (this.eq(set[i])) { return true } }\n return false\n};\n\n// :: (Mark) → bool\n// Test whether this mark has the same type and attributes as\n// another mark.\nMark.prototype.eq = function eq (other) {\n return this == other ||\n (this.type == other.type && compareDeep(this.attrs, other.attrs))\n};\n\n// :: () → Object\n// Convert this mark to a JSON-serializeable representation.\nMark.prototype.toJSON = function toJSON () {\n var obj = {type: this.type.name};\n for (var _ in this.attrs) {\n obj.attrs = this.attrs;\n break\n }\n return obj\n};\n\n// :: (Schema, Object) → Mark\nMark.fromJSON = function fromJSON (schema, json) {\n if (!json) { throw new RangeError(\"Invalid input for Mark.fromJSON\") }\n var type = schema.marks[json.type];\n if (!type) { throw new RangeError((\"There is no mark type \" + (json.type) + \" in this schema\")) }\n return type.create(json.attrs)\n};\n\n// :: ([Mark], [Mark]) → bool\n// Test whether two sets of marks are identical.\nMark.sameSet = function sameSet (a, b) {\n if (a == b) { return true }\n if (a.length != b.length) { return false }\n for (var i = 0; i < a.length; i++)\n { if (!a[i].eq(b[i])) { return false } }\n return true\n};\n\n// :: (?union<Mark, [Mark]>) → [Mark]\n// Create a properly sorted mark set from null, a single mark, or an\n// unsorted array of marks.\nMark.setFrom = function setFrom (marks) {\n if (!marks || marks.length == 0) { return Mark.none }\n if (marks instanceof Mark) { return [marks] }\n var copy = marks.slice();\n copy.sort(function (a, b) { return a.type.rank - b.type.rank; });\n return copy\n};\n\n// :: [Mark] The empty set of marks.\nMark.none = [];\n\n// ReplaceError:: class extends Error\n// Error type raised by [`Node.replace`](#model.Node.replace) when\n// given an invalid replacement.\n\nfunction ReplaceError(message) {\n var err = Error.call(this, message);\n err.__proto__ = ReplaceError.prototype;\n return err\n}\n\nReplaceError.prototype = Object.create(Error.prototype);\nReplaceError.prototype.constructor = ReplaceError;\nReplaceError.prototype.name = \"ReplaceError\";\n\n// ::- A slice represents a piece cut out of a larger document. It\n// stores not only a fragment, but also the depth up to which nodes on\n// both side are ‘open’ (cut through).\nvar Slice = function Slice(content, openStart, openEnd) {\n // :: Fragment The slice's content.\n this.content = content;\n // :: number The open depth at the start.\n this.openStart = openStart;\n // :: number The open depth at the end.\n this.openEnd = openEnd;\n};\n\nvar prototypeAccessors$1 = { size: { configurable: true } };\n\n// :: number\n// The size this slice would add when inserted into a document.\nprototypeAccessors$1.size.get = function () {\n return this.content.size - this.openStart - this.openEnd\n};\n\nSlice.prototype.insertAt = function insertAt (pos, fragment) {\n var content = insertInto(this.content, pos + this.openStart, fragment, null);\n return content && new Slice(content, this.openStart, this.openEnd)\n};\n\nSlice.prototype.removeBetween = function removeBetween (from, to) {\n return new Slice(removeRange(this.content, from + this.openStart, to + this.openStart), this.openStart, this.openEnd)\n};\n\n// :: (Slice) → bool\n// Tests whether this slice is equal to another slice.\nSlice.prototype.eq = function eq (other) {\n return this.content.eq(other.content) && this.openStart == other.openStart && this.openEnd == other.openEnd\n};\n\nSlice.prototype.toString = function toString () {\n return this.content + \"(\" + this.openStart + \",\" + this.openEnd + \")\"\n};\n\n// :: () → ?Object\n// Convert a slice to a JSON-serializable representation.\nSlice.prototype.toJSON = function toJSON () {\n if (!this.content.size) { return null }\n var json = {content: this.content.toJSON()};\n if (this.openStart > 0) { json.openStart = this.openStart; }\n if (this.openEnd > 0) { json.openEnd = this.openEnd; }\n return json\n};\n\n// :: (Schema, ?Object) → Slice\n// Deserialize a slice from its JSON representation.\nSlice.fromJSON = function fromJSON (schema, json) {\n if (!json) { return Slice.empty }\n var openStart = json.openStart || 0, openEnd = json.openEnd || 0;\n if (typeof openStart != \"number\" || typeof openEnd != \"number\")\n { throw new RangeError(\"Invalid input for Slice.fromJSON\") }\n return new Slice(Fragment.fromJSON(schema, json.content), json.openStart || 0, json.openEnd || 0)\n};\n\n// :: (Fragment, ?bool) → Slice\n// Create a slice from a fragment by taking the maximum possible\n// open value on both side of the fragment.\nSlice.maxOpen = function maxOpen (fragment, openIsolating) {\n if ( openIsolating === void 0 ) openIsolating=true;\n\n var openStart = 0, openEnd = 0;\n for (var n = fragment.firstChild; n && !n.isLeaf && (openIsolating || !n.type.spec.isolating); n = n.firstChild) { openStart++; }\n for (var n$1 = fragment.lastChild; n$1 && !n$1.isLeaf && (openIsolating || !n$1.type.spec.isolating); n$1 = n$1.lastChild) { openEnd++; }\n return new Slice(fragment, openStart, openEnd)\n};\n\nObject.defineProperties( Slice.prototype, prototypeAccessors$1 );\n\nfunction removeRange(content, from, to) {\n var ref = content.findIndex(from);\n var index = ref.index;\n var offset = ref.offset;\n var child = content.maybeChild(index);\n var ref$1 = content.findIndex(to);\n var indexTo = ref$1.index;\n var offsetTo = ref$1.offset;\n if (offset == from || child.isText) {\n if (offsetTo != to && !content.child(indexTo).isText) { throw new RangeError(\"Removing non-flat range\") }\n return content.cut(0, from).append(content.cut(to))\n }\n if (index != indexTo) { throw new RangeError(\"Removing non-flat range\") }\n return content.replaceChild(index, child.copy(removeRange(child.content, from - offset - 1, to - offset - 1)))\n}\n\nfunction insertInto(content, dist, insert, parent) {\n var ref = content.findIndex(dist);\n var index = ref.index;\n var offset = ref.offset;\n var child = content.maybeChild(index);\n if (offset == dist || child.isText) {\n if (parent && !parent.canReplace(index, index, insert)) { return null }\n return content.cut(0, dist).append(insert).append(content.cut(dist))\n }\n var inner = insertInto(child.content, dist - offset - 1, insert);\n return inner && content.replaceChild(index, child.copy(inner))\n}\n\n// :: Slice\n// The empty slice.\nSlice.empty = new Slice(Fragment.empty, 0, 0);\n\nfunction replace($from, $to, slice) {\n if (slice.openStart > $from.depth)\n { throw new ReplaceError(\"Inserted content deeper than insertion position\") }\n if ($from.depth - slice.openStart != $to.depth - slice.openEnd)\n { throw new ReplaceError(\"Inconsistent open depths\") }\n return replaceOuter($from, $to, slice, 0)\n}\n\nfunction replaceOuter($from, $to, slice, depth) {\n var index = $from.index(depth), node = $from.node(depth);\n if (index == $to.index(depth) && depth < $from.depth - slice.openStart) {\n var inner = replaceOuter($from, $to, slice, depth + 1);\n return node.copy(node.content.replaceChild(index, inner))\n } else if (!slice.content.size) {\n return close(node, replaceTwoWay($from, $to, depth))\n } else if (!slice.openStart && !slice.openEnd && $from.depth == depth && $to.depth == depth) { // Simple, flat case\n var parent = $from.parent, content = parent.content;\n return close(parent, content.cut(0, $from.parentOffset).append(slice.content).append(content.cut($to.parentOffset)))\n } else {\n var ref = prepareSliceForReplace(slice, $from);\n var start = ref.start;\n var end = ref.end;\n return close(node, replaceThreeWay($from, start, end, $to, depth))\n }\n}\n\nfunction checkJoin(main, sub) {\n if (!sub.type.compatibleContent(main.type))\n { throw new ReplaceError(\"Cannot join \" + sub.type.name + \" onto \" + main.type.name) }\n}\n\nfunction joinable($before, $after, depth) {\n var node = $before.node(depth);\n checkJoin(node, $after.node(depth));\n return node\n}\n\nfunction addNode(child, target) {\n var last = target.length - 1;\n if (last >= 0 && child.isText && child.sameMarkup(target[last]))\n { target[last] = child.withText(target[last].text + child.text); }\n else\n { target.push(child); }\n}\n\nfunction addRange($start, $end, depth, target) {\n var node = ($end || $start).node(depth);\n var startIndex = 0, endIndex = $end ? $end.index(depth) : node.childCount;\n if ($start) {\n startIndex = $start.index(depth);\n if ($start.depth > depth) {\n startIndex++;\n } else if ($start.textOffset) {\n addNode($start.nodeAfter, target);\n startIndex++;\n }\n }\n for (var i = startIndex; i < endIndex; i++) { addNode(node.child(i), target); }\n if ($end && $end.depth == depth && $end.textOffset)\n { addNode($end.nodeBefore, target); }\n}\n\nfunction close(node, content) {\n if (!node.type.validContent(content))\n { throw new ReplaceError(\"Invalid content for node \" + node.type.name) }\n return node.copy(content)\n}\n\nfunction replaceThreeWay($from, $start, $end, $to, depth) {\n var openStart = $from.depth > depth && joinable($from, $start, depth + 1);\n var openEnd = $to.depth > depth && joinable($end, $to, depth + 1);\n\n var content = [];\n addRange(null, $from, depth, content);\n if (openStart && openEnd && $start.index(depth) == $end.index(depth)) {\n checkJoin(openStart, openEnd);\n addNode(close(openStart, replaceThreeWay($from, $start, $end, $to, depth + 1)), content);\n } else {\n if (openStart)\n { addNode(close(openStart, replaceTwoWay($from, $start, depth + 1)), content); }\n addRange($start, $end, depth, content);\n if (openEnd)\n { addNode(close(openEnd, replaceTwoWay($end, $to, depth + 1)), content); }\n }\n addRange($to, null, depth, content);\n return new Fragment(content)\n}\n\nfunction replaceTwoWay($from, $to, depth) {\n var content = [];\n addRange(null, $from, depth, content);\n if ($from.depth > depth) {\n var type = joinable($from, $to, depth + 1);\n addNode(close(type, replaceTwoWay($from, $to, depth + 1)), content);\n }\n addRange($to, null, depth, content);\n return new Fragment(content)\n}\n\nfunction prepareSliceForReplace(slice, $along) {\n var extra = $along.depth - slice.openStart, parent = $along.node(extra);\n var node = parent.copy(slice.content);\n for (var i = extra - 1; i >= 0; i--)\n { node = $along.node(i).copy(Fragment.from(node)); }\n return {start: node.resolveNoCache(slice.openStart + extra),\n end: node.resolveNoCache(node.content.size - slice.openEnd - extra)}\n}\n\n// ::- You can [_resolve_](#model.Node.resolve) a position to get more\n// information about it. Objects of this class represent such a\n// resolved position, providing various pieces of context information,\n// and some helper methods.\n//\n// Throughout this interface, methods that take an optional `depth`\n// parameter will interpret undefined as `this.depth` and negative\n// numbers as `this.depth + value`.\nvar ResolvedPos = function ResolvedPos(pos, path, parentOffset) {\n // :: number The position that was resolved.\n this.pos = pos;\n this.path = path;\n // :: number\n // The number of levels the parent node is from the root. If this\n // position points directly into the root node, it is 0. If it\n // points into a top-level paragraph, 1, and so on.\n this.depth = path.length / 3 - 1;\n // :: number The offset this position has into its parent node.\n this.parentOffset = parentOffset;\n};\n\nvar prototypeAccessors$2 = { parent: { configurable: true },doc: { configurable: true },textOffset: { configurable: true },nodeAfter: { configurable: true },nodeBefore: { configurable: true } };\n\nResolvedPos.prototype.resolveDepth = function resolveDepth (val) {\n if (val == null) { return this.depth }\n if (val < 0) { return this.depth + val }\n return val\n};\n\n// :: Node\n// The parent node that the position points into. Note that even if\n// a position points into a text node, that node is not considered\n// the parent—text nodes are ‘flat’ in this model, and have no content.\nprototypeAccessors$2.parent.get = function () { return this.node(this.depth) };\n\n// :: Node\n// The root node in which the position was resolved.\nprototypeAccessors$2.doc.get = function () { return this.node(0) };\n\n// :: (?number) → Node\n// The ancestor node at the given level. `p.node(p.depth)` is the\n// same as `p.parent`.\nResolvedPos.prototype.node = function node (depth) { return this.path[this.resolveDepth(depth) * 3] };\n\n// :: (?number) → number\n// The index into the ancestor at the given level. If this points at\n// the 3rd node in the 2nd paragraph on the top level, for example,\n// `p.index(0)` is 1 and `p.index(1)` is 2.\nResolvedPos.prototype.index = function index (depth) { return this.path[this.resolveDepth(depth) * 3 + 1] };\n\n// :: (?number) → number\n// The index pointing after this position into the ancestor at the\n// given level.\nResolvedPos.prototype.indexAfter = function indexAfter (depth) {\n depth = this.resolveDepth(depth);\n return this.index(depth) + (depth == this.depth && !this.textOffset ? 0 : 1)\n};\n\n// :: (?number) → number\n// The (absolute) position at the start of the node at the given\n// level.\nResolvedPos.prototype.start = function start (depth) {\n depth = this.resolveDepth(depth);\n return depth == 0 ? 0 : this.path[depth * 3 - 1] + 1\n};\n\n// :: (?number) → number\n// The (absolute) position at the end of the node at the given\n// level.\nResolvedPos.prototype.end = function end (depth) {\n depth = this.resolveDepth(depth);\n return this.start(depth) + this.node(depth).content.size\n};\n\n// :: (?number) → number\n// The (absolute) position directly before the wrapping node at the\n// given level, or, when `depth` is `this.depth + 1`, the original\n// position.\nResolvedPos.prototype.before = function before (depth) {\n depth = this.resolveDepth(depth);\n if (!depth) { throw new RangeError(\"There is no position before the top-level node\") }\n return depth == this.depth + 1 ? this.pos : this.path[depth * 3 - 1]\n};\n\n// :: (?number) → number\n// The (absolute) position directly after the wrapping node at the\n// given level, or the original position when `depth` is `this.depth + 1`.\nResolvedPos.prototype.after = function after (depth) {\n depth = this.resolveDepth(depth);\n if (!depth) { throw new RangeError(\"There is no position after the top-level node\") }\n return depth == this.depth + 1 ? this.pos : this.path[depth * 3 - 1] + this.path[depth * 3].nodeSize\n};\n\n// :: number\n// When this position points into a text node, this returns the\n// distance between the position and the start of the text node.\n// Will be zero for positions that point between nodes.\nprototypeAccessors$2.textOffset.get = function () { return this.pos - this.path[this.path.length - 1] };\n\n// :: ?Node\n// Get the node directly after the position, if any. If the position\n// points into a text node, only the part of that node after the\n// position is returned.\nprototypeAccessors$2.nodeAfter.get = function () {\n var parent = this.parent, index = this.index(this.depth);\n if (index == parent.childCount) { return null }\n var dOff = this.pos - this.path[this.path.length - 1], child = parent.child(index);\n return dOff ? parent.child(index).cut(dOff) : child\n};\n\n// :: ?Node\n// Get the node directly before the position, if any. If the\n// position points into a text node, only the part of that node\n// before the position is returned.\nprototypeAccessors$2.nodeBefore.get = function () {\n var index = this.index(this.depth);\n var dOff = this.pos - this.path[this.path.length - 1];\n if (dOff) { return this.parent.child(index).cut(0, dOff) }\n return index == 0 ? null : this.parent.child(index - 1)\n};\n\n// :: () → [Mark]\n// Get the marks at this position, factoring in the surrounding\n// marks' [`inclusive`](#model.MarkSpec.inclusive) property. If the\n// position is at the start of a non-empty node, the marks of the\n// node after it (if any) are returned.\nResolvedPos.prototype.marks = function marks () {\n var parent = this.parent, index = this.index();\n\n // In an empty parent, return the empty array\n if (parent.content.size == 0) { return Mark.none }\n\n // When inside a text node, just return the text node's marks\n if (this.textOffset) { return parent.child(index).marks }\n\n var main = parent.maybeChild(index - 1), other = parent.maybeChild(index);\n // If the `after` flag is true of there is no node before, make\n // the node after this position the main reference.\n if (!main) { var tmp = main; main = other; other = tmp; }\n\n // Use all marks in the main node, except those that have\n // `inclusive` set to false and are not present in the other node.\n var marks = main.marks;\n for (var i = 0; i < marks.length; i++)\n { if (marks[i].type.spec.inclusive === false && (!other || !marks[i].isInSet(other.marks)))\n { marks = marks[i--].removeFromSet(marks); } }\n\n return marks\n};\n\n// :: (ResolvedPos) → ?[Mark]\n// Get the marks after the current position, if any, except those\n// that are non-inclusive and not present at position `$end`. This\n// is mostly useful for getting the set of marks to preserve after a\n// deletion. Will return `null` if this position is at the end of\n// its parent node or its parent node isn't a textblock (in which\n// case no marks should be preserved).\nResolvedPos.prototype.marksAcross = function marksAcross ($end) {\n var after = this.parent.maybeChild(this.index());\n if (!after || !after.isInline) { return null }\n\n var marks = after.marks, next = $end.parent.maybeChild($end.index());\n for (var i = 0; i < marks.length; i++)\n { if (marks[i].type.spec.inclusive === false && (!next || !marks[i].isInSet(next.marks)))\n { marks = marks[i--].removeFromSet(marks); } }\n return marks\n};\n\n// :: (number) → number\n// The depth up to which this position and the given (non-resolved)\n// position share the same parent nodes.\nResolvedPos.prototype.sharedDepth = function sharedDepth (pos) {\n for (var depth = this.depth; depth > 0; depth--)\n { if (this.start(depth) <= pos && this.end(depth) >= pos) { return depth } }\n return 0\n};\n\n// :: (?ResolvedPos, ?(Node) → bool) → ?NodeRange\n// Returns a range based on the place where this position and the\n// given position diverge around block content. If both point into\n// the same textblock, for example, a range around that textblock\n// will be returned. If they point into different blocks, the range\n// around those blocks in their shared ancestor is returned. You can\n// pass in an optional predicate that will be called with a parent\n// node to see if a range into that parent is acceptable.\nResolvedPos.prototype.blockRange = function blockRange (other, pred) {\n if ( other === void 0 ) other = this;\n\n if (other.pos < this.pos) { return other.blockRange(this) }\n for (var d = this.depth - (this.parent.inlineContent || this.pos == other.pos ? 1 : 0); d >= 0; d--)\n { if (other.pos <= this.end(d) && (!pred || pred(this.node(d))))\n { return new NodeRange(this, other, d) } }\n};\n\n// :: (ResolvedPos) → bool\n// Query whether the given position shares the same parent node.\nResolvedPos.prototype.sameParent = function sameParent (other) {\n return this.pos - this.parentOffset == other.pos - other.parentOffset\n};\n\n// :: (ResolvedPos) → ResolvedPos\n// Return the greater of this and the given position.\nResolvedPos.prototype.max = function max (other) {\n return other.pos > this.pos ? other : this\n};\n\n// :: (ResolvedPos) → ResolvedPos\n// Return the smaller of this and the given position.\nResolvedPos.prototype.min = function min (other) {\n return other.pos < this.pos ? other : this\n};\n\nResolvedPos.prototype.toString = function toString () {\n var str = \"\";\n for (var i = 1; i <= this.depth; i++)\n { str += (str ? \"/\" : \"\") + this.node(i).type.name + \"_\" + this.index(i - 1); }\n return str + \":\" + this.parentOffset\n};\n\nResolvedPos.resolve = function resolve (doc, pos) {\n if (!(pos >= 0 && pos <= doc.content.size)) { throw new RangeError(\"Position \" + pos + \" out of range\") }\n var path = [];\n var start = 0, parentOffset = pos;\n for (var node = doc;;) {\n var ref = node.content.findIndex(parentOffset);\n var index = ref.index;\n var offset = ref.offset;\n var rem = parentOffset - offset;\n path.push(node, index, start + offset);\n if (!rem) { break }\n node = node.child(index);\n if (node.isText) { break }\n parentOffset = rem - 1;\n start += offset + 1;\n }\n return new ResolvedPos(pos, path, parentOffset)\n};\n\nResolvedPos.resolveCached = function resolveCached (doc, pos) {\n for (var i = 0; i < resolveCache.length; i++) {\n var cached = resolveCache[i];\n if (cached.pos == pos && cached.doc == doc) { return cached }\n }\n var result = resolveCache[resolveCachePos] = ResolvedPos.resolve(doc, pos);\n resolveCachePos = (resolveCachePos + 1) % resolveCacheSize;\n return result\n};\n\nObject.defineProperties( ResolvedPos.prototype, prototypeAccessors$2 );\n\nvar resolveCache = [], resolveCachePos = 0, resolveCacheSize = 12;\n\n// ::- Represents a flat range of content, i.e. one that starts and\n// ends in the same node.\nvar NodeRange = function NodeRange($from, $to, depth) {\n // :: ResolvedPos A resolved position along the start of the\n // content. May have a `depth` greater than this object's `depth`\n // property, since these are the positions that were used to\n // compute the range, not re-resolved positions directly at its\n // boundaries.\n this.$from = $from;\n // :: ResolvedPos A position along the end of the content. See\n // caveat for [`$from`](#model.NodeRange.$from).\n this.$to = $to;\n // :: number The depth of the node that this range points into.\n this.depth = depth;\n};\n\nvar prototypeAccessors$1$1 = { start: { configurable: true },end: { configurable: true },parent: { configurable: true },startIndex: { configurable: true },endIndex: { configurable: true } };\n\n// :: number The position at the start of the range.\nprototypeAccessors$1$1.start.get = function () { return this.$from.before(this.depth + 1) };\n// :: number The position at the end of the range.\nprototypeAccessors$1$1.end.get = function () { return this.$to.after(this.depth + 1) };\n\n// :: Node The parent node that the range points into.\nprototypeAccessors$1$1.parent.get = function () { return this.$from.node(this.depth) };\n// :: number The start index of the range in the parent node.\nprototypeAccessors$1$1.startIndex.get = function () { return this.$from.index(this.depth) };\n// :: number The end index of the range in the parent node.\nprototypeAccessors$1$1.endIndex.get = function () { return this.$to.indexAfter(this.depth) };\n\nObject.defineProperties( NodeRange.prototype, prototypeAccessors$1$1 );\n\nvar emptyAttrs = Object.create(null);\n\n// ::- This class represents a node in the tree that makes up a\n// ProseMirror document. So a document is an instance of `Node`, with\n// children that are also instances of `Node`.\n//\n// Nodes are persistent data structures. Instead of changing them, you\n// create new ones with the content you want. Old ones keep pointing\n// at the old document shape. This is made cheaper by sharing\n// structure between the old and new data as much as possible, which a\n// tree shape like this (without back pointers) makes easy.\n//\n// **Do not** directly mutate the properties of a `Node` object. See\n// [the guide](/docs/guide/#doc) for more information.\nvar Node = function Node(type, attrs, content, marks) {\n // :: NodeType\n // The type of node that this is.\n this.type = type;\n\n // :: Object\n // An object mapping attribute names to values. The kind of\n // attributes allowed and required are\n // [determined](#model.NodeSpec.attrs) by the node type.\n this.attrs = attrs;\n\n // :: Fragment\n // A container holding the node's children.\n this.content = content || Fragment.empty;\n\n // :: [Mark]\n // The marks (things like whether it is emphasized or part of a\n // link) applied to this node.\n this.marks = marks || Mark.none;\n};\n\nvar prototypeAccessors$3 = { nodeSize: { configurable: true },childCount: { configurable: true },textContent: { configurable: true },firstChild: { configurable: true },lastChild: { configurable: true },isBlock: { configurable: true },isTextblock: { configurable: true },inlineContent: { configurable: true },isInline: { configurable: true },isText: { configurable: true },isLeaf: { configurable: true },isAtom: { configurable: true } };\n\n// text:: ?string\n// For text nodes, this contains the node's text content.\n\n// :: number\n// The size of this node, as defined by the integer-based [indexing\n// scheme](/docs/guide/#doc.indexing). For text nodes, this is the\n// amount of characters. For other leaf nodes, it is one. For\n// non-leaf nodes, it is the size of the content plus two (the start\n// and end token).\nprototypeAccessors$3.nodeSize.get = function () { return this.isLeaf ? 1 : 2 + this.content.size };\n\n// :: number\n// The number of children that the node has.\nprototypeAccessors$3.childCount.get = function () { return this.content.childCount };\n\n// :: (number) → Node\n// Get the child node at the given index. Raises an error when the\n// index is out of range.\nNode.prototype.child = function child (index) { return this.content.child(index) };\n\n// :: (number) → ?Node\n// Get the child node at the given index, if it exists.\nNode.prototype.maybeChild = function maybeChild (index) { return this.content.maybeChild(index) };\n\n// :: ((node: Node, offset: number, index: number))\n// Call `f` for every child node, passing the node, its offset\n// into this parent node, and its index.\nNode.prototype.forEach = function forEach (f) { this.content.forEach(f); };\n\n// :: (number, number, (node: Node, pos: number, parent: Node, index: number) → ?bool, ?number)\n// Invoke a callback for all descendant nodes recursively between\n// the given two positions that are relative to start of this node's\n// content. The callback is invoked with the node, its\n// parent-relative position, its parent node, and its child index.\n// When the callback returns false for a given node, that node's\n// children will not be recursed over. The last parameter can be\n// used to specify a starting position to count from.\nNode.prototype.nodesBetween = function nodesBetween (from, to, f, startPos) {\n if ( startPos === void 0 ) startPos = 0;\n\n this.content.nodesBetween(from, to, f, startPos, this);\n};\n\n// :: ((node: Node, pos: number, parent: Node) → ?bool)\n// Call the given callback for every descendant node. Doesn't\n// descend into a node when the callback returns `false`.\nNode.prototype.descendants = function descendants (f) {\n this.nodesBetween(0, this.content.size, f);\n};\n\n// :: string\n// Concatenates all the text nodes found in this fragment and its\n// children.\nprototypeAccessors$3.textContent.get = function () { return this.textBetween(0, this.content.size, \"\") };\n\n// :: (number, number, ?string, ?string) → string\n// Get all text between positions `from` and `to`. When\n// `blockSeparator` is given, it will be inserted whenever a new\n// block node is started. When `leafText` is given, it'll be\n// inserted for every non-text leaf node encountered.\nNode.prototype.textBetween = function textBetween (from, to, blockSeparator, leafText) {\n return this.content.textBetween(from, to, blockSeparator, leafText)\n};\n\n// :: ?Node\n// Returns this node's first child, or `null` if there are no\n// children.\nprototypeAccessors$3.firstChild.get = function () { return this.content.firstChild };\n\n// :: ?Node\n// Returns this node's last child, or `null` if there are no\n// children.\nprototypeAccessors$3.lastChild.get = function () { return this.content.lastChild };\n\n// :: (Node) → bool\n// Test whether two nodes represent the same piece of document.\nNode.prototype.eq = function eq (other) {\n return this == other || (this.sameMarkup(other) && this.content.eq(other.content))\n};\n\n// :: (Node) → bool\n// Compare the markup (type, attributes, and marks) of this node to\n// those of another. Returns `true` if both have the same markup.\nNode.prototype.sameMarkup = function sameMarkup (other) {\n return this.hasMarkup(other.type, other.attrs, other.marks)\n};\n\n// :: (NodeType, ?Object, ?[Mark]) → bool\n// Check whether this node's markup correspond to the given type,\n// attributes, and marks.\nNode.prototype.hasMarkup = function hasMarkup (type, attrs, marks) {\n return this.type == type &&\n compareDeep(this.attrs, attrs || type.defaultAttrs || emptyAttrs) &&\n Mark.sameSet(this.marks, marks || Mark.none)\n};\n\n// :: (?Fragment) → Node\n// Create a new node with the same markup as this node, containing\n// the given content (or empty, if no content is given).\nNode.prototype.copy = function copy (content) {\n if ( content === void 0 ) content = null;\n\n if (content == this.content) { return this }\n return new this.constructor(this.type, this.attrs, content, this.marks)\n};\n\n// :: ([Mark]) → Node\n// Create a copy of this node, with the given set of marks instead\n// of the node's own marks.\nNode.prototype.mark = function mark (marks) {\n return marks == this.marks ? this : new this.constructor(this.type, this.attrs, this.content, marks)\n};\n\n// :: (number, ?number) → Node\n// Create a copy of this node with only the content between the\n// given positions. If `to` is not given, it defaults to the end of\n// the node.\nNode.prototype.cut = function cut (from, to) {\n if (from == 0 && to == this.content.size) { return this }\n return this.copy(this.content.cut(from, to))\n};\n\n// :: (number, ?number) → Slice\n// Cut out the part of the document between the given positions, and\n// return it as a `Slice` object.\nNode.prototype.slice = function slice (from, to, includeParents) {\n if ( to === void 0 ) to = this.content.size;\n if ( includeParents === void 0 ) includeParents = false;\n\n if (from == to) { return Slice.empty }\n\n var $from = this.resolve(from), $to = this.resolve(to);\n var depth = includeParents ? 0 : $from.sharedDepth(to);\n var start = $from.start(depth), node = $from.node(depth);\n var content = node.content.cut($from.pos - start, $to.pos - start);\n return new Slice(content, $from.depth - depth, $to.depth - depth)\n};\n\n// :: (number, number, Slice) → Node\n// Replace the part of the document between the given positions with\n// the given slice. The slice must 'fit', meaning its open sides\n// must be able to connect to the surrounding content, and its\n// content nodes must be valid children for the node they are placed\n// into. If any of this is violated, an error of type\n// [`ReplaceError`](#model.ReplaceError) is thrown.\nNode.prototype.replace = function replace$1 (from, to, slice) {\n return replace(this.resolve(from), this.resolve(to), slice)\n};\n\n// :: (number) → ?Node\n// Find the node directly after the given position.\nNode.prototype.nodeAt = function nodeAt (pos) {\n for (var node = this;;) {\n var ref = node.content.findIndex(pos);\n var index = ref.index;\n var offset = ref.offset;\n node = node.maybeChild(index);\n if (!node) { return null }\n if (offset == pos || node.isText) { return node }\n pos -= offset + 1;\n }\n};\n\n// :: (number) → {node: ?Node, index: number, offset: number}\n// Find the (direct) child node after the given offset, if any,\n// and return it along with its index and offset relative to this\n// node.\nNode.prototype.childAfter = function childAfter (pos) {\n var ref = this.content.findIndex(pos);\n var index = ref.index;\n var offset = ref.offset;\n return {node: this.content.maybeChild(index), index: index, offset: offset}\n};\n\n// :: (number) → {node: ?Node, index: number, offset: number}\n// Find the (direct) child node before the given offset, if any,\n// and return it along with its index and offset relative to this\n// node.\nNode.prototype.childBefore = function childBefore (pos) {\n if (pos == 0) { return {node: null, index: 0, offset: 0} }\n var ref = this.content.findIndex(pos);\n var index = ref.index;\n var offset = ref.offset;\n if (offset < pos) { return {node: this.content.child(index), index: index, offset: offset} }\n var node = this.content.child(index - 1);\n return {node: node, index: index - 1, offset: offset - node.nodeSize}\n};\n\n// :: (number) → ResolvedPos\n// Resolve the given position in the document, returning an\n// [object](#model.ResolvedPos) with information about its context.\nNode.prototype.resolve = function resolve (pos) { return ResolvedPos.resolveCached(this, pos) };\n\nNode.prototype.resolveNoCache = function resolveNoCache (pos) { return ResolvedPos.resolve(this, pos) };\n\n// :: (number, number, MarkType) → bool\n// Test whether a mark of the given type occurs in this document\n// between the two given positions.\nNode.prototype.rangeHasMark = function rangeHasMark (from, to, type) {\n var found = false;\n if (to > from) { this.nodesBetween(from, to, function (node) {\n if (type.isInSet(node.marks)) { found = true; }\n return !found\n }); }\n return found\n};\n\n// :: bool\n// True when this is a block (non-inline node)\nprototypeAccessors$3.isBlock.get = function () { return this.type.isBlock };\n\n// :: bool\n// True when this is a textblock node, a block node with inline\n// content.\nprototypeAccessors$3.isTextblock.get = function () { return this.type.isTextblock };\n\n// :: bool\n// True when this node allows inline content.\nprototypeAccessors$3.inlineContent.get = function () { return this.type.inlineContent };\n\n// :: bool\n// True when this is an inline node (a text node or a node that can\n// appear among text).\nprototypeAccessors$3.isInline.get = function () { return this.type.isInline };\n\n// :: bool\n// True when this is a text node.\nprototypeAccessors$3.isText.get = function () { return this.type.isText };\n\n// :: bool\n// True when this is a leaf node.\nprototypeAccessors$3.isLeaf.get = function () { return this.type.isLeaf };\n\n// :: bool\n// True when this is an atom, i.e. when it does not have directly\n// editable content. This is usually the same as `isLeaf`, but can\n// be configured with the [`atom` property](#model.NodeSpec.atom) on\n// a node's spec (typically used when the node is displayed as an\n// uneditable [node view](#view.NodeView)).\nprototypeAccessors$3.isAtom.get = function () { return this.type.isAtom };\n\n// :: () → string\n// Return a string representation of this node for debugging\n// purposes.\nNode.prototype.toString = function toString () {\n if (this.type.spec.toDebugString) { return this.type.spec.toDebugString(this) }\n var name = this.type.name;\n if (this.content.size)\n { name += \"(\" + this.content.toStringInner() + \")\"; }\n return wrapMarks(this.marks, name)\n};\n\n// :: (number) → ContentMatch\n// Get the content match in this node at the given index.\nNode.prototype.contentMatchAt = function contentMatchAt (index) {\n var match = this.type.contentMatch.matchFragment(this.content, 0, index);\n if (!match) { throw new Error(\"Called contentMatchAt on a node with invalid content\") }\n return match\n};\n\n// :: (number, number, ?Fragment, ?number, ?number) → bool\n// Test whether replacing the range between `from` and `to` (by\n// child index) with the given replacement fragment (which defaults\n// to the empty fragment) would leave the node's content valid. You\n// can optionally pass `start` and `end` indices into the\n// replacement fragment.\nNode.prototype.canReplace = function canReplace (from, to, replacement, start, end) {\n if ( replacement === void 0 ) replacement = Fragment.empty;\n if ( start === void 0 ) start = 0;\n if ( end === void 0 ) end = replacement.childCount;\n\n var one = this.contentMatchAt(from).matchFragment(replacement, start, end);\n var two = one && one.matchFragment(this.content, to);\n if (!two || !two.validEnd) { return false }\n for (var i = start; i < end; i++) { if (!this.type.allowsMarks(replacement.child(i).marks)) { return false } }\n return true\n};\n\n// :: (number, number, NodeType, ?[Mark]) → bool\n// Test whether replacing the range `from` to `to` (by index) with a\n// node of the given type would leave the node's content valid.\nNode.prototype.canReplaceWith = function canReplaceWith (from, to, type, marks) {\n if (marks && !this.type.allowsMarks(marks)) { return false }\n var start = this.contentMatchAt(from).matchType(type);\n var end = start && start.matchFragment(this.content, to);\n return end ? end.validEnd : false\n};\n\n// :: (Node) → bool\n// Test whether the given node's content could be appended to this\n// node. If that node is empty, this will only return true if there\n// is at least one node type that can appear in both nodes (to avoid\n// merging completely incompatible nodes).\nNode.prototype.canAppend = function canAppend (other) {\n if (other.content.size) { return this.canReplace(this.childCount, this.childCount, other.content) }\n else { return this.type.compatibleContent(other.type) }\n};\n\n// :: ()\n// Check whether this node and its descendants conform to the\n// schema, and raise error when they do not.\nNode.prototype.check = function check () {\n if (!this.type.validContent(this.content))\n { throw new RangeError((\"Invalid content for node \" + (this.type.name) + \": \" + (this.content.toString().slice(0, 50)))) }\n this.content.forEach(function (node) { return node.check(); });\n};\n\n// :: () → Object\n// Return a JSON-serializeable representation of this node.\nNode.prototype.toJSON = function toJSON () {\n var obj = {type: this.type.name};\n for (var _ in this.attrs) {\n obj.attrs = this.attrs;\n break\n }\n if (this.content.size)\n { obj.content = this.content.toJSON(); }\n if (this.marks.length)\n { obj.marks = this.marks.map(function (n) { return n.toJSON(); }); }\n return obj\n};\n\n// :: (Schema, Object) → Node\n// Deserialize a node from its JSON representation.\nNode.fromJSON = function fromJSON (schema, json) {\n if (!json) { throw new RangeError(\"Invalid input for Node.fromJSON\") }\n var marks = null;\n if (json.marks) {\n if (!Array.isArray(json.marks)) { throw new RangeError(\"Invalid mark data for Node.fromJSON\") }\n marks = json.marks.map(schema.markFromJSON);\n }\n if (json.type == \"text\") {\n if (typeof json.text != \"string\") { throw new RangeError(\"Invalid text node in JSON\") }\n return schema.text(json.text, marks)\n }\n var content = Fragment.fromJSON(schema, json.content);\n return schema.nodeType(json.type).create(json.attrs, content, marks)\n};\n\nObject.defineProperties( Node.prototype, prototypeAccessors$3 );\n\nvar TextNode = /*@__PURE__*/(function (Node) {\n function TextNode(type, attrs, content, marks) {\n Node.call(this, type, attrs, null, marks);\n\n if (!content) { throw new RangeError(\"Empty text nodes are not allowed\") }\n\n this.text = content;\n }\n\n if ( Node ) TextNode.__proto__ = Node;\n TextNode.prototype = Object.create( Node && Node.prototype );\n TextNode.prototype.constructor = TextNode;\n\n var prototypeAccessors$1 = { textContent: { configurable: true },nodeSize: { configurable: true } };\n\n TextNode.prototype.toString = function toString () {\n if (this.type.spec.toDebugString) { return this.type.spec.toDebugString(this) }\n return wrapMarks(this.marks, JSON.stringify(this.text))\n };\n\n prototypeAccessors$1.textContent.get = function () { return this.text };\n\n TextNode.prototype.textBetween = function textBetween (from, to) { return this.text.slice(from, to) };\n\n prototypeAccessors$1.nodeSize.get = function () { return this.text.length };\n\n TextNode.prototype.mark = function mark (marks) {\n return marks == this.marks ? this : new TextNode(this.type, this.attrs, this.text, marks)\n };\n\n TextNode.prototype.withText = function withText (text) {\n if (text == this.text) { return this }\n return new TextNode(this.type, this.attrs, text, this.marks)\n };\n\n TextNode.prototype.cut = function cut (from, to) {\n if ( from === void 0 ) from = 0;\n if ( to === void 0 ) to = this.text.length;\n\n if (from == 0 && to == this.text.length) { return this }\n return this.withText(this.text.slice(from, to))\n };\n\n TextNode.prototype.eq = function eq (other) {\n return this.sameMarkup(other) && this.text == other.text\n };\n\n TextNode.prototype.toJSON = function toJSON () {\n var base = Node.prototype.toJSON.call(this);\n base.text = this.text;\n return base\n };\n\n Object.defineProperties( TextNode.prototype, prototypeAccessors$1 );\n\n return TextNode;\n}(Node));\n\nfunction wrapMarks(marks, str) {\n for (var i = marks.length - 1; i >= 0; i--)\n { str = marks[i].type.name + \"(\" + str + \")\"; }\n return str\n}\n\n// ::- Instances of this class represent a match state of a node\n// type's [content expression](#model.NodeSpec.content), and can be\n// used to find out whether further content matches here, and whether\n// a given position is a valid end of the node.\nvar ContentMatch = function ContentMatch(validEnd) {\n // :: bool\n // True when this match state represents a valid end of the node.\n this.validEnd = validEnd;\n this.next = [];\n this.wrapCache = [];\n};\n\nvar prototypeAccessors$4 = { inlineContent: { configurable: true },defaultType: { configurable: true },edgeCount: { configurable: true } };\n\nContentMatch.parse = function parse (string, nodeTypes) {\n var stream = new TokenStream(string, nodeTypes);\n if (stream.next == null) { return ContentMatch.empty }\n var expr = parseExpr(stream);\n if (stream.next) { stream.err(\"Unexpected trailing text\"); }\n var match = dfa(nfa(expr));\n checkForDeadEnds(match, stream);\n return match\n};\n\n// :: (NodeType) → ?ContentMatch\n// Match a node type, returning a match after that node if\n// successful.\nContentMatch.prototype.matchType = function matchType (type) {\n for (var i = 0; i < this.next.length; i += 2)\n { if (this.next[i] == type) { return this.next[i + 1] } }\n return null\n};\n\n// :: (Fragment, ?number, ?number) → ?ContentMatch\n// Try to match a fragment. Returns the resulting match when\n// successful.\nContentMatch.prototype.matchFragment = function matchFragment (frag, start, end) {\n if ( start === void 0 ) start = 0;\n if ( end === void 0 ) end = frag.childCount;\n\n var cur = this;\n for (var i = start; cur && i < end; i++)\n { cur = cur.matchType(frag.child(i).type); }\n return cur\n};\n\nprototypeAccessors$4.inlineContent.get = function () {\n var first = this.next[0];\n return first ? first.isInline : false\n};\n\n// :: ?NodeType\n// Get the first matching node type at this match position that can\n// be generated.\nprototypeAccessors$4.defaultType.get = function () {\n for (var i = 0; i < this.next.length; i += 2) {\n var type = this.next[i];\n if (!(type.isText || type.hasRequiredAttrs())) { return type }\n }\n};\n\nContentMatch.prototype.compatible = function compatible (other) {\n for (var i = 0; i < this.next.length; i += 2)\n { for (var j = 0; j < other.next.length; j += 2)\n { if (this.next[i] == other.next[j]) { return true } } }\n return false\n};\n\n// :: (Fragment, bool, ?number) → ?Fragment\n// Try to match the given fragment, and if that fails, see if it can\n// be made to match by inserting nodes in front of it. When\n// successful, return a fragment of inserted nodes (which may be\n// empty if nothing had to be inserted). When `toEnd` is true, only\n// return a fragment if the resulting match goes to the end of the\n// content expression.\nContentMatch.prototype.fillBefore = function fillBefore (after, toEnd, startIndex) {\n if ( toEnd === void 0 ) toEnd = false;\n if ( startIndex === void 0 ) startIndex = 0;\n\n var seen = [this];\n function search(match, types) {\n var finished = match.matchFragment(after, startIndex);\n if (finished && (!toEnd || finished.validEnd))\n { return Fragment.from(types.map(function (tp) { return tp.createAndFill(); })) }\n\n for (var i = 0; i < match.next.length; i += 2) {\n var type = match.next[i], next = match.next[i + 1];\n if (!(type.isText || type.hasRequiredAttrs()) && seen.indexOf(next) == -1) {\n seen.push(next);\n var found = search(next, types.concat(type));\n if (found) { return found }\n }\n }\n }\n\n return search(this, [])\n};\n\n// :: (NodeType) → ?[NodeType]\n// Find a set of wrapping node types that would allow a node of the\n// given type to appear at this position. The result may be empty\n// (when it fits directly) and will be null when no such wrapping\n// exists.\nContentMatch.prototype.findWrapping = function findWrapping (target) {\n for (var i = 0; i < this.wrapCache.length; i += 2)\n { if (this.wrapCache[i] == target) { return this.wrapCache[i + 1] } }\n var computed = this.computeWrapping(target);\n this.wrapCache.push(target, computed);\n return computed\n};\n\nContentMatch.prototype.computeWrapping = function computeWrapping (target) {\n var seen = Object.create(null), active = [{match: this, type: null, via: null}];\n while (active.length) {\n var current = active.shift(), match = current.match;\n if (match.matchType(target)) {\n var result = [];\n for (var obj = current; obj.type; obj = obj.via)\n { result.push(obj.type); }\n return result.reverse()\n }\n for (var i = 0; i < match.next.length; i += 2) {\n var type = match.next[i];\n if (!type.isLeaf && !type.hasRequiredAttrs() && !(type.name in seen) && (!current.type || match.next[i + 1].validEnd)) {\n active.push({match: type.contentMatch, type: type, via: current});\n seen[type.name] = true;\n }\n }\n }\n};\n\n// :: number\n// The number of outgoing edges this node has in the finite\n// automaton that describes the content expression.\nprototypeAccessors$4.edgeCount.get = function () {\n return this.next.length >> 1\n};\n\n// :: (number) → {type: NodeType, next: ContentMatch}\n// Get the _n_​th outgoing edge from this node in the finite\n// automaton that describes the content expression.\nContentMatch.prototype.edge = function edge (n) {\n var i = n << 1;\n if (i >= this.next.length) { throw new RangeError((\"There's no \" + n + \"th edge in this content match\")) }\n return {type: this.next[i], next: this.next[i + 1]}\n};\n\nContentMatch.prototype.toString = function toString () {\n var seen = [];\n function scan(m) {\n seen.push(m);\n for (var i = 1; i < m.next.length; i += 2)\n { if (seen.indexOf(m.next[i]) == -1) { scan(m.next[i]); } }\n }\n scan(this);\n return seen.map(function (m, i) {\n var out = i + (m.validEnd ? \"*\" : \" \") + \" \";\n for (var i$1 = 0; i$1 < m.next.length; i$1 += 2)\n { out += (i$1 ? \", \" : \"\") + m.next[i$1].name + \"->\" + seen.indexOf(m.next[i$1 + 1]); }\n return out\n }).join(\"\\n\")\n};\n\nObject.defineProperties( ContentMatch.prototype, prototypeAccessors$4 );\n\nContentMatch.empty = new ContentMatch(true);\n\nvar TokenStream = function TokenStream(string, nodeTypes) {\n this.string = string;\n this.nodeTypes = nodeTypes;\n this.inline = null;\n this.pos = 0;\n this.tokens = string.split(/\\s*(?=\\b|\\W|$)/);\n if (this.tokens[this.tokens.length - 1] == \"\") { this.tokens.pop(); }\n if (this.tokens[0] == \"\") { this.tokens.unshift(); }\n};\n\nvar prototypeAccessors$1$2 = { next: { configurable: true } };\n\nprototypeAccessors$1$2.next.get = function () { return this.tokens[this.pos] };\n\nTokenStream.prototype.eat = function eat (tok) { return this.next == tok && (this.pos++ || true) };\n\nTokenStream.prototype.err = function err (str) { throw new SyntaxError(str + \" (in content expression '\" + this.string + \"')\") };\n\nObject.defineProperties( TokenStream.prototype, prototypeAccessors$1$2 );\n\nfunction parseExpr(stream) {\n var exprs = [];\n do { exprs.push(parseExprSeq(stream)); }\n while (stream.eat(\"|\"))\n return exprs.length == 1 ? exprs[0] : {type: \"choice\", exprs: exprs}\n}\n\nfunction parseExprSeq(stream) {\n var exprs = [];\n do { exprs.push(parseExprSubscript(stream)); }\n while (stream.next && stream.next != \")\" && stream.next != \"|\")\n return exprs.length == 1 ? exprs[0] : {type: \"seq\", exprs: exprs}\n}\n\nfunction parseExprSubscript(stream) {\n var expr = parseExprAtom(stream);\n for (;;) {\n if (stream.eat(\"+\"))\n { expr = {type: \"plus\", expr: expr}; }\n else if (stream.eat(\"*\"))\n { expr = {type: \"star\", expr: expr}; }\n else if (stream.eat(\"?\"))\n { expr = {type: \"opt\", expr: expr}; }\n else if (stream.eat(\"{\"))\n { expr = parseExprRange(stream, expr); }\n else { break }\n }\n return expr\n}\n\nfunction parseNum(stream) {\n if (/\\D/.test(stream.next)) { stream.err(\"Expected number, got '\" + stream.next + \"'\"); }\n var result = Number(stream.next);\n stream.pos++;\n return result\n}\n\nfunction parseExprRange(stream, expr) {\n var min = parseNum(stream), max = min;\n if (stream.eat(\",\")) {\n if (stream.next != \"}\") { max = parseNum(stream); }\n else { max = -1; }\n }\n if (!stream.eat(\"}\")) { stream.err(\"Unclosed braced range\"); }\n return {type: \"range\", min: min, max: max, expr: expr}\n}\n\nfunction resolveName(stream, name) {\n var types = stream.nodeTypes, type = types[name];\n if (type) { return [type] }\n var result = [];\n for (var typeName in types) {\n var type$1 = types[typeName];\n if (type$1.groups.indexOf(name) > -1) { result.push(type$1); }\n }\n if (result.length == 0) { stream.err(\"No node type or group '\" + name + \"' found\"); }\n return result\n}\n\nfunction parseExprAtom(stream) {\n if (stream.eat(\"(\")) {\n var expr = parseExpr(stream);\n if (!stream.eat(\")\")) { stream.err(\"Missing closing paren\"); }\n return expr\n } else if (!/\\W/.test(stream.next)) {\n var exprs = resolveName(stream, stream.next).map(function (type) {\n if (stream.inline == null) { stream.inline = type.isInline; }\n else if (stream.inline != type.isInline) { stream.err(\"Mixing inline and block content\"); }\n return {type: \"name\", value: type}\n });\n stream.pos++;\n return exprs.length == 1 ? exprs[0] : {type: \"choice\", exprs: exprs}\n } else {\n stream.err(\"Unexpected token '\" + stream.next + \"'\");\n }\n}\n\n// The code below helps compile a regular-expression-like language\n// into a deterministic finite automaton. For a good introduction to\n// these concepts, see https://swtch.com/~rsc/regexp/regexp1.html\n\n// : (Object) → [[{term: ?any, to: number}]]\n// Construct an NFA from an expression as returned by the parser. The\n// NFA is represented as an array of states, which are themselves\n// arrays of edges, which are `{term, to}` objects. The first state is\n// the entry state and the last node is the success state.\n//\n// Note that unlike typical NFAs, the edge ordering in this one is\n// significant, in that it is used to contruct filler content when\n// necessary.\nfunction nfa(expr) {\n var nfa = [[]];\n connect(compile(expr, 0), node());\n return nfa\n\n function node() { return nfa.push([]) - 1 }\n function edge(from, to, term) {\n var edge = {term: term, to: to};\n nfa[from].push(edge);\n return edge\n }\n function connect(edges, to) { edges.forEach(function (edge) { return edge.to = to; }); }\n\n function compile(expr, from) {\n if (expr.type == \"choice\") {\n return expr.exprs.reduce(function (out, expr) { return out.concat(compile(expr, from)); }, [])\n } else if (expr.type == \"seq\") {\n for (var i = 0;; i++) {\n var next = compile(expr.exprs[i], from);\n if (i == expr.exprs.length - 1) { return next }\n connect(next, from = node());\n }\n } else if (expr.type == \"star\") {\n var loop = node();\n edge(from, loop);\n connect(compile(expr.expr, loop), loop);\n return [edge(loop)]\n } else if (expr.type == \"plus\") {\n var loop$1 = node();\n connect(compile(expr.expr, from), loop$1);\n connect(compile(expr.expr, loop$1), loop$1);\n return [edge(loop$1)]\n } else if (expr.type == \"opt\") {\n return [edge(from)].concat(compile(expr.expr, from))\n } else if (expr.type == \"range\") {\n var cur = from;\n for (var i$1 = 0; i$1 < expr.min; i$1++) {\n var next$1 = node();\n connect(compile(expr.expr, cur), next$1);\n cur = next$1;\n }\n if (expr.max == -1) {\n connect(compile(expr.expr, cur), cur);\n } else {\n for (var i$2 = expr.min; i$2 < expr.max; i$2++) {\n var next$2 = node();\n edge(cur, next$2);\n connect(compile(expr.expr, cur), next$2);\n cur = next$2;\n }\n }\n return [edge(cur)]\n } else if (expr.type == \"name\") {\n return [edge(from, null, expr.value)]\n }\n }\n}\n\nfunction cmp(a, b) { return b - a }\n\n// Get the set of nodes reachable by null edges from `node`. Omit\n// nodes with only a single null-out-edge, since they may lead to\n// needless duplicated nodes.\nfunction nullFrom(nfa, node) {\n var result = [];\n scan(node);\n return result.sort(cmp)\n\n function scan(node) {\n var edges = nfa[node];\n if (edges.length == 1 && !edges[0].term) { return scan(edges[0].to) }\n result.push(node);\n for (var i = 0; i < edges.length; i++) {\n var ref = edges[i];\n var term = ref.term;\n var to = ref.to;\n if (!term && result.indexOf(to) == -1) { scan(to); }\n }\n }\n}\n\n// : ([[{term: ?any, to: number}]]) → ContentMatch\n// Compiles an NFA as produced by `nfa` into a DFA, modeled as a set\n// of state objects (`ContentMatch` instances) with transitions\n// between them.\nfunction dfa(nfa) {\n var labeled = Object.create(null);\n return explore(nullFrom(nfa, 0))\n\n function explore(states) {\n var out = [];\n states.forEach(function (node) {\n nfa[node].forEach(function (ref) {\n var term = ref.term;\n var to = ref.to;\n\n if (!term) { return }\n var known = out.indexOf(term), set = known > -1 && out[known + 1];\n nullFrom(nfa, to).forEach(function (node) {\n if (!set) { out.push(term, set = []); }\n if (set.indexOf(node) == -1) { set.push(node); }\n });\n });\n });\n var state = labeled[states.join(\",\")] = new ContentMatch(states.indexOf(nfa.length - 1) > -1);\n for (var i = 0; i < out.length; i += 2) {\n var states$1 = out[i + 1].sort(cmp);\n state.next.push(out[i], labeled[states$1.join(\",\")] || explore(states$1));\n }\n return state\n }\n}\n\nfunction checkForDeadEnds(match, stream) {\n for (var i = 0, work = [match]; i < work.length; i++) {\n var state = work[i], dead = !state.validEnd, nodes = [];\n for (var j = 0; j < state.next.length; j += 2) {\n var node = state.next[j], next = state.next[j + 1];\n nodes.push(node.name);\n if (dead && !(node.isText || node.hasRequiredAttrs())) { dead = false; }\n if (work.indexOf(next) == -1) { work.push(next); }\n }\n if (dead) { stream.err(\"Only non-generatable nodes (\" + nodes.join(\", \") + \") in a required position\"); }\n }\n}\n\n// For node types where all attrs have a default value (or which don't\n// have any attributes), build up a single reusable default attribute\n// object, and use it for all nodes that don't specify specific\n// attributes.\nfunction defaultAttrs(attrs) {\n var defaults = Object.create(null);\n for (var attrName in attrs) {\n var attr = attrs[attrName];\n if (!attr.hasDefault) { return null }\n defaults[attrName] = attr.default;\n }\n return defaults\n}\n\nfunction computeAttrs(attrs, value) {\n var built = Object.create(null);\n for (var name in attrs) {\n var given = value && value[name];\n if (given === undefined) {\n var attr = attrs[name];\n if (attr.hasDefault) { given = attr.default; }\n else { throw new RangeError(\"No value supplied for attribute \" + name) }\n }\n built[name] = given;\n }\n return built\n}\n\nfunction initAttrs(attrs) {\n var result = Object.create(null);\n if (attrs) { for (var name in attrs) { result[name] = new Attribute(attrs[name]); } }\n return result\n}\n\n// ::- Node types are objects allocated once per `Schema` and used to\n// [tag](#model.Node.type) `Node` instances. They contain information\n// about the node type, such as its name and what kind of node it\n// represents.\nvar NodeType = function NodeType(name, schema, spec) {\n // :: string\n // The name the node type has in this schema.\n this.name = name;\n\n // :: Schema\n // A link back to the `Schema` the node type belongs to.\n this.schema = schema;\n\n // :: NodeSpec\n // The spec that this type is based on\n this.spec = spec;\n\n this.groups = spec.group ? spec.group.split(\" \") : [];\n this.attrs = initAttrs(spec.attrs);\n\n this.defaultAttrs = defaultAttrs(this.attrs);\n\n // :: ContentMatch\n // The starting match of the node type's content expression.\n this.contentMatch = null;\n\n // : ?[MarkType]\n // The set of marks allowed in this node. `null` means all marks\n // are allowed.\n this.markSet = null;\n\n // :: bool\n // True if this node type has inline content.\n this.inlineContent = null;\n\n // :: bool\n // True if this is a block type\n this.isBlock = !(spec.inline || name == \"text\");\n\n // :: bool\n // True if this is the text node type.\n this.isText = name == \"text\";\n};\n\nvar prototypeAccessors$5 = { isInline: { configurable: true },isTextblock: { configurable: true },isLeaf: { configurable: true },isAtom: { configurable: true } };\n\n// :: bool\n// True if this is an inline type.\nprototypeAccessors$5.isInline.get = function () { return !this.isBlock };\n\n// :: bool\n// True if this is a textblock type, a block that contains inline\n// content.\nprototypeAccessors$5.isTextblock.get = function () { return this.isBlock && this.inlineContent };\n\n// :: bool\n// True for node types that allow no content.\nprototypeAccessors$5.isLeaf.get = function () { return this.contentMatch == ContentMatch.empty };\n\n// :: bool\n// True when this node is an atom, i.e. when it does not have\n// directly editable content.\nprototypeAccessors$5.isAtom.get = function () { return this.isLeaf || this.spec.atom };\n\n// :: () → bool\n// Tells you whether this node type has any required attributes.\nNodeType.prototype.hasRequiredAttrs = function hasRequiredAttrs () {\n for (var n in this.attrs) { if (this.attrs[n].isRequired) { return true } }\n return false\n};\n\nNodeType.prototype.compatibleContent = function compatibleContent (other) {\n return this == other || this.contentMatch.compatible(other.contentMatch)\n};\n\nNodeType.prototype.computeAttrs = function computeAttrs$1 (attrs) {\n if (!attrs && this.defaultAttrs) { return this.defaultAttrs }\n else { return computeAttrs(this.attrs, attrs) }\n};\n\n// :: (?Object, ?union<Fragment, Node, [Node]>, ?[Mark]) → Node\n// Create a `Node` of this type. The given attributes are\n// checked and defaulted (you can pass `null` to use the type's\n// defaults entirely, if no required attributes exist). `content`\n// may be a `Fragment`, a node, an array of nodes, or\n// `null`. Similarly `marks` may be `null` to default to the empty\n// set of marks.\nNodeType.prototype.create = function create (attrs, content, marks) {\n if (this.isText) { throw new Error(\"NodeType.create can't construct text nodes\") }\n return new Node(this, this.computeAttrs(attrs), Fragment.from(content), Mark.setFrom(marks))\n};\n\n// :: (?Object, ?union<Fragment, Node, [Node]>, ?[Mark]) → Node\n// Like [`create`](#model.NodeType.create), but check the given content\n// against the node type's content restrictions, and throw an error\n// if it doesn't match.\nNodeType.prototype.createChecked = function createChecked (attrs, content, marks) {\n content = Fragment.from(content);\n if (!this.validContent(content))\n { throw new RangeError(\"Invalid content for node \" + this.name) }\n return new Node(this, this.computeAttrs(attrs), content, Mark.setFrom(marks))\n};\n\n// :: (?Object, ?union<Fragment, Node, [Node]>, ?[Mark]) → ?Node\n// Like [`create`](#model.NodeType.create), but see if it is necessary to\n// add nodes to the start or end of the given fragment to make it\n// fit the node. If no fitting wrapping can be found, return null.\n// Note that, due to the fact that required nodes can always be\n// created, this will always succeed if you pass null or\n// `Fragment.empty` as content.\nNodeType.prototype.createAndFill = function createAndFill (attrs, content, marks) {\n attrs = this.computeAttrs(attrs);\n content = Fragment.from(content);\n if (content.size) {\n var before = this.contentMatch.fillBefore(content);\n if (!before) { return null }\n content = before.append(content);\n }\n var after = this.contentMatch.matchFragment(content).fillBefore(Fragment.empty, true);\n if (!after) { return null }\n return new Node(this, attrs, content.append(after), Mark.setFrom(marks))\n};\n\n// :: (Fragment) → bool\n// Returns true if the given fragment is valid content for this node\n// type with the given attributes.\nNodeType.prototype.validContent = function validContent (content) {\n var result = this.contentMatch.matchFragment(content);\n if (!result || !result.validEnd) { return false }\n for (var i = 0; i < content.childCount; i++)\n { if (!this.allowsMarks(content.child(i).marks)) { return false } }\n return true\n};\n\n// :: (MarkType) → bool\n// Check whether the given mark type is allowed in this node.\nNodeType.prototype.allowsMarkType = function allowsMarkType (markType) {\n return this.markSet == null || this.markSet.indexOf(markType) > -1\n};\n\n// :: ([Mark]) → bool\n// Test whether the given set of marks are allowed in this node.\nNodeType.prototype.allowsMarks = function allowsMarks (marks) {\n if (this.markSet == null) { return true }\n for (var i = 0; i < marks.length; i++) { if (!this.allowsMarkType(marks[i].type)) { return false } }\n return true\n};\n\n// :: ([Mark]) → [Mark]\n// Removes the marks that are not allowed in this node from the given set.\nNodeType.prototype.allowedMarks = function allowedMarks (marks) {\n if (this.markSet == null) { return marks }\n var copy;\n for (var i = 0; i < marks.length; i++) {\n if (!this.allowsMarkType(marks[i].type)) {\n if (!copy) { copy = marks.slice(0, i); }\n } else if (copy) {\n copy.push(marks[i]);\n }\n }\n return !copy ? marks : copy.length ? copy : Mark.empty\n};\n\nNodeType.compile = function compile (nodes, schema) {\n var result = Object.create(null);\n nodes.forEach(function (name, spec) { return result[name] = new NodeType(name, schema, spec); });\n\n var topType = schema.spec.topNode || \"doc\";\n if (!result[topType]) { throw new RangeError(\"Schema is missing its top node type ('\" + topType + \"')\") }\n if (!result.text) { throw new RangeError(\"Every schema needs a 'text' type\") }\n for (var _ in result.text.attrs) { throw new RangeError(\"The text node type should not have attributes\") }\n\n return result\n};\n\nObject.defineProperties( NodeType.prototype, prototypeAccessors$5 );\n\n// Attribute descriptors\n\nvar Attribute = function Attribute(options) {\n this.hasDefault = Object.prototype.hasOwnProperty.call(options, \"default\");\n this.default = options.default;\n};\n\nvar prototypeAccessors$1$3 = { isRequired: { configurable: true } };\n\nprototypeAccessors$1$3.isRequired.get = function () {\n return !this.hasDefault\n};\n\nObject.defineProperties( Attribute.prototype, prototypeAccessors$1$3 );\n\n// Marks\n\n// ::- Like nodes, marks (which are associated with nodes to signify\n// things like emphasis or being part of a link) are\n// [tagged](#model.Mark.type) with type objects, which are\n// instantiated once per `Schema`.\nvar MarkType = function MarkType(name, rank, schema, spec) {\n // :: string\n // The name of the mark type.\n this.name = name;\n\n // :: Schema\n // The schema that this mark type instance is part of.\n this.schema = schema;\n\n // :: MarkSpec\n // The spec on which the type is based.\n this.spec = spec;\n\n this.attrs = initAttrs(spec.attrs);\n\n this.rank = rank;\n this.excluded = null;\n var defaults = defaultAttrs(this.attrs);\n this.instance = defaults && new Mark(this, defaults);\n};\n\n// :: (?Object) → Mark\n// Create a mark of this type. `attrs` may be `null` or an object\n// containing only some of the mark's attributes. The others, if\n// they have defaults, will be added.\nMarkType.prototype.create = function create (attrs) {\n if (!attrs && this.instance) { return this.instance }\n return new Mark(this, computeAttrs(this.attrs, attrs))\n};\n\nMarkType.compile = function compile (marks, schema) {\n var result = Object.create(null), rank = 0;\n marks.forEach(function (name, spec) { return result[name] = new MarkType(name, rank++, schema, spec); });\n return result\n};\n\n// :: ([Mark]) → [Mark]\n// When there is a mark of this type in the given set, a new set\n// without it is returned. Otherwise, the input set is returned.\nMarkType.prototype.removeFromSet = function removeFromSet (set) {\n for (var i = 0; i < set.length; i++)\n { if (set[i].type == this)\n { return set.slice(0, i).concat(set.slice(i + 1)) } }\n return set\n};\n\n// :: ([Mark]) → ?Mark\n// Tests whether there is a mark of this type in the given set.\nMarkType.prototype.isInSet = function isInSet (set) {\n for (var i = 0; i < set.length; i++)\n { if (set[i].type == this) { return set[i] } }\n};\n\n// :: (MarkType) → bool\n// Queries whether a given mark type is\n// [excluded](#model.MarkSpec.excludes) by this one.\nMarkType.prototype.excludes = function excludes (other) {\n return this.excluded.indexOf(other) > -1\n};\n\n// SchemaSpec:: interface\n// An object describing a schema, as passed to the [`Schema`](#model.Schema)\n// constructor.\n//\n// nodes:: union<Object<NodeSpec>, OrderedMap<NodeSpec>>\n// The node types in this schema. Maps names to\n// [`NodeSpec`](#model.NodeSpec) objects that describe the node type\n// associated with that name. Their order is significant—it\n// determines which [parse rules](#model.NodeSpec.parseDOM) take\n// precedence by default, and which nodes come first in a given\n// [group](#model.NodeSpec.group).\n//\n// marks:: ?union<Object<MarkSpec>, OrderedMap<MarkSpec>>\n// The mark types that exist in this schema. The order in which they\n// are provided determines the order in which [mark\n// sets](#model.Mark.addToSet) are sorted and in which [parse\n// rules](#model.MarkSpec.parseDOM) are tried.\n//\n// topNode:: ?string\n// The name of the default top-level node for the schema. Defaults\n// to `\"doc\"`.\n\n// NodeSpec:: interface\n//\n// content:: ?string\n// The content expression for this node, as described in the [schema\n// guide](/docs/guide/#schema.content_expressions). When not given,\n// the node does not allow any content.\n//\n// marks:: ?string\n// The marks that are allowed inside of this node. May be a\n// space-separated string referring to mark names or groups, `\"_\"`\n// to explicitly allow all marks, or `\"\"` to disallow marks. When\n// not given, nodes with inline content default to allowing all\n// marks, other nodes default to not allowing marks.\n//\n// group:: ?string\n// The group or space-separated groups to which this node belongs,\n// which can be referred to in the content expressions for the\n// schema.\n//\n// inline:: ?bool\n// Should be set to true for inline nodes. (Implied for text nodes.)\n//\n// atom:: ?bool\n// Can be set to true to indicate that, though this isn't a [leaf\n// node](#model.NodeType.isLeaf), it doesn't have directly editable\n// content and should be treated as a single unit in the view.\n//\n// attrs:: ?Object<AttributeSpec>\n// The attributes that nodes of this type get.\n//\n// selectable:: ?bool\n// Controls whether nodes of this type can be selected as a [node\n// selection](#state.NodeSelection). Defaults to true for non-text\n// nodes.\n//\n// draggable:: ?bool\n// Determines whether nodes of this type can be dragged without\n// being selected. Defaults to false.\n//\n// code:: ?bool\n// Can be used to indicate that this node contains code, which\n// causes some commands to behave differently.\n//\n// defining:: ?bool\n// Determines whether this node is considered an important parent\n// node during replace operations (such as paste). Non-defining (the\n// default) nodes get dropped when their entire content is replaced,\n// whereas defining nodes persist and wrap the inserted content.\n// Likewise, in _inserted_ content the defining parents of the\n// content are preserved when possible. Typically,\n// non-default-paragraph textblock types, and possibly list items,\n// are marked as defining.\n//\n// isolating:: ?bool\n// When enabled (default is false), the sides of nodes of this type\n// count as boundaries that regular editing operations, like\n// backspacing or lifting, won't cross. An example of a node that\n// should probably have this enabled is a table cell.\n//\n// toDOM:: ?(node: Node) → DOMOutputSpec\n// Defines the default way a node of this type should be serialized\n// to DOM/HTML (as used by\n// [`DOMSerializer.fromSchema`](#model.DOMSerializer^fromSchema)).\n// Should return a DOM node or an [array\n// structure](#model.DOMOutputSpec) that describes one, with an\n// optional number zero (“hole”) in it to indicate where the node's\n// content should be inserted.\n//\n// For text nodes, the default is to create a text DOM node. Though\n// it is possible to create a serializer where text is rendered\n// differently, this is not supported inside the editor, so you\n// shouldn't override that in your text node spec.\n//\n// parseDOM:: ?[ParseRule]\n// Associates DOM parser information with this node, which can be\n// used by [`DOMParser.fromSchema`](#model.DOMParser^fromSchema) to\n// automatically derive a parser. The `node` field in the rules is\n// implied (the name of this node will be filled in automatically).\n// If you supply your own parser, you do not need to also specify\n// parsing rules in your schema.\n//\n// toDebugString:: ?(node: Node) -> string\n// Defines the default way a node of this type should be serialized\n// to a string representation for debugging (e.g. in error messages).\n\n// MarkSpec:: interface\n//\n// attrs:: ?Object<AttributeSpec>\n// The attributes that marks of this type get.\n//\n// inclusive:: ?bool\n// Whether this mark should be active when the cursor is positioned\n// at its end (or at its start when that is also the start of the\n// parent node). Defaults to true.\n//\n// excludes:: ?string\n// Determines which other marks this mark can coexist with. Should\n// be a space-separated strings naming other marks or groups of marks.\n// When a mark is [added](#model.Mark.addToSet) to a set, all marks\n// that it excludes are removed in the process. If the set contains\n// any mark that excludes the new mark but is not, itself, excluded\n// by the new mark, the mark can not be added an the set. You can\n// use the value `\"_\"` to indicate that the mark excludes all\n// marks in the schema.\n//\n// Defaults to only being exclusive with marks of the same type. You\n// can set it to an empty string (or any string not containing the\n// mark's own name) to allow multiple marks of a given type to\n// coexist (as long as they have different attributes).\n//\n// group:: ?string\n// The group or space-separated groups to which this mark belongs.\n//\n// spanning:: ?bool\n// Determines whether marks of this type can span multiple adjacent\n// nodes when serialized to DOM/HTML. Defaults to true.\n//\n// toDOM:: ?(mark: Mark, inline: bool) → DOMOutputSpec\n// Defines the default way marks of this type should be serialized\n// to DOM/HTML. When the resulting spec contains a hole, that is\n// where the marked content is placed. Otherwise, it is appended to\n// the top node.\n//\n// parseDOM:: ?[ParseRule]\n// Associates DOM parser information with this mark (see the\n// corresponding [node spec field](#model.NodeSpec.parseDOM)). The\n// `mark` field in the rules is implied.\n\n// AttributeSpec:: interface\n//\n// Used to [define](#model.NodeSpec.attrs) attributes on nodes or\n// marks.\n//\n// default:: ?any\n// The default value for this attribute, to use when no explicit\n// value is provided. Attributes that have no default must be\n// provided whenever a node or mark of a type that has them is\n// created.\n\n// ::- A document schema. Holds [node](#model.NodeType) and [mark\n// type](#model.MarkType) objects for the nodes and marks that may\n// occur in conforming documents, and provides functionality for\n// creating and deserializing such documents.\nvar Schema = function Schema(spec) {\n // :: SchemaSpec\n // The [spec](#model.SchemaSpec) on which the schema is based,\n // with the added guarantee that its `nodes` and `marks`\n // properties are\n // [`OrderedMap`](https://github.com/marijnh/orderedmap) instances\n // (not raw objects).\n this.spec = {};\n for (var prop in spec) { this.spec[prop] = spec[prop]; }\n this.spec.nodes = OrderedMap.from(spec.nodes);\n this.spec.marks = OrderedMap.from(spec.marks);\n\n // :: Object<NodeType>\n // An object mapping the schema's node names to node type objects.\n this.nodes = NodeType.compile(this.spec.nodes, this);\n\n // :: Object<MarkType>\n // A map from mark names to mark type objects.\n this.marks = MarkType.compile(this.spec.marks, this);\n\n var contentExprCache = Object.create(null);\n for (var prop$1 in this.nodes) {\n if (prop$1 in this.marks)\n { throw new RangeError(prop$1 + \" can not be both a node and a mark\") }\n var type = this.nodes[prop$1], contentExpr = type.spec.content || \"\", markExpr = type.spec.marks;\n type.contentMatch = contentExprCache[contentExpr] ||\n (contentExprCache[contentExpr] = ContentMatch.parse(contentExpr, this.nodes));\n type.inlineContent = type.contentMatch.inlineContent;\n type.markSet = markExpr == \"_\" ? null :\n markExpr ? gatherMarks(this, markExpr.split(\" \")) :\n markExpr == \"\" || !type.inlineContent ? [] : null;\n }\n for (var prop$2 in this.marks) {\n var type$1 = this.marks[prop$2], excl = type$1.spec.excludes;\n type$1.excluded = excl == null ? [type$1] : excl == \"\" ? [] : gatherMarks(this, excl.split(\" \"));\n }\n\n this.nodeFromJSON = this.nodeFromJSON.bind(this);\n this.markFromJSON = this.markFromJSON.bind(this);\n\n // :: NodeType\n // The type of the [default top node](#model.SchemaSpec.topNode)\n // for this schema.\n this.topNodeType = this.nodes[this.spec.topNode || \"doc\"];\n\n // :: Object\n // An object for storing whatever values modules may want to\n // compute and cache per schema. (If you want to store something\n // in it, try to use property names unlikely to clash.)\n this.cached = Object.create(null);\n this.cached.wrappings = Object.create(null);\n};\n\n// :: (union<string, NodeType>, ?Object, ?union<Fragment, Node, [Node]>, ?[Mark]) → Node\n// Create a node in this schema. The `type` may be a string or a\n// `NodeType` instance. Attributes will be extended\n// with defaults, `content` may be a `Fragment`,\n// `null`, a `Node`, or an array of nodes.\nSchema.prototype.node = function node (type, attrs, content, marks) {\n if (typeof type == \"string\")\n { type = this.nodeType(type); }\n else if (!(type instanceof NodeType))\n { throw new RangeError(\"Invalid node type: \" + type) }\n else if (type.schema != this)\n { throw new RangeError(\"Node type from different schema used (\" + type.name + \")\") }\n\n return type.createChecked(attrs, content, marks)\n};\n\n// :: (string, ?[Mark]) → Node\n// Create a text node in the schema. Empty text nodes are not\n// allowed.\nSchema.prototype.text = function text (text$1, marks) {\n var type = this.nodes.text;\n return new TextNode(type, type.defaultAttrs, text$1, Mark.setFrom(marks))\n};\n\n// :: (union<string, MarkType>, ?Object) → Mark\n// Create a mark with the given type and attributes.\nSchema.prototype.mark = function mark (type, attrs) {\n if (typeof type == \"string\") { type = this.marks[type]; }\n return type.create(attrs)\n};\n\n// :: (Object) → Node\n// Deserialize a node from its JSON representation. This method is\n// bound.\nSchema.prototype.nodeFromJSON = function nodeFromJSON (json) {\n return Node.fromJSON(this, json)\n};\n\n// :: (Object) → Mark\n// Deserialize a mark from its JSON representation. This method is\n// bound.\nSchema.prototype.markFromJSON = function markFromJSON (json) {\n return Mark.fromJSON(this, json)\n};\n\nSchema.prototype.nodeType = function nodeType (name) {\n var found = this.nodes[name];\n if (!found) { throw new RangeError(\"Unknown node type: \" + name) }\n return found\n};\n\nfunction gatherMarks(schema, marks) {\n var found = [];\n for (var i = 0; i < marks.length; i++) {\n var name = marks[i], mark = schema.marks[name], ok = mark;\n if (mark) {\n found.push(mark);\n } else {\n for (var prop in schema.marks) {\n var mark$1 = schema.marks[prop];\n if (name == \"_\" || (mark$1.spec.group && mark$1.spec.group.split(\" \").indexOf(name) > -1))\n { found.push(ok = mark$1); }\n }\n }\n if (!ok) { throw new SyntaxError(\"Unknown mark type: '\" + marks[i] + \"'\") }\n }\n return found\n}\n\n// ParseOptions:: interface\n// These are the options recognized by the\n// [`parse`](#model.DOMParser.parse) and\n// [`parseSlice`](#model.DOMParser.parseSlice) methods.\n//\n// preserveWhitespace:: ?union<bool, \"full\">\n// By default, whitespace is collapsed as per HTML's rules. Pass\n// `true` to preserve whitespace, but normalize newlines to\n// spaces, and `\"full\"` to preserve whitespace entirely.\n//\n// findPositions:: ?[{node: dom.Node, offset: number}]\n// When given, the parser will, beside parsing the content,\n// record the document positions of the given DOM positions. It\n// will do so by writing to the objects, adding a `pos` property\n// that holds the document position. DOM positions that are not\n// in the parsed content will not be written to.\n//\n// from:: ?number\n// The child node index to start parsing from.\n//\n// to:: ?number\n// The child node index to stop parsing at.\n//\n// topNode:: ?Node\n// By default, the content is parsed into the schema's default\n// [top node type](#model.Schema.topNodeType). You can pass this\n// option to use the type and attributes from a different node\n// as the top container.\n//\n// topMatch:: ?ContentMatch\n// Provide the starting content match that content parsed into the\n// top node is matched against.\n//\n// context:: ?ResolvedPos\n// A set of additional nodes to count as\n// [context](#model.ParseRule.context) when parsing, above the\n// given [top node](#model.ParseOptions.topNode).\n\n// ParseRule:: interface\n// A value that describes how to parse a given DOM node or inline\n// style as a ProseMirror node or mark.\n//\n// tag:: ?string\n// A CSS selector describing the kind of DOM elements to match. A\n// single rule should have _either_ a `tag` or a `style` property.\n//\n// namespace:: ?string\n// The namespace to match. This should be used with `tag`.\n// Nodes are only matched when the namespace matches or this property\n// is null.\n//\n// style:: ?string\n// A CSS property name to match. When given, this rule matches\n// inline styles that list that property. May also have the form\n// `\"property=value\"`, in which case the rule only matches if the\n// propery's value exactly matches the given value. (For more\n// complicated filters, use [`getAttrs`](#model.ParseRule.getAttrs)\n// and return false to indicate that the match failed.)\n//\n// priority:: ?number\n// Can be used to change the order in which the parse rules in a\n// schema are tried. Those with higher priority come first. Rules\n// without a priority are counted as having priority 50. This\n// property is only meaningful in a schema—when directly\n// constructing a parser, the order of the rule array is used.\n//\n// context:: ?string\n// When given, restricts this rule to only match when the current\n// context—the parent nodes into which the content is being\n// parsed—matches this expression. Should contain one or more node\n// names or node group names followed by single or double slashes.\n// For example `\"paragraph/\"` means the rule only matches when the\n// parent node is a paragraph, `\"blockquote/paragraph/\"` restricts\n// it to be in a paragraph that is inside a blockquote, and\n// `\"section//\"` matches any position inside a section—a double\n// slash matches any sequence of ancestor nodes. To allow multiple\n// different contexts, they can be separated by a pipe (`|`)\n// character, as in `\"blockquote/|list_item/\"`.\n//\n// node:: ?string\n// The name of the node type to create when this rule matches. Only\n// valid for rules with a `tag` property, not for style rules. Each\n// rule should have one of a `node`, `mark`, or `ignore` property\n// (except when it appears in a [node](#model.NodeSpec.parseDOM) or\n// [mark spec](#model.MarkSpec.parseDOM), in which case the `node`\n// or `mark` property will be derived from its position).\n//\n// mark:: ?string\n// The name of the mark type to wrap the matched content in.\n//\n// ignore:: ?bool\n// When true, ignore content that matches this rule.\n//\n// skip:: ?bool\n// When true, ignore the node that matches this rule, but do parse\n// its content.\n//\n// attrs:: ?Object\n// Attributes for the node or mark created by this rule. When\n// `getAttrs` is provided, it takes precedence.\n//\n// getAttrs:: ?(union<dom.Node, string>) → ?union<Object, false>\n// A function used to compute the attributes for the node or mark\n// created by this rule. Can also be used to describe further\n// conditions the DOM element or style must match. When it returns\n// `false`, the rule won't match. When it returns null or undefined,\n// that is interpreted as an empty/default set of attributes.\n//\n// Called with a DOM Element for `tag` rules, and with a string (the\n// style's value) for `style` rules.\n//\n// contentElement:: ?union<string, (dom.Node) → dom.Node>\n// For `tag` rules that produce non-leaf nodes or marks, by default\n// the content of the DOM element is parsed as content of the mark\n// or node. If the child nodes are in a descendent node, this may be\n// a CSS selector string that the parser must use to find the actual\n// content element, or a function that returns the actual content\n// element to the parser.\n//\n// getContent:: ?(dom.Node, schema: Schema) → Fragment\n// Can be used to override the content of a matched node. When\n// present, instead of parsing the node's child nodes, the result of\n// this function is used.\n//\n// preserveWhitespace:: ?union<bool, \"full\">\n// Controls whether whitespace should be preserved when parsing the\n// content inside the matched element. `false` means whitespace may\n// be collapsed, `true` means that whitespace should be preserved\n// but newlines normalized to spaces, and `\"full\"` means that\n// newlines should also be preserved.\n\n// ::- A DOM parser represents a strategy for parsing DOM content into\n// a ProseMirror document conforming to a given schema. Its behavior\n// is defined by an array of [rules](#model.ParseRule).\nvar DOMParser = function DOMParser(schema, rules) {\n var this$1 = this;\n\n // :: Schema\n // The schema into which the parser parses.\n this.schema = schema;\n // :: [ParseRule]\n // The set of [parse rules](#model.ParseRule) that the parser\n // uses, in order of precedence.\n this.rules = rules;\n this.tags = [];\n this.styles = [];\n\n rules.forEach(function (rule) {\n if (rule.tag) { this$1.tags.push(rule); }\n else if (rule.style) { this$1.styles.push(rule); }\n });\n};\n\n// :: (dom.Node, ?ParseOptions) → Node\n// Parse a document from the content of a DOM node.\nDOMParser.prototype.parse = function parse (dom, options) {\n if ( options === void 0 ) options = {};\n\n var context = new ParseContext(this, options, false);\n context.addAll(dom, null, options.from, options.to);\n return context.finish()\n};\n\n// :: (dom.Node, ?ParseOptions) → Slice\n// Parses the content of the given DOM node, like\n// [`parse`](#model.DOMParser.parse), and takes the same set of\n// options. But unlike that method, which produces a whole node,\n// this one returns a slice that is open at the sides, meaning that\n// the schema constraints aren't applied to the start of nodes to\n// the left of the input and the end of nodes at the end.\nDOMParser.prototype.parseSlice = function parseSlice (dom, options) {\n if ( options === void 0 ) options = {};\n\n var context = new ParseContext(this, options, true);\n context.addAll(dom, null, options.from, options.to);\n return Slice.maxOpen(context.finish())\n};\n\nDOMParser.prototype.matchTag = function matchTag (dom, context) {\n for (var i = 0; i < this.tags.length; i++) {\n var rule = this.tags[i];\n if (matches(dom, rule.tag) &&\n (rule.namespace === undefined || dom.namespaceURI == rule.namespace) &&\n (!rule.context || context.matchesContext(rule.context))) {\n if (rule.getAttrs) {\n var result = rule.getAttrs(dom);\n if (result === false) { continue }\n rule.attrs = result;\n }\n return rule\n }\n }\n};\n\nDOMParser.prototype.matchStyle = function matchStyle (prop, value, context) {\n for (var i = 0; i < this.styles.length; i++) {\n var rule = this.styles[i];\n if (rule.style.indexOf(prop) != 0 ||\n rule.context && !context.matchesContext(rule.context) ||\n // Test that the style string either precisely matches the prop,\n // or has an '=' sign after the prop, followed by the given\n // value.\n rule.style.length > prop.length &&\n (rule.style.charCodeAt(prop.length) != 61 || rule.style.slice(prop.length + 1) != value))\n { continue }\n if (rule.getAttrs) {\n var result = rule.getAttrs(value);\n if (result === false) { continue }\n rule.attrs = result;\n }\n return rule\n }\n};\n\n// : (Schema) → [ParseRule]\nDOMParser.schemaRules = function schemaRules (schema) {\n var result = [];\n function insert(rule) {\n var priority = rule.priority == null ? 50 : rule.priority, i = 0;\n for (; i < result.length; i++) {\n var next = result[i], nextPriority = next.priority == null ? 50 : next.priority;\n if (nextPriority < priority) { break }\n }\n result.splice(i, 0, rule);\n }\n\n var loop = function ( name ) {\n var rules = schema.marks[name].spec.parseDOM;\n if (rules) { rules.forEach(function (rule) {\n insert(rule = copy(rule));\n rule.mark = name;\n }); }\n };\n\n for (var name in schema.marks) loop( name );\n var loop$1 = function ( name ) {\n var rules$1 = schema.nodes[name$1].spec.parseDOM;\n if (rules$1) { rules$1.forEach(function (rule) {\n insert(rule = copy(rule));\n rule.node = name$1;\n }); }\n };\n\n for (var name$1 in schema.nodes) loop$1();\n return result\n};\n\n// :: (Schema) → DOMParser\n// Construct a DOM parser using the parsing rules listed in a\n// schema's [node specs](#model.NodeSpec.parseDOM), reordered by\n// [priority](#model.ParseRule.priority).\nDOMParser.fromSchema = function fromSchema (schema) {\n return schema.cached.domParser ||\n (schema.cached.domParser = new DOMParser(schema, DOMParser.schemaRules(schema)))\n};\n\n// : Object<bool> The block-level tags in HTML5\nvar blockTags = {\n address: true, article: true, aside: true, blockquote: true, canvas: true,\n dd: true, div: true, dl: true, fieldset: true, figcaption: true, figure: true,\n footer: true, form: true, h1: true, h2: true, h3: true, h4: true, h5: true,\n h6: true, header: true, hgroup: true, hr: true, li: true, noscript: true, ol: true,\n output: true, p: true, pre: true, section: true, table: true, tfoot: true, ul: true\n};\n\n// : Object<bool> The tags that we normally ignore.\nvar ignoreTags = {\n head: true, noscript: true, object: true, script: true, style: true, title: true\n};\n\n// : Object<bool> List tags.\nvar listTags = {ol: true, ul: true};\n\n// Using a bitfield for node context options\nvar OPT_PRESERVE_WS = 1, OPT_PRESERVE_WS_FULL = 2, OPT_OPEN_LEFT = 4;\n\nfunction wsOptionsFor(preserveWhitespace) {\n return (preserveWhitespace ? OPT_PRESERVE_WS : 0) | (preserveWhitespace === \"full\" ? OPT_PRESERVE_WS_FULL : 0)\n}\n\nvar NodeContext = function NodeContext(type, attrs, marks, pendingMarks, solid, match, options) {\n this.type = type;\n this.attrs = attrs;\n this.solid = solid;\n this.match = match || (options & OPT_OPEN_LEFT ? null : type.contentMatch);\n this.options = options;\n this.content = [];\n // Marks applied to this node itself\n this.marks = marks;\n // Marks applied to its children\n this.activeMarks = Mark.none;\n // Marks that can't apply here, but will be used in children if possible\n this.pendingMarks = pendingMarks;\n};\n\nNodeContext.prototype.findWrapping = function findWrapping (node) {\n if (!this.match) {\n if (!this.type) { return [] }\n var fill = this.type.contentMatch.fillBefore(Fragment.from(node));\n if (fill) {\n this.match = this.type.contentMatch.matchFragment(fill);\n } else {\n var start = this.type.contentMatch, wrap;\n if (wrap = start.findWrapping(node.type)) {\n this.match = start;\n return wrap\n } else {\n return null\n }\n }\n }\n return this.match.findWrapping(node.type)\n};\n\nNodeContext.prototype.finish = function finish (openEnd) {\n if (!(this.options & OPT_PRESERVE_WS)) { // Strip trailing whitespace\n var last = this.content[this.content.length - 1], m;\n if (last && last.isText && (m = /[ \\t\\r\\n\\u000c]+$/.exec(last.text))) {\n if (last.text.length == m[0].length) { this.content.pop(); }\n else { this.content[this.content.length - 1] = last.withText(last.text.slice(0, last.text.length - m[0].length)); }\n }\n }\n var content = Fragment.from(this.content);\n if (!openEnd && this.match)\n { content = content.append(this.match.fillBefore(Fragment.empty, true)); }\n return this.type ? this.type.create(this.attrs, content, this.marks) : content\n};\n\nNodeContext.prototype.applyPending = function applyPending (nextType) {\n for (var i = 0, pending = this.pendingMarks; i < pending.length; i++) {\n var mark = pending[i];\n if ((this.type ? this.type.allowsMarkType(mark.type) : markMayApply(mark.type, nextType)) &&\n !mark.isInSet(this.activeMarks)) {\n this.activeMarks = mark.addToSet(this.activeMarks);\n this.pendingMarks = mark.removeFromSet(this.pendingMarks);\n }\n }\n};\n\nvar ParseContext = function ParseContext(parser, options, open) {\n // : DOMParser The parser we are using.\n this.parser = parser;\n // : Object The options passed to this parse.\n this.options = options;\n this.isOpen = open;\n var topNode = options.topNode, topContext;\n var topOptions = wsOptionsFor(options.preserveWhitespace) | (open ? OPT_OPEN_LEFT : 0);\n if (topNode)\n { topContext = new NodeContext(topNode.type, topNode.attrs, Mark.none, Mark.none, true,\n options.topMatch || topNode.type.contentMatch, topOptions); }\n else if (open)\n { topContext = new NodeContext(null, null, Mark.none, Mark.none, true, null, topOptions); }\n else\n { topContext = new NodeContext(parser.schema.topNodeType, null, Mark.none, Mark.none, true, null, topOptions); }\n this.nodes = [topContext];\n // : [Mark] The current set of marks\n this.open = 0;\n this.find = options.findPositions;\n this.needsBlock = false;\n};\n\nvar prototypeAccessors$6 = { top: { configurable: true },currentPos: { configurable: true } };\n\nprototypeAccessors$6.top.get = function () {\n return this.nodes[this.open]\n};\n\n// : (dom.Node)\n// Add a DOM node to the content. Text is inserted as text node,\n// otherwise, the node is passed to `addElement` or, if it has a\n// `style` attribute, `addElementWithStyles`.\nParseContext.prototype.addDOM = function addDOM (dom) {\n if (dom.nodeType == 3) {\n this.addTextNode(dom);\n } else if (dom.nodeType == 1) {\n var style = dom.getAttribute(\"style\");\n var marks = style ? this.readStyles(parseStyles(style)) : null, top = this.top;\n if (marks != null) { for (var i = 0; i < marks.length; i++) { this.addPendingMark(marks[i]); } }\n this.addElement(dom);\n if (marks != null) { for (var i$1 = 0; i$1 < marks.length; i$1++) { this.removePendingMark(marks[i$1], top); } }\n }\n};\n\nParseContext.prototype.addTextNode = function addTextNode (dom) {\n var value = dom.nodeValue;\n var top = this.top;\n if ((top.type ? top.type.inlineContent : top.content.length && top.content[0].isInline) || /[^ \\t\\r\\n\\u000c]/.test(value)) {\n if (!(top.options & OPT_PRESERVE_WS)) {\n value = value.replace(/[ \\t\\r\\n\\u000c]+/g, \" \");\n // If this starts with whitespace, and there is no node before it, or\n // a hard break, or a text node that ends with whitespace, strip the\n // leading space.\n if (/^[ \\t\\r\\n\\u000c]/.test(value) && this.open == this.nodes.length - 1) {\n var nodeBefore = top.content[top.content.length - 1];\n var domNodeBefore = dom.previousSibling;\n if (!nodeBefore ||\n (domNodeBefore && domNodeBefore.nodeName == 'BR') ||\n (nodeBefore.isText && /[ \\t\\r\\n\\u000c]$/.test(nodeBefore.text)))\n { value = value.slice(1); }\n }\n } else if (!(top.options & OPT_PRESERVE_WS_FULL)) {\n value = value.replace(/\\r?\\n|\\r/g, \" \");\n }\n if (value) { this.insertNode(this.parser.schema.text(value)); }\n this.findInText(dom);\n } else {\n this.findInside(dom);\n }\n};\n\n// : (dom.Element)\n// Try to find a handler for the given tag and use that to parse. If\n// none is found, the element's content nodes are added directly.\nParseContext.prototype.addElement = function addElement (dom) {\n var name = dom.nodeName.toLowerCase();\n if (listTags.hasOwnProperty(name)) { normalizeList(dom); }\n var rule = (this.options.ruleFromNode && this.options.ruleFromNode(dom)) || this.parser.matchTag(dom, this);\n if (rule ? rule.ignore : ignoreTags.hasOwnProperty(name)) {\n this.findInside(dom);\n } else if (!rule || rule.skip) {\n if (rule && rule.skip.nodeType) { dom = rule.skip; }\n var sync, top = this.top, oldNeedsBlock = this.needsBlock;\n if (blockTags.hasOwnProperty(name)) {\n sync = true;\n if (!top.type) { this.needsBlock = true; }\n } else if (!dom.firstChild) {\n this.leafFallback(dom);\n return\n }\n this.addAll(dom);\n if (sync) { this.sync(top); }\n this.needsBlock = oldNeedsBlock;\n } else {\n this.addElementByRule(dom, rule);\n }\n};\n\n// Called for leaf DOM nodes that would otherwise be ignored\nParseContext.prototype.leafFallback = function leafFallback (dom) {\n if (dom.nodeName == \"BR\" && this.top.type && this.top.type.inlineContent)\n { this.addTextNode(dom.ownerDocument.createTextNode(\"\\n\")); }\n};\n\n// Run any style parser associated with the node's styles. Either\n// return an array of marks, or null to indicate some of the styles\n// had a rule with `ignore` set.\nParseContext.prototype.readStyles = function readStyles (styles) {\n var marks = Mark.none;\n for (var i = 0; i < styles.length; i += 2) {\n var rule = this.parser.matchStyle(styles[i], styles[i + 1], this);\n if (!rule) { continue }\n if (rule.ignore) { return null }\n marks = this.parser.schema.marks[rule.mark].create(rule.attrs).addToSet(marks);\n }\n return marks\n};\n\n// : (dom.Element, ParseRule) → bool\n// Look up a handler for the given node. If none are found, return\n// false. Otherwise, apply it, use its return value to drive the way\n// the node's content is wrapped, and return true.\nParseContext.prototype.addElementByRule = function addElementByRule (dom, rule) {\n var this$1 = this;\n\n var sync, nodeType, markType, mark;\n if (rule.node) {\n nodeType = this.parser.schema.nodes[rule.node];\n if (!nodeType.isLeaf) {\n sync = this.enter(nodeType, rule.attrs, rule.preserveWhitespace);\n } else if (!this.insertNode(nodeType.create(rule.attrs))) {\n this.leafFallback(dom);\n }\n } else {\n markType = this.parser.schema.marks[rule.mark];\n mark = markType.create(rule.attrs);\n this.addPendingMark(mark);\n }\n var startIn = this.top;\n\n if (nodeType && nodeType.isLeaf) {\n this.findInside(dom);\n } else if (rule.getContent) {\n this.findInside(dom);\n rule.getContent(dom, this.parser.schema).forEach(function (node) { return this$1.insertNode(node); });\n } else {\n var contentDOM = rule.contentElement;\n if (typeof contentDOM == \"string\") { contentDOM = dom.querySelector(contentDOM); }\n else if (typeof contentDOM == \"function\") { contentDOM = contentDOM(dom); }\n if (!contentDOM) { contentDOM = dom; }\n this.findAround(dom, contentDOM, true);\n this.addAll(contentDOM, sync);\n }\n if (sync) { this.sync(startIn); this.open--; }\n if (mark) { this.removePendingMark(mark, startIn); }\n};\n\n// : (dom.Node, ?NodeBuilder, ?number, ?number)\n// Add all child nodes between `startIndex` and `endIndex` (or the\n// whole node, if not given). If `sync` is passed, use it to\n// synchronize after every block element.\nParseContext.prototype.addAll = function addAll (parent, sync, startIndex, endIndex) {\n var index = startIndex || 0;\n for (var dom = startIndex ? parent.childNodes[startIndex] : parent.firstChild,\n end = endIndex == null ? null : parent.childNodes[endIndex];\n dom != end; dom = dom.nextSibling, ++index) {\n this.findAtPoint(parent, index);\n this.addDOM(dom);\n if (sync && blockTags.hasOwnProperty(dom.nodeName.toLowerCase()))\n { this.sync(sync); }\n }\n this.findAtPoint(parent, index);\n};\n\n// Try to find a way to fit the given node type into the current\n// context. May add intermediate wrappers and/or leave non-solid\n// nodes that we're in.\nParseContext.prototype.findPlace = function findPlace (node) {\n var route, sync;\n for (var depth = this.open; depth >= 0; depth--) {\n var cx = this.nodes[depth];\n var found = cx.findWrapping(node);\n if (found && (!route || route.length > found.length)) {\n route = found;\n sync = cx;\n if (!found.length) { break }\n }\n if (cx.solid) { break }\n }\n if (!route) { return false }\n this.sync(sync);\n for (var i = 0; i < route.length; i++)\n { this.enterInner(route[i], null, false); }\n return true\n};\n\n// : (Node) → ?Node\n// Try to insert the given node, adjusting the context when needed.\nParseContext.prototype.insertNode = function insertNode (node) {\n if (node.isInline && this.needsBlock && !this.top.type) {\n var block = this.textblockFromContext();\n if (block) { this.enterInner(block); }\n }\n if (this.findPlace(node)) {\n this.closeExtra();\n var top = this.top;\n top.applyPending(node.type);\n if (top.match) { top.match = top.match.matchType(node.type); }\n var marks = top.activeMarks;\n for (var i = 0; i < node.marks.length; i++)\n { if (!top.type || top.type.allowsMarkType(node.marks[i].type))\n { marks = node.marks[i].addToSet(marks); } }\n top.content.push(node.mark(marks));\n return true\n }\n return false\n};\n\n// : (NodeType, ?Object) → bool\n// Try to start a node of the given type, adjusting the context when\n// necessary.\nParseContext.prototype.enter = function enter (type, attrs, preserveWS) {\n var ok = this.findPlace(type.create(attrs));\n if (ok) { this.enterInner(type, attrs, true, preserveWS); }\n return ok\n};\n\n// Open a node of the given type\nParseContext.prototype.enterInner = function enterInner (type, attrs, solid, preserveWS) {\n this.closeExtra();\n var top = this.top;\n top.applyPending(type);\n top.match = top.match && top.match.matchType(type, attrs);\n var options = preserveWS == null ? top.options & ~OPT_OPEN_LEFT : wsOptionsFor(preserveWS);\n if ((top.options & OPT_OPEN_LEFT) && top.content.length == 0) { options |= OPT_OPEN_LEFT; }\n this.nodes.push(new NodeContext(type, attrs, top.activeMarks, top.pendingMarks, solid, null, options));\n this.open++;\n};\n\n// Make sure all nodes above this.open are finished and added to\n// their parents\nParseContext.prototype.closeExtra = function closeExtra (openEnd) {\n var i = this.nodes.length - 1;\n if (i > this.open) {\n for (; i > this.open; i--) { this.nodes[i - 1].content.push(this.nodes[i].finish(openEnd)); }\n this.nodes.length = this.open + 1;\n }\n};\n\nParseContext.prototype.finish = function finish () {\n this.open = 0;\n this.closeExtra(this.isOpen);\n return this.nodes[0].finish(this.isOpen || this.options.topOpen)\n};\n\nParseContext.prototype.sync = function sync (to) {\n for (var i = this.open; i >= 0; i--) { if (this.nodes[i] == to) {\n this.open = i;\n return\n } }\n};\n\nprototypeAccessors$6.currentPos.get = function () {\n this.closeExtra();\n var pos = 0;\n for (var i = this.open; i >= 0; i--) {\n var content = this.nodes[i].content;\n for (var j = content.length - 1; j >= 0; j--)\n { pos += content[j].nodeSize; }\n if (i) { pos++; }\n }\n return pos\n};\n\nParseContext.prototype.findAtPoint = function findAtPoint (parent, offset) {\n if (this.find) { for (var i = 0; i < this.find.length; i++) {\n if (this.find[i].node == parent && this.find[i].offset == offset)\n { this.find[i].pos = this.currentPos; }\n } }\n};\n\nParseContext.prototype.findInside = function findInside (parent) {\n if (this.find) { for (var i = 0; i < this.find.length; i++) {\n if (this.find[i].pos == null && parent.nodeType == 1 && parent.contains(this.find[i].node))\n { this.find[i].pos = this.currentPos; }\n } }\n};\n\nParseContext.prototype.findAround = function findAround (parent, content, before) {\n if (parent != content && this.find) { for (var i = 0; i < this.find.length; i++) {\n if (this.find[i].pos == null && parent.nodeType == 1 && parent.contains(this.find[i].node)) {\n var pos = content.compareDocumentPosition(this.find[i].node);\n if (pos & (before ? 2 : 4))\n { this.find[i].pos = this.currentPos; }\n }\n } }\n};\n\nParseContext.prototype.findInText = function findInText (textNode) {\n if (this.find) { for (var i = 0; i < this.find.length; i++) {\n if (this.find[i].node == textNode)\n { this.find[i].pos = this.currentPos - (textNode.nodeValue.length - this.find[i].offset); }\n } }\n};\n\n// : (string) → bool\n// Determines whether the given [context\n// string](#ParseRule.context) matches this context.\nParseContext.prototype.matchesContext = function matchesContext (context) {\n var this$1 = this;\n\n if (context.indexOf(\"|\") > -1)\n { return context.split(/\\s*\\|\\s*/).some(this.matchesContext, this) }\n\n var parts = context.split(\"/\");\n var option = this.options.context;\n var useRoot = !this.isOpen && (!option || option.parent.type == this.nodes[0].type);\n var minDepth = -(option ? option.depth + 1 : 0) + (useRoot ? 0 : 1);\n var match = function (i, depth) {\n for (; i >= 0; i--) {\n var part = parts[i];\n if (part == \"\") {\n if (i == parts.length - 1 || i == 0) { continue }\n for (; depth >= minDepth; depth--)\n { if (match(i - 1, depth)) { return true } }\n return false\n } else {\n var next = depth > 0 || (depth == 0 && useRoot) ? this$1.nodes[depth].type\n : option && depth >= minDepth ? option.node(depth - minDepth).type\n : null;\n if (!next || (next.name != part && next.groups.indexOf(part) == -1))\n { return false }\n depth--;\n }\n }\n return true\n };\n return match(parts.length - 1, this.open)\n};\n\nParseContext.prototype.textblockFromContext = function textblockFromContext () {\n var $context = this.options.context;\n if ($context) { for (var d = $context.depth; d >= 0; d--) {\n var deflt = $context.node(d).contentMatchAt($context.indexAfter(d)).defaultType;\n if (deflt && deflt.isTextblock && deflt.defaultAttrs) { return deflt }\n } }\n for (var name in this.parser.schema.nodes) {\n var type = this.parser.schema.nodes[name];\n if (type.isTextblock && type.defaultAttrs) { return type }\n }\n};\n\nParseContext.prototype.addPendingMark = function addPendingMark (mark) {\n this.top.pendingMarks = mark.addToSet(this.top.pendingMarks);\n};\n\nParseContext.prototype.removePendingMark = function removePendingMark (mark, upto) {\n for (var depth = this.open; depth >= 0; depth--) {\n var level = this.nodes[depth];\n var found = level.pendingMarks.lastIndexOf(mark);\n if (found > -1) { level.pendingMarks = mark.removeFromSet(level.pendingMarks); }\n else { level.activeMarks = mark.removeFromSet(level.activeMarks); }\n if (level == upto) { break }\n }\n};\n\nObject.defineProperties( ParseContext.prototype, prototypeAccessors$6 );\n\n// Kludge to work around directly nested list nodes produced by some\n// tools and allowed by browsers to mean that the nested list is\n// actually part of the list item above it.\nfunction normalizeList(dom) {\n for (var child = dom.firstChild, prevItem = null; child; child = child.nextSibling) {\n var name = child.nodeType == 1 ? child.nodeName.toLowerCase() : null;\n if (name && listTags.hasOwnProperty(name) && prevItem) {\n prevItem.appendChild(child);\n child = prevItem;\n } else if (name == \"li\") {\n prevItem = child;\n } else if (name) {\n prevItem = null;\n }\n }\n}\n\n// Apply a CSS selector.\nfunction matches(dom, selector) {\n return (dom.matches || dom.msMatchesSelector || dom.webkitMatchesSelector || dom.mozMatchesSelector).call(dom, selector)\n}\n\n// : (string) → [string]\n// Tokenize a style attribute into property/value pairs.\nfunction parseStyles(style) {\n var re = /\\s*([\\w-]+)\\s*:\\s*([^;]+)/g, m, result = [];\n while (m = re.exec(style)) { result.push(m[1], m[2].trim()); }\n return result\n}\n\nfunction copy(obj) {\n var copy = {};\n for (var prop in obj) { copy[prop] = obj[prop]; }\n return copy\n}\n\n// Used when finding a mark at the top level of a fragment parse.\n// Checks whether it would be reasonable to apply a given mark type to\n// a given node, by looking at the way the mark occurs in the schema.\nfunction markMayApply(markType, nodeType) {\n var nodes = nodeType.schema.nodes;\n var loop = function ( name ) {\n var parent = nodes[name];\n if (!parent.allowsMarkType(markType)) { return }\n var seen = [], scan = function (match) {\n seen.push(match);\n for (var i = 0; i < match.edgeCount; i++) {\n var ref = match.edge(i);\n var type = ref.type;\n var next = ref.next;\n if (type == nodeType) { return true }\n if (seen.indexOf(next) < 0 && scan(next)) { return true }\n }\n };\n if (scan(parent.contentMatch)) { return { v: true } }\n };\n\n for (var name in nodes) {\n var returned = loop( name );\n\n if ( returned ) return returned.v;\n }\n}\n\n// DOMOutputSpec:: interface\n// A description of a DOM structure. Can be either a string, which is\n// interpreted as a text node, a DOM node, which is interpreted as\n// itself, or an array.\n//\n// An array describes a DOM element. The first value in the array\n// should be a string—the name of the DOM element, optionally prefixed\n// by a namespace URL and a space. If the second element is plain\n// object, it is interpreted as a set of attributes for the element.\n// Any elements after that (including the 2nd if it's not an attribute\n// object) are interpreted as children of the DOM elements, and must\n// either be valid `DOMOutputSpec` values, or the number zero.\n//\n// The number zero (pronounced “hole”) is used to indicate the place\n// where a node's child nodes should be inserted. If it occurs in an\n// output spec, it should be the only child element in its parent\n// node.\n\n// ::- A DOM serializer knows how to convert ProseMirror nodes and\n// marks of various types to DOM nodes.\nvar DOMSerializer = function DOMSerializer(nodes, marks) {\n // :: Object<(node: Node) → DOMOutputSpec>\n // The node serialization functions.\n this.nodes = nodes || {};\n // :: Object<?(mark: Mark, inline: bool) → DOMOutputSpec>\n // The mark serialization functions.\n this.marks = marks || {};\n};\n\n// :: (Fragment, ?Object) → dom.DocumentFragment\n// Serialize the content of this fragment to a DOM fragment. When\n// not in the browser, the `document` option, containing a DOM\n// document, should be passed so that the serializer can create\n// nodes.\nDOMSerializer.prototype.serializeFragment = function serializeFragment (fragment, options, target) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n if (!target) { target = doc(options).createDocumentFragment(); }\n\n var top = target, active = null;\n fragment.forEach(function (node) {\n if (active || node.marks.length) {\n if (!active) { active = []; }\n var keep = 0, rendered = 0;\n while (keep < active.length && rendered < node.marks.length) {\n var next = node.marks[rendered];\n if (!this$1.marks[next.type.name]) { rendered++; continue }\n if (!next.eq(active[keep]) || next.type.spec.spanning === false) { break }\n keep += 2; rendered++;\n }\n while (keep < active.length) {\n top = active.pop();\n active.pop();\n }\n while (rendered < node.marks.length) {\n var add = node.marks[rendered++];\n var markDOM = this$1.serializeMark(add, node.isInline, options);\n if (markDOM) {\n active.push(add, top);\n top.appendChild(markDOM.dom);\n top = markDOM.contentDOM || markDOM.dom;\n }\n }\n }\n top.appendChild(this$1.serializeNode(node, options));\n });\n\n return target\n};\n\n// :: (Node, ?Object) → dom.Node\n// Serialize this node to a DOM node. This can be useful when you\n// need to serialize a part of a document, as opposed to the whole\n// document. To serialize a whole document, use\n// [`serializeFragment`](#model.DOMSerializer.serializeFragment) on\n// its [content](#model.Node.content).\nDOMSerializer.prototype.serializeNode = function serializeNode (node, options) {\n if ( options === void 0 ) options = {};\n\n var ref =\n DOMSerializer.renderSpec(doc(options), this.nodes[node.type.name](node));\n var dom = ref.dom;\n var contentDOM = ref.contentDOM;\n if (contentDOM) {\n if (node.isLeaf)\n { throw new RangeError(\"Content hole not allowed in a leaf node spec\") }\n if (options.onContent)\n { options.onContent(node, contentDOM, options); }\n else\n { this.serializeFragment(node.content, options, contentDOM); }\n }\n return dom\n};\n\nDOMSerializer.prototype.serializeNodeAndMarks = function serializeNodeAndMarks (node, options) {\n if ( options === void 0 ) options = {};\n\n var dom = this.serializeNode(node, options);\n for (var i = node.marks.length - 1; i >= 0; i--) {\n var wrap = this.serializeMark(node.marks[i], node.isInline, options);\n if (wrap) {\n(wrap.contentDOM || wrap.dom).appendChild(dom);\n dom = wrap.dom;\n }\n }\n return dom\n};\n\nDOMSerializer.prototype.serializeMark = function serializeMark (mark, inline, options) {\n if ( options === void 0 ) options = {};\n\n var toDOM = this.marks[mark.type.name];\n return toDOM && DOMSerializer.renderSpec(doc(options), toDOM(mark, inline))\n};\n\n// :: (dom.Document, DOMOutputSpec) → {dom: dom.Node, contentDOM: ?dom.Node}\n// Render an [output spec](#model.DOMOutputSpec) to a DOM node. If\n// the spec has a hole (zero) in it, `contentDOM` will point at the\n// node with the hole.\nDOMSerializer.renderSpec = function renderSpec (doc, structure, xmlNS) {\n if ( xmlNS === void 0 ) xmlNS = null;\n\n if (typeof structure == \"string\")\n { return {dom: doc.createTextNode(structure)} }\n if (structure.nodeType != null)\n { return {dom: structure} }\n var tagName = structure[0], space = tagName.indexOf(\" \");\n if (space > 0) {\n xmlNS = tagName.slice(0, space);\n tagName = tagName.slice(space + 1);\n }\n var contentDOM = null, dom = xmlNS ? doc.createElementNS(xmlNS, tagName) : doc.createElement(tagName);\n var attrs = structure[1], start = 1;\n if (attrs && typeof attrs == \"object\" && attrs.nodeType == null && !Array.isArray(attrs)) {\n start = 2;\n for (var name in attrs) { if (attrs[name] != null) {\n var space$1 = name.indexOf(\" \");\n if (space$1 > 0) { dom.setAttributeNS(name.slice(0, space$1), name.slice(space$1 + 1), attrs[name]); }\n else { dom.setAttribute(name, attrs[name]); }\n } }\n }\n for (var i = start; i < structure.length; i++) {\n var child = structure[i];\n if (child === 0) {\n if (i < structure.length - 1 || i > start)\n { throw new RangeError(\"Content hole must be the only child of its parent node\") }\n return {dom: dom, contentDOM: dom}\n } else {\n var ref = DOMSerializer.renderSpec(doc, child, xmlNS);\n var inner = ref.dom;\n var innerContent = ref.contentDOM;\n dom.appendChild(inner);\n if (innerContent) {\n if (contentDOM) { throw new RangeError(\"Multiple content holes\") }\n contentDOM = innerContent;\n }\n }\n }\n return {dom: dom, contentDOM: contentDOM}\n};\n\n// :: (Schema) → DOMSerializer\n// Build a serializer using the [`toDOM`](#model.NodeSpec.toDOM)\n// properties in a schema's node and mark specs.\nDOMSerializer.fromSchema = function fromSchema (schema) {\n return schema.cached.domSerializer ||\n (schema.cached.domSerializer = new DOMSerializer(this.nodesFromSchema(schema), this.marksFromSchema(schema)))\n};\n\n// : (Schema) → Object<(node: Node) → DOMOutputSpec>\n// Gather the serializers in a schema's node specs into an object.\n// This can be useful as a base to build a custom serializer from.\nDOMSerializer.nodesFromSchema = function nodesFromSchema (schema) {\n var result = gatherToDOM(schema.nodes);\n if (!result.text) { result.text = function (node) { return node.text; }; }\n return result\n};\n\n// : (Schema) → Object<(mark: Mark) → DOMOutputSpec>\n// Gather the serializers in a schema's mark specs into an object.\nDOMSerializer.marksFromSchema = function marksFromSchema (schema) {\n return gatherToDOM(schema.marks)\n};\n\nfunction gatherToDOM(obj) {\n var result = {};\n for (var name in obj) {\n var toDOM = obj[name].spec.toDOM;\n if (toDOM) { result[name] = toDOM; }\n }\n return result\n}\n\nfunction doc(options) {\n // declare global: window\n return options.document || window.document\n}\n\nexport { ContentMatch, DOMParser, DOMSerializer, Fragment, Mark, MarkType, Node, NodeRange, NodeType, ReplaceError, ResolvedPos, Schema, Slice };\n//# sourceMappingURL=index.es.js.map\n","'use strict'\n\nvar high = require('highlight.js/lib/core')\nvar fault = require('fault')\n\nexports.highlight = highlight\nexports.highlightAuto = highlightAuto\nexports.registerLanguage = registerLanguage\nexports.listLanguages = listLanguages\nexports.registerAlias = registerAlias\n\nEmitter.prototype.addText = text\nEmitter.prototype.addKeyword = addKeyword\nEmitter.prototype.addSublanguage = addSublanguage\nEmitter.prototype.openNode = open\nEmitter.prototype.closeNode = close\nEmitter.prototype.closeAllNodes = noop\nEmitter.prototype.finalize = noop\nEmitter.prototype.toHTML = toHtmlNoop\n\nvar defaultPrefix = 'hljs-'\n\n// Highlighting `value` in the language `name`.\nfunction highlight(name, value, options) {\n var before = high.configure({})\n var settings = options || {}\n var prefix = settings.prefix\n var result\n\n if (typeof name !== 'string') {\n throw fault('Expected `string` for name, got `%s`', name)\n }\n\n if (!high.getLanguage(name)) {\n throw fault('Unknown language: `%s` is not registered', name)\n }\n\n if (typeof value !== 'string') {\n throw fault('Expected `string` for value, got `%s`', value)\n }\n\n if (prefix === null || prefix === undefined) {\n prefix = defaultPrefix\n }\n\n high.configure({__emitter: Emitter, classPrefix: prefix})\n\n result = high.highlight(name, value, true)\n\n high.configure(before)\n\n /* istanbul ignore if - Highlight.js seems to use this (currently) for broken\n * grammars, so let’s keep it in there just to be sure. */\n if (result.errorRaised) {\n throw result.errorRaised\n }\n\n return {\n relevance: result.relevance,\n language: result.language,\n value: result.emitter.rootNode.children\n }\n}\n\nfunction highlightAuto(value, options) {\n var settings = options || {}\n var subset = settings.subset || high.listLanguages()\n var prefix = settings.prefix\n var length = subset.length\n var index = -1\n var result\n var secondBest\n var current\n var name\n\n if (prefix === null || prefix === undefined) {\n prefix = defaultPrefix\n }\n\n if (typeof value !== 'string') {\n throw fault('Expected `string` for value, got `%s`', value)\n }\n\n secondBest = {relevance: 0, language: null, value: []}\n result = {relevance: 0, language: null, value: []}\n\n while (++index < length) {\n name = subset[index]\n\n if (!high.getLanguage(name)) {\n continue\n }\n\n current = highlight(name, value, options)\n current.language = name\n\n if (current.relevance > secondBest.relevance) {\n secondBest = current\n }\n\n if (current.relevance > result.relevance) {\n secondBest = result\n result = current\n }\n }\n\n if (secondBest.language) {\n result.secondBest = secondBest\n }\n\n return result\n}\n\n// Register a language.\nfunction registerLanguage(name, syntax) {\n high.registerLanguage(name, syntax)\n}\n\n// Get a list of all registered languages.\nfunction listLanguages() {\n return high.listLanguages()\n}\n\n// Register more aliases for an already registered language.\nfunction registerAlias(name, alias) {\n var map = name\n var key\n\n if (alias) {\n map = {}\n map[name] = alias\n }\n\n for (key in map) {\n high.registerAliases(map[key], {languageName: key})\n }\n}\n\nfunction Emitter(options) {\n this.options = options\n this.rootNode = {children: []}\n this.stack = [this.rootNode]\n}\n\nfunction addKeyword(value, name) {\n this.openNode(name)\n this.addText(value)\n this.closeNode()\n}\n\nfunction addSublanguage(other, name) {\n var stack = this.stack\n var current = stack[stack.length - 1]\n var results = other.rootNode.children\n var node = name\n ? {\n type: 'element',\n tagName: 'span',\n properties: {className: [name]},\n children: results\n }\n : results\n\n current.children = current.children.concat(node)\n}\n\nfunction text(value) {\n var stack = this.stack\n var current\n var tail\n\n if (value === '') return\n\n current = stack[stack.length - 1]\n tail = current.children[current.children.length - 1]\n\n if (tail && tail.type === 'text') {\n tail.value += value\n } else {\n current.children.push({type: 'text', value: value})\n }\n}\n\nfunction open(name) {\n var stack = this.stack\n var className = this.options.classPrefix + name\n var current = stack[stack.length - 1]\n var child = {\n type: 'element',\n tagName: 'span',\n properties: {className: [className]},\n children: []\n }\n\n current.children.push(child)\n stack.push(child)\n}\n\nfunction close() {\n this.stack.pop()\n}\n\nfunction toHtmlNoop() {\n return ''\n}\n\nfunction noop() {}\n","const { defaults } = require('./defaults.js');\nconst {\n cleanUrl,\n escape\n} = require('./helpers.js');\n\n/**\n * Renderer\n */\nmodule.exports = class Renderer {\n constructor(options) {\n this.options = options || defaults;\n }\n\n code(code, infostring, escaped) {\n const lang = (infostring || '').match(/\\S*/)[0];\n if (this.options.highlight) {\n const out = this.options.highlight(code, lang);\n if (out != null && out !== code) {\n escaped = true;\n code = out;\n }\n }\n\n if (!lang) {\n return '<pre><code>'\n + (escaped ? code : escape(code, true))\n + '</code></pre>';\n }\n\n return '<pre><code class=\"'\n + this.options.langPrefix\n + escape(lang, true)\n + '\">'\n + (escaped ? code : escape(code, true))\n + '</code></pre>\\n';\n };\n\n blockquote(quote) {\n return '<blockquote>\\n' + quote + '</blockquote>\\n';\n };\n\n html(html) {\n return html;\n };\n\n heading(text, level, raw, slugger) {\n if (this.options.headerIds) {\n return '<h'\n + level\n + ' id=\"'\n + this.options.headerPrefix\n + slugger.slug(raw)\n + '\">'\n + text\n + '</h'\n + level\n + '>\\n';\n }\n // ignore IDs\n return '<h' + level + '>' + text + '</h' + level + '>\\n';\n };\n\n hr() {\n return this.options.xhtml ? '<hr/>\\n' : '<hr>\\n';\n };\n\n list(body, ordered, start) {\n const type = ordered ? 'ol' : 'ul',\n startatt = (ordered && start !== 1) ? (' start=\"' + start + '\"') : '';\n return '<' + type + startatt + '>\\n' + body + '</' + type + '>\\n';\n };\n\n listitem(text) {\n return '<li>' + text + '</li>\\n';\n };\n\n checkbox(checked) {\n return '<input '\n + (checked ? 'checked=\"\" ' : '')\n + 'disabled=\"\" type=\"checkbox\"'\n + (this.options.xhtml ? ' /' : '')\n + '> ';\n };\n\n paragraph(text) {\n return '<p>' + text + '</p>\\n';\n };\n\n table(header, body) {\n if (body) body = '<tbody>' + body + '</tbody>';\n\n return '<table>\\n'\n + '<thead>\\n'\n + header\n + '</thead>\\n'\n + body\n + '</table>\\n';\n };\n\n tablerow(content) {\n return '<tr>\\n' + content + '</tr>\\n';\n };\n\n tablecell(content, flags) {\n const type = flags.header ? 'th' : 'td';\n const tag = flags.align\n ? '<' + type + ' align=\"' + flags.align + '\">'\n : '<' + type + '>';\n return tag + content + '</' + type + '>\\n';\n };\n\n // span level renderer\n strong(text) {\n return '<strong>' + text + '</strong>';\n };\n\n em(text) {\n return '<em>' + text + '</em>';\n };\n\n codespan(text) {\n return '<code>' + text + '</code>';\n };\n\n br() {\n return this.options.xhtml ? '<br/>' : '<br>';\n };\n\n del(text) {\n return '<del>' + text + '</del>';\n };\n\n link(href, title, text) {\n href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);\n if (href === null) {\n return text;\n }\n let out = '<a href=\"' + escape(href) + '\"';\n if (title) {\n out += ' title=\"' + title + '\"';\n }\n out += '>' + text + '</a>';\n return out;\n };\n\n image(href, title, text) {\n href = cleanUrl(this.options.sanitize, this.options.baseUrl, href);\n if (href === null) {\n return text;\n }\n\n let out = '<img src=\"' + href + '\" alt=\"' + text + '\"';\n if (title) {\n out += ' title=\"' + title + '\"';\n }\n out += this.options.xhtml ? '/>' : '>';\n return out;\n };\n\n text(text) {\n return text;\n };\n};\n","const { defaults } = require('./defaults.js');\nconst { block } = require('./rules.js');\nconst {\n rtrim,\n splitCells,\n escape\n} = require('./helpers.js');\n\n/**\n * Block Lexer\n */\nmodule.exports = class Lexer {\n constructor(options) {\n this.tokens = [];\n this.tokens.links = Object.create(null);\n this.options = options || defaults;\n this.rules = block.normal;\n\n if (this.options.pedantic) {\n this.rules = block.pedantic;\n } else if (this.options.gfm) {\n this.rules = block.gfm;\n }\n }\n\n /**\n * Expose Block Rules\n */\n static get rules() {\n return block;\n }\n\n /**\n * Static Lex Method\n */\n static lex(src, options) {\n const lexer = new Lexer(options);\n return lexer.lex(src);\n };\n\n /**\n * Preprocessing\n */\n lex(src) {\n src = src\n .replace(/\\r\\n|\\r/g, '\\n')\n .replace(/\\t/g, ' ');\n\n return this.token(src, true);\n };\n\n /**\n * Lexing\n */\n token(src, top) {\n src = src.replace(/^ +$/gm, '');\n let next,\n loose,\n cap,\n bull,\n b,\n item,\n listStart,\n listItems,\n t,\n space,\n i,\n tag,\n l,\n isordered,\n istask,\n ischecked;\n\n while (src) {\n // newline\n if (cap = this.rules.newline.exec(src)) {\n src = src.substring(cap[0].length);\n if (cap[0].length > 1) {\n this.tokens.push({\n type: 'space'\n });\n }\n }\n\n // code\n if (cap = this.rules.code.exec(src)) {\n const lastToken = this.tokens[this.tokens.length - 1];\n src = src.substring(cap[0].length);\n // An indented code block cannot interrupt a paragraph.\n if (lastToken && lastToken.type === 'paragraph') {\n lastToken.text += '\\n' + cap[0].trimRight();\n } else {\n cap = cap[0].replace(/^ {4}/gm, '');\n this.tokens.push({\n type: 'code',\n codeBlockStyle: 'indented',\n text: !this.options.pedantic\n ? rtrim(cap, '\\n')\n : cap\n });\n }\n continue;\n }\n\n // fences\n if (cap = this.rules.fences.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'code',\n lang: cap[2] ? cap[2].trim() : cap[2],\n text: cap[3] || ''\n });\n continue;\n }\n\n // heading\n if (cap = this.rules.heading.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'heading',\n depth: cap[1].length,\n text: cap[2]\n });\n continue;\n }\n\n // table no leading pipe (gfm)\n if (cap = this.rules.nptable.exec(src)) {\n item = {\n type: 'table',\n header: splitCells(cap[1].replace(/^ *| *\\| *$/g, '')),\n align: cap[2].replace(/^ *|\\| *$/g, '').split(/ *\\| */),\n cells: cap[3] ? cap[3].replace(/\\n$/, '').split('\\n') : []\n };\n\n if (item.header.length === item.align.length) {\n src = src.substring(cap[0].length);\n\n for (i = 0; i < item.align.length; i++) {\n if (/^ *-+: *$/.test(item.align[i])) {\n item.align[i] = 'right';\n } else if (/^ *:-+: *$/.test(item.align[i])) {\n item.align[i] = 'center';\n } else if (/^ *:-+ *$/.test(item.align[i])) {\n item.align[i] = 'left';\n } else {\n item.align[i] = null;\n }\n }\n\n for (i = 0; i < item.cells.length; i++) {\n item.cells[i] = splitCells(item.cells[i], item.header.length);\n }\n\n this.tokens.push(item);\n\n continue;\n }\n }\n\n // hr\n if (cap = this.rules.hr.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'hr'\n });\n continue;\n }\n\n // blockquote\n if (cap = this.rules.blockquote.exec(src)) {\n src = src.substring(cap[0].length);\n\n this.tokens.push({\n type: 'blockquote_start'\n });\n\n cap = cap[0].replace(/^ *> ?/gm, '');\n\n // Pass `top` to keep the current\n // \"toplevel\" state. This is exactly\n // how markdown.pl works.\n this.token(cap, top);\n\n this.tokens.push({\n type: 'blockquote_end'\n });\n\n continue;\n }\n\n // list\n if (cap = this.rules.list.exec(src)) {\n src = src.substring(cap[0].length);\n bull = cap[2];\n isordered = bull.length > 1;\n\n listStart = {\n type: 'list_start',\n ordered: isordered,\n start: isordered ? +bull : '',\n loose: false\n };\n\n this.tokens.push(listStart);\n\n // Get each top-level item.\n cap = cap[0].match(this.rules.item);\n\n listItems = [];\n next = false;\n l = cap.length;\n i = 0;\n\n for (; i < l; i++) {\n item = cap[i];\n\n // Remove the list item's bullet\n // so it is seen as the next token.\n space = item.length;\n item = item.replace(/^ *([*+-]|\\d+\\.) */, '');\n\n // Outdent whatever the\n // list item contains. Hacky.\n if (~item.indexOf('\\n ')) {\n space -= item.length;\n item = !this.options.pedantic\n ? item.replace(new RegExp('^ {1,' + space + '}', 'gm'), '')\n : item.replace(/^ {1,4}/gm, '');\n }\n\n // Determine whether the next list item belongs here.\n // Backpedal if it does not belong in this list.\n if (i !== l - 1) {\n b = block.bullet.exec(cap[i + 1])[0];\n if (bull.length > 1 ? b.length === 1\n : (b.length > 1 || (this.options.smartLists && b !== bull))) {\n src = cap.slice(i + 1).join('\\n') + src;\n i = l - 1;\n }\n }\n\n // Determine whether item is loose or not.\n // Use: /(^|\\n)(?! )[^\\n]+\\n\\n(?!\\s*$)/\n // for discount behavior.\n loose = next || /\\n\\n(?!\\s*$)/.test(item);\n if (i !== l - 1) {\n next = item.charAt(item.length - 1) === '\\n';\n if (!loose) loose = next;\n }\n\n if (loose) {\n listStart.loose = true;\n }\n\n // Check for task list items\n istask = /^\\[[ xX]\\] /.test(item);\n ischecked = undefined;\n if (istask) {\n ischecked = item[1] !== ' ';\n item = item.replace(/^\\[[ xX]\\] +/, '');\n }\n\n t = {\n type: 'list_item_start',\n task: istask,\n checked: ischecked,\n loose: loose\n };\n\n listItems.push(t);\n this.tokens.push(t);\n\n // Recurse.\n this.token(item, false);\n\n this.tokens.push({\n type: 'list_item_end'\n });\n }\n\n if (listStart.loose) {\n l = listItems.length;\n i = 0;\n for (; i < l; i++) {\n listItems[i].loose = true;\n }\n }\n\n this.tokens.push({\n type: 'list_end'\n });\n\n continue;\n }\n\n // html\n if (cap = this.rules.html.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: this.options.sanitize\n ? 'paragraph'\n : 'html',\n pre: !this.options.sanitizer\n && (cap[1] === 'pre' || cap[1] === 'script' || cap[1] === 'style'),\n text: this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0]\n });\n continue;\n }\n\n // def\n if (top && (cap = this.rules.def.exec(src))) {\n src = src.substring(cap[0].length);\n if (cap[3]) cap[3] = cap[3].substring(1, cap[3].length - 1);\n tag = cap[1].toLowerCase().replace(/\\s+/g, ' ');\n if (!this.tokens.links[tag]) {\n this.tokens.links[tag] = {\n href: cap[2],\n title: cap[3]\n };\n }\n continue;\n }\n\n // table (gfm)\n if (cap = this.rules.table.exec(src)) {\n item = {\n type: 'table',\n header: splitCells(cap[1].replace(/^ *| *\\| *$/g, '')),\n align: cap[2].replace(/^ *|\\| *$/g, '').split(/ *\\| */),\n cells: cap[3] ? cap[3].replace(/\\n$/, '').split('\\n') : []\n };\n\n if (item.header.length === item.align.length) {\n src = src.substring(cap[0].length);\n\n for (i = 0; i < item.align.length; i++) {\n if (/^ *-+: *$/.test(item.align[i])) {\n item.align[i] = 'right';\n } else if (/^ *:-+: *$/.test(item.align[i])) {\n item.align[i] = 'center';\n } else if (/^ *:-+ *$/.test(item.align[i])) {\n item.align[i] = 'left';\n } else {\n item.align[i] = null;\n }\n }\n\n for (i = 0; i < item.cells.length; i++) {\n item.cells[i] = splitCells(\n item.cells[i].replace(/^ *\\| *| *\\| *$/g, ''),\n item.header.length);\n }\n\n this.tokens.push(item);\n\n continue;\n }\n }\n\n // lheading\n if (cap = this.rules.lheading.exec(src)) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'heading',\n depth: cap[2].charAt(0) === '=' ? 1 : 2,\n text: cap[1]\n });\n continue;\n }\n\n // top-level paragraph\n if (top && (cap = this.rules.paragraph.exec(src))) {\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'paragraph',\n text: cap[1].charAt(cap[1].length - 1) === '\\n'\n ? cap[1].slice(0, -1)\n : cap[1]\n });\n continue;\n }\n\n // text\n if (cap = this.rules.text.exec(src)) {\n // Top-level should never reach here.\n src = src.substring(cap[0].length);\n this.tokens.push({\n type: 'text',\n text: cap[0]\n });\n continue;\n }\n\n if (src) {\n throw new Error('Infinite loop on byte: ' + src.charCodeAt(0));\n }\n }\n\n return this.tokens;\n };\n};\n","import { Slice, Fragment, Mark, Node } from 'prosemirror-model';\nimport { ReplaceStep, ReplaceAroundStep, Transform } from 'prosemirror-transform';\n\nvar classesById = Object.create(null);\n\n// ::- Superclass for editor selections. Every selection type should\n// extend this. Should not be instantiated directly.\nvar Selection = function Selection($anchor, $head, ranges) {\n // :: [SelectionRange]\n // The ranges covered by the selection.\n this.ranges = ranges || [new SelectionRange($anchor.min($head), $anchor.max($head))];\n // :: ResolvedPos\n // The resolved anchor of the selection (the side that stays in\n // place when the selection is modified).\n this.$anchor = $anchor;\n // :: ResolvedPos\n // The resolved head of the selection (the side that moves when\n // the selection is modified).\n this.$head = $head;\n};\n\nvar prototypeAccessors = { anchor: { configurable: true },head: { configurable: true },from: { configurable: true },to: { configurable: true },$from: { configurable: true },$to: { configurable: true },empty: { configurable: true } };\n\n// :: number\n// The selection's anchor, as an unresolved position.\nprototypeAccessors.anchor.get = function () { return this.$anchor.pos };\n\n// :: number\n// The selection's head.\nprototypeAccessors.head.get = function () { return this.$head.pos };\n\n// :: number\n// The lower bound of the selection's main range.\nprototypeAccessors.from.get = function () { return this.$from.pos };\n\n// :: number\n// The upper bound of the selection's main range.\nprototypeAccessors.to.get = function () { return this.$to.pos };\n\n// :: ResolvedPos\n// The resolved lowerbound of the selection's main range.\nprototypeAccessors.$from.get = function () {\n return this.ranges[0].$from\n};\n\n// :: ResolvedPos\n// The resolved upper bound of the selection's main range.\nprototypeAccessors.$to.get = function () {\n return this.ranges[0].$to\n};\n\n// :: bool\n// Indicates whether the selection contains any content.\nprototypeAccessors.empty.get = function () {\n var ranges = this.ranges;\n for (var i = 0; i < ranges.length; i++)\n { if (ranges[i].$from.pos != ranges[i].$to.pos) { return false } }\n return true\n};\n\n// eq:: (Selection) → bool\n// Test whether the selection is the same as another selection.\n\n// map:: (doc: Node, mapping: Mappable) → Selection\n// Map this selection through a [mappable](#transform.Mappable) thing. `doc`\n// should be the new document to which we are mapping.\n\n// :: () → Slice\n// Get the content of this selection as a slice.\nSelection.prototype.content = function content () {\n return this.$from.node(0).slice(this.from, this.to, true)\n};\n\n// :: (Transaction, ?Slice)\n// Replace the selection with a slice or, if no slice is given,\n// delete the selection. Will append to the given transaction.\nSelection.prototype.replace = function replace (tr, content) {\n if ( content === void 0 ) content = Slice.empty;\n\n // Put the new selection at the position after the inserted\n // content. When that ended in an inline node, search backwards,\n // to get the position after that node. If not, search forward.\n var lastNode = content.content.lastChild, lastParent = null;\n for (var i = 0; i < content.openEnd; i++) {\n lastParent = lastNode;\n lastNode = lastNode.lastChild;\n }\n\n var mapFrom = tr.steps.length, ranges = this.ranges;\n for (var i$1 = 0; i$1 < ranges.length; i$1++) {\n var ref = ranges[i$1];\n var $from = ref.$from;\n var $to = ref.$to;\n var mapping = tr.mapping.slice(mapFrom);\n tr.replaceRange(mapping.map($from.pos), mapping.map($to.pos), i$1 ? Slice.empty : content);\n if (i$1 == 0)\n { selectionToInsertionEnd(tr, mapFrom, (lastNode ? lastNode.isInline : lastParent && lastParent.isTextblock) ? -1 : 1); }\n }\n};\n\n// :: (Transaction, Node)\n// Replace the selection with the given node, appending the changes\n// to the given transaction.\nSelection.prototype.replaceWith = function replaceWith (tr, node) {\n var mapFrom = tr.steps.length, ranges = this.ranges;\n for (var i = 0; i < ranges.length; i++) {\n var ref = ranges[i];\n var $from = ref.$from;\n var $to = ref.$to;\n var mapping = tr.mapping.slice(mapFrom);\n var from = mapping.map($from.pos), to = mapping.map($to.pos);\n if (i) {\n tr.deleteRange(from, to);\n } else {\n tr.replaceRangeWith(from, to, node);\n selectionToInsertionEnd(tr, mapFrom, node.isInline ? -1 : 1);\n }\n }\n};\n\n// toJSON:: () → Object\n// Convert the selection to a JSON representation. When implementing\n// this for a custom selection class, make sure to give the object a\n// `type` property whose value matches the ID under which you\n// [registered](#state.Selection^jsonID) your class.\n\n// :: (ResolvedPos, number, ?bool) → ?Selection\n// Find a valid cursor or leaf node selection starting at the given\n// position and searching back if `dir` is negative, and forward if\n// positive. When `textOnly` is true, only consider cursor\n// selections. Will return null when no valid selection position is\n// found.\nSelection.findFrom = function findFrom ($pos, dir, textOnly) {\n var inner = $pos.parent.inlineContent ? new TextSelection($pos)\n : findSelectionIn($pos.node(0), $pos.parent, $pos.pos, $pos.index(), dir, textOnly);\n if (inner) { return inner }\n\n for (var depth = $pos.depth - 1; depth >= 0; depth--) {\n var found = dir < 0\n ? findSelectionIn($pos.node(0), $pos.node(depth), $pos.before(depth + 1), $pos.index(depth), dir, textOnly)\n : findSelectionIn($pos.node(0), $pos.node(depth), $pos.after(depth + 1), $pos.index(depth) + 1, dir, textOnly);\n if (found) { return found }\n }\n};\n\n// :: (ResolvedPos, ?number) → Selection\n// Find a valid cursor or leaf node selection near the given\n// position. Searches forward first by default, but if `bias` is\n// negative, it will search backwards first.\nSelection.near = function near ($pos, bias) {\n if ( bias === void 0 ) bias = 1;\n\n return this.findFrom($pos, bias) || this.findFrom($pos, -bias) || new AllSelection($pos.node(0))\n};\n\n// :: (Node) → Selection\n// Find the cursor or leaf node selection closest to the start of\n// the given document. Will return an\n// [`AllSelection`](#state.AllSelection) if no valid position\n// exists.\nSelection.atStart = function atStart (doc) {\n return findSelectionIn(doc, doc, 0, 0, 1) || new AllSelection(doc)\n};\n\n// :: (Node) → Selection\n// Find the cursor or leaf node selection closest to the end of the\n// given document.\nSelection.atEnd = function atEnd (doc) {\n return findSelectionIn(doc, doc, doc.content.size, doc.childCount, -1) || new AllSelection(doc)\n};\n\n// :: (Node, Object) → Selection\n// Deserialize the JSON representation of a selection. Must be\n// implemented for custom classes (as a static class method).\nSelection.fromJSON = function fromJSON (doc, json) {\n if (!json || !json.type) { throw new RangeError(\"Invalid input for Selection.fromJSON\") }\n var cls = classesById[json.type];\n if (!cls) { throw new RangeError((\"No selection type \" + (json.type) + \" defined\")) }\n return cls.fromJSON(doc, json)\n};\n\n// :: (string, constructor<Selection>)\n// To be able to deserialize selections from JSON, custom selection\n// classes must register themselves with an ID string, so that they\n// can be disambiguated. Try to pick something that's unlikely to\n// clash with classes from other modules.\nSelection.jsonID = function jsonID (id, selectionClass) {\n if (id in classesById) { throw new RangeError(\"Duplicate use of selection JSON ID \" + id) }\n classesById[id] = selectionClass;\n selectionClass.prototype.jsonID = id;\n return selectionClass\n};\n\n// :: () → SelectionBookmark\n// Get a [bookmark](#state.SelectionBookmark) for this selection,\n// which is a value that can be mapped without having access to a\n// current document, and later resolved to a real selection for a\n// given document again. (This is used mostly by the history to\n// track and restore old selections.) The default implementation of\n// this method just converts the selection to a text selection and\n// returns the bookmark for that.\nSelection.prototype.getBookmark = function getBookmark () {\n return TextSelection.between(this.$anchor, this.$head).getBookmark()\n};\n\nObject.defineProperties( Selection.prototype, prototypeAccessors );\n\n// :: bool\n// Controls whether, when a selection of this type is active in the\n// browser, the selected range should be visible to the user. Defaults\n// to `true`.\nSelection.prototype.visible = true;\n\n// SelectionBookmark:: interface\n// A lightweight, document-independent representation of a selection.\n// You can define a custom bookmark type for a custom selection class\n// to make the history handle it well.\n//\n// map:: (mapping: Mapping) → SelectionBookmark\n// Map the bookmark through a set of changes.\n//\n// resolve:: (doc: Node) → Selection\n// Resolve the bookmark to a real selection again. This may need to\n// do some error checking and may fall back to a default (usually\n// [`TextSelection.between`](#state.TextSelection^between)) if\n// mapping made the bookmark invalid.\n\n// ::- Represents a selected range in a document.\nvar SelectionRange = function SelectionRange($from, $to) {\n // :: ResolvedPos\n // The lower bound of the range.\n this.$from = $from;\n // :: ResolvedPos\n // The upper bound of the range.\n this.$to = $to;\n};\n\n// ::- A text selection represents a classical editor selection, with\n// a head (the moving side) and anchor (immobile side), both of which\n// point into textblock nodes. It can be empty (a regular cursor\n// position).\nvar TextSelection = /*@__PURE__*/(function (Selection) {\n function TextSelection($anchor, $head) {\n if ( $head === void 0 ) $head = $anchor;\n\n Selection.call(this, $anchor, $head);\n }\n\n if ( Selection ) TextSelection.__proto__ = Selection;\n TextSelection.prototype = Object.create( Selection && Selection.prototype );\n TextSelection.prototype.constructor = TextSelection;\n\n var prototypeAccessors$1 = { $cursor: { configurable: true } };\n\n // :: ?ResolvedPos\n // Returns a resolved position if this is a cursor selection (an\n // empty text selection), and null otherwise.\n prototypeAccessors$1.$cursor.get = function () { return this.$anchor.pos == this.$head.pos ? this.$head : null };\n\n TextSelection.prototype.map = function map (doc, mapping) {\n var $head = doc.resolve(mapping.map(this.head));\n if (!$head.parent.inlineContent) { return Selection.near($head) }\n var $anchor = doc.resolve(mapping.map(this.anchor));\n return new TextSelection($anchor.parent.inlineContent ? $anchor : $head, $head)\n };\n\n TextSelection.prototype.replace = function replace (tr, content) {\n if ( content === void 0 ) content = Slice.empty;\n\n Selection.prototype.replace.call(this, tr, content);\n if (content == Slice.empty) {\n var marks = this.$from.marksAcross(this.$to);\n if (marks) { tr.ensureMarks(marks); }\n }\n };\n\n TextSelection.prototype.eq = function eq (other) {\n return other instanceof TextSelection && other.anchor == this.anchor && other.head == this.head\n };\n\n TextSelection.prototype.getBookmark = function getBookmark () {\n return new TextBookmark(this.anchor, this.head)\n };\n\n TextSelection.prototype.toJSON = function toJSON () {\n return {type: \"text\", anchor: this.anchor, head: this.head}\n };\n\n TextSelection.fromJSON = function fromJSON (doc, json) {\n if (typeof json.anchor != \"number\" || typeof json.head != \"number\")\n { throw new RangeError(\"Invalid input for TextSelection.fromJSON\") }\n return new TextSelection(doc.resolve(json.anchor), doc.resolve(json.head))\n };\n\n // :: (Node, number, ?number) → TextSelection\n // Create a text selection from non-resolved positions.\n TextSelection.create = function create (doc, anchor, head) {\n if ( head === void 0 ) head = anchor;\n\n var $anchor = doc.resolve(anchor);\n return new this($anchor, head == anchor ? $anchor : doc.resolve(head))\n };\n\n // :: (ResolvedPos, ResolvedPos, ?number) → Selection\n // Return a text selection that spans the given positions or, if\n // they aren't text positions, find a text selection near them.\n // `bias` determines whether the method searches forward (default)\n // or backwards (negative number) first. Will fall back to calling\n // [`Selection.near`](#state.Selection^near) when the document\n // doesn't contain a valid text position.\n TextSelection.between = function between ($anchor, $head, bias) {\n var dPos = $anchor.pos - $head.pos;\n if (!bias || dPos) { bias = dPos >= 0 ? 1 : -1; }\n if (!$head.parent.inlineContent) {\n var found = Selection.findFrom($head, bias, true) || Selection.findFrom($head, -bias, true);\n if (found) { $head = found.$head; }\n else { return Selection.near($head, bias) }\n }\n if (!$anchor.parent.inlineContent) {\n if (dPos == 0) {\n $anchor = $head;\n } else {\n $anchor = (Selection.findFrom($anchor, -bias, true) || Selection.findFrom($anchor, bias, true)).$anchor;\n if (($anchor.pos < $head.pos) != (dPos < 0)) { $anchor = $head; }\n }\n }\n return new TextSelection($anchor, $head)\n };\n\n Object.defineProperties( TextSelection.prototype, prototypeAccessors$1 );\n\n return TextSelection;\n}(Selection));\n\nSelection.jsonID(\"text\", TextSelection);\n\nvar TextBookmark = function TextBookmark(anchor, head) {\n this.anchor = anchor;\n this.head = head;\n};\nTextBookmark.prototype.map = function map (mapping) {\n return new TextBookmark(mapping.map(this.anchor), mapping.map(this.head))\n};\nTextBookmark.prototype.resolve = function resolve (doc) {\n return TextSelection.between(doc.resolve(this.anchor), doc.resolve(this.head))\n};\n\n// ::- A node selection is a selection that points at a single node.\n// All nodes marked [selectable](#model.NodeSpec.selectable) can be\n// the target of a node selection. In such a selection, `from` and\n// `to` point directly before and after the selected node, `anchor`\n// equals `from`, and `head` equals `to`..\nvar NodeSelection = /*@__PURE__*/(function (Selection) {\n function NodeSelection($pos) {\n var node = $pos.nodeAfter;\n var $end = $pos.node(0).resolve($pos.pos + node.nodeSize);\n Selection.call(this, $pos, $end);\n // :: Node The selected node.\n this.node = node;\n }\n\n if ( Selection ) NodeSelection.__proto__ = Selection;\n NodeSelection.prototype = Object.create( Selection && Selection.prototype );\n NodeSelection.prototype.constructor = NodeSelection;\n\n NodeSelection.prototype.map = function map (doc, mapping) {\n var ref = mapping.mapResult(this.anchor);\n var deleted = ref.deleted;\n var pos = ref.pos;\n var $pos = doc.resolve(pos);\n if (deleted) { return Selection.near($pos) }\n return new NodeSelection($pos)\n };\n\n NodeSelection.prototype.content = function content () {\n return new Slice(Fragment.from(this.node), 0, 0)\n };\n\n NodeSelection.prototype.eq = function eq (other) {\n return other instanceof NodeSelection && other.anchor == this.anchor\n };\n\n NodeSelection.prototype.toJSON = function toJSON () {\n return {type: \"node\", anchor: this.anchor}\n };\n\n NodeSelection.prototype.getBookmark = function getBookmark () { return new NodeBookmark(this.anchor) };\n\n NodeSelection.fromJSON = function fromJSON (doc, json) {\n if (typeof json.anchor != \"number\")\n { throw new RangeError(\"Invalid input for NodeSelection.fromJSON\") }\n return new NodeSelection(doc.resolve(json.anchor))\n };\n\n // :: (Node, number) → NodeSelection\n // Create a node selection from non-resolved positions.\n NodeSelection.create = function create (doc, from) {\n return new this(doc.resolve(from))\n };\n\n // :: (Node) → bool\n // Determines whether the given node may be selected as a node\n // selection.\n NodeSelection.isSelectable = function isSelectable (node) {\n return !node.isText && node.type.spec.selectable !== false\n };\n\n return NodeSelection;\n}(Selection));\n\nNodeSelection.prototype.visible = false;\n\nSelection.jsonID(\"node\", NodeSelection);\n\nvar NodeBookmark = function NodeBookmark(anchor) {\n this.anchor = anchor;\n};\nNodeBookmark.prototype.map = function map (mapping) {\n var ref = mapping.mapResult(this.anchor);\n var deleted = ref.deleted;\n var pos = ref.pos;\n return deleted ? new TextBookmark(pos, pos) : new NodeBookmark(pos)\n};\nNodeBookmark.prototype.resolve = function resolve (doc) {\n var $pos = doc.resolve(this.anchor), node = $pos.nodeAfter;\n if (node && NodeSelection.isSelectable(node)) { return new NodeSelection($pos) }\n return Selection.near($pos)\n};\n\n// ::- A selection type that represents selecting the whole document\n// (which can not necessarily be expressed with a text selection, when\n// there are for example leaf block nodes at the start or end of the\n// document).\nvar AllSelection = /*@__PURE__*/(function (Selection) {\n function AllSelection(doc) {\n Selection.call(this, doc.resolve(0), doc.resolve(doc.content.size));\n }\n\n if ( Selection ) AllSelection.__proto__ = Selection;\n AllSelection.prototype = Object.create( Selection && Selection.prototype );\n AllSelection.prototype.constructor = AllSelection;\n\n AllSelection.prototype.replace = function replace (tr, content) {\n if ( content === void 0 ) content = Slice.empty;\n\n if (content == Slice.empty) {\n tr.delete(0, tr.doc.content.size);\n var sel = Selection.atStart(tr.doc);\n if (!sel.eq(tr.selection)) { tr.setSelection(sel); }\n } else {\n Selection.prototype.replace.call(this, tr, content);\n }\n };\n\n AllSelection.prototype.toJSON = function toJSON () { return {type: \"all\"} };\n\n AllSelection.fromJSON = function fromJSON (doc) { return new AllSelection(doc) };\n\n AllSelection.prototype.map = function map (doc) { return new AllSelection(doc) };\n\n AllSelection.prototype.eq = function eq (other) { return other instanceof AllSelection };\n\n AllSelection.prototype.getBookmark = function getBookmark () { return AllBookmark };\n\n return AllSelection;\n}(Selection));\n\nSelection.jsonID(\"all\", AllSelection);\n\nvar AllBookmark = {\n map: function map() { return this },\n resolve: function resolve(doc) { return new AllSelection(doc) }\n};\n\n// FIXME we'll need some awareness of text direction when scanning for selections\n\n// Try to find a selection inside the given node. `pos` points at the\n// position where the search starts. When `text` is true, only return\n// text selections.\nfunction findSelectionIn(doc, node, pos, index, dir, text) {\n if (node.inlineContent) { return TextSelection.create(doc, pos) }\n for (var i = index - (dir > 0 ? 0 : 1); dir > 0 ? i < node.childCount : i >= 0; i += dir) {\n var child = node.child(i);\n if (!child.isAtom) {\n var inner = findSelectionIn(doc, child, pos + dir, dir < 0 ? child.childCount : 0, dir, text);\n if (inner) { return inner }\n } else if (!text && NodeSelection.isSelectable(child)) {\n return NodeSelection.create(doc, pos - (dir < 0 ? child.nodeSize : 0))\n }\n pos += child.nodeSize * dir;\n }\n}\n\nfunction selectionToInsertionEnd(tr, startLen, bias) {\n var last = tr.steps.length - 1;\n if (last < startLen) { return }\n var step = tr.steps[last];\n if (!(step instanceof ReplaceStep || step instanceof ReplaceAroundStep)) { return }\n var map = tr.mapping.maps[last], end;\n map.forEach(function (_from, _to, _newFrom, newTo) { if (end == null) { end = newTo; } });\n tr.setSelection(Selection.near(tr.doc.resolve(end), bias));\n}\n\nvar UPDATED_SEL = 1, UPDATED_MARKS = 2, UPDATED_SCROLL = 4;\n\n// ::- An editor state transaction, which can be applied to a state to\n// create an updated state. Use\n// [`EditorState.tr`](#state.EditorState.tr) to create an instance.\n//\n// Transactions track changes to the document (they are a subclass of\n// [`Transform`](#transform.Transform)), but also other state changes,\n// like selection updates and adjustments of the set of [stored\n// marks](#state.EditorState.storedMarks). In addition, you can store\n// metadata properties in a transaction, which are extra pieces of\n// information that client code or plugins can use to describe what a\n// transacion represents, so that they can update their [own\n// state](#state.StateField) accordingly.\n//\n// The [editor view](#view.EditorView) uses a few metadata properties:\n// it will attach a property `\"pointer\"` with the value `true` to\n// selection transactions directly caused by mouse or touch input, and\n// a `\"uiEvent\"` property of that may be `\"paste\"`, `\"cut\"`, or `\"drop\"`.\nvar Transaction = /*@__PURE__*/(function (Transform) {\n function Transaction(state) {\n Transform.call(this, state.doc);\n // :: number\n // The timestamp associated with this transaction, in the same\n // format as `Date.now()`.\n this.time = Date.now();\n this.curSelection = state.selection;\n // The step count for which the current selection is valid.\n this.curSelectionFor = 0;\n // :: ?[Mark]\n // The stored marks set by this transaction, if any.\n this.storedMarks = state.storedMarks;\n // Bitfield to track which aspects of the state were updated by\n // this transaction.\n this.updated = 0;\n // Object used to store metadata properties for the transaction.\n this.meta = Object.create(null);\n }\n\n if ( Transform ) Transaction.__proto__ = Transform;\n Transaction.prototype = Object.create( Transform && Transform.prototype );\n Transaction.prototype.constructor = Transaction;\n\n var prototypeAccessors = { selection: { configurable: true },selectionSet: { configurable: true },storedMarksSet: { configurable: true },isGeneric: { configurable: true },scrolledIntoView: { configurable: true } };\n\n // :: Selection\n // The transaction's current selection. This defaults to the editor\n // selection [mapped](#state.Selection.map) through the steps in the\n // transaction, but can be overwritten with\n // [`setSelection`](#state.Transaction.setSelection).\n prototypeAccessors.selection.get = function () {\n if (this.curSelectionFor < this.steps.length) {\n this.curSelection = this.curSelection.map(this.doc, this.mapping.slice(this.curSelectionFor));\n this.curSelectionFor = this.steps.length;\n }\n return this.curSelection\n };\n\n // :: (Selection) → Transaction\n // Update the transaction's current selection. Will determine the\n // selection that the editor gets when the transaction is applied.\n Transaction.prototype.setSelection = function setSelection (selection) {\n if (selection.$from.doc != this.doc)\n { throw new RangeError(\"Selection passed to setSelection must point at the current document\") }\n this.curSelection = selection;\n this.curSelectionFor = this.steps.length;\n this.updated = (this.updated | UPDATED_SEL) & ~UPDATED_MARKS;\n this.storedMarks = null;\n return this\n };\n\n // :: bool\n // Whether the selection was explicitly updated by this transaction.\n prototypeAccessors.selectionSet.get = function () {\n return (this.updated & UPDATED_SEL) > 0\n };\n\n // :: (?[Mark]) → Transaction\n // Set the current stored marks.\n Transaction.prototype.setStoredMarks = function setStoredMarks (marks) {\n this.storedMarks = marks;\n this.updated |= UPDATED_MARKS;\n return this\n };\n\n // :: ([Mark]) → Transaction\n // Make sure the current stored marks or, if that is null, the marks\n // at the selection, match the given set of marks. Does nothing if\n // this is already the case.\n Transaction.prototype.ensureMarks = function ensureMarks (marks) {\n if (!Mark.sameSet(this.storedMarks || this.selection.$from.marks(), marks))\n { this.setStoredMarks(marks); }\n return this\n };\n\n // :: (Mark) → Transaction\n // Add a mark to the set of stored marks.\n Transaction.prototype.addStoredMark = function addStoredMark (mark) {\n return this.ensureMarks(mark.addToSet(this.storedMarks || this.selection.$head.marks()))\n };\n\n // :: (union<Mark, MarkType>) → Transaction\n // Remove a mark or mark type from the set of stored marks.\n Transaction.prototype.removeStoredMark = function removeStoredMark (mark) {\n return this.ensureMarks(mark.removeFromSet(this.storedMarks || this.selection.$head.marks()))\n };\n\n // :: bool\n // Whether the stored marks were explicitly set for this transaction.\n prototypeAccessors.storedMarksSet.get = function () {\n return (this.updated & UPDATED_MARKS) > 0\n };\n\n Transaction.prototype.addStep = function addStep (step, doc) {\n Transform.prototype.addStep.call(this, step, doc);\n this.updated = this.updated & ~UPDATED_MARKS;\n this.storedMarks = null;\n };\n\n // :: (number) → Transaction\n // Update the timestamp for the transaction.\n Transaction.prototype.setTime = function setTime (time) {\n this.time = time;\n return this\n };\n\n // :: (Slice) → Transaction\n // Replace the current selection with the given slice.\n Transaction.prototype.replaceSelection = function replaceSelection (slice) {\n this.selection.replace(this, slice);\n return this\n };\n\n // :: (Node, ?bool) → Transaction\n // Replace the selection with the given node. When `inheritMarks` is\n // true and the content is inline, it inherits the marks from the\n // place where it is inserted.\n Transaction.prototype.replaceSelectionWith = function replaceSelectionWith (node, inheritMarks) {\n var selection = this.selection;\n if (inheritMarks !== false)\n { node = node.mark(this.storedMarks || (selection.empty ? selection.$from.marks() : (selection.$from.marksAcross(selection.$to) || Mark.none))); }\n selection.replaceWith(this, node);\n return this\n };\n\n // :: () → Transaction\n // Delete the selection.\n Transaction.prototype.deleteSelection = function deleteSelection () {\n this.selection.replace(this);\n return this\n };\n\n // :: (string, from: ?number, to: ?number) → Transaction\n // Replace the given range, or the selection if no range is given,\n // with a text node containing the given string.\n Transaction.prototype.insertText = function insertText (text, from, to) {\n if ( to === void 0 ) to = from;\n\n var schema = this.doc.type.schema;\n if (from == null) {\n if (!text) { return this.deleteSelection() }\n return this.replaceSelectionWith(schema.text(text), true)\n } else {\n if (!text) { return this.deleteRange(from, to) }\n var marks = this.storedMarks;\n if (!marks) {\n var $from = this.doc.resolve(from);\n marks = to == from ? $from.marks() : $from.marksAcross(this.doc.resolve(to));\n }\n this.replaceRangeWith(from, to, schema.text(text, marks));\n if (!this.selection.empty) { this.setSelection(Selection.near(this.selection.$to)); }\n return this\n }\n };\n\n // :: (union<string, Plugin, PluginKey>, any) → Transaction\n // Store a metadata property in this transaction, keyed either by\n // name or by plugin.\n Transaction.prototype.setMeta = function setMeta (key, value) {\n this.meta[typeof key == \"string\" ? key : key.key] = value;\n return this\n };\n\n // :: (union<string, Plugin, PluginKey>) → any\n // Retrieve a metadata property for a given name or plugin.\n Transaction.prototype.getMeta = function getMeta (key) {\n return this.meta[typeof key == \"string\" ? key : key.key]\n };\n\n // :: bool\n // Returns true if this transaction doesn't contain any metadata,\n // and can thus safely be extended.\n prototypeAccessors.isGeneric.get = function () {\n for (var _ in this.meta) { return false }\n return true\n };\n\n // :: () → Transaction\n // Indicate that the editor should scroll the selection into view\n // when updated to the state produced by this transaction.\n Transaction.prototype.scrollIntoView = function scrollIntoView () {\n this.updated |= UPDATED_SCROLL;\n return this\n };\n\n prototypeAccessors.scrolledIntoView.get = function () {\n return (this.updated & UPDATED_SCROLL) > 0\n };\n\n Object.defineProperties( Transaction.prototype, prototypeAccessors );\n\n return Transaction;\n}(Transform));\n\nfunction bind(f, self) {\n return !self || !f ? f : f.bind(self)\n}\n\nvar FieldDesc = function FieldDesc(name, desc, self) {\n this.name = name;\n this.init = bind(desc.init, self);\n this.apply = bind(desc.apply, self);\n};\n\nvar baseFields = [\n new FieldDesc(\"doc\", {\n init: function init(config) { return config.doc || config.schema.topNodeType.createAndFill() },\n apply: function apply(tr) { return tr.doc }\n }),\n\n new FieldDesc(\"selection\", {\n init: function init(config, instance) { return config.selection || Selection.atStart(instance.doc) },\n apply: function apply(tr) { return tr.selection }\n }),\n\n new FieldDesc(\"storedMarks\", {\n init: function init(config) { return config.storedMarks || null },\n apply: function apply(tr, _marks, _old, state) { return state.selection.$cursor ? tr.storedMarks : null }\n }),\n\n new FieldDesc(\"scrollToSelection\", {\n init: function init() { return 0 },\n apply: function apply(tr, prev) { return tr.scrolledIntoView ? prev + 1 : prev }\n })\n];\n\n// Object wrapping the part of a state object that stays the same\n// across transactions. Stored in the state's `config` property.\nvar Configuration = function Configuration(schema, plugins) {\n var this$1 = this;\n\n this.schema = schema;\n this.fields = baseFields.concat();\n this.plugins = [];\n this.pluginsByKey = Object.create(null);\n if (plugins) { plugins.forEach(function (plugin) {\n if (this$1.pluginsByKey[plugin.key])\n { throw new RangeError(\"Adding different instances of a keyed plugin (\" + plugin.key + \")\") }\n this$1.plugins.push(plugin);\n this$1.pluginsByKey[plugin.key] = plugin;\n if (plugin.spec.state)\n { this$1.fields.push(new FieldDesc(plugin.key, plugin.spec.state, plugin)); }\n }); }\n};\n\n// ::- The state of a ProseMirror editor is represented by an object\n// of this type. A state is a persistent data structure—it isn't\n// updated, but rather a new state value is computed from an old one\n// using the [`apply`](#state.EditorState.apply) method.\n//\n// A state holds a number of built-in fields, and plugins can\n// [define](#state.PluginSpec.state) additional fields.\nvar EditorState = function EditorState(config) {\n this.config = config;\n};\n\nvar prototypeAccessors$1 = { schema: { configurable: true },plugins: { configurable: true },tr: { configurable: true } };\n\n// doc:: Node\n// The current document.\n\n// selection:: Selection\n// The selection.\n\n// storedMarks:: ?[Mark]\n// A set of marks to apply to the next input. Will be null when\n// no explicit marks have been set.\n\n// :: Schema\n// The schema of the state's document.\nprototypeAccessors$1.schema.get = function () {\n return this.config.schema\n};\n\n// :: [Plugin]\n// The plugins that are active in this state.\nprototypeAccessors$1.plugins.get = function () {\n return this.config.plugins\n};\n\n// :: (Transaction) → EditorState\n// Apply the given transaction to produce a new state.\nEditorState.prototype.apply = function apply (tr) {\n return this.applyTransaction(tr).state\n};\n\n// : (Transaction) → bool\nEditorState.prototype.filterTransaction = function filterTransaction (tr, ignore) {\n if ( ignore === void 0 ) ignore = -1;\n\n for (var i = 0; i < this.config.plugins.length; i++) { if (i != ignore) {\n var plugin = this.config.plugins[i];\n if (plugin.spec.filterTransaction && !plugin.spec.filterTransaction.call(plugin, tr, this))\n { return false }\n } }\n return true\n};\n\n// :: (Transaction) → {state: EditorState, transactions: [Transaction]}\n// Verbose variant of [`apply`](#state.EditorState.apply) that\n// returns the precise transactions that were applied (which might\n// be influenced by the [transaction\n// hooks](#state.PluginSpec.filterTransaction) of\n// plugins) along with the new state.\nEditorState.prototype.applyTransaction = function applyTransaction (rootTr) {\n if (!this.filterTransaction(rootTr)) { return {state: this, transactions: []} }\n\n var trs = [rootTr], newState = this.applyInner(rootTr), seen = null;\n // This loop repeatedly gives plugins a chance to respond to\n // transactions as new transactions are added, making sure to only\n // pass the transactions the plugin did not see before.\n for (;;) {\n var haveNew = false;\n for (var i = 0; i < this.config.plugins.length; i++) {\n var plugin = this.config.plugins[i];\n if (plugin.spec.appendTransaction) {\n var n = seen ? seen[i].n : 0, oldState = seen ? seen[i].state : this;\n var tr = n < trs.length &&\n plugin.spec.appendTransaction.call(plugin, n ? trs.slice(n) : trs, oldState, newState);\n if (tr && newState.filterTransaction(tr, i)) {\n tr.setMeta(\"appendedTransaction\", rootTr);\n if (!seen) {\n seen = [];\n for (var j = 0; j < this.config.plugins.length; j++)\n { seen.push(j < i ? {state: newState, n: trs.length} : {state: this, n: 0}); }\n }\n trs.push(tr);\n newState = newState.applyInner(tr);\n haveNew = true;\n }\n if (seen) { seen[i] = {state: newState, n: trs.length}; }\n }\n }\n if (!haveNew) { return {state: newState, transactions: trs} }\n }\n};\n\n// : (Transaction) → EditorState\nEditorState.prototype.applyInner = function applyInner (tr) {\n if (!tr.before.eq(this.doc)) { throw new RangeError(\"Applying a mismatched transaction\") }\n var newInstance = new EditorState(this.config), fields = this.config.fields;\n for (var i = 0; i < fields.length; i++) {\n var field = fields[i];\n newInstance[field.name] = field.apply(tr, this[field.name], this, newInstance);\n }\n for (var i$1 = 0; i$1 < applyListeners.length; i$1++) { applyListeners[i$1](this, tr, newInstance); }\n return newInstance\n};\n\n// :: Transaction\n// Start a [transaction](#state.Transaction) from this state.\nprototypeAccessors$1.tr.get = function () { return new Transaction(this) };\n\n// :: (Object) → EditorState\n// Create a new state.\n//\n// config::- Configuration options. Must contain `schema` or `doc` (or both).\n//\n// schema:: ?Schema\n// The schema to use.\n//\n// doc:: ?Node\n// The starting document.\n//\n// selection:: ?Selection\n// A valid selection in the document.\n//\n// storedMarks:: ?[Mark]\n// The initial set of [stored marks](#state.EditorState.storedMarks).\n//\n// plugins:: ?[Plugin]\n// The plugins that should be active in this state.\nEditorState.create = function create (config) {\n var $config = new Configuration(config.schema || config.doc.type.schema, config.plugins);\n var instance = new EditorState($config);\n for (var i = 0; i < $config.fields.length; i++)\n { instance[$config.fields[i].name] = $config.fields[i].init(config, instance); }\n return instance\n};\n\n// :: (Object) → EditorState\n// Create a new state based on this one, but with an adjusted set of\n// active plugins. State fields that exist in both sets of plugins\n// are kept unchanged. Those that no longer exist are dropped, and\n// those that are new are initialized using their\n// [`init`](#state.StateField.init) method, passing in the new\n// configuration object..\n//\n// config::- configuration options\n//\n// schema:: ?Schema\n// New schema to use.\n//\n// plugins:: ?[Plugin]\n// New set of active plugins.\nEditorState.prototype.reconfigure = function reconfigure (config) {\n var $config = new Configuration(config.schema || this.schema, config.plugins);\n var fields = $config.fields, instance = new EditorState($config);\n for (var i = 0; i < fields.length; i++) {\n var name = fields[i].name;\n instance[name] = this.hasOwnProperty(name) ? this[name] : fields[i].init(config, instance);\n }\n return instance\n};\n\n// :: (?union<Object<Plugin>, string, number>) → Object\n// Serialize this state to JSON. If you want to serialize the state\n// of plugins, pass an object mapping property names to use in the\n// resulting JSON object to plugin objects. The argument may also be\n// a string or number, in which case it is ignored, to support the\n// way `JSON.stringify` calls `toString` methods.\nEditorState.prototype.toJSON = function toJSON (pluginFields) {\n var result = {doc: this.doc.toJSON(), selection: this.selection.toJSON()};\n if (this.storedMarks) { result.storedMarks = this.storedMarks.map(function (m) { return m.toJSON(); }); }\n if (pluginFields && typeof pluginFields == 'object') { for (var prop in pluginFields) {\n if (prop == \"doc\" || prop == \"selection\")\n { throw new RangeError(\"The JSON fields `doc` and `selection` are reserved\") }\n var plugin = pluginFields[prop], state = plugin.spec.state;\n if (state && state.toJSON) { result[prop] = state.toJSON.call(plugin, this[plugin.key]); }\n } }\n return result\n};\n\n// :: (Object, Object, ?Object<Plugin>) → EditorState\n// Deserialize a JSON representation of a state. `config` should\n// have at least a `schema` field, and should contain array of\n// plugins to initialize the state with. `pluginFields` can be used\n// to deserialize the state of plugins, by associating plugin\n// instances with the property names they use in the JSON object.\n//\n// config::- configuration options\n//\n// schema:: Schema\n// The schema to use.\n//\n// plugins:: ?[Plugin]\n// The set of active plugins.\nEditorState.fromJSON = function fromJSON (config, json, pluginFields) {\n if (!json) { throw new RangeError(\"Invalid input for EditorState.fromJSON\") }\n if (!config.schema) { throw new RangeError(\"Required config field 'schema' missing\") }\n var $config = new Configuration(config.schema, config.plugins);\n var instance = new EditorState($config);\n $config.fields.forEach(function (field) {\n if (field.name == \"doc\") {\n instance.doc = Node.fromJSON(config.schema, json.doc);\n } else if (field.name == \"selection\") {\n instance.selection = Selection.fromJSON(instance.doc, json.selection);\n } else if (field.name == \"storedMarks\") {\n if (json.storedMarks) { instance.storedMarks = json.storedMarks.map(config.schema.markFromJSON); }\n } else {\n if (pluginFields) { for (var prop in pluginFields) {\n var plugin = pluginFields[prop], state = plugin.spec.state;\n if (plugin.key == field.name && state && state.fromJSON &&\n Object.prototype.hasOwnProperty.call(json, prop)) {\n // This field belongs to a plugin mapped to a JSON field, read it from there.\n instance[field.name] = state.fromJSON.call(plugin, config, json[prop], instance);\n return\n }\n } }\n instance[field.name] = field.init(config, instance);\n }\n });\n return instance\n};\n\n// Kludge to allow the view to track mappings between different\n// instances of a state.\n//\n// FIXME this is no longer needed as of prosemirror-view 1.9.0,\n// though due to backwards-compat we should probably keep it around\n// for a while (if only as a no-op)\nEditorState.addApplyListener = function addApplyListener (f) {\n applyListeners.push(f);\n};\nEditorState.removeApplyListener = function removeApplyListener (f) {\n var found = applyListeners.indexOf(f);\n if (found > -1) { applyListeners.splice(found, 1); }\n};\n\nObject.defineProperties( EditorState.prototype, prototypeAccessors$1 );\n\nvar applyListeners = [];\n\n// PluginSpec:: interface\n//\n// This is the type passed to the [`Plugin`](#state.Plugin)\n// constructor. It provides a definition for a plugin.\n//\n// props:: ?EditorProps\n// The [view props](#view.EditorProps) added by this plugin. Props\n// that are functions will be bound to have the plugin instance as\n// their `this` binding.\n//\n// state:: ?StateField<any>\n// Allows a plugin to define a [state field](#state.StateField), an\n// extra slot in the state object in which it can keep its own data.\n//\n// key:: ?PluginKey\n// Can be used to make this a keyed plugin. You can have only one\n// plugin with a given key in a given state, but it is possible to\n// access the plugin's configuration and state through the key,\n// without having access to the plugin instance object.\n//\n// view:: ?(EditorView) → Object\n// When the plugin needs to interact with the editor view, or\n// set something up in the DOM, use this field. The function\n// will be called when the plugin's state is associated with an\n// editor view.\n//\n// return::-\n// Should return an object with the following optional\n// properties:\n//\n// update:: ?(view: EditorView, prevState: EditorState)\n// Called whenever the view's state is updated.\n//\n// destroy:: ?()\n// Called when the view is destroyed or receives a state\n// with different plugins.\n//\n// filterTransaction:: ?(Transaction, EditorState) → bool\n// When present, this will be called before a transaction is\n// applied by the state, allowing the plugin to cancel it (by\n// returning false).\n//\n// appendTransaction:: ?(transactions: [Transaction], oldState: EditorState, newState: EditorState) → ?Transaction\n// Allows the plugin to append another transaction to be applied\n// after the given array of transactions. When another plugin\n// appends a transaction after this was called, it is called again\n// with the new state and new transactions—but only the new\n// transactions, i.e. it won't be passed transactions that it\n// already saw.\n\nfunction bindProps(obj, self, target) {\n for (var prop in obj) {\n var val = obj[prop];\n if (val instanceof Function) { val = val.bind(self); }\n else if (prop == \"handleDOMEvents\") { val = bindProps(val, self, {}); }\n target[prop] = val;\n }\n return target\n}\n\n// ::- Plugins bundle functionality that can be added to an editor.\n// They are part of the [editor state](#state.EditorState) and\n// may influence that state and the view that contains it.\nvar Plugin = function Plugin(spec) {\n // :: EditorProps\n // The [props](#view.EditorProps) exported by this plugin.\n this.props = {};\n if (spec.props) { bindProps(spec.props, this, this.props); }\n // :: Object\n // The plugin's [spec object](#state.PluginSpec).\n this.spec = spec;\n this.key = spec.key ? spec.key.key : createKey(\"plugin\");\n};\n\n// :: (EditorState) → any\n// Extract the plugin's state field from an editor state.\nPlugin.prototype.getState = function getState (state) { return state[this.key] };\n\n// StateField:: interface<T>\n// A plugin spec may provide a state field (under its\n// [`state`](#state.PluginSpec.state) property) of this type, which\n// describes the state it wants to keep. Functions provided here are\n// always called with the plugin instance as their `this` binding.\n//\n// init:: (config: Object, instance: EditorState) → T\n// Initialize the value of the field. `config` will be the object\n// passed to [`EditorState.create`](#state.EditorState^create). Note\n// that `instance` is a half-initialized state instance, and will\n// not have values for plugin fields initialized after this one.\n//\n// apply:: (tr: Transaction, value: T, oldState: EditorState, newState: EditorState) → T\n// Apply the given transaction to this state field, producing a new\n// field value. Note that the `newState` argument is again a partially\n// constructed state does not yet contain the state from plugins\n// coming after this one.\n//\n// toJSON:: ?(value: T) → *\n// Convert this field to JSON. Optional, can be left off to disable\n// JSON serialization for the field.\n//\n// fromJSON:: ?(config: Object, value: *, state: EditorState) → T\n// Deserialize the JSON representation of this field. Note that the\n// `state` argument is again a half-initialized state.\n\nvar keys = Object.create(null);\n\nfunction createKey(name) {\n if (name in keys) { return name + \"$\" + ++keys[name] }\n keys[name] = 0;\n return name + \"$\"\n}\n\n// ::- A key is used to [tag](#state.PluginSpec.key)\n// plugins in a way that makes it possible to find them, given an\n// editor state. Assigning a key does mean only one plugin of that\n// type can be active in a state.\nvar PluginKey = function PluginKey(name) {\nif ( name === void 0 ) name = \"key\";\n this.key = createKey(name); };\n\n// :: (EditorState) → ?Plugin\n// Get the active plugin with this key, if any, from an editor\n// state.\nPluginKey.prototype.get = function get (state) { return state.config.pluginsByKey[this.key] };\n\n// :: (EditorState) → ?any\n// Get the plugin's state from an editor state.\nPluginKey.prototype.getState = function getState (state) { return state[this.key] };\n\nexport { AllSelection, EditorState, NodeSelection, Plugin, PluginKey, Selection, SelectionRange, TextSelection, Transaction };\n//# sourceMappingURL=index.es.js.map\n","import { TextSelection, NodeSelection, Selection } from 'prosemirror-state';\nimport { DOMSerializer, Fragment, Mark, DOMParser, Slice } from 'prosemirror-model';\nimport { dropPoint } from 'prosemirror-transform';\n\nvar result = {};\n\nif (typeof navigator != \"undefined\" && typeof document != \"undefined\") {\n var ie_edge = /Edge\\/(\\d+)/.exec(navigator.userAgent);\n var ie_upto10 = /MSIE \\d/.test(navigator.userAgent);\n var ie_11up = /Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(navigator.userAgent);\n\n result.mac = /Mac/.test(navigator.platform);\n var ie = result.ie = !!(ie_upto10 || ie_11up || ie_edge);\n result.ie_version = ie_upto10 ? document.documentMode || 6 : ie_11up ? +ie_11up[1] : ie_edge ? +ie_edge[1] : null;\n result.gecko = !ie && /gecko\\/(\\d+)/i.test(navigator.userAgent);\n result.gecko_version = result.gecko && +(/Firefox\\/(\\d+)/.exec(navigator.userAgent) || [0, 0])[1];\n var chrome = !ie && /Chrome\\/(\\d+)/.exec(navigator.userAgent);\n result.chrome = !!chrome;\n result.chrome_version = chrome && +chrome[1];\n result.ios = !ie && /AppleWebKit/.test(navigator.userAgent) && /Mobile\\/\\w+/.test(navigator.userAgent);\n result.android = /Android \\d/.test(navigator.userAgent);\n result.webkit = \"webkitFontSmoothing\" in document.documentElement.style;\n result.safari = /Apple Computer/.test(navigator.vendor);\n result.webkit_version = result.webkit && +(/\\bAppleWebKit\\/(\\d+)/.exec(navigator.userAgent) || [0, 0])[1];\n}\n\nvar domIndex = function(node) {\n for (var index = 0;; index++) {\n node = node.previousSibling;\n if (!node) { return index }\n }\n};\n\nvar parentNode = function(node) {\n var parent = node.parentNode;\n return parent && parent.nodeType == 11 ? parent.host : parent\n};\n\nvar textRange = function(node, from, to) {\n var range = document.createRange();\n range.setEnd(node, to == null ? node.nodeValue.length : to);\n range.setStart(node, from || 0);\n return range\n};\n\n// Scans forward and backward through DOM positions equivalent to the\n// given one to see if the two are in the same place (i.e. after a\n// text node vs at the end of that text node)\nvar isEquivalentPosition = function(node, off, targetNode, targetOff) {\n return targetNode && (scanFor(node, off, targetNode, targetOff, -1) ||\n scanFor(node, off, targetNode, targetOff, 1))\n};\n\nvar atomElements = /^(img|br|input|textarea|hr)$/i;\n\nfunction scanFor(node, off, targetNode, targetOff, dir) {\n for (;;) {\n if (node == targetNode && off == targetOff) { return true }\n if (off == (dir < 0 ? 0 : nodeSize(node))) {\n var parent = node.parentNode;\n if (parent.nodeType != 1 || hasBlockDesc(node) || atomElements.test(node.nodeName) || node.contentEditable == \"false\")\n { return false }\n off = domIndex(node) + (dir < 0 ? 0 : 1);\n node = parent;\n } else if (node.nodeType == 1) {\n node = node.childNodes[off + (dir < 0 ? -1 : 0)];\n if (node.contentEditable == \"false\") { return false }\n off = dir < 0 ? nodeSize(node) : 0;\n } else {\n return false\n }\n }\n}\n\nfunction nodeSize(node) {\n return node.nodeType == 3 ? node.nodeValue.length : node.childNodes.length\n}\n\nfunction isOnEdge(node, offset, parent) {\n for (var atStart = offset == 0, atEnd = offset == nodeSize(node); atStart || atEnd;) {\n if (node == parent) { return true }\n var index = domIndex(node);\n node = node.parentNode;\n if (!node) { return false }\n atStart = atStart && index == 0;\n atEnd = atEnd && index == nodeSize(node);\n }\n}\n\nfunction hasBlockDesc(dom) {\n var desc;\n for (var cur = dom; cur; cur = cur.parentNode) { if (desc = cur.pmViewDesc) { break } }\n return desc && desc.node && desc.node.isBlock && (desc.dom == dom || desc.contentDOM == dom)\n}\n\n// Work around Chrome issue https://bugs.chromium.org/p/chromium/issues/detail?id=447523\n// (isCollapsed inappropriately returns true in shadow dom)\nvar selectionCollapsed = function(domSel) {\n var collapsed = domSel.isCollapsed;\n if (collapsed && result.chrome && domSel.rangeCount && !domSel.getRangeAt(0).collapsed)\n { collapsed = false; }\n return collapsed\n};\n\nfunction keyEvent(keyCode, key) {\n var event = document.createEvent(\"Event\");\n event.initEvent(\"keydown\", true, true);\n event.keyCode = keyCode;\n event.key = event.code = key;\n return event\n}\n\nfunction windowRect(doc) {\n return {left: 0, right: doc.documentElement.clientWidth,\n top: 0, bottom: doc.documentElement.clientHeight}\n}\n\nfunction getSide(value, side) {\n return typeof value == \"number\" ? value : value[side]\n}\n\nfunction clientRect(node) {\n var rect = node.getBoundingClientRect();\n // Make sure scrollbar width isn't included in the rectangle\n return {left: rect.left, right: rect.left + node.clientWidth,\n top: rect.top, bottom: rect.top + node.clientHeight}\n}\n\nfunction scrollRectIntoView(view, rect, startDOM) {\n var scrollThreshold = view.someProp(\"scrollThreshold\") || 0, scrollMargin = view.someProp(\"scrollMargin\") || 5;\n var doc = view.dom.ownerDocument;\n for (var parent = startDOM || view.dom;; parent = parentNode(parent)) {\n if (!parent) { break }\n if (parent.nodeType != 1) { continue }\n var atTop = parent == doc.body || parent.nodeType != 1;\n var bounding = atTop ? windowRect(doc) : clientRect(parent);\n var moveX = 0, moveY = 0;\n if (rect.top < bounding.top + getSide(scrollThreshold, \"top\"))\n { moveY = -(bounding.top - rect.top + getSide(scrollMargin, \"top\")); }\n else if (rect.bottom > bounding.bottom - getSide(scrollThreshold, \"bottom\"))\n { moveY = rect.bottom - bounding.bottom + getSide(scrollMargin, \"bottom\"); }\n if (rect.left < bounding.left + getSide(scrollThreshold, \"left\"))\n { moveX = -(bounding.left - rect.left + getSide(scrollMargin, \"left\")); }\n else if (rect.right > bounding.right - getSide(scrollThreshold, \"right\"))\n { moveX = rect.right - bounding.right + getSide(scrollMargin, \"right\"); }\n if (moveX || moveY) {\n if (atTop) {\n doc.defaultView.scrollBy(moveX, moveY);\n } else {\n var startX = parent.scrollLeft, startY = parent.scrollTop;\n if (moveY) { parent.scrollTop += moveY; }\n if (moveX) { parent.scrollLeft += moveX; }\n var dX = parent.scrollLeft - startX, dY = parent.scrollTop - startY;\n rect = {left: rect.left - dX, top: rect.top - dY, right: rect.right - dX, bottom: rect.bottom - dY};\n }\n }\n if (atTop) { break }\n }\n}\n\n// Store the scroll position of the editor's parent nodes, along with\n// the top position of an element near the top of the editor, which\n// will be used to make sure the visible viewport remains stable even\n// when the size of the content above changes.\nfunction storeScrollPos(view) {\n var rect = view.dom.getBoundingClientRect(), startY = Math.max(0, rect.top);\n var refDOM, refTop;\n for (var x = (rect.left + rect.right) / 2, y = startY + 1;\n y < Math.min(innerHeight, rect.bottom); y += 5) {\n var dom = view.root.elementFromPoint(x, y);\n if (dom == view.dom || !view.dom.contains(dom)) { continue }\n var localRect = dom.getBoundingClientRect();\n if (localRect.top >= startY - 20) {\n refDOM = dom;\n refTop = localRect.top;\n break\n }\n }\n return {refDOM: refDOM, refTop: refTop, stack: scrollStack(view.dom)}\n}\n\nfunction scrollStack(dom) {\n var stack = [], doc = dom.ownerDocument;\n for (; dom; dom = parentNode(dom)) {\n stack.push({dom: dom, top: dom.scrollTop, left: dom.scrollLeft});\n if (dom == doc) { break }\n }\n return stack\n}\n\n// Reset the scroll position of the editor's parent nodes to that what\n// it was before, when storeScrollPos was called.\nfunction resetScrollPos(ref) {\n var refDOM = ref.refDOM;\n var refTop = ref.refTop;\n var stack = ref.stack;\n\n var newRefTop = refDOM ? refDOM.getBoundingClientRect().top : 0;\n restoreScrollStack(stack, newRefTop == 0 ? 0 : newRefTop - refTop);\n}\n\nfunction restoreScrollStack(stack, dTop) {\n for (var i = 0; i < stack.length; i++) {\n var ref = stack[i];\n var dom = ref.dom;\n var top = ref.top;\n var left = ref.left;\n if (dom.scrollTop != top + dTop) { dom.scrollTop = top + dTop; }\n if (dom.scrollLeft != left) { dom.scrollLeft = left; }\n }\n}\n\nvar preventScrollSupported = null;\n// Feature-detects support for .focus({preventScroll: true}), and uses\n// a fallback kludge when not supported.\nfunction focusPreventScroll(dom) {\n if (dom.setActive) { return dom.setActive() } // in IE\n if (preventScrollSupported) { return dom.focus(preventScrollSupported) }\n\n var stored = scrollStack(dom);\n dom.focus(preventScrollSupported == null ? {\n get preventScroll() {\n preventScrollSupported = {preventScroll: true};\n return true\n }\n } : undefined);\n if (!preventScrollSupported) {\n preventScrollSupported = false;\n restoreScrollStack(stored, 0);\n }\n}\n\nfunction findOffsetInNode(node, coords) {\n var closest, dxClosest = 2e8, coordsClosest, offset = 0;\n var rowBot = coords.top, rowTop = coords.top;\n for (var child = node.firstChild, childIndex = 0; child; child = child.nextSibling, childIndex++) {\n var rects = (void 0);\n if (child.nodeType == 1) { rects = child.getClientRects(); }\n else if (child.nodeType == 3) { rects = textRange(child).getClientRects(); }\n else { continue }\n\n for (var i = 0; i < rects.length; i++) {\n var rect = rects[i];\n if (rect.top <= rowBot && rect.bottom >= rowTop) {\n rowBot = Math.max(rect.bottom, rowBot);\n rowTop = Math.min(rect.top, rowTop);\n var dx = rect.left > coords.left ? rect.left - coords.left\n : rect.right < coords.left ? coords.left - rect.right : 0;\n if (dx < dxClosest) {\n closest = child;\n dxClosest = dx;\n coordsClosest = dx && closest.nodeType == 3 ? {left: rect.right < coords.left ? rect.right : rect.left, top: coords.top} : coords;\n if (child.nodeType == 1 && dx)\n { offset = childIndex + (coords.left >= (rect.left + rect.right) / 2 ? 1 : 0); }\n continue\n }\n }\n if (!closest && (coords.left >= rect.right && coords.top >= rect.top ||\n coords.left >= rect.left && coords.top >= rect.bottom))\n { offset = childIndex + 1; }\n }\n }\n if (closest && closest.nodeType == 3) { return findOffsetInText(closest, coordsClosest) }\n if (!closest || (dxClosest && closest.nodeType == 1)) { return {node: node, offset: offset} }\n return findOffsetInNode(closest, coordsClosest)\n}\n\nfunction findOffsetInText(node, coords) {\n var len = node.nodeValue.length;\n var range = document.createRange();\n for (var i = 0; i < len; i++) {\n range.setEnd(node, i + 1);\n range.setStart(node, i);\n var rect = singleRect(range, 1);\n if (rect.top == rect.bottom) { continue }\n if (inRect(coords, rect))\n { return {node: node, offset: i + (coords.left >= (rect.left + rect.right) / 2 ? 1 : 0)} }\n }\n return {node: node, offset: 0}\n}\n\nfunction inRect(coords, rect) {\n return coords.left >= rect.left - 1 && coords.left <= rect.right + 1&&\n coords.top >= rect.top - 1 && coords.top <= rect.bottom + 1\n}\n\nfunction targetKludge(dom, coords) {\n var parent = dom.parentNode;\n if (parent && /^li$/i.test(parent.nodeName) && coords.left < dom.getBoundingClientRect().left)\n { return parent }\n return dom\n}\n\nfunction posFromElement(view, elt, coords) {\n var ref = findOffsetInNode(elt, coords);\n var node = ref.node;\n var offset = ref.offset;\n var bias = -1;\n if (node.nodeType == 1 && !node.firstChild) {\n var rect = node.getBoundingClientRect();\n bias = rect.left != rect.right && coords.left > (rect.left + rect.right) / 2 ? 1 : -1;\n }\n return view.docView.posFromDOM(node, offset, bias)\n}\n\nfunction posFromCaret(view, node, offset, coords) {\n // Browser (in caretPosition/RangeFromPoint) will agressively\n // normalize towards nearby inline nodes. Since we are interested in\n // positions between block nodes too, we first walk up the hierarchy\n // of nodes to see if there are block nodes that the coordinates\n // fall outside of. If so, we take the position before/after that\n // block. If not, we call `posFromDOM` on the raw node/offset.\n var outside = -1;\n for (var cur = node;;) {\n if (cur == view.dom) { break }\n var desc = view.docView.nearestDesc(cur, true);\n if (!desc) { return null }\n if (desc.node.isBlock && desc.parent) {\n var rect = desc.dom.getBoundingClientRect();\n if (rect.left > coords.left || rect.top > coords.top) { outside = desc.posBefore; }\n else if (rect.right < coords.left || rect.bottom < coords.top) { outside = desc.posAfter; }\n else { break }\n }\n cur = desc.dom.parentNode;\n }\n return outside > -1 ? outside : view.docView.posFromDOM(node, offset)\n}\n\nfunction elementFromPoint(element, coords, box) {\n var len = element.childNodes.length;\n if (len && box.top < box.bottom) {\n for (var startI = Math.max(0, Math.min(len - 1, Math.floor(len * (coords.top - box.top) / (box.bottom - box.top)) - 2)), i = startI;;) {\n var child = element.childNodes[i];\n if (child.nodeType == 1) {\n var rects = child.getClientRects();\n for (var j = 0; j < rects.length; j++) {\n var rect = rects[j];\n if (inRect(coords, rect)) { return elementFromPoint(child, coords, rect) }\n }\n }\n if ((i = (i + 1) % len) == startI) { break }\n }\n }\n return element\n}\n\n// Given an x,y position on the editor, get the position in the document.\nfunction posAtCoords(view, coords) {\n var assign, assign$1;\n\n var root = view.root, node, offset;\n if (root.caretPositionFromPoint) {\n try { // Firefox throws for this call in hard-to-predict circumstances (#994)\n var pos$1 = root.caretPositionFromPoint(coords.left, coords.top);\n if (pos$1) { ((assign = pos$1, node = assign.offsetNode, offset = assign.offset)); }\n } catch (_) {}\n }\n if (!node && root.caretRangeFromPoint) {\n var range = root.caretRangeFromPoint(coords.left, coords.top);\n if (range) { ((assign$1 = range, node = assign$1.startContainer, offset = assign$1.startOffset)); }\n }\n\n var elt = root.elementFromPoint(coords.left, coords.top + 1), pos;\n if (!elt || !view.dom.contains(elt.nodeType != 1 ? elt.parentNode : elt)) {\n var box = view.dom.getBoundingClientRect();\n if (!inRect(coords, box)) { return null }\n elt = elementFromPoint(view.dom, coords, box);\n if (!elt) { return null }\n }\n // Safari's caretRangeFromPoint returns nonsense when on a draggable element\n if (result.safari && elt.draggable) { node = offset = null; }\n elt = targetKludge(elt, coords);\n if (node) {\n if (result.gecko && node.nodeType == 1) {\n // Firefox will sometimes return offsets into <input> nodes, which\n // have no actual children, from caretPositionFromPoint (#953)\n offset = Math.min(offset, node.childNodes.length);\n // It'll also move the returned position before image nodes,\n // even if those are behind it.\n if (offset < node.childNodes.length) {\n var next = node.childNodes[offset], box$1;\n if (next.nodeName == \"IMG\" && (box$1 = next.getBoundingClientRect()).right <= coords.left &&\n box$1.bottom > coords.top)\n { offset++; }\n }\n }\n // Suspiciously specific kludge to work around caret*FromPoint\n // never returning a position at the end of the document\n if (node == view.dom && offset == node.childNodes.length - 1 && node.lastChild.nodeType == 1 &&\n coords.top > node.lastChild.getBoundingClientRect().bottom)\n { pos = view.state.doc.content.size; }\n // Ignore positions directly after a BR, since caret*FromPoint\n // 'round up' positions that would be more accurately placed\n // before the BR node.\n else if (offset == 0 || node.nodeType != 1 || node.childNodes[offset - 1].nodeName != \"BR\")\n { pos = posFromCaret(view, node, offset, coords); }\n }\n if (pos == null) { pos = posFromElement(view, elt, coords); }\n\n var desc = view.docView.nearestDesc(elt, true);\n return {pos: pos, inside: desc ? desc.posAtStart - desc.border : -1}\n}\n\nfunction singleRect(object, bias) {\n var rects = object.getClientRects();\n return !rects.length ? object.getBoundingClientRect() : rects[bias < 0 ? 0 : rects.length - 1]\n}\n\n// : (EditorView, number) → {left: number, top: number, right: number, bottom: number}\n// Given a position in the document model, get a bounding box of the\n// character at that position, relative to the window.\nfunction coordsAtPos(view, pos) {\n var ref = view.docView.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n\n // These browsers support querying empty text ranges\n if (node.nodeType == 3 && (result.webkit || result.gecko)) {\n var rect = singleRect(textRange(node, offset, offset), 0);\n // Firefox returns bad results (the position before the space)\n // when querying a position directly after line-broken\n // whitespace. Detect this situation and and kludge around it\n if (result.gecko && offset && /\\s/.test(node.nodeValue[offset - 1]) && offset < node.nodeValue.length) {\n var rectBefore = singleRect(textRange(node, offset - 1, offset - 1), -1);\n if (rectBefore.top == rect.top) {\n var rectAfter = singleRect(textRange(node, offset, offset + 1), -1);\n if (rectAfter.top != rect.top)\n { return flattenV(rectAfter, rectAfter.left < rectBefore.left) }\n }\n }\n return rect\n }\n\n if (node.nodeType == 1 && !view.state.doc.resolve(pos).parent.inlineContent) {\n // Return a horizontal line in block context\n var top = true, rect$1;\n if (offset < node.childNodes.length) {\n var after = node.childNodes[offset];\n if (after.nodeType == 1) { rect$1 = after.getBoundingClientRect(); }\n }\n if (!rect$1 && offset) {\n var before = node.childNodes[offset - 1];\n if (before.nodeType == 1) { rect$1 = before.getBoundingClientRect(); top = false; }\n }\n return flattenH(rect$1 || node.getBoundingClientRect(), top)\n }\n\n // Not Firefox/Chrome, or not in a text node, so we have to use\n // actual element/character rectangles to get a solution (this part\n // is not very bidi-safe)\n //\n // Try the left side first, fall back to the right one if that\n // doesn't work.\n for (var dir = -1; dir < 2; dir += 2) {\n if (dir < 0 && offset) {\n var prev = (void 0), target = node.nodeType == 3 ? textRange(node, offset - 1, offset)\n : (prev = node.childNodes[offset - 1]).nodeType == 3 ? textRange(prev)\n : prev.nodeType == 1 && prev.nodeName != \"BR\" ? prev : null; // BR nodes tend to only return the rectangle before them\n if (target) {\n var rect$2 = singleRect(target, 1);\n if (rect$2.top < rect$2.bottom) { return flattenV(rect$2, false) }\n }\n } else if (dir > 0 && offset < nodeSize(node)) {\n var next = (void 0), target$1 = node.nodeType == 3 ? textRange(node, offset, offset + 1)\n : (next = node.childNodes[offset]).nodeType == 3 ? textRange(next)\n : next.nodeType == 1 ? next : null;\n if (target$1) {\n var rect$3 = singleRect(target$1, -1);\n if (rect$3.top < rect$3.bottom) { return flattenV(rect$3, true) }\n }\n }\n }\n // All else failed, just try to get a rectangle for the target node\n return flattenV(singleRect(node.nodeType == 3 ? textRange(node) : node, 0), false)\n}\n\nfunction flattenV(rect, left) {\n if (rect.width == 0) { return rect }\n var x = left ? rect.left : rect.right;\n return {top: rect.top, bottom: rect.bottom, left: x, right: x}\n}\n\nfunction flattenH(rect, top) {\n if (rect.height == 0) { return rect }\n var y = top ? rect.top : rect.bottom;\n return {top: y, bottom: y, left: rect.left, right: rect.right}\n}\n\nfunction withFlushedState(view, state, f) {\n var viewState = view.state, active = view.root.activeElement;\n if (viewState != state) { view.updateState(state); }\n if (active != view.dom) { view.focus(); }\n try {\n return f()\n } finally {\n if (viewState != state) { view.updateState(viewState); }\n if (active != view.dom && active) { active.focus(); }\n }\n}\n\n// : (EditorView, number, number)\n// Whether vertical position motion in a given direction\n// from a position would leave a text block.\nfunction endOfTextblockVertical(view, state, dir) {\n var sel = state.selection;\n var $pos = dir == \"up\" ? sel.$anchor.min(sel.$head) : sel.$anchor.max(sel.$head);\n return withFlushedState(view, state, function () {\n var ref = view.docView.domFromPos($pos.pos);\n var dom = ref.node;\n for (;;) {\n var nearest = view.docView.nearestDesc(dom, true);\n if (!nearest) { break }\n if (nearest.node.isBlock) { dom = nearest.dom; break }\n dom = nearest.dom.parentNode;\n }\n var coords = coordsAtPos(view, $pos.pos);\n for (var child = dom.firstChild; child; child = child.nextSibling) {\n var boxes = (void 0);\n if (child.nodeType == 1) { boxes = child.getClientRects(); }\n else if (child.nodeType == 3) { boxes = textRange(child, 0, child.nodeValue.length).getClientRects(); }\n else { continue }\n for (var i = 0; i < boxes.length; i++) {\n var box = boxes[i];\n if (box.bottom > box.top && (dir == \"up\" ? box.bottom < coords.top + 1 : box.top > coords.bottom - 1))\n { return false }\n }\n }\n return true\n })\n}\n\nvar maybeRTL = /[\\u0590-\\u08ac]/;\n\nfunction endOfTextblockHorizontal(view, state, dir) {\n var ref = state.selection;\n var $head = ref.$head;\n if (!$head.parent.isTextblock) { return false }\n var offset = $head.parentOffset, atStart = !offset, atEnd = offset == $head.parent.content.size;\n var sel = getSelection();\n // If the textblock is all LTR, or the browser doesn't support\n // Selection.modify (Edge), fall back to a primitive approach\n if (!maybeRTL.test($head.parent.textContent) || !sel.modify)\n { return dir == \"left\" || dir == \"backward\" ? atStart : atEnd }\n\n return withFlushedState(view, state, function () {\n // This is a huge hack, but appears to be the best we can\n // currently do: use `Selection.modify` to move the selection by\n // one character, and see if that moves the cursor out of the\n // textblock (or doesn't move it at all, when at the start/end of\n // the document).\n var oldRange = sel.getRangeAt(0), oldNode = sel.focusNode, oldOff = sel.focusOffset;\n var oldBidiLevel = sel.caretBidiLevel; // Only for Firefox\n sel.modify(\"move\", dir, \"character\");\n var parentDOM = $head.depth ? view.docView.domAfterPos($head.before()) : view.dom;\n var result = !parentDOM.contains(sel.focusNode.nodeType == 1 ? sel.focusNode : sel.focusNode.parentNode) ||\n (oldNode == sel.focusNode && oldOff == sel.focusOffset);\n // Restore the previous selection\n sel.removeAllRanges();\n sel.addRange(oldRange);\n if (oldBidiLevel != null) { sel.caretBidiLevel = oldBidiLevel; }\n return result\n })\n}\n\nvar cachedState = null, cachedDir = null, cachedResult = false;\nfunction endOfTextblock(view, state, dir) {\n if (cachedState == state && cachedDir == dir) { return cachedResult }\n cachedState = state; cachedDir = dir;\n return cachedResult = dir == \"up\" || dir == \"down\"\n ? endOfTextblockVertical(view, state, dir)\n : endOfTextblockHorizontal(view, state, dir)\n}\n\n// NodeView:: interface\n//\n// By default, document nodes are rendered using the result of the\n// [`toDOM`](#model.NodeSpec.toDOM) method of their spec, and managed\n// entirely by the editor. For some use cases, such as embedded\n// node-specific editing interfaces, you want more control over\n// the behavior of a node's in-editor representation, and need to\n// [define](#view.EditorProps.nodeViews) a custom node view.\n//\n// Mark views only support `dom` and `contentDOM`, and don't support\n// any of the node view methods.\n//\n// Objects returned as node views must conform to this interface.\n//\n// dom:: ?dom.Node\n// The outer DOM node that represents the document node. When not\n// given, the default strategy is used to create a DOM node.\n//\n// contentDOM:: ?dom.Node\n// The DOM node that should hold the node's content. Only meaningful\n// if the node view also defines a `dom` property and if its node\n// type is not a leaf node type. When this is present, ProseMirror\n// will take care of rendering the node's children into it. When it\n// is not present, the node view itself is responsible for rendering\n// (or deciding not to render) its child nodes.\n//\n// update:: ?(node: Node, decorations: [Decoration]) → bool\n// When given, this will be called when the view is updating itself.\n// It will be given a node (possibly of a different type), and an\n// array of active decorations (which are automatically drawn, and\n// the node view may ignore if it isn't interested in them), and\n// should return true if it was able to update to that node, and\n// false otherwise. If the node view has a `contentDOM` property (or\n// no `dom` property), updating its child nodes will be handled by\n// ProseMirror.\n//\n// selectNode:: ?()\n// Can be used to override the way the node's selected status (as a\n// node selection) is displayed.\n//\n// deselectNode:: ?()\n// When defining a `selectNode` method, you should also provide a\n// `deselectNode` method to remove the effect again.\n//\n// setSelection:: ?(anchor: number, head: number, root: dom.Document)\n// This will be called to handle setting the selection inside the\n// node. The `anchor` and `head` positions are relative to the start\n// of the node. By default, a DOM selection will be created between\n// the DOM positions corresponding to those positions, but if you\n// override it you can do something else.\n//\n// stopEvent:: ?(event: dom.Event) → bool\n// Can be used to prevent the editor view from trying to handle some\n// or all DOM events that bubble up from the node view. Events for\n// which this returns true are not handled by the editor.\n//\n// ignoreMutation:: ?(dom.MutationRecord) → bool\n// Called when a DOM\n// [mutation](https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver)\n// or a selection change happens within the view. When the change is\n// a selection change, the record will have a `type` property of\n// `\"selection\"` (which doesn't occur for native mutation records).\n// Return false if the editor should re-read the selection or\n// re-parse the range around the mutation, true if it can safely be\n// ignored.\n//\n// destroy:: ?()\n// Called when the node view is removed from the editor or the whole\n// editor is destroyed.\n\n// View descriptions are data structures that describe the DOM that is\n// used to represent the editor's content. They are used for:\n//\n// - Incremental redrawing when the document changes\n//\n// - Figuring out what part of the document a given DOM position\n// corresponds to\n//\n// - Wiring in custom implementations of the editing interface for a\n// given node\n//\n// They form a doubly-linked mutable tree, starting at `view.docView`.\n\nvar NOT_DIRTY = 0, CHILD_DIRTY = 1, CONTENT_DIRTY = 2, NODE_DIRTY = 3;\n\n// Superclass for the various kinds of descriptions. Defines their\n// basic structure and shared methods.\nvar ViewDesc = function ViewDesc(parent, children, dom, contentDOM) {\n this.parent = parent;\n this.children = children;\n this.dom = dom;\n // An expando property on the DOM node provides a link back to its\n // description.\n dom.pmViewDesc = this;\n // This is the node that holds the child views. It may be null for\n // descs that don't have children.\n this.contentDOM = contentDOM;\n this.dirty = NOT_DIRTY;\n};\n\nvar prototypeAccessors = { beforePosition: { configurable: true },size: { configurable: true },border: { configurable: true },posBefore: { configurable: true },posAtStart: { configurable: true },posAfter: { configurable: true },posAtEnd: { configurable: true },contentLost: { configurable: true } };\n\n// Used to check whether a given description corresponds to a\n// widget/mark/node.\nViewDesc.prototype.matchesWidget = function matchesWidget () { return false };\nViewDesc.prototype.matchesMark = function matchesMark () { return false };\nViewDesc.prototype.matchesNode = function matchesNode () { return false };\nViewDesc.prototype.matchesHack = function matchesHack () { return false };\n\nprototypeAccessors.beforePosition.get = function () { return false };\n\n// : () → ?ParseRule\n// When parsing in-editor content (in domchange.js), we allow\n// descriptions to determine the parse rules that should be used to\n// parse them.\nViewDesc.prototype.parseRule = function parseRule () { return null };\n\n// : (dom.Event) → bool\n// Used by the editor's event handler to ignore events that come\n// from certain descs.\nViewDesc.prototype.stopEvent = function stopEvent () { return false };\n\n// The size of the content represented by this desc.\nprototypeAccessors.size.get = function () {\n var size = 0;\n for (var i = 0; i < this.children.length; i++) { size += this.children[i].size; }\n return size\n};\n\n// For block nodes, this represents the space taken up by their\n// start/end tokens.\nprototypeAccessors.border.get = function () { return 0 };\n\nViewDesc.prototype.destroy = function destroy () {\n this.parent = null;\n if (this.dom.pmViewDesc == this) { this.dom.pmViewDesc = null; }\n for (var i = 0; i < this.children.length; i++)\n { this.children[i].destroy(); }\n};\n\nViewDesc.prototype.posBeforeChild = function posBeforeChild (child) {\n for (var i = 0, pos = this.posAtStart; i < this.children.length; i++) {\n var cur = this.children[i];\n if (cur == child) { return pos }\n pos += cur.size;\n }\n};\n\nprototypeAccessors.posBefore.get = function () {\n return this.parent.posBeforeChild(this)\n};\n\nprototypeAccessors.posAtStart.get = function () {\n return this.parent ? this.parent.posBeforeChild(this) + this.border : 0\n};\n\nprototypeAccessors.posAfter.get = function () {\n return this.posBefore + this.size\n};\n\nprototypeAccessors.posAtEnd.get = function () {\n return this.posAtStart + this.size - 2 * this.border\n};\n\n// : (dom.Node, number, ?number) → number\nViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset, bias) {\n // If the DOM position is in the content, use the child desc after\n // it to figure out a position.\n if (this.contentDOM && this.contentDOM.contains(dom.nodeType == 1 ? dom : dom.parentNode)) {\n if (bias < 0) {\n var domBefore, desc;\n if (dom == this.contentDOM) {\n domBefore = dom.childNodes[offset - 1];\n } else {\n while (dom.parentNode != this.contentDOM) { dom = dom.parentNode; }\n domBefore = dom.previousSibling;\n }\n while (domBefore && !((desc = domBefore.pmViewDesc) && desc.parent == this)) { domBefore = domBefore.previousSibling; }\n return domBefore ? this.posBeforeChild(desc) + desc.size : this.posAtStart\n } else {\n var domAfter, desc$1;\n if (dom == this.contentDOM) {\n domAfter = dom.childNodes[offset];\n } else {\n while (dom.parentNode != this.contentDOM) { dom = dom.parentNode; }\n domAfter = dom.nextSibling;\n }\n while (domAfter && !((desc$1 = domAfter.pmViewDesc) && desc$1.parent == this)) { domAfter = domAfter.nextSibling; }\n return domAfter ? this.posBeforeChild(desc$1) : this.posAtEnd\n }\n }\n // Otherwise, use various heuristics, falling back on the bias\n // parameter, to determine whether to return the position at the\n // start or at the end of this view desc.\n var atEnd;\n if (this.contentDOM && this.contentDOM != this.dom && this.dom.contains(this.contentDOM)) {\n atEnd = dom.compareDocumentPosition(this.contentDOM) & 2;\n } else if (this.dom.firstChild) {\n if (offset == 0) { for (var search = dom;; search = search.parentNode) {\n if (search == this.dom) { atEnd = false; break }\n if (search.parentNode.firstChild != search) { break }\n } }\n if (atEnd == null && offset == dom.childNodes.length) { for (var search$1 = dom;; search$1 = search$1.parentNode) {\n if (search$1 == this.dom) { atEnd = true; break }\n if (search$1.parentNode.lastChild != search$1) { break }\n } }\n }\n return (atEnd == null ? bias > 0 : atEnd) ? this.posAtEnd : this.posAtStart\n};\n\n// Scan up the dom finding the first desc that is a descendant of\n// this one.\nViewDesc.prototype.nearestDesc = function nearestDesc (dom, onlyNodes) {\n for (var first = true, cur = dom; cur; cur = cur.parentNode) {\n var desc = this.getDesc(cur);\n if (desc && (!onlyNodes || desc.node)) {\n // If dom is outside of this desc's nodeDOM, don't count it.\n if (first && desc.nodeDOM &&\n !(desc.nodeDOM.nodeType == 1 ? desc.nodeDOM.contains(dom.nodeType == 1 ? dom : dom.parentNode) : desc.nodeDOM == dom))\n { first = false; }\n else\n { return desc }\n }\n }\n};\n\nViewDesc.prototype.getDesc = function getDesc (dom) {\n var desc = dom.pmViewDesc;\n for (var cur = desc; cur; cur = cur.parent) { if (cur == this) { return desc } }\n};\n\nViewDesc.prototype.posFromDOM = function posFromDOM (dom, offset, bias) {\n for (var scan = dom; scan; scan = scan.parentNode) {\n var desc = this.getDesc(scan);\n if (desc) { return desc.localPosFromDOM(dom, offset, bias) }\n }\n return -1\n};\n\n// : (number) → ?NodeViewDesc\n// Find the desc for the node after the given pos, if any. (When a\n// parent node overrode rendering, there might not be one.)\nViewDesc.prototype.descAt = function descAt (pos) {\n for (var i = 0, offset = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (offset == pos && end != offset) {\n while (!child.border && child.children.length) { child = child.children[0]; }\n return child\n }\n if (pos < end) { return child.descAt(pos - offset - child.border) }\n offset = end;\n }\n};\n\n// : (number) → {node: dom.Node, offset: number}\nViewDesc.prototype.domFromPos = function domFromPos (pos) {\n if (!this.contentDOM) { return {node: this.dom, offset: 0} }\n for (var offset = 0, i = 0;; i++) {\n if (offset == pos) {\n while (i < this.children.length && (this.children[i].beforePosition || this.children[i].dom.parentNode != this.contentDOM)) { i++; }\n return {node: this.contentDOM,\n offset: i == this.children.length ? this.contentDOM.childNodes.length : domIndex(this.children[i].dom)}\n }\n if (i == this.children.length) { throw new Error(\"Invalid position \" + pos) }\n var child = this.children[i], end = offset + child.size;\n if (pos < end) { return child.domFromPos(pos - offset - child.border) }\n offset = end;\n }\n};\n\n// Used to find a DOM range in a single parent for a given changed\n// range.\nViewDesc.prototype.parseRange = function parseRange (from, to, base) {\n if ( base === void 0 ) base = 0;\n\n if (this.children.length == 0)\n { return {node: this.contentDOM, from: from, to: to, fromOffset: 0, toOffset: this.contentDOM.childNodes.length} }\n\n var fromOffset = -1, toOffset = -1;\n for (var offset = base, i = 0;; i++) {\n var child = this.children[i], end = offset + child.size;\n if (fromOffset == -1 && from <= end) {\n var childBase = offset + child.border;\n // FIXME maybe descend mark views to parse a narrower range?\n if (from >= childBase && to <= end - child.border && child.node &&\n child.contentDOM && this.contentDOM.contains(child.contentDOM))\n { return child.parseRange(from, to, childBase) }\n\n from = offset;\n for (var j = i; j > 0; j--) {\n var prev = this.children[j - 1];\n if (prev.size && prev.dom.parentNode == this.contentDOM && !prev.emptyChildAt(1)) {\n fromOffset = domIndex(prev.dom) + 1;\n break\n }\n from -= prev.size;\n }\n if (fromOffset == -1) { fromOffset = 0; }\n }\n if (fromOffset > -1 && (end > to || i == this.children.length - 1)) {\n to = end;\n for (var j$1 = i + 1; j$1 < this.children.length; j$1++) {\n var next = this.children[j$1];\n if (next.size && next.dom.parentNode == this.contentDOM && !next.emptyChildAt(-1)) {\n toOffset = domIndex(next.dom);\n break\n }\n to += next.size;\n }\n if (toOffset == -1) { toOffset = this.contentDOM.childNodes.length; }\n break\n }\n offset = end;\n }\n return {node: this.contentDOM, from: from, to: to, fromOffset: fromOffset, toOffset: toOffset}\n};\n\nViewDesc.prototype.emptyChildAt = function emptyChildAt (side) {\n if (this.border || !this.contentDOM || !this.children.length) { return false }\n var child = this.children[side < 0 ? 0 : this.children.length - 1];\n return child.size == 0 || child.emptyChildAt(side)\n};\n\n// : (number) → dom.Node\nViewDesc.prototype.domAfterPos = function domAfterPos (pos) {\n var ref = this.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n if (node.nodeType != 1 || offset == node.childNodes.length)\n { throw new RangeError(\"No node after pos \" + pos) }\n return node.childNodes[offset]\n};\n\n// : (number, number, dom.Document)\n// View descs are responsible for setting any selection that falls\n// entirely inside of them, so that custom implementations can do\n// custom things with the selection. Note that this falls apart when\n// a selection starts in such a node and ends in another, in which\n// case we just use whatever domFromPos produces as a best effort.\nViewDesc.prototype.setSelection = function setSelection (anchor, head, root, force) {\n // If the selection falls entirely in a child, give it to that child\n var from = Math.min(anchor, head), to = Math.max(anchor, head);\n for (var i = 0, offset = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (from > offset && to < end)\n { return child.setSelection(anchor - offset - child.border, head - offset - child.border, root, force) }\n offset = end;\n }\n\n var anchorDOM = this.domFromPos(anchor), headDOM = this.domFromPos(head);\n var domSel = root.getSelection();\n\n var brKludge = false;\n // On Firefox, using Selection.collapse to put the cursor after a\n // BR node for some reason doesn't always work (#1073). On Safari,\n // the cursor sometimes inexplicable visually lags behind its\n // reported position in such situations (#1092).\n if ((result.gecko || result.safari) && anchor == head) {\n var prev = anchorDOM.node.childNodes[anchorDOM.offset - 1];\n brKludge = prev && (prev.nodeName == \"BR\" || prev.contentEditable == \"false\");\n }\n\n if (!(force || brKludge && result.safari) &&\n isEquivalentPosition(anchorDOM.node, anchorDOM.offset, domSel.anchorNode, domSel.anchorOffset) &&\n isEquivalentPosition(headDOM.node, headDOM.offset, domSel.focusNode, domSel.focusOffset))\n { return }\n\n // Selection.extend can be used to create an 'inverted' selection\n // (one where the focus is before the anchor), but not all\n // browsers support it yet.\n var domSelExtended = false;\n if ((domSel.extend || anchor == head) && !brKludge) {\n domSel.collapse(anchorDOM.node, anchorDOM.offset);\n try {\n if (anchor != head) { domSel.extend(headDOM.node, headDOM.offset); }\n domSelExtended = true;\n } catch (err) {\n // In some cases with Chrome the selection is empty after calling\n // collapse, even when it should be valid. This appears to be a bug, but\n // it is difficult to isolate. If this happens fallback to the old path\n // without using extend.\n if (!(err instanceof DOMException)) { throw err }\n // declare global: DOMException\n }\n }\n if (!domSelExtended) {\n if (anchor > head) { var tmp = anchorDOM; anchorDOM = headDOM; headDOM = tmp; }\n var range = document.createRange();\n range.setEnd(headDOM.node, headDOM.offset);\n range.setStart(anchorDOM.node, anchorDOM.offset);\n domSel.removeAllRanges();\n domSel.addRange(range);\n }\n};\n\n// : (dom.MutationRecord) → bool\nViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return !this.contentDOM && mutation.type != \"selection\"\n};\n\nprototypeAccessors.contentLost.get = function () {\n return this.contentDOM && this.contentDOM != this.dom && !this.dom.contains(this.contentDOM)\n};\n\n// Remove a subtree of the element tree that has been touched\n// by a DOM change, so that the next update will redraw it.\nViewDesc.prototype.markDirty = function markDirty (from, to) {\n for (var offset = 0, i = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (offset == end ? from <= end && to >= offset : from < end && to > offset) {\n var startInside = offset + child.border, endInside = end - child.border;\n if (from >= startInside && to <= endInside) {\n this.dirty = from == offset || to == end ? CONTENT_DIRTY : CHILD_DIRTY;\n if (from == startInside && to == endInside &&\n (child.contentLost || child.dom.parentNode != this.contentDOM)) { child.dirty = NODE_DIRTY; }\n else { child.markDirty(from - startInside, to - startInside); }\n return\n } else {\n child.dirty = NODE_DIRTY;\n }\n }\n offset = end;\n }\n this.dirty = CONTENT_DIRTY;\n};\n\nViewDesc.prototype.markParentsDirty = function markParentsDirty () {\n var level = 1;\n for (var node = this.parent; node; node = node.parent, level++) {\n var dirty = level == 1 ? CONTENT_DIRTY : CHILD_DIRTY;\n if (node.dirty < dirty) { node.dirty = dirty; }\n }\n};\n\nObject.defineProperties( ViewDesc.prototype, prototypeAccessors );\n\n// Reused array to avoid allocating fresh arrays for things that will\n// stay empty anyway.\nvar nothing = [];\n\n// A widget desc represents a widget decoration, which is a DOM node\n// drawn between the document nodes.\nvar WidgetViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function WidgetViewDesc(parent, widget, view, pos) {\n var self, dom = widget.type.toDOM;\n if (typeof dom == \"function\") { dom = dom(view, function () {\n if (!self) { return pos }\n if (self.parent) { return self.parent.posBeforeChild(self) }\n }); }\n if (!widget.type.spec.raw) {\n if (dom.nodeType != 1) {\n var wrap = document.createElement(\"span\");\n wrap.appendChild(dom);\n dom = wrap;\n }\n dom.contentEditable = false;\n dom.classList.add(\"ProseMirror-widget\");\n }\n ViewDesc.call(this, parent, nothing, dom, null);\n this.widget = widget;\n self = this;\n }\n\n if ( ViewDesc ) WidgetViewDesc.__proto__ = ViewDesc;\n WidgetViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n WidgetViewDesc.prototype.constructor = WidgetViewDesc;\n\n var prototypeAccessors$1 = { beforePosition: { configurable: true } };\n\n prototypeAccessors$1.beforePosition.get = function () {\n return this.widget.type.side < 0\n };\n\n WidgetViewDesc.prototype.matchesWidget = function matchesWidget (widget) {\n return this.dirty == NOT_DIRTY && widget.type.eq(this.widget.type)\n };\n\n WidgetViewDesc.prototype.parseRule = function parseRule () { return {ignore: true} };\n\n WidgetViewDesc.prototype.stopEvent = function stopEvent (event) {\n var stop = this.widget.spec.stopEvent;\n return stop ? stop(event) : false\n };\n\n WidgetViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return mutation.type != \"selection\" || this.widget.spec.ignoreSelection\n };\n\n Object.defineProperties( WidgetViewDesc.prototype, prototypeAccessors$1 );\n\n return WidgetViewDesc;\n}(ViewDesc));\n\nvar CompositionViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function CompositionViewDesc(parent, dom, textDOM, text) {\n ViewDesc.call(this, parent, nothing, dom, null);\n this.textDOM = textDOM;\n this.text = text;\n }\n\n if ( ViewDesc ) CompositionViewDesc.__proto__ = ViewDesc;\n CompositionViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n CompositionViewDesc.prototype.constructor = CompositionViewDesc;\n\n var prototypeAccessors$2 = { size: { configurable: true } };\n\n prototypeAccessors$2.size.get = function () { return this.text.length };\n\n CompositionViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset) {\n if (dom != this.textDOM) { return this.posAtStart + (offset ? this.size : 0) }\n return this.posAtStart + offset\n };\n\n CompositionViewDesc.prototype.domFromPos = function domFromPos (pos) {\n return {node: this.textDOM, offset: pos}\n };\n\n CompositionViewDesc.prototype.ignoreMutation = function ignoreMutation (mut) {\n return mut.type === 'characterData' && mut.target.nodeValue == mut.oldValue\n };\n\n Object.defineProperties( CompositionViewDesc.prototype, prototypeAccessors$2 );\n\n return CompositionViewDesc;\n}(ViewDesc));\n\n// A mark desc represents a mark. May have multiple children,\n// depending on how the mark is split. Note that marks are drawn using\n// a fixed nesting order, for simplicity and predictability, so in\n// some cases they will be split more often than would appear\n// necessary.\nvar MarkViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function MarkViewDesc(parent, mark, dom, contentDOM) {\n ViewDesc.call(this, parent, [], dom, contentDOM);\n this.mark = mark;\n }\n\n if ( ViewDesc ) MarkViewDesc.__proto__ = ViewDesc;\n MarkViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n MarkViewDesc.prototype.constructor = MarkViewDesc;\n\n MarkViewDesc.create = function create (parent, mark, inline, view) {\n var custom = view.nodeViews[mark.type.name];\n var spec = custom && custom(mark, view, inline);\n if (!spec || !spec.dom)\n { spec = DOMSerializer.renderSpec(document, mark.type.spec.toDOM(mark, inline)); }\n return new MarkViewDesc(parent, mark, spec.dom, spec.contentDOM || spec.dom)\n };\n\n MarkViewDesc.prototype.parseRule = function parseRule () { return {mark: this.mark.type.name, attrs: this.mark.attrs, contentElement: this.contentDOM} };\n\n MarkViewDesc.prototype.matchesMark = function matchesMark (mark) { return this.dirty != NODE_DIRTY && this.mark.eq(mark) };\n\n MarkViewDesc.prototype.markDirty = function markDirty (from, to) {\n ViewDesc.prototype.markDirty.call(this, from, to);\n // Move dirty info to nearest node view\n if (this.dirty != NOT_DIRTY) {\n var parent = this.parent;\n while (!parent.node) { parent = parent.parent; }\n if (parent.dirty < this.dirty) { parent.dirty = this.dirty; }\n this.dirty = NOT_DIRTY;\n }\n };\n\n MarkViewDesc.prototype.slice = function slice (from, to, view) {\n var copy = MarkViewDesc.create(this.parent, this.mark, true, view);\n var nodes = this.children, size = this.size;\n if (to < size) { nodes = replaceNodes(nodes, to, size, view); }\n if (from > 0) { nodes = replaceNodes(nodes, 0, from, view); }\n for (var i = 0; i < nodes.length; i++) { nodes[i].parent = copy; }\n copy.children = nodes;\n return copy\n };\n\n return MarkViewDesc;\n}(ViewDesc));\n\n// Node view descs are the main, most common type of view desc, and\n// correspond to an actual node in the document. Unlike mark descs,\n// they populate their child array themselves.\nvar NodeViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function NodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos) {\n ViewDesc.call(this, parent, node.isLeaf ? nothing : [], dom, contentDOM);\n this.nodeDOM = nodeDOM;\n this.node = node;\n this.outerDeco = outerDeco;\n this.innerDeco = innerDeco;\n if (contentDOM) { this.updateChildren(view, pos); }\n }\n\n if ( ViewDesc ) NodeViewDesc.__proto__ = ViewDesc;\n NodeViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n NodeViewDesc.prototype.constructor = NodeViewDesc;\n\n var prototypeAccessors$3 = { size: { configurable: true },border: { configurable: true } };\n\n // By default, a node is rendered using the `toDOM` method from the\n // node type spec. But client code can use the `nodeViews` spec to\n // supply a custom node view, which can influence various aspects of\n // the way the node works.\n //\n // (Using subclassing for this was intentionally decided against,\n // since it'd require exposing a whole slew of finnicky\n // implementation details to the user code that they probably will\n // never need.)\n NodeViewDesc.create = function create (parent, node, outerDeco, innerDeco, view, pos) {\n var assign;\n\n var custom = view.nodeViews[node.type.name], descObj;\n var spec = custom && custom(node, view, function () {\n // (This is a function that allows the custom view to find its\n // own position)\n if (!descObj) { return pos }\n if (descObj.parent) { return descObj.parent.posBeforeChild(descObj) }\n }, outerDeco);\n\n var dom = spec && spec.dom, contentDOM = spec && spec.contentDOM;\n if (node.isText) {\n if (!dom) { dom = document.createTextNode(node.text); }\n else if (dom.nodeType != 3) { throw new RangeError(\"Text must be rendered as a DOM text node\") }\n } else if (!dom) {\n((assign = DOMSerializer.renderSpec(document, node.type.spec.toDOM(node)), dom = assign.dom, contentDOM = assign.contentDOM));\n }\n if (!contentDOM && !node.isText && dom.nodeName != \"BR\") { // Chrome gets confused by <br contenteditable=false>\n if (!dom.hasAttribute(\"contenteditable\")) { dom.contentEditable = false; }\n if (node.type.spec.draggable) { dom.draggable = true; }\n }\n\n var nodeDOM = dom;\n dom = applyOuterDeco(dom, outerDeco, node);\n\n if (spec)\n { return descObj = new CustomNodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM,\n spec, view, pos + 1) }\n else if (node.isText)\n { return new TextViewDesc(parent, node, outerDeco, innerDeco, dom, nodeDOM, view) }\n else\n { return new NodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos + 1) }\n };\n\n NodeViewDesc.prototype.parseRule = function parseRule () {\n var this$1 = this;\n\n // Experimental kludge to allow opt-in re-parsing of nodes\n if (this.node.type.spec.reparseInView) { return null }\n // FIXME the assumption that this can always return the current\n // attrs means that if the user somehow manages to change the\n // attrs in the dom, that won't be picked up. Not entirely sure\n // whether this is a problem\n var rule = {node: this.node.type.name, attrs: this.node.attrs};\n if (this.node.type.spec.code) { rule.preserveWhitespace = \"full\"; }\n if (this.contentDOM && !this.contentLost) { rule.contentElement = this.contentDOM; }\n else { rule.getContent = function () { return this$1.contentDOM ? Fragment.empty : this$1.node.content; }; }\n return rule\n };\n\n NodeViewDesc.prototype.matchesNode = function matchesNode (node, outerDeco, innerDeco) {\n return this.dirty == NOT_DIRTY && node.eq(this.node) &&\n sameOuterDeco(outerDeco, this.outerDeco) && innerDeco.eq(this.innerDeco)\n };\n\n prototypeAccessors$3.size.get = function () { return this.node.nodeSize };\n\n prototypeAccessors$3.border.get = function () { return this.node.isLeaf ? 0 : 1 };\n\n // Syncs `this.children` to match `this.node.content` and the local\n // decorations, possibly introducing nesting for marks. Then, in a\n // separate step, syncs the DOM inside `this.contentDOM` to\n // `this.children`.\n NodeViewDesc.prototype.updateChildren = function updateChildren (view, pos) {\n var this$1 = this;\n\n var inline = this.node.inlineContent, off = pos;\n var composition = inline && view.composing && this.localCompositionNode(view, pos);\n var updater = new ViewTreeUpdater(this, composition && composition.node);\n iterDeco(this.node, this.innerDeco, function (widget, i, insideNode) {\n if (widget.spec.marks)\n { updater.syncToMarks(widget.spec.marks, inline, view); }\n else if (widget.type.side >= 0 && !insideNode)\n { updater.syncToMarks(i == this$1.node.childCount ? Mark.none : this$1.node.child(i).marks, inline, view); }\n // If the next node is a desc matching this widget, reuse it,\n // otherwise insert the widget as a new view desc.\n updater.placeWidget(widget, view, off);\n }, function (child, outerDeco, innerDeco, i) {\n // Make sure the wrapping mark descs match the node's marks.\n updater.syncToMarks(child.marks, inline, view);\n // Either find an existing desc that exactly matches this node,\n // and drop the descs before it.\n updater.findNodeMatch(child, outerDeco, innerDeco, i) ||\n // Or try updating the next desc to reflect this node.\n updater.updateNextNode(child, outerDeco, innerDeco, view, i) ||\n // Or just add it as a new desc.\n updater.addNode(child, outerDeco, innerDeco, view, off);\n off += child.nodeSize;\n });\n // Drop all remaining descs after the current position.\n updater.syncToMarks(nothing, inline, view);\n if (this.node.isTextblock) { updater.addTextblockHacks(); }\n updater.destroyRest();\n\n // Sync the DOM if anything changed\n if (updater.changed || this.dirty == CONTENT_DIRTY) {\n // May have to protect focused DOM from being changed if a composition is active\n if (composition) { this.protectLocalComposition(view, composition); }\n renderDescs(this.contentDOM, this.children, view);\n if (result.ios) { iosHacks(this.dom); }\n }\n };\n\n NodeViewDesc.prototype.localCompositionNode = function localCompositionNode (view, pos) {\n // Only do something if both the selection and a focused text node\n // are inside of this node, and the node isn't already part of a\n // view that's a child of this view\n var ref = view.state.selection;\n var from = ref.from;\n var to = ref.to;\n if (!(view.state.selection instanceof TextSelection) || from < pos || to > pos + this.node.content.size) { return }\n var sel = view.root.getSelection();\n var textNode = nearbyTextNode(sel.focusNode, sel.focusOffset);\n if (!textNode || !this.dom.contains(textNode.parentNode)) { return }\n\n // Find the text in the focused node in the node, stop if it's not\n // there (may have been modified through other means, in which\n // case it should overwritten)\n var text = textNode.nodeValue;\n var textPos = findTextInFragment(this.node.content, text, from - pos, to - pos);\n\n return textPos < 0 ? null : {node: textNode, pos: textPos, text: text}\n };\n\n NodeViewDesc.prototype.protectLocalComposition = function protectLocalComposition (view, ref) {\n var node = ref.node;\n var pos = ref.pos;\n var text = ref.text;\n\n // The node is already part of a local view desc, leave it there\n if (this.getDesc(node)) { return }\n\n // Create a composition view for the orphaned nodes\n var topNode = node;\n for (;; topNode = topNode.parentNode) {\n if (topNode.parentNode == this.contentDOM) { break }\n while (topNode.previousSibling) { topNode.parentNode.removeChild(topNode.previousSibling); }\n while (topNode.nextSibling) { topNode.parentNode.removeChild(topNode.nextSibling); }\n if (topNode.pmViewDesc) { topNode.pmViewDesc = null; }\n }\n var desc = new CompositionViewDesc(this, topNode, node, text);\n view.compositionNodes.push(desc);\n\n // Patch up this.children to contain the composition view\n this.children = replaceNodes(this.children, pos, pos + text.length, view, desc);\n };\n\n // : (Node, [Decoration], DecorationSet, EditorView) → bool\n // If this desc be updated to match the given node decoration,\n // do so and return true.\n NodeViewDesc.prototype.update = function update (node, outerDeco, innerDeco, view) {\n if (this.dirty == NODE_DIRTY ||\n !node.sameMarkup(this.node)) { return false }\n this.updateInner(node, outerDeco, innerDeco, view);\n return true\n };\n\n NodeViewDesc.prototype.updateInner = function updateInner (node, outerDeco, innerDeco, view) {\n this.updateOuterDeco(outerDeco);\n this.node = node;\n this.innerDeco = innerDeco;\n if (this.contentDOM) { this.updateChildren(view, this.posAtStart); }\n this.dirty = NOT_DIRTY;\n };\n\n NodeViewDesc.prototype.updateOuterDeco = function updateOuterDeco (outerDeco) {\n if (sameOuterDeco(outerDeco, this.outerDeco)) { return }\n var needsWrap = this.nodeDOM.nodeType != 1;\n var oldDOM = this.dom;\n this.dom = patchOuterDeco(this.dom, this.nodeDOM,\n computeOuterDeco(this.outerDeco, this.node, needsWrap),\n computeOuterDeco(outerDeco, this.node, needsWrap));\n if (this.dom != oldDOM) {\n oldDOM.pmViewDesc = null;\n this.dom.pmViewDesc = this;\n }\n this.outerDeco = outerDeco;\n };\n\n // Mark this node as being the selected node.\n NodeViewDesc.prototype.selectNode = function selectNode () {\n this.nodeDOM.classList.add(\"ProseMirror-selectednode\");\n if (this.contentDOM || !this.node.type.spec.draggable) { this.dom.draggable = true; }\n };\n\n // Remove selected node marking from this node.\n NodeViewDesc.prototype.deselectNode = function deselectNode () {\n this.nodeDOM.classList.remove(\"ProseMirror-selectednode\");\n if (this.contentDOM || !this.node.type.spec.draggable) { this.dom.removeAttribute(\"draggable\"); }\n };\n\n Object.defineProperties( NodeViewDesc.prototype, prototypeAccessors$3 );\n\n return NodeViewDesc;\n}(ViewDesc));\n\n// Create a view desc for the top-level document node, to be exported\n// and used by the view class.\nfunction docViewDesc(doc, outerDeco, innerDeco, dom, view) {\n applyOuterDeco(dom, outerDeco, doc);\n return new NodeViewDesc(null, doc, outerDeco, innerDeco, dom, dom, dom, view, 0)\n}\n\nvar TextViewDesc = /*@__PURE__*/(function (NodeViewDesc) {\n function TextViewDesc(parent, node, outerDeco, innerDeco, dom, nodeDOM, view) {\n NodeViewDesc.call(this, parent, node, outerDeco, innerDeco, dom, null, nodeDOM, view);\n }\n\n if ( NodeViewDesc ) TextViewDesc.__proto__ = NodeViewDesc;\n TextViewDesc.prototype = Object.create( NodeViewDesc && NodeViewDesc.prototype );\n TextViewDesc.prototype.constructor = TextViewDesc;\n\n TextViewDesc.prototype.parseRule = function parseRule () {\n var skip = this.nodeDOM.parentNode;\n while (skip && skip != this.dom && !skip.pmIsDeco) { skip = skip.parentNode; }\n return {skip: skip || true}\n };\n\n TextViewDesc.prototype.update = function update (node, outerDeco, _, view) {\n if (this.dirty == NODE_DIRTY || (this.dirty != NOT_DIRTY && !this.inParent()) ||\n !node.sameMarkup(this.node)) { return false }\n this.updateOuterDeco(outerDeco);\n if ((this.dirty != NOT_DIRTY || node.text != this.node.text) && node.text != this.nodeDOM.nodeValue) {\n this.nodeDOM.nodeValue = node.text;\n if (view.trackWrites == this.nodeDOM) { view.trackWrites = null; }\n }\n this.node = node;\n this.dirty = NOT_DIRTY;\n return true\n };\n\n TextViewDesc.prototype.inParent = function inParent () {\n var parentDOM = this.parent.contentDOM;\n for (var n = this.nodeDOM; n; n = n.parentNode) { if (n == parentDOM) { return true } }\n return false\n };\n\n TextViewDesc.prototype.domFromPos = function domFromPos (pos) {\n return {node: this.nodeDOM, offset: pos}\n };\n\n TextViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset, bias) {\n if (dom == this.nodeDOM) { return this.posAtStart + Math.min(offset, this.node.text.length) }\n return NodeViewDesc.prototype.localPosFromDOM.call(this, dom, offset, bias)\n };\n\n TextViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return mutation.type != \"characterData\" && mutation.type != \"selection\"\n };\n\n TextViewDesc.prototype.slice = function slice (from, to, view) {\n var node = this.node.cut(from, to), dom = document.createTextNode(node.text);\n return new TextViewDesc(this.parent, node, this.outerDeco, this.innerDeco, dom, dom, view)\n };\n\n return TextViewDesc;\n}(NodeViewDesc));\n\n// A dummy desc used to tag trailing BR or span nodes created to work\n// around contentEditable terribleness.\nvar BRHackViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function BRHackViewDesc () {\n ViewDesc.apply(this, arguments);\n }\n\n if ( ViewDesc ) BRHackViewDesc.__proto__ = ViewDesc;\n BRHackViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n BRHackViewDesc.prototype.constructor = BRHackViewDesc;\n\n BRHackViewDesc.prototype.parseRule = function parseRule () { return {ignore: true} };\n BRHackViewDesc.prototype.matchesHack = function matchesHack () { return this.dirty == NOT_DIRTY };\n\n return BRHackViewDesc;\n}(ViewDesc));\n\n// A separate subclass is used for customized node views, so that the\n// extra checks only have to be made for nodes that are actually\n// customized.\nvar CustomNodeViewDesc = /*@__PURE__*/(function (NodeViewDesc) {\n function CustomNodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, spec, view, pos) {\n NodeViewDesc.call(this, parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos);\n this.spec = spec;\n }\n\n if ( NodeViewDesc ) CustomNodeViewDesc.__proto__ = NodeViewDesc;\n CustomNodeViewDesc.prototype = Object.create( NodeViewDesc && NodeViewDesc.prototype );\n CustomNodeViewDesc.prototype.constructor = CustomNodeViewDesc;\n\n // A custom `update` method gets to decide whether the update goes\n // through. If it does, and there's a `contentDOM` node, our logic\n // updates the children.\n CustomNodeViewDesc.prototype.update = function update (node, outerDeco, innerDeco, view) {\n if (this.dirty == NODE_DIRTY) { return false }\n if (this.spec.update) {\n var result = this.spec.update(node, outerDeco);\n if (result) { this.updateInner(node, outerDeco, innerDeco, view); }\n return result\n } else if (!this.contentDOM && !node.isLeaf) {\n return false\n } else {\n return NodeViewDesc.prototype.update.call(this, node, outerDeco, innerDeco, view)\n }\n };\n\n CustomNodeViewDesc.prototype.selectNode = function selectNode () {\n this.spec.selectNode ? this.spec.selectNode() : NodeViewDesc.prototype.selectNode.call(this);\n };\n\n CustomNodeViewDesc.prototype.deselectNode = function deselectNode () {\n this.spec.deselectNode ? this.spec.deselectNode() : NodeViewDesc.prototype.deselectNode.call(this);\n };\n\n CustomNodeViewDesc.prototype.setSelection = function setSelection (anchor, head, root, force) {\n this.spec.setSelection ? this.spec.setSelection(anchor, head, root)\n : NodeViewDesc.prototype.setSelection.call(this, anchor, head, root, force);\n };\n\n CustomNodeViewDesc.prototype.destroy = function destroy () {\n if (this.spec.destroy) { this.spec.destroy(); }\n NodeViewDesc.prototype.destroy.call(this);\n };\n\n CustomNodeViewDesc.prototype.stopEvent = function stopEvent (event) {\n return this.spec.stopEvent ? this.spec.stopEvent(event) : false\n };\n\n CustomNodeViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return this.spec.ignoreMutation ? this.spec.ignoreMutation(mutation) : NodeViewDesc.prototype.ignoreMutation.call(this, mutation)\n };\n\n return CustomNodeViewDesc;\n}(NodeViewDesc));\n\n// : (dom.Node, [ViewDesc])\n// Sync the content of the given DOM node with the nodes associated\n// with the given array of view descs, recursing into mark descs\n// because this should sync the subtree for a whole node at a time.\nfunction renderDescs(parentDOM, descs, view) {\n var dom = parentDOM.firstChild, written = false;\n for (var i = 0; i < descs.length; i++) {\n var desc = descs[i], childDOM = desc.dom;\n if (childDOM.parentNode == parentDOM) {\n while (childDOM != dom) { dom = rm(dom); written = true; }\n dom = dom.nextSibling;\n } else {\n written = true;\n parentDOM.insertBefore(childDOM, dom);\n }\n if (desc instanceof MarkViewDesc) {\n var pos = dom ? dom.previousSibling : parentDOM.lastChild;\n renderDescs(desc.contentDOM, desc.children, view);\n dom = pos ? pos.nextSibling : parentDOM.firstChild;\n }\n }\n while (dom) { dom = rm(dom); written = true; }\n if (written && view.trackWrites == parentDOM) { view.trackWrites = null; }\n}\n\nfunction OuterDecoLevel(nodeName) {\n if (nodeName) { this.nodeName = nodeName; }\n}\nOuterDecoLevel.prototype = Object.create(null);\n\nvar noDeco = [new OuterDecoLevel];\n\nfunction computeOuterDeco(outerDeco, node, needsWrap) {\n if (outerDeco.length == 0) { return noDeco }\n\n var top = needsWrap ? noDeco[0] : new OuterDecoLevel, result = [top];\n\n for (var i = 0; i < outerDeco.length; i++) {\n var attrs = outerDeco[i].type.attrs, cur = top;\n if (!attrs) { continue }\n if (attrs.nodeName)\n { result.push(cur = new OuterDecoLevel(attrs.nodeName)); }\n\n for (var name in attrs) {\n var val = attrs[name];\n if (val == null) { continue }\n if (needsWrap && result.length == 1)\n { result.push(cur = top = new OuterDecoLevel(node.isInline ? \"span\" : \"div\")); }\n if (name == \"class\") { cur.class = (cur.class ? cur.class + \" \" : \"\") + val; }\n else if (name == \"style\") { cur.style = (cur.style ? cur.style + \";\" : \"\") + val; }\n else if (name != \"nodeName\") { cur[name] = val; }\n }\n }\n\n return result\n}\n\nfunction patchOuterDeco(outerDOM, nodeDOM, prevComputed, curComputed) {\n // Shortcut for trivial case\n if (prevComputed == noDeco && curComputed == noDeco) { return nodeDOM }\n\n var curDOM = nodeDOM;\n for (var i = 0; i < curComputed.length; i++) {\n var deco = curComputed[i], prev = prevComputed[i];\n if (i) {\n var parent = (void 0);\n if (prev && prev.nodeName == deco.nodeName && curDOM != outerDOM &&\n (parent = curDOM.parentNode) && parent.tagName.toLowerCase() == deco.nodeName) {\n curDOM = parent;\n } else {\n parent = document.createElement(deco.nodeName);\n parent.pmIsDeco = true;\n parent.appendChild(curDOM);\n prev = noDeco[0];\n curDOM = parent;\n }\n }\n patchAttributes(curDOM, prev || noDeco[0], deco);\n }\n return curDOM\n}\n\nfunction patchAttributes(dom, prev, cur) {\n for (var name in prev)\n { if (name != \"class\" && name != \"style\" && name != \"nodeName\" && !(name in cur))\n { dom.removeAttribute(name); } }\n for (var name$1 in cur)\n { if (name$1 != \"class\" && name$1 != \"style\" && name$1 != \"nodeName\" && cur[name$1] != prev[name$1])\n { dom.setAttribute(name$1, cur[name$1]); } }\n if (prev.class != cur.class) {\n var prevList = prev.class ? prev.class.split(\" \") : nothing;\n var curList = cur.class ? cur.class.split(\" \") : nothing;\n for (var i = 0; i < prevList.length; i++) { if (curList.indexOf(prevList[i]) == -1)\n { dom.classList.remove(prevList[i]); } }\n for (var i$1 = 0; i$1 < curList.length; i$1++) { if (prevList.indexOf(curList[i$1]) == -1)\n { dom.classList.add(curList[i$1]); } }\n }\n if (prev.style != cur.style) {\n if (prev.style) {\n var prop = /\\s*([\\w\\-\\xa1-\\uffff]+)\\s*:(?:\"(?:\\\\.|[^\"])*\"|'(?:\\\\.|[^'])*'|\\(.*?\\)|[^;])*/g, m;\n while (m = prop.exec(prev.style))\n { dom.style.removeProperty(m[1]); }\n }\n if (cur.style)\n { dom.style.cssText += cur.style; }\n }\n}\n\nfunction applyOuterDeco(dom, deco, node) {\n return patchOuterDeco(dom, dom, noDeco, computeOuterDeco(deco, node, dom.nodeType != 1))\n}\n\n// : ([Decoration], [Decoration]) → bool\nfunction sameOuterDeco(a, b) {\n if (a.length != b.length) { return false }\n for (var i = 0; i < a.length; i++) { if (!a[i].type.eq(b[i].type)) { return false } }\n return true\n}\n\n// Remove a DOM node and return its next sibling.\nfunction rm(dom) {\n var next = dom.nextSibling;\n dom.parentNode.removeChild(dom);\n return next\n}\n\n// Helper class for incrementally updating a tree of mark descs and\n// the widget and node descs inside of them.\nvar ViewTreeUpdater = function ViewTreeUpdater(top, lockedNode) {\n this.top = top;\n this.lock = lockedNode;\n // Index into `this.top`'s child array, represents the current\n // update position.\n this.index = 0;\n // When entering a mark, the current top and index are pushed\n // onto this.\n this.stack = [];\n // Tracks whether anything was changed\n this.changed = false;\n\n var pre = preMatch(top.node.content, top.children);\n this.preMatched = pre.nodes;\n this.preMatchOffset = pre.offset;\n};\n\nViewTreeUpdater.prototype.getPreMatch = function getPreMatch (index) {\n return index >= this.preMatchOffset ? this.preMatched[index - this.preMatchOffset] : null\n};\n\n// Destroy and remove the children between the given indices in\n// `this.top`.\nViewTreeUpdater.prototype.destroyBetween = function destroyBetween (start, end) {\n if (start == end) { return }\n for (var i = start; i < end; i++) { this.top.children[i].destroy(); }\n this.top.children.splice(start, end - start);\n this.changed = true;\n};\n\n// Destroy all remaining children in `this.top`.\nViewTreeUpdater.prototype.destroyRest = function destroyRest () {\n this.destroyBetween(this.index, this.top.children.length);\n};\n\n// : ([Mark], EditorView)\n// Sync the current stack of mark descs with the given array of\n// marks, reusing existing mark descs when possible.\nViewTreeUpdater.prototype.syncToMarks = function syncToMarks (marks, inline, view) {\n var keep = 0, depth = this.stack.length >> 1;\n var maxKeep = Math.min(depth, marks.length);\n while (keep < maxKeep &&\n (keep == depth - 1 ? this.top : this.stack[(keep + 1) << 1]).matchesMark(marks[keep]) && marks[keep].type.spec.spanning !== false)\n { keep++; }\n\n while (keep < depth) {\n this.destroyRest();\n this.top.dirty = NOT_DIRTY;\n this.index = this.stack.pop();\n this.top = this.stack.pop();\n depth--;\n }\n while (depth < marks.length) {\n this.stack.push(this.top, this.index + 1);\n var found = -1;\n for (var i = this.index; i < Math.min(this.index + 3, this.top.children.length); i++) {\n if (this.top.children[i].matchesMark(marks[depth])) { found = i; break }\n }\n if (found > -1) {\n if (found > this.index) {\n this.changed = true;\n this.destroyBetween(this.index, found);\n }\n this.top = this.top.children[this.index];\n } else {\n var markDesc = MarkViewDesc.create(this.top, marks[depth], inline, view);\n this.top.children.splice(this.index, 0, markDesc);\n this.top = markDesc;\n this.changed = true;\n }\n this.index = 0;\n depth++;\n }\n};\n\n// : (Node, [Decoration], DecorationSet) → bool\n// Try to find a node desc matching the given data. Skip over it and\n// return true when successful.\nViewTreeUpdater.prototype.findNodeMatch = function findNodeMatch (node, outerDeco, innerDeco, index) {\n var found = -1, preMatch = index < 0 ? undefined : this.getPreMatch(index), children = this.top.children;\n if (preMatch && preMatch.matchesNode(node, outerDeco, innerDeco)) {\n found = children.indexOf(preMatch);\n } else {\n for (var i = this.index, e = Math.min(children.length, i + 5); i < e; i++) {\n var child = children[i];\n if (child.matchesNode(node, outerDeco, innerDeco) && this.preMatched.indexOf(child) < 0) {\n found = i;\n break\n }\n }\n }\n if (found < 0) { return false }\n this.destroyBetween(this.index, found);\n this.index++;\n return true\n};\n\n// : (Node, [Decoration], DecorationSet, EditorView, Fragment, number) → bool\n// Try to update the next node, if any, to the given data. Checks\n// pre-matches to avoid overwriting nodes that could still be used.\nViewTreeUpdater.prototype.updateNextNode = function updateNextNode (node, outerDeco, innerDeco, view, index) {\n for (var i = this.index; i < this.top.children.length; i++) {\n var next = this.top.children[i];\n if (next instanceof NodeViewDesc) {\n var preMatch = this.preMatched.indexOf(next);\n if (preMatch > -1 && preMatch + this.preMatchOffset != index) { return false }\n var nextDOM = next.dom;\n\n // Can't update if nextDOM is or contains this.lock, except if\n // it's a text node whose content already matches the new text\n // and whose decorations match the new ones.\n var locked = this.lock && (nextDOM == this.lock || nextDOM.nodeType == 1 && nextDOM.contains(this.lock.parentNode)) &&\n !(node.isText && next.node && next.node.isText && next.nodeDOM.nodeValue == node.text &&\n next.dirty != NODE_DIRTY && sameOuterDeco(outerDeco, next.outerDeco));\n if (!locked && next.update(node, outerDeco, innerDeco, view)) {\n this.destroyBetween(this.index, i);\n if (next.dom != nextDOM) { this.changed = true; }\n this.index++;\n return true\n }\n break\n }\n }\n return false\n};\n\n// : (Node, [Decoration], DecorationSet, EditorView)\n// Insert the node as a newly created node desc.\nViewTreeUpdater.prototype.addNode = function addNode (node, outerDeco, innerDeco, view, pos) {\n this.top.children.splice(this.index++, 0, NodeViewDesc.create(this.top, node, outerDeco, innerDeco, view, pos));\n this.changed = true;\n};\n\nViewTreeUpdater.prototype.placeWidget = function placeWidget (widget, view, pos) {\n var next = this.index < this.top.children.length ? this.top.children[this.index] : null;\n if (next && next.matchesWidget(widget) && (widget == next.widget || !next.widget.type.toDOM.parentNode)) {\n this.index++;\n } else {\n var desc = new WidgetViewDesc(this.top, widget, view, pos);\n this.top.children.splice(this.index++, 0, desc);\n this.changed = true;\n }\n};\n\n// Make sure a textblock looks and behaves correctly in\n// contentEditable.\nViewTreeUpdater.prototype.addTextblockHacks = function addTextblockHacks () {\n var lastChild = this.top.children[this.index - 1];\n while (lastChild instanceof MarkViewDesc) { lastChild = lastChild.children[lastChild.children.length - 1]; }\n\n if (!lastChild || // Empty textblock\n !(lastChild instanceof TextViewDesc) ||\n /\\n$/.test(lastChild.node.text)) {\n if (this.index < this.top.children.length && this.top.children[this.index].matchesHack()) {\n this.index++;\n } else {\n var dom = document.createElement(\"br\");\n this.top.children.splice(this.index++, 0, new BRHackViewDesc(this.top, nothing, dom, null));\n this.changed = true;\n }\n }\n};\n\n// : (Fragment, [ViewDesc]) → [ViewDesc]\n// Iterate from the end of the fragment and array of descs to find\n// directly matching ones, in order to avoid overeagerly reusing\n// those for other nodes. Returns an array whose positions correspond\n// to node positions in the fragment, and whose elements are either\n// descs matched to the child at that index, or empty.\nfunction preMatch(frag, descs) {\n var result = [], end = frag.childCount;\n for (var i = descs.length - 1; end > 0 && i >= 0; i--) {\n var desc = descs[i], node = desc.node;\n if (!node) { continue }\n if (node != frag.child(end - 1)) { break }\n result.push(desc);\n --end;\n }\n return {nodes: result.reverse(), offset: end}\n}\n\nfunction compareSide(a, b) { return a.type.side - b.type.side }\n\n// : (ViewDesc, DecorationSet, (Decoration, number), (Node, [Decoration], DecorationSet, number))\n// This function abstracts iterating over the nodes and decorations in\n// a fragment. Calls `onNode` for each node, with its local and child\n// decorations. Splits text nodes when there is a decoration starting\n// or ending inside of them. Calls `onWidget` for each widget.\nfunction iterDeco(parent, deco, onWidget, onNode) {\n var locals = deco.locals(parent), offset = 0;\n // Simple, cheap variant for when there are no local decorations\n if (locals.length == 0) {\n for (var i = 0; i < parent.childCount; i++) {\n var child = parent.child(i);\n onNode(child, locals, deco.forChild(offset, child), i);\n offset += child.nodeSize;\n }\n return\n }\n\n var decoIndex = 0, active = [], restNode = null;\n for (var parentIndex = 0;;) {\n if (decoIndex < locals.length && locals[decoIndex].to == offset) {\n var widget = locals[decoIndex++], widgets = (void 0);\n while (decoIndex < locals.length && locals[decoIndex].to == offset)\n { (widgets || (widgets = [widget])).push(locals[decoIndex++]); }\n if (widgets) {\n widgets.sort(compareSide);\n for (var i$1 = 0; i$1 < widgets.length; i$1++) { onWidget(widgets[i$1], parentIndex, !!restNode); }\n } else {\n onWidget(widget, parentIndex, !!restNode);\n }\n }\n\n var child$1 = (void 0), index = (void 0);\n if (restNode) {\n index = -1;\n child$1 = restNode;\n restNode = null;\n } else if (parentIndex < parent.childCount) {\n index = parentIndex;\n child$1 = parent.child(parentIndex++);\n } else {\n break\n }\n\n for (var i$2 = 0; i$2 < active.length; i$2++) { if (active[i$2].to <= offset) { active.splice(i$2--, 1); } }\n while (decoIndex < locals.length && locals[decoIndex].from <= offset && locals[decoIndex].to > offset)\n { active.push(locals[decoIndex++]); }\n\n var end = offset + child$1.nodeSize;\n if (child$1.isText) {\n var cutAt = end;\n if (decoIndex < locals.length && locals[decoIndex].from < cutAt) { cutAt = locals[decoIndex].from; }\n for (var i$3 = 0; i$3 < active.length; i$3++) { if (active[i$3].to < cutAt) { cutAt = active[i$3].to; } }\n if (cutAt < end) {\n restNode = child$1.cut(cutAt - offset);\n child$1 = child$1.cut(0, cutAt - offset);\n end = cutAt;\n index = -1;\n }\n }\n\n var outerDeco = !active.length ? nothing\n : child$1.isInline && !child$1.isLeaf ? active.filter(function (d) { return !d.inline; })\n : active.slice();\n onNode(child$1, outerDeco, deco.forChild(offset, child$1), index);\n offset = end;\n }\n}\n\n// List markers in Mobile Safari will mysteriously disappear\n// sometimes. This works around that.\nfunction iosHacks(dom) {\n if (dom.nodeName == \"UL\" || dom.nodeName == \"OL\") {\n var oldCSS = dom.style.cssText;\n dom.style.cssText = oldCSS + \"; list-style: square !important\";\n window.getComputedStyle(dom).listStyle;\n dom.style.cssText = oldCSS;\n }\n}\n\nfunction nearbyTextNode(node, offset) {\n for (;;) {\n if (node.nodeType == 3) { return node }\n if (node.nodeType == 1 && offset > 0) {\n if (node.childNodes.length > offset && node.childNodes[offset].nodeType == 3)\n { return node.childNodes[offset] }\n node = node.childNodes[offset - 1];\n offset = nodeSize(node);\n } else if (node.nodeType == 1 && offset < node.childNodes.length) {\n node = node.childNodes[offset];\n offset = 0;\n } else {\n return null\n }\n }\n}\n\n// Find a piece of text in an inline fragment, overlapping from-to\nfunction findTextInFragment(frag, text, from, to) {\n for (var i = 0, pos = 0; i < frag.childCount && pos <= to;) {\n var child = frag.child(i++), childStart = pos;\n pos += child.nodeSize;\n if (!child.isText) { continue }\n var str = child.text;\n while (i < frag.childCount) {\n var next = frag.child(i++);\n pos += next.nodeSize;\n if (!next.isText) { break }\n str += next.text;\n }\n if (pos >= from) {\n var found = str.lastIndexOf(text, to - childStart);\n if (found >= 0 && found + text.length + childStart >= from)\n { return childStart + found }\n }\n }\n return -1\n}\n\n// Replace range from-to in an array of view descs with replacement\n// (may be null to just delete). This goes very much against the grain\n// of the rest of this code, which tends to create nodes with the\n// right shape in one go, rather than messing with them after\n// creation, but is necessary in the composition hack.\nfunction replaceNodes(nodes, from, to, view, replacement) {\n var result = [];\n for (var i = 0, off = 0; i < nodes.length; i++) {\n var child = nodes[i], start = off, end = off += child.size;\n if (start >= to || end <= from) {\n result.push(child);\n } else {\n if (start < from) { result.push(child.slice(0, from - start, view)); }\n if (replacement) {\n result.push(replacement);\n replacement = null;\n }\n if (end > to) { result.push(child.slice(to - start, child.size, view)); }\n }\n }\n return result\n}\n\nfunction selectionFromDOM(view, origin) {\n var domSel = view.root.getSelection(), doc = view.state.doc;\n if (!domSel.focusNode) { return null }\n var nearestDesc = view.docView.nearestDesc(domSel.focusNode), inWidget = nearestDesc && nearestDesc.size == 0;\n var head = view.docView.posFromDOM(domSel.focusNode, domSel.focusOffset);\n if (head < 0) { return null }\n var $head = doc.resolve(head), $anchor, selection;\n if (selectionCollapsed(domSel)) {\n $anchor = $head;\n while (nearestDesc && !nearestDesc.node) { nearestDesc = nearestDesc.parent; }\n if (nearestDesc && nearestDesc.node.isAtom && NodeSelection.isSelectable(nearestDesc.node) && nearestDesc.parent\n && !(nearestDesc.node.isInline && isOnEdge(domSel.focusNode, domSel.focusOffset, nearestDesc.dom))) {\n var pos = nearestDesc.posBefore;\n selection = new NodeSelection(head == pos ? $head : doc.resolve(pos));\n }\n } else {\n var anchor = view.docView.posFromDOM(domSel.anchorNode, domSel.anchorOffset);\n if (anchor < 0) { return null }\n $anchor = doc.resolve(anchor);\n }\n\n if (!selection) {\n var bias = origin == \"pointer\" || (view.state.selection.head < $head.pos && !inWidget) ? 1 : -1;\n selection = selectionBetween(view, $anchor, $head, bias);\n }\n return selection\n}\n\nfunction selectionToDOM(view, force) {\n var sel = view.state.selection;\n syncNodeSelection(view, sel);\n\n if (view.editable ? !view.hasFocus() :\n !(hasSelection(view) && document.activeElement && document.activeElement.contains(view.dom))) { return }\n\n view.domObserver.disconnectSelection();\n\n if (view.cursorWrapper) {\n selectCursorWrapper(view);\n } else {\n var anchor = sel.anchor;\n var head = sel.head;\n var resetEditableFrom, resetEditableTo;\n if (brokenSelectBetweenUneditable && !(sel instanceof TextSelection)) {\n if (!sel.$from.parent.inlineContent)\n { resetEditableFrom = temporarilyEditableNear(view, sel.from); }\n if (!sel.empty && !sel.$from.parent.inlineContent)\n { resetEditableTo = temporarilyEditableNear(view, sel.to); }\n }\n view.docView.setSelection(anchor, head, view.root, force);\n if (brokenSelectBetweenUneditable) {\n if (resetEditableFrom) { resetEditable(resetEditableFrom); }\n if (resetEditableTo) { resetEditable(resetEditableTo); }\n }\n if (sel.visible) {\n view.dom.classList.remove(\"ProseMirror-hideselection\");\n } else {\n view.dom.classList.add(\"ProseMirror-hideselection\");\n if (\"onselectionchange\" in document) { removeClassOnSelectionChange(view); }\n }\n }\n\n view.domObserver.setCurSelection();\n view.domObserver.connectSelection();\n}\n\n// Kludge to work around Webkit not allowing a selection to start/end\n// between non-editable block nodes. We briefly make something\n// editable, set the selection, then set it uneditable again.\n\nvar brokenSelectBetweenUneditable = result.safari || result.chrome && result.chrome_version < 63;\n\nfunction temporarilyEditableNear(view, pos) {\n var ref = view.docView.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n var after = offset < node.childNodes.length ? node.childNodes[offset] : null;\n var before = offset ? node.childNodes[offset - 1] : null;\n if (result.safari && after && after.contentEditable == \"false\") { return setEditable(after) }\n if ((!after || after.contentEditable == \"false\") && (!before || before.contentEditable == \"false\")) {\n if (after) { return setEditable(after) }\n else if (before) { return setEditable(before) }\n }\n}\n\nfunction setEditable(element) {\n element.contentEditable = \"true\";\n if (result.safari && element.draggable) { element.draggable = false; element.wasDraggable = true; }\n return element\n}\n\nfunction resetEditable(element) {\n element.contentEditable = \"false\";\n if (element.wasDraggable) { element.draggable = true; element.wasDraggable = null; }\n}\n\nfunction removeClassOnSelectionChange(view) {\n var doc = view.dom.ownerDocument;\n doc.removeEventListener(\"selectionchange\", view.hideSelectionGuard);\n var domSel = view.root.getSelection();\n var node = domSel.anchorNode, offset = domSel.anchorOffset;\n doc.addEventListener(\"selectionchange\", view.hideSelectionGuard = function () {\n if (domSel.anchorNode != node || domSel.anchorOffset != offset) {\n doc.removeEventListener(\"selectionchange\", view.hideSelectionGuard);\n view.dom.classList.remove(\"ProseMirror-hideselection\");\n }\n });\n}\n\nfunction selectCursorWrapper(view) {\n var domSel = view.root.getSelection(), range = document.createRange();\n var node = view.cursorWrapper.dom, img = node.nodeName == \"IMG\";\n if (img) { range.setEnd(node.parentNode, domIndex(node) + 1); }\n else { range.setEnd(node, 0); }\n range.collapse(false);\n domSel.removeAllRanges();\n domSel.addRange(range);\n // Kludge to kill 'control selection' in IE11 when selecting an\n // invisible cursor wrapper, since that would result in those weird\n // resize handles and a selection that considers the absolutely\n // positioned wrapper, rather than the root editable node, the\n // focused element.\n if (!img && !view.state.selection.visible && result.ie && result.ie_version <= 11) {\n node.disabled = true;\n node.disabled = false;\n }\n}\n\nfunction syncNodeSelection(view, sel) {\n if (sel instanceof NodeSelection) {\n var desc = view.docView.descAt(sel.from);\n if (desc != view.lastSelectedViewDesc) {\n clearNodeSelection(view);\n if (desc) { desc.selectNode(); }\n view.lastSelectedViewDesc = desc;\n }\n } else {\n clearNodeSelection(view);\n }\n}\n\n// Clear all DOM statefulness of the last node selection.\nfunction clearNodeSelection(view) {\n if (view.lastSelectedViewDesc) {\n if (view.lastSelectedViewDesc.parent)\n { view.lastSelectedViewDesc.deselectNode(); }\n view.lastSelectedViewDesc = null;\n }\n}\n\nfunction selectionBetween(view, $anchor, $head, bias) {\n return view.someProp(\"createSelectionBetween\", function (f) { return f(view, $anchor, $head); })\n || TextSelection.between($anchor, $head, bias)\n}\n\nfunction hasFocusAndSelection(view) {\n if (view.editable && view.root.activeElement != view.dom) { return false }\n return hasSelection(view)\n}\n\nfunction hasSelection(view) {\n var sel = view.root.getSelection();\n if (!sel.anchorNode) { return false }\n try {\n // Firefox will raise 'permission denied' errors when accessing\n // properties of `sel.anchorNode` when it's in a generated CSS\n // element.\n return view.dom.contains(sel.anchorNode.nodeType == 3 ? sel.anchorNode.parentNode : sel.anchorNode) &&\n (view.editable || view.dom.contains(sel.focusNode.nodeType == 3 ? sel.focusNode.parentNode : sel.focusNode))\n } catch(_) {\n return false\n }\n}\n\nfunction anchorInRightPlace(view) {\n var anchorDOM = view.docView.domFromPos(view.state.selection.anchor);\n var domSel = view.root.getSelection();\n return isEquivalentPosition(anchorDOM.node, anchorDOM.offset, domSel.anchorNode, domSel.anchorOffset)\n}\n\nfunction moveSelectionBlock(state, dir) {\n var ref = state.selection;\n var $anchor = ref.$anchor;\n var $head = ref.$head;\n var $side = dir > 0 ? $anchor.max($head) : $anchor.min($head);\n var $start = !$side.parent.inlineContent ? $side : $side.depth ? state.doc.resolve(dir > 0 ? $side.after() : $side.before()) : null;\n return $start && Selection.findFrom($start, dir)\n}\n\nfunction apply(view, sel) {\n view.dispatch(view.state.tr.setSelection(sel).scrollIntoView());\n return true\n}\n\nfunction selectHorizontally(view, dir, mods) {\n var sel = view.state.selection;\n if (sel instanceof TextSelection) {\n if (!sel.empty || mods.indexOf(\"s\") > -1) {\n return false\n } else if (view.endOfTextblock(dir > 0 ? \"right\" : \"left\")) {\n var next = moveSelectionBlock(view.state, dir);\n if (next && (next instanceof NodeSelection)) { return apply(view, next) }\n return false\n } else if (!(result.mac && mods.indexOf(\"m\") > -1)) {\n var $head = sel.$head, node = $head.textOffset ? null : dir < 0 ? $head.nodeBefore : $head.nodeAfter, desc;\n if (!node || node.isText) { return false }\n var nodePos = dir < 0 ? $head.pos - node.nodeSize : $head.pos;\n if (!(node.isAtom || (desc = view.docView.descAt(nodePos)) && !desc.contentDOM)) { return false }\n if (NodeSelection.isSelectable(node)) {\n return apply(view, new NodeSelection(dir < 0 ? view.state.doc.resolve($head.pos - node.nodeSize) : $head))\n } else if (result.webkit) {\n // Chrome and Safari will introduce extra pointless cursor\n // positions around inline uneditable nodes, so we have to\n // take over and move the cursor past them (#937)\n return apply(view, new TextSelection(view.state.doc.resolve(dir < 0 ? nodePos : nodePos + node.nodeSize)))\n } else {\n return false\n }\n }\n } else if (sel instanceof NodeSelection && sel.node.isInline) {\n return apply(view, new TextSelection(dir > 0 ? sel.$to : sel.$from))\n } else {\n var next$1 = moveSelectionBlock(view.state, dir);\n if (next$1) { return apply(view, next$1) }\n return false\n }\n}\n\nfunction nodeLen(node) {\n return node.nodeType == 3 ? node.nodeValue.length : node.childNodes.length\n}\n\nfunction isIgnorable(dom) {\n var desc = dom.pmViewDesc;\n return desc && desc.size == 0 && (dom.nextSibling || dom.nodeName != \"BR\")\n}\n\n// Make sure the cursor isn't directly after one or more ignored\n// nodes, which will confuse the browser's cursor motion logic.\nfunction skipIgnoredNodesLeft(view) {\n var sel = view.root.getSelection();\n var node = sel.focusNode, offset = sel.focusOffset;\n if (!node) { return }\n var moveNode, moveOffset, force = false;\n // Gecko will do odd things when the selection is directly in front\n // of a non-editable node, so in that case, move it into the next\n // node if possible. Issue prosemirror/prosemirror#832.\n if (result.gecko && node.nodeType == 1 && offset < nodeLen(node) && isIgnorable(node.childNodes[offset])) { force = true; }\n for (;;) {\n if (offset > 0) {\n if (node.nodeType != 1) {\n break\n } else {\n var before = node.childNodes[offset - 1];\n if (isIgnorable(before)) {\n moveNode = node;\n moveOffset = --offset;\n } else if (before.nodeType == 3) {\n node = before;\n offset = node.nodeValue.length;\n } else { break }\n }\n } else if (isBlockNode(node)) {\n break\n } else {\n var prev = node.previousSibling;\n while (prev && isIgnorable(prev)) {\n moveNode = node.parentNode;\n moveOffset = domIndex(prev);\n prev = prev.previousSibling;\n }\n if (!prev) {\n node = node.parentNode;\n if (node == view.dom) { break }\n offset = 0;\n } else {\n node = prev;\n offset = nodeLen(node);\n }\n }\n }\n if (force) { setSelFocus(view, sel, node, offset); }\n else if (moveNode) { setSelFocus(view, sel, moveNode, moveOffset); }\n}\n\n// Make sure the cursor isn't directly before one or more ignored\n// nodes.\nfunction skipIgnoredNodesRight(view) {\n var sel = view.root.getSelection();\n var node = sel.focusNode, offset = sel.focusOffset;\n if (!node) { return }\n var len = nodeLen(node);\n var moveNode, moveOffset;\n for (;;) {\n if (offset < len) {\n if (node.nodeType != 1) { break }\n var after = node.childNodes[offset];\n if (isIgnorable(after)) {\n moveNode = node;\n moveOffset = ++offset;\n }\n else { break }\n } else if (isBlockNode(node)) {\n break\n } else {\n var next = node.nextSibling;\n while (next && isIgnorable(next)) {\n moveNode = next.parentNode;\n moveOffset = domIndex(next) + 1;\n next = next.nextSibling;\n }\n if (!next) {\n node = node.parentNode;\n if (node == view.dom) { break }\n offset = len = 0;\n } else {\n node = next;\n offset = 0;\n len = nodeLen(node);\n }\n }\n }\n if (moveNode) { setSelFocus(view, sel, moveNode, moveOffset); }\n}\n\nfunction isBlockNode(dom) {\n var desc = dom.pmViewDesc;\n return desc && desc.node && desc.node.isBlock\n}\n\nfunction setSelFocus(view, sel, node, offset) {\n if (selectionCollapsed(sel)) {\n var range = document.createRange();\n range.setEnd(node, offset);\n range.setStart(node, offset);\n sel.removeAllRanges();\n sel.addRange(range);\n } else if (sel.extend) {\n sel.extend(node, offset);\n }\n view.domObserver.setCurSelection();\n var state = view.state;\n // If no state update ends up happening, reset the selection.\n setTimeout(function () {\n if (view.state == state) { selectionToDOM(view); }\n }, 50);\n}\n\n// : (EditorState, number)\n// Check whether vertical selection motion would involve node\n// selections. If so, apply it (if not, the result is left to the\n// browser)\nfunction selectVertically(view, dir, mods) {\n var sel = view.state.selection;\n if (sel instanceof TextSelection && !sel.empty || mods.indexOf(\"s\") > -1) { return false }\n if (result.mac && mods.indexOf(\"m\") > -1) { return false }\n var $from = sel.$from;\n var $to = sel.$to;\n\n if (!$from.parent.inlineContent || view.endOfTextblock(dir < 0 ? \"up\" : \"down\")) {\n var next = moveSelectionBlock(view.state, dir);\n if (next && (next instanceof NodeSelection))\n { return apply(view, next) }\n }\n if (!$from.parent.inlineContent) {\n var beyond = Selection.findFrom(dir < 0 ? $from : $to, dir);\n return beyond ? apply(view, beyond) : true\n }\n return false\n}\n\nfunction stopNativeHorizontalDelete(view, dir) {\n if (!(view.state.selection instanceof TextSelection)) { return true }\n var ref = view.state.selection;\n var $head = ref.$head;\n var $anchor = ref.$anchor;\n var empty = ref.empty;\n if (!$head.sameParent($anchor)) { return true }\n if (!empty) { return false }\n if (view.endOfTextblock(dir > 0 ? \"forward\" : \"backward\")) { return true }\n var nextNode = !$head.textOffset && (dir < 0 ? $head.nodeBefore : $head.nodeAfter);\n if (nextNode && !nextNode.isText) {\n var tr = view.state.tr;\n if (dir < 0) { tr.delete($head.pos - nextNode.nodeSize, $head.pos); }\n else { tr.delete($head.pos, $head.pos + nextNode.nodeSize); }\n view.dispatch(tr);\n return true\n }\n return false\n}\n\nfunction switchEditable(view, node, state) {\n view.domObserver.stop();\n node.contentEditable = state;\n view.domObserver.start();\n}\n\n// Issue #867 / #1090 / https://bugs.chromium.org/p/chromium/issues/detail?id=903821\n// In which Safari (and at some point in the past, Chrome) does really\n// wrong things when the down arrow is pressed when the cursor is\n// directly at the start of a textblock and has an uneditable node\n// after it\nfunction safariDownArrowBug(view) {\n if (!result.safari || view.state.selection.$head.parentOffset > 0) { return }\n var ref = view.root.getSelection();\n var focusNode = ref.focusNode;\n var focusOffset = ref.focusOffset;\n if (focusNode && focusNode.nodeType == 1 && focusOffset == 0 &&\n focusNode.firstChild && focusNode.firstChild.contentEditable == \"false\") {\n var child = focusNode.firstChild;\n switchEditable(view, child, true);\n setTimeout(function () { return switchEditable(view, child, false); }, 20);\n }\n}\n\n// A backdrop key mapping used to make sure we always suppress keys\n// that have a dangerous default effect, even if the commands they are\n// bound to return false, and to make sure that cursor-motion keys\n// find a cursor (as opposed to a node selection) when pressed. For\n// cursor-motion keys, the code in the handlers also takes care of\n// block selections.\n\nfunction getMods(event) {\n var result = \"\";\n if (event.ctrlKey) { result += \"c\"; }\n if (event.metaKey) { result += \"m\"; }\n if (event.altKey) { result += \"a\"; }\n if (event.shiftKey) { result += \"s\"; }\n return result\n}\n\nfunction captureKeyDown(view, event) {\n var code = event.keyCode, mods = getMods(event);\n if (code == 8 || (result.mac && code == 72 && mods == \"c\")) { // Backspace, Ctrl-h on Mac\n return stopNativeHorizontalDelete(view, -1) || skipIgnoredNodesLeft(view)\n } else if (code == 46 || (result.mac && code == 68 && mods == \"c\")) { // Delete, Ctrl-d on Mac\n return stopNativeHorizontalDelete(view, 1) || skipIgnoredNodesRight(view)\n } else if (code == 13 || code == 27) { // Enter, Esc\n return true\n } else if (code == 37) { // Left arrow\n return selectHorizontally(view, -1, mods) || skipIgnoredNodesLeft(view)\n } else if (code == 39) { // Right arrow\n return selectHorizontally(view, 1, mods) || skipIgnoredNodesRight(view)\n } else if (code == 38) { // Up arrow\n return selectVertically(view, -1, mods) || skipIgnoredNodesLeft(view)\n } else if (code == 40) { // Down arrow\n return safariDownArrowBug(view) || selectVertically(view, 1, mods) || skipIgnoredNodesRight(view)\n } else if (mods == (result.mac ? \"m\" : \"c\") &&\n (code == 66 || code == 73 || code == 89 || code == 90)) { // Mod-[biyz]\n return true\n }\n return false\n}\n\n// Note that all referencing and parsing is done with the\n// start-of-operation selection and document, since that's the one\n// that the DOM represents. If any changes came in in the meantime,\n// the modification is mapped over those before it is applied, in\n// readDOMChange.\n\nfunction parseBetween(view, from_, to_) {\n var ref = view.docView.parseRange(from_, to_);\n var parent = ref.node;\n var fromOffset = ref.fromOffset;\n var toOffset = ref.toOffset;\n var from = ref.from;\n var to = ref.to;\n\n var domSel = view.root.getSelection(), find = null, anchor = domSel.anchorNode;\n if (anchor && view.dom.contains(anchor.nodeType == 1 ? anchor : anchor.parentNode)) {\n find = [{node: anchor, offset: domSel.anchorOffset}];\n if (!selectionCollapsed(domSel))\n { find.push({node: domSel.focusNode, offset: domSel.focusOffset}); }\n }\n // Work around issue in Chrome where backspacing sometimes replaces\n // the deleted content with a random BR node (issues #799, #831)\n if (result.chrome && view.lastKeyCode === 8) {\n for (var off = toOffset; off > fromOffset; off--) {\n var node = parent.childNodes[off - 1], desc = node.pmViewDesc;\n if (node.nodeType == \"BR\" && !desc) { toOffset = off; break }\n if (!desc || desc.size) { break }\n }\n }\n var startDoc = view.state.doc;\n var parser = view.someProp(\"domParser\") || DOMParser.fromSchema(view.state.schema);\n var $from = startDoc.resolve(from);\n\n var sel = null, doc = parser.parse(parent, {\n topNode: $from.parent,\n topMatch: $from.parent.contentMatchAt($from.index()),\n topOpen: true,\n from: fromOffset,\n to: toOffset,\n preserveWhitespace: $from.parent.type.spec.code ? \"full\" : true,\n editableContent: true,\n findPositions: find,\n ruleFromNode: ruleFromNode,\n context: $from\n });\n if (find && find[0].pos != null) {\n var anchor$1 = find[0].pos, head = find[1] && find[1].pos;\n if (head == null) { head = anchor$1; }\n sel = {anchor: anchor$1 + from, head: head + from};\n }\n return {doc: doc, sel: sel, from: from, to: to}\n}\n\nfunction ruleFromNode(dom) {\n var desc = dom.pmViewDesc;\n if (desc) {\n return desc.parseRule()\n } else if (dom.nodeName == \"BR\" && dom.parentNode) {\n // Safari replaces the list item or table cell with a BR\n // directly in the list node (?!) if you delete the last\n // character in a list item or table cell (#708, #862)\n if (result.safari && /^(ul|ol)$/i.test(dom.parentNode.nodeName)) {\n var skip = document.createElement(\"div\");\n skip.appendChild(document.createElement(\"li\"));\n return {skip: skip}\n } else if (dom.parentNode.lastChild == dom || result.safari && /^(tr|table)$/i.test(dom.parentNode.nodeName)) {\n return {ignore: true}\n }\n } else if (dom.nodeName == \"IMG\" && dom.getAttribute(\"mark-placeholder\")) {\n return {ignore: true}\n }\n}\n\nfunction readDOMChange(view, from, to, typeOver, addedNodes) {\n if (from < 0) {\n var origin = view.lastSelectionTime > Date.now() - 50 ? view.lastSelectionOrigin : null;\n var newSel = selectionFromDOM(view, origin);\n if (newSel && !view.state.selection.eq(newSel)) {\n var tr$1 = view.state.tr.setSelection(newSel);\n if (origin == \"pointer\") { tr$1.setMeta(\"pointer\", true); }\n else if (origin == \"key\") { tr$1.scrollIntoView(); }\n view.dispatch(tr$1);\n }\n return\n }\n\n var $before = view.state.doc.resolve(from);\n var shared = $before.sharedDepth(to);\n from = $before.before(shared + 1);\n to = view.state.doc.resolve(to).after(shared + 1);\n\n var sel = view.state.selection;\n var parse = parseBetween(view, from, to);\n\n var doc = view.state.doc, compare = doc.slice(parse.from, parse.to);\n var preferredPos, preferredSide;\n // Prefer anchoring to end when Backspace is pressed\n if (view.lastKeyCode === 8 && Date.now() - 100 < view.lastKeyCodeTime) {\n preferredPos = view.state.selection.to;\n preferredSide = \"end\";\n } else {\n preferredPos = view.state.selection.from;\n preferredSide = \"start\";\n }\n view.lastKeyCode = null;\n\n var change = findDiff(compare.content, parse.doc.content, parse.from, preferredPos, preferredSide);\n if (!change) {\n if (typeOver && sel instanceof TextSelection && !sel.empty && sel.$head.sameParent(sel.$anchor) &&\n !view.composing && !(parse.sel && parse.sel.anchor != parse.sel.head)) {\n change = {start: sel.from, endA: sel.to, endB: sel.to};\n } else {\n if (parse.sel) {\n var sel$1 = resolveSelection(view, view.state.doc, parse.sel);\n if (sel$1 && !sel$1.eq(view.state.selection)) { view.dispatch(view.state.tr.setSelection(sel$1)); }\n }\n return\n }\n }\n view.domChangeCount++;\n // Handle the case where overwriting a selection by typing matches\n // the start or end of the selected content, creating a change\n // that's smaller than what was actually overwritten.\n if (view.state.selection.from < view.state.selection.to &&\n change.start == change.endB &&\n view.state.selection instanceof TextSelection) {\n if (change.start > view.state.selection.from && change.start <= view.state.selection.from + 2) {\n change.start = view.state.selection.from;\n } else if (change.endA < view.state.selection.to && change.endA >= view.state.selection.to - 2) {\n change.endB += (view.state.selection.to - change.endA);\n change.endA = view.state.selection.to;\n }\n }\n\n // IE11 will insert a non-breaking space _ahead_ of the space after\n // the cursor space when adding a space before another space. When\n // that happened, adjust the change to cover the space instead.\n if (result.ie && result.ie_version <= 11 && change.endB == change.start + 1 &&\n change.endA == change.start && change.start > parse.from &&\n parse.doc.textBetween(change.start - parse.from - 1, change.start - parse.from + 1) == \" \\u00a0\") {\n change.start--;\n change.endA--;\n change.endB--;\n }\n\n var $from = parse.doc.resolveNoCache(change.start - parse.from);\n var $to = parse.doc.resolveNoCache(change.endB - parse.from);\n var inlineChange = $from.sameParent($to) && $from.parent.inlineContent;\n var nextSel;\n // If this looks like the effect of pressing Enter (or was recorded\n // as being an iOS enter press), just dispatch an Enter key instead.\n if (((result.ios && view.lastIOSEnter > Date.now() - 225 &&\n (!inlineChange || addedNodes.some(function (n) { return n.nodeName == \"DIV\" || n.nodeName == \"P\"; }))) ||\n (!inlineChange && $from.pos < parse.doc.content.size &&\n (nextSel = Selection.findFrom(parse.doc.resolve($from.pos + 1), 1, true)) &&\n nextSel.head == $to.pos)) &&\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); })) {\n view.lastIOSEnter = 0;\n return\n }\n // Same for backspace\n if (view.state.selection.anchor > change.start &&\n looksLikeJoin(doc, change.start, change.endA, $from, $to) &&\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(8, \"Backspace\")); })) {\n if (result.android && result.chrome) { view.domObserver.suppressSelectionUpdates(); } // #820\n return\n }\n\n // This tries to detect Android virtual keyboard\n // enter-and-pick-suggestion action. That sometimes (see issue\n // #1059) first fires a DOM mutation, before moving the selection to\n // the newly created block. And then, because ProseMirror cleans up\n // the DOM selection, it gives up moving the selection entirely,\n // leaving the cursor in the wrong place. When that happens, we drop\n // the new paragraph from the initial change, and fire a simulated\n // enter key afterwards.\n if (result.android && !inlineChange && $from.start() != $to.start() && $to.parentOffset == 0 && $from.depth == $to.depth &&\n parse.sel && parse.sel.anchor == parse.sel.head && parse.sel.head == change.endA) {\n change.endB -= 2;\n $to = parse.doc.resolveNoCache(change.endB - parse.from);\n setTimeout(function () {\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); });\n }, 20);\n }\n\n var chFrom = change.start, chTo = change.endA;\n\n var tr, storedMarks, markChange, $from1;\n if (inlineChange) {\n if ($from.pos == $to.pos) { // Deletion\n // IE11 sometimes weirdly moves the DOM selection around after\n // backspacing out the first element in a textblock\n if (result.ie && result.ie_version <= 11 && $from.parentOffset == 0) {\n view.domObserver.suppressSelectionUpdates();\n setTimeout(function () { return selectionToDOM(view); }, 20);\n }\n tr = view.state.tr.delete(chFrom, chTo);\n storedMarks = doc.resolve(change.start).marksAcross(doc.resolve(change.endA));\n } else if ( // Adding or removing a mark\n change.endA == change.endB && ($from1 = doc.resolve(change.start)) &&\n (markChange = isMarkChange($from.parent.content.cut($from.parentOffset, $to.parentOffset),\n $from1.parent.content.cut($from1.parentOffset, change.endA - $from1.start())))\n ) {\n tr = view.state.tr;\n if (markChange.type == \"add\") { tr.addMark(chFrom, chTo, markChange.mark); }\n else { tr.removeMark(chFrom, chTo, markChange.mark); }\n } else if ($from.parent.child($from.index()).isText && $from.index() == $to.index() - ($to.textOffset ? 0 : 1)) {\n // Both positions in the same text node -- simply insert text\n var text = $from.parent.textBetween($from.parentOffset, $to.parentOffset);\n if (view.someProp(\"handleTextInput\", function (f) { return f(view, chFrom, chTo, text); })) { return }\n tr = view.state.tr.insertText(text, chFrom, chTo);\n }\n }\n\n if (!tr)\n { tr = view.state.tr.replace(chFrom, chTo, parse.doc.slice(change.start - parse.from, change.endB - parse.from)); }\n if (parse.sel) {\n var sel$2 = resolveSelection(view, tr.doc, parse.sel);\n // Chrome Android will sometimes, during composition, report the\n // selection in the wrong place. If it looks like that is\n // happening, don't update the selection.\n // Edge just doesn't move the cursor forward when you start typing\n // in an empty block or between br nodes.\n if (sel$2 && !(result.chrome && result.android && view.composing && sel$2.empty &&\n (sel$2.head == chFrom || sel$2.head == tr.mapping.map(chTo) - 1) ||\n result.ie && sel$2.empty && sel$2.head == chFrom))\n { tr.setSelection(sel$2); }\n }\n if (storedMarks) { tr.ensureMarks(storedMarks); }\n view.dispatch(tr.scrollIntoView());\n}\n\nfunction resolveSelection(view, doc, parsedSel) {\n if (Math.max(parsedSel.anchor, parsedSel.head) > doc.content.size) { return null }\n return selectionBetween(view, doc.resolve(parsedSel.anchor), doc.resolve(parsedSel.head))\n}\n\n// : (Fragment, Fragment) → ?{mark: Mark, type: string}\n// Given two same-length, non-empty fragments of inline content,\n// determine whether the first could be created from the second by\n// removing or adding a single mark type.\nfunction isMarkChange(cur, prev) {\n var curMarks = cur.firstChild.marks, prevMarks = prev.firstChild.marks;\n var added = curMarks, removed = prevMarks, type, mark, update;\n for (var i = 0; i < prevMarks.length; i++) { added = prevMarks[i].removeFromSet(added); }\n for (var i$1 = 0; i$1 < curMarks.length; i$1++) { removed = curMarks[i$1].removeFromSet(removed); }\n if (added.length == 1 && removed.length == 0) {\n mark = added[0];\n type = \"add\";\n update = function (node) { return node.mark(mark.addToSet(node.marks)); };\n } else if (added.length == 0 && removed.length == 1) {\n mark = removed[0];\n type = \"remove\";\n update = function (node) { return node.mark(mark.removeFromSet(node.marks)); };\n } else {\n return null\n }\n var updated = [];\n for (var i$2 = 0; i$2 < prev.childCount; i$2++) { updated.push(update(prev.child(i$2))); }\n if (Fragment.from(updated).eq(cur)) { return {mark: mark, type: type} }\n}\n\nfunction looksLikeJoin(old, start, end, $newStart, $newEnd) {\n if (!$newStart.parent.isTextblock ||\n // The content must have shrunk\n end - start <= $newEnd.pos - $newStart.pos ||\n // newEnd must point directly at or after the end of the block that newStart points into\n skipClosingAndOpening($newStart, true, false) < $newEnd.pos)\n { return false }\n\n var $start = old.resolve(start);\n // Start must be at the end of a block\n if ($start.parentOffset < $start.parent.content.size || !$start.parent.isTextblock)\n { return false }\n var $next = old.resolve(skipClosingAndOpening($start, true, true));\n // The next textblock must start before end and end near it\n if (!$next.parent.isTextblock || $next.pos > end ||\n skipClosingAndOpening($next, true, false) < end)\n { return false }\n\n // The fragments after the join point must match\n return $newStart.parent.content.cut($newStart.parentOffset).eq($next.parent.content)\n}\n\nfunction skipClosingAndOpening($pos, fromEnd, mayOpen) {\n var depth = $pos.depth, end = fromEnd ? $pos.end() : $pos.pos;\n while (depth > 0 && (fromEnd || $pos.indexAfter(depth) == $pos.node(depth).childCount)) {\n depth--;\n end++;\n fromEnd = false;\n }\n if (mayOpen) {\n var next = $pos.node(depth).maybeChild($pos.indexAfter(depth));\n while (next && !next.isLeaf) {\n next = next.firstChild;\n end++;\n }\n }\n return end\n}\n\nfunction findDiff(a, b, pos, preferredPos, preferredSide) {\n var start = a.findDiffStart(b, pos);\n if (start == null) { return null }\n var ref = a.findDiffEnd(b, pos + a.size, pos + b.size);\n var endA = ref.a;\n var endB = ref.b;\n if (preferredSide == \"end\") {\n var adjust = Math.max(0, start - Math.min(endA, endB));\n preferredPos -= endA + adjust - start;\n }\n if (endA < start && a.size < b.size) {\n var move = preferredPos <= start && preferredPos >= endA ? start - preferredPos : 0;\n start -= move;\n endB = start + (endB - endA);\n endA = start;\n } else if (endB < start) {\n var move$1 = preferredPos <= start && preferredPos >= endB ? start - preferredPos : 0;\n start -= move$1;\n endA = start + (endA - endB);\n endB = start;\n }\n return {start: start, endA: endA, endB: endB}\n}\n\nfunction serializeForClipboard(view, slice) {\n var context = [];\n var content = slice.content;\n var openStart = slice.openStart;\n var openEnd = slice.openEnd;\n while (openStart > 1 && openEnd > 1 && content.childCount == 1 && content.firstChild.childCount == 1) {\n openStart--;\n openEnd--;\n var node = content.firstChild;\n context.push(node.type.name, node.type.hasRequiredAttrs() ? node.attrs : null);\n content = node.content;\n }\n\n var serializer = view.someProp(\"clipboardSerializer\") || DOMSerializer.fromSchema(view.state.schema);\n var doc = detachedDoc(), wrap = doc.createElement(\"div\");\n wrap.appendChild(serializer.serializeFragment(content, {document: doc}));\n\n var firstChild = wrap.firstChild, needsWrap;\n while (firstChild && firstChild.nodeType == 1 && (needsWrap = wrapMap[firstChild.nodeName.toLowerCase()])) {\n for (var i = needsWrap.length - 1; i >= 0; i--) {\n var wrapper = doc.createElement(needsWrap[i]);\n while (wrap.firstChild) { wrapper.appendChild(wrap.firstChild); }\n wrap.appendChild(wrapper);\n }\n firstChild = wrap.firstChild;\n }\n\n if (firstChild && firstChild.nodeType == 1)\n { firstChild.setAttribute(\"data-pm-slice\", (openStart + \" \" + openEnd + \" \" + (JSON.stringify(context)))); }\n\n var text = view.someProp(\"clipboardTextSerializer\", function (f) { return f(slice); }) ||\n slice.content.textBetween(0, slice.content.size, \"\\n\\n\");\n\n return {dom: wrap, text: text}\n}\n\n// : (EditorView, string, string, ?bool, ResolvedPos) → ?Slice\n// Read a slice of content from the clipboard (or drop data).\nfunction parseFromClipboard(view, text, html, plainText, $context) {\n var dom, inCode = $context.parent.type.spec.code, slice;\n if (!html && !text) { return null }\n var asText = text && (plainText || inCode || !html);\n if (asText) {\n view.someProp(\"transformPastedText\", function (f) { text = f(text, inCode || plainText); });\n if (inCode) { return new Slice(Fragment.from(view.state.schema.text(text)), 0, 0) }\n var parsed = view.someProp(\"clipboardTextParser\", function (f) { return f(text, $context, plainText); });\n if (parsed) {\n slice = parsed;\n } else {\n dom = document.createElement(\"div\");\n text.trim().split(/(?:\\r\\n?|\\n)+/).forEach(function (block) {\n dom.appendChild(document.createElement(\"p\")).textContent = block;\n });\n }\n } else {\n view.someProp(\"transformPastedHTML\", function (f) { html = f(html); });\n dom = readHTML(html);\n }\n\n var contextNode = dom && dom.querySelector(\"[data-pm-slice]\");\n var sliceData = contextNode && /^(\\d+) (\\d+) (.*)/.exec(contextNode.getAttribute(\"data-pm-slice\"));\n if (!slice) {\n var parser = view.someProp(\"clipboardParser\") || view.someProp(\"domParser\") || DOMParser.fromSchema(view.state.schema);\n slice = parser.parseSlice(dom, {preserveWhitespace: !!(asText || sliceData), context: $context});\n }\n if (sliceData)\n { slice = addContext(closeSlice(slice, +sliceData[1], +sliceData[2]), sliceData[3]); }\n else // HTML wasn't created by ProseMirror. Make sure top-level siblings are coherent\n { slice = Slice.maxOpen(normalizeSiblings(slice.content, $context), false); }\n\n view.someProp(\"transformPasted\", function (f) { slice = f(slice); });\n return slice\n}\n\n// Takes a slice parsed with parseSlice, which means there hasn't been\n// any content-expression checking done on the top nodes, tries to\n// find a parent node in the current context that might fit the nodes,\n// and if successful, rebuilds the slice so that it fits into that parent.\n//\n// This addresses the problem that Transform.replace expects a\n// coherent slice, and will fail to place a set of siblings that don't\n// fit anywhere in the schema.\nfunction normalizeSiblings(fragment, $context) {\n if (fragment.childCount < 2) { return fragment }\n var loop = function ( d ) {\n var parent = $context.node(d);\n var match = parent.contentMatchAt($context.index(d));\n var lastWrap = (void 0), result = [];\n fragment.forEach(function (node) {\n if (!result) { return }\n var wrap = match.findWrapping(node.type), inLast;\n if (!wrap) { return result = null }\n if (inLast = result.length && lastWrap.length && addToSibling(wrap, lastWrap, node, result[result.length - 1], 0)) {\n result[result.length - 1] = inLast;\n } else {\n if (result.length) { result[result.length - 1] = closeRight(result[result.length - 1], lastWrap.length); }\n var wrapped = withWrappers(node, wrap);\n result.push(wrapped);\n match = match.matchType(wrapped.type, wrapped.attrs);\n lastWrap = wrap;\n }\n });\n if (result) { return { v: Fragment.from(result) } }\n };\n\n for (var d = $context.depth; d >= 0; d--) {\n var returned = loop( d );\n\n if ( returned ) return returned.v;\n }\n return fragment\n}\n\nfunction withWrappers(node, wrap, from) {\n if ( from === void 0 ) from = 0;\n\n for (var i = wrap.length - 1; i >= from; i--)\n { node = wrap[i].create(null, Fragment.from(node)); }\n return node\n}\n\n// Used to group adjacent nodes wrapped in similar parents by\n// normalizeSiblings into the same parent node\nfunction addToSibling(wrap, lastWrap, node, sibling, depth) {\n if (depth < wrap.length && depth < lastWrap.length && wrap[depth] == lastWrap[depth]) {\n var inner = addToSibling(wrap, lastWrap, node, sibling.lastChild, depth + 1);\n if (inner) { return sibling.copy(sibling.content.replaceChild(sibling.childCount - 1, inner)) }\n var match = sibling.contentMatchAt(sibling.childCount);\n if (match.matchType(depth == wrap.length - 1 ? node.type : wrap[depth + 1]))\n { return sibling.copy(sibling.content.append(Fragment.from(withWrappers(node, wrap, depth + 1)))) }\n }\n}\n\nfunction closeRight(node, depth) {\n if (depth == 0) { return node }\n var fragment = node.content.replaceChild(node.childCount - 1, closeRight(node.lastChild, depth - 1));\n var fill = node.contentMatchAt(node.childCount).fillBefore(Fragment.empty, true);\n return node.copy(fragment.append(fill))\n}\n\nfunction closeRange(fragment, side, from, to, depth, openEnd) {\n var node = side < 0 ? fragment.firstChild : fragment.lastChild, inner = node.content;\n if (depth < to - 1) { inner = closeRange(inner, side, from, to, depth + 1, openEnd); }\n if (depth >= from)\n { inner = side < 0 ? node.contentMatchAt(0).fillBefore(inner, fragment.childCount > 1 || openEnd <= depth).append(inner)\n : inner.append(node.contentMatchAt(node.childCount).fillBefore(Fragment.empty, true)); }\n return fragment.replaceChild(side < 0 ? 0 : fragment.childCount - 1, node.copy(inner))\n}\n\nfunction closeSlice(slice, openStart, openEnd) {\n if (openStart < slice.openStart)\n { slice = new Slice(closeRange(slice.content, -1, openStart, slice.openStart, 0, slice.openEnd), openStart, slice.openEnd); }\n if (openEnd < slice.openEnd)\n { slice = new Slice(closeRange(slice.content, 1, openEnd, slice.openEnd, 0, 0), slice.openStart, openEnd); }\n return slice\n}\n\n// Trick from jQuery -- some elements must be wrapped in other\n// elements for innerHTML to work. I.e. if you do `div.innerHTML =\n// \"<td>..</td>\"` the table cells are ignored.\nvar wrapMap = {\n thead: [\"table\"],\n tbody: [\"table\"],\n tfoot: [\"table\"],\n caption: [\"table\"],\n colgroup: [\"table\"],\n col: [\"table\", \"colgroup\"],\n tr: [\"table\", \"tbody\"],\n td: [\"table\", \"tbody\", \"tr\"],\n th: [\"table\", \"tbody\", \"tr\"]\n};\n\nvar _detachedDoc = null;\nfunction detachedDoc() {\n return _detachedDoc || (_detachedDoc = document.implementation.createHTMLDocument(\"title\"))\n}\n\nfunction readHTML(html) {\n var metas = /(\\s*<meta [^>]*>)*/.exec(html);\n if (metas) { html = html.slice(metas[0].length); }\n var elt = detachedDoc().createElement(\"div\");\n var firstTag = /(?:<meta [^>]*>)*<([a-z][^>\\s]+)/i.exec(html), wrap, depth = 0;\n if (wrap = firstTag && wrapMap[firstTag[1].toLowerCase()]) {\n html = wrap.map(function (n) { return \"<\" + n + \">\"; }).join(\"\") + html + wrap.map(function (n) { return \"</\" + n + \">\"; }).reverse().join(\"\");\n depth = wrap.length;\n }\n elt.innerHTML = html;\n for (var i = 0; i < depth; i++) { elt = elt.firstChild; }\n return elt\n}\n\nfunction addContext(slice, context) {\n if (!slice.size) { return slice }\n var schema = slice.content.firstChild.type.schema, array;\n try { array = JSON.parse(context); }\n catch(e) { return slice }\n var content = slice.content;\n var openStart = slice.openStart;\n var openEnd = slice.openEnd;\n for (var i = array.length - 2; i >= 0; i -= 2) {\n var type = schema.nodes[array[i]];\n if (!type || type.hasRequiredAttrs()) { break }\n content = Fragment.from(type.create(array[i + 1], content));\n openStart++; openEnd++;\n }\n return new Slice(content, openStart, openEnd)\n}\n\nvar observeOptions = {\n childList: true,\n characterData: true,\n characterDataOldValue: true,\n attributes: true,\n attributeOldValue: true,\n subtree: true\n};\n// IE11 has very broken mutation observers, so we also listen to DOMCharacterDataModified\nvar useCharData = result.ie && result.ie_version <= 11;\n\nvar SelectionState = function SelectionState() {\n this.anchorNode = this.anchorOffset = this.focusNode = this.focusOffset = null;\n};\n\nSelectionState.prototype.set = function set (sel) {\n this.anchorNode = sel.anchorNode; this.anchorOffset = sel.anchorOffset;\n this.focusNode = sel.focusNode; this.focusOffset = sel.focusOffset;\n};\n\nSelectionState.prototype.eq = function eq (sel) {\n return sel.anchorNode == this.anchorNode && sel.anchorOffset == this.anchorOffset &&\n sel.focusNode == this.focusNode && sel.focusOffset == this.focusOffset\n};\n\nvar DOMObserver = function DOMObserver(view, handleDOMChange) {\n var this$1 = this;\n\n this.view = view;\n this.handleDOMChange = handleDOMChange;\n this.queue = [];\n this.flushingSoon = -1;\n this.observer = window.MutationObserver &&\n new window.MutationObserver(function (mutations) {\n for (var i = 0; i < mutations.length; i++) { this$1.queue.push(mutations[i]); }\n // IE11 will sometimes (on backspacing out a single character\n // text node after a BR node) call the observer callback\n // before actually updating the DOM, which will cause\n // ProseMirror to miss the change (see #930)\n if (result.ie && result.ie_version <= 11 && mutations.some(\n function (m) { return m.type == \"childList\" && m.removedNodes.length ||\n m.type == \"characterData\" && m.oldValue.length > m.target.nodeValue.length; }))\n { this$1.flushSoon(); }\n else\n { this$1.flush(); }\n });\n this.currentSelection = new SelectionState;\n if (useCharData) {\n this.onCharData = function (e) {\n this$1.queue.push({target: e.target, type: \"characterData\", oldValue: e.prevValue});\n this$1.flushSoon();\n };\n }\n this.onSelectionChange = this.onSelectionChange.bind(this);\n this.suppressingSelectionUpdates = false;\n};\n\nDOMObserver.prototype.flushSoon = function flushSoon () {\n var this$1 = this;\n\n if (this.flushingSoon < 0)\n { this.flushingSoon = window.setTimeout(function () { this$1.flushingSoon = -1; this$1.flush(); }, 20); }\n};\n\nDOMObserver.prototype.forceFlush = function forceFlush () {\n if (this.flushingSoon > -1) {\n window.clearTimeout(this.flushingSoon);\n this.flushingSoon = -1;\n this.flush();\n }\n};\n\nDOMObserver.prototype.start = function start () {\n if (this.observer)\n { this.observer.observe(this.view.dom, observeOptions); }\n if (useCharData)\n { this.view.dom.addEventListener(\"DOMCharacterDataModified\", this.onCharData); }\n this.connectSelection();\n};\n\nDOMObserver.prototype.stop = function stop () {\n var this$1 = this;\n\n if (this.observer) {\n var take = this.observer.takeRecords();\n if (take.length) {\n for (var i = 0; i < take.length; i++) { this.queue.push(take[i]); }\n window.setTimeout(function () { return this$1.flush(); }, 20);\n }\n this.observer.disconnect();\n }\n if (useCharData) { this.view.dom.removeEventListener(\"DOMCharacterDataModified\", this.onCharData); }\n this.disconnectSelection();\n};\n\nDOMObserver.prototype.connectSelection = function connectSelection () {\n this.view.dom.ownerDocument.addEventListener(\"selectionchange\", this.onSelectionChange);\n};\n\nDOMObserver.prototype.disconnectSelection = function disconnectSelection () {\n this.view.dom.ownerDocument.removeEventListener(\"selectionchange\", this.onSelectionChange);\n};\n\nDOMObserver.prototype.suppressSelectionUpdates = function suppressSelectionUpdates () {\n var this$1 = this;\n\n this.suppressingSelectionUpdates = true;\n setTimeout(function () { return this$1.suppressingSelectionUpdates = false; }, 50);\n};\n\nDOMObserver.prototype.onSelectionChange = function onSelectionChange () {\n if (!hasFocusAndSelection(this.view)) { return }\n if (this.suppressingSelectionUpdates) { return selectionToDOM(this.view) }\n // Deletions on IE11 fire their events in the wrong order, giving\n // us a selection change event before the DOM changes are\n // reported.\n if (result.ie && result.ie_version <= 11 && !this.view.state.selection.empty) {\n var sel = this.view.root.getSelection();\n // Selection.isCollapsed isn't reliable on IE\n if (sel.focusNode && isEquivalentPosition(sel.focusNode, sel.focusOffset, sel.anchorNode, sel.anchorOffset))\n { return this.flushSoon() }\n }\n this.flush();\n};\n\nDOMObserver.prototype.setCurSelection = function setCurSelection () {\n this.currentSelection.set(this.view.root.getSelection());\n};\n\nDOMObserver.prototype.ignoreSelectionChange = function ignoreSelectionChange (sel) {\n if (sel.rangeCount == 0) { return true }\n var container = sel.getRangeAt(0).commonAncestorContainer;\n var desc = this.view.docView.nearestDesc(container);\n if (desc && desc.ignoreMutation({type: \"selection\", target: container.nodeType == 3 ? container.parentNode : container})) {\n this.setCurSelection();\n return true\n }\n};\n\nDOMObserver.prototype.flush = function flush () {\n if (!this.view.docView || this.flushingSoon > -1) { return }\n var mutations = this.observer ? this.observer.takeRecords() : [];\n if (this.queue.length) {\n mutations = this.queue.concat(mutations);\n this.queue.length = 0;\n }\n\n var sel = this.view.root.getSelection();\n var newSel = !this.suppressingSelectionUpdates && !this.currentSelection.eq(sel) && hasSelection(this.view) && !this.ignoreSelectionChange(sel);\n\n var from = -1, to = -1, typeOver = false, added = [];\n if (this.view.editable) {\n for (var i = 0; i < mutations.length; i++) {\n var result$1 = this.registerMutation(mutations[i], added);\n if (result$1) {\n from = from < 0 ? result$1.from : Math.min(result$1.from, from);\n to = to < 0 ? result$1.to : Math.max(result$1.to, to);\n if (result$1.typeOver) { typeOver = true; }\n }\n }\n }\n\n if (result.gecko && added.length > 1) {\n var brs = added.filter(function (n) { return n.nodeName == \"BR\"; });\n if (brs.length == 2) {\n var a = brs[0];\n var b = brs[1];\n if (a.parentNode && a.parentNode.parentNode == b.parentNode) { b.remove(); }\n else { a.remove(); }\n }\n }\n\n if (from > -1 || newSel) {\n if (from > -1) {\n this.view.docView.markDirty(from, to);\n checkCSS(this.view);\n }\n this.handleDOMChange(from, to, typeOver, added);\n if (this.view.docView.dirty) { this.view.updateState(this.view.state); }\n else if (!this.currentSelection.eq(sel)) { selectionToDOM(this.view); }\n }\n};\n\nDOMObserver.prototype.registerMutation = function registerMutation (mut, added) {\n // Ignore mutations inside nodes that were already noted as inserted\n if (added.indexOf(mut.target) > -1) { return null }\n var desc = this.view.docView.nearestDesc(mut.target);\n if (mut.type == \"attributes\" &&\n (desc == this.view.docView || mut.attributeName == \"contenteditable\" ||\n // Firefox sometimes fires spurious events for null/empty styles\n (mut.attributeName == \"style\" && !mut.oldValue && !mut.target.getAttribute(\"style\"))))\n { return null }\n if (!desc || desc.ignoreMutation(mut)) { return null }\n\n if (mut.type == \"childList\") {\n var prev = mut.previousSibling, next = mut.nextSibling;\n if (result.ie && result.ie_version <= 11 && mut.addedNodes.length) {\n // IE11 gives us incorrect next/prev siblings for some\n // insertions, so if there are added nodes, recompute those\n for (var i = 0; i < mut.addedNodes.length; i++) {\n var ref = mut.addedNodes[i];\n var previousSibling = ref.previousSibling;\n var nextSibling = ref.nextSibling;\n if (!previousSibling || Array.prototype.indexOf.call(mut.addedNodes, previousSibling) < 0) { prev = previousSibling; }\n if (!nextSibling || Array.prototype.indexOf.call(mut.addedNodes, nextSibling) < 0) { next = nextSibling; }\n }\n }\n var fromOffset = prev && prev.parentNode == mut.target\n ? domIndex(prev) + 1 : 0;\n var from = desc.localPosFromDOM(mut.target, fromOffset, -1);\n var toOffset = next && next.parentNode == mut.target\n ? domIndex(next) : mut.target.childNodes.length;\n for (var i$1 = 0; i$1 < mut.addedNodes.length; i$1++) { added.push(mut.addedNodes[i$1]); }\n var to = desc.localPosFromDOM(mut.target, toOffset, 1);\n return {from: from, to: to}\n } else if (mut.type == \"attributes\") {\n return {from: desc.posAtStart - desc.border, to: desc.posAtEnd + desc.border}\n } else { // \"characterData\"\n return {\n from: desc.posAtStart,\n to: desc.posAtEnd,\n // An event was generated for a text change that didn't change\n // any text. Mark the dom change to fall back to assuming the\n // selection was typed over with an identical value if it can't\n // find another change.\n typeOver: mut.target.nodeValue == mut.oldValue\n }\n }\n};\n\nvar cssChecked = false;\n\nfunction checkCSS(view) {\n if (cssChecked) { return }\n cssChecked = true;\n if (getComputedStyle(view.dom).whiteSpace == \"normal\")\n { console[\"warn\"](\"ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.\"); }\n}\n\n// A collection of DOM events that occur within the editor, and callback functions\n// to invoke when the event fires.\nvar handlers = {}, editHandlers = {};\n\nfunction initInput(view) {\n view.shiftKey = false;\n view.mouseDown = null;\n view.lastKeyCode = null;\n view.lastKeyCodeTime = 0;\n view.lastClick = {time: 0, x: 0, y: 0, type: \"\"};\n view.lastSelectionOrigin = null;\n view.lastSelectionTime = 0;\n\n view.lastIOSEnter = 0;\n view.lastIOSEnterFallbackTimeout = null;\n\n view.composing = false;\n view.composingTimeout = null;\n view.compositionNodes = [];\n view.compositionEndedAt = -2e8;\n\n view.domObserver = new DOMObserver(view, function (from, to, typeOver, added) { return readDOMChange(view, from, to, typeOver, added); });\n view.domObserver.start();\n // Used by hacks like the beforeinput handler to check whether anything happened in the DOM\n view.domChangeCount = 0;\n\n view.eventHandlers = Object.create(null);\n var loop = function ( event ) {\n var handler = handlers[event];\n view.dom.addEventListener(event, view.eventHandlers[event] = function (event) {\n if (eventBelongsToView(view, event) && !runCustomHandler(view, event) &&\n (view.editable || !(event.type in editHandlers)))\n { handler(view, event); }\n });\n };\n\n for (var event in handlers) loop( event );\n // On Safari, for reasons beyond my understanding, adding an input\n // event handler makes an issue where the composition vanishes when\n // you press enter go away.\n if (result.safari) { view.dom.addEventListener(\"input\", function () { return null; }); }\n\n ensureListeners(view);\n}\n\nfunction setSelectionOrigin(view, origin) {\n view.lastSelectionOrigin = origin;\n view.lastSelectionTime = Date.now();\n}\n\nfunction destroyInput(view) {\n view.domObserver.stop();\n for (var type in view.eventHandlers)\n { view.dom.removeEventListener(type, view.eventHandlers[type]); }\n clearTimeout(view.composingTimeout);\n clearTimeout(view.lastIOSEnterFallbackTimeout);\n}\n\nfunction ensureListeners(view) {\n view.someProp(\"handleDOMEvents\", function (currentHandlers) {\n for (var type in currentHandlers) { if (!view.eventHandlers[type])\n { view.dom.addEventListener(type, view.eventHandlers[type] = function (event) { return runCustomHandler(view, event); }); } }\n });\n}\n\nfunction runCustomHandler(view, event) {\n return view.someProp(\"handleDOMEvents\", function (handlers) {\n var handler = handlers[event.type];\n return handler ? handler(view, event) || event.defaultPrevented : false\n })\n}\n\nfunction eventBelongsToView(view, event) {\n if (!event.bubbles) { return true }\n if (event.defaultPrevented) { return false }\n for (var node = event.target; node != view.dom; node = node.parentNode)\n { if (!node || node.nodeType == 11 ||\n (node.pmViewDesc && node.pmViewDesc.stopEvent(event)))\n { return false } }\n return true\n}\n\nfunction dispatchEvent(view, event) {\n if (!runCustomHandler(view, event) && handlers[event.type] &&\n (view.editable || !(event.type in editHandlers)))\n { handlers[event.type](view, event); }\n}\n\neditHandlers.keydown = function (view, event) {\n view.shiftKey = event.keyCode == 16 || event.shiftKey;\n if (inOrNearComposition(view, event)) { return }\n view.domObserver.forceFlush();\n view.lastKeyCode = event.keyCode;\n view.lastKeyCodeTime = Date.now();\n // On iOS, if we preventDefault enter key presses, the virtual\n // keyboard gets confused. So the hack here is to set a flag that\n // makes the DOM change code recognize that what just happens should\n // be replaced by whatever the Enter key handlers do.\n if (result.ios && event.keyCode == 13 && !event.ctrlKey && !event.altKey && !event.metaKey) {\n var now = Date.now();\n view.lastIOSEnter = now;\n view.lastIOSEnterFallbackTimeout = setTimeout(function () {\n if (view.lastIOSEnter == now) {\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); });\n view.lastIOSEnter = 0;\n }\n }, 200);\n } else if (view.someProp(\"handleKeyDown\", function (f) { return f(view, event); }) || captureKeyDown(view, event)) {\n event.preventDefault();\n } else {\n setSelectionOrigin(view, \"key\");\n }\n};\n\neditHandlers.keyup = function (view, e) {\n if (e.keyCode == 16) { view.shiftKey = false; }\n};\n\neditHandlers.keypress = function (view, event) {\n if (inOrNearComposition(view, event) || !event.charCode ||\n event.ctrlKey && !event.altKey || result.mac && event.metaKey) { return }\n\n if (view.someProp(\"handleKeyPress\", function (f) { return f(view, event); })) {\n event.preventDefault();\n return\n }\n\n var sel = view.state.selection;\n if (!(sel instanceof TextSelection) || !sel.$from.sameParent(sel.$to)) {\n var text = String.fromCharCode(event.charCode);\n if (!view.someProp(\"handleTextInput\", function (f) { return f(view, sel.$from.pos, sel.$to.pos, text); }))\n { view.dispatch(view.state.tr.insertText(text).scrollIntoView()); }\n event.preventDefault();\n }\n};\n\nfunction eventCoords(event) { return {left: event.clientX, top: event.clientY} }\n\nfunction isNear(event, click) {\n var dx = click.x - event.clientX, dy = click.y - event.clientY;\n return dx * dx + dy * dy < 100\n}\n\nfunction runHandlerOnContext(view, propName, pos, inside, event) {\n if (inside == -1) { return false }\n var $pos = view.state.doc.resolve(inside);\n var loop = function ( i ) {\n if (view.someProp(propName, function (f) { return i > $pos.depth ? f(view, pos, $pos.nodeAfter, $pos.before(i), event, true)\n : f(view, pos, $pos.node(i), $pos.before(i), event, false); }))\n { return { v: true } }\n };\n\n for (var i = $pos.depth + 1; i > 0; i--) {\n var returned = loop( i );\n\n if ( returned ) return returned.v;\n }\n return false\n}\n\nfunction updateSelection(view, selection, origin) {\n if (!view.focused) { view.focus(); }\n var tr = view.state.tr.setSelection(selection);\n if (origin == \"pointer\") { tr.setMeta(\"pointer\", true); }\n view.dispatch(tr);\n}\n\nfunction selectClickedLeaf(view, inside) {\n if (inside == -1) { return false }\n var $pos = view.state.doc.resolve(inside), node = $pos.nodeAfter;\n if (node && node.isAtom && NodeSelection.isSelectable(node)) {\n updateSelection(view, new NodeSelection($pos), \"pointer\");\n return true\n }\n return false\n}\n\nfunction selectClickedNode(view, inside) {\n if (inside == -1) { return false }\n var sel = view.state.selection, selectedNode, selectAt;\n if (sel instanceof NodeSelection) { selectedNode = sel.node; }\n\n var $pos = view.state.doc.resolve(inside);\n for (var i = $pos.depth + 1; i > 0; i--) {\n var node = i > $pos.depth ? $pos.nodeAfter : $pos.node(i);\n if (NodeSelection.isSelectable(node)) {\n if (selectedNode && sel.$from.depth > 0 &&\n i >= sel.$from.depth && $pos.before(sel.$from.depth + 1) == sel.$from.pos)\n { selectAt = $pos.before(sel.$from.depth); }\n else\n { selectAt = $pos.before(i); }\n break\n }\n }\n\n if (selectAt != null) {\n updateSelection(view, NodeSelection.create(view.state.doc, selectAt), \"pointer\");\n return true\n } else {\n return false\n }\n}\n\nfunction handleSingleClick(view, pos, inside, event, selectNode) {\n return runHandlerOnContext(view, \"handleClickOn\", pos, inside, event) ||\n view.someProp(\"handleClick\", function (f) { return f(view, pos, event); }) ||\n (selectNode ? selectClickedNode(view, inside) : selectClickedLeaf(view, inside))\n}\n\nfunction handleDoubleClick(view, pos, inside, event) {\n return runHandlerOnContext(view, \"handleDoubleClickOn\", pos, inside, event) ||\n view.someProp(\"handleDoubleClick\", function (f) { return f(view, pos, event); })\n}\n\nfunction handleTripleClick(view, pos, inside, event) {\n return runHandlerOnContext(view, \"handleTripleClickOn\", pos, inside, event) ||\n view.someProp(\"handleTripleClick\", function (f) { return f(view, pos, event); }) ||\n defaultTripleClick(view, inside)\n}\n\nfunction defaultTripleClick(view, inside) {\n var doc = view.state.doc;\n if (inside == -1) {\n if (doc.inlineContent) {\n updateSelection(view, TextSelection.create(doc, 0, doc.content.size), \"pointer\");\n return true\n }\n return false\n }\n\n var $pos = doc.resolve(inside);\n for (var i = $pos.depth + 1; i > 0; i--) {\n var node = i > $pos.depth ? $pos.nodeAfter : $pos.node(i);\n var nodePos = $pos.before(i);\n if (node.inlineContent)\n { updateSelection(view, TextSelection.create(doc, nodePos + 1, nodePos + 1 + node.content.size), \"pointer\"); }\n else if (NodeSelection.isSelectable(node))\n { updateSelection(view, NodeSelection.create(doc, nodePos), \"pointer\"); }\n else\n { continue }\n return true\n }\n}\n\nfunction forceDOMFlush(view) {\n return endComposition(view)\n}\n\nvar selectNodeModifier = result.mac ? \"metaKey\" : \"ctrlKey\";\n\nhandlers.mousedown = function (view, event) {\n view.shiftKey = event.shiftKey;\n var flushed = forceDOMFlush(view);\n var now = Date.now(), type = \"singleClick\";\n if (now - view.lastClick.time < 500 && isNear(event, view.lastClick) && !event[selectNodeModifier]) {\n if (view.lastClick.type == \"singleClick\") { type = \"doubleClick\"; }\n else if (view.lastClick.type == \"doubleClick\") { type = \"tripleClick\"; }\n }\n view.lastClick = {time: now, x: event.clientX, y: event.clientY, type: type};\n\n var pos = view.posAtCoords(eventCoords(event));\n if (!pos) { return }\n\n if (type == \"singleClick\")\n { view.mouseDown = new MouseDown(view, pos, event, flushed); }\n else if ((type == \"doubleClick\" ? handleDoubleClick : handleTripleClick)(view, pos.pos, pos.inside, event))\n { event.preventDefault(); }\n else\n { setSelectionOrigin(view, \"pointer\"); }\n};\n\nvar MouseDown = function MouseDown(view, pos, event, flushed) {\n var this$1 = this;\n\n this.view = view;\n this.startDoc = view.state.doc;\n this.pos = pos;\n this.event = event;\n this.flushed = flushed;\n this.selectNode = event[selectNodeModifier];\n this.allowDefault = event.shiftKey;\n\n var targetNode, targetPos;\n if (pos.inside > -1) {\n targetNode = view.state.doc.nodeAt(pos.inside);\n targetPos = pos.inside;\n } else {\n var $pos = view.state.doc.resolve(pos.pos);\n targetNode = $pos.parent;\n targetPos = $pos.depth ? $pos.before() : 0;\n }\n\n this.mightDrag = null;\n\n var target = flushed ? null : event.target;\n var targetDesc = target ? view.docView.nearestDesc(target, true) : null;\n this.target = targetDesc ? targetDesc.dom : null;\n\n if (targetNode.type.spec.draggable && targetNode.type.spec.selectable !== false ||\n view.state.selection instanceof NodeSelection && targetPos == view.state.selection.from)\n { this.mightDrag = {node: targetNode,\n pos: targetPos,\n addAttr: this.target && !this.target.draggable,\n setUneditable: this.target && result.gecko && !this.target.hasAttribute(\"contentEditable\")}; }\n\n if (this.target && this.mightDrag && (this.mightDrag.addAttr || this.mightDrag.setUneditable)) {\n this.view.domObserver.stop();\n if (this.mightDrag.addAttr) { this.target.draggable = true; }\n if (this.mightDrag.setUneditable)\n { setTimeout(function () { return this$1.target.setAttribute(\"contentEditable\", \"false\"); }, 20); }\n this.view.domObserver.start();\n }\n\n view.root.addEventListener(\"mouseup\", this.up = this.up.bind(this));\n view.root.addEventListener(\"mousemove\", this.move = this.move.bind(this));\n setSelectionOrigin(view, \"pointer\");\n};\n\nMouseDown.prototype.done = function done () {\n this.view.root.removeEventListener(\"mouseup\", this.up);\n this.view.root.removeEventListener(\"mousemove\", this.move);\n if (this.mightDrag && this.target) {\n this.view.domObserver.stop();\n if (this.mightDrag.addAttr) { this.target.removeAttribute(\"draggable\"); }\n if (this.mightDrag.setUneditable) { this.target.removeAttribute(\"contentEditable\"); }\n this.view.domObserver.start();\n }\n this.view.mouseDown = null;\n};\n\nMouseDown.prototype.up = function up (event) {\n this.done();\n\n if (!this.view.dom.contains(event.target.nodeType == 3 ? event.target.parentNode : event.target))\n { return }\n\n var pos = this.pos;\n if (this.view.state.doc != this.startDoc) { pos = this.view.posAtCoords(eventCoords(event)); }\n\n if (this.allowDefault || !pos) {\n setSelectionOrigin(this.view, \"pointer\");\n } else if (handleSingleClick(this.view, pos.pos, pos.inside, event, this.selectNode)) {\n event.preventDefault();\n } else if (this.flushed ||\n // Safari ignores clicks on draggable elements\n (result.safari && this.mightDrag && !this.mightDrag.node.isAtom) ||\n // Chrome will sometimes treat a node selection as a\n // cursor, but still report that the node is selected\n // when asked through getSelection. You'll then get a\n // situation where clicking at the point where that\n // (hidden) cursor is doesn't change the selection, and\n // thus doesn't get a reaction from ProseMirror. This\n // works around that.\n (result.chrome && !(this.view.state.selection instanceof TextSelection) &&\n (pos.pos == this.view.state.selection.from || pos.pos == this.view.state.selection.to))) {\n updateSelection(this.view, Selection.near(this.view.state.doc.resolve(pos.pos)), \"pointer\");\n event.preventDefault();\n } else {\n setSelectionOrigin(this.view, \"pointer\");\n }\n};\n\nMouseDown.prototype.move = function move (event) {\n if (!this.allowDefault && (Math.abs(this.event.x - event.clientX) > 4 ||\n Math.abs(this.event.y - event.clientY) > 4))\n { this.allowDefault = true; }\n setSelectionOrigin(this.view, \"pointer\");\n};\n\nhandlers.touchdown = function (view) {\n forceDOMFlush(view);\n setSelectionOrigin(view, \"pointer\");\n};\n\nhandlers.contextmenu = function (view) { return forceDOMFlush(view); };\n\nfunction inOrNearComposition(view, event) {\n if (view.composing) { return true }\n // See https://www.stum.de/2016/06/24/handling-ime-events-in-javascript/.\n // On Japanese input method editors (IMEs), the Enter key is used to confirm character\n // selection. On Safari, when Enter is pressed, compositionend and keydown events are\n // emitted. The keydown event triggers newline insertion, which we don't want.\n // This method returns true if the keydown event should be ignored.\n // We only ignore it once, as pressing Enter a second time *should* insert a newline.\n // Furthermore, the keydown event timestamp must be close to the compositionEndedAt timestamp.\n // This guards against the case where compositionend is triggered without the keyboard\n // (e.g. character confirmation may be done with the mouse), and keydown is triggered\n // afterwards- we wouldn't want to ignore the keydown event in this case.\n if (result.safari && Math.abs(event.timeStamp - view.compositionEndedAt) < 500) {\n view.compositionEndedAt = -2e8;\n return true\n }\n return false\n}\n\n// Drop active composition after 5 seconds of inactivity on Android\nvar timeoutComposition = result.android ? 5000 : -1;\n\neditHandlers.compositionstart = editHandlers.compositionupdate = function (view) {\n if (!view.composing) {\n view.domObserver.flush();\n var state = view.state;\n var $pos = state.selection.$from;\n if (state.selection.empty &&\n (state.storedMarks || (!$pos.textOffset && $pos.parentOffset && $pos.nodeBefore.marks.some(function (m) { return m.type.spec.inclusive === false; })))) {\n // Need to wrap the cursor in mark nodes different from the ones in the DOM context\n view.markCursor = view.state.storedMarks || $pos.marks();\n endComposition(view, true);\n view.markCursor = null;\n } else {\n endComposition(view);\n // In firefox, if the cursor is after but outside a marked node,\n // the inserted text won't inherit the marks. So this moves it\n // inside if necessary.\n if (result.gecko && state.selection.empty && $pos.parentOffset && !$pos.textOffset && $pos.nodeBefore.marks.length) {\n var sel = view.root.getSelection();\n for (var node = sel.focusNode, offset = sel.focusOffset; node && node.nodeType == 1 && offset != 0;) {\n var before = offset < 0 ? node.lastChild : node.childNodes[offset - 1];\n if (!before) { break }\n if (before.nodeType == 3) {\n sel.collapse(before, before.nodeValue.length);\n break\n } else {\n node = before;\n offset = -1;\n }\n }\n }\n }\n view.composing = true;\n }\n scheduleComposeEnd(view, timeoutComposition);\n};\n\neditHandlers.compositionend = function (view, event) {\n if (view.composing) {\n view.composing = false;\n view.compositionEndedAt = event.timeStamp;\n scheduleComposeEnd(view, 20);\n }\n};\n\nfunction scheduleComposeEnd(view, delay) {\n clearTimeout(view.composingTimeout);\n if (delay > -1) { view.composingTimeout = setTimeout(function () { return endComposition(view); }, delay); }\n}\n\nfunction clearComposition(view) {\n view.composing = false;\n while (view.compositionNodes.length > 0) { view.compositionNodes.pop().markParentsDirty(); }\n}\n\nfunction endComposition(view, forceUpdate) {\n view.domObserver.forceFlush();\n clearComposition(view);\n if (forceUpdate || view.docView.dirty) {\n var sel = selectionFromDOM(view);\n if (sel && !sel.eq(view.state.selection)) { view.dispatch(view.state.tr.setSelection(sel)); }\n else { view.updateState(view.state); }\n return true\n }\n return false\n}\n\nfunction captureCopy(view, dom) {\n // The extra wrapper is somehow necessary on IE/Edge to prevent the\n // content from being mangled when it is put onto the clipboard\n if (!view.dom.parentNode) { return }\n var wrap = view.dom.parentNode.appendChild(document.createElement(\"div\"));\n wrap.appendChild(dom);\n wrap.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n var sel = getSelection(), range = document.createRange();\n range.selectNodeContents(dom);\n // Done because IE will fire a selectionchange moving the selection\n // to its start when removeAllRanges is called and the editor still\n // has focus (which will mess up the editor's selection state).\n view.dom.blur();\n sel.removeAllRanges();\n sel.addRange(range);\n setTimeout(function () {\n if (wrap.parentNode) { wrap.parentNode.removeChild(wrap); }\n view.focus();\n }, 50);\n}\n\n// This is very crude, but unfortunately both these browsers _pretend_\n// that they have a clipboard API—all the objects and methods are\n// there, they just don't work, and they are hard to test.\nvar brokenClipboardAPI = (result.ie && result.ie_version < 15) ||\n (result.ios && result.webkit_version < 604);\n\nhandlers.copy = editHandlers.cut = function (view, e) {\n var sel = view.state.selection, cut = e.type == \"cut\";\n if (sel.empty) { return }\n\n // IE and Edge's clipboard interface is completely broken\n var data = brokenClipboardAPI ? null : e.clipboardData;\n var slice = sel.content();\n var ref = serializeForClipboard(view, slice);\n var dom = ref.dom;\n var text = ref.text;\n if (data) {\n e.preventDefault();\n data.clearData();\n data.setData(\"text/html\", dom.innerHTML);\n data.setData(\"text/plain\", text);\n } else {\n captureCopy(view, dom);\n }\n if (cut) { view.dispatch(view.state.tr.deleteSelection().scrollIntoView().setMeta(\"uiEvent\", \"cut\")); }\n};\n\nfunction sliceSingleNode(slice) {\n return slice.openStart == 0 && slice.openEnd == 0 && slice.content.childCount == 1 ? slice.content.firstChild : null\n}\n\nfunction capturePaste(view, e) {\n if (!view.dom.parentNode) { return }\n var plainText = view.shiftKey || view.state.selection.$from.parent.type.spec.code;\n var target = view.dom.parentNode.appendChild(document.createElement(plainText ? \"textarea\" : \"div\"));\n if (!plainText) { target.contentEditable = \"true\"; }\n target.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n target.focus();\n setTimeout(function () {\n view.focus();\n if (target.parentNode) { target.parentNode.removeChild(target); }\n if (plainText) { doPaste(view, target.value, null, e); }\n else { doPaste(view, target.textContent, target.innerHTML, e); }\n }, 50);\n}\n\nfunction doPaste(view, text, html, e) {\n var slice = parseFromClipboard(view, text, html, view.shiftKey, view.state.selection.$from);\n if (view.someProp(\"handlePaste\", function (f) { return f(view, e, slice || Slice.empty); }) || !slice) { return }\n\n var singleNode = sliceSingleNode(slice);\n var tr = singleNode ? view.state.tr.replaceSelectionWith(singleNode, view.shiftKey) : view.state.tr.replaceSelection(slice);\n view.dispatch(tr.scrollIntoView().setMeta(\"paste\", true).setMeta(\"uiEvent\", \"paste\"));\n}\n\neditHandlers.paste = function (view, e) {\n var data = brokenClipboardAPI ? null : e.clipboardData;\n var html = data && data.getData(\"text/html\"), text = data && data.getData(\"text/plain\");\n if (data && (html || text || data.files.length)) {\n doPaste(view, text, html, e);\n e.preventDefault();\n } else {\n capturePaste(view, e);\n }\n};\n\nvar Dragging = function Dragging(slice, move) {\n this.slice = slice;\n this.move = move;\n};\n\nvar dragCopyModifier = result.mac ? \"altKey\" : \"ctrlKey\";\n\nhandlers.dragstart = function (view, e) {\n var mouseDown = view.mouseDown;\n if (mouseDown) { mouseDown.done(); }\n if (!e.dataTransfer) { return }\n\n var sel = view.state.selection;\n var pos = sel.empty ? null : view.posAtCoords(eventCoords(e));\n if (pos && pos.pos >= sel.from && pos.pos <= (sel instanceof NodeSelection ? sel.to - 1: sel.to)) ; else if (mouseDown && mouseDown.mightDrag) {\n view.dispatch(view.state.tr.setSelection(NodeSelection.create(view.state.doc, mouseDown.mightDrag.pos)));\n } else if (e.target && e.target.nodeType == 1) {\n var desc = view.docView.nearestDesc(e.target, true);\n if (!desc || !desc.node.type.spec.draggable || desc == view.docView) { return }\n view.dispatch(view.state.tr.setSelection(NodeSelection.create(view.state.doc, desc.posBefore)));\n }\n var slice = view.state.selection.content();\n var ref = serializeForClipboard(view, slice);\n var dom = ref.dom;\n var text = ref.text;\n e.dataTransfer.clearData();\n e.dataTransfer.setData(brokenClipboardAPI ? \"Text\" : \"text/html\", dom.innerHTML);\n if (!brokenClipboardAPI) { e.dataTransfer.setData(\"text/plain\", text); }\n view.dragging = new Dragging(slice, !e[dragCopyModifier]);\n};\n\nhandlers.dragend = function (view) {\n window.setTimeout(function () { return view.dragging = null; }, 50);\n};\n\neditHandlers.dragover = editHandlers.dragenter = function (_, e) { return e.preventDefault(); };\n\neditHandlers.drop = function (view, e) {\n var dragging = view.dragging;\n view.dragging = null;\n\n if (!e.dataTransfer) { return }\n\n var eventPos = view.posAtCoords(eventCoords(e));\n if (!eventPos) { return }\n var $mouse = view.state.doc.resolve(eventPos.pos);\n if (!$mouse) { return }\n var slice = dragging && dragging.slice ||\n parseFromClipboard(view, e.dataTransfer.getData(brokenClipboardAPI ? \"Text\" : \"text/plain\"),\n brokenClipboardAPI ? null : e.dataTransfer.getData(\"text/html\"), false, $mouse);\n var move = dragging && !e[dragCopyModifier];\n if (view.someProp(\"handleDrop\", function (f) { return f(view, e, slice || Slice.empty, move); })) {\n e.preventDefault();\n return\n }\n if (!slice) { return }\n\n e.preventDefault();\n var insertPos = slice ? dropPoint(view.state.doc, $mouse.pos, slice) : $mouse.pos;\n if (insertPos == null) { insertPos = $mouse.pos; }\n\n var tr = view.state.tr;\n if (move) { tr.deleteSelection(); }\n\n var pos = tr.mapping.map(insertPos);\n var isNode = slice.openStart == 0 && slice.openEnd == 0 && slice.content.childCount == 1;\n var beforeInsert = tr.doc;\n if (isNode)\n { tr.replaceRangeWith(pos, pos, slice.content.firstChild); }\n else\n { tr.replaceRange(pos, pos, slice); }\n if (tr.doc.eq(beforeInsert)) { return }\n\n var $pos = tr.doc.resolve(pos);\n if (isNode && NodeSelection.isSelectable(slice.content.firstChild) &&\n $pos.nodeAfter && $pos.nodeAfter.sameMarkup(slice.content.firstChild)) {\n tr.setSelection(new NodeSelection($pos));\n } else {\n var end = tr.mapping.map(insertPos);\n tr.mapping.maps[tr.mapping.maps.length - 1].forEach(function (_from, _to, _newFrom, newTo) { return end = newTo; });\n tr.setSelection(selectionBetween(view, $pos, tr.doc.resolve(end)));\n }\n view.focus();\n view.dispatch(tr.setMeta(\"uiEvent\", \"drop\"));\n};\n\nhandlers.focus = function (view) {\n if (!view.focused) {\n view.domObserver.stop();\n view.dom.classList.add(\"ProseMirror-focused\");\n view.domObserver.start();\n view.focused = true;\n setTimeout(function () {\n if (view.docView && view.hasFocus() && !view.domObserver.currentSelection.eq(view.root.getSelection()))\n { selectionToDOM(view); }\n }, 20);\n }\n};\n\nhandlers.blur = function (view) {\n if (view.focused) {\n view.domObserver.stop();\n view.dom.classList.remove(\"ProseMirror-focused\");\n view.domObserver.start();\n view.domObserver.currentSelection.set({});\n view.focused = false;\n }\n};\n\nhandlers.beforeinput = function (view, event) {\n // We should probably do more with beforeinput events, but support\n // is so spotty that I'm still waiting to see where they are going.\n\n // Very specific hack to deal with backspace sometimes failing on\n // Chrome Android when after an uneditable node.\n if (result.chrome && result.android && event.inputType == \"deleteContentBackward\") {\n var domChangeCount = view.domChangeCount;\n setTimeout(function () {\n if (view.domChangeCount != domChangeCount) { return } // Event already had some effect\n // This bug tends to close the virtual keyboard, so we refocus\n view.dom.blur();\n view.focus();\n if (view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(8, \"Backspace\")); })) { return }\n var ref = view.state.selection;\n var $cursor = ref.$cursor;\n // Crude approximation of backspace behavior when no command handled it\n if ($cursor && $cursor.pos > 0) { view.dispatch(view.state.tr.delete($cursor.pos - 1, $cursor.pos).scrollIntoView()); }\n }, 50);\n }\n};\n\n// Make sure all handlers get registered\nfor (var prop in editHandlers) { handlers[prop] = editHandlers[prop]; }\n\nfunction compareObjs(a, b) {\n if (a == b) { return true }\n for (var p in a) { if (a[p] !== b[p]) { return false } }\n for (var p$1 in b) { if (!(p$1 in a)) { return false } }\n return true\n}\n\nvar WidgetType = function WidgetType(toDOM, spec) {\n this.spec = spec || noSpec;\n this.side = this.spec.side || 0;\n this.toDOM = toDOM;\n};\n\nWidgetType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var ref = mapping.mapResult(span.from + oldOffset, this.side < 0 ? -1 : 1);\n var pos = ref.pos;\n var deleted = ref.deleted;\n return deleted ? null : new Decoration(pos - offset, pos - offset, this)\n};\n\nWidgetType.prototype.valid = function valid () { return true };\n\nWidgetType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof WidgetType &&\n (this.spec.key && this.spec.key == other.spec.key ||\n this.toDOM == other.toDOM && compareObjs(this.spec, other.spec)))\n};\n\nvar InlineType = function InlineType(attrs, spec) {\n this.spec = spec || noSpec;\n this.attrs = attrs;\n};\n\nInlineType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var from = mapping.map(span.from + oldOffset, this.spec.inclusiveStart ? -1 : 1) - offset;\n var to = mapping.map(span.to + oldOffset, this.spec.inclusiveEnd ? 1 : -1) - offset;\n return from >= to ? null : new Decoration(from, to, this)\n};\n\nInlineType.prototype.valid = function valid (_, span) { return span.from < span.to };\n\nInlineType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof InlineType && compareObjs(this.attrs, other.attrs) &&\n compareObjs(this.spec, other.spec))\n};\n\nInlineType.is = function is (span) { return span.type instanceof InlineType };\n\nvar NodeType = function NodeType(attrs, spec) {\n this.spec = spec || noSpec;\n this.attrs = attrs;\n};\n\nNodeType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var from = mapping.mapResult(span.from + oldOffset, 1);\n if (from.deleted) { return null }\n var to = mapping.mapResult(span.to + oldOffset, -1);\n if (to.deleted || to.pos <= from.pos) { return null }\n return new Decoration(from.pos - offset, to.pos - offset, this)\n};\n\nNodeType.prototype.valid = function valid (node, span) {\n var ref = node.content.findIndex(span.from);\n var index = ref.index;\n var offset = ref.offset;\n return offset == span.from && offset + node.child(index).nodeSize == span.to\n};\n\nNodeType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof NodeType && compareObjs(this.attrs, other.attrs) &&\n compareObjs(this.spec, other.spec))\n};\n\n// ::- Decoration objects can be provided to the view through the\n// [`decorations` prop](#view.EditorProps.decorations). They come in\n// several variants—see the static members of this class for details.\nvar Decoration = function Decoration(from, to, type) {\n // :: number\n // The start position of the decoration.\n this.from = from;\n // :: number\n // The end position. Will be the same as `from` for [widget\n // decorations](#view.Decoration^widget).\n this.to = to;\n this.type = type;\n};\n\nvar prototypeAccessors$1 = { spec: { configurable: true },inline: { configurable: true } };\n\nDecoration.prototype.copy = function copy (from, to) {\n return new Decoration(from, to, this.type)\n};\n\nDecoration.prototype.eq = function eq (other, offset) {\n if ( offset === void 0 ) offset = 0;\n\n return this.type.eq(other.type) && this.from + offset == other.from && this.to + offset == other.to\n};\n\nDecoration.prototype.map = function map (mapping, offset, oldOffset) {\n return this.type.map(mapping, this, offset, oldOffset)\n};\n\n// :: (number, union<(view: EditorView, getPos: () → number) → dom.Node, dom.Node>, ?Object) → Decoration\n// Creates a widget decoration, which is a DOM node that's shown in\n// the document at the given position. It is recommended that you\n// delay rendering the widget by passing a function that will be\n// called when the widget is actually drawn in a view, but you can\n// also directly pass a DOM node. `getPos` can be used to find the\n// widget's current document position.\n//\n// spec::- These options are supported:\n//\n// side:: ?number\n// Controls which side of the document position this widget is\n// associated with. When negative, it is drawn before a cursor\n// at its position, and content inserted at that position ends\n// up after the widget. When zero (the default) or positive, the\n// widget is drawn after the cursor and content inserted there\n// ends up before the widget.\n//\n// When there are multiple widgets at a given position, their\n// `side` values determine the order in which they appear. Those\n// with lower values appear first. The ordering of widgets with\n// the same `side` value is unspecified.\n//\n// When `marks` is null, `side` also determines the marks that\n// the widget is wrapped in—those of the node before when\n// negative, those of the node after when positive.\n//\n// marks:: ?[Mark]\n// The precise set of marks to draw around the widget.\n//\n// stopEvent:: ?(event: dom.Event) → bool\n// Can be used to control which DOM events, when they bubble out\n// of this widget, the editor view should ignore.\n//\n// ignoreSelection:: ?bool\n// When set (defaults to false), selection changes inside the\n// widget are ignored, and don't cause ProseMirror to try and\n// re-sync the selection with its selection state.\n//\n// key:: ?string\n// When comparing decorations of this type (in order to decide\n// whether it needs to be redrawn), ProseMirror will by default\n// compare the widget DOM node by identity. If you pass a key,\n// that key will be compared instead, which can be useful when\n// you generate decorations on the fly and don't want to store\n// and reuse DOM nodes. Make sure that any widgets with the same\n// key are interchangeable—if widgets differ in, for example,\n// the behavior of some event handler, they should get\n// different keys.\nDecoration.widget = function widget (pos, toDOM, spec) {\n return new Decoration(pos, pos, new WidgetType(toDOM, spec))\n};\n\n// :: (number, number, DecorationAttrs, ?Object) → Decoration\n// Creates an inline decoration, which adds the given attributes to\n// each inline node between `from` and `to`.\n//\n// spec::- These options are recognized:\n//\n// inclusiveStart:: ?bool\n// Determines how the left side of the decoration is\n// [mapped](#transform.Position_Mapping) when content is\n// inserted directly at that position. By default, the decoration\n// won't include the new content, but you can set this to `true`\n// to make it inclusive.\n//\n// inclusiveEnd:: ?bool\n// Determines how the right side of the decoration is mapped.\n// See\n// [`inclusiveStart`](#view.Decoration^inline^spec.inclusiveStart).\nDecoration.inline = function inline (from, to, attrs, spec) {\n return new Decoration(from, to, new InlineType(attrs, spec))\n};\n\n// :: (number, number, DecorationAttrs, ?Object) → Decoration\n// Creates a node decoration. `from` and `to` should point precisely\n// before and after a node in the document. That node, and only that\n// node, will receive the given attributes.\n//\n// spec::-\n//\n// Optional information to store with the decoration. It\n// is also used when comparing decorators for equality.\nDecoration.node = function node (from, to, attrs, spec) {\n return new Decoration(from, to, new NodeType(attrs, spec))\n};\n\n// :: Object\n// The spec provided when creating this decoration. Can be useful\n// if you've stored extra information in that object.\nprototypeAccessors$1.spec.get = function () { return this.type.spec };\n\nprototypeAccessors$1.inline.get = function () { return this.type instanceof InlineType };\n\nObject.defineProperties( Decoration.prototype, prototypeAccessors$1 );\n\n// DecorationAttrs:: interface\n// A set of attributes to add to a decorated node. Most properties\n// simply directly correspond to DOM attributes of the same name,\n// which will be set to the property's value. These are exceptions:\n//\n// class:: ?string\n// A CSS class name or a space-separated set of class names to be\n// _added_ to the classes that the node already had.\n//\n// style:: ?string\n// A string of CSS to be _added_ to the node's existing `style` property.\n//\n// nodeName:: ?string\n// When non-null, the target node is wrapped in a DOM element of\n// this type (and the other attributes are applied to this element).\n\nvar none = [], noSpec = {};\n\n// ::- A collection of [decorations](#view.Decoration), organized in\n// such a way that the drawing algorithm can efficiently use and\n// compare them. This is a persistent data structure—it is not\n// modified, updates create a new value.\nvar DecorationSet = function DecorationSet(local, children) {\n this.local = local && local.length ? local : none;\n this.children = children && children.length ? children : none;\n};\n\n// :: (Node, [Decoration]) → DecorationSet\n// Create a set of decorations, using the structure of the given\n// document.\nDecorationSet.create = function create (doc, decorations) {\n return decorations.length ? buildTree(decorations, doc, 0, noSpec) : empty\n};\n\n// :: (?number, ?number, ?(spec: Object) → bool) → [Decoration]\n// Find all decorations in this set which touch the given range\n// (including decorations that start or end directly at the\n// boundaries) and match the given predicate on their spec. When\n// `start` and `end` are omitted, all decorations in the set are\n// considered. When `predicate` isn't given, all decorations are\n// assumed to match.\nDecorationSet.prototype.find = function find (start, end, predicate) {\n var result = [];\n this.findInner(start == null ? 0 : start, end == null ? 1e9 : end, result, 0, predicate);\n return result\n};\n\nDecorationSet.prototype.findInner = function findInner (start, end, result, offset, predicate) {\n for (var i = 0; i < this.local.length; i++) {\n var span = this.local[i];\n if (span.from <= end && span.to >= start && (!predicate || predicate(span.spec)))\n { result.push(span.copy(span.from + offset, span.to + offset)); }\n }\n for (var i$1 = 0; i$1 < this.children.length; i$1 += 3) {\n if (this.children[i$1] < end && this.children[i$1 + 1] > start) {\n var childOff = this.children[i$1] + 1;\n this.children[i$1 + 2].findInner(start - childOff, end - childOff, result, offset + childOff, predicate);\n }\n }\n};\n\n// :: (Mapping, Node, ?Object) → DecorationSet\n// Map the set of decorations in response to a change in the\n// document.\n//\n// options::- An optional set of options.\n//\n// onRemove:: ?(decorationSpec: Object)\n// When given, this function will be called for each decoration\n// that gets dropped as a result of the mapping, passing the\n// spec of that decoration.\nDecorationSet.prototype.map = function map (mapping, doc, options) {\n if (this == empty || mapping.maps.length == 0) { return this }\n return this.mapInner(mapping, doc, 0, 0, options || noSpec)\n};\n\nDecorationSet.prototype.mapInner = function mapInner (mapping, node, offset, oldOffset, options) {\n var newLocal;\n for (var i = 0; i < this.local.length; i++) {\n var mapped = this.local[i].map(mapping, offset, oldOffset);\n if (mapped && mapped.type.valid(node, mapped)) { (newLocal || (newLocal = [])).push(mapped); }\n else if (options.onRemove) { options.onRemove(this.local[i].spec); }\n }\n\n if (this.children.length)\n { return mapChildren(this.children, newLocal, mapping, node, offset, oldOffset, options) }\n else\n { return newLocal ? new DecorationSet(newLocal.sort(byPos)) : empty }\n};\n\n// :: (Node, [Decoration]) → DecorationSet\n// Add the given array of decorations to the ones in the set,\n// producing a new set. Needs access to the current document to\n// create the appropriate tree structure.\nDecorationSet.prototype.add = function add (doc, decorations) {\n if (!decorations.length) { return this }\n if (this == empty) { return DecorationSet.create(doc, decorations) }\n return this.addInner(doc, decorations, 0)\n};\n\nDecorationSet.prototype.addInner = function addInner (doc, decorations, offset) {\n var this$1 = this;\n\n var children, childIndex = 0;\n doc.forEach(function (childNode, childOffset) {\n var baseOffset = childOffset + offset, found;\n if (!(found = takeSpansForNode(decorations, childNode, baseOffset))) { return }\n\n if (!children) { children = this$1.children.slice(); }\n while (childIndex < children.length && children[childIndex] < childOffset) { childIndex += 3; }\n if (children[childIndex] == childOffset)\n { children[childIndex + 2] = children[childIndex + 2].addInner(childNode, found, baseOffset + 1); }\n else\n { children.splice(childIndex, 0, childOffset, childOffset + childNode.nodeSize, buildTree(found, childNode, baseOffset + 1, noSpec)); }\n childIndex += 3;\n });\n\n var local = moveSpans(childIndex ? withoutNulls(decorations) : decorations, -offset);\n return new DecorationSet(local.length ? this.local.concat(local).sort(byPos) : this.local,\n children || this.children)\n};\n\n// :: ([Decoration]) → DecorationSet\n// Create a new set that contains the decorations in this set, minus\n// the ones in the given array.\nDecorationSet.prototype.remove = function remove (decorations) {\n if (decorations.length == 0 || this == empty) { return this }\n return this.removeInner(decorations, 0)\n};\n\nDecorationSet.prototype.removeInner = function removeInner (decorations, offset) {\n var children = this.children, local = this.local;\n for (var i = 0; i < children.length; i += 3) {\n var found = (void 0), from = children[i] + offset, to = children[i + 1] + offset;\n for (var j = 0, span = (void 0); j < decorations.length; j++) { if (span = decorations[j]) {\n if (span.from > from && span.to < to) {\n decorations[j] = null\n ;(found || (found = [])).push(span);\n }\n } }\n if (!found) { continue }\n if (children == this.children) { children = this.children.slice(); }\n var removed = children[i + 2].removeInner(found, from + 1);\n if (removed != empty) {\n children[i + 2] = removed;\n } else {\n children.splice(i, 3);\n i -= 3;\n }\n }\n if (local.length) { for (var i$1 = 0, span$1 = (void 0); i$1 < decorations.length; i$1++) { if (span$1 = decorations[i$1]) {\n for (var j$1 = 0; j$1 < local.length; j$1++) { if (local[j$1].eq(span$1, offset)) {\n if (local == this.local) { local = this.local.slice(); }\n local.splice(j$1--, 1);\n } }\n } } }\n if (children == this.children && local == this.local) { return this }\n return local.length || children.length ? new DecorationSet(local, children) : empty\n};\n\nDecorationSet.prototype.forChild = function forChild (offset, node) {\n if (this == empty) { return this }\n if (node.isLeaf) { return DecorationSet.empty }\n\n var child, local;\n for (var i = 0; i < this.children.length; i += 3) { if (this.children[i] >= offset) {\n if (this.children[i] == offset) { child = this.children[i + 2]; }\n break\n } }\n var start = offset + 1, end = start + node.content.size;\n for (var i$1 = 0; i$1 < this.local.length; i$1++) {\n var dec = this.local[i$1];\n if (dec.from < end && dec.to > start && (dec.type instanceof InlineType)) {\n var from = Math.max(start, dec.from) - start, to = Math.min(end, dec.to) - start;\n if (from < to) { (local || (local = [])).push(dec.copy(from, to)); }\n }\n }\n if (local) {\n var localSet = new DecorationSet(local.sort(byPos));\n return child ? new DecorationGroup([localSet, child]) : localSet\n }\n return child || empty\n};\n\nDecorationSet.prototype.eq = function eq (other) {\n if (this == other) { return true }\n if (!(other instanceof DecorationSet) ||\n this.local.length != other.local.length ||\n this.children.length != other.children.length) { return false }\n for (var i = 0; i < this.local.length; i++)\n { if (!this.local[i].eq(other.local[i])) { return false } }\n for (var i$1 = 0; i$1 < this.children.length; i$1 += 3)\n { if (this.children[i$1] != other.children[i$1] ||\n this.children[i$1 + 1] != other.children[i$1 + 1] ||\n !this.children[i$1 + 2].eq(other.children[i$1 + 2])) { return false } }\n return true\n};\n\nDecorationSet.prototype.locals = function locals (node) {\n return removeOverlap(this.localsInner(node))\n};\n\nDecorationSet.prototype.localsInner = function localsInner (node) {\n if (this == empty) { return none }\n if (node.inlineContent || !this.local.some(InlineType.is)) { return this.local }\n var result = [];\n for (var i = 0; i < this.local.length; i++) {\n if (!(this.local[i].type instanceof InlineType))\n { result.push(this.local[i]); }\n }\n return result\n};\n\nvar empty = new DecorationSet();\n\n// :: DecorationSet\n// The empty set of decorations.\nDecorationSet.empty = empty;\n\nDecorationSet.removeOverlap = removeOverlap;\n\n// :- An abstraction that allows the code dealing with decorations to\n// treat multiple DecorationSet objects as if it were a single object\n// with (a subset of) the same interface.\nvar DecorationGroup = function DecorationGroup(members) {\n this.members = members;\n};\n\nDecorationGroup.prototype.forChild = function forChild (offset, child) {\n if (child.isLeaf) { return DecorationSet.empty }\n var found = [];\n for (var i = 0; i < this.members.length; i++) {\n var result = this.members[i].forChild(offset, child);\n if (result == empty) { continue }\n if (result instanceof DecorationGroup) { found = found.concat(result.members); }\n else { found.push(result); }\n }\n return DecorationGroup.from(found)\n};\n\nDecorationGroup.prototype.eq = function eq (other) {\n if (!(other instanceof DecorationGroup) ||\n other.members.length != this.members.length) { return false }\n for (var i = 0; i < this.members.length; i++)\n { if (!this.members[i].eq(other.members[i])) { return false } }\n return true\n};\n\nDecorationGroup.prototype.locals = function locals (node) {\n var result, sorted = true;\n for (var i = 0; i < this.members.length; i++) {\n var locals = this.members[i].localsInner(node);\n if (!locals.length) { continue }\n if (!result) {\n result = locals;\n } else {\n if (sorted) {\n result = result.slice();\n sorted = false;\n }\n for (var j = 0; j < locals.length; j++) { result.push(locals[j]); }\n }\n }\n return result ? removeOverlap(sorted ? result : result.sort(byPos)) : none\n};\n\n// : ([DecorationSet]) → union<DecorationSet, DecorationGroup>\n// Create a group for the given array of decoration sets, or return\n// a single set when possible.\nDecorationGroup.from = function from (members) {\n switch (members.length) {\n case 0: return empty\n case 1: return members[0]\n default: return new DecorationGroup(members)\n }\n};\n\nfunction mapChildren(oldChildren, newLocal, mapping, node, offset, oldOffset, options) {\n var children = oldChildren.slice();\n\n // Mark the children that are directly touched by changes, and\n // move those that are after the changes.\n var shift = function (oldStart, oldEnd, newStart, newEnd) {\n for (var i = 0; i < children.length; i += 3) {\n var end = children[i + 1], dSize = (void 0);\n if (end == -1 || oldStart > end + oldOffset) { continue }\n if (oldEnd >= children[i] + oldOffset) {\n children[i + 1] = -1;\n } else if (newStart >= offset && (dSize = (newEnd - newStart) - (oldEnd - oldStart))) {\n children[i] += dSize;\n children[i + 1] += dSize;\n }\n }\n };\n for (var i = 0; i < mapping.maps.length; i++) { mapping.maps[i].forEach(shift); }\n\n // Find the child nodes that still correspond to a single node,\n // recursively call mapInner on them and update their positions.\n var mustRebuild = false;\n for (var i$1 = 0; i$1 < children.length; i$1 += 3) { if (children[i$1 + 1] == -1) { // Touched nodes\n var from = mapping.map(oldChildren[i$1] + oldOffset), fromLocal = from - offset;\n if (fromLocal < 0 || fromLocal >= node.content.size) {\n mustRebuild = true;\n continue\n }\n // Must read oldChildren because children was tagged with -1\n var to = mapping.map(oldChildren[i$1 + 1] + oldOffset, -1), toLocal = to - offset;\n var ref = node.content.findIndex(fromLocal);\n var index = ref.index;\n var childOffset = ref.offset;\n var childNode = node.maybeChild(index);\n if (childNode && childOffset == fromLocal && childOffset + childNode.nodeSize == toLocal) {\n var mapped = children[i$1 + 2].mapInner(mapping, childNode, from + 1, oldChildren[i$1] + oldOffset + 1, options);\n if (mapped != empty) {\n children[i$1] = fromLocal;\n children[i$1 + 1] = toLocal;\n children[i$1 + 2] = mapped;\n } else {\n children[i$1 + 1] = -2;\n mustRebuild = true;\n }\n } else {\n mustRebuild = true;\n }\n } }\n\n // Remaining children must be collected and rebuilt into the appropriate structure\n if (mustRebuild) {\n var decorations = mapAndGatherRemainingDecorations(children, oldChildren, newLocal || [], mapping,\n offset, oldOffset, options);\n var built = buildTree(decorations, node, 0, options);\n newLocal = built.local;\n for (var i$2 = 0; i$2 < children.length; i$2 += 3) { if (children[i$2 + 1] < 0) {\n children.splice(i$2, 3);\n i$2 -= 3;\n } }\n for (var i$3 = 0, j = 0; i$3 < built.children.length; i$3 += 3) {\n var from$1 = built.children[i$3];\n while (j < children.length && children[j] < from$1) { j += 3; }\n children.splice(j, 0, built.children[i$3], built.children[i$3 + 1], built.children[i$3 + 2]);\n }\n }\n\n return new DecorationSet(newLocal && newLocal.sort(byPos), children)\n}\n\nfunction moveSpans(spans, offset) {\n if (!offset || !spans.length) { return spans }\n var result = [];\n for (var i = 0; i < spans.length; i++) {\n var span = spans[i];\n result.push(new Decoration(span.from + offset, span.to + offset, span.type));\n }\n return result\n}\n\nfunction mapAndGatherRemainingDecorations(children, oldChildren, decorations, mapping, offset, oldOffset, options) {\n // Gather all decorations from the remaining marked children\n function gather(set, oldOffset) {\n for (var i = 0; i < set.local.length; i++) {\n var mapped = set.local[i].map(mapping, offset, oldOffset);\n if (mapped) { decorations.push(mapped); }\n else if (options.onRemove) { options.onRemove(set.local[i].spec); }\n }\n for (var i$1 = 0; i$1 < set.children.length; i$1 += 3)\n { gather(set.children[i$1 + 2], set.children[i$1] + oldOffset + 1); }\n }\n for (var i = 0; i < children.length; i += 3) { if (children[i + 1] == -1)\n { gather(children[i + 2], oldChildren[i] + oldOffset + 1); } }\n\n return decorations\n}\n\nfunction takeSpansForNode(spans, node, offset) {\n if (node.isLeaf) { return null }\n var end = offset + node.nodeSize, found = null;\n for (var i = 0, span = (void 0); i < spans.length; i++) {\n if ((span = spans[i]) && span.from > offset && span.to < end) {\n(found || (found = [])).push(span);\n spans[i] = null;\n }\n }\n return found\n}\n\nfunction withoutNulls(array) {\n var result = [];\n for (var i = 0; i < array.length; i++)\n { if (array[i] != null) { result.push(array[i]); } }\n return result\n}\n\n// : ([Decoration], Node, number) → DecorationSet\n// Build up a tree that corresponds to a set of decorations. `offset`\n// is a base offset that should be subtractet from the `from` and `to`\n// positions in the spans (so that we don't have to allocate new spans\n// for recursive calls).\nfunction buildTree(spans, node, offset, options) {\n var children = [], hasNulls = false;\n node.forEach(function (childNode, localStart) {\n var found = takeSpansForNode(spans, childNode, localStart + offset);\n if (found) {\n hasNulls = true;\n var subtree = buildTree(found, childNode, offset + localStart + 1, options);\n if (subtree != empty)\n { children.push(localStart, localStart + childNode.nodeSize, subtree); }\n }\n });\n var locals = moveSpans(hasNulls ? withoutNulls(spans) : spans, -offset).sort(byPos);\n for (var i = 0; i < locals.length; i++) { if (!locals[i].type.valid(node, locals[i])) {\n if (options.onRemove) { options.onRemove(locals[i].spec); }\n locals.splice(i--, 1);\n } }\n return locals.length || children.length ? new DecorationSet(locals, children) : empty\n}\n\n// : (Decoration, Decoration) → number\n// Used to sort decorations so that ones with a low start position\n// come first, and within a set with the same start position, those\n// with an smaller end position come first.\nfunction byPos(a, b) {\n return a.from - b.from || a.to - b.to\n}\n\n// : ([Decoration]) → [Decoration]\n// Scan a sorted array of decorations for partially overlapping spans,\n// and split those so that only fully overlapping spans are left (to\n// make subsequent rendering easier). Will return the input array if\n// no partially overlapping spans are found (the common case).\nfunction removeOverlap(spans) {\n var working = spans;\n for (var i = 0; i < working.length - 1; i++) {\n var span = working[i];\n if (span.from != span.to) { for (var j = i + 1; j < working.length; j++) {\n var next = working[j];\n if (next.from == span.from) {\n if (next.to != span.to) {\n if (working == spans) { working = spans.slice(); }\n // Followed by a partially overlapping larger span. Split that\n // span.\n working[j] = next.copy(next.from, span.to);\n insertAhead(working, j + 1, next.copy(span.to, next.to));\n }\n continue\n } else {\n if (next.from < span.to) {\n if (working == spans) { working = spans.slice(); }\n // The end of this one overlaps with a subsequent span. Split\n // this one.\n working[i] = span.copy(span.from, next.from);\n insertAhead(working, j, span.copy(next.from, span.to));\n }\n break\n }\n } }\n }\n return working\n}\n\nfunction insertAhead(array, i, deco) {\n while (i < array.length && byPos(deco, array[i]) > 0) { i++; }\n array.splice(i, 0, deco);\n}\n\n// : (EditorView) → union<DecorationSet, DecorationGroup>\n// Get the decorations associated with the current props of a view.\nfunction viewDecorations(view) {\n var found = [];\n view.someProp(\"decorations\", function (f) {\n var result = f(view.state);\n if (result && result != empty) { found.push(result); }\n });\n if (view.cursorWrapper)\n { found.push(DecorationSet.create(view.state.doc, [view.cursorWrapper.deco])); }\n return DecorationGroup.from(found)\n}\n\n// ::- An editor view manages the DOM structure that represents an\n// editable document. Its state and behavior are determined by its\n// [props](#view.DirectEditorProps).\nvar EditorView = function EditorView(place, props) {\n this._props = props;\n // :: EditorState\n // The view's current [state](#state.EditorState).\n this.state = props.state;\n\n this.dispatch = this.dispatch.bind(this);\n\n this._root = null;\n this.focused = false;\n // Kludge used to work around a Chrome bug\n this.trackWrites = null;\n\n // :: dom.Element\n // An editable DOM node containing the document. (You probably\n // should not directly interfere with its content.)\n this.dom = (place && place.mount) || document.createElement(\"div\");\n if (place) {\n if (place.appendChild) { place.appendChild(this.dom); }\n else if (place.apply) { place(this.dom); }\n else if (place.mount) { this.mounted = true; }\n }\n\n // :: bool\n // Indicates whether the editor is currently [editable](#view.EditorProps.editable).\n this.editable = getEditable(this);\n this.markCursor = null;\n this.cursorWrapper = null;\n updateCursorWrapper(this);\n this.nodeViews = buildNodeViews(this);\n this.docView = docViewDesc(this.state.doc, computeDocDeco(this), viewDecorations(this), this.dom, this);\n\n this.lastSelectedViewDesc = null;\n // :: ?{slice: Slice, move: bool}\n // When editor content is being dragged, this object contains\n // information about the dragged slice and whether it is being\n // copied or moved. At any other time, it is null.\n this.dragging = null;\n\n initInput(this);\n\n this.pluginViews = [];\n this.updatePluginViews();\n};\n\nvar prototypeAccessors$2 = { props: { configurable: true },root: { configurable: true } };\n\n// composing:: boolean\n// Holds `true` when a\n// [composition](https://developer.mozilla.org/en-US/docs/Mozilla/IME_handling_guide)\n// is active.\n\n// :: DirectEditorProps\n// The view's current [props](#view.EditorProps).\nprototypeAccessors$2.props.get = function () {\n if (this._props.state != this.state) {\n var prev = this._props;\n this._props = {};\n for (var name in prev) { this._props[name] = prev[name]; }\n this._props.state = this.state;\n }\n return this._props\n};\n\n// :: (DirectEditorProps)\n// Update the view's props. Will immediately cause an update to\n// the DOM.\nEditorView.prototype.update = function update (props) {\n if (props.handleDOMEvents != this._props.handleDOMEvents) { ensureListeners(this); }\n this._props = props;\n this.updateStateInner(props.state, true);\n};\n\n// :: (DirectEditorProps)\n// Update the view by updating existing props object with the object\n// given as argument. Equivalent to `view.update(Object.assign({},\n// view.props, props))`.\nEditorView.prototype.setProps = function setProps (props) {\n var updated = {};\n for (var name in this._props) { updated[name] = this._props[name]; }\n updated.state = this.state;\n for (var name$1 in props) { updated[name$1] = props[name$1]; }\n this.update(updated);\n};\n\n// :: (EditorState)\n// Update the editor's `state` prop, without touching any of the\n// other props.\nEditorView.prototype.updateState = function updateState (state) {\n this.updateStateInner(state, this.state.plugins != state.plugins);\n};\n\nEditorView.prototype.updateStateInner = function updateStateInner (state, reconfigured) {\n var this$1 = this;\n\n var prev = this.state, redraw = false, updateSel = false;\n // When stored marks are added, stop composition, so that they can\n // be displayed.\n if (state.storedMarks && this.composing) {\n clearComposition(this);\n updateSel = true;\n }\n this.state = state;\n if (reconfigured) {\n var nodeViews = buildNodeViews(this);\n if (changedNodeViews(nodeViews, this.nodeViews)) {\n this.nodeViews = nodeViews;\n redraw = true;\n }\n ensureListeners(this);\n }\n\n this.editable = getEditable(this);\n updateCursorWrapper(this);\n var innerDeco = viewDecorations(this), outerDeco = computeDocDeco(this);\n\n var scroll = reconfigured ? \"reset\"\n : state.scrollToSelection > prev.scrollToSelection ? \"to selection\" : \"preserve\";\n var updateDoc = redraw || !this.docView.matchesNode(state.doc, outerDeco, innerDeco);\n if (updateDoc || !state.selection.eq(prev.selection)) { updateSel = true; }\n var oldScrollPos = scroll == \"preserve\" && updateSel && this.dom.style.overflowAnchor == null && storeScrollPos(this);\n\n if (updateSel) {\n this.domObserver.stop();\n // Work around an issue in Chrome, IE, and Edge where changing\n // the DOM around an active selection puts it into a broken\n // state where the thing the user sees differs from the\n // selection reported by the Selection object (#710, #973,\n // #1011, #1013, #1035).\n var forceSelUpdate = updateDoc && (result.ie || result.chrome) && !this.composing &&\n !prev.selection.empty && !state.selection.empty && selectionContextChanged(prev.selection, state.selection);\n if (updateDoc) {\n // If the node that the selection points into is written to,\n // Chrome sometimes starts misreporting the selection, so this\n // tracks that and forces a selection reset when our update\n // did write to the node.\n var chromeKludge = result.chrome ? (this.trackWrites = this.root.getSelection().focusNode) : null;\n if (redraw || !this.docView.update(state.doc, outerDeco, innerDeco, this)) {\n this.docView.updateOuterDeco([]);\n this.docView.destroy();\n this.docView = docViewDesc(state.doc, outerDeco, innerDeco, this.dom, this);\n }\n if (chromeKludge && !this.trackWrites) { forceSelUpdate = true; }\n }\n // Work around for an issue where an update arriving right between\n // a DOM selection change and the \"selectionchange\" event for it\n // can cause a spurious DOM selection update, disrupting mouse\n // drag selection.\n if (forceSelUpdate ||\n !(this.mouseDown && this.domObserver.currentSelection.eq(this.root.getSelection()) && anchorInRightPlace(this))) {\n selectionToDOM(this, forceSelUpdate);\n } else {\n syncNodeSelection(this, state.selection);\n this.domObserver.setCurSelection();\n }\n this.domObserver.start();\n }\n\n this.updatePluginViews(prev);\n\n if (scroll == \"reset\") {\n this.dom.scrollTop = 0;\n } else if (scroll == \"to selection\") {\n var startDOM = this.root.getSelection().focusNode;\n if (this.someProp(\"handleScrollToSelection\", function (f) { return f(this$1); }))\n ; // Handled\n else if (state.selection instanceof NodeSelection)\n { scrollRectIntoView(this, this.docView.domAfterPos(state.selection.from).getBoundingClientRect(), startDOM); }\n else\n { scrollRectIntoView(this, this.coordsAtPos(state.selection.head), startDOM); }\n } else if (oldScrollPos) {\n resetScrollPos(oldScrollPos);\n }\n};\n\nEditorView.prototype.destroyPluginViews = function destroyPluginViews () {\n var view;\n while (view = this.pluginViews.pop()) { if (view.destroy) { view.destroy(); } }\n};\n\nEditorView.prototype.updatePluginViews = function updatePluginViews (prevState) {\n if (!prevState || prevState.plugins != this.state.plugins) {\n this.destroyPluginViews();\n for (var i = 0; i < this.state.plugins.length; i++) {\n var plugin = this.state.plugins[i];\n if (plugin.spec.view) { this.pluginViews.push(plugin.spec.view(this)); }\n }\n } else {\n for (var i$1 = 0; i$1 < this.pluginViews.length; i$1++) {\n var pluginView = this.pluginViews[i$1];\n if (pluginView.update) { pluginView.update(this, prevState); }\n }\n }\n};\n\n// :: (string, ?(prop: *) → *) → *\n// Goes over the values of a prop, first those provided directly,\n// then those from plugins (in order), and calls `f` every time a\n// non-undefined value is found. When `f` returns a truthy value,\n// that is immediately returned. When `f` isn't provided, it is\n// treated as the identity function (the prop value is returned\n// directly).\nEditorView.prototype.someProp = function someProp (propName, f) {\n var prop = this._props && this._props[propName], value;\n if (prop != null && (value = f ? f(prop) : prop)) { return value }\n var plugins = this.state.plugins;\n if (plugins) { for (var i = 0; i < plugins.length; i++) {\n var prop$1 = plugins[i].props[propName];\n if (prop$1 != null && (value = f ? f(prop$1) : prop$1)) { return value }\n } }\n};\n\n// :: () → bool\n// Query whether the view has focus.\nEditorView.prototype.hasFocus = function hasFocus () {\n return this.root.activeElement == this.dom\n};\n\n// :: ()\n// Focus the editor.\nEditorView.prototype.focus = function focus () {\n this.domObserver.stop();\n if (this.editable) { focusPreventScroll(this.dom); }\n selectionToDOM(this);\n this.domObserver.start();\n};\n\n// :: union<dom.Document, dom.DocumentFragment>\n// Get the document root in which the editor exists. This will\n// usually be the top-level `document`, but might be a [shadow\n// DOM](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Shadow_DOM)\n// root if the editor is inside one.\nprototypeAccessors$2.root.get = function () {\n var cached = this._root;\n if (cached == null) { for (var search = this.dom.parentNode; search; search = search.parentNode) {\n if (search.nodeType == 9 || (search.nodeType == 11 && search.host)) {\n if (!search.getSelection) { Object.getPrototypeOf(search).getSelection = function () { return document.getSelection(); }; }\n return this._root = search\n }\n } }\n return cached || document\n};\n\n// :: ({left: number, top: number}) → ?{pos: number, inside: number}\n// Given a pair of viewport coordinates, return the document\n// position that corresponds to them. May return null if the given\n// coordinates aren't inside of the editor. When an object is\n// returned, its `pos` property is the position nearest to the\n// coordinates, and its `inside` property holds the position of the\n// inner node that the position falls inside of, or -1 if it is at\n// the top level, not in any node.\nEditorView.prototype.posAtCoords = function posAtCoords$1 (coords) {\n return posAtCoords(this, coords)\n};\n\n// :: (number) → {left: number, right: number, top: number, bottom: number}\n// Returns the viewport rectangle at a given document position. `left`\n// and `right` will be the same number, as this returns a flat\n// cursor-ish rectangle.\nEditorView.prototype.coordsAtPos = function coordsAtPos$1 (pos) {\n return coordsAtPos(this, pos)\n};\n\n// :: (number) → {node: dom.Node, offset: number}\n// Find the DOM position that corresponds to the given document\n// position. Note that you should **not** mutate the editor's\n// internal DOM, only inspect it (and even that is usually not\n// necessary).\nEditorView.prototype.domAtPos = function domAtPos (pos) {\n return this.docView.domFromPos(pos)\n};\n\n// :: (number) → ?dom.Node\n// Find the DOM node that represents the document node after the\n// given position. May return `null` when the position doesn't point\n// in front of a node or if the node is inside an opaque node view.\n//\n// This is intended to be able to call things like\n// `getBoundingClientRect` on that DOM node. Do **not** mutate the\n// editor DOM directly, or add styling this way, since that will be\n// immediately overriden by the editor as it redraws the node.\nEditorView.prototype.nodeDOM = function nodeDOM (pos) {\n var desc = this.docView.descAt(pos);\n return desc ? desc.nodeDOM : null\n};\n\n// :: (dom.Node, number, ?number) → number\n// Find the document position that corresponds to a given DOM\n// position. (Whenever possible, it is preferable to inspect the\n// document structure directly, rather than poking around in the\n// DOM, but sometimes—for example when interpreting an event\n// target—you don't have a choice.)\n//\n// The `bias` parameter can be used to influence which side of a DOM\n// node to use when the position is inside a leaf node.\nEditorView.prototype.posAtDOM = function posAtDOM (node, offset, bias) {\n if ( bias === void 0 ) bias = -1;\n\n var pos = this.docView.posFromDOM(node, offset, bias);\n if (pos == null) { throw new RangeError(\"DOM position not inside the editor\") }\n return pos\n};\n\n// :: (union<\"up\", \"down\", \"left\", \"right\", \"forward\", \"backward\">, ?EditorState) → bool\n// Find out whether the selection is at the end of a textblock when\n// moving in a given direction. When, for example, given `\"left\"`,\n// it will return true if moving left from the current cursor\n// position would leave that position's parent textblock. Will apply\n// to the view's current state by default, but it is possible to\n// pass a different state.\nEditorView.prototype.endOfTextblock = function endOfTextblock$1 (dir, state) {\n return endOfTextblock(this, state || this.state, dir)\n};\n\n// :: ()\n// Removes the editor from the DOM and destroys all [node\n// views](#view.NodeView).\nEditorView.prototype.destroy = function destroy () {\n if (!this.docView) { return }\n destroyInput(this);\n this.destroyPluginViews();\n if (this.mounted) {\n this.docView.update(this.state.doc, [], viewDecorations(this), this);\n this.dom.textContent = \"\";\n } else if (this.dom.parentNode) {\n this.dom.parentNode.removeChild(this.dom);\n }\n this.docView.destroy();\n this.docView = null;\n};\n\n// Used for testing.\nEditorView.prototype.dispatchEvent = function dispatchEvent$1 (event) {\n return dispatchEvent(this, event)\n};\n\n// :: (Transaction)\n// Dispatch a transaction. Will call\n// [`dispatchTransaction`](#view.DirectEditorProps.dispatchTransaction)\n// when given, and otherwise defaults to applying the transaction to\n// the current state and calling\n// [`updateState`](#view.EditorView.updateState) with the result.\n// This method is bound to the view instance, so that it can be\n// easily passed around.\nEditorView.prototype.dispatch = function dispatch (tr) {\n var dispatchTransaction = this._props.dispatchTransaction;\n if (dispatchTransaction) { dispatchTransaction.call(this, tr); }\n else { this.updateState(this.state.apply(tr)); }\n};\n\nObject.defineProperties( EditorView.prototype, prototypeAccessors$2 );\n\nfunction computeDocDeco(view) {\n var attrs = Object.create(null);\n attrs.class = \"ProseMirror\";\n attrs.contenteditable = String(view.editable);\n\n view.someProp(\"attributes\", function (value) {\n if (typeof value == \"function\") { value = value(view.state); }\n if (value) { for (var attr in value) {\n if (attr == \"class\")\n { attrs.class += \" \" + value[attr]; }\n else if (!attrs[attr] && attr != \"contenteditable\" && attr != \"nodeName\")\n { attrs[attr] = String(value[attr]); }\n } }\n });\n\n return [Decoration.node(0, view.state.doc.content.size, attrs)]\n}\n\nfunction updateCursorWrapper(view) {\n if (view.markCursor) {\n var dom = document.createElement(\"img\");\n dom.setAttribute(\"mark-placeholder\", \"true\");\n view.cursorWrapper = {dom: dom, deco: Decoration.widget(view.state.selection.head, dom, {raw: true, marks: view.markCursor})};\n } else {\n view.cursorWrapper = null;\n }\n}\n\nfunction getEditable(view) {\n return !view.someProp(\"editable\", function (value) { return value(view.state) === false; })\n}\n\nfunction selectionContextChanged(sel1, sel2) {\n var depth = Math.min(sel1.$anchor.sharedDepth(sel1.head), sel2.$anchor.sharedDepth(sel2.head));\n return sel1.$anchor.start(depth) != sel2.$anchor.start(depth)\n}\n\nfunction buildNodeViews(view) {\n var result = {};\n view.someProp(\"nodeViews\", function (obj) {\n for (var prop in obj) { if (!Object.prototype.hasOwnProperty.call(result, prop))\n { result[prop] = obj[prop]; } }\n });\n return result\n}\n\nfunction changedNodeViews(a, b) {\n var nA = 0, nB = 0;\n for (var prop in a) {\n if (a[prop] != b[prop]) { return true }\n nA++;\n }\n for (var _ in b) { nB++; }\n return nA != nB\n}\n\n// EditorProps:: interface\n//\n// Props are configuration values that can be passed to an editor view\n// or included in a plugin. This interface lists the supported props.\n//\n// The various event-handling functions may all return `true` to\n// indicate that they handled the given event. The view will then take\n// care to call `preventDefault` on the event, except with\n// `handleDOMEvents`, where the handler itself is responsible for that.\n//\n// How a prop is resolved depends on the prop. Handler functions are\n// called one at a time, starting with the base props and then\n// searching through the plugins (in order of appearance) until one of\n// them returns true. For some props, the first plugin that yields a\n// value gets precedence.\n//\n// handleDOMEvents:: ?Object<(view: EditorView, event: dom.Event) → bool>\n// Can be an object mapping DOM event type names to functions that\n// handle them. Such functions will be called before any handling\n// ProseMirror does of events fired on the editable DOM element.\n// Contrary to the other event handling props, when returning true\n// from such a function, you are responsible for calling\n// `preventDefault` yourself (or not, if you want to allow the\n// default behavior).\n//\n// handleKeyDown:: ?(view: EditorView, event: dom.KeyboardEvent) → bool\n// Called when the editor receives a `keydown` event.\n//\n// handleKeyPress:: ?(view: EditorView, event: dom.KeyboardEvent) → bool\n// Handler for `keypress` events.\n//\n// handleTextInput:: ?(view: EditorView, from: number, to: number, text: string) → bool\n// Whenever the user directly input text, this handler is called\n// before the input is applied. If it returns `true`, the default\n// behavior of actually inserting the text is suppressed.\n//\n// handleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a click, from the inside out. The\n// `direct` flag will be true for the inner node.\n//\n// handleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is clicked, after `handleClickOn` handlers\n// have been called.\n//\n// handleDoubleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a double click.\n//\n// handleDoubleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is double-clicked, after `handleDoubleClickOn`.\n//\n// handleTripleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a triple click.\n//\n// handleTripleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is triple-clicked, after `handleTripleClickOn`.\n//\n// handlePaste:: ?(view: EditorView, event: dom.ClipboardEvent, slice: Slice) → bool\n// Can be used to override the behavior of pasting. `slice` is the\n// pasted content parsed by the editor, but you can directly access\n// the event to get at the raw content.\n//\n// handleDrop:: ?(view: EditorView, event: dom.Event, slice: Slice, moved: bool) → bool\n// Called when something is dropped on the editor. `moved` will be\n// true if this drop moves from the current selection (which should\n// thus be deleted).\n//\n// handleScrollToSelection:: ?(view: EditorView) → bool\n// Called when the view, after updating its state, tries to scroll\n// the selection into view. A handler function may return false to\n// indicate that it did not handle the scrolling and further\n// handlers or the default behavior should be tried.\n//\n// createSelectionBetween:: ?(view: EditorView, anchor: ResolvedPos, head: ResolvedPos) → ?Selection\n// Can be used to override the way a selection is created when\n// reading a DOM selection between the given anchor and head.\n//\n// domParser:: ?DOMParser\n// The [parser](#model.DOMParser) to use when reading editor changes\n// from the DOM. Defaults to calling\n// [`DOMParser.fromSchema`](#model.DOMParser^fromSchema) on the\n// editor's schema.\n//\n// transformPastedHTML:: ?(html: string) → string\n// Can be used to transform pasted HTML text, _before_ it is parsed,\n// for example to clean it up.\n//\n// clipboardParser:: ?DOMParser\n// The [parser](#model.DOMParser) to use when reading content from\n// the clipboard. When not given, the value of the\n// [`domParser`](#view.EditorProps.domParser) prop is used.\n//\n// transformPastedText:: ?(text: string, plain: bool) → string\n// Transform pasted plain text. The `plain` flag will be true when\n// the text is pasted as plain text.\n//\n// clipboardTextParser:: ?(text: string, $context: ResolvedPos, plain: bool) → Slice\n// A function to parse text from the clipboard into a document\n// slice. Called after\n// [`transformPastedText`](#view.EditorProps.transformPastedText).\n// The default behavior is to split the text into lines, wrap them\n// in `<p>` tags, and call\n// [`clipboardParser`](#view.EditorProps.clipboardParser) on it.\n// The `plain` flag will be true when the text is pasted as plain text.\n//\n// transformPasted:: ?(Slice) → Slice\n// Can be used to transform pasted content before it is applied to\n// the document.\n//\n// nodeViews:: ?Object<(node: Node, view: EditorView, getPos: () → number, decorations: [Decoration]) → NodeView>\n// Allows you to pass custom rendering and behavior logic for nodes\n// and marks. Should map node and mark names to constructor\n// functions that produce a [`NodeView`](#view.NodeView) object\n// implementing the node's display behavior. For nodes, the third\n// argument `getPos` is a function that can be called to get the\n// node's current position, which can be useful when creating\n// transactions to update it. For marks, the third argument is a\n// boolean that indicates whether the mark's content is inline.\n//\n// `decorations` is an array of node or inline decorations that are\n// active around the node. They are automatically drawn in the\n// normal way, and you will usually just want to ignore this, but\n// they can also be used as a way to provide context information to\n// the node view without adding it to the document itself.\n//\n// clipboardSerializer:: ?DOMSerializer\n// The DOM serializer to use when putting content onto the\n// clipboard. If not given, the result of\n// [`DOMSerializer.fromSchema`](#model.DOMSerializer^fromSchema)\n// will be used.\n//\n// clipboardTextSerializer:: ?(Slice) → string\n// A function that will be called to get the text for the current\n// selection when copying text to the clipboard. By default, the\n// editor will use [`textBetween`](#model.Node.textBetween) on the\n// selected range.\n//\n// decorations:: ?(state: EditorState) → ?DecorationSet\n// A set of [document decorations](#view.Decoration) to show in the\n// view.\n//\n// editable:: ?(state: EditorState) → bool\n// When this returns false, the content of the view is not directly\n// editable.\n//\n// attributes:: ?union<Object<string>, (EditorState) → ?Object<string>>\n// Control the DOM attributes of the editable element. May be either\n// an object or a function going from an editor state to an object.\n// By default, the element will get a class `\"ProseMirror\"`, and\n// will have its `contentEditable` attribute determined by the\n// [`editable` prop](#view.EditorProps.editable). Additional classes\n// provided here will be added to the class. For other attributes,\n// the value provided first (as in\n// [`someProp`](#view.EditorView.someProp)) will be used.\n//\n// scrollThreshold:: ?union<number, {top: number, right: number, bottom: number, left: number}>\n// Determines the distance (in pixels) between the cursor and the\n// end of the visible viewport at which point, when scrolling the\n// cursor into view, scrolling takes place. Defaults to 0.\n//\n// scrollMargin:: ?union<number, {top: number, right: number, bottom: number, left: number}>\n// Determines the extra space (in pixels) that is left above or\n// below the cursor when it is scrolled into view. Defaults to 5.\n\n// DirectEditorProps:: interface extends EditorProps\n//\n// The props object given directly to the editor view supports two\n// fields that can't be used in plugins:\n//\n// state:: EditorState\n// The current state of the editor.\n//\n// dispatchTransaction:: ?(tr: Transaction)\n// The callback over which to send transactions (state updates)\n// produced by the view. If you specify this, you probably want to\n// make sure this ends up calling the view's\n// [`updateState`](#view.EditorView.updateState) method with a new\n// state that has the transaction\n// [applied](#state.EditorState.apply). The callback will be bound to have\n// the view instance as its `this` binding.\n\nexport { Decoration, DecorationSet, EditorView, endComposition as __endComposition, parseFromClipboard as __parseFromClipboard, serializeForClipboard as __serializeForClipboard };\n//# sourceMappingURL=index.es.js.map\n","import { PluginKey, TextSelection, Selection, SelectionRange, NodeSelection, Plugin } from 'prosemirror-state';\nimport { Fragment, Slice } from 'prosemirror-model';\nimport { keydownHandler } from 'prosemirror-keymap';\nimport { Decoration, DecorationSet } from 'prosemirror-view';\nimport { Transform } from 'prosemirror-transform';\n\n// Because working with row and column-spanning cells is not quite\n// trivial, this code builds up a descriptive structure for a given\n// table node. The structures are cached with the (persistent) table\n// nodes as key, so that they only have to be recomputed when the\n// content of the table changes.\n//\n// This does mean that they have to store table-relative, not\n// document-relative positions. So code that uses them will typically\n// compute the start position of the table and offset positions passed\n// to or gotten from this structure by that amount.\n\nvar readFromCache, addToCache;\n// Prefer using a weak map to cache table maps. Fall back on a\n// fixed-size cache if that's not supported.\nif (typeof WeakMap != \"undefined\") {\n var cache = new WeakMap;\n readFromCache = function (key) { return cache.get(key); };\n addToCache = function (key, value) {\n cache.set(key, value);\n return value\n };\n} else {\n var cache$1 = [], cacheSize = 10, cachePos = 0;\n readFromCache = function (key) {\n for (var i = 0; i < cache$1.length; i += 2)\n { if (cache$1[i] == key) { return cache$1[i + 1] } }\n };\n addToCache = function (key, value) {\n if (cachePos == cacheSize) { cachePos = 0; }\n cache$1[cachePos++] = key;\n return cache$1[cachePos++] = value\n };\n}\n\nvar Rect = function Rect(left, top, right, bottom) {\n this.left = left; this.top = top; this.right = right; this.bottom = bottom;\n};\n\n// ::- A table map describes the structore of a given table. To avoid\n// recomputing them all the time, they are cached per table node. To\n// be able to do that, positions saved in the map are relative to the\n// start of the table, rather than the start of the document.\nvar TableMap = function TableMap(width, height, map, problems) {\n // :: number The width of the table\n this.width = width;\n // :: number The table's height\n this.height = height;\n // :: [number] A width * height array with the start position of\n // the cell covering that part of the table in each slot\n this.map = map;\n // An optional array of problems (cell overlap or non-rectangular\n // shape) for the table, used by the table normalizer.\n this.problems = problems;\n};\n\n// :: (number) → Rect\n// Find the dimensions of the cell at the given position.\nTableMap.prototype.findCell = function findCell (pos) {\n for (var i = 0; i < this.map.length; i++) {\n var curPos = this.map[i];\n if (curPos != pos) { continue }\n var left = i % this.width, top = (i / this.width) | 0;\n var right = left + 1, bottom = top + 1;\n for (var j = 1; right < this.width && this.map[i + j] == curPos; j++) { right++; }\n for (var j$1 = 1; bottom < this.height && this.map[i + (this.width * j$1)] == curPos; j$1++) { bottom++; }\n return new Rect(left, top, right, bottom)\n }\n throw new RangeError(\"No cell with offset \" + pos + \" found\")\n};\n\n// :: (number) → number\n// Find the left side of the cell at the given position.\nTableMap.prototype.colCount = function colCount (pos) {\n for (var i = 0; i < this.map.length; i++)\n { if (this.map[i] == pos) { return i % this.width } }\n throw new RangeError(\"No cell with offset \" + pos + \" found\")\n};\n\n// :: (number, string, number) → ?number\n// Find the next cell in the given direction, starting from the cell\n// at `pos`, if any.\nTableMap.prototype.nextCell = function nextCell (pos, axis, dir) {\n var ref = this.findCell(pos);\n var left = ref.left;\n var right = ref.right;\n var top = ref.top;\n var bottom = ref.bottom;\n if (axis == \"horiz\") {\n if (dir < 0 ? left == 0 : right == this.width) { return null }\n return this.map[top * this.width + (dir < 0 ? left - 1 : right)]\n } else {\n if (dir < 0 ? top == 0 : bottom == this.height) { return null }\n return this.map[left + this.width * (dir < 0 ? top - 1 : bottom)]\n }\n};\n\n// :: (number, number) → Rect\n// Get the rectangle spanning the two given cells.\nTableMap.prototype.rectBetween = function rectBetween (a, b) {\n var ref = this.findCell(a);\n var leftA = ref.left;\n var rightA = ref.right;\n var topA = ref.top;\n var bottomA = ref.bottom;\n var ref$1 = this.findCell(b);\n var leftB = ref$1.left;\n var rightB = ref$1.right;\n var topB = ref$1.top;\n var bottomB = ref$1.bottom;\n return new Rect(Math.min(leftA, leftB), Math.min(topA, topB),\n Math.max(rightA, rightB), Math.max(bottomA, bottomB))\n};\n\n// :: (Rect) → [number]\n// Return the position of all cells that have the top left corner in\n// the given rectangle.\nTableMap.prototype.cellsInRect = function cellsInRect (rect) {\n var result = [], seen = {};\n for (var row = rect.top; row < rect.bottom; row++) {\n for (var col = rect.left; col < rect.right; col++) {\n var index = row * this.width + col, pos = this.map[index];\n if (seen[pos]) { continue }\n seen[pos] = true;\n if ((col != rect.left || !col || this.map[index - 1] != pos) &&\n (row != rect.top || !row || this.map[index - this.width] != pos))\n { result.push(pos); }\n }\n }\n return result\n};\n\n// :: (number, number, Node) → number\n// Return the position at which the cell at the given row and column\n// starts, or would start, if a cell started there.\nTableMap.prototype.positionAt = function positionAt (row, col, table) {\n for (var i = 0, rowStart = 0;; i++) {\n var rowEnd = rowStart + table.child(i).nodeSize;\n if (i == row) {\n var index = col + row * this.width, rowEndIndex = (row + 1) * this.width;\n // Skip past cells from previous rows (via rowspan)\n while (index < rowEndIndex && this.map[index] < rowStart) { index++; }\n return index == rowEndIndex ? rowEnd - 1 : this.map[index]\n }\n rowStart = rowEnd;\n }\n};\n\n// :: (Node) → TableMap\n// Find the table map for the given table node.\nTableMap.get = function get (table) {\n return readFromCache(table) || addToCache(table, computeMap(table))\n};\n\n// Compute a table map.\nfunction computeMap(table) {\n if (table.type.spec.tableRole != \"table\") { throw new RangeError(\"Not a table node: \" + table.type.name) }\n var width = findWidth(table), height = table.childCount;\n var map = [], mapPos = 0, problems = null, colWidths = [];\n for (var i = 0, e = width * height; i < e; i++) { map[i] = 0; }\n\n for (var row = 0, pos = 0; row < height; row++) {\n var rowNode = table.child(row);\n pos++;\n for (var i$1 = 0;; i$1++) {\n while (mapPos < map.length && map[mapPos] != 0) { mapPos++; }\n if (i$1 == rowNode.childCount) { break }\n var cellNode = rowNode.child(i$1);\n var ref = cellNode.attrs;\n var colspan = ref.colspan;\n var rowspan = ref.rowspan;\n var colwidth = ref.colwidth;\n for (var h = 0; h < rowspan; h++) {\n if (h + row >= height) {\n (problems || (problems = [])).push({type: \"overlong_rowspan\", pos: pos, n: rowspan - h});\n break\n }\n var start = mapPos + (h * width);\n for (var w = 0; w < colspan; w++) {\n if (map[start + w] == 0)\n { map[start + w] = pos; }\n else\n { (problems || (problems = [])).push({type: \"collision\", row: row, pos: pos, n: colspan - w}); }\n var colW = colwidth && colwidth[w];\n if (colW) {\n var widthIndex = ((start + w) % width) * 2, prev = colWidths[widthIndex];\n if (prev == null || (prev != colW && colWidths[widthIndex + 1] == 1)) {\n colWidths[widthIndex] = colW;\n colWidths[widthIndex + 1] = 1;\n } else if (prev == colW) {\n colWidths[widthIndex + 1]++;\n }\n }\n }\n }\n mapPos += colspan;\n pos += cellNode.nodeSize;\n }\n var expectedPos = (row + 1) * width, missing = 0;\n while (mapPos < expectedPos) { if (map[mapPos++] == 0) { missing++; } }\n if (missing) { (problems || (problems = [])).push({type: \"missing\", row: row, n: missing}); }\n pos++;\n }\n\n var tableMap = new TableMap(width, height, map, problems), badWidths = false;\n\n // For columns that have defined widths, but whose widths disagree\n // between rows, fix up the cells whose width doesn't match the\n // computed one.\n for (var i$2 = 0; !badWidths && i$2 < colWidths.length; i$2 += 2)\n { if (colWidths[i$2] != null && colWidths[i$2 + 1] < height) { badWidths = true; } }\n if (badWidths) { findBadColWidths(tableMap, colWidths, table); }\n\n return tableMap\n}\n\nfunction findWidth(table) {\n var width = -1, hasRowSpan = false;\n for (var row = 0; row < table.childCount; row++) {\n var rowNode = table.child(row), rowWidth = 0;\n if (hasRowSpan) { for (var j = 0; j < row; j++) {\n var prevRow = table.child(j);\n for (var i = 0; i < prevRow.childCount; i++) {\n var cell = prevRow.child(i);\n if (j + cell.attrs.rowspan > row) { rowWidth += cell.attrs.colspan; }\n }\n } }\n for (var i$1 = 0; i$1 < rowNode.childCount; i$1++) {\n var cell$1 = rowNode.child(i$1);\n rowWidth += cell$1.attrs.colspan;\n if (cell$1.attrs.rowspan > 1) { hasRowSpan = true; }\n }\n if (width == -1)\n { width = rowWidth; }\n else if (width != rowWidth)\n { width = Math.max(width, rowWidth); }\n }\n return width\n}\n\nfunction findBadColWidths(map, colWidths, table) {\n if (!map.problems) { map.problems = []; }\n for (var i = 0, seen = {}; i < map.map.length; i++) {\n var pos = map.map[i];\n if (seen[pos]) { continue }\n seen[pos] = true;\n var node = table.nodeAt(pos), updated = null;\n for (var j = 0; j < node.attrs.colspan; j++) {\n var col = (i + j) % map.width, colWidth = colWidths[col * 2];\n if (colWidth != null && (!node.attrs.colwidth || node.attrs.colwidth[j] != colWidth))\n { (updated || (updated = freshColWidth(node.attrs)))[j] = colWidth; }\n }\n if (updated) { map.problems.unshift({type: \"colwidth mismatch\", pos: pos, colwidth: updated}); }\n }\n}\n\nfunction freshColWidth(attrs) {\n if (attrs.colwidth) { return attrs.colwidth.slice() }\n var result = [];\n for (var i = 0; i < attrs.colspan; i++) { result.push(0); }\n return result\n}\n\n// Helper for creating a schema that supports tables.\n\nfunction getCellAttrs(dom, extraAttrs) {\n var widthAttr = dom.getAttribute(\"data-colwidth\");\n var widths = widthAttr && /^\\d+(,\\d+)*$/.test(widthAttr) ? widthAttr.split(\",\").map(function (s) { return Number(s); }) : null;\n var colspan = Number(dom.getAttribute(\"colspan\") || 1);\n var result = {\n colspan: colspan,\n rowspan: Number(dom.getAttribute(\"rowspan\") || 1),\n colwidth: widths && widths.length == colspan ? widths : null\n };\n for (var prop in extraAttrs) {\n var getter = extraAttrs[prop].getFromDOM;\n var value = getter && getter(dom);\n if (value != null) { result[prop] = value; }\n }\n return result\n}\n\nfunction setCellAttrs(node, extraAttrs) {\n var attrs = {};\n if (node.attrs.colspan != 1) { attrs.colspan = node.attrs.colspan; }\n if (node.attrs.rowspan != 1) { attrs.rowspan = node.attrs.rowspan; }\n if (node.attrs.colwidth)\n { attrs[\"data-colwidth\"] = node.attrs.colwidth.join(\",\"); }\n for (var prop in extraAttrs) {\n var setter = extraAttrs[prop].setDOMAttr;\n if (setter) { setter(node.attrs[prop], attrs); }\n }\n return attrs\n}\n\n// :: (Object) → Object\n//\n// This function creates a set of [node\n// specs](http://prosemirror.net/docs/ref/#model.SchemaSpec.nodes) for\n// `table`, `table_row`, and `table_cell` nodes types as used by this\n// module. The result can then be added to the set of nodes when\n// creating a a schema.\n//\n// options::- The following options are understood:\n//\n// tableGroup:: ?string\n// A group name (something like `\"block\"`) to add to the table\n// node type.\n//\n// cellContent:: string\n// The content expression for table cells.\n//\n// cellAttributes:: ?Object\n// Additional attributes to add to cells. Maps attribute names to\n// objects with the following properties:\n//\n// default:: any\n// The attribute's default value.\n//\n// getFromDOM:: ?(dom.Node) → any\n// A function to read the attribute's value from a DOM node.\n//\n// setDOMAttr:: ?(value: any, attrs: Object)\n// A function to add the attribute's value to an attribute\n// object that's used to render the cell's DOM.\nfunction tableNodes(options) {\n var extraAttrs = options.cellAttributes || {};\n var cellAttrs = {\n colspan: {default: 1},\n rowspan: {default: 1},\n colwidth: {default: null}\n };\n for (var prop in extraAttrs)\n { cellAttrs[prop] = {default: extraAttrs[prop].default}; }\n\n return {\n table: {\n content: \"table_row+\",\n tableRole: \"table\",\n isolating: true,\n group: options.tableGroup,\n parseDOM: [{tag: \"table\"}],\n toDOM: function toDOM() { return [\"table\", [\"tbody\", 0]] }\n },\n table_row: {\n content: \"(table_cell | table_header)*\",\n tableRole: \"row\",\n parseDOM: [{tag: \"tr\"}],\n toDOM: function toDOM() { return [\"tr\", 0] }\n },\n table_cell: {\n content: options.cellContent,\n attrs: cellAttrs,\n tableRole: \"cell\",\n isolating: true,\n parseDOM: [{tag: \"td\", getAttrs: function (dom) { return getCellAttrs(dom, extraAttrs); }}],\n toDOM: function toDOM(node) { return [\"td\", setCellAttrs(node, extraAttrs), 0] }\n },\n table_header: {\n content: options.cellContent,\n attrs: cellAttrs,\n tableRole: \"header_cell\",\n isolating: true,\n parseDOM: [{tag: \"th\", getAttrs: function (dom) { return getCellAttrs(dom, extraAttrs); }}],\n toDOM: function toDOM(node) { return [\"th\", setCellAttrs(node, extraAttrs), 0] }\n }\n }\n}\n\nfunction tableNodeTypes(schema) {\n var result = schema.cached.tableNodeTypes;\n if (!result) {\n result = schema.cached.tableNodeTypes = {};\n for (var name in schema.nodes) {\n var type = schema.nodes[name], role = type.spec.tableRole;\n if (role) { result[role] = type; }\n }\n }\n return result\n}\n\n// Various helper function for working with tables\n\nvar key = new PluginKey(\"selectingCells\");\n\nfunction cellAround($pos) {\n for (var d = $pos.depth - 1; d > 0; d--)\n { if ($pos.node(d).type.spec.tableRole == \"row\") { return $pos.node(0).resolve($pos.before(d + 1)) } }\n return null\n}\n\nfunction cellWrapping($pos) {\n for (var d = $pos.depth; d > 0; d--) { // Sometimes the cell can be in the same depth.\n var role = $pos.node(d).type.spec.tableRole;\n if (role === \"cell\" || role === 'header_cell') { return $pos.node(d) }\n }\n return null\n}\n\nfunction isInTable(state) {\n var $head = state.selection.$head;\n for (var d = $head.depth; d > 0; d--) { if ($head.node(d).type.spec.tableRole == \"row\") { return true } }\n return false\n}\n\nfunction selectionCell(state) {\n var sel = state.selection;\n if (sel.$anchorCell) {\n return sel.$anchorCell.pos > sel.$headCell.pos ? sel.$anchorCell : sel.$headCell;\n } else if (sel.node && sel.node.type.spec.tableRole == \"cell\") {\n return sel.$anchor\n }\n return cellAround(sel.$head) || cellNear(sel.$head)\n}\n\nfunction cellNear($pos) {\n for (var after = $pos.nodeAfter, pos = $pos.pos; after; after = after.firstChild, pos++) {\n var role = after.type.spec.tableRole;\n if (role == \"cell\" || role == \"header_cell\") { return $pos.doc.resolve(pos) }\n }\n for (var before = $pos.nodeBefore, pos$1 = $pos.pos; before; before = before.lastChild, pos$1--) {\n var role$1 = before.type.spec.tableRole;\n if (role$1 == \"cell\" || role$1 == \"header_cell\") { return $pos.doc.resolve(pos$1 - before.nodeSize) }\n }\n}\n\nfunction pointsAtCell($pos) {\n return $pos.parent.type.spec.tableRole == \"row\" && $pos.nodeAfter\n}\n\nfunction moveCellForward($pos) {\n return $pos.node(0).resolve($pos.pos + $pos.nodeAfter.nodeSize)\n}\n\nfunction inSameTable($a, $b) {\n return $a.depth == $b.depth && $a.pos >= $b.start(-1) && $a.pos <= $b.end(-1)\n}\n\nfunction findCell($pos) {\n return TableMap.get($pos.node(-1)).findCell($pos.pos - $pos.start(-1))\n}\n\nfunction colCount($pos) {\n return TableMap.get($pos.node(-1)).colCount($pos.pos - $pos.start(-1))\n}\n\nfunction nextCell($pos, axis, dir) {\n var start = $pos.start(-1), map = TableMap.get($pos.node(-1));\n var moved = map.nextCell($pos.pos - start, axis, dir);\n return moved == null ? null : $pos.node(0).resolve(start + moved)\n}\n\nfunction setAttr(attrs, name, value) {\n var result = {};\n for (var prop in attrs) { result[prop] = attrs[prop]; }\n result[name] = value;\n return result\n}\n\nfunction removeColSpan(attrs, pos, n) {\n if ( n === void 0 ) n=1;\n\n var result = setAttr(attrs, \"colspan\", attrs.colspan - n);\n if (result.colwidth) {\n result.colwidth = result.colwidth.slice();\n result.colwidth.splice(pos, n);\n if (!result.colwidth.some(function (w) { return w > 0; })) { result.colwidth = null; }\n }\n return result\n}\n\nfunction addColSpan(attrs, pos, n) {\n if ( n === void 0 ) n=1;\n\n var result = setAttr(attrs, \"colspan\", attrs.colspan + n);\n if (result.colwidth) {\n result.colwidth = result.colwidth.slice();\n for (var i = 0; i < n; i++) { result.colwidth.splice(pos, 0, 0); }\n }\n return result\n}\n\nfunction columnIsHeader(map, table, col) {\n var headerCell = tableNodeTypes(table.type.schema).header_cell;\n for (var row = 0; row < map.height; row++)\n { if (table.nodeAt(map.map[col + row * map.width]).type != headerCell)\n { return false } }\n return true\n}\n\n// This file defines a ProseMirror selection subclass that models\n\n// ::- A [`Selection`](http://prosemirror.net/docs/ref/#state.Selection)\n// subclass that represents a cell selection spanning part of a table.\n// With the plugin enabled, these will be created when the user\n// selects across cells, and will be drawn by giving selected cells a\n// `selectedCell` CSS class.\nvar CellSelection = /*@__PURE__*/(function (Selection) {\n function CellSelection($anchorCell, $headCell) {\n if ( $headCell === void 0 ) $headCell = $anchorCell;\n\n var table = $anchorCell.node(-1), map = TableMap.get(table), start = $anchorCell.start(-1);\n var rect = map.rectBetween($anchorCell.pos - start, $headCell.pos - start);\n var doc = $anchorCell.node(0);\n var cells = map.cellsInRect(rect).filter(function (p) { return p != $headCell.pos - start; });\n // Make the head cell the first range, so that it counts as the\n // primary part of the selection\n cells.unshift($headCell.pos - start);\n var ranges = cells.map(function (pos) {\n var cell = table.nodeAt(pos), from = pos + start + 1;\n return new SelectionRange(doc.resolve(from), doc.resolve(from + cell.content.size))\n });\n Selection.call(this, ranges[0].$from, ranges[0].$to, ranges);\n // :: ResolvedPos\n // A resolved position pointing _in front of_ the anchor cell (the one\n // that doesn't move when extending the selection).\n this.$anchorCell = $anchorCell;\n // :: ResolvedPos\n // A resolved position pointing in front of the head cell (the one\n // moves when extending the selection).\n this.$headCell = $headCell;\n }\n\n if ( Selection ) CellSelection.__proto__ = Selection;\n CellSelection.prototype = Object.create( Selection && Selection.prototype );\n CellSelection.prototype.constructor = CellSelection;\n\n CellSelection.prototype.map = function map (doc, mapping) {\n var $anchorCell = doc.resolve(mapping.map(this.$anchorCell.pos));\n var $headCell = doc.resolve(mapping.map(this.$headCell.pos));\n if (pointsAtCell($anchorCell) && pointsAtCell($headCell) && inSameTable($anchorCell, $headCell)) {\n var tableChanged = this.$anchorCell.node(-1) != $anchorCell.node(-1);\n if (tableChanged && this.isRowSelection())\n { return CellSelection.rowSelection($anchorCell, $headCell) }\n else if (tableChanged && this.isColSelection())\n { return CellSelection.colSelection($anchorCell, $headCell) }\n else\n { return new CellSelection($anchorCell, $headCell) }\n }\n return TextSelection.between($anchorCell, $headCell)\n };\n\n // :: () → Slice\n // Returns a rectangular slice of table rows containing the selected\n // cells.\n CellSelection.prototype.content = function content () {\n var table = this.$anchorCell.node(-1), map = TableMap.get(table), start = this.$anchorCell.start(-1);\n var rect = map.rectBetween(this.$anchorCell.pos - start, this.$headCell.pos - start);\n var seen = {}, rows = [];\n for (var row = rect.top; row < rect.bottom; row++) {\n var rowContent = [];\n for (var index = row * map.width + rect.left, col = rect.left; col < rect.right; col++, index++) {\n var pos = map.map[index];\n if (!seen[pos]) {\n seen[pos] = true;\n var cellRect = map.findCell(pos), cell = table.nodeAt(pos);\n var extraLeft = rect.left - cellRect.left, extraRight = cellRect.right - rect.right;\n if (extraLeft > 0 || extraRight > 0) {\n var attrs = cell.attrs;\n if (extraLeft > 0) { attrs = removeColSpan(attrs, 0, extraLeft); }\n if (extraRight > 0) { attrs = removeColSpan(attrs, attrs.colspan - extraRight, extraRight); }\n if (cellRect.left < rect.left) { cell = cell.type.createAndFill(attrs); }\n else { cell = cell.type.create(attrs, cell.content); }\n }\n if (cellRect.top < rect.top || cellRect.bottom > rect.bottom) {\n var attrs$1 = setAttr(cell.attrs, \"rowspan\", Math.min(cellRect.bottom, rect.bottom) - Math.max(cellRect.top, rect.top));\n if (cellRect.top < rect.top) { cell = cell.type.createAndFill(attrs$1); }\n else { cell = cell.type.create(attrs$1, cell.content); }\n }\n rowContent.push(cell);\n }\n }\n rows.push(table.child(row).copy(Fragment.from(rowContent)));\n }\n\n var fragment = this.isColSelection() && this.isRowSelection() ? table : rows;\n return new Slice(Fragment.from(fragment), 1, 1)\n };\n\n CellSelection.prototype.replace = function replace (tr, content) {\n if ( content === void 0 ) content = Slice.empty;\n\n var mapFrom = tr.steps.length, ranges = this.ranges;\n for (var i = 0; i < ranges.length; i++) {\n var ref = ranges[i];\n var $from = ref.$from;\n var $to = ref.$to;\n var mapping = tr.mapping.slice(mapFrom);\n tr.replace(mapping.map($from.pos), mapping.map($to.pos), i ? Slice.empty : content);\n }\n var sel = Selection.findFrom(tr.doc.resolve(tr.mapping.slice(mapFrom).map(this.to)), -1);\n if (sel) { tr.setSelection(sel); }\n };\n\n CellSelection.prototype.replaceWith = function replaceWith (tr, node) {\n this.replace(tr, new Slice(Fragment.from(node), 0, 0));\n };\n\n CellSelection.prototype.forEachCell = function forEachCell (f) {\n var table = this.$anchorCell.node(-1), map = TableMap.get(table), start = this.$anchorCell.start(-1);\n var cells = map.cellsInRect(map.rectBetween(this.$anchorCell.pos - start, this.$headCell.pos - start));\n for (var i = 0; i < cells.length; i++)\n { f(table.nodeAt(cells[i]), start + cells[i]); }\n };\n\n // :: () → bool\n // True if this selection goes all the way from the top to the\n // bottom of the table.\n CellSelection.prototype.isColSelection = function isColSelection () {\n var anchorTop = this.$anchorCell.index(-1), headTop = this.$headCell.index(-1);\n if (Math.min(anchorTop, headTop) > 0) { return false }\n var anchorBot = anchorTop + this.$anchorCell.nodeAfter.attrs.rowspan,\n headBot = headTop + this.$headCell.nodeAfter.attrs.rowspan;\n return Math.max(anchorBot, headBot) == this.$headCell.node(-1).childCount\n };\n\n // :: (ResolvedPos, ?ResolvedPos) → CellSelection\n // Returns the smallest column selection that covers the given anchor\n // and head cell.\n CellSelection.colSelection = function colSelection ($anchorCell, $headCell) {\n if ( $headCell === void 0 ) $headCell = $anchorCell;\n\n var map = TableMap.get($anchorCell.node(-1)), start = $anchorCell.start(-1);\n var anchorRect = map.findCell($anchorCell.pos - start), headRect = map.findCell($headCell.pos - start);\n var doc = $anchorCell.node(0);\n if (anchorRect.top <= headRect.top) {\n if (anchorRect.top > 0)\n { $anchorCell = doc.resolve(start + map.map[anchorRect.left]); }\n if (headRect.bottom < map.height)\n { $headCell = doc.resolve(start + map.map[map.width * (map.height - 1) + headRect.right - 1]); }\n } else {\n if (headRect.top > 0)\n { $headCell = doc.resolve(start + map.map[headRect.left]); }\n if (anchorRect.bottom < map.height)\n { $anchorCell = doc.resolve(start + map.map[map.width * (map.height - 1) + anchorRect.right - 1]); }\n }\n return new CellSelection($anchorCell, $headCell)\n };\n\n // :: () → bool\n // True if this selection goes all the way from the left to the\n // right of the table.\n CellSelection.prototype.isRowSelection = function isRowSelection () {\n var map = TableMap.get(this.$anchorCell.node(-1)), start = this.$anchorCell.start(-1);\n var anchorLeft = map.colCount(this.$anchorCell.pos - start),\n headLeft = map.colCount(this.$headCell.pos - start);\n if (Math.min(anchorLeft, headLeft) > 0) { return false }\n var anchorRight = anchorLeft + this.$anchorCell.nodeAfter.attrs.colspan,\n headRight = headLeft + this.$headCell.nodeAfter.attrs.colspan;\n return Math.max(anchorRight, headRight) == map.width\n };\n\n CellSelection.prototype.eq = function eq (other) {\n return other instanceof CellSelection && other.$anchorCell.pos == this.$anchorCell.pos &&\n other.$headCell.pos == this.$headCell.pos\n };\n\n // :: (ResolvedPos, ?ResolvedPos) → CellSelection\n // Returns the smallest row selection that covers the given anchor\n // and head cell.\n CellSelection.rowSelection = function rowSelection ($anchorCell, $headCell) {\n if ( $headCell === void 0 ) $headCell = $anchorCell;\n\n var map = TableMap.get($anchorCell.node(-1)), start = $anchorCell.start(-1);\n var anchorRect = map.findCell($anchorCell.pos - start), headRect = map.findCell($headCell.pos - start);\n var doc = $anchorCell.node(0);\n if (anchorRect.left <= headRect.left) {\n if (anchorRect.left > 0)\n { $anchorCell = doc.resolve(start + map.map[anchorRect.top * map.width]); }\n if (headRect.right < map.width)\n { $headCell = doc.resolve(start + map.map[map.width * (headRect.top + 1) - 1]); }\n } else {\n if (headRect.left > 0)\n { $headCell = doc.resolve(start + map.map[headRect.top * map.width]); }\n if (anchorRect.right < map.width)\n { $anchorCell = doc.resolve(start + map.map[map.width * (anchorRect.top + 1) - 1]); }\n }\n return new CellSelection($anchorCell, $headCell)\n };\n\n CellSelection.prototype.toJSON = function toJSON () {\n return {type: \"cell\", anchor: this.$anchorCell.pos, head: this.$headCell.pos}\n };\n\n CellSelection.fromJSON = function fromJSON (doc, json) {\n return new CellSelection(doc.resolve(json.anchor), doc.resolve(json.head))\n };\n\n // :: (Node, number, ?number) → CellSelection\n CellSelection.create = function create (doc, anchorCell, headCell) {\n if ( headCell === void 0 ) headCell = anchorCell;\n\n return new CellSelection(doc.resolve(anchorCell), doc.resolve(headCell))\n };\n\n CellSelection.prototype.getBookmark = function getBookmark () { return new CellBookmark(this.$anchorCell.pos, this.$headCell.pos) };\n\n return CellSelection;\n}(Selection));\n\nCellSelection.prototype.visible = false;\n\nSelection.jsonID(\"cell\", CellSelection);\n\nvar CellBookmark = function CellBookmark(anchor, head) {\n this.anchor = anchor;\n this.head = head;\n};\nCellBookmark.prototype.map = function map (mapping) {\n return new CellBookmark(mapping.map(this.anchor), mapping.map(this.head))\n};\nCellBookmark.prototype.resolve = function resolve (doc) {\n var $anchorCell = doc.resolve(this.anchor), $headCell = doc.resolve(this.head);\n if ($anchorCell.parent.type.spec.tableRole == \"row\" &&\n $headCell.parent.type.spec.tableRole == \"row\" &&\n $anchorCell.index() < $anchorCell.parent.childCount &&\n $headCell.index() < $headCell.parent.childCount &&\n inSameTable($anchorCell, $headCell))\n { return new CellSelection($anchorCell, $headCell) }\n else\n { return Selection.near($headCell, 1) }\n};\n\nfunction drawCellSelection(state) {\n if (!(state.selection instanceof CellSelection)) { return null }\n var cells = [];\n state.selection.forEachCell(function (node, pos) {\n cells.push(Decoration.node(pos, pos + node.nodeSize, {class: \"selectedCell\"}));\n });\n return DecorationSet.create(state.doc, cells)\n}\n\nfunction isCellBoundarySelection(ref) {\n var $from = ref.$from;\n var $to = ref.$to;\n\n if ($from.pos == $to.pos || $from.pos < $from.pos - 6) { return false } // Cheap elimination\n var afterFrom = $from.pos, beforeTo = $to.pos, depth = $from.depth;\n for (; depth >= 0; depth--, afterFrom++)\n { if ($from.after(depth + 1) < $from.end(depth)) { break } }\n for (var d = $to.depth; d >= 0; d--, beforeTo--)\n { if ($to.before(d + 1) > $to.start(d)) { break } }\n return afterFrom == beforeTo && /row|table/.test($from.node(depth).type.spec.tableRole)\n}\n\nfunction isTextSelectionAcrossCells(ref) {\n var $from = ref.$from;\n var $to = ref.$to;\n\n var fromCellBoundaryNode;\n var toCellBoundaryNode;\n\n for (var i = $from.depth; i > 0; i--) {\n var node = $from.node(i);\n if (node.type.spec.tableRole === 'cell' || node.type.spec.tableRole === 'header_cell') {\n fromCellBoundaryNode = node;\n break;\n }\n }\n\n for (var i$1 = $to.depth; i$1 > 0; i$1--) {\n var node$1 = $to.node(i$1);\n if (node$1.type.spec.tableRole === 'cell' || node$1.type.spec.tableRole === 'header_cell') {\n toCellBoundaryNode = node$1;\n break;\n }\n }\n\n return fromCellBoundaryNode !== toCellBoundaryNode && $to.parentOffset === 0\n}\n\nfunction normalizeSelection(state, tr, allowTableNodeSelection) {\n var sel = (tr || state).selection, doc = (tr || state).doc, normalize, role;\n if (sel instanceof NodeSelection && (role = sel.node.type.spec.tableRole)) {\n if (role == \"cell\" || role == \"header_cell\") {\n normalize = CellSelection.create(doc, sel.from);\n } else if (role == \"row\") {\n var $cell = doc.resolve(sel.from + 1);\n normalize = CellSelection.rowSelection($cell, $cell);\n } else if (!allowTableNodeSelection) {\n var map = TableMap.get(sel.node), start = sel.from + 1;\n var lastCell = start + map.map[map.width * map.height - 1];\n normalize = CellSelection.create(doc, start + 1, lastCell);\n }\n } else if (sel instanceof TextSelection && isCellBoundarySelection(sel)) {\n normalize = TextSelection.create(doc, sel.from);\n } else if (sel instanceof TextSelection && isTextSelectionAcrossCells(sel)) {\n normalize = TextSelection.create(doc, sel.$from.start(), sel.$from.end());\n }\n if (normalize)\n { (tr || (tr = state.tr)).setSelection(normalize); }\n return tr\n}\n\n// Utilities used for copy/paste handling.\n\n// Utilities to help with copying and pasting table cells\n\n// : (Slice) → ?{width: number, height: number, rows: [Fragment]}\n// Get a rectangular area of cells from a slice, or null if the outer\n// nodes of the slice aren't table cells or rows.\nfunction pastedCells(slice) {\n if (!slice.size) { return null }\n var content = slice.content;\n var openStart = slice.openStart;\n var openEnd = slice.openEnd;\n while (content.childCount == 1 && (openStart > 0 && openEnd > 0 || content.firstChild.type.spec.tableRole == \"table\")) {\n openStart--;\n openEnd--;\n content = content.firstChild.content;\n }\n var first = content.firstChild, role = first.type.spec.tableRole;\n var schema = first.type.schema, rows = [];\n if (role == \"row\") {\n for (var i = 0; i < content.childCount; i++) {\n var cells = content.child(i).content;\n var left = i ? 0 : Math.max(0, openStart - 1);\n var right = i < content.childCount - 1 ? 0 : Math.max(0, openEnd - 1);\n if (left || right) { cells = fitSlice(tableNodeTypes(schema).row, new Slice(cells, left, right)).content; }\n rows.push(cells);\n }\n } else if (role == \"cell\" || role == \"header_cell\") {\n rows.push(openStart || openEnd ? fitSlice(tableNodeTypes(schema).row, new Slice(content, openStart, openEnd)).content : content);\n } else {\n return null\n }\n return ensureRectangular(schema, rows)\n}\n\n// : (Schema, [Fragment]) → {width: number, height: number, rows: [Fragment]}\n// Compute the width and height of a set of cells, and make sure each\n// row has the same number of cells.\nfunction ensureRectangular(schema, rows) {\n var widths = [];\n for (var i = 0; i < rows.length; i++) {\n var row = rows[i];\n for (var j = row.childCount - 1; j >= 0; j--) {\n var ref = row.child(j).attrs;\n var rowspan = ref.rowspan;\n var colspan = ref.colspan;\n for (var r = i; r < i + rowspan; r++)\n { widths[r] = (widths[r] || 0) + colspan; }\n }\n }\n var width = 0;\n for (var r$1 = 0; r$1 < widths.length; r$1++) { width = Math.max(width, widths[r$1]); }\n for (var r$2 = 0; r$2 < widths.length; r$2++) {\n if (r$2 >= rows.length) { rows.push(Fragment.empty); }\n if (widths[r$2] < width) {\n var empty = tableNodeTypes(schema).cell.createAndFill(), cells = [];\n for (var i$1 = widths[r$2]; i$1 < width; i$1++) { cells.push(empty); }\n rows[r$2] = rows[r$2].append(Fragment.from(cells));\n }\n }\n return {height: rows.length, width: width, rows: rows}\n}\n\nfunction fitSlice(nodeType, slice) {\n var node = nodeType.createAndFill();\n var tr = new Transform(node).replace(0, node.content.size, slice);\n return tr.doc\n}\n\n// : ({width: number, height: number, rows: [Fragment]}, number, number) → {width: number, height: number, rows: [Fragment]}\n// Clip or extend (repeat) the given set of cells to cover the given\n// width and height. Will clip rowspan/colspan cells at the edges when\n// they stick out.\nfunction clipCells(ref, newWidth, newHeight) {\n var width = ref.width;\n var height = ref.height;\n var rows = ref.rows;\n\n if (width != newWidth) {\n var added = [], newRows = [];\n for (var row = 0; row < rows.length; row++) {\n var frag = rows[row], cells = [];\n for (var col = added[row] || 0, i = 0; col < newWidth; i++) {\n var cell = frag.child(i % frag.childCount);\n if (col + cell.attrs.colspan > newWidth)\n { cell = cell.type.create(removeColSpan(cell.attrs, cell.attrs.colspan, col + cell.attrs.colspan - newWidth), cell.content); }\n cells.push(cell);\n col += cell.attrs.colspan;\n for (var j = 1; j < cell.attrs.rowspan; j++)\n { added[row + j] = (added[row + j] || 0) + cell.attrs.colspan; }\n }\n newRows.push(Fragment.from(cells));\n }\n rows = newRows;\n width = newWidth;\n }\n\n if (height != newHeight) {\n var newRows$1 = [];\n for (var row$1 = 0, i$1 = 0; row$1 < newHeight; row$1++, i$1++) {\n var cells$1 = [], source = rows[i$1 % height];\n for (var j$1 = 0; j$1 < source.childCount; j$1++) {\n var cell$1 = source.child(j$1);\n if (row$1 + cell$1.attrs.rowspan > newHeight)\n { cell$1 = cell$1.type.create(setAttr(cell$1.attrs, \"rowspan\", Math.max(1, newHeight - cell$1.attrs.rowspan)), cell$1.content); }\n cells$1.push(cell$1);\n }\n newRows$1.push(Fragment.from(cells$1));\n }\n rows = newRows$1;\n height = newHeight;\n }\n\n return {width: width, height: height, rows: rows}\n}\n\n// Make sure a table has at least the given width and height. Return\n// true if something was changed.\nfunction growTable(tr, map, table, start, width, height, mapFrom) {\n var schema = tr.doc.type.schema, types = tableNodeTypes(schema), empty, emptyHead;\n if (width > map.width) {\n for (var row = 0, rowEnd = 0; row < map.height; row++) {\n var rowNode = table.child(row);\n rowEnd += rowNode.nodeSize;\n var cells = [], add = (void 0);\n if (rowNode.lastChild == null || rowNode.lastChild.type == types.cell)\n { add = empty || (empty = types.cell.createAndFill()); }\n else\n { add = emptyHead || (emptyHead = types.header_cell.createAndFill()); }\n for (var i = map.width; i < width; i++) { cells.push(add); }\n tr.insert(tr.mapping.slice(mapFrom).map(rowEnd - 1 + start), cells);\n }\n }\n if (height > map.height) {\n var cells$1 = [];\n for (var i$1 = 0, start$1 = (map.height - 1) * map.width; i$1 < Math.max(map.width, width); i$1++) {\n var header = i$1 >= map.width ? false :\n table.nodeAt(map.map[start$1 + i$1]).type == types.header_cell;\n cells$1.push(header\n ? (emptyHead || (emptyHead = types.header_cell.createAndFill()))\n : (empty || (empty = types.cell.createAndFill())));\n }\n\n var emptyRow = types.row.create(null, Fragment.from(cells$1)), rows = [];\n for (var i$2 = map.height; i$2 < height; i$2++) { rows.push(emptyRow); }\n tr.insert(tr.mapping.slice(mapFrom).map(start + table.nodeSize - 2), rows);\n }\n return !!(empty || emptyHead)\n}\n\n// Make sure the given line (left, top) to (right, top) doesn't cross\n// any rowspan cells by splitting cells that cross it. Return true if\n// something changed.\nfunction isolateHorizontal(tr, map, table, start, left, right, top, mapFrom) {\n if (top == 0 || top == map.height) { return false }\n var found = false;\n for (var col = left; col < right; col++) {\n var index = top * map.width + col, pos = map.map[index];\n if (map.map[index - map.width] == pos) {\n found = true;\n var cell = table.nodeAt(pos);\n var ref = map.findCell(pos);\n var cellTop = ref.top;\n var cellLeft = ref.left;\n tr.setNodeMarkup(tr.mapping.slice(mapFrom).map(pos + start), null, setAttr(cell.attrs, \"rowspan\", top - cellTop));\n tr.insert(tr.mapping.slice(mapFrom).map(map.positionAt(top, cellLeft, table)),\n cell.type.createAndFill(setAttr(cell.attrs, \"rowspan\", (cellTop + cell.attrs.rowspan) - top)));\n col += cell.attrs.colspan - 1;\n }\n }\n return found\n}\n\n// Make sure the given line (left, top) to (left, bottom) doesn't\n// cross any colspan cells by splitting cells that cross it. Return\n// true if something changed.\nfunction isolateVertical(tr, map, table, start, top, bottom, left, mapFrom) {\n if (left == 0 || left == map.width) { return false }\n var found = false;\n for (var row = top; row < bottom; row++) {\n var index = row * map.width + left, pos = map.map[index];\n if (map.map[index - 1] == pos) {\n found = true;\n var cell = table.nodeAt(pos), cellLeft = map.colCount(pos);\n var updatePos = tr.mapping.slice(mapFrom).map(pos + start);\n tr.setNodeMarkup(updatePos, null, removeColSpan(cell.attrs, left - cellLeft, cell.attrs.colspan - (left - cellLeft)));\n tr.insert(updatePos + cell.nodeSize, cell.type.createAndFill(removeColSpan(cell.attrs, 0, left - cellLeft)));\n row += cell.attrs.rowspan - 1;\n }\n }\n return found\n}\n\n// Insert the given set of cells (as returned by `pastedCells`) into a\n// table, at the position pointed at by rect.\nfunction insertCells(state, dispatch, tableStart, rect, cells) {\n var table = tableStart ? state.doc.nodeAt(tableStart - 1) : state.doc, map = TableMap.get(table);\n var top = rect.top;\n var left = rect.left;\n var right = left + cells.width, bottom = top + cells.height;\n var tr = state.tr, mapFrom = 0;\n function recomp() {\n table = tableStart ? tr.doc.nodeAt(tableStart - 1) : tr.doc;\n map = TableMap.get(table);\n mapFrom = tr.mapping.maps.length;\n }\n // Prepare the table to be large enough and not have any cells\n // crossing the boundaries of the rectangle that we want to\n // insert into. If anything about it changes, recompute the table\n // map so that subsequent operations can see the current shape.\n if (growTable(tr, map, table, tableStart, right, bottom, mapFrom)) { recomp(); }\n if (isolateHorizontal(tr, map, table, tableStart, left, right, top, mapFrom)) { recomp(); }\n if (isolateHorizontal(tr, map, table, tableStart, left, right, bottom, mapFrom)) { recomp(); }\n if (isolateVertical(tr, map, table, tableStart, top, bottom, left, mapFrom)) { recomp(); }\n if (isolateVertical(tr, map, table, tableStart, top, bottom, right, mapFrom)) { recomp(); }\n\n for (var row = top; row < bottom; row++) {\n var from = map.positionAt(row, left, table), to = map.positionAt(row, right, table);\n tr.replace(tr.mapping.slice(mapFrom).map(from + tableStart), tr.mapping.slice(mapFrom).map(to + tableStart),\n new Slice(cells.rows[row - top], 0, 0));\n }\n recomp();\n tr.setSelection(new CellSelection(tr.doc.resolve(tableStart + map.positionAt(top, left, table)),\n tr.doc.resolve(tableStart + map.positionAt(bottom - 1, right - 1, table))));\n dispatch(tr);\n}\n\n// This file defines a number of helpers for wiring up user input to\n\nvar handleKeyDown = keydownHandler({\n \"ArrowLeft\": arrow(\"horiz\", -1),\n \"ArrowRight\": arrow(\"horiz\", 1),\n \"ArrowUp\": arrow(\"vert\", -1),\n \"ArrowDown\": arrow(\"vert\", 1),\n\n \"Shift-ArrowLeft\": shiftArrow(\"horiz\", -1),\n \"Shift-ArrowRight\": shiftArrow(\"horiz\", 1),\n \"Shift-ArrowUp\": shiftArrow(\"vert\", -1),\n \"Shift-ArrowDown\": shiftArrow(\"vert\", 1),\n\n \"Backspace\": deleteCellSelection,\n \"Mod-Backspace\": deleteCellSelection,\n \"Delete\": deleteCellSelection,\n \"Mod-Delete\": deleteCellSelection\n});\n\nfunction maybeSetSelection(state, dispatch, selection) {\n if (selection.eq(state.selection)) { return false }\n if (dispatch) { dispatch(state.tr.setSelection(selection).scrollIntoView()); }\n return true\n}\n\nfunction arrow(axis, dir) {\n return function (state, dispatch, view) {\n var sel = state.selection;\n if (sel instanceof CellSelection) {\n return maybeSetSelection(state, dispatch, Selection.near(sel.$headCell, dir))\n }\n if (axis != \"horiz\" && !sel.empty) { return false }\n var end = atEndOfCell(view, axis, dir);\n if (end == null) { return false }\n if (axis == \"horiz\") {\n return maybeSetSelection(state, dispatch, Selection.near(state.doc.resolve(sel.head + dir), dir))\n } else {\n var $cell = state.doc.resolve(end), $next = nextCell($cell, axis, dir), newSel;\n if ($next) { newSel = Selection.near($next, 1); }\n else if (dir < 0) { newSel = Selection.near(state.doc.resolve($cell.before(-1)), -1); }\n else { newSel = Selection.near(state.doc.resolve($cell.after(-1)), 1); }\n return maybeSetSelection(state, dispatch, newSel)\n }\n }\n}\n\nfunction shiftArrow(axis, dir) {\n return function (state, dispatch, view) {\n var sel = state.selection;\n if (!(sel instanceof CellSelection)) {\n var end = atEndOfCell(view, axis, dir);\n if (end == null) { return false }\n sel = new CellSelection(state.doc.resolve(end));\n }\n var $head = nextCell(sel.$headCell, axis, dir);\n if (!$head) { return false }\n return maybeSetSelection(state, dispatch, new CellSelection(sel.$anchorCell, $head))\n }\n}\n\nfunction deleteCellSelection(state, dispatch) {\n var sel = state.selection;\n if (!(sel instanceof CellSelection)) { return false }\n if (dispatch) {\n var tr = state.tr, baseContent = tableNodeTypes(state.schema).cell.createAndFill().content;\n sel.forEachCell(function (cell, pos) {\n if (!cell.content.eq(baseContent))\n { tr.replace(tr.mapping.map(pos + 1), tr.mapping.map(pos + cell.nodeSize - 1),\n new Slice(baseContent, 0, 0)); }\n });\n if (tr.docChanged) { dispatch(tr); }\n }\n return true\n}\n\nfunction handleTripleClick(view, pos) {\n var doc = view.state.doc, $cell = cellAround(doc.resolve(pos));\n if (!$cell) { return false }\n view.dispatch(view.state.tr.setSelection(new CellSelection($cell)));\n return true\n}\n\nfunction handlePaste(view, _, slice) {\n if (!isInTable(view.state)) { return false }\n var cells = pastedCells(slice), sel = view.state.selection;\n if (sel instanceof CellSelection) {\n if (!cells) { cells = {width: 1, height: 1, rows: [Fragment.from(fitSlice(tableNodeTypes(view.state.schema).cell, slice))]}; }\n var table = sel.$anchorCell.node(-1), start = sel.$anchorCell.start(-1);\n var rect = TableMap.get(table).rectBetween(sel.$anchorCell.pos - start, sel.$headCell.pos - start);\n cells = clipCells(cells, rect.right - rect.left, rect.bottom - rect.top);\n insertCells(view.state, view.dispatch, start, rect, cells);\n return true\n } else if (cells) {\n var $cell = selectionCell(view.state), start$1 = $cell.start(-1);\n insertCells(view.state, view.dispatch, start$1, TableMap.get($cell.node(-1)).findCell($cell.pos - start$1), cells);\n return true\n } else {\n return false\n }\n}\n\nfunction handleMouseDown(view, startEvent) {\n if (startEvent.ctrlKey || startEvent.metaKey) { return }\n\n var startDOMCell = domInCell(view, startEvent.target), $anchor;\n if (startEvent.shiftKey && (view.state.selection instanceof CellSelection)) {\n // Adding to an existing cell selection\n setCellSelection(view.state.selection.$anchorCell, startEvent);\n startEvent.preventDefault();\n } else if (startEvent.shiftKey && startDOMCell &&\n ($anchor = cellAround(view.state.selection.$anchor)) != null &&\n cellUnderMouse(view, startEvent).pos != $anchor.pos) {\n // Adding to a selection that starts in another cell (causing a\n // cell selection to be created).\n setCellSelection($anchor, startEvent);\n startEvent.preventDefault();\n } else if (!startDOMCell) {\n // Not in a cell, let the default behavior happen.\n return\n }\n\n // Create and dispatch a cell selection between the given anchor and\n // the position under the mouse.\n function setCellSelection($anchor, event) {\n var $head = cellUnderMouse(view, event);\n var starting = key.getState(view.state) == null;\n if (!$head || !inSameTable($anchor, $head)) {\n if (starting) { $head = $anchor; }\n else { return }\n }\n var selection = new CellSelection($anchor, $head);\n if (starting || !view.state.selection.eq(selection)) {\n var tr = view.state.tr.setSelection(selection);\n if (starting) { tr.setMeta(key, $anchor.pos); }\n view.dispatch(tr);\n }\n }\n\n // Stop listening to mouse motion events.\n function stop() {\n view.root.removeEventListener(\"mouseup\", stop);\n view.root.removeEventListener(\"dragstart\", stop);\n view.root.removeEventListener(\"mousemove\", move);\n if (key.getState(view.state) != null) { view.dispatch(view.state.tr.setMeta(key, -1)); }\n }\n\n function move(event) {\n var anchor = key.getState(view.state), $anchor;\n if (anchor != null) {\n // Continuing an existing cross-cell selection\n $anchor = view.state.doc.resolve(anchor);\n } else if (domInCell(view, event.target) != startDOMCell) {\n // Moving out of the initial cell -- start a new cell selection\n $anchor = cellUnderMouse(view, startEvent);\n if (!$anchor) { return stop() }\n }\n if ($anchor) { setCellSelection($anchor, event); }\n }\n view.root.addEventListener(\"mouseup\", stop);\n view.root.addEventListener(\"dragstart\", stop);\n view.root.addEventListener(\"mousemove\", move);\n}\n\n// Check whether the cursor is at the end of a cell (so that further\n// motion would move out of the cell)\nfunction atEndOfCell(view, axis, dir) {\n if (!(view.state.selection instanceof TextSelection)) { return null }\n var ref = view.state.selection;\n var $head = ref.$head;\n for (var d = $head.depth - 1; d >= 0; d--) {\n var parent = $head.node(d), index = dir < 0 ? $head.index(d) : $head.indexAfter(d);\n if (index != (dir < 0 ? 0 : parent.childCount)) { return null }\n if (parent.type.spec.tableRole == \"cell\" || parent.type.spec.tableRole == \"header_cell\") {\n var cellPos = $head.before(d);\n var dirStr = axis == \"vert\" ? (dir > 0 ? \"down\" : \"up\") : (dir > 0 ? \"right\" : \"left\");\n return view.endOfTextblock(dirStr) ? cellPos : null\n }\n }\n return null\n}\n\nfunction domInCell(view, dom) {\n for (; dom && dom != view.dom; dom = dom.parentNode)\n { if (dom.nodeName == \"TD\" || dom.nodeName == \"TH\") { return dom } }\n}\n\nfunction cellUnderMouse(view, event) {\n var mousePos = view.posAtCoords({left: event.clientX, top: event.clientY});\n if (!mousePos) { return null }\n return mousePos ? cellAround(view.state.doc.resolve(mousePos.pos)) : null\n}\n\n// This file defines helpers for normalizing tables, making sure no\n\nvar fixTablesKey = new PluginKey(\"fix-tables\");\n\n// Helper for iterating through the nodes in a document that changed\n// compared to the given previous document. Useful for avoiding\n// duplicate work on each transaction.\nfunction changedDescendants(old, cur, offset, f) {\n var oldSize = old.childCount, curSize = cur.childCount;\n outer: for (var i = 0, j = 0; i < curSize; i++) {\n var child = cur.child(i);\n for (var scan = j, e = Math.min(oldSize, i + 3); scan < e; scan++) {\n if (old.child(scan) == child) {\n j = scan + 1;\n offset += child.nodeSize;\n continue outer\n }\n }\n f(child, offset);\n if (j < oldSize && old.child(j).sameMarkup(child))\n { changedDescendants(old.child(j), child, offset + 1, f); }\n else\n { child.nodesBetween(0, child.content.size, f, offset + 1); }\n offset += child.nodeSize;\n }\n}\n\n// :: (EditorState, ?EditorState) → ?Transaction\n// Inspect all tables in the given state's document and return a\n// transaction that fixes them, if necessary. If `oldState` was\n// provided, that is assumed to hold a previous, known-good state,\n// which will be used to avoid re-scanning unchanged parts of the\n// document.\nfunction fixTables(state, oldState) {\n var tr, check = function (node, pos) {\n if (node.type.spec.tableRole == \"table\") { tr = fixTable(state, node, pos, tr); }\n };\n if (!oldState) { state.doc.descendants(check); }\n else if (oldState.doc != state.doc) { changedDescendants(oldState.doc, state.doc, 0, check); }\n return tr\n}\n\n// : (EditorState, Node, number, ?Transaction) → ?Transaction\n// Fix the given table, if necessary. Will append to the transaction\n// it was given, if non-null, or create a new one if necessary.\nfunction fixTable(state, table, tablePos, tr) {\n var map = TableMap.get(table);\n if (!map.problems) { return tr }\n if (!tr) { tr = state.tr; }\n\n // Track which rows we must add cells to, so that we can adjust that\n // when fixing collisions.\n var mustAdd = [];\n for (var i = 0; i < map.height; i++) { mustAdd.push(0); }\n for (var i$1 = 0; i$1 < map.problems.length; i$1++) {\n var prob = map.problems[i$1];\n if (prob.type == \"collision\") {\n var cell = table.nodeAt(prob.pos);\n for (var j = 0; j < cell.attrs.rowspan; j++) { mustAdd[prob.row + j] += prob.n; }\n tr.setNodeMarkup(tr.mapping.map(tablePos + 1 + prob.pos), null, removeColSpan(cell.attrs, cell.attrs.colspan - prob.n, prob.n));\n } else if (prob.type == \"missing\") {\n mustAdd[prob.row] += prob.n;\n } else if (prob.type == \"overlong_rowspan\") {\n var cell$1 = table.nodeAt(prob.pos);\n tr.setNodeMarkup(tr.mapping.map(tablePos + 1 + prob.pos), null, setAttr(cell$1.attrs, \"rowspan\", cell$1.attrs.rowspan - prob.n));\n } else if (prob.type == \"colwidth mismatch\") {\n var cell$2 = table.nodeAt(prob.pos);\n tr.setNodeMarkup(tr.mapping.map(tablePos + 1 + prob.pos), null, setAttr(cell$2.attrs, \"colwidth\", prob.colwidth));\n }\n }\n var first, last;\n for (var i$2 = 0; i$2 < mustAdd.length; i$2++) { if (mustAdd[i$2]) {\n if (first == null) { first = i$2; }\n last = i$2;\n } }\n // Add the necessary cells, using a heuristic for whether to add the\n // cells at the start or end of the rows (if it looks like a 'bite'\n // was taken out of the table, add cells at the start of the row\n // after the bite. Otherwise add them at the end).\n for (var i$3 = 0, pos = tablePos + 1; i$3 < map.height; i$3++) {\n var row = table.child(i$3);\n var end = pos + row.nodeSize;\n var add = mustAdd[i$3];\n if (add > 0) {\n var tableNodeType = 'cell';\n if (row.firstChild) {\n tableNodeType = row.firstChild.type.spec.tableRole;\n }\n var nodes = [];\n for (var j$1 = 0; j$1 < add; j$1++)\n { nodes.push(tableNodeTypes(state.schema)[tableNodeType].createAndFill()); }\n var side = (i$3 == 0 || first == i$3 - 1) && last == i$3 ? pos + 1 : end - 1;\n tr.insert(tr.mapping.map(side), nodes);\n }\n pos = end;\n }\n return tr.setMeta(fixTablesKey, { fixTables: true })\n}\n\n// This file defines a number of table-related commands.\n\n// Helper to get the selected rectangle in a table, if any. Adds table\n// map, table node, and table start offset to the object for\n// convenience.\nfunction selectedRect(state) {\n var sel = state.selection, $pos = selectionCell(state);\n var table = $pos.node(-1), tableStart = $pos.start(-1), map = TableMap.get(table);\n var rect;\n if (sel instanceof CellSelection)\n { rect = map.rectBetween(sel.$anchorCell.pos - tableStart, sel.$headCell.pos - tableStart); }\n else\n { rect = map.findCell($pos.pos - tableStart); }\n rect.tableStart = tableStart;\n rect.map = map;\n rect.table = table;\n return rect\n}\n\n// Add a column at the given position in a table.\nfunction addColumn(tr, ref, col) {\n var map = ref.map;\n var tableStart = ref.tableStart;\n var table = ref.table;\n\n var refColumn = col > 0 ? -1 : 0;\n if (columnIsHeader(map, table, col + refColumn))\n { refColumn = col == 0 || col == map.width ? null : 0; }\n\n for (var row = 0; row < map.height; row++) {\n var index = row * map.width + col;\n // If this position falls inside a col-spanning cell\n if (col > 0 && col < map.width && map.map[index - 1] == map.map[index]) {\n var pos = map.map[index], cell = table.nodeAt(pos);\n tr.setNodeMarkup(tr.mapping.map(tableStart + pos), null,\n addColSpan(cell.attrs, col - map.colCount(pos)));\n // Skip ahead if rowspan > 1\n row += cell.attrs.rowspan - 1;\n } else {\n var type = refColumn == null ? tableNodeTypes(table.type.schema).cell\n : table.nodeAt(map.map[index + refColumn]).type;\n var pos$1 = map.positionAt(row, col, table);\n tr.insert(tr.mapping.map(tableStart + pos$1), type.createAndFill());\n }\n }\n return tr\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Command to add a column before the column with the selection.\nfunction addColumnBefore(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state);\n dispatch(addColumn(state.tr, rect, rect.left));\n }\n return true\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Command to add a column after the column with the selection.\nfunction addColumnAfter(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state);\n dispatch(addColumn(state.tr, rect, rect.right));\n }\n return true\n}\n\nfunction removeColumn(tr, ref, col) {\n var map = ref.map;\n var table = ref.table;\n var tableStart = ref.tableStart;\n\n var mapStart = tr.mapping.maps.length;\n for (var row = 0; row < map.height;) {\n var index = row * map.width + col, pos = map.map[index], cell = table.nodeAt(pos);\n // If this is part of a col-spanning cell\n if ((col > 0 && map.map[index - 1] == pos) || (col < map.width - 1 && map.map[index + 1] == pos)) {\n tr.setNodeMarkup(tr.mapping.slice(mapStart).map(tableStart + pos), null,\n removeColSpan(cell.attrs, col - map.colCount(pos)));\n } else {\n var start = tr.mapping.slice(mapStart).map(tableStart + pos);\n tr.delete(start, start + cell.nodeSize);\n }\n row += cell.attrs.rowspan;\n }\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Command function that removes the selected columns from a table.\nfunction deleteColumn(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state), tr = state.tr;\n if (rect.left == 0 && rect.right == rect.map.width) { return false }\n for (var i = rect.right - 1;; i--) {\n removeColumn(tr, rect, i);\n if (i == rect.left) { break }\n rect.table = rect.tableStart ? tr.doc.nodeAt(rect.tableStart - 1) : tr.doc;\n rect.map = TableMap.get(rect.table);\n }\n dispatch(tr);\n }\n return true\n}\n\nfunction rowIsHeader(map, table, row) {\n var headerCell = tableNodeTypes(table.type.schema).header_cell;\n for (var col = 0; col < map.width; col++)\n { if (table.nodeAt(map.map[col + row * map.width]).type != headerCell)\n { return false } }\n return true\n}\n\nfunction addRow(tr, ref, row) {\n var map = ref.map;\n var tableStart = ref.tableStart;\n var table = ref.table;\n\n var rowPos = tableStart;\n for (var i = 0; i < row; i++) { rowPos += table.child(i).nodeSize; }\n var cells = [], refRow = row > 0 ? -1 : 0;\n if (rowIsHeader(map, table, row + refRow))\n { refRow = row == 0 || row == map.height ? null : 0; }\n for (var col = 0, index = map.width * row; col < map.width; col++, index++) {\n // Covered by a rowspan cell\n if (row > 0 && row < map.height && map.map[index] == map.map[index - map.width]) {\n var pos = map.map[index], attrs = table.nodeAt(pos).attrs;\n tr.setNodeMarkup(tableStart + pos, null, setAttr(attrs, \"rowspan\", attrs.rowspan + 1));\n col += attrs.colspan - 1;\n } else {\n var type = refRow == null ? tableNodeTypes(table.type.schema).cell\n : table.nodeAt(map.map[index + refRow * map.width]).type;\n cells.push(type.createAndFill());\n }\n }\n tr.insert(rowPos, tableNodeTypes(table.type.schema).row.create(null, cells));\n return tr\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Add a table row before the selection.\nfunction addRowBefore(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state);\n dispatch(addRow(state.tr, rect, rect.top));\n }\n return true\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Add a table row after the selection.\nfunction addRowAfter(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state);\n dispatch(addRow(state.tr, rect, rect.bottom));\n }\n return true\n}\n\nfunction removeRow(tr, ref, row) {\n var map = ref.map;\n var table = ref.table;\n var tableStart = ref.tableStart;\n\n var rowPos = 0;\n for (var i = 0; i < row; i++) { rowPos += table.child(i).nodeSize; }\n var nextRow = rowPos + table.child(row).nodeSize;\n\n var mapFrom = tr.mapping.maps.length;\n tr.delete(rowPos + tableStart, nextRow + tableStart);\n\n for (var col = 0, index = row * map.width; col < map.width; col++, index++) {\n var pos = map.map[index];\n if (row > 0 && pos == map.map[index - map.width]) {\n // If this cell starts in the row above, simply reduce its rowspan\n var attrs = table.nodeAt(pos).attrs;\n tr.setNodeMarkup(tr.mapping.slice(mapFrom).map(pos + tableStart), null, setAttr(attrs, \"rowspan\", attrs.rowspan - 1));\n col += attrs.colspan - 1;\n } else if (row < map.width && pos == map.map[index + map.width]) {\n // Else, if it continues in the row below, it has to be moved down\n var cell = table.nodeAt(pos);\n var copy = cell.type.create(setAttr(cell.attrs, \"rowspan\", cell.attrs.rowspan - 1), cell.content);\n var newPos = map.positionAt(row + 1, col, table);\n tr.insert(tr.mapping.slice(mapFrom).map(tableStart + newPos), copy);\n col += cell.attrs.colspan - 1;\n }\n }\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Remove the selected rows from a table.\nfunction deleteRow(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var rect = selectedRect(state), tr = state.tr;\n if (rect.top == 0 && rect.bottom == rect.map.height) { return false }\n for (var i = rect.bottom - 1;; i--) {\n removeRow(tr, rect, i);\n if (i == rect.top) { break }\n rect.table = rect.tableStart ? tr.doc.nodeAt(rect.tableStart - 1) : tr.doc;\n rect.map = TableMap.get(rect.table);\n }\n dispatch(tr);\n }\n return true\n}\n\nfunction isEmpty(cell) {\n var c = cell.content;\n return c.childCount == 1 && c.firstChild.isTextblock && c.firstChild.childCount == 0\n}\n\nfunction cellsOverlapRectangle(ref, rect) {\n var width = ref.width;\n var height = ref.height;\n var map = ref.map;\n\n var indexTop = rect.top * width + rect.left, indexLeft = indexTop;\n var indexBottom = (rect.bottom - 1) * width + rect.left, indexRight = indexTop + (rect.right - rect.left - 1);\n for (var i = rect.top; i < rect.bottom; i++) {\n if (rect.left > 0 && map[indexLeft] == map[indexLeft - 1] ||\n rect.right < width && map[indexRight] == map[indexRight + 1]) { return true }\n indexLeft += width; indexRight += width;\n }\n for (var i$1 = rect.left; i$1 < rect.right; i$1++) {\n if (rect.top > 0 && map[indexTop] == map[indexTop - width] ||\n rect.bottom < height && map[indexBottom] == map[indexBottom + width]) { return true }\n indexTop++; indexBottom++;\n }\n return false\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Merge the selected cells into a single cell. Only available when\n// the selected cells' outline forms a rectangle.\nfunction mergeCells(state, dispatch) {\n var sel = state.selection;\n if (!(sel instanceof CellSelection) || sel.$anchorCell.pos == sel.$headCell.pos) { return false }\n var rect = selectedRect(state);\n var map = rect.map;\n if (cellsOverlapRectangle(map, rect)) { return false }\n if (dispatch) {\n var tr = state.tr, seen = {}, content = Fragment.empty, mergedPos, mergedCell;\n for (var row = rect.top; row < rect.bottom; row++) {\n for (var col = rect.left; col < rect.right; col++) {\n var cellPos = map.map[row * map.width + col], cell = rect.table.nodeAt(cellPos);\n if (seen[cellPos]) { continue }\n seen[cellPos] = true;\n if (mergedPos == null) {\n mergedPos = cellPos;\n mergedCell = cell;\n } else {\n if (!isEmpty(cell)) { content = content.append(cell.content); }\n var mapped = tr.mapping.map(cellPos + rect.tableStart);\n tr.delete(mapped, mapped + cell.nodeSize);\n }\n }\n }\n tr.setNodeMarkup(mergedPos + rect.tableStart, null,\n setAttr(addColSpan(mergedCell.attrs, mergedCell.attrs.colspan, (rect.right - rect.left) - mergedCell.attrs.colspan),\n \"rowspan\", rect.bottom - rect.top));\n if (content.size) {\n var end = mergedPos + 1 + mergedCell.content.size;\n var start = isEmpty(mergedCell) ? mergedPos + 1 : end;\n tr.replaceWith(start + rect.tableStart, end + rect.tableStart, content);\n }\n tr.setSelection(new CellSelection(tr.doc.resolve(mergedPos + rect.tableStart)));\n dispatch(tr);\n }\n return true\n}\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Split a selected cell, whose rowpan or colspan is greater than one,\n// into smaller cells. Use the first cell type for the new cells.\nfunction splitCell(state, dispatch) {\n var nodeTypes = tableNodeTypes(state.schema);\n return splitCellWithType(function (ref) {\n var node = ref.node;\n\n return nodeTypes[node.type.spec.tableRole]\n })(state, dispatch)\n}\n\n// :: (getCellType: ({ row: number, col: number, node: Node}) → NodeType) → (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Split a selected cell, whose rowpan or colspan is greater than one,\n// into smaller cells with the cell type (th, td) returned by getType function.\nfunction splitCellWithType(getCellType) {\n return function (state, dispatch) {\n var sel = state.selection;\n var cellNode, cellPos;\n if (!(sel instanceof CellSelection)) {\n cellNode = cellWrapping(sel.$from);\n if (!cellNode) { return false }\n cellPos = cellAround(sel.$from).pos;\n } else {\n if (sel.$anchorCell.pos != sel.$headCell.pos) { return false }\n cellNode = sel.$anchorCell.nodeAfter;\n cellPos = sel.$anchorCell.pos;\n }\n if (cellNode.attrs.colspan == 1 && cellNode.attrs.rowspan == 1) {return false}\n if (dispatch) {\n var baseAttrs = cellNode.attrs, attrs = [], colwidth = baseAttrs.colwidth;\n if (baseAttrs.rowspan > 1) { baseAttrs = setAttr(baseAttrs, \"rowspan\", 1); }\n if (baseAttrs.colspan > 1) { baseAttrs = setAttr(baseAttrs, \"colspan\", 1); }\n var rect = selectedRect(state), tr = state.tr;\n for (var i = 0; i < rect.right - rect.left; i++)\n { attrs.push(colwidth ? setAttr(baseAttrs, \"colwidth\", colwidth && colwidth[i] ? [colwidth[i]] : null) : baseAttrs); }\n var lastCell;\n for (var row = rect.top; row < rect.bottom; row++) {\n var pos = rect.map.positionAt(row, rect.left, rect.table);\n if (row == rect.top) { pos += cellNode.nodeSize; }\n for (var col = rect.left, i$1 = 0; col < rect.right; col++, i$1++) {\n if (col == rect.left && row == rect.top) { continue }\n tr.insert(lastCell = tr.mapping.map(pos + rect.tableStart, 1), getCellType({ node: cellNode, row: row, col: col}).createAndFill(attrs[i$1]));\n }\n }\n tr.setNodeMarkup(cellPos, getCellType({ node: cellNode, row: rect.top, col: rect.left}), attrs[0]);\n if (sel instanceof CellSelection)\n { tr.setSelection(new CellSelection(tr.doc.resolve(sel.$anchorCell.pos),\n lastCell && tr.doc.resolve(lastCell))); }\n dispatch(tr);\n }\n return true\n }\n}\n\n// :: (string, any) → (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Returns a command that sets the given attribute to the given value,\n// and is only available when the currently selected cell doesn't\n// already have that attribute set to that value.\nfunction setCellAttr(name, value) {\n return function(state, dispatch) {\n if (!isInTable(state)) { return false }\n var $cell = selectionCell(state);\n if ($cell.nodeAfter.attrs[name] === value) { return false }\n if (dispatch) {\n var tr = state.tr;\n if (state.selection instanceof CellSelection)\n { state.selection.forEachCell(function (node, pos) {\n if (node.attrs[name] !== value)\n { tr.setNodeMarkup(pos, null, setAttr(node.attrs, name, value)); }\n }); }\n else\n { tr.setNodeMarkup($cell.pos, null, setAttr($cell.nodeAfter.attrs, name, value)); }\n dispatch(tr);\n }\n return true\n }\n}\n\nfunction deprecated_toggleHeader(type) {\n return function(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var types = tableNodeTypes(state.schema);\n var rect = selectedRect(state), tr = state.tr;\n var cells = rect.map.cellsInRect(type == \"column\" ? new Rect(rect.left, 0, rect.right, rect.map.height) :\n type == \"row\" ? new Rect(0, rect.top, rect.map.width, rect.bottom) : rect);\n var nodes = cells.map(function (pos) { return rect.table.nodeAt(pos); });\n for (var i = 0; i < cells.length; i++) // Remove headers, if any\n { if (nodes[i].type == types.header_cell)\n { tr.setNodeMarkup(rect.tableStart + cells[i], types.cell, nodes[i].attrs); } }\n if (tr.steps.length == 0) { for (var i$1 = 0; i$1 < cells.length; i$1++) // No headers removed, add instead\n { tr.setNodeMarkup(rect.tableStart + cells[i$1], types.header_cell, nodes[i$1].attrs); } }\n dispatch(tr);\n }\n return true\n }\n}\n\nfunction isHeaderEnabledByType(type, rect, types) {\n // Get cell positions for first row or first column\n var cellPositions = rect.map.cellsInRect({\n left: 0,\n top: 0,\n right: type == \"row\" ? rect.map.width : 1,\n bottom: type == \"column\" ? rect.map.height : 1,\n });\n\n for (var i = 0; i < cellPositions.length; i++) {\n var cell = rect.table.nodeAt(cellPositions[i]);\n if (cell && cell.type !== types.header_cell) {\n return false\n }\n }\n\n return true\n}\n\n// :: (string, ?{ useDeprecatedLogic: bool }) → (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Toggles between row/column header and normal cells (Only applies to first row/column).\n// For deprecated behavior pass `useDeprecatedLogic` in options with true.\nfunction toggleHeader(type, options) {\n options = options || { useDeprecatedLogic: false };\n\n if (options.useDeprecatedLogic)\n { return deprecated_toggleHeader(type) }\n\n return function(state, dispatch) {\n if (!isInTable(state)) { return false }\n if (dispatch) {\n var types = tableNodeTypes(state.schema);\n var rect = selectedRect(state), tr = state.tr;\n\n var isHeaderRowEnabled = isHeaderEnabledByType(\"row\", rect, types);\n var isHeaderColumnEnabled = isHeaderEnabledByType(\"column\", rect, types);\n\n var isHeaderEnabled = type === \"column\" ? isHeaderRowEnabled :\n type === \"row\" ? isHeaderColumnEnabled : false;\n\n var selectionStartsAt = isHeaderEnabled ? 1 : 0;\n\n var cellsRect = type == \"column\" ? new Rect(0, selectionStartsAt, 1, rect.map.height) :\n type == \"row\" ? new Rect(selectionStartsAt, 0, rect.map.width, 1) : rect;\n\n var newType = type == \"column\" ? isHeaderColumnEnabled ? types.cell : types.header_cell :\n type == \"row\" ? isHeaderRowEnabled ? types.cell : types.header_cell : types.cell;\n\n rect.map.cellsInRect(cellsRect).forEach(function (relativeCellPos) {\n var cellPos = relativeCellPos + rect.tableStart;\n var cell = tr.doc.nodeAt(cellPos);\n\n if (cell) {\n tr.setNodeMarkup(cellPos, newType, cell.attrs);\n }\n });\n\n dispatch(tr);\n }\n return true\n }\n}\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Toggles whether the selected row contains header cells.\nvar toggleHeaderRow = toggleHeader(\"row\", { useDeprecatedLogic: true });\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Toggles whether the selected column contains header cells.\nvar toggleHeaderColumn = toggleHeader(\"column\", { useDeprecatedLogic: true });\n\n// :: (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Toggles whether the selected cells are header cells.\nvar toggleHeaderCell = toggleHeader(\"cell\", { useDeprecatedLogic: true });\n\nfunction findNextCell($cell, dir) {\n if (dir < 0) {\n var before = $cell.nodeBefore;\n if (before) { return $cell.pos - before.nodeSize }\n for (var row = $cell.index(-1) - 1, rowEnd = $cell.before(); row >= 0; row--) {\n var rowNode = $cell.node(-1).child(row);\n if (rowNode.childCount) { return rowEnd - 1 - rowNode.lastChild.nodeSize }\n rowEnd -= rowNode.nodeSize;\n }\n } else {\n if ($cell.index() < $cell.parent.childCount - 1) { return $cell.pos + $cell.nodeAfter.nodeSize }\n var table = $cell.node(-1);\n for (var row$1 = $cell.indexAfter(-1), rowStart = $cell.after(); row$1 < table.childCount; row$1++) {\n var rowNode$1 = table.child(row$1);\n if (rowNode$1.childCount) { return rowStart + 1 }\n rowStart += rowNode$1.nodeSize;\n }\n }\n}\n\n// :: (number) → (EditorState, dispatch: ?(tr: Transaction)) → bool\n// Returns a command for selecting the next (direction=1) or previous\n// (direction=-1) cell in a table.\nfunction goToNextCell(direction) {\n return function(state, dispatch) {\n if (!isInTable(state)) { return false }\n var cell = findNextCell(selectionCell(state), direction);\n if (cell == null) { return }\n if (dispatch) {\n var $cell = state.doc.resolve(cell);\n dispatch(state.tr.setSelection(TextSelection.between($cell, moveCellForward($cell))).scrollIntoView());\n }\n return true\n }\n}\n\n// :: (EditorState, ?(tr: Transaction)) → bool\n// Deletes the table around the selection, if any.\nfunction deleteTable(state, dispatch) {\n var $pos = state.selection.$anchor;\n for (var d = $pos.depth; d > 0; d--) {\n var node = $pos.node(d);\n if (node.type.spec.tableRole == \"table\") {\n if (dispatch) { dispatch(state.tr.delete($pos.before(d), $pos.after(d)).scrollIntoView()); }\n return true\n }\n }\n return false\n}\n\nvar TableView = function TableView(node, cellMinWidth) {\n this.node = node;\n this.cellMinWidth = cellMinWidth;\n this.dom = document.createElement(\"div\");\n this.dom.className = \"tableWrapper\";\n this.table = this.dom.appendChild(document.createElement(\"table\"));\n this.colgroup = this.table.appendChild(document.createElement(\"colgroup\"));\n updateColumns(node, this.colgroup, this.table, cellMinWidth);\n this.contentDOM = this.table.appendChild(document.createElement(\"tbody\"));\n};\n\nTableView.prototype.update = function update (node) {\n if (node.type != this.node.type) { return false }\n this.node = node;\n updateColumns(node, this.colgroup, this.table, this.cellMinWidth);\n return true\n};\n\nTableView.prototype.ignoreMutation = function ignoreMutation (record) {\n return record.type == \"attributes\" && (record.target == this.table || this.colgroup.contains(record.target))\n};\n\nfunction updateColumns(node, colgroup, table, cellMinWidth, overrideCol, overrideValue) {\n var totalWidth = 0, fixedWidth = true;\n var nextDOM = colgroup.firstChild, row = node.firstChild;\n for (var i = 0, col = 0; i < row.childCount; i++) {\n var ref = row.child(i).attrs;\n var colspan = ref.colspan;\n var colwidth = ref.colwidth;\n for (var j = 0; j < colspan; j++, col++) {\n var hasWidth = overrideCol == col ? overrideValue : colwidth && colwidth[j];\n var cssWidth = hasWidth ? hasWidth + \"px\" : \"\";\n totalWidth += hasWidth || cellMinWidth;\n if (!hasWidth) { fixedWidth = false; }\n if (!nextDOM) {\n colgroup.appendChild(document.createElement(\"col\")).style.width = cssWidth;\n } else {\n if (nextDOM.style.width != cssWidth) { nextDOM.style.width = cssWidth; }\n nextDOM = nextDOM.nextSibling;\n }\n }\n }\n\n while (nextDOM) {\n var after = nextDOM.nextSibling;\n nextDOM.parentNode.removeChild(nextDOM);\n nextDOM = after;\n }\n\n if (fixedWidth) {\n table.style.width = totalWidth + \"px\";\n table.style.minWidth = \"\";\n } else {\n table.style.width = \"\";\n table.style.minWidth = totalWidth + \"px\";\n }\n}\n\nvar key$1 = new PluginKey(\"tableColumnResizing\");\n\nfunction columnResizing(ref) {\n if ( ref === void 0 ) ref = {};\n var handleWidth = ref.handleWidth; if ( handleWidth === void 0 ) handleWidth = 5;\n var cellMinWidth = ref.cellMinWidth; if ( cellMinWidth === void 0 ) cellMinWidth = 25;\n var View = ref.View; if ( View === void 0 ) View = TableView;\n var lastColumnResizable = ref.lastColumnResizable; if ( lastColumnResizable === void 0 ) lastColumnResizable = true;\n\n var plugin = new Plugin({\n key: key$1,\n state: {\n init: function init(_, state) {\n this.spec.props.nodeViews[tableNodeTypes(state.schema).table.name] =\n function (node, view) { return new View(node, cellMinWidth, view); };\n return new ResizeState(-1, false)\n },\n apply: function apply(tr, prev) {\n return prev.apply(tr)\n }\n },\n props: {\n attributes: function attributes(state) {\n var pluginState = key$1.getState(state);\n return pluginState.activeHandle > -1 ? {class: \"resize-cursor\"} : null\n },\n\n handleDOMEvents: {\n mousemove: function mousemove(view, event) { handleMouseMove(view, event, handleWidth, cellMinWidth, lastColumnResizable); },\n mouseleave: function mouseleave(view) { handleMouseLeave(view); },\n mousedown: function mousedown(view, event) { handleMouseDown$1(view, event, cellMinWidth); }\n },\n\n decorations: function decorations(state) {\n var pluginState = key$1.getState(state);\n if (pluginState.activeHandle > -1) { return handleDecorations(state, pluginState.activeHandle) }\n },\n\n nodeViews: {}\n }\n });\n return plugin\n}\n\nvar ResizeState = function ResizeState(activeHandle, dragging) {\n this.activeHandle = activeHandle;\n this.dragging = dragging;\n};\n\nResizeState.prototype.apply = function apply (tr) {\n var state = this, action = tr.getMeta(key$1);\n if (action && action.setHandle != null)\n { return new ResizeState(action.setHandle, null) }\n if (action && action.setDragging !== undefined)\n { return new ResizeState(state.activeHandle, action.setDragging) }\n if (state.activeHandle > -1 && tr.docChanged) {\n var handle = tr.mapping.map(state.activeHandle, -1);\n if (!pointsAtCell(tr.doc.resolve(handle))) { handle = null; }\n state = new ResizeState(handle, state.dragging);\n }\n return state\n};\n\nfunction handleMouseMove(view, event, handleWidth, cellMinWidth, lastColumnResizable) {\n var pluginState = key$1.getState(view.state);\n\n if (!pluginState.dragging) {\n var target = domCellAround(event.target), cell = -1;\n if (target) {\n var ref = target.getBoundingClientRect();\n var left = ref.left;\n var right = ref.right;\n if (event.clientX - left <= handleWidth)\n { cell = edgeCell(view, event, \"left\"); }\n else if (right - event.clientX <= handleWidth)\n { cell = edgeCell(view, event, \"right\"); }\n }\n\n if (cell != pluginState.activeHandle) {\n if (!lastColumnResizable && cell !== -1) {\n var $cell = view.state.doc.resolve(cell);\n var table = $cell.node(-1), map = TableMap.get(table), start = $cell.start(-1);\n var col = map.colCount($cell.pos - start) + $cell.nodeAfter.attrs.colspan - 1;\n\n if (col == map.width - 1) {\n return\n }\n }\n\n updateHandle(view, cell);\n }\n }\n}\n\nfunction handleMouseLeave(view) {\n var pluginState = key$1.getState(view.state);\n if (pluginState.activeHandle > -1 && !pluginState.dragging) { updateHandle(view, -1); }\n}\n\nfunction handleMouseDown$1(view, event, cellMinWidth) {\n var pluginState = key$1.getState(view.state);\n if (pluginState.activeHandle == -1 || pluginState.dragging) { return false }\n\n var cell = view.state.doc.nodeAt(pluginState.activeHandle);\n var width = currentColWidth(view, pluginState.activeHandle, cell.attrs);\n view.dispatch(view.state.tr.setMeta(key$1, {setDragging: {startX: event.clientX, startWidth: width}}));\n\n function finish(event) {\n window.removeEventListener(\"mouseup\", finish);\n window.removeEventListener(\"mousemove\", move);\n var pluginState = key$1.getState(view.state);\n if (pluginState.dragging) {\n updateColumnWidth(view, pluginState.activeHandle, draggedWidth(pluginState.dragging, event, cellMinWidth));\n view.dispatch(view.state.tr.setMeta(key$1, {setDragging: null}));\n }\n }\n function move(event) {\n if (!event.which) { return finish(event) }\n var pluginState = key$1.getState(view.state);\n var dragged = draggedWidth(pluginState.dragging, event, cellMinWidth);\n displayColumnWidth(view, pluginState.activeHandle, dragged, cellMinWidth);\n }\n\n window.addEventListener(\"mouseup\", finish);\n window.addEventListener(\"mousemove\", move);\n event.preventDefault();\n return true\n}\n\nfunction currentColWidth(view, cellPos, ref) {\n var colspan = ref.colspan;\n var colwidth = ref.colwidth;\n\n var width = colwidth && colwidth[colwidth.length - 1];\n if (width) { return width }\n var dom = view.domAtPos(cellPos);\n var node = dom.node.childNodes[dom.offset];\n var domWidth = node.offsetWidth, parts = colspan;\n if (colwidth) { for (var i = 0; i < colspan; i++) { if (colwidth[i]) {\n domWidth -= colwidth[i];\n parts--;\n } } }\n return domWidth / parts\n}\n\nfunction domCellAround(target) {\n while (target && target.nodeName != \"TD\" && target.nodeName != \"TH\")\n { target = target.classList.contains(\"ProseMirror\") ? null : target.parentNode; }\n return target\n}\n\nfunction edgeCell(view, event, side) {\n var found = view.posAtCoords({left: event.clientX, top: event.clientY});\n if (!found) { return -1 }\n var pos = found.pos;\n var $cell = cellAround(view.state.doc.resolve(pos));\n if (!$cell) { return -1 }\n if (side == \"right\") { return $cell.pos }\n var map = TableMap.get($cell.node(-1)), start = $cell.start(-1);\n var index = map.map.indexOf($cell.pos - start);\n return index % map.width == 0 ? -1 : start + map.map[index - 1]\n}\n\nfunction draggedWidth(dragging, event, cellMinWidth) {\n var offset = event.clientX - dragging.startX;\n return Math.max(cellMinWidth, dragging.startWidth + offset)\n}\n\nfunction updateHandle(view, value) {\n view.dispatch(view.state.tr.setMeta(key$1, {setHandle: value}));\n}\n\nfunction updateColumnWidth(view, cell, width) {\n var $cell = view.state.doc.resolve(cell);\n var table = $cell.node(-1), map = TableMap.get(table), start = $cell.start(-1);\n var col = map.colCount($cell.pos - start) + $cell.nodeAfter.attrs.colspan - 1;\n var tr = view.state.tr;\n for (var row = 0; row < map.height; row++) {\n var mapIndex = row * map.width + col;\n // Rowspanning cell that has already been handled\n if (row && map.map[mapIndex] == map.map[mapIndex - map.width]) { continue }\n var pos = map.map[mapIndex];\n var ref = table.nodeAt(pos);\n var attrs = ref.attrs;\n var index = attrs.colspan == 1 ? 0 : col - map.colCount(pos);\n if (attrs.colwidth && attrs.colwidth[index] == width) { continue }\n var colwidth = attrs.colwidth ? attrs.colwidth.slice() : zeroes(attrs.colspan);\n colwidth[index] = width;\n tr.setNodeMarkup(start + pos, null, setAttr(attrs, \"colwidth\", colwidth));\n }\n if (tr.docChanged) { view.dispatch(tr); }\n}\n\nfunction displayColumnWidth(view, cell, width, cellMinWidth) {\n var $cell = view.state.doc.resolve(cell);\n var table = $cell.node(-1), start = $cell.start(-1);\n var col = TableMap.get(table).colCount($cell.pos - start) + $cell.nodeAfter.attrs.colspan - 1;\n var dom = view.domAtPos($cell.start(-1)).node;\n while (dom.nodeName != \"TABLE\") { dom = dom.parentNode; }\n updateColumns(table, dom.firstChild, dom, cellMinWidth, col, width);\n}\n\nfunction zeroes(n) {\n var result = [];\n for (var i = 0; i < n; i++) { result.push(0); }\n return result\n}\n\nfunction handleDecorations(state, cell) {\n var decorations = [];\n var $cell = state.doc.resolve(cell);\n var table = $cell.node(-1), map = TableMap.get(table), start = $cell.start(-1);\n var col = map.colCount($cell.pos - start) + $cell.nodeAfter.attrs.colspan;\n for (var row = 0; row < map.height; row++) {\n var index = col + row * map.width - 1;\n // For positions that are have either a different cell or the end\n // of the table to their right, and either the top of the table or\n // a different cell above them, add a decoration\n if ((col == map.width || map.map[index] != map.map[index + 1]) &&\n (row == 0 || map.map[index - 1] != map.map[index - 1 - map.width])) {\n var cellPos = map.map[index];\n var pos = start + cellPos + table.nodeAt(cellPos).nodeSize - 1;\n var dom = document.createElement(\"div\");\n dom.className = \"column-resize-handle\";\n decorations.push(Decoration.widget(pos, dom));\n }\n }\n return DecorationSet.create(state.doc, decorations)\n}\n\n// This file defines a plugin that handles the drawing of cell\n\n// :: () → Plugin\n//\n// Creates a [plugin](http://prosemirror.net/docs/ref/#state.Plugin)\n// that, when added to an editor, enables cell-selection, handles\n// cell-based copy/paste, and makes sure tables stay well-formed (each\n// row has the same width, and cells don't overlap).\n//\n// You should probably put this plugin near the end of your array of\n// plugins, since it handles mouse and arrow key events in tables\n// rather broadly, and other plugins, like the gap cursor or the\n// column-width dragging plugin, might want to get a turn first to\n// perform more specific behavior.\nfunction tableEditing(ref) {\n if ( ref === void 0 ) ref = {};\n var allowTableNodeSelection = ref.allowTableNodeSelection; if ( allowTableNodeSelection === void 0 ) allowTableNodeSelection = false;\n\n return new Plugin({\n key: key,\n\n // This piece of state is used to remember when a mouse-drag\n // cell-selection is happening, so that it can continue even as\n // transactions (which might move its anchor cell) come in.\n state: {\n init: function init() { return null },\n apply: function apply(tr, cur) {\n var set = tr.getMeta(key);\n if (set != null) { return set == -1 ? null : set }\n if (cur == null || !tr.docChanged) { return cur }\n var ref = tr.mapping.mapResult(cur);\n var deleted = ref.deleted;\n var pos = ref.pos;\n return deleted ? null : pos\n }\n },\n\n props: {\n decorations: drawCellSelection,\n\n handleDOMEvents: {\n mousedown: handleMouseDown\n },\n\n createSelectionBetween: function createSelectionBetween(view) {\n if (key.getState(view.state) != null) { return view.state.selection }\n },\n\n handleTripleClick: handleTripleClick,\n\n handleKeyDown: handleKeyDown,\n\n handlePaste: handlePaste\n },\n\n appendTransaction: function appendTransaction(_, oldState, state) {\n return normalizeSelection(state, fixTables(state, oldState), allowTableNodeSelection)\n }\n })\n}\n\nexport { CellSelection, TableMap, TableView, clipCells as __clipCells, insertCells as __insertCells, pastedCells as __pastedCells, addColSpan, addColumn, addColumnAfter, addColumnBefore, addRow, addRowAfter, addRowBefore, cellAround, colCount, columnIsHeader, columnResizing, key$1 as columnResizingPluginKey, deleteColumn, deleteRow, deleteTable, findCell, fixTables, fixTablesKey, goToNextCell, handlePaste, inSameTable, isInTable, mergeCells, moveCellForward, nextCell, pointsAtCell, removeColSpan, removeColumn, removeRow, rowIsHeader, selectedRect, selectionCell, setAttr, setCellAttr, splitCell, splitCellWithType, tableEditing, key as tableEditingKey, tableNodeTypes, tableNodes, toggleHeader, toggleHeaderCell, toggleHeaderColumn, toggleHeaderRow, updateColumns as updateColumnsOnResize };\n//# sourceMappingURL=index.es.js.map\n","//\n// format - printf-like string formatting for JavaScript\n// github.com/samsonjs/format\n// @_sjs\n//\n// Copyright 2010 - 2013 Sami Samhuri <sami@samhuri.net>\n//\n// MIT License\n// http://sjs.mit-license.org\n//\n\n;(function() {\n\n //// Export the API\n var namespace;\n\n // CommonJS / Node module\n if (typeof module !== 'undefined') {\n namespace = module.exports = format;\n }\n\n // Browsers and other environments\n else {\n // Get the global object. Works in ES3, ES5, and ES5 strict mode.\n namespace = (function(){ return this || (1,eval)('this') }());\n }\n\n namespace.format = format;\n namespace.vsprintf = vsprintf;\n\n if (typeof console !== 'undefined' && typeof console.log === 'function') {\n namespace.printf = printf;\n }\n\n function printf(/* ... */) {\n console.log(format.apply(null, arguments));\n }\n\n function vsprintf(fmt, replacements) {\n return format.apply(null, [fmt].concat(replacements));\n }\n\n function format(fmt) {\n var argIndex = 1 // skip initial format argument\n , args = [].slice.call(arguments)\n , i = 0\n , n = fmt.length\n , result = ''\n , c\n , escaped = false\n , arg\n , tmp\n , leadingZero = false\n , precision\n , nextArg = function() { return args[argIndex++]; }\n , slurpNumber = function() {\n var digits = '';\n while (/\\d/.test(fmt[i])) {\n digits += fmt[i++];\n c = fmt[i];\n }\n return digits.length > 0 ? parseInt(digits) : null;\n }\n ;\n for (; i < n; ++i) {\n c = fmt[i];\n if (escaped) {\n escaped = false;\n if (c == '.') {\n leadingZero = false;\n c = fmt[++i];\n }\n else if (c == '0' && fmt[i + 1] == '.') {\n leadingZero = true;\n i += 2;\n c = fmt[i];\n }\n else {\n leadingZero = true;\n }\n precision = slurpNumber();\n switch (c) {\n case 'b': // number in binary\n result += parseInt(nextArg(), 10).toString(2);\n break;\n case 'c': // character\n arg = nextArg();\n if (typeof arg === 'string' || arg instanceof String)\n result += arg;\n else\n result += String.fromCharCode(parseInt(arg, 10));\n break;\n case 'd': // number in decimal\n result += parseInt(nextArg(), 10);\n break;\n case 'f': // floating point number\n tmp = String(parseFloat(nextArg()).toFixed(precision || 6));\n result += leadingZero ? tmp : tmp.replace(/^0/, '');\n break;\n case 'j': // JSON\n result += JSON.stringify(nextArg());\n break;\n case 'o': // number in octal\n result += '0' + parseInt(nextArg(), 10).toString(8);\n break;\n case 's': // string\n result += nextArg();\n break;\n case 'x': // lowercase hexadecimal\n result += '0x' + parseInt(nextArg(), 10).toString(16);\n break;\n case 'X': // uppercase hexadecimal\n result += '0x' + parseInt(nextArg(), 10).toString(16).toUpperCase();\n break;\n default:\n result += c;\n break;\n }\n } else if (c === '%') {\n escaped = true;\n } else {\n result += c;\n }\n }\n return result;\n }\n\n}());\n","const {\n noopTest,\n edit,\n merge\n} = require('./helpers.js');\n\n/**\n * Block-Level Grammar\n */\nconst block = {\n newline: /^\\n+/,\n code: /^( {4}[^\\n]+\\n*)+/,\n fences: /^ {0,3}(`{3,}(?=[^`\\n]*\\n)|~{3,})([^\\n]*)\\n(?:|([\\s\\S]*?)\\n)(?: {0,3}\\1[~`]* *(?:\\n+|$)|$)/,\n hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)/,\n heading: /^ {0,3}(#{1,6}) +([^\\n]*?)(?: +#+)? *(?:\\n+|$)/,\n blockquote: /^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/,\n list: /^( {0,3})(bull) [\\s\\S]+?(?:hr|def|\\n{2,}(?! )(?!\\1bull )\\n*|\\s*$)/,\n html: '^ {0,3}(?:' // optional indentation\n + '<(script|pre|style)[\\\\s>][\\\\s\\\\S]*?(?:</\\\\1>[^\\\\n]*\\\\n+|$)' // (1)\n + '|comment[^\\\\n]*(\\\\n+|$)' // (2)\n + '|<\\\\?[\\\\s\\\\S]*?\\\\?>\\\\n*' // (3)\n + '|<![A-Z][\\\\s\\\\S]*?>\\\\n*' // (4)\n + '|<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>\\\\n*' // (5)\n + '|</?(tag)(?: +|\\\\n|/?>)[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (6)\n + '|<(?!script|pre|style)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (7) open tag\n + '|</(?!script|pre|style)[a-z][\\\\w-]*\\\\s*>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:\\\\n{2,}|$)' // (7) closing tag\n + ')',\n def: /^ {0,3}\\[(label)\\]: *\\n? *<?([^\\s>]+)>?(?:(?: +\\n? *| *\\n *)(title))? *(?:\\n+|$)/,\n nptable: noopTest,\n table: noopTest,\n lheading: /^([^\\n]+)\\n {0,3}(=+|-+) *(?:\\n+|$)/,\n // regex template, placeholders will be replaced according to different paragraph\n // interruption rules of commonmark and the original markdown spec:\n _paragraph: /^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\\n]+)*)/,\n text: /^[^\\n]+/\n};\n\nblock._label = /(?!\\s*\\])(?:\\\\[\\[\\]]|[^\\[\\]])+/;\nblock._title = /(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/;\nblock.def = edit(block.def)\n .replace('label', block._label)\n .replace('title', block._title)\n .getRegex();\n\nblock.bullet = /(?:[*+-]|\\d{1,9}\\.)/;\nblock.item = /^( *)(bull) ?[^\\n]*(?:\\n(?!\\1bull ?)[^\\n]*)*/;\nblock.item = edit(block.item, 'gm')\n .replace(/bull/g, block.bullet)\n .getRegex();\n\nblock.list = edit(block.list)\n .replace(/bull/g, block.bullet)\n .replace('hr', '\\\\n+(?=\\\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$))')\n .replace('def', '\\\\n+(?=' + block.def.source + ')')\n .getRegex();\n\nblock._tag = 'address|article|aside|base|basefont|blockquote|body|caption'\n + '|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption'\n + '|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe'\n + '|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option'\n + '|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr'\n + '|track|ul';\nblock._comment = /<!--(?!-?>)[\\s\\S]*?-->/;\nblock.html = edit(block.html, 'i')\n .replace('comment', block._comment)\n .replace('tag', block._tag)\n .replace('attribute', / +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/)\n .getRegex();\n\nblock.paragraph = edit(block._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('|lheading', '') // setex headings don't interrupt commonmark paragraphs\n .replace('blockquote', ' {0,3}>')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // pars can be interrupted by type (6) html blocks\n .getRegex();\n\nblock.blockquote = edit(block.blockquote)\n .replace('paragraph', block.paragraph)\n .getRegex();\n\n/**\n * Normal Block Grammar\n */\n\nblock.normal = merge({}, block);\n\n/**\n * GFM Block Grammar\n */\n\nblock.gfm = merge({}, block.normal, {\n nptable: '^ *([^|\\\\n ].*\\\\|.*)\\\\n' // Header\n + ' *([-:]+ *\\\\|[-| :]*)' // Align\n + '(?:\\\\n((?:(?!\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)', // Cells\n table: '^ *\\\\|(.+)\\\\n' // Header\n + ' *\\\\|?( *[-:]+[-| :]*)' // Align\n + '(?:\\\\n *((?:(?!\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)' // Cells\n});\n\nblock.gfm.nptable = edit(block.gfm.nptable)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\n\nblock.gfm.table = edit(block.gfm.table)\n .replace('hr', block.hr)\n .replace('heading', ' {0,3}#{1,6} ')\n .replace('blockquote', ' {0,3}>')\n .replace('code', ' {4}[^\\\\n]')\n .replace('fences', ' {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n')\n .replace('list', ' {0,3}(?:[*+-]|1[.)]) ') // only lists starting from 1 can interrupt\n .replace('html', '</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|!--)')\n .replace('tag', block._tag) // tables can be interrupted by type (6) html blocks\n .getRegex();\n\n/**\n * Pedantic grammar (original John Gruber's loose markdown specification)\n */\n\nblock.pedantic = merge({}, block.normal, {\n html: edit(\n '^ *(?:comment *(?:\\\\n|\\\\s*$)'\n + '|<(tag)[\\\\s\\\\S]+?</\\\\1> *(?:\\\\n{2,}|\\\\s*$)' // closed tag\n + '|<tag(?:\"[^\"]*\"|\\'[^\\']*\\'|\\\\s[^\\'\"/>\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))')\n .replace('comment', block._comment)\n .replace(/tag/g, '(?!(?:'\n + 'a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub'\n + '|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)'\n + '\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b')\n .getRegex(),\n def: /^ *\\[([^\\]]+)\\]: *<?([^\\s>]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,\n heading: /^ *(#{1,6}) *([^\\n]+?) *(?:#+ *)?(?:\\n+|$)/,\n fences: noopTest, // fences not supported\n paragraph: edit(block.normal._paragraph)\n .replace('hr', block.hr)\n .replace('heading', ' *#{1,6} *[^\\n]')\n .replace('lheading', block.lheading)\n .replace('blockquote', ' {0,3}>')\n .replace('|fences', '')\n .replace('|list', '')\n .replace('|html', '')\n .getRegex()\n});\n\n/**\n * Inline-Level Grammar\n */\nconst inline = {\n escape: /^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,\n autolink: /^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/,\n url: noopTest,\n tag: '^comment'\n + '|^</[a-zA-Z][\\\\w:-]*\\\\s*>' // self-closing tag\n + '|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>' // open tag\n + '|^<\\\\?[\\\\s\\\\S]*?\\\\?>' // processing instruction, e.g. <?php ?>\n + '|^<![a-zA-Z]+\\\\s[\\\\s\\\\S]*?>' // declaration, e.g. <!DOCTYPE html>\n + '|^<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>', // CDATA section\n link: /^!?\\[(label)\\]\\(\\s*(href)(?:\\s+(title))?\\s*\\)/,\n reflink: /^!?\\[(label)\\]\\[(?!\\s*\\])((?:\\\\[\\[\\]]?|[^\\[\\]\\\\])+)\\]/,\n nolink: /^!?\\[(?!\\s*\\])((?:\\[[^\\[\\]]*\\]|\\\\[\\[\\]]|[^\\[\\]])*)\\](?:\\[\\])?/,\n strong: /^__([^\\s_])__(?!_)|^\\*\\*([^\\s*])\\*\\*(?!\\*)|^__([^\\s][\\s\\S]*?[^\\s])__(?!_)|^\\*\\*([^\\s][\\s\\S]*?[^\\s])\\*\\*(?!\\*)/,\n em: /^_([^\\s_])_(?!_)|^\\*([^\\s*<\\[])\\*(?!\\*)|^_([^\\s<][\\s\\S]*?[^\\s_])_(?!_|[^\\spunctuation])|^_([^\\s_<][\\s\\S]*?[^\\s])_(?!_|[^\\spunctuation])|^\\*([^\\s<\"][\\s\\S]*?[^\\s\\*])\\*(?!\\*|[^\\spunctuation])|^\\*([^\\s*\"<\\[][\\s\\S]*?[^\\s])\\*(?!\\*)/,\n code: /^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,\n br: /^( {2,}|\\\\)\\n(?!\\s*$)/,\n del: noopTest,\n text: /^(`+|[^`])(?:[\\s\\S]*?(?:(?=[\\\\<!\\[`*]|\\b_|$)|[^ ](?= {2,}\\n))|(?= {2,}\\n))/\n};\n\n// list of punctuation marks from common mark spec\n// without ` and ] to workaround Rule 17 (inline code blocks/links)\ninline._punctuation = '!\"#$%&\\'()*+,\\\\-./:;<=>?@\\\\[^_{|}~';\ninline.em = edit(inline.em).replace(/punctuation/g, inline._punctuation).getRegex();\n\ninline._escapes = /\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/g;\n\ninline._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;\ninline._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])?)+(?![-_])/;\ninline.autolink = edit(inline.autolink)\n .replace('scheme', inline._scheme)\n .replace('email', inline._email)\n .getRegex();\n\ninline._attribute = /\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/;\n\ninline.tag = edit(inline.tag)\n .replace('comment', block._comment)\n .replace('attribute', inline._attribute)\n .getRegex();\n\ninline._label = /(?:\\[[^\\[\\]]*\\]|\\\\.|`[^`]*`|[^\\[\\]\\\\`])*?/;\ninline._href = /<(?:\\\\[<>]?|[^\\s<>\\\\])*>|[^\\s\\x00-\\x1f]*/;\ninline._title = /\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/;\n\ninline.link = edit(inline.link)\n .replace('label', inline._label)\n .replace('href', inline._href)\n .replace('title', inline._title)\n .getRegex();\n\ninline.reflink = edit(inline.reflink)\n .replace('label', inline._label)\n .getRegex();\n\n/**\n * Normal Inline Grammar\n */\n\ninline.normal = merge({}, inline);\n\n/**\n * Pedantic Inline Grammar\n */\n\ninline.pedantic = merge({}, inline.normal, {\n strong: /^__(?=\\S)([\\s\\S]*?\\S)__(?!_)|^\\*\\*(?=\\S)([\\s\\S]*?\\S)\\*\\*(?!\\*)/,\n em: /^_(?=\\S)([\\s\\S]*?\\S)_(?!_)|^\\*(?=\\S)([\\s\\S]*?\\S)\\*(?!\\*)/,\n link: edit(/^!?\\[(label)\\]\\((.*?)\\)/)\n .replace('label', inline._label)\n .getRegex(),\n reflink: edit(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/)\n .replace('label', inline._label)\n .getRegex()\n});\n\n/**\n * GFM Inline Grammar\n */\n\ninline.gfm = merge({}, inline.normal, {\n escape: edit(inline.escape).replace('])', '~|])').getRegex(),\n _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,\n url: /^((?:ftp|https?):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/,\n _backpedal: /(?:[^?!.,:;*_~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,\n del: /^~+(?=\\S)([\\s\\S]*?\\S)~+/,\n text: /^(`+|[^`])(?:[\\s\\S]*?(?:(?=[\\\\<!\\[`*~]|\\b_|https?:\\/\\/|ftp:\\/\\/|www\\.|$)|[^ ](?= {2,}\\n)|[^a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-](?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@))|(?= {2,}\\n|[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@))/\n});\n\ninline.gfm.url = edit(inline.gfm.url, 'i')\n .replace('email', inline.gfm._extended_email)\n .getRegex();\n/**\n * GFM + Line Breaks Inline Grammar\n */\n\ninline.breaks = merge({}, inline.gfm, {\n br: edit(inline.br).replace('{2,}', '*').getRegex(),\n text: edit(inline.gfm.text)\n .replace('\\\\b_', '\\\\b_| {2,}\\\\n')\n .replace(/\\{2,\\}/g, '*')\n .getRegex()\n});\n\nmodule.exports = {\n block,\n inline\n};\n","export var base = {\n 8: \"Backspace\",\n 9: \"Tab\",\n 10: \"Enter\",\n 12: \"NumLock\",\n 13: \"Enter\",\n 16: \"Shift\",\n 17: \"Control\",\n 18: \"Alt\",\n 20: \"CapsLock\",\n 27: \"Escape\",\n 32: \" \",\n 33: \"PageUp\",\n 34: \"PageDown\",\n 35: \"End\",\n 36: \"Home\",\n 37: \"ArrowLeft\",\n 38: \"ArrowUp\",\n 39: \"ArrowRight\",\n 40: \"ArrowDown\",\n 44: \"PrintScreen\",\n 45: \"Insert\",\n 46: \"Delete\",\n 59: \";\",\n 61: \"=\",\n 91: \"Meta\",\n 92: \"Meta\",\n 106: \"*\",\n 107: \"+\",\n 108: \",\",\n 109: \"-\",\n 110: \".\",\n 111: \"/\",\n 144: \"NumLock\",\n 145: \"ScrollLock\",\n 160: \"Shift\",\n 161: \"Shift\",\n 162: \"Control\",\n 163: \"Control\",\n 164: \"Alt\",\n 165: \"Alt\",\n 173: \"-\",\n 186: \";\",\n 187: \"=\",\n 188: \",\",\n 189: \"-\",\n 190: \".\",\n 191: \"/\",\n 192: \"`\",\n 219: \"[\",\n 220: \"\\\\\",\n 221: \"]\",\n 222: \"'\",\n 229: \"q\"\n}\n\nexport var shift = {\n 48: \")\",\n 49: \"!\",\n 50: \"@\",\n 51: \"#\",\n 52: \"$\",\n 53: \"%\",\n 54: \"^\",\n 55: \"&\",\n 56: \"*\",\n 57: \"(\",\n 59: \":\",\n 61: \"+\",\n 173: \"_\",\n 186: \":\",\n 187: \"+\",\n 188: \"<\",\n 189: \"_\",\n 190: \">\",\n 191: \"?\",\n 192: \"~\",\n 219: \"{\",\n 220: \"|\",\n 221: \"}\",\n 222: \"\\\"\",\n 229: \"Q\"\n}\n\nvar chrome = typeof navigator != \"undefined\" && /Chrome\\/(\\d+)/.exec(navigator.userAgent)\nvar safari = typeof navigator != \"undefined\" && /Apple Computer/.test(navigator.vendor)\nvar gecko = typeof navigator != \"undefined\" && /Gecko\\/\\d+/.test(navigator.userAgent)\nvar mac = typeof navigator != \"undefined\" && /Mac/.test(navigator.platform)\nvar ie = typeof navigator != \"undefined\" && /MSIE \\d|Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(navigator.userAgent)\nvar brokenModifierNames = chrome && (mac || +chrome[1] < 57) || gecko && mac\n\n// Fill in the digit keys\nfor (var i = 0; i < 10; i++) base[48 + i] = base[96 + i] = String(i)\n\n// The function keys\nfor (var i = 1; i <= 24; i++) base[i + 111] = \"F\" + i\n\n// And the alphabetic keys\nfor (var i = 65; i <= 90; i++) {\n base[i] = String.fromCharCode(i + 32)\n shift[i] = String.fromCharCode(i)\n}\n\n// For each code that doesn't have a shift-equivalent, copy the base name\nfor (var code in base) if (!shift.hasOwnProperty(code)) shift[code] = base[code]\n\nexport function keyName(event) {\n // Don't trust event.key in Chrome when there are modifiers until\n // they fix https://bugs.chromium.org/p/chromium/issues/detail?id=633838\n var ignoreKey = brokenModifierNames && (event.ctrlKey || event.altKey || event.metaKey) ||\n (safari || ie) && event.shiftKey && event.key && event.key.length == 1\n var name = (!ignoreKey && event.key) ||\n (event.shiftKey ? shift : base)[event.keyCode] ||\n event.key || \"Unidentified\"\n // Edge sometimes produces wrong names (Issue #3)\n if (name == \"Esc\") name = \"Escape\"\n if (name == \"Del\") name = \"Delete\"\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8860571/\n if (name == \"Left\") name = \"ArrowLeft\"\n if (name == \"Up\") name = \"ArrowUp\"\n if (name == \"Right\") name = \"ArrowRight\"\n if (name == \"Down\") name = \"ArrowDown\"\n return name\n}\n","import { keyName, base } from 'w3c-keyname';\nimport { Plugin } from 'prosemirror-state';\n\n// declare global: navigator\n\nvar mac = typeof navigator != \"undefined\" ? /Mac/.test(navigator.platform) : false;\n\nfunction normalizeKeyName(name) {\n var parts = name.split(/-(?!$)/), result = parts[parts.length - 1];\n if (result == \"Space\") { result = \" \"; }\n var alt, ctrl, shift, meta;\n for (var i = 0; i < parts.length - 1; i++) {\n var mod = parts[i];\n if (/^(cmd|meta|m)$/i.test(mod)) { meta = true; }\n else if (/^a(lt)?$/i.test(mod)) { alt = true; }\n else if (/^(c|ctrl|control)$/i.test(mod)) { ctrl = true; }\n else if (/^s(hift)?$/i.test(mod)) { shift = true; }\n else if (/^mod$/i.test(mod)) { if (mac) { meta = true; } else { ctrl = true; } }\n else { throw new Error(\"Unrecognized modifier name: \" + mod) }\n }\n if (alt) { result = \"Alt-\" + result; }\n if (ctrl) { result = \"Ctrl-\" + result; }\n if (meta) { result = \"Meta-\" + result; }\n if (shift) { result = \"Shift-\" + result; }\n return result\n}\n\nfunction normalize(map) {\n var copy = Object.create(null);\n for (var prop in map) { copy[normalizeKeyName(prop)] = map[prop]; }\n return copy\n}\n\nfunction modifiers(name, event, shift) {\n if (event.altKey) { name = \"Alt-\" + name; }\n if (event.ctrlKey) { name = \"Ctrl-\" + name; }\n if (event.metaKey) { name = \"Meta-\" + name; }\n if (shift !== false && event.shiftKey) { name = \"Shift-\" + name; }\n return name\n}\n\n// :: (Object) → Plugin\n// Create a keymap plugin for the given set of bindings.\n//\n// Bindings should map key names to [command](#commands)-style\n// functions, which will be called with `(EditorState, dispatch,\n// EditorView)` arguments, and should return true when they've handled\n// the key. Note that the view argument isn't part of the command\n// protocol, but can be used as an escape hatch if a binding needs to\n// directly interact with the UI.\n//\n// Key names may be strings like `\"Shift-Ctrl-Enter\"`—a key\n// identifier prefixed with zero or more modifiers. Key identifiers\n// are based on the strings that can appear in\n// [`KeyEvent.key`](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key).\n// Use lowercase letters to refer to letter keys (or uppercase letters\n// if you want shift to be held). You may use `\"Space\"` as an alias\n// for the `\" \"` name.\n//\n// Modifiers can be given in any order. `Shift-` (or `s-`), `Alt-` (or\n// `a-`), `Ctrl-` (or `c-` or `Control-`) and `Cmd-` (or `m-` or\n// `Meta-`) are recognized. For characters that are created by holding\n// shift, the `Shift-` prefix is implied, and should not be added\n// explicitly.\n//\n// You can use `Mod-` as a shorthand for `Cmd-` on Mac and `Ctrl-` on\n// other platforms.\n//\n// You can add multiple keymap plugins to an editor. The order in\n// which they appear determines their precedence (the ones early in\n// the array get to dispatch first).\nfunction keymap(bindings) {\n return new Plugin({props: {handleKeyDown: keydownHandler(bindings)}})\n}\n\n// :: (Object) → (view: EditorView, event: dom.Event) → bool\n// Given a set of bindings (using the same format as\n// [`keymap`](#keymap.keymap), return a [keydown\n// handler](#view.EditorProps.handleKeyDown) that handles them.\nfunction keydownHandler(bindings) {\n var map = normalize(bindings);\n return function(view, event) {\n var name = keyName(event), isChar = name.length == 1 && name != \" \", baseName;\n var direct = map[modifiers(name, event, !isChar)];\n if (direct && direct(view.state, view.dispatch, view)) { return true }\n if (isChar && (event.shiftKey || event.altKey || event.metaKey || name.charCodeAt(0) > 127) &&\n (baseName = base[event.keyCode]) && baseName != name) {\n // Try falling back to the keyCode when there's a modifier\n // active or the character produced isn't ASCII, and our table\n // produces a different name from the the keyCode. See #668,\n // #1060\n var fromCode = map[modifiers(baseName, event, true)];\n if (fromCode && fromCode(view.state, view.dispatch, view)) { return true }\n } else if (isChar && event.shiftKey) {\n // Otherwise, if shift is active, also try the binding with the\n // Shift- prefix enabled. See #997\n var withShift = map[modifiers(name, event, true)];\n if (withShift && withShift(view.state, view.dispatch, view)) { return true }\n }\n return false\n }\n}\n\nexport { keydownHandler, keymap };\n//# sourceMappingURL=index.es.js.map\n","const Renderer = require('./Renderer.js');\nconst { defaults } = require('./defaults.js');\nconst { inline } = require('./rules.js');\nconst {\n findClosingBracket,\n escape\n} = require('./helpers.js');\n\n/**\n * Inline Lexer & Compiler\n */\nmodule.exports = class InlineLexer {\n constructor(links, options) {\n this.options = options || defaults;\n this.links = links;\n this.rules = inline.normal;\n this.options.renderer = this.options.renderer || new Renderer();\n this.renderer = this.options.renderer;\n this.renderer.options = this.options;\n\n if (!this.links) {\n throw new Error('Tokens array requires a `links` property.');\n }\n\n if (this.options.pedantic) {\n this.rules = inline.pedantic;\n } else if (this.options.gfm) {\n if (this.options.breaks) {\n this.rules = inline.breaks;\n } else {\n this.rules = inline.gfm;\n }\n }\n }\n\n /**\n * Expose Inline Rules\n */\n static get rules() {\n return inline;\n }\n\n /**\n * Static Lexing/Compiling Method\n */\n static output(src, links, options) {\n const inline = new InlineLexer(links, options);\n return inline.output(src);\n }\n\n /**\n * Lexing/Compiling\n */\n output(src) {\n let out = '',\n link,\n text,\n href,\n title,\n cap,\n prevCapZero;\n\n while (src) {\n // escape\n if (cap = this.rules.escape.exec(src)) {\n src = src.substring(cap[0].length);\n out += escape(cap[1]);\n continue;\n }\n\n // tag\n if (cap = this.rules.tag.exec(src)) {\n if (!this.inLink && /^<a /i.test(cap[0])) {\n this.inLink = true;\n } else if (this.inLink && /^<\\/a>/i.test(cap[0])) {\n this.inLink = false;\n }\n if (!this.inRawBlock && /^<(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.inRawBlock = true;\n } else if (this.inRawBlock && /^<\\/(pre|code|kbd|script)(\\s|>)/i.test(cap[0])) {\n this.inRawBlock = false;\n }\n\n src = src.substring(cap[0].length);\n out += this.renderer.html(this.options.sanitize\n ? (this.options.sanitizer\n ? this.options.sanitizer(cap[0])\n : escape(cap[0]))\n : cap[0]);\n continue;\n }\n\n // link\n if (cap = this.rules.link.exec(src)) {\n const lastParenIndex = findClosingBracket(cap[2], '()');\n if (lastParenIndex > -1) {\n const start = cap[0].indexOf('!') === 0 ? 5 : 4;\n const linkLen = start + cap[1].length + lastParenIndex;\n cap[2] = cap[2].substring(0, lastParenIndex);\n cap[0] = cap[0].substring(0, linkLen).trim();\n cap[3] = '';\n }\n src = src.substring(cap[0].length);\n this.inLink = true;\n href = cap[2];\n if (this.options.pedantic) {\n link = /^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/.exec(href);\n\n if (link) {\n href = link[1];\n title = link[3];\n } else {\n title = '';\n }\n } else {\n title = cap[3] ? cap[3].slice(1, -1) : '';\n }\n href = href.trim().replace(/^<([\\s\\S]*)>$/, '$1');\n out += this.outputLink(cap, {\n href: InlineLexer.escapes(href),\n title: InlineLexer.escapes(title)\n });\n this.inLink = false;\n continue;\n }\n\n // reflink, nolink\n if ((cap = this.rules.reflink.exec(src))\n || (cap = this.rules.nolink.exec(src))) {\n src = src.substring(cap[0].length);\n link = (cap[2] || cap[1]).replace(/\\s+/g, ' ');\n link = this.links[link.toLowerCase()];\n if (!link || !link.href) {\n out += cap[0].charAt(0);\n src = cap[0].substring(1) + src;\n continue;\n }\n this.inLink = true;\n out += this.outputLink(cap, link);\n this.inLink = false;\n continue;\n }\n\n // strong\n if (cap = this.rules.strong.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.strong(this.output(cap[4] || cap[3] || cap[2] || cap[1]));\n continue;\n }\n\n // em\n if (cap = this.rules.em.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.em(this.output(cap[6] || cap[5] || cap[4] || cap[3] || cap[2] || cap[1]));\n continue;\n }\n\n // code\n if (cap = this.rules.code.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.codespan(escape(cap[2].trim(), true));\n continue;\n }\n\n // br\n if (cap = this.rules.br.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.br();\n continue;\n }\n\n // del (gfm)\n if (cap = this.rules.del.exec(src)) {\n src = src.substring(cap[0].length);\n out += this.renderer.del(this.output(cap[1]));\n continue;\n }\n\n // autolink\n if (cap = this.rules.autolink.exec(src)) {\n src = src.substring(cap[0].length);\n if (cap[2] === '@') {\n text = escape(this.mangle(cap[1]));\n href = 'mailto:' + text;\n } else {\n text = escape(cap[1]);\n href = text;\n }\n out += this.renderer.link(href, null, text);\n continue;\n }\n\n // url (gfm)\n if (!this.inLink && (cap = this.rules.url.exec(src))) {\n if (cap[2] === '@') {\n text = escape(cap[0]);\n href = 'mailto:' + text;\n } else {\n // do extended autolink path validation\n do {\n prevCapZero = cap[0];\n cap[0] = this.rules._backpedal.exec(cap[0])[0];\n } while (prevCapZero !== cap[0]);\n text = escape(cap[0]);\n if (cap[1] === 'www.') {\n href = 'http://' + text;\n } else {\n href = text;\n }\n }\n src = src.substring(cap[0].length);\n out += this.renderer.link(href, null, text);\n continue;\n }\n\n // text\n if (cap = this.rules.text.exec(src)) {\n src = src.substring(cap[0].length);\n if (this.inRawBlock) {\n out += this.renderer.text(this.options.sanitize ? (this.options.sanitizer ? this.options.sanitizer(cap[0]) : escape(cap[0])) : cap[0]);\n } else {\n out += this.renderer.text(escape(this.smartypants(cap[0])));\n }\n continue;\n }\n\n if (src) {\n throw new Error('Infinite loop on byte: ' + src.charCodeAt(0));\n }\n }\n\n return out;\n }\n\n static escapes(text) {\n return text ? text.replace(InlineLexer.rules._escapes, '$1') : text;\n }\n\n /**\n * Compile Link\n */\n outputLink(cap, link) {\n const href = link.href,\n title = link.title ? escape(link.title) : null;\n\n return cap[0].charAt(0) !== '!'\n ? this.renderer.link(href, title, this.output(cap[1]))\n : this.renderer.image(href, title, escape(cap[1]));\n }\n\n /**\n * Smartypants Transformations\n */\n smartypants(text) {\n if (!this.options.smartypants) return text;\n return text\n // em-dashes\n .replace(/---/g, '\\u2014')\n // en-dashes\n .replace(/--/g, '\\u2013')\n // opening singles\n .replace(/(^|[-\\u2014/(\\[{\"\\s])'/g, '$1\\u2018')\n // closing singles & apostrophes\n .replace(/'/g, '\\u2019')\n // opening doubles\n .replace(/(^|[-\\u2014/(\\[{\\u2018\\s])\"/g, '$1\\u201c')\n // closing doubles\n .replace(/\"/g, '\\u201d')\n // ellipses\n .replace(/\\.{3}/g, '\\u2026');\n }\n\n /**\n * Mangle Links\n */\n mangle(text) {\n if (!this.options.mangle) return text;\n const l = text.length;\n let out = '',\n i = 0,\n ch;\n\n for (; i < l; i++) {\n ch = text.charCodeAt(i);\n if (Math.random() > 0.5) {\n ch = 'x' + ch.toString(16);\n }\n out += '&#' + ch + ';';\n }\n\n return out;\n }\n};\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar prosemirrorState = require('prosemirror-state');\nvar prosemirrorModel = require('prosemirror-model');\nvar prosemirrorTables = require('prosemirror-tables');\n\n// :: (nodeType: union<NodeType, [NodeType]>) → (tr: Transaction) → Transaction\n// Returns a new transaction that removes a node of a given `nodeType`. It will return an original transaction if parent node hasn't been found.\n//\n// ```javascript\n// dispatch(\n// removeParentNodeOfType(schema.nodes.table)(tr)\n// );\n// ```\nvar removeParentNodeOfType = function removeParentNodeOfType(nodeType) {\n return function (tr) {\n var parent = findParentNodeOfType(nodeType)(tr.selection);\n if (parent) {\n return removeNodeAtPos(parent.pos)(tr);\n }\n return tr;\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>, content: union<ProseMirrorNode, Fragment>) → (tr: Transaction) → Transaction\n// Returns a new transaction that replaces parent node of a given `nodeType` with the given `content`. It will return an original transaction if either parent node hasn't been found or replacing is not possible.\n//\n// ```javascript\n// const node = schema.nodes.paragraph.createChecked({}, schema.text('new'));\n//\n// dispatch(\n// replaceParentNodeOfType(schema.nodes.table, node)(tr)\n// );\n// ```\nvar replaceParentNodeOfType = function replaceParentNodeOfType(nodeType, content) {\n return function (tr) {\n if (!Array.isArray(nodeType)) {\n nodeType = [nodeType];\n }\n for (var i = 0, count = nodeType.length; i < count; i++) {\n var parent = findParentNodeOfType(nodeType[i])(tr.selection);\n if (parent) {\n var newTr = replaceNodeAtPos(parent.pos, content)(tr);\n if (newTr !== tr) {\n return newTr;\n }\n }\n }\n return tr;\n };\n};\n\n// :: (tr: Transaction) → Transaction\n// Returns a new transaction that removes selected node. It will return an original transaction if current selection is not a `NodeSelection`.\n//\n// ```javascript\n// dispatch(\n// removeSelectedNode(tr)\n// );\n// ```\nvar removeSelectedNode = function removeSelectedNode(tr) {\n if (isNodeSelection(tr.selection)) {\n var from = tr.selection.$from.pos;\n var to = tr.selection.$to.pos;\n return cloneTr(tr.delete(from, to));\n }\n return tr;\n};\n\n// :: (content: union<ProseMirrorNode, ProseMirrorFragment>) → (tr: Transaction) → Transaction\n// Returns a new transaction that replaces selected node with a given `node`, keeping NodeSelection on the new `node`.\n// It will return the original transaction if either current selection is not a NodeSelection or replacing is not possible.\n//\n// ```javascript\n// const node = schema.nodes.paragraph.createChecked({}, schema.text('new'));\n// dispatch(\n// replaceSelectedNode(node)(tr)\n// );\n// ```\nvar replaceSelectedNode = function replaceSelectedNode(content) {\n return function (tr) {\n if (isNodeSelection(tr.selection)) {\n var _tr$selection = tr.selection,\n $from = _tr$selection.$from,\n $to = _tr$selection.$to;\n\n if (content instanceof prosemirrorModel.Fragment && $from.parent.canReplace($from.index(), $from.indexAfter(), content) || $from.parent.canReplaceWith($from.index(), $from.indexAfter(), content.type)) {\n return cloneTr(tr.replaceWith($from.pos, $to.pos, content)\n // restore node selection\n .setSelection(new prosemirrorState.NodeSelection(tr.doc.resolve($from.pos))));\n }\n }\n return tr;\n };\n};\n\n// :: (position: number, dir: ?number) → (tr: Transaction) → Transaction\n// Returns a new transaction that tries to find a valid cursor selection starting at the given `position`\n// and searching back if `dir` is negative, and forward if positive.\n// If a valid cursor position hasn't been found, it will return the original transaction.\n//\n// ```javascript\n// dispatch(\n// setTextSelection(5)(tr)\n// );\n// ```\nvar setTextSelection = function setTextSelection(position) {\n var dir = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n return function (tr) {\n var nextSelection = prosemirrorState.Selection.findFrom(tr.doc.resolve(position), dir, true);\n if (nextSelection) {\n return tr.setSelection(nextSelection);\n }\n return tr;\n };\n};\n\nvar isSelectableNode = function isSelectableNode(node) {\n return node.type && node.type.spec.selectable;\n};\nvar shouldSelectNode = function shouldSelectNode(node) {\n return isSelectableNode(node) && node.type.isLeaf;\n};\n\nvar setSelection = function setSelection(node, pos, tr) {\n if (shouldSelectNode(node)) {\n return tr.setSelection(new prosemirrorState.NodeSelection(tr.doc.resolve(pos)));\n }\n return setTextSelection(pos)(tr);\n};\n\n// :: (content: union<ProseMirrorNode, Fragment>, position: ?number, tryToReplace?: boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that inserts a given `content` at the current cursor position, or at a given `position`, if it is allowed by schema. If schema restricts such nesting, it will try to find an appropriate place for a given node in the document, looping through parent nodes up until the root document node.\n// If `tryToReplace` is true and current selection is a NodeSelection, it will replace selected node with inserted content if its allowed by schema.\n// If cursor is inside of an empty paragraph, it will try to replace that paragraph with the given content. If insertion is successful and inserted node has content, it will set cursor inside of that content.\n// It will return an original transaction if the place for insertion hasn't been found.\n//\n// ```javascript\n// const node = schema.nodes.extension.createChecked({});\n// dispatch(\n// safeInsert(node)(tr)\n// );\n// ```\nvar safeInsert = function safeInsert(content, position, tryToReplace) {\n return function (tr) {\n var hasPosition = typeof position === 'number';\n var $from = tr.selection.$from;\n\n var $insertPos = hasPosition ? tr.doc.resolve(position) : isNodeSelection(tr.selection) ? tr.doc.resolve($from.pos + 1) : $from;\n var parent = $insertPos.parent;\n\n // try to replace selected node\n\n if (isNodeSelection(tr.selection) && tryToReplace) {\n var oldTr = tr;\n tr = replaceSelectedNode(content)(tr);\n if (oldTr !== tr) {\n return tr;\n }\n }\n\n // try to replace an empty paragraph\n if (isEmptyParagraph(parent)) {\n var _oldTr = tr;\n tr = replaceParentNodeOfType(parent.type, content)(tr);\n if (_oldTr !== tr) {\n var pos = isSelectableNode(content) ? // for selectable node, selection position would be the position of the replaced parent\n $insertPos.before($insertPos.depth) : $insertPos.pos;\n return setSelection(content, pos, tr);\n }\n }\n\n // given node is allowed at the current cursor position\n if (canInsert($insertPos, content)) {\n tr.insert($insertPos.pos, content);\n var _pos = hasPosition ? $insertPos.pos : isSelectableNode(content) ? // for atom nodes selection position after insertion is the previous pos\n tr.selection.$anchor.pos - 1 : tr.selection.$anchor.pos;\n return cloneTr(setSelection(content, _pos, tr));\n }\n\n // looking for a place in the doc where the node is allowed\n for (var i = $insertPos.depth; i > 0; i--) {\n var _pos2 = $insertPos.after(i);\n var $pos = tr.doc.resolve(_pos2);\n if (canInsert($pos, content)) {\n tr.insert(_pos2, content);\n return cloneTr(setSelection(content, _pos2, tr));\n }\n }\n return tr;\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>, type: ?union<NodeType, null>, attrs: ?union<Object, null>, marks?: [Mark]) → (tr: Transaction) → Transaction\n// Returns a transaction that changes the type, attributes, and/or marks of the parent node of a given `nodeType`.\n//\n// ```javascript\n// const node = schema.nodes.extension.createChecked({});\n// dispatch(\n// setParentNodeMarkup(schema.nodes.panel, null, { panelType })(tr);\n// );\n// ```\nvar setParentNodeMarkup = function setParentNodeMarkup(nodeType, type, attrs, marks) {\n return function (tr) {\n var parent = findParentNodeOfType(nodeType)(tr.selection);\n if (parent) {\n return cloneTr(tr.setNodeMarkup(parent.pos, type, Object.assign({}, parent.node.attrs, attrs), marks));\n }\n return tr;\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>) → (tr: Transaction) → Transaction\n// Returns a new transaction that sets a `NodeSelection` on a parent node of a `given nodeType`.\n//\n// ```javascript\n// dispatch(\n// selectParentNodeOfType([tableCell, tableHeader])(state.tr)\n// );\n// ```\nvar selectParentNodeOfType = function selectParentNodeOfType(nodeType) {\n return function (tr) {\n if (!isNodeSelection(tr.selection)) {\n var parent = findParentNodeOfType(nodeType)(tr.selection);\n if (parent) {\n return cloneTr(tr.setSelection(prosemirrorState.NodeSelection.create(tr.doc, parent.pos)));\n }\n }\n return tr;\n };\n};\n\n// :: (tr: Transaction) → Transaction\n// Returns a new transaction that deletes previous node.\n//\n// ```javascript\n// dispatch(\n// removeNodeBefore(state.tr)\n// );\n// ```\nvar removeNodeBefore = function removeNodeBefore(tr) {\n var position = findPositionOfNodeBefore(tr.selection);\n if (typeof position === 'number') {\n return removeNodeAtPos(position)(tr);\n }\n return tr;\n};\n\n// :: (selection: Selection) → boolean\n// Checks if current selection is a `NodeSelection`.\n//\n// ```javascript\n// if (isNodeSelection(tr.selection)) {\n// // ...\n// }\n// ```\nvar isNodeSelection = function isNodeSelection(selection) {\n return selection instanceof prosemirrorState.NodeSelection;\n};\n\n// (nodeType: union<NodeType, [NodeType]>) → boolean\n// Checks if the type a given `node` equals to a given `nodeType`.\nvar equalNodeType = function equalNodeType(nodeType, node) {\n return Array.isArray(nodeType) && nodeType.indexOf(node.type) > -1 || node.type === nodeType;\n};\n\n// (tr: Transaction) → Transaction\n// Creates a new transaction object from a given transaction\nvar cloneTr = function cloneTr(tr) {\n return Object.assign(Object.create(tr), tr).setTime(Date.now());\n};\n\n// (position: number, content: union<ProseMirrorNode, Fragment>) → (tr: Transaction) → Transaction\n// Returns a `replace` transaction that replaces a node at a given position with the given `content`.\n// It will return the original transaction if replacing is not possible.\n// `position` should point at the position immediately before the node.\nvar replaceNodeAtPos = function replaceNodeAtPos(position, content) {\n return function (tr) {\n var node = tr.doc.nodeAt(position);\n var $pos = tr.doc.resolve(position);\n if (canReplace($pos, content)) {\n tr = tr.replaceWith(position, position + node.nodeSize, content);\n var start = tr.selection.$from.pos - 1;\n // put cursor inside of the inserted node\n tr = setTextSelection(Math.max(start, 0), -1)(tr);\n // move cursor to the start of the node\n tr = setTextSelection(tr.selection.$from.start())(tr);\n return cloneTr(tr);\n }\n return tr;\n };\n};\n\n// ($pos: ResolvedPos, doc: ProseMirrorNode, content: union<ProseMirrorNode, Fragment>, ) → boolean\n// Checks if replacing a node at a given `$pos` inside of the `doc` node with the given `content` is possible.\nvar canReplace = function canReplace($pos, content) {\n var node = $pos.node($pos.depth);\n return node && node.type.validContent(content instanceof prosemirrorModel.Fragment ? content : prosemirrorModel.Fragment.from(content));\n};\n\n// (position: number) → (tr: Transaction) → Transaction\n// Returns a `delete` transaction that removes a node at a given position with the given `node`.\n// `position` should point at the position immediately before the node.\nvar removeNodeAtPos = function removeNodeAtPos(position) {\n return function (tr) {\n var node = tr.doc.nodeAt(position);\n return cloneTr(tr.delete(position, position + node.nodeSize));\n };\n};\n\n// (schema: Schema) → {[key: string]: NodeType}\n// Returns a map where keys are tableRoles and values are NodeTypes.\nvar tableNodeTypes = function tableNodeTypes(schema) {\n if (schema.cached.tableNodeTypes) {\n return schema.cached.tableNodeTypes;\n }\n var roles = {};\n Object.keys(schema.nodes).forEach(function (type) {\n var nodeType = schema.nodes[type];\n if (nodeType.spec.tableRole) {\n roles[nodeType.spec.tableRole] = nodeType;\n }\n });\n schema.cached.tableNodeTypes = roles;\n return roles;\n};\n\n// :: ($pos: ResolvedPos, content: union<ProseMirrorNode, Fragment>) → boolean\n// Checks if a given `content` can be inserted at the given `$pos`\n//\n// ```javascript\n// const { selection: { $from } } = state;\n// const node = state.schema.nodes.atom.createChecked();\n// if (canInsert($from, node)) {\n// // ...\n// }\n// ```\nvar canInsert = function canInsert($pos, content) {\n var index = $pos.index();\n\n if (content instanceof prosemirrorModel.Fragment) {\n return $pos.parent.canReplace(index, index, content);\n } else if (content instanceof prosemirrorModel.Node) {\n return $pos.parent.canReplaceWith(index, index, content.type);\n }\n return false;\n};\n\n// (node: ProseMirrorNode) → boolean\n// Checks if a given `node` is an empty paragraph\nvar isEmptyParagraph = function isEmptyParagraph(node) {\n return !node || node.type.name === 'paragraph' && node.nodeSize === 2;\n};\n\n// ($pos: ResolvedPos) → ?{pos: number, start: number, node: ProseMirrorNode}\n// Iterates over parent nodes, returning a table node closest to a given `$pos`.\n//\n// ```javascript\n// const table = findTableClosestToPos(state.doc.resolve(10));\n// ```\nvar findTableClosestToPos = function findTableClosestToPos($pos) {\n var predicate = function predicate(node) {\n return node.type.spec.tableRole && /table/i.test(node.type.spec.tableRole);\n };\n return findParentNodeClosestToPos($pos, predicate);\n};\n\nvar createCell = function createCell(cellType) {\n var cellContent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (cellContent) {\n return cellType.createChecked(null, cellContent);\n }\n\n return cellType.createAndFill();\n};\n\n// (rect: {left: number, right: number, top: number, bottom: number}) → (selection: Selection) → boolean\n// Checks if a given CellSelection rect is selected\nvar isRectSelected = function isRectSelected(rect) {\n return function (selection) {\n var map = prosemirrorTables.TableMap.get(selection.$anchorCell.node(-1));\n var start = selection.$anchorCell.start(-1);\n var cells = map.cellsInRect(rect);\n var selectedCells = map.cellsInRect(map.rectBetween(selection.$anchorCell.pos - start, selection.$headCell.pos - start));\n\n for (var i = 0, count = cells.length; i < count; i++) {\n if (selectedCells.indexOf(cells[i]) === -1) {\n return false;\n }\n }\n\n return true;\n };\n};\n\n// This function transposes an array of array flipping the columns for rows,\n// transposition is a familiar algebra concept;\n// you can get more details here:\n// https://en.wikipedia.org/wiki/Transpose\n//\n// ```javascript\n//\n// const arr = [\n// ['a1', 'a2', 'a3'],\n// ['b1', 'b2', 'b3'],\n// ['c1', 'c2', 'c3'],\n// ['d1', 'd2', 'd3'],\n// ];\n//\n// const result = transpose(arr);\n//\n// result === [\n// ['a1', 'b1', 'c1', 'd1'],\n// ['a2', 'b2', 'c2', 'd2'],\n// ['a3', 'b3', 'c3', 'd3'],\n// ]\n// ```\nvar transpose = function transpose(array) {\n return array[0].map(function (_, i) {\n return array.map(function (column) {\n return column[i];\n });\n });\n};\n\n// :: (tableNode: Node) -> Array<Node>\n// This function will transform the table node\n// into a matrix of rows and columns respecting merged cells,\n// for example this table will be convert to the below:\n//\n// ```\n// ____________________________\n// | | | |\n// | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// | A3 | B3 | C2 | |\n// |______|______|______|______|\n// ```\n//\n//\n// ```javascript\n// array = [\n// [A1, B1, C1, null],\n// [A2, B2, null, D1],\n// [A3. B3, C2, null],\n// ]\n// ```\nvar convertTableNodeToArrayOfRows = function convertTableNodeToArrayOfRows(tableNode) {\n var map = prosemirrorTables.TableMap.get(tableNode);\n var rows = [];\n for (var rowIndex = 0; rowIndex < map.height; rowIndex++) {\n var rowCells = [];\n var seen = {};\n\n for (var colIndex = 0; colIndex < map.width; colIndex++) {\n var cellPos = map.map[rowIndex * map.width + colIndex];\n var cell = tableNode.nodeAt(cellPos);\n var rect = map.findCell(cellPos);\n if (seen[cellPos] || rect.top !== rowIndex) {\n rowCells.push(null);\n continue;\n }\n seen[cellPos] = true;\n\n rowCells.push(cell);\n }\n\n rows.push(rowCells);\n }\n\n return rows;\n};\n\n// :: (tableNode: Node, tableArray: Array<Node>) -> Node\n// This function will transform a matrix of nodes\n// into table node respecting merged cells and rows configurations,\n// for example this array will be convert to the table below:\n//\n// ```javascript\n// array = [\n// [A1, B1, C1, null],\n// [A2, B2, null, D1],\n// [A3. B3, C2, null],\n// ]\n// ```\n//\n// ```\n// ____________________________\n// | | | |\n// | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// | A3 | B3 | C2 | |\n// |______|______|______|______|\n// ```\n//\nvar convertArrayOfRowsToTableNode = function convertArrayOfRowsToTableNode(tableNode, arrayOfNodes) {\n var rowsPM = [];\n var map = prosemirrorTables.TableMap.get(tableNode);\n for (var rowIndex = 0; rowIndex < map.height; rowIndex++) {\n var row = tableNode.child(rowIndex);\n var rowCells = [];\n\n for (var colIndex = 0; colIndex < map.width; colIndex++) {\n if (!arrayOfNodes[rowIndex][colIndex]) {\n continue;\n }\n var cellPos = map.map[rowIndex * map.width + colIndex];\n\n var cell = arrayOfNodes[rowIndex][colIndex];\n var oldCell = tableNode.nodeAt(cellPos);\n var newCell = oldCell.type.createChecked(Object.assign({}, cell.attrs), cell.content, cell.marks);\n rowCells.push(newCell);\n }\n\n rowsPM.push(row.type.createChecked(row.attrs, rowCells, row.marks));\n }\n\n var newTable = tableNode.type.createChecked(tableNode.attrs, rowsPM, tableNode.marks);\n\n return newTable;\n};\n\nvar moveTableColumn = function moveTableColumn(table, indexesOrigin, indexesTarget, direction) {\n var rows = transpose(convertTableNodeToArrayOfRows(table.node));\n\n rows = moveRowInArrayOfRows(rows, indexesOrigin, indexesTarget, direction);\n rows = transpose(rows);\n\n return convertArrayOfRowsToTableNode(table.node, rows);\n};\n\nvar moveTableRow = function moveTableRow(table, indexesOrigin, indexesTarget, direction) {\n var rows = convertTableNodeToArrayOfRows(table.node);\n\n rows = moveRowInArrayOfRows(rows, indexesOrigin, indexesTarget, direction);\n\n return convertArrayOfRowsToTableNode(table.node, rows);\n};\n\nvar moveRowInArrayOfRows = function moveRowInArrayOfRows(rows, indexesOrigin, indexesTarget, directionOverride) {\n var direction = indexesOrigin[0] > indexesTarget[0] ? -1 : 1;\n\n var rowsExtracted = rows.splice(indexesOrigin[0], indexesOrigin.length);\n var positionOffset = rowsExtracted.length % 2 === 0 ? 1 : 0;\n var target = void 0;\n\n if (directionOverride === -1 && direction === 1) {\n target = indexesTarget[0] - 1;\n } else if (directionOverride === 1 && direction === -1) {\n target = indexesTarget[indexesTarget.length - 1] - positionOffset + 1;\n } else {\n target = direction === -1 ? indexesTarget[0] : indexesTarget[indexesTarget.length - 1] - positionOffset;\n }\n\n rows.splice.apply(rows, [target, 0].concat(rowsExtracted));\n return rows;\n};\n\nvar checkInvalidMovements = function checkInvalidMovements(originIndex, targetIndex, targets, type) {\n var direction = originIndex > targetIndex ? -1 : 1;\n var errorMessage = 'Target position is invalid, you can\\'t move the ' + type + ' ' + originIndex + ' to ' + targetIndex + ', the target can\\'t be split. You could use tryToFit option.';\n\n if (direction === 1) {\n if (targets.slice(0, targets.length - 1).indexOf(targetIndex) !== -1) {\n throw new Error(errorMessage);\n }\n } else {\n if (targets.slice(1).indexOf(targetIndex) !== -1) {\n throw new Error(errorMessage);\n }\n }\n\n return true;\n};\n\n// :: (predicate: (node: ProseMirrorNode) → boolean) → (selection: Selection) → ?{pos: number, start: number, depth: number, node: ProseMirrorNode}\n// Iterates over parent nodes, returning the closest node and its start position `predicate` returns truthy for. `start` points to the start position of the node, `pos` points directly before the node.\n//\n// ```javascript\n// const predicate = node => node.type === schema.nodes.blockquote;\n// const parent = findParentNode(predicate)(selection);\n// ```\nvar findParentNode = function findParentNode(predicate) {\n return function (_ref) {\n var $from = _ref.$from;\n return findParentNodeClosestToPos($from, predicate);\n };\n};\n\n// :: ($pos: ResolvedPos, predicate: (node: ProseMirrorNode) → boolean) → ?{pos: number, start: number, depth: number, node: ProseMirrorNode}\n// Iterates over parent nodes starting from the given `$pos`, returning the closest node and its start position `predicate` returns truthy for. `start` points to the start position of the node, `pos` points directly before the node.\n//\n// ```javascript\n// const predicate = node => node.type === schema.nodes.blockquote;\n// const parent = findParentNodeClosestToPos(state.doc.resolve(5), predicate);\n// ```\nvar findParentNodeClosestToPos = function findParentNodeClosestToPos($pos, predicate) {\n for (var i = $pos.depth; i > 0; i--) {\n var node = $pos.node(i);\n if (predicate(node)) {\n return {\n pos: i > 0 ? $pos.before(i) : 0,\n start: $pos.start(i),\n depth: i,\n node: node\n };\n }\n }\n};\n\n// :: (predicate: (node: ProseMirrorNode) → boolean, domAtPos: (pos: number) → {node: dom.Node, offset: number}) → (selection: Selection) → ?dom.Node\n// Iterates over parent nodes, returning DOM reference of the closest node `predicate` returns truthy for.\n//\n// ```javascript\n// const domAtPos = view.domAtPos.bind(view);\n// const predicate = node => node.type === schema.nodes.table;\n// const parent = findParentDomRef(predicate, domAtPos)(selection); // <table>\n// ```\nvar findParentDomRef = function findParentDomRef(predicate, domAtPos) {\n return function (selection) {\n var parent = findParentNode(predicate)(selection);\n if (parent) {\n return findDomRefAtPos(parent.pos, domAtPos);\n }\n };\n};\n\n// :: (predicate: (node: ProseMirrorNode) → boolean) → (selection: Selection) → boolean\n// Checks if there's a parent node `predicate` returns truthy for.\n//\n// ```javascript\n// if (hasParentNode(node => node.type === schema.nodes.table)(selection)) {\n// // ....\n// }\n// ```\nvar hasParentNode = function hasParentNode(predicate) {\n return function (selection) {\n return !!findParentNode(predicate)(selection);\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>) → (selection: Selection) → ?{pos: number, start: number, depth: number, node: ProseMirrorNode}\n// Iterates over parent nodes, returning closest node of a given `nodeType`. `start` points to the start position of the node, `pos` points directly before the node.\n//\n// ```javascript\n// const parent = findParentNodeOfType(schema.nodes.paragraph)(selection);\n// ```\nvar findParentNodeOfType = function findParentNodeOfType(nodeType) {\n return function (selection) {\n return findParentNode(function (node) {\n return equalNodeType(nodeType, node);\n })(selection);\n };\n};\n\n// :: ($pos: ResolvedPos, nodeType: union<NodeType, [NodeType]>) → ?{pos: number, start: number, depth: number, node: ProseMirrorNode}\n// Iterates over parent nodes starting from the given `$pos`, returning closest node of a given `nodeType`. `start` points to the start position of the node, `pos` points directly before the node.\n//\n// ```javascript\n// const parent = findParentNodeOfTypeClosestToPos(state.doc.resolve(10), schema.nodes.paragraph);\n// ```\nvar findParentNodeOfTypeClosestToPos = function findParentNodeOfTypeClosestToPos($pos, nodeType) {\n return findParentNodeClosestToPos($pos, function (node) {\n return equalNodeType(nodeType, node);\n });\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>) → (selection: Selection) → boolean\n// Checks if there's a parent node of a given `nodeType`.\n//\n// ```javascript\n// if (hasParentNodeOfType(schema.nodes.table)(selection)) {\n// // ....\n// }\n// ```\nvar hasParentNodeOfType = function hasParentNodeOfType(nodeType) {\n return function (selection) {\n return hasParentNode(function (node) {\n return equalNodeType(nodeType, node);\n })(selection);\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>, domAtPos: (pos: number) → {node: dom.Node, offset: number}) → (selection: Selection) → ?dom.Node\n// Iterates over parent nodes, returning DOM reference of the closest node of a given `nodeType`.\n//\n// ```javascript\n// const domAtPos = view.domAtPos.bind(view);\n// const parent = findParentDomRefOfType(schema.nodes.codeBlock, domAtPos)(selection); // <pre>\n// ```\nvar findParentDomRefOfType = function findParentDomRefOfType(nodeType, domAtPos) {\n return function (selection) {\n return findParentDomRef(function (node) {\n return equalNodeType(nodeType, node);\n }, domAtPos)(selection);\n };\n};\n\n// :: (nodeType: union<NodeType, [NodeType]>) → (selection: Selection) → ?{pos: number, start: number, depth: number, node: ProseMirrorNode}\n// Returns a node of a given `nodeType` if it is selected. `start` points to the start position of the node, `pos` points directly before the node.\n//\n// ```javascript\n// const { extension, inlineExtension, bodiedExtension } = schema.nodes;\n// const selectedNode = findSelectedNodeOfType([\n// extension,\n// inlineExtension,\n// bodiedExtension,\n// ])(selection);\n// ```\nvar findSelectedNodeOfType = function findSelectedNodeOfType(nodeType) {\n return function (selection) {\n if (isNodeSelection(selection)) {\n var node = selection.node,\n $from = selection.$from;\n\n if (equalNodeType(nodeType, node)) {\n return { node: node, pos: $from.pos, depth: $from.depth };\n }\n }\n };\n};\n\n// :: (selection: Selection) → ?number\n// Returns position of the previous node.\n//\n// ```javascript\n// const pos = findPositionOfNodeBefore(tr.selection);\n// ```\nvar findPositionOfNodeBefore = function findPositionOfNodeBefore(selection) {\n var nodeBefore = selection.$from.nodeBefore;\n\n var maybeSelection = prosemirrorState.Selection.findFrom(selection.$from, -1);\n if (maybeSelection && nodeBefore) {\n // leaf node\n var parent = findParentNodeOfType(nodeBefore.type)(maybeSelection);\n if (parent) {\n return parent.pos;\n }\n return maybeSelection.$from.pos;\n }\n};\n\n// :: (position: number, domAtPos: (pos: number) → {node: dom.Node, offset: number}) → dom.Node\n// Returns DOM reference of a node at a given `position`. If the node type is of type `TEXT_NODE` it will return the reference of the parent node.\n//\n// ```javascript\n// const domAtPos = view.domAtPos.bind(view);\n// const ref = findDomRefAtPos($from.pos, domAtPos);\n// ```\nvar findDomRefAtPos = function findDomRefAtPos(position, domAtPos) {\n var dom = domAtPos(position);\n var node = dom.node.childNodes[dom.offset];\n\n if (dom.node.nodeType === Node.TEXT_NODE) {\n return dom.node.parentNode;\n }\n\n if (!node || node.nodeType === Node.TEXT_NODE) {\n return dom.node;\n }\n\n return node;\n};\n\n// :: (node: ProseMirrorNode, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Flattens descendants of a given `node`. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const children = flatten(node);\n// ```\nvar flatten = function flatten(node) {\n var descend = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (!node) {\n throw new Error('Invalid \"node\" parameter');\n }\n var result = [];\n node.descendants(function (child, pos) {\n result.push({ node: child, pos: pos });\n if (!descend) {\n return false;\n }\n });\n return result;\n};\n\n// :: (node: ProseMirrorNode, predicate: (node: ProseMirrorNode) → boolean, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Iterates over descendants of a given `node`, returning child nodes predicate returns truthy for. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const textNodes = findChildren(node, child => child.isText, false);\n// ```\nvar findChildren = function findChildren(node, predicate, descend) {\n if (!node) {\n throw new Error('Invalid \"node\" parameter');\n } else if (!predicate) {\n throw new Error('Invalid \"predicate\" parameter');\n }\n return flatten(node, descend).filter(function (child) {\n return predicate(child.node);\n });\n};\n\n// :: (node: ProseMirrorNode, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Returns text nodes of a given `node`. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const textNodes = findTextNodes(node);\n// ```\nvar findTextNodes = function findTextNodes(node, descend) {\n return findChildren(node, function (child) {\n return child.isText;\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Returns inline nodes of a given `node`. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const inlineNodes = findInlineNodes(node);\n// ```\nvar findInlineNodes = function findInlineNodes(node, descend) {\n return findChildren(node, function (child) {\n return child.isInline;\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Returns block descendants of a given `node`. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const blockNodes = findBlockNodes(node);\n// ```\nvar findBlockNodes = function findBlockNodes(node, descend) {\n return findChildren(node, function (child) {\n return child.isBlock;\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, predicate: (attrs: ?Object) → boolean, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Iterates over descendants of a given `node`, returning child nodes predicate returns truthy for. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const mergedCells = findChildrenByAttr(table, attrs => attrs.colspan === 2);\n// ```\nvar findChildrenByAttr = function findChildrenByAttr(node, predicate, descend) {\n return findChildren(node, function (child) {\n return !!predicate(child.attrs);\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, nodeType: NodeType, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Iterates over descendants of a given `node`, returning child nodes of a given nodeType. It doesn't descend into a node when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const cells = findChildrenByType(table, schema.nodes.tableCell);\n// ```\nvar findChildrenByType = function findChildrenByType(node, nodeType, descend) {\n return findChildren(node, function (child) {\n return child.type === nodeType;\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, markType: markType, descend: ?boolean) → [{ node: ProseMirrorNode, pos: number }]\n// Iterates over descendants of a given `node`, returning child nodes that have a mark of a given markType. It doesn't descend into a `node` when descend argument is `false` (defaults to `true`).\n//\n// ```javascript\n// const nodes = findChildrenByMark(state.doc, schema.marks.strong);\n// ```\nvar findChildrenByMark = function findChildrenByMark(node, markType, descend) {\n return findChildren(node, function (child) {\n return markType.isInSet(child.marks);\n }, descend);\n};\n\n// :: (node: ProseMirrorNode, nodeType: NodeType) → boolean\n// Returns `true` if a given node contains nodes of a given `nodeType`\n//\n// ```javascript\n// if (contains(panel, schema.nodes.listItem)) {\n// // ...\n// }\n// ```\nvar contains = function contains(node, nodeType) {\n return !!findChildrenByType(node, nodeType).length;\n};\n\nfunction _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); } }\n\n// :: (selection: Selection) → ?{pos: number, start: number, node: ProseMirrorNode}\n// Iterates over parent nodes, returning the closest table node.\n//\n// ```javascript\n// const table = findTable(selection);\n// ```\nvar findTable = function findTable(selection) {\n return findParentNode(function (node) {\n return node.type.spec.tableRole && node.type.spec.tableRole === 'table';\n })(selection);\n};\n\n// :: (selection: Selection) → boolean\n// Checks if current selection is a `CellSelection`.\n//\n// ```javascript\n// if (isCellSelection(selection)) {\n// // ...\n// }\n// ```\nvar isCellSelection = function isCellSelection(selection) {\n return selection instanceof prosemirrorTables.CellSelection;\n};\n\n// :: (selection: Selection) → ?{left: number, right: number, top: number, bottom: number}\n// Get the selection rectangle. Returns `undefined` if selection is not a CellSelection.\n//\n// ```javascript\n// const rect = getSelectionRect(selection);\n// ```\nvar getSelectionRect = function getSelectionRect(selection) {\n if (!isCellSelection(selection)) {\n return;\n }\n var start = selection.$anchorCell.start(-1);\n var map = prosemirrorTables.TableMap.get(selection.$anchorCell.node(-1));\n return map.rectBetween(selection.$anchorCell.pos - start, selection.$headCell.pos - start);\n};\n\n// :: (columnIndex: number) → (selection: Selection) → boolean\n// Checks if entire column at index `columnIndex` is selected.\n//\n// ```javascript\n// const className = isColumnSelected(i)(selection) ? 'selected' : '';\n// ```\nvar isColumnSelected = function isColumnSelected(columnIndex) {\n return function (selection) {\n if (isCellSelection(selection)) {\n var map = prosemirrorTables.TableMap.get(selection.$anchorCell.node(-1));\n return isRectSelected({\n left: columnIndex,\n right: columnIndex + 1,\n top: 0,\n bottom: map.height\n })(selection);\n }\n\n return false;\n };\n};\n\n// :: (rowIndex: number) → (selection: Selection) → boolean\n// Checks if entire row at index `rowIndex` is selected.\n//\n// ```javascript\n// const className = isRowSelected(i)(selection) ? 'selected' : '';\n// ```\nvar isRowSelected = function isRowSelected(rowIndex) {\n return function (selection) {\n if (isCellSelection(selection)) {\n var map = prosemirrorTables.TableMap.get(selection.$anchorCell.node(-1));\n return isRectSelected({\n left: 0,\n right: map.width,\n top: rowIndex,\n bottom: rowIndex + 1\n })(selection);\n }\n\n return false;\n };\n};\n\n// :: (selection: Selection) → boolean\n// Checks if entire table is selected\n//\n// ```javascript\n// const className = isTableSelected(selection) ? 'selected' : '';\n// ```\nvar isTableSelected = function isTableSelected(selection) {\n if (isCellSelection(selection)) {\n var map = prosemirrorTables.TableMap.get(selection.$anchorCell.node(-1));\n return isRectSelected({\n left: 0,\n right: map.width,\n top: 0,\n bottom: map.height\n })(selection);\n }\n\n return false;\n};\n\n// :: (columnIndex: union<number, [number]>) → (selection: Selection) → ?[{pos: number, start: number, node: ProseMirrorNode}]\n// Returns an array of cells in a column(s), where `columnIndex` could be a column index or an array of column indexes.\n//\n// ```javascript\n// const cells = getCellsInColumn(i)(selection); // [{node, pos}, {node, pos}]\n// ```\nvar getCellsInColumn = function getCellsInColumn(columnIndex) {\n return function (selection) {\n var table = findTable(selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var indexes = Array.isArray(columnIndex) ? columnIndex : Array.from([columnIndex]);\n return indexes.reduce(function (acc, index) {\n if (index >= 0 && index <= map.width - 1) {\n var cells = map.cellsInRect({\n left: index,\n right: index + 1,\n top: 0,\n bottom: map.height\n });\n return acc.concat(cells.map(function (nodePos) {\n var node = table.node.nodeAt(nodePos);\n var pos = nodePos + table.start;\n return { pos: pos, start: pos + 1, node: node };\n }));\n }\n }, []);\n }\n };\n};\n\n// :: (rowIndex: union<number, [number]>) → (selection: Selection) → ?[{pos: number, start: number, node: ProseMirrorNode}]\n// Returns an array of cells in a row(s), where `rowIndex` could be a row index or an array of row indexes.\n//\n// ```javascript\n// const cells = getCellsInRow(i)(selection); // [{node, pos}, {node, pos}]\n// ```\nvar getCellsInRow = function getCellsInRow(rowIndex) {\n return function (selection) {\n var table = findTable(selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var indexes = Array.isArray(rowIndex) ? rowIndex : Array.from([rowIndex]);\n return indexes.reduce(function (acc, index) {\n if (index >= 0 && index <= map.height - 1) {\n var cells = map.cellsInRect({\n left: 0,\n right: map.width,\n top: index,\n bottom: index + 1\n });\n return acc.concat(cells.map(function (nodePos) {\n var node = table.node.nodeAt(nodePos);\n var pos = nodePos + table.start;\n return { pos: pos, start: pos + 1, node: node };\n }));\n }\n }, []);\n }\n };\n};\n\n// :: (selection: Selection) → ?[{pos: number, start: number, node: ProseMirrorNode}]\n// Returns an array of all cells in a table.\n//\n// ```javascript\n// const cells = getCellsInTable(selection); // [{node, pos}, {node, pos}]\n// ```\nvar getCellsInTable = function getCellsInTable(selection) {\n var table = findTable(selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var cells = map.cellsInRect({\n left: 0,\n right: map.width,\n top: 0,\n bottom: map.height\n });\n return cells.map(function (nodePos) {\n var node = table.node.nodeAt(nodePos);\n var pos = nodePos + table.start;\n return { pos: pos, start: pos + 1, node: node };\n });\n }\n};\n\nvar select = function select(type) {\n return function (index, expand) {\n return function (tr) {\n var table = findTable(tr.selection);\n var isRowSelection = type === 'row';\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n\n // Check if the index is valid\n if (index >= 0 && index < (isRowSelection ? map.height : map.width)) {\n var left = isRowSelection ? 0 : index;\n var top = isRowSelection ? index : 0;\n var right = isRowSelection ? map.width : index + 1;\n var bottom = isRowSelection ? index + 1 : map.height;\n\n if (expand) {\n var cell = findCellClosestToPos(tr.selection.$from);\n if (!cell) {\n return tr;\n }\n\n var selRect = map.findCell(cell.pos - table.start);\n if (isRowSelection) {\n top = Math.min(top, selRect.top);\n bottom = Math.max(bottom, selRect.bottom);\n } else {\n left = Math.min(left, selRect.left);\n right = Math.max(right, selRect.right);\n }\n }\n\n var cellsInFirstRow = map.cellsInRect({\n left: left,\n top: top,\n right: isRowSelection ? right : left + 1,\n bottom: isRowSelection ? top + 1 : bottom\n });\n\n var cellsInLastRow = bottom - top === 1 ? cellsInFirstRow : map.cellsInRect({\n left: isRowSelection ? left : right - 1,\n top: isRowSelection ? bottom - 1 : top,\n right: right,\n bottom: bottom\n });\n\n var head = table.start + cellsInFirstRow[0];\n var anchor = table.start + cellsInLastRow[cellsInLastRow.length - 1];\n var $head = tr.doc.resolve(head);\n var $anchor = tr.doc.resolve(anchor);\n\n return cloneTr(tr.setSelection(new prosemirrorTables.CellSelection($anchor, $head)));\n }\n }\n return tr;\n };\n };\n};\n\n// :: (columnIndex: number, expand: ?boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that creates a `CellSelection` on a column at index `columnIndex`.\n// Use the optional `expand` param to extend from current selection.\n//\n// ```javascript\n// dispatch(\n// selectColumn(i)(state.tr)\n// );\n// ```\nvar selectColumn = select('column');\n\n// :: (rowIndex: number, expand: ?boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that creates a `CellSelection` on a column at index `rowIndex`.\n// Use the optional `expand` param to extend from current selection.\n//\n// ```javascript\n// dispatch(\n// selectRow(i)(state.tr)\n// );\n// ```\nvar selectRow = select('row');\n\n// :: (selection: Selection) → (tr: Transaction) → Transaction\n// Returns a new transaction that creates a `CellSelection` on the entire table.\n//\n// ```javascript\n// dispatch(\n// selectTable(i)(state.tr)\n// );\n// ```\nvar selectTable = function selectTable(tr) {\n var table = findTable(tr.selection);\n if (table) {\n var _TableMap$get = prosemirrorTables.TableMap.get(table.node),\n map = _TableMap$get.map;\n\n if (map && map.length) {\n var head = table.start + map[0];\n var anchor = table.start + map[map.length - 1];\n var $head = tr.doc.resolve(head);\n var $anchor = tr.doc.resolve(anchor);\n\n return cloneTr(tr.setSelection(new prosemirrorTables.CellSelection($anchor, $head)));\n }\n }\n return tr;\n};\n\n// :: (cell: {pos: number, node: ProseMirrorNode}, schema: Schema) → (tr: Transaction) → Transaction\n// Returns a new transaction that clears the content of a given `cell`.\n//\n// ```javascript\n// const $pos = state.doc.resolve(13);\n// dispatch(\n// emptyCell(findCellClosestToPos($pos), state.schema)(state.tr)\n// );\n// ```\nvar emptyCell = function emptyCell(cell, schema) {\n return function (tr) {\n if (cell) {\n var _tableNodeTypes$cell$ = tableNodeTypes(schema).cell.createAndFill(),\n content = _tableNodeTypes$cell$.content;\n\n if (!cell.node.content.eq(content)) {\n tr.replaceWith(cell.pos + 1, cell.pos + cell.node.nodeSize, content);\n return cloneTr(tr);\n }\n }\n return tr;\n };\n};\n\n// :: (columnIndex: number) → (tr: Transaction) → Transaction\n// Returns a new transaction that adds a new column at index `columnIndex`.\n//\n// ```javascript\n// dispatch(\n// addColumnAt(i)(state.tr)\n// );\n// ```\nvar addColumnAt = function addColumnAt(columnIndex) {\n return function (tr) {\n var table = findTable(tr.selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n if (columnIndex >= 0 && columnIndex <= map.width) {\n return cloneTr(prosemirrorTables.addColumn(tr, {\n map: map,\n tableStart: table.start,\n table: table.node\n }, columnIndex));\n }\n }\n return tr;\n };\n};\n\n// :: (originRowIndex: number, targetRowIndex: targetColumnIndex, options?: MovementOptions) → (tr: Transaction) → Transaction\n// Returns a new transaction that moves the origin row to the target index;\n//\n// by default \"tryToFit\" is false, that means if you try to move a row to a place\n// where we will need to split a row with merged cells it'll throw an exception, for example:\n//\n// ```\n// ____________________________\n// | | | |\n// 0 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// 1 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 2 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// ```\n//\n// if you try to move the row 0 to the row index 1 with tryToFit false,\n// it'll throw an exception since you can't split the row 1;\n// but if \"tryToFit\" is true, it'll move the row using the current direction.\n//\n// We defined current direction using the target and origin values\n// if the origin is greater than the target, that means the course is `bottom-to-top`,\n// so the `tryToFit` logic will use this direction to determine\n// if we should move the column to the right or the left.\n//\n// for example, if you call the function using `moveRow(0, 1, { tryToFit: true })`\n// the result will be:\n// ```\n// ____________________________\n// | | | |\n// 0 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 1 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// | | | |\n// 2 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// ```\n//\n// since we could put the row zero on index one,\n// we pushed to the best place to fit the row index 0,\n// in this case, row index 2.\n//\n//\n// -------- HOW TO OVERRIDE DIRECTION --------\n//\n// If you set \"tryToFit\" to \"true\", it will try to figure out the best direction\n// place to fit using the origin and target index, for example:\n//\n//\n// ```\n// ____________________________\n// | | | |\n// 0 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// 1 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 2 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// | | | |\n// 3 | A4 | B4 | |\n// |______|______ ______| |\n// | | | | D2 |\n// 4 | A5 | B5 | C3 | |\n// |______|______|______|______|\n// ```\n//\n//\n// If you try to move the row 0 to row index 4 with \"tryToFit\" enabled, by default,\n// the code will put it on after the merged rows,\n// but you can override it using the \"direction\" option.\n//\n// -1: Always put the origin before the target\n// ```\n// ____________________________\n// | | | |\n// 0 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 1 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// | | | |\n// 2 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// 3 | A4 | B4 | |\n// |______|______ ______| |\n// | | | | D2 |\n// 4 | A5 | B5 | C3 | |\n// |______|______|______|______|\n// ```\n//\n// 0: Automatically decide the best place to fit\n// ```\n// ____________________________\n// | | | |\n// 0 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 1 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// | | | |\n// 2 | A4 | B4 | |\n// |______|______ ______| |\n// | | | | D2 |\n// 3 | A5 | B5 | C3 | |\n// |______|______|______|______|\n// | | | |\n// 4 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// ```\n//\n// 1: Always put the origin after the target\n// ```\n// ____________________________\n// | | | |\n// 0 | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// 1 | A3 | B3 | C2 | |\n// |______|______|______|______|\n// | | | |\n// 2 | A4 | B4 | |\n// |______|______ ______| |\n// | | | | D2 |\n// 3 | A5 | B5 | C3 | |\n// |______|______|______|______|\n// | | | |\n// 4 | A1 | B1 | C1 |\n// |______|______|______ ______|\n// ```\n//\n// ```javascript\n// dispatch(\n// moveRow(x, y, options)(state.tr)\n// );\n// ```\nvar moveRow = function moveRow(originRowIndex, targetRowIndex, opts) {\n return function (tr) {\n var defaultOptions = { tryToFit: false, direction: 0 };\n var options = Object.assign(defaultOptions, opts);\n var table = findTable(tr.selection);\n if (!table) {\n return tr;\n }\n\n var _getSelectionRangeInR = getSelectionRangeInRow(originRowIndex)(tr),\n indexesOriginRow = _getSelectionRangeInR.indexes;\n\n var _getSelectionRangeInR2 = getSelectionRangeInRow(targetRowIndex)(tr),\n indexesTargetRow = _getSelectionRangeInR2.indexes;\n\n if (indexesOriginRow.indexOf(targetRowIndex) > -1) {\n return tr;\n }\n\n if (!options.tryToFit && indexesTargetRow.length > 1) {\n checkInvalidMovements(originRowIndex, targetRowIndex, indexesTargetRow, 'row');\n }\n\n var newTable = moveTableRow(table, indexesOriginRow, indexesTargetRow, options.direction);\n\n return cloneTr(tr).replaceWith(table.pos, table.pos + table.node.nodeSize, newTable);\n };\n};\n\n// :: (originColumnIndex: number, targetColumnIndex: targetColumnIndex, options?: MovementOptions) → (tr: Transaction) → Transaction\n// Returns a new transaction that moves the origin column to the target index;\n//\n// by default \"tryToFit\" is false, that means if you try to move a column to a place\n// where we will need to split a column with merged cells it'll throw an exception, for example:\n//\n// ```\n// 0 1 2\n// ____________________________\n// | | | |\n// | A1 | B1 | C1 |\n// |______|______|______ ______|\n// | | | |\n// | A2 | B2 | |\n// |______|______ ______| |\n// | | | | D1 |\n// | A3 | B3 | C2 | |\n// |______|______|______|______|\n// ```\n//\n//\n// if you try to move the column 0 to the column index 1 with tryToFit false,\n// it'll throw an exception since you can't split the column 1;\n// but if \"tryToFit\" is true, it'll move the column using the current direction.\n//\n// We defined current direction using the target and origin values\n// if the origin is greater than the target, that means the course is `right-to-left`,\n// so the `tryToFit` logic will use this direction to determine\n// if we should move the column to the right or the left.\n//\n// for example, if you call the function using `moveColumn(0, 1, { tryToFit: true })`\n// the result will be:\n//\n// ```\n// 0 1 2\n// _____________________ _______\n// | | | |\n// | B1 | C1 | A1 |\n// |______|______ ______|______|\n// | | | |\n// | B2 | | A2 |\n// |______ ______| |______|\n// | | | D1 | |\n// | B3 | C2 | | A3 |\n// |______|______|______|______|\n// ```\n//\n// since we could put the column zero on index one,\n// we pushed to the best place to fit the column 0, in this case, column index 2.\n//\n// -------- HOW TO OVERRIDE DIRECTION --------\n//\n// If you set \"tryToFit\" to \"true\", it will try to figure out the best direction\n// place to fit using the origin and target index, for example:\n//\n//\n// ```\n// 0 1 2 3 4 5 6\n// _________________________________________________\n// | | | | | |\n// | A1 | B1 | C1 | E1 | F1 |\n// |______|______|______ ______|______|______ ______|\n// | | | | | |\n// | A2 | B2 | | E2 | |\n// |______|______ ______| |______ ______| |\n// | | | | D1 | | | G2 |\n// | A3 | B3 | C3 | | E3 | F3 | |\n// |______|______|______|______|______|______|______|\n// ```\n//\n//\n// If you try to move the column 0 to column index 5 with \"tryToFit\" enabled, by default,\n// the code will put it on after the merged columns,\n// but you can override it using the \"direction\" option.\n//\n// -1: Always put the origin before the target\n//\n// ```\n// 0 1 2 3 4 5 6\n// _________________________________________________\n// | | | | | |\n// | B1 | C1 | A1 | E1 | F1 |\n// |______|______ ______|______|______|______ ______|\n// | | | | | |\n// | B2 | | A2 | E2 | |\n// |______ ______| |______|______ ______| |\n// | | | D1 | | | | G2 |\n// | B3 | C3 | | A3 | E3 | F3 | |\n// |______|______|______|______|______|______|______|\n// ```\n//\n// 0: Automatically decide the best place to fit\n//\n// ```\n// 0 1 2 3 4 5 6\n// _________________________________________________\n// | | | | | |\n// | B1 | C1 | E1 | F1 | A1 |\n// |______|______ ______|______|______ ______|______|\n// | | | | | |\n// | B2 | | E2 | | A2 |\n// |______ ______| |______ ______| |______|\n// | | | D1 | | | G2 | |\n// | B3 | C3 | | E3 | F3 | | A3 |\n// |______|______|______|______|______|______|______|\n// ```\n//\n// 1: Always put the origin after the target\n//\n// ```\n// 0 1 2 3 4 5 6\n// _________________________________________________\n// | | | | | |\n// | B1 | C1 | E1 | F1 | A1 |\n// |______|______ ______|______|______ ______|______|\n// | | | | | |\n// | B2 | | E2 | | A2 |\n// |______ ______| |______ ______| |______|\n// | | | D1 | | | G2 | |\n// | B3 | C3 | | E3 | F3 | | A3 |\n// |______|______|______|______|______|______|______|\n// ```\n//\n// ```javascript\n// dispatch(\n// moveColumn(x, y, options)(state.tr)\n// );\n// ```\nvar moveColumn = function moveColumn(originColumnIndex, targetColumnIndex, opts) {\n return function (tr) {\n var defaultOptions = { tryToFit: false, direction: 0 };\n var options = Object.assign(defaultOptions, opts);\n var table = findTable(tr.selection);\n if (!table) {\n return tr;\n }\n\n var _getSelectionRangeInC = getSelectionRangeInColumn(originColumnIndex)(tr),\n indexesOriginColumn = _getSelectionRangeInC.indexes;\n\n var _getSelectionRangeInC2 = getSelectionRangeInColumn(targetColumnIndex)(tr),\n indexesTargetColumn = _getSelectionRangeInC2.indexes;\n\n if (indexesOriginColumn.indexOf(targetColumnIndex) > -1) {\n return tr;\n }\n\n if (!options.tryToFit && indexesTargetColumn.length > 1) {\n checkInvalidMovements(originColumnIndex, targetColumnIndex, indexesTargetColumn, 'column');\n }\n\n var newTable = moveTableColumn(table, indexesOriginColumn, indexesTargetColumn, options.direction);\n\n return cloneTr(tr).replaceWith(table.pos, table.pos + table.node.nodeSize, newTable);\n };\n};\n\n// :: (rowIndex: number, clonePreviousRow?: boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that adds a new row at index `rowIndex`. Optionally clone the previous row.\n//\n// ```javascript\n// dispatch(\n// addRowAt(i)(state.tr)\n// );\n// ```\n//\n// ```javascript\n// dispatch(\n// addRowAt(i, true)(state.tr)\n// );\n// ```\nvar addRowAt = function addRowAt(rowIndex, clonePreviousRow) {\n return function (tr) {\n var table = findTable(tr.selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var cloneRowIndex = rowIndex - 1;\n\n if (clonePreviousRow && cloneRowIndex >= 0) {\n return cloneTr(cloneRowAt(cloneRowIndex)(tr));\n }\n\n if (rowIndex >= 0 && rowIndex <= map.height) {\n return cloneTr(prosemirrorTables.addRow(tr, {\n map: map,\n tableStart: table.start,\n table: table.node\n }, rowIndex));\n }\n }\n return tr;\n };\n};\n\n// :: (cloneRowIndex: number) → (tr: Transaction) → Transaction\n// Returns a new transaction that adds a new row after `cloneRowIndex`, cloning the row attributes at `cloneRowIndex`.\n//\n// ```javascript\n// dispatch(\n// cloneRowAt(i)(state.tr)\n// );\n// ```\nvar cloneRowAt = function cloneRowAt(rowIndex) {\n return function (tr) {\n var table = findTable(tr.selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n\n if (rowIndex >= 0 && rowIndex <= map.height) {\n var tableNode = table.node;\n var tableNodes = tableNodeTypes(tableNode.type.schema);\n\n var rowPos = table.start;\n for (var i = 0; i < rowIndex + 1; i++) {\n rowPos += tableNode.child(i).nodeSize;\n }\n\n var cloneRow = tableNode.child(rowIndex);\n // Re-create the same nodes with same attrs, dropping the node content.\n var cells = [];\n var rowWidth = 0;\n cloneRow.forEach(function (cell) {\n // If we're copying a row with rowspan somewhere, we dont want to copy that cell\n // We'll increment its span below.\n if (cell.attrs.rowspan === 1) {\n rowWidth += cell.attrs.colspan;\n cells.push(tableNodes[cell.type.spec.tableRole].createAndFill(cell.attrs, cell.marks));\n }\n });\n\n // If a higher row spans past our clone row, bump the higher row to cover this new row too.\n if (rowWidth < map.width) {\n var rowSpanCells = [];\n\n var _loop = function _loop(_i) {\n var foundCells = filterCellsInRow(_i, function (cell, tr) {\n var rowspan = cell.node.attrs.rowspan;\n var spanRange = _i + rowspan;\n return rowspan > 1 && spanRange > rowIndex;\n })(tr);\n rowSpanCells.push.apply(rowSpanCells, _toConsumableArray(foundCells));\n };\n\n for (var _i = rowIndex; _i >= 0; _i--) {\n _loop(_i);\n }\n\n if (rowSpanCells.length) {\n rowSpanCells.forEach(function (cell) {\n tr = setCellAttrs(cell, {\n rowspan: cell.node.attrs.rowspan + 1\n })(tr);\n });\n }\n }\n\n return safeInsert(tableNodes.row.create(cloneRow.attrs, cells), rowPos)(tr);\n }\n }\n return tr;\n };\n};\n\n// :: (columnIndex: number) → (tr: Transaction) → Transaction\n// Returns a new transaction that removes a column at index `columnIndex`. If there is only one column left, it will remove the entire table.\n//\n// ```javascript\n// dispatch(\n// removeColumnAt(i)(state.tr)\n// );\n// ```\nvar removeColumnAt = function removeColumnAt(columnIndex) {\n return function (tr) {\n var table = findTable(tr.selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n if (columnIndex === 0 && map.width === 1) {\n return removeTable(tr);\n } else if (columnIndex >= 0 && columnIndex <= map.width) {\n prosemirrorTables.removeColumn(tr, {\n map: map,\n tableStart: table.start,\n table: table.node\n }, columnIndex);\n return cloneTr(tr);\n }\n }\n return tr;\n };\n};\n\n// :: (rowIndex: number) → (tr: Transaction) → Transaction\n// Returns a new transaction that removes a row at index `rowIndex`. If there is only one row left, it will remove the entire table.\n//\n// ```javascript\n// dispatch(\n// removeRowAt(i)(state.tr)\n// );\n// ```\nvar removeRowAt = function removeRowAt(rowIndex) {\n return function (tr) {\n var table = findTable(tr.selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n if (rowIndex === 0 && map.height === 1) {\n return removeTable(tr);\n } else if (rowIndex >= 0 && rowIndex <= map.height) {\n prosemirrorTables.removeRow(tr, {\n map: map,\n tableStart: table.start,\n table: table.node\n }, rowIndex);\n return cloneTr(tr);\n }\n }\n return tr;\n };\n};\n\n// :: (tr: Transaction) → Transaction\n// Returns a new transaction that removes a table node if the cursor is inside of it.\n//\n// ```javascript\n// dispatch(\n// removeTable(state.tr)\n// );\n// ```\nvar removeTable = function removeTable(tr) {\n var $from = tr.selection.$from;\n\n for (var depth = $from.depth; depth > 0; depth--) {\n var node = $from.node(depth);\n if (node.type.spec.tableRole === 'table') {\n return cloneTr(tr.delete($from.before(depth), $from.after(depth)));\n }\n }\n return tr;\n};\n\n// :: (tr: Transaction) → Transaction\n// Returns a new transaction that removes selected columns.\n//\n// ```javascript\n// dispatch(\n// removeSelectedColumns(state.tr)\n// );\n// ```\nvar removeSelectedColumns = function removeSelectedColumns(tr) {\n var selection = tr.selection;\n\n if (isTableSelected(selection)) {\n return removeTable(tr);\n }\n if (isCellSelection(selection)) {\n var table = findTable(selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var rect = map.rectBetween(selection.$anchorCell.pos - table.start, selection.$headCell.pos - table.start);\n\n if (rect.left == 0 && rect.right == map.width) {\n return false;\n }\n\n var pmTableRect = Object.assign({}, rect, {\n map: map,\n table: table.node,\n tableStart: table.start\n });\n\n for (var i = pmTableRect.right - 1;; i--) {\n prosemirrorTables.removeColumn(tr, pmTableRect, i);\n if (i === pmTableRect.left) {\n break;\n }\n pmTableRect.table = pmTableRect.tableStart ? tr.doc.nodeAt(pmTableRect.tableStart - 1) : tr.doc;\n pmTableRect.map = prosemirrorTables.TableMap.get(pmTableRect.table);\n }\n return cloneTr(tr);\n }\n }\n return tr;\n};\n\n// :: (tr: Transaction) → Transaction\n// Returns a new transaction that removes selected rows.\n//\n// ```javascript\n// dispatch(\n// removeSelectedRows(state.tr)\n// );\n// ```\nvar removeSelectedRows = function removeSelectedRows(tr) {\n var selection = tr.selection;\n\n if (isTableSelected(selection)) {\n return removeTable(tr);\n }\n if (isCellSelection(selection)) {\n var table = findTable(selection);\n if (table) {\n var map = prosemirrorTables.TableMap.get(table.node);\n var rect = map.rectBetween(selection.$anchorCell.pos - table.start, selection.$headCell.pos - table.start);\n\n if (rect.top == 0 && rect.bottom == map.height) {\n return false;\n }\n\n var pmTableRect = Object.assign({}, rect, {\n map: map,\n table: table.node,\n tableStart: table.start\n });\n\n for (var i = pmTableRect.bottom - 1;; i--) {\n prosemirrorTables.removeRow(tr, pmTableRect, i);\n if (i === pmTableRect.top) {\n break;\n }\n pmTableRect.table = pmTableRect.tableStart ? tr.doc.nodeAt(pmTableRect.tableStart - 1) : tr.doc;\n pmTableRect.map = prosemirrorTables.TableMap.get(pmTableRect.table);\n }\n\n return cloneTr(tr);\n }\n }\n return tr;\n};\n\n// :: ($pos: ResolvedPos) → (tr: Transaction) → Transaction\n// Returns a new transaction that removes a column closest to a given `$pos`.\n//\n// ```javascript\n// dispatch(\n// removeColumnClosestToPos(state.doc.resolve(3))(state.tr)\n// );\n// ```\nvar removeColumnClosestToPos = function removeColumnClosestToPos($pos) {\n return function (tr) {\n var rect = findCellRectClosestToPos($pos);\n if (rect) {\n return removeColumnAt(rect.left)(setTextSelection($pos.pos)(tr));\n }\n return tr;\n };\n};\n\n// :: ($pos: ResolvedPos) → (tr: Transaction) → Transaction\n// Returns a new transaction that removes a row closest to a given `$pos`.\n//\n// ```javascript\n// dispatch(\n// removeRowClosestToPos(state.doc.resolve(3))(state.tr)\n// );\n// ```\nvar removeRowClosestToPos = function removeRowClosestToPos($pos) {\n return function (tr) {\n var rect = findCellRectClosestToPos($pos);\n if (rect) {\n return removeRowAt(rect.top)(setTextSelection($pos.pos)(tr));\n }\n return tr;\n };\n};\n\n// :: (columnIndex: number, cellTransform: (cell: {pos: number, start: number, node: ProseMirrorNode}, tr: Transaction) → Transaction, setCursorToLastCell: ?boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that maps a given `cellTransform` function to each cell in a column at a given `columnIndex`.\n// It will set the selection into the last cell of the column if `setCursorToLastCell` param is set to `true`.\n//\n// ```javascript\n// dispatch(\n// forEachCellInColumn(0, (cell, tr) => emptyCell(cell, state.schema)(tr))(state.tr)\n// );\n// ```\nvar forEachCellInColumn = function forEachCellInColumn(columnIndex, cellTransform, setCursorToLastCell) {\n return function (tr) {\n var cells = getCellsInColumn(columnIndex)(tr.selection);\n if (cells) {\n for (var i = cells.length - 1; i >= 0; i--) {\n tr = cellTransform(cells[i], tr);\n }\n if (setCursorToLastCell) {\n var $pos = tr.doc.resolve(tr.mapping.map(cells[cells.length - 1].pos));\n tr.setSelection(prosemirrorState.Selection.near($pos));\n }\n return cloneTr(tr);\n }\n return tr;\n };\n};\n\n// :: (rowIndex: number, cellTransform: (cell: {pos: number, start: number, node: ProseMirrorNode}, tr: Transaction) → Transaction, setCursorToLastCell: ?boolean) → (tr: Transaction) → Transaction\n// Returns a new transaction that maps a given `cellTransform` function to each cell in a row at a given `rowIndex`.\n// It will set the selection into the last cell of the row if `setCursorToLastCell` param is set to `true`.\n//\n// ```javascript\n// dispatch(\n// forEachCellInRow(0, (cell, tr) => setCellAttrs(cell, { background: 'red' })(tr))(state.tr)\n// );\n// ```\nvar forEachCellInRow = function forEachCellInRow(rowIndex, cellTransform, setCursorToLastCell) {\n return function (tr) {\n var cells = getCellsInRow(rowIndex)(tr.selection);\n if (cells) {\n for (var i = cells.length - 1; i >= 0; i--) {\n tr = cellTransform(cells[i], tr);\n }\n if (setCursorToLastCell) {\n var $pos = tr.doc.resolve(tr.mapping.map(cells[cells.length - 1].pos));\n tr.setSelection(prosemirrorState.Selection.near($pos));\n }\n }\n return tr;\n };\n};\n\n// :: (cell: {pos: number, start: number, node: ProseMirrorNode}, attrs: Object) → (tr: Transaction) → Transaction\n// Returns a new transaction that sets given `attrs` to a given `cell`.\n//\n// ```javascript\n// dispatch(\n// setCellAttrs(findCellClosestToPos($pos), { background: 'blue' })(tr);\n// );\n// ```\nvar setCellAttrs = function setCellAttrs(cell, attrs) {\n return function (tr) {\n if (cell) {\n tr.setNodeMarkup(cell.pos, null, Object.assign({}, cell.node.attrs, attrs));\n return cloneTr(tr);\n }\n return tr;\n };\n};\n\n// :: (schema: Schema, rowsCount: ?number, colsCount: ?number, withHeaderRow: ?boolean, cellContent: ?Node) → Node\n// Returns a table node of a given size.\n// `withHeaderRow` defines whether the first row of the table will be a header row.\n// `cellContent` defines the content of each cell.\n//\n// ```javascript\n// const table = createTable(state.schema); // 3x3 table node\n// dispatch(\n// tr.replaceSelectionWith(table).scrollIntoView()\n// );\n// ```\nvar createTable = function createTable(schema) {\n var rowsCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3;\n var colsCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;\n var withHeaderRow = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var cellContent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;\n\n var _tableNodeTypes = tableNodeTypes(schema),\n tableCell = _tableNodeTypes.cell,\n tableHeader = _tableNodeTypes.header_cell,\n tableRow = _tableNodeTypes.row,\n table = _tableNodeTypes.table;\n\n var cells = [];\n var headerCells = [];\n for (var i = 0; i < colsCount; i++) {\n cells.push(createCell(tableCell, cellContent));\n\n if (withHeaderRow) {\n headerCells.push(createCell(tableHeader, cellContent));\n }\n }\n\n var rows = [];\n for (var _i2 = 0; _i2 < rowsCount; _i2++) {\n rows.push(tableRow.createChecked(null, withHeaderRow && _i2 === 0 ? headerCells : cells));\n }\n\n return table.createChecked(null, rows);\n};\n\n// :: ($pos: ResolvedPos) → ?{pos: number, start: number, node: ProseMirrorNode}\n// Iterates over parent nodes, returning a table cell or a table header node closest to a given `$pos`.\n//\n// ```javascript\n// const cell = findCellClosestToPos(state.selection.$from);\n// ```\nvar findCellClosestToPos = function findCellClosestToPos($pos) {\n var predicate = function predicate(node) {\n return node.type.spec.tableRole && /cell/i.test(node.type.spec.tableRole);\n };\n return findParentNodeClosestToPos($pos, predicate);\n};\n\n// :: ($pos: ResolvedPos) → ?{left: number, top: number, right: number, bottom: number}\n// Returns the rectangle spanning a cell closest to a given `$pos`.\n//\n// ```javascript\n// dispatch(\n// findCellRectClosestToPos(state.selection.$from)\n// );\n// ```\nvar findCellRectClosestToPos = function findCellRectClosestToPos($pos) {\n var cell = findCellClosestToPos($pos);\n if (cell) {\n var table = findTableClosestToPos($pos);\n var map = prosemirrorTables.TableMap.get(table.node);\n var cellPos = cell.pos - table.start;\n return map.rectBetween(cellPos, cellPos);\n }\n};\n\nvar filterCellsInRow = function filterCellsInRow(rowIndex, predicate) {\n return function (tr) {\n var foundCells = [];\n var cells = getCellsInRow(rowIndex)(tr.selection);\n if (cells) {\n for (var j = cells.length - 1; j >= 0; j--) {\n if (predicate(cells[j], tr)) {\n foundCells.push(cells[j]);\n }\n }\n }\n\n return foundCells;\n };\n};\n\n// :: (columnIndex: number) → (tr: Transaction) → {$anchor: ResolvedPos, $head: ResolvedPos, indexes: [number]}\n// Returns a range of rectangular selection spanning all merged cells around a column at index `columnIndex`.\n//\n// ```javascript\n// const range = getSelectionRangeInColumn(3)(state.tr);\n// ```\nvar getSelectionRangeInColumn = function getSelectionRangeInColumn(columnIndex) {\n return function (tr) {\n var startIndex = columnIndex;\n var endIndex = columnIndex;\n\n // looking for selection start column (startIndex)\n\n var _loop2 = function _loop2(i) {\n var cells = getCellsInColumn(i)(tr.selection);\n if (cells) {\n cells.forEach(function (cell) {\n var maybeEndIndex = cell.node.attrs.colspan + i - 1;\n if (maybeEndIndex >= startIndex) {\n startIndex = i;\n }\n if (maybeEndIndex > endIndex) {\n endIndex = maybeEndIndex;\n }\n });\n }\n };\n\n for (var i = columnIndex; i >= 0; i--) {\n _loop2(i);\n }\n // looking for selection end column (endIndex)\n\n var _loop3 = function _loop3(i) {\n var cells = getCellsInColumn(i)(tr.selection);\n if (cells) {\n cells.forEach(function (cell) {\n var maybeEndIndex = cell.node.attrs.colspan + i - 1;\n if (cell.node.attrs.colspan > 1 && maybeEndIndex > endIndex) {\n endIndex = maybeEndIndex;\n }\n });\n }\n };\n\n for (var i = columnIndex; i <= endIndex; i++) {\n _loop3(i);\n }\n\n // filter out columns without cells (where all rows have colspan > 1 in the same column)\n var indexes = [];\n for (var i = startIndex; i <= endIndex; i++) {\n var maybeCells = getCellsInColumn(i)(tr.selection);\n if (maybeCells && maybeCells.length) {\n indexes.push(i);\n }\n }\n startIndex = indexes[0];\n endIndex = indexes[indexes.length - 1];\n\n var firstSelectedColumnCells = getCellsInColumn(startIndex)(tr.selection);\n var firstRowCells = getCellsInRow(0)(tr.selection);\n var $anchor = tr.doc.resolve(firstSelectedColumnCells[firstSelectedColumnCells.length - 1].pos);\n\n var headCell = void 0;\n for (var _i3 = endIndex; _i3 >= startIndex; _i3--) {\n var columnCells = getCellsInColumn(_i3)(tr.selection);\n if (columnCells && columnCells.length) {\n for (var j = firstRowCells.length - 1; j >= 0; j--) {\n if (firstRowCells[j].pos === columnCells[0].pos) {\n headCell = columnCells[0];\n break;\n }\n }\n if (headCell) {\n break;\n }\n }\n }\n\n var $head = tr.doc.resolve(headCell.pos);\n return { $anchor: $anchor, $head: $head, indexes: indexes };\n };\n};\n\n// :: (rowIndex: number) → (tr: Transaction) → {$anchor: ResolvedPos, $head: ResolvedPos, indexes: [number]}\n// Returns a range of rectangular selection spanning all merged cells around a row at index `rowIndex`.\n//\n// ```javascript\n// const range = getSelectionRangeInRow(3)(state.tr);\n// ```\nvar getSelectionRangeInRow = function getSelectionRangeInRow(rowIndex) {\n return function (tr) {\n var startIndex = rowIndex;\n var endIndex = rowIndex;\n // looking for selection start row (startIndex)\n\n var _loop4 = function _loop4(i) {\n var cells = getCellsInRow(i)(tr.selection);\n cells.forEach(function (cell) {\n var maybeEndIndex = cell.node.attrs.rowspan + i - 1;\n if (maybeEndIndex >= startIndex) {\n startIndex = i;\n }\n if (maybeEndIndex > endIndex) {\n endIndex = maybeEndIndex;\n }\n });\n };\n\n for (var i = rowIndex; i >= 0; i--) {\n _loop4(i);\n }\n // looking for selection end row (endIndex)\n\n var _loop5 = function _loop5(i) {\n var cells = getCellsInRow(i)(tr.selection);\n cells.forEach(function (cell) {\n var maybeEndIndex = cell.node.attrs.rowspan + i - 1;\n if (cell.node.attrs.rowspan > 1 && maybeEndIndex > endIndex) {\n endIndex = maybeEndIndex;\n }\n });\n };\n\n for (var i = rowIndex; i <= endIndex; i++) {\n _loop5(i);\n }\n\n // filter out rows without cells (where all columns have rowspan > 1 in the same row)\n var indexes = [];\n for (var i = startIndex; i <= endIndex; i++) {\n var maybeCells = getCellsInRow(i)(tr.selection);\n if (maybeCells && maybeCells.length) {\n indexes.push(i);\n }\n }\n startIndex = indexes[0];\n endIndex = indexes[indexes.length - 1];\n\n var firstSelectedRowCells = getCellsInRow(startIndex)(tr.selection);\n var firstColumnCells = getCellsInColumn(0)(tr.selection);\n var $anchor = tr.doc.resolve(firstSelectedRowCells[firstSelectedRowCells.length - 1].pos);\n\n var headCell = void 0;\n for (var _i4 = endIndex; _i4 >= startIndex; _i4--) {\n var rowCells = getCellsInRow(_i4)(tr.selection);\n if (rowCells && rowCells.length) {\n for (var j = firstColumnCells.length - 1; j >= 0; j--) {\n if (firstColumnCells[j].pos === rowCells[0].pos) {\n headCell = rowCells[0];\n break;\n }\n }\n if (headCell) {\n break;\n }\n }\n }\n\n var $head = tr.doc.resolve(headCell.pos);\n return { $anchor: $anchor, $head: $head, indexes: indexes };\n };\n};\n\nexports.isNodeSelection = isNodeSelection;\nexports.canInsert = canInsert;\nexports.convertTableNodeToArrayOfRows = convertTableNodeToArrayOfRows;\nexports.convertArrayOfRowsToTableNode = convertArrayOfRowsToTableNode;\nexports.findParentNode = findParentNode;\nexports.findParentNodeClosestToPos = findParentNodeClosestToPos;\nexports.findParentDomRef = findParentDomRef;\nexports.hasParentNode = hasParentNode;\nexports.findParentNodeOfType = findParentNodeOfType;\nexports.findParentNodeOfTypeClosestToPos = findParentNodeOfTypeClosestToPos;\nexports.hasParentNodeOfType = hasParentNodeOfType;\nexports.findParentDomRefOfType = findParentDomRefOfType;\nexports.findSelectedNodeOfType = findSelectedNodeOfType;\nexports.findPositionOfNodeBefore = findPositionOfNodeBefore;\nexports.findDomRefAtPos = findDomRefAtPos;\nexports.flatten = flatten;\nexports.findChildren = findChildren;\nexports.findTextNodes = findTextNodes;\nexports.findInlineNodes = findInlineNodes;\nexports.findBlockNodes = findBlockNodes;\nexports.findChildrenByAttr = findChildrenByAttr;\nexports.findChildrenByType = findChildrenByType;\nexports.findChildrenByMark = findChildrenByMark;\nexports.contains = contains;\nexports.findTable = findTable;\nexports.isCellSelection = isCellSelection;\nexports.getSelectionRect = getSelectionRect;\nexports.isColumnSelected = isColumnSelected;\nexports.isRowSelected = isRowSelected;\nexports.isTableSelected = isTableSelected;\nexports.getCellsInColumn = getCellsInColumn;\nexports.getCellsInRow = getCellsInRow;\nexports.getCellsInTable = getCellsInTable;\nexports.selectColumn = selectColumn;\nexports.selectRow = selectRow;\nexports.selectTable = selectTable;\nexports.emptyCell = emptyCell;\nexports.addColumnAt = addColumnAt;\nexports.moveRow = moveRow;\nexports.moveColumn = moveColumn;\nexports.addRowAt = addRowAt;\nexports.cloneRowAt = cloneRowAt;\nexports.removeColumnAt = removeColumnAt;\nexports.removeRowAt = removeRowAt;\nexports.removeTable = removeTable;\nexports.removeSelectedColumns = removeSelectedColumns;\nexports.removeSelectedRows = removeSelectedRows;\nexports.removeColumnClosestToPos = removeColumnClosestToPos;\nexports.removeRowClosestToPos = removeRowClosestToPos;\nexports.forEachCellInColumn = forEachCellInColumn;\nexports.forEachCellInRow = forEachCellInRow;\nexports.setCellAttrs = setCellAttrs;\nexports.createTable = createTable;\nexports.findCellClosestToPos = findCellClosestToPos;\nexports.findCellRectClosestToPos = findCellRectClosestToPos;\nexports.getSelectionRangeInColumn = getSelectionRangeInColumn;\nexports.getSelectionRangeInRow = getSelectionRangeInRow;\nexports.removeParentNodeOfType = removeParentNodeOfType;\nexports.replaceParentNodeOfType = replaceParentNodeOfType;\nexports.removeSelectedNode = removeSelectedNode;\nexports.replaceSelectedNode = replaceSelectedNode;\nexports.setTextSelection = setTextSelection;\nexports.safeInsert = safeInsert;\nexports.setParentNodeMarkup = setParentNodeMarkup;\nexports.selectParentNodeOfType = selectParentNodeOfType;\nexports.removeNodeBefore = removeNodeBefore;\n//# sourceMappingURL=index.js.map\n","\n /*!\n * tiptap-utils v1.10.0\n * (c) 2020 Scrumpy UG (limited liability)\n * @license MIT\n */\n \nimport { findSelectedNodeOfType, findParentNode } from 'prosemirror-utils';\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction getMarkAttrs(state, type) {\n var _state$selection = state.selection,\n from = _state$selection.from,\n to = _state$selection.to;\n var marks = [];\n state.doc.nodesBetween(from, to, function (node) {\n marks = [].concat(_toConsumableArray(marks), _toConsumableArray(node.marks));\n });\n var mark = marks.find(function (markItem) {\n return markItem.type.name === type.name;\n });\n\n if (mark) {\n return mark.attrs;\n }\n\n return {};\n}\n\nfunction getNodeAttrs(state, type) {\n var _state$selection = state.selection,\n from = _state$selection.from,\n to = _state$selection.to;\n var nodes = [];\n state.doc.nodesBetween(from, to, function (node) {\n nodes = [].concat(_toConsumableArray(nodes), [node]);\n });\n var node = nodes.reverse().find(function (nodeItem) {\n return nodeItem.type.name === type.name;\n });\n\n if (node) {\n return node.attrs;\n }\n\n return {};\n}\n\nfunction getMarkRange() {\n var $pos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (!$pos || !type) {\n return false;\n }\n\n var start = $pos.parent.childAfter($pos.parentOffset);\n\n if (!start.node) {\n return false;\n }\n\n var link = start.node.marks.find(function (mark) {\n return mark.type === type;\n });\n\n if (!link) {\n return false;\n }\n\n var startIndex = $pos.index();\n var startPos = $pos.start() + start.offset;\n var endIndex = startIndex + 1;\n var endPos = startPos + start.node.nodeSize;\n\n while (startIndex > 0 && link.isInSet($pos.parent.child(startIndex - 1).marks)) {\n startIndex -= 1;\n startPos -= $pos.parent.child(startIndex).nodeSize;\n }\n\n while (endIndex < $pos.parent.childCount && link.isInSet($pos.parent.child(endIndex).marks)) {\n endPos += $pos.parent.child(endIndex).nodeSize;\n endIndex += 1;\n }\n\n return {\n from: startPos,\n to: endPos\n };\n}\n\nfunction markIsActive(state, type) {\n var _state$selection = state.selection,\n from = _state$selection.from,\n $from = _state$selection.$from,\n to = _state$selection.to,\n empty = _state$selection.empty;\n\n if (empty) {\n return !!type.isInSet(state.storedMarks || $from.marks());\n }\n\n return !!state.doc.rangeHasMark(from, to, type);\n}\n\nfunction nodeEqualsType(_ref) {\n var types = _ref.types,\n node = _ref.node;\n return Array.isArray(types) && types.includes(node.type) || node.type === types;\n}\n\nfunction nodeIsActive(state, type) {\n var attrs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n var predicate = function predicate(node) {\n return node.type === type;\n };\n\n var node = findSelectedNodeOfType(type)(state.selection) || findParentNode(predicate)(state.selection);\n\n if (!Object.keys(attrs).length || !node) {\n return !!node;\n }\n\n return node.node.hasMarkup(type, _objectSpread2(_objectSpread2({}, node.node.attrs), attrs));\n}\n\nexport { getMarkAttrs, getMarkRange, getNodeAttrs, markIsActive, nodeEqualsType, nodeIsActive };\n","import { findWrapping, ReplaceAroundStep, canSplit, liftTarget } from 'prosemirror-transform';\nimport { NodeRange, Fragment, Slice } from 'prosemirror-model';\n\nvar olDOM = [\"ol\", 0], ulDOM = [\"ul\", 0], liDOM = [\"li\", 0];\n\n// :: NodeSpec\n// An ordered list [node spec](#model.NodeSpec). Has a single\n// attribute, `order`, which determines the number at which the list\n// starts counting, and defaults to 1. Represented as an `<ol>`\n// element.\nvar orderedList = {\n attrs: {order: {default: 1}},\n parseDOM: [{tag: \"ol\", getAttrs: function getAttrs(dom) {\n return {order: dom.hasAttribute(\"start\") ? +dom.getAttribute(\"start\") : 1}\n }}],\n toDOM: function toDOM(node) {\n return node.attrs.order == 1 ? olDOM : [\"ol\", {start: node.attrs.order}, 0]\n }\n};\n\n// :: NodeSpec\n// A bullet list node spec, represented in the DOM as `<ul>`.\nvar bulletList = {\n parseDOM: [{tag: \"ul\"}],\n toDOM: function toDOM() { return ulDOM }\n};\n\n// :: NodeSpec\n// A list item (`<li>`) spec.\nvar listItem = {\n parseDOM: [{tag: \"li\"}],\n toDOM: function toDOM() { return liDOM },\n defining: true\n};\n\nfunction add(obj, props) {\n var copy = {};\n for (var prop in obj) { copy[prop] = obj[prop]; }\n for (var prop$1 in props) { copy[prop$1] = props[prop$1]; }\n return copy\n}\n\n// :: (OrderedMap<NodeSpec>, string, ?string) → OrderedMap<NodeSpec>\n// Convenience function for adding list-related node types to a map\n// specifying the nodes for a schema. Adds\n// [`orderedList`](#schema-list.orderedList) as `\"ordered_list\"`,\n// [`bulletList`](#schema-list.bulletList) as `\"bullet_list\"`, and\n// [`listItem`](#schema-list.listItem) as `\"list_item\"`.\n//\n// `itemContent` determines the content expression for the list items.\n// If you want the commands defined in this module to apply to your\n// list structure, it should have a shape like `\"paragraph block*\"` or\n// `\"paragraph (ordered_list | bullet_list)*\"`. `listGroup` can be\n// given to assign a group name to the list node types, for example\n// `\"block\"`.\nfunction addListNodes(nodes, itemContent, listGroup) {\n return nodes.append({\n ordered_list: add(orderedList, {content: \"list_item+\", group: listGroup}),\n bullet_list: add(bulletList, {content: \"list_item+\", group: listGroup}),\n list_item: add(listItem, {content: itemContent})\n })\n}\n\n// :: (NodeType, ?Object) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Returns a command function that wraps the selection in a list with\n// the given type an attributes. If `dispatch` is null, only return a\n// value to indicate whether this is possible, but don't actually\n// perform the change.\nfunction wrapInList(listType, attrs) {\n return function(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var range = $from.blockRange($to), doJoin = false, outerRange = range;\n if (!range) { return false }\n // This is at the top of an existing list item\n if (range.depth >= 2 && $from.node(range.depth - 1).type.compatibleContent(listType) && range.startIndex == 0) {\n // Don't do anything if this is the top of the list\n if ($from.index(range.depth - 1) == 0) { return false }\n var $insert = state.doc.resolve(range.start - 2);\n outerRange = new NodeRange($insert, $insert, range.depth);\n if (range.endIndex < range.parent.childCount)\n { range = new NodeRange($from, state.doc.resolve($to.end(range.depth)), range.depth); }\n doJoin = true;\n }\n var wrap = findWrapping(outerRange, listType, attrs, range);\n if (!wrap) { return false }\n if (dispatch) { dispatch(doWrapInList(state.tr, range, wrap, doJoin, listType).scrollIntoView()); }\n return true\n }\n}\n\nfunction doWrapInList(tr, range, wrappers, joinBefore, listType) {\n var content = Fragment.empty;\n for (var i = wrappers.length - 1; i >= 0; i--)\n { content = Fragment.from(wrappers[i].type.create(wrappers[i].attrs, content)); }\n\n tr.step(new ReplaceAroundStep(range.start - (joinBefore ? 2 : 0), range.end, range.start, range.end,\n new Slice(content, 0, 0), wrappers.length, true));\n\n var found = 0;\n for (var i$1 = 0; i$1 < wrappers.length; i$1++) { if (wrappers[i$1].type == listType) { found = i$1 + 1; } }\n var splitDepth = wrappers.length - found;\n\n var splitPos = range.start + wrappers.length - (joinBefore ? 2 : 0), parent = range.parent;\n for (var i$2 = range.startIndex, e = range.endIndex, first = true; i$2 < e; i$2++, first = false) {\n if (!first && canSplit(tr.doc, splitPos, splitDepth)) {\n tr.split(splitPos, splitDepth);\n splitPos += 2 * splitDepth;\n }\n splitPos += parent.child(i$2).nodeSize;\n }\n return tr\n}\n\n// :: (NodeType) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Build a command that splits a non-empty textblock at the top level\n// of a list item by also splitting that list item.\nfunction splitListItem(itemType) {\n return function(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var node = ref.node;\n if ((node && node.isBlock) || $from.depth < 2 || !$from.sameParent($to)) { return false }\n var grandParent = $from.node(-1);\n if (grandParent.type != itemType) { return false }\n if ($from.parent.content.size == 0 && $from.node(-1).childCount == $from.indexAfter(-1)) {\n // In an empty block. If this is a nested list, the wrapping\n // list item should be split. Otherwise, bail out and let next\n // command handle lifting.\n if ($from.depth == 2 || $from.node(-3).type != itemType ||\n $from.index(-2) != $from.node(-2).childCount - 1) { return false }\n if (dispatch) {\n var wrap = Fragment.empty, keepItem = $from.index(-1) > 0;\n // Build a fragment containing empty versions of the structure\n // from the outer list item to the parent node of the cursor\n for (var d = $from.depth - (keepItem ? 1 : 2); d >= $from.depth - 3; d--)\n { wrap = Fragment.from($from.node(d).copy(wrap)); }\n // Add a second list item with an empty default start node\n wrap = wrap.append(Fragment.from(itemType.createAndFill()));\n var tr$1 = state.tr.replace($from.before(keepItem ? null : -1), $from.after(-3), new Slice(wrap, keepItem ? 3 : 2, 2));\n tr$1.setSelection(state.selection.constructor.near(tr$1.doc.resolve($from.pos + (keepItem ? 3 : 2))));\n dispatch(tr$1.scrollIntoView());\n }\n return true\n }\n var nextType = $to.pos == $from.end() ? grandParent.contentMatchAt(0).defaultType : null;\n var tr = state.tr.delete($from.pos, $to.pos);\n var types = nextType && [null, {type: nextType}];\n if (!canSplit(tr.doc, $from.pos, 2, types)) { return false }\n if (dispatch) { dispatch(tr.split($from.pos, 2, types).scrollIntoView()); }\n return true\n }\n}\n\n// :: (NodeType) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Create a command to lift the list item around the selection up into\n// a wrapping list.\nfunction liftListItem(itemType) {\n return function(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var range = $from.blockRange($to, function (node) { return node.childCount && node.firstChild.type == itemType; });\n if (!range) { return false }\n if (!dispatch) { return true }\n if ($from.node(range.depth - 1).type == itemType) // Inside a parent list\n { return liftToOuterList(state, dispatch, itemType, range) }\n else // Outer list node\n { return liftOutOfList(state, dispatch, range) }\n }\n}\n\nfunction liftToOuterList(state, dispatch, itemType, range) {\n var tr = state.tr, end = range.end, endOfList = range.$to.end(range.depth);\n if (end < endOfList) {\n // There are siblings after the lifted items, which must become\n // children of the last item\n tr.step(new ReplaceAroundStep(end - 1, endOfList, end, endOfList,\n new Slice(Fragment.from(itemType.create(null, range.parent.copy())), 1, 0), 1, true));\n range = new NodeRange(tr.doc.resolve(range.$from.pos), tr.doc.resolve(endOfList), range.depth);\n }\n dispatch(tr.lift(range, liftTarget(range)).scrollIntoView());\n return true\n}\n\nfunction liftOutOfList(state, dispatch, range) {\n var tr = state.tr, list = range.parent;\n // Merge the list items into a single big item\n for (var pos = range.end, i = range.endIndex - 1, e = range.startIndex; i > e; i--) {\n pos -= list.child(i).nodeSize;\n tr.delete(pos - 1, pos + 1);\n }\n var $start = tr.doc.resolve(range.start), item = $start.nodeAfter;\n var atStart = range.startIndex == 0, atEnd = range.endIndex == list.childCount;\n var parent = $start.node(-1), indexBefore = $start.index(-1);\n if (!parent.canReplace(indexBefore + (atStart ? 0 : 1), indexBefore + 1,\n item.content.append(atEnd ? Fragment.empty : Fragment.from(list))))\n { return false }\n var start = $start.pos, end = start + item.nodeSize;\n // Strip off the surrounding list. At the sides where we're not at\n // the end of the list, the existing list is closed. At sides where\n // this is the end, it is overwritten to its end.\n tr.step(new ReplaceAroundStep(start - (atStart ? 1 : 0), end + (atEnd ? 1 : 0), start + 1, end - 1,\n new Slice((atStart ? Fragment.empty : Fragment.from(list.copy(Fragment.empty)))\n .append(atEnd ? Fragment.empty : Fragment.from(list.copy(Fragment.empty))),\n atStart ? 0 : 1, atEnd ? 0 : 1), atStart ? 0 : 1));\n dispatch(tr.scrollIntoView());\n return true\n}\n\n// :: (NodeType) → (state: EditorState, dispatch: ?(tr: Transaction)) → bool\n// Create a command to sink the list item around the selection down\n// into an inner list.\nfunction sinkListItem(itemType) {\n return function(state, dispatch) {\n var ref = state.selection;\n var $from = ref.$from;\n var $to = ref.$to;\n var range = $from.blockRange($to, function (node) { return node.childCount && node.firstChild.type == itemType; });\n if (!range) { return false }\n var startIndex = range.startIndex;\n if (startIndex == 0) { return false }\n var parent = range.parent, nodeBefore = parent.child(startIndex - 1);\n if (nodeBefore.type != itemType) { return false }\n\n if (dispatch) {\n var nestedBefore = nodeBefore.lastChild && nodeBefore.lastChild.type == parent.type;\n var inner = Fragment.from(nestedBefore ? itemType.create() : null);\n var slice = new Slice(Fragment.from(itemType.create(null, Fragment.from(parent.type.create(null, inner)))),\n nestedBefore ? 3 : 1, 0);\n var before = range.start, after = range.end;\n dispatch(state.tr.step(new ReplaceAroundStep(before - (nestedBefore ? 3 : 1), after,\n before, after, slice, 1, true))\n .scrollIntoView());\n }\n return true\n }\n}\n\nexport { addListNodes, bulletList, liftListItem, listItem, orderedList, sinkListItem, splitListItem, wrapInList };\n//# sourceMappingURL=index.es.js.map\n","\n /*!\n * tiptap-commands v1.14.5\n * (c) 2020 überdosis GbR (limited liability)\n * @license MIT\n */\n \nimport { setBlockType, lift, wrapIn } from 'prosemirror-commands';\nexport { autoJoin, baseKeymap, chainCommands, createParagraphNear, deleteSelection, exitCode, joinBackward, joinDown, joinForward, joinUp, lift, liftEmptyBlock, macBaseKeymap, newlineInCode, pcBaseKeymap, selectAll, selectNodeBackward, selectNodeForward, selectParentNode, setBlockType, splitBlock, splitBlockKeepMarks, toggleMark, wrapIn } from 'prosemirror-commands';\nimport { liftListItem, wrapInList } from 'prosemirror-schema-list';\nexport { addListNodes, liftListItem, sinkListItem, splitListItem, wrapInList } from 'prosemirror-schema-list';\nimport { InputRule } from 'prosemirror-inputrules';\nexport { textblockTypeInputRule, wrappingInputRule } from 'prosemirror-inputrules';\nimport { Plugin } from 'prosemirror-state';\nimport { Slice, Fragment } from 'prosemirror-model';\nimport { getMarkRange, nodeIsActive } from 'tiptap-utils';\nimport { findParentNode } from 'prosemirror-utils';\n\nfunction insertText (text = '') {\n return (state, dispatch) => {\n const {\n $from\n } = state.selection;\n const {\n pos\n } = $from.pos;\n dispatch(state.tr.insertText(text, pos));\n return true;\n };\n}\n\nfunction getMarksBetween(start, end, state) {\n let marks = [];\n state.doc.nodesBetween(start, end, (node, pos) => {\n marks = [...marks, ...node.marks.map(mark => ({\n start: pos,\n end: pos + node.nodeSize,\n mark\n }))];\n });\n return marks;\n}\n\nfunction markInputRule (regexp, markType, getAttrs) {\n return new InputRule(regexp, (state, match, start, end) => {\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n const {\n tr\n } = state;\n const m = match.length - 1;\n let markEnd = end;\n let markStart = start;\n\n if (match[m]) {\n const matchStart = start + match[0].indexOf(match[m - 1]);\n const matchEnd = matchStart + match[m - 1].length - 1;\n const textStart = matchStart + match[m - 1].lastIndexOf(match[m]);\n const textEnd = textStart + match[m].length;\n const excludedMarks = getMarksBetween(start, end, state).filter(item => {\n const {\n excluded\n } = item.mark.type;\n return excluded.find(type => type.name === markType.name);\n }).filter(item => item.end > matchStart);\n\n if (excludedMarks.length) {\n return false;\n }\n\n if (textEnd < matchEnd) {\n tr.delete(textEnd, matchEnd);\n }\n\n if (textStart > matchStart) {\n tr.delete(matchStart, textStart);\n }\n\n markStart = matchStart;\n markEnd = markStart + match[m].length;\n }\n\n tr.addMark(markStart, markEnd, markType.create(attrs));\n tr.removeStoredMark(markType);\n return tr;\n });\n}\n\nfunction nodeInputRule (regexp, type, getAttrs) {\n return new InputRule(regexp, (state, match, start, end) => {\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs;\n const {\n tr\n } = state;\n\n if (match[0]) {\n tr.replaceWith(start - 1, end, type.create(attrs));\n }\n\n return tr;\n });\n}\n\nfunction pasteRule (regexp, type, getAttrs) {\n const handler = fragment => {\n const nodes = [];\n fragment.forEach(child => {\n if (child.isText) {\n const {\n text\n } = child;\n let pos = 0;\n let match;\n\n do {\n match = regexp.exec(text);\n\n if (match) {\n const start = match.index;\n const end = start + match[0].length;\n const attrs = getAttrs instanceof Function ? getAttrs(match[0]) : getAttrs;\n\n if (start > 0) {\n nodes.push(child.cut(pos, start));\n }\n\n nodes.push(child.cut(start, end).mark(type.create(attrs).addToSet(child.marks)));\n pos = end;\n }\n } while (match);\n\n if (pos < text.length) {\n nodes.push(child.cut(pos));\n }\n } else {\n nodes.push(child.copy(handler(child.content)));\n }\n });\n return Fragment.fromArray(nodes);\n };\n\n return new Plugin({\n props: {\n transformPasted: slice => new Slice(handler(slice.content), slice.openStart, slice.openEnd)\n }\n });\n}\n\nfunction markPasteRule (regexp, type, getAttrs) {\n const handler = (fragment, parent) => {\n const nodes = [];\n fragment.forEach(child => {\n if (child.isText) {\n const {\n text,\n marks\n } = child;\n let pos = 0;\n let match;\n const isLink = !!marks.filter(x => x.type.name === 'link')[0]; // eslint-disable-next-line\n\n while (!isLink && (match = regexp.exec(text)) !== null) {\n if (parent && parent.type.allowsMarkType(type) && match[1]) {\n const start = match.index;\n const end = start + match[0].length;\n const textStart = start + match[0].indexOf(match[1]);\n const textEnd = textStart + match[1].length;\n const attrs = getAttrs instanceof Function ? getAttrs(match) : getAttrs; // adding text before markdown to nodes\n\n if (start > 0) {\n nodes.push(child.cut(pos, start));\n } // adding the markdown part to nodes\n\n\n nodes.push(child.cut(textStart, textEnd).mark(type.create(attrs).addToSet(child.marks)));\n pos = end;\n }\n } // adding rest of text to nodes\n\n\n if (pos < text.length) {\n nodes.push(child.cut(pos));\n }\n } else {\n nodes.push(child.copy(handler(child.content, child)));\n }\n });\n return Fragment.fromArray(nodes);\n };\n\n return new Plugin({\n props: {\n transformPasted: slice => new Slice(handler(slice.content), slice.openStart, slice.openEnd)\n }\n });\n}\n\nfunction removeMark (type) {\n return (state, dispatch) => {\n const {\n tr,\n selection\n } = state;\n let {\n from,\n to\n } = selection;\n const {\n $from,\n empty\n } = selection;\n\n if (empty) {\n const range = getMarkRange($from, type);\n from = range.from;\n to = range.to;\n }\n\n tr.removeMark(from, to, type);\n return dispatch(tr);\n };\n}\n\nfunction replaceText (range = null, type, attrs = {}) {\n return (state, dispatch) => {\n const {\n $from,\n $to\n } = state.selection;\n const index = $from.index();\n const from = range ? range.from : $from.pos;\n const to = range ? range.to : $to.pos;\n\n if (!$from.parent.canReplaceWith(index, index, type)) {\n return false;\n }\n\n if (dispatch) {\n dispatch(state.tr.replaceWith(from, to, type.create(attrs)));\n }\n\n return true;\n };\n}\n\nfunction setInlineBlockType (type, attrs = {}) {\n return (state, dispatch) => {\n const {\n $from\n } = state.selection;\n const index = $from.index();\n\n if (!$from.parent.canReplaceWith(index, index, type)) {\n return false;\n }\n\n if (dispatch) {\n dispatch(state.tr.replaceSelectionWith(type.create(attrs)));\n }\n\n return true;\n };\n}\n\n// see https://github.com/ProseMirror/prosemirror-transform/blob/main/src/structure.js\n// Since this piece of code was \"borrowed\" from prosemirror, ESLint rules are ignored.\n\n/* eslint-disable max-len, no-plusplus, no-undef, eqeqeq */\n\nfunction canSplit(doc, pos, depth = 1, typesAfter) {\n const $pos = doc.resolve(pos);\n const base = $pos.depth - depth;\n const innerType = typesAfter && typesAfter[typesAfter.length - 1] || $pos.parent;\n if (base < 0 || $pos.parent.type.spec.isolating || !$pos.parent.canReplace($pos.index(), $pos.parent.childCount) || !innerType.type.validContent($pos.parent.content.cutByIndex($pos.index(), $pos.parent.childCount))) return false;\n\n for (let d = $pos.depth - 1, i = depth - 2; d > base; d--, i--) {\n const node = $pos.node(d);\n const index = $pos.index(d);\n if (node.type.spec.isolating) return false;\n let rest = node.content.cutByIndex(index, node.childCount);\n const after = typesAfter && typesAfter[i] || node;\n if (after != node) rest = rest.replaceChild(0, after.type.create(after.attrs));\n /* Change starts from here */\n // if (!node.canReplace(index + 1, node.childCount) || !after.type.validContent(rest))\n // return false\n\n if (!node.canReplace(index + 1, node.childCount)) return false;\n /* Change ends here */\n }\n\n const index = $pos.indexAfter(base);\n const baseType = typesAfter && typesAfter[0];\n return $pos.node(base).canReplaceWith(index, index, baseType ? baseType.type : $pos.node(base + 1).type);\n} // this is a copy of splitListItem\n// see https://github.com/ProseMirror/prosemirror-schema-list/blob/main/src/schema-list.js\n\n\nfunction splitToDefaultListItem(itemType) {\n return function (state, dispatch) {\n const {\n $from,\n $to,\n node\n } = state.selection;\n if (node && node.isBlock || $from.depth < 2 || !$from.sameParent($to)) return false;\n const grandParent = $from.node(-1);\n if (grandParent.type != itemType) return false;\n\n if ($from.parent.content.size == 0) {\n // In an empty block. If this is a nested list, the wrapping\n // list item should be split. Otherwise, bail out and let next\n // command handle lifting.\n if ($from.depth == 2 || $from.node(-3).type != itemType || $from.index(-2) != $from.node(-2).childCount - 1) return false;\n\n if (dispatch) {\n let wrap = Fragment.empty;\n const keepItem = $from.index(-1) > 0; // Build a fragment containing empty versions of the structure\n // from the outer list item to the parent node of the cursor\n\n for (let d = $from.depth - (keepItem ? 1 : 2); d >= $from.depth - 3; d--) wrap = Fragment.from($from.node(d).copy(wrap)); // Add a second list item with an empty default start node\n\n\n wrap = wrap.append(Fragment.from(itemType.createAndFill()));\n const tr = state.tr.replace($from.before(keepItem ? null : -1), $from.after(-3), new Slice(wrap, keepItem ? 3 : 2, 2));\n tr.setSelection(state.selection.constructor.near(tr.doc.resolve($from.pos + (keepItem ? 3 : 2))));\n dispatch(tr.scrollIntoView());\n }\n\n return true;\n }\n\n const nextType = $to.pos == $from.end() ? grandParent.contentMatchAt($from.indexAfter(-1)).defaultType : null;\n const tr = state.tr.delete($from.pos, $to.pos);\n /* Change starts from here */\n // let types = nextType && [null, {type: nextType}]\n\n let types = nextType && [{\n type: itemType\n }, {\n type: nextType\n }];\n if (!types) types = [{\n type: itemType\n }, null];\n /* Change ends here */\n\n if (!canSplit(tr.doc, $from.pos, 2, types)) return false;\n if (dispatch) dispatch(tr.split($from.pos, 2, types).scrollIntoView());\n return true;\n };\n}\n/* eslint-enable max-len, no-plusplus, no-undef, eqeqeq */\n\nfunction toggleBlockType (type, toggletype, attrs = {}) {\n return (state, dispatch, view) => {\n const isActive = nodeIsActive(state, type, attrs);\n\n if (isActive) {\n return setBlockType(toggletype)(state, dispatch, view);\n }\n\n return setBlockType(type, attrs)(state, dispatch, view);\n };\n}\n\nfunction isList(node, schema) {\n return node.type === schema.nodes.bullet_list || node.type === schema.nodes.ordered_list || node.type === schema.nodes.todo_list;\n}\n\nfunction toggleList(listType, itemType) {\n return (state, dispatch, view) => {\n const {\n schema,\n selection\n } = state;\n const {\n $from,\n $to\n } = selection;\n const range = $from.blockRange($to);\n\n if (!range) {\n return false;\n }\n\n const parentList = findParentNode(node => isList(node, schema))(selection);\n\n if (range.depth >= 1 && parentList && range.depth - parentList.depth <= 1) {\n if (parentList.node.type === listType) {\n return liftListItem(itemType)(state, dispatch, view);\n }\n\n if (isList(parentList.node, schema) && listType.validContent(parentList.node.content)) {\n const {\n tr\n } = state;\n tr.setNodeMarkup(parentList.pos, listType);\n\n if (dispatch) {\n dispatch(tr);\n }\n\n return false;\n }\n }\n\n return wrapInList(listType)(state, dispatch, view);\n };\n}\n\nfunction toggleWrap (type, attrs = {}) {\n return (state, dispatch, view) => {\n const isActive = nodeIsActive(state, type, attrs);\n\n if (isActive) {\n return lift(state, dispatch);\n }\n\n return wrapIn(type, attrs)(state, dispatch, view);\n };\n}\n\nfunction updateMark (type, attrs) {\n return (state, dispatch) => {\n const {\n tr,\n selection,\n doc\n } = state;\n let {\n from,\n to\n } = selection;\n const {\n $from,\n empty\n } = selection;\n\n if (empty) {\n const range = getMarkRange($from, type);\n from = range.from;\n to = range.to;\n }\n\n const hasMark = doc.rangeHasMark(from, to, type);\n\n if (hasMark) {\n tr.removeMark(from, to, type);\n }\n\n tr.addMark(from, to, type.create(attrs));\n return dispatch(tr);\n };\n}\n\nexport { insertText, markInputRule, markPasteRule, nodeInputRule, pasteRule, removeMark, replaceText, setInlineBlockType, splitToDefaultListItem, toggleBlockType, toggleList, toggleWrap, updateMark };\n","/**\n * Helpers\n */\nconst escapeTest = /[&<>\"']/;\nconst escapeReplace = /[&<>\"']/g;\nconst escapeTestNoEncode = /[<>\"']|&(?!#?\\w+;)/;\nconst escapeReplaceNoEncode = /[<>\"']|&(?!#?\\w+;)/g;\nconst escapeReplacements = {\n '&': '&amp;',\n '<': '&lt;',\n '>': '&gt;',\n '\"': '&quot;',\n \"'\": '&#39;'\n};\nconst getEscapeReplacement = (ch) => escapeReplacements[ch];\nfunction escape(html, encode) {\n if (encode) {\n if (escapeTest.test(html)) {\n return html.replace(escapeReplace, getEscapeReplacement);\n }\n } else {\n if (escapeTestNoEncode.test(html)) {\n return html.replace(escapeReplaceNoEncode, getEscapeReplacement);\n }\n }\n\n return html;\n}\n\nconst unescapeTest = /&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig;\n\nfunction unescape(html) {\n // explicitly match decimal, hex, and named HTML entities\n return html.replace(unescapeTest, (_, n) => {\n n = n.toLowerCase();\n if (n === 'colon') return ':';\n if (n.charAt(0) === '#') {\n return n.charAt(1) === 'x'\n ? String.fromCharCode(parseInt(n.substring(2), 16))\n : String.fromCharCode(+n.substring(1));\n }\n return '';\n });\n}\n\nconst caret = /(^|[^\\[])\\^/g;\nfunction edit(regex, opt) {\n regex = regex.source || regex;\n opt = opt || '';\n const obj = {\n replace: (name, val) => {\n val = val.source || val;\n val = val.replace(caret, '$1');\n regex = regex.replace(name, val);\n return obj;\n },\n getRegex: () => {\n return new RegExp(regex, opt);\n }\n };\n return obj;\n}\n\nconst nonWordAndColonTest = /[^\\w:]/g;\nconst originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;\nfunction cleanUrl(sanitize, base, href) {\n if (sanitize) {\n let prot;\n try {\n prot = decodeURIComponent(unescape(href))\n .replace(nonWordAndColonTest, '')\n .toLowerCase();\n } catch (e) {\n return null;\n }\n if (prot.indexOf('javascript:') === 0 || prot.indexOf('vbscript:') === 0 || prot.indexOf('data:') === 0) {\n return null;\n }\n }\n if (base && !originIndependentUrl.test(href)) {\n href = resolveUrl(base, href);\n }\n try {\n href = encodeURI(href).replace(/%25/g, '%');\n } catch (e) {\n return null;\n }\n return href;\n}\n\nconst baseUrls = {};\nconst justDomain = /^[^:]+:\\/*[^/]*$/;\nconst protocol = /^([^:]+:)[\\s\\S]*$/;\nconst domain = /^([^:]+:\\/*[^/]*)[\\s\\S]*$/;\n\nfunction resolveUrl(base, href) {\n if (!baseUrls[' ' + base]) {\n // we can ignore everything in base after the last slash of its path component,\n // but we might need to add _that_\n // https://tools.ietf.org/html/rfc3986#section-3\n if (justDomain.test(base)) {\n baseUrls[' ' + base] = base + '/';\n } else {\n baseUrls[' ' + base] = rtrim(base, '/', true);\n }\n }\n base = baseUrls[' ' + base];\n const relativeBase = base.indexOf(':') === -1;\n\n if (href.substring(0, 2) === '//') {\n if (relativeBase) {\n return href;\n }\n return base.replace(protocol, '$1') + href;\n } else if (href.charAt(0) === '/') {\n if (relativeBase) {\n return href;\n }\n return base.replace(domain, '$1') + href;\n } else {\n return base + href;\n }\n}\n\nconst noopTest = { exec: function noopTest() {} };\n\nfunction merge(obj) {\n let i = 1,\n target,\n key;\n\n for (; i < arguments.length; i++) {\n target = arguments[i];\n for (key in target) {\n if (Object.prototype.hasOwnProperty.call(target, key)) {\n obj[key] = target[key];\n }\n }\n }\n\n return obj;\n}\n\nfunction splitCells(tableRow, count) {\n // ensure that every cell-delimiting pipe has a space\n // before it to distinguish it from an escaped pipe\n const row = tableRow.replace(/\\|/g, (match, offset, str) => {\n let escaped = false,\n curr = offset;\n while (--curr >= 0 && str[curr] === '\\\\') escaped = !escaped;\n if (escaped) {\n // odd number of slashes means | is escaped\n // so we leave it alone\n return '|';\n } else {\n // add space before unescaped |\n return ' |';\n }\n }),\n cells = row.split(/ \\|/);\n let i = 0;\n\n if (cells.length > count) {\n cells.splice(count);\n } else {\n while (cells.length < count) cells.push('');\n }\n\n for (; i < cells.length; i++) {\n // leading or trailing whitespace is ignored per the gfm spec\n cells[i] = cells[i].trim().replace(/\\\\\\|/g, '|');\n }\n return cells;\n}\n\n// Remove trailing 'c's. Equivalent to str.replace(/c*$/, '').\n// /c*$/ is vulnerable to REDOS.\n// invert: Remove suffix of non-c chars instead. Default falsey.\nfunction rtrim(str, c, invert) {\n const l = str.length;\n if (l === 0) {\n return '';\n }\n\n // Length of suffix matching the invert condition.\n let suffLen = 0;\n\n // Step left until we fail to match the invert condition.\n while (suffLen < l) {\n const currChar = str.charAt(l - suffLen - 1);\n if (currChar === c && !invert) {\n suffLen++;\n } else if (currChar !== c && invert) {\n suffLen++;\n } else {\n break;\n }\n }\n\n return str.substr(0, l - suffLen);\n}\n\nfunction findClosingBracket(str, b) {\n if (str.indexOf(b[1]) === -1) {\n return -1;\n }\n const l = str.length;\n let level = 0,\n i = 0;\n for (; i < l; i++) {\n if (str[i] === '\\\\') {\n i++;\n } else if (str[i] === b[0]) {\n level++;\n } else if (str[i] === b[1]) {\n level--;\n if (level < 0) {\n return i;\n }\n }\n }\n return -1;\n}\n\nfunction checkSanitizeDeprecation(opt) {\n if (opt && opt.sanitize && !opt.silent) {\n 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');\n }\n}\n\nmodule.exports = {\n escape,\n unescape,\n edit,\n cleanUrl,\n resolveUrl,\n noopTest,\n merge,\n splitCells,\n rtrim,\n findClosingBracket,\n checkSanitizeDeprecation\n};\n","function getDefaults() {\n return {\n baseUrl: null,\n breaks: false,\n gfm: true,\n headerIds: true,\n headerPrefix: '',\n highlight: null,\n langPrefix: 'language-',\n mangle: true,\n pedantic: false,\n renderer: null,\n sanitize: false,\n sanitizer: null,\n silent: false,\n smartLists: false,\n smartypants: false,\n xhtml: false\n };\n}\n\nfunction changeDefaults(newDefaults) {\n module.exports.defaults = newDefaults;\n}\n\nmodule.exports = {\n defaults: getDefaults(),\n getDefaults,\n changeDefaults\n};\n","import { TextSelection, Selection, NodeSelection } from 'prosemirror-state';\nimport { DOMSerializer, Fragment, Mark, DOMParser, Slice } from 'prosemirror-model';\nimport { dropPoint } from 'prosemirror-transform';\n\nvar result = {};\n\nif (typeof navigator != \"undefined\" && typeof document != \"undefined\") {\n var ie_edge = /Edge\\/(\\d+)/.exec(navigator.userAgent);\n var ie_upto10 = /MSIE \\d/.test(navigator.userAgent);\n var ie_11up = /Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(navigator.userAgent);\n\n result.mac = /Mac/.test(navigator.platform);\n var ie = result.ie = !!(ie_upto10 || ie_11up || ie_edge);\n result.ie_version = ie_upto10 ? document.documentMode || 6 : ie_11up ? +ie_11up[1] : ie_edge ? +ie_edge[1] : null;\n result.gecko = !ie && /gecko\\/(\\d+)/i.test(navigator.userAgent);\n result.gecko_version = result.gecko && +(/Firefox\\/(\\d+)/.exec(navigator.userAgent) || [0, 0])[1];\n var chrome = !ie && /Chrome\\/(\\d+)/.exec(navigator.userAgent);\n result.chrome = !!chrome;\n result.chrome_version = chrome && +chrome[1];\n result.ios = !ie && /AppleWebKit/.test(navigator.userAgent) && /Mobile\\/\\w+/.test(navigator.userAgent);\n result.android = /Android \\d/.test(navigator.userAgent);\n result.webkit = \"webkitFontSmoothing\" in document.documentElement.style;\n result.safari = /Apple Computer/.test(navigator.vendor);\n result.webkit_version = result.webkit && +(/\\bAppleWebKit\\/(\\d+)/.exec(navigator.userAgent) || [0, 0])[1];\n}\n\nvar domIndex = function(node) {\n for (var index = 0;; index++) {\n node = node.previousSibling;\n if (!node) { return index }\n }\n};\n\nvar parentNode = function(node) {\n var parent = node.parentNode;\n return parent && parent.nodeType == 11 ? parent.host : parent\n};\n\nvar textRange = function(node, from, to) {\n var range = document.createRange();\n range.setEnd(node, to == null ? node.nodeValue.length : to);\n range.setStart(node, from || 0);\n return range\n};\n\n// Scans forward and backward through DOM positions equivalent to the\n// given one to see if the two are in the same place (i.e. after a\n// text node vs at the end of that text node)\nvar isEquivalentPosition = function(node, off, targetNode, targetOff) {\n return targetNode && (scanFor(node, off, targetNode, targetOff, -1) ||\n scanFor(node, off, targetNode, targetOff, 1))\n};\n\nvar atomElements = /^(img|br|input|textarea|hr)$/i;\n\nfunction scanFor(node, off, targetNode, targetOff, dir) {\n for (;;) {\n if (node == targetNode && off == targetOff) { return true }\n if (off == (dir < 0 ? 0 : nodeSize(node))) {\n var parent = node.parentNode;\n if (parent.nodeType != 1 || hasBlockDesc(node) || atomElements.test(node.nodeName) || node.contentEditable == \"false\")\n { return false }\n off = domIndex(node) + (dir < 0 ? 0 : 1);\n node = parent;\n } else if (node.nodeType == 1) {\n node = node.childNodes[off + (dir < 0 ? -1 : 0)];\n if (node.contentEditable == \"false\") { return false }\n off = dir < 0 ? nodeSize(node) : 0;\n } else {\n return false\n }\n }\n}\n\nfunction nodeSize(node) {\n return node.nodeType == 3 ? node.nodeValue.length : node.childNodes.length\n}\n\nfunction isOnEdge(node, offset, parent) {\n for (var atStart = offset == 0, atEnd = offset == nodeSize(node); atStart || atEnd;) {\n if (node == parent) { return true }\n var index = domIndex(node);\n node = node.parentNode;\n if (!node) { return false }\n atStart = atStart && index == 0;\n atEnd = atEnd && index == nodeSize(node);\n }\n}\n\nfunction hasBlockDesc(dom) {\n var desc;\n for (var cur = dom; cur; cur = cur.parentNode) { if (desc = cur.pmViewDesc) { break } }\n return desc && desc.node && desc.node.isBlock && (desc.dom == dom || desc.contentDOM == dom)\n}\n\n// Work around Chrome issue https://bugs.chromium.org/p/chromium/issues/detail?id=447523\n// (isCollapsed inappropriately returns true in shadow dom)\nvar selectionCollapsed = function(domSel) {\n var collapsed = domSel.isCollapsed;\n if (collapsed && result.chrome && domSel.rangeCount && !domSel.getRangeAt(0).collapsed)\n { collapsed = false; }\n return collapsed\n};\n\nfunction keyEvent(keyCode, key) {\n var event = document.createEvent(\"Event\");\n event.initEvent(\"keydown\", true, true);\n event.keyCode = keyCode;\n event.key = event.code = key;\n return event\n}\n\nfunction windowRect(doc) {\n return {left: 0, right: doc.documentElement.clientWidth,\n top: 0, bottom: doc.documentElement.clientHeight}\n}\n\nfunction getSide(value, side) {\n return typeof value == \"number\" ? value : value[side]\n}\n\nfunction clientRect(node) {\n var rect = node.getBoundingClientRect();\n // Make sure scrollbar width isn't included in the rectangle\n return {left: rect.left, right: rect.left + node.clientWidth,\n top: rect.top, bottom: rect.top + node.clientHeight}\n}\n\nfunction scrollRectIntoView(view, rect, startDOM) {\n var scrollThreshold = view.someProp(\"scrollThreshold\") || 0, scrollMargin = view.someProp(\"scrollMargin\") || 5;\n var doc = view.dom.ownerDocument;\n for (var parent = startDOM || view.dom;; parent = parentNode(parent)) {\n if (!parent) { break }\n if (parent.nodeType != 1) { continue }\n var atTop = parent == doc.body || parent.nodeType != 1;\n var bounding = atTop ? windowRect(doc) : clientRect(parent);\n var moveX = 0, moveY = 0;\n if (rect.top < bounding.top + getSide(scrollThreshold, \"top\"))\n { moveY = -(bounding.top - rect.top + getSide(scrollMargin, \"top\")); }\n else if (rect.bottom > bounding.bottom - getSide(scrollThreshold, \"bottom\"))\n { moveY = rect.bottom - bounding.bottom + getSide(scrollMargin, \"bottom\"); }\n if (rect.left < bounding.left + getSide(scrollThreshold, \"left\"))\n { moveX = -(bounding.left - rect.left + getSide(scrollMargin, \"left\")); }\n else if (rect.right > bounding.right - getSide(scrollThreshold, \"right\"))\n { moveX = rect.right - bounding.right + getSide(scrollMargin, \"right\"); }\n if (moveX || moveY) {\n if (atTop) {\n doc.defaultView.scrollBy(moveX, moveY);\n } else {\n var startX = parent.scrollLeft, startY = parent.scrollTop;\n if (moveY) { parent.scrollTop += moveY; }\n if (moveX) { parent.scrollLeft += moveX; }\n var dX = parent.scrollLeft - startX, dY = parent.scrollTop - startY;\n rect = {left: rect.left - dX, top: rect.top - dY, right: rect.right - dX, bottom: rect.bottom - dY};\n }\n }\n if (atTop) { break }\n }\n}\n\n// Store the scroll position of the editor's parent nodes, along with\n// the top position of an element near the top of the editor, which\n// will be used to make sure the visible viewport remains stable even\n// when the size of the content above changes.\nfunction storeScrollPos(view) {\n var rect = view.dom.getBoundingClientRect(), startY = Math.max(0, rect.top);\n var refDOM, refTop;\n for (var x = (rect.left + rect.right) / 2, y = startY + 1;\n y < Math.min(innerHeight, rect.bottom); y += 5) {\n var dom = view.root.elementFromPoint(x, y);\n if (dom == view.dom || !view.dom.contains(dom)) { continue }\n var localRect = dom.getBoundingClientRect();\n if (localRect.top >= startY - 20) {\n refDOM = dom;\n refTop = localRect.top;\n break\n }\n }\n return {refDOM: refDOM, refTop: refTop, stack: scrollStack(view.dom)}\n}\n\nfunction scrollStack(dom) {\n var stack = [], doc = dom.ownerDocument;\n for (; dom; dom = parentNode(dom)) {\n stack.push({dom: dom, top: dom.scrollTop, left: dom.scrollLeft});\n if (dom == doc) { break }\n }\n return stack\n}\n\n// Reset the scroll position of the editor's parent nodes to that what\n// it was before, when storeScrollPos was called.\nfunction resetScrollPos(ref) {\n var refDOM = ref.refDOM;\n var refTop = ref.refTop;\n var stack = ref.stack;\n\n var newRefTop = refDOM ? refDOM.getBoundingClientRect().top : 0;\n restoreScrollStack(stack, newRefTop == 0 ? 0 : newRefTop - refTop);\n}\n\nfunction restoreScrollStack(stack, dTop) {\n for (var i = 0; i < stack.length; i++) {\n var ref = stack[i];\n var dom = ref.dom;\n var top = ref.top;\n var left = ref.left;\n if (dom.scrollTop != top + dTop) { dom.scrollTop = top + dTop; }\n if (dom.scrollLeft != left) { dom.scrollLeft = left; }\n }\n}\n\nvar preventScrollSupported = null;\n// Feature-detects support for .focus({preventScroll: true}), and uses\n// a fallback kludge when not supported.\nfunction focusPreventScroll(dom) {\n if (dom.setActive) { return dom.setActive() } // in IE\n if (preventScrollSupported) { return dom.focus(preventScrollSupported) }\n\n var stored = scrollStack(dom);\n dom.focus(preventScrollSupported == null ? {\n get preventScroll() {\n preventScrollSupported = {preventScroll: true};\n return true\n }\n } : undefined);\n if (!preventScrollSupported) {\n preventScrollSupported = false;\n restoreScrollStack(stored, 0);\n }\n}\n\nfunction findOffsetInNode(node, coords) {\n var closest, dxClosest = 2e8, coordsClosest, offset = 0;\n var rowBot = coords.top, rowTop = coords.top;\n for (var child = node.firstChild, childIndex = 0; child; child = child.nextSibling, childIndex++) {\n var rects = (void 0);\n if (child.nodeType == 1) { rects = child.getClientRects(); }\n else if (child.nodeType == 3) { rects = textRange(child).getClientRects(); }\n else { continue }\n\n for (var i = 0; i < rects.length; i++) {\n var rect = rects[i];\n if (rect.top <= rowBot && rect.bottom >= rowTop) {\n rowBot = Math.max(rect.bottom, rowBot);\n rowTop = Math.min(rect.top, rowTop);\n var dx = rect.left > coords.left ? rect.left - coords.left\n : rect.right < coords.left ? coords.left - rect.right : 0;\n if (dx < dxClosest) {\n closest = child;\n dxClosest = dx;\n coordsClosest = dx && closest.nodeType == 3 ? {left: rect.right < coords.left ? rect.right : rect.left, top: coords.top} : coords;\n if (child.nodeType == 1 && dx)\n { offset = childIndex + (coords.left >= (rect.left + rect.right) / 2 ? 1 : 0); }\n continue\n }\n }\n if (!closest && (coords.left >= rect.right && coords.top >= rect.top ||\n coords.left >= rect.left && coords.top >= rect.bottom))\n { offset = childIndex + 1; }\n }\n }\n if (closest && closest.nodeType == 3) { return findOffsetInText(closest, coordsClosest) }\n if (!closest || (dxClosest && closest.nodeType == 1)) { return {node: node, offset: offset} }\n return findOffsetInNode(closest, coordsClosest)\n}\n\nfunction findOffsetInText(node, coords) {\n var len = node.nodeValue.length;\n var range = document.createRange();\n for (var i = 0; i < len; i++) {\n range.setEnd(node, i + 1);\n range.setStart(node, i);\n var rect = singleRect(range, 1);\n if (rect.top == rect.bottom) { continue }\n if (inRect(coords, rect))\n { return {node: node, offset: i + (coords.left >= (rect.left + rect.right) / 2 ? 1 : 0)} }\n }\n return {node: node, offset: 0}\n}\n\nfunction inRect(coords, rect) {\n return coords.left >= rect.left - 1 && coords.left <= rect.right + 1&&\n coords.top >= rect.top - 1 && coords.top <= rect.bottom + 1\n}\n\nfunction targetKludge(dom, coords) {\n var parent = dom.parentNode;\n if (parent && /^li$/i.test(parent.nodeName) && coords.left < dom.getBoundingClientRect().left)\n { return parent }\n return dom\n}\n\nfunction posFromElement(view, elt, coords) {\n var ref = findOffsetInNode(elt, coords);\n var node = ref.node;\n var offset = ref.offset;\n var bias = -1;\n if (node.nodeType == 1 && !node.firstChild) {\n var rect = node.getBoundingClientRect();\n bias = rect.left != rect.right && coords.left > (rect.left + rect.right) / 2 ? 1 : -1;\n }\n return view.docView.posFromDOM(node, offset, bias)\n}\n\nfunction posFromCaret(view, node, offset, coords) {\n // Browser (in caretPosition/RangeFromPoint) will agressively\n // normalize towards nearby inline nodes. Since we are interested in\n // positions between block nodes too, we first walk up the hierarchy\n // of nodes to see if there are block nodes that the coordinates\n // fall outside of. If so, we take the position before/after that\n // block. If not, we call `posFromDOM` on the raw node/offset.\n var outside = -1;\n for (var cur = node;;) {\n if (cur == view.dom) { break }\n var desc = view.docView.nearestDesc(cur, true);\n if (!desc) { return null }\n if (desc.node.isBlock && desc.parent) {\n var rect = desc.dom.getBoundingClientRect();\n if (rect.left > coords.left || rect.top > coords.top) { outside = desc.posBefore; }\n else if (rect.right < coords.left || rect.bottom < coords.top) { outside = desc.posAfter; }\n else { break }\n }\n cur = desc.dom.parentNode;\n }\n return outside > -1 ? outside : view.docView.posFromDOM(node, offset)\n}\n\nfunction elementFromPoint(element, coords, box) {\n var len = element.childNodes.length;\n if (len && box.top < box.bottom) {\n for (var startI = Math.max(0, Math.min(len - 1, Math.floor(len * (coords.top - box.top) / (box.bottom - box.top)) - 2)), i = startI;;) {\n var child = element.childNodes[i];\n if (child.nodeType == 1) {\n var rects = child.getClientRects();\n for (var j = 0; j < rects.length; j++) {\n var rect = rects[j];\n if (inRect(coords, rect)) { return elementFromPoint(child, coords, rect) }\n }\n }\n if ((i = (i + 1) % len) == startI) { break }\n }\n }\n return element\n}\n\n// Given an x,y position on the editor, get the position in the document.\nfunction posAtCoords(view, coords) {\n var assign, assign$1;\n\n var root = view.root, node, offset;\n if (root.caretPositionFromPoint) {\n try { // Firefox throws for this call in hard-to-predict circumstances (#994)\n var pos$1 = root.caretPositionFromPoint(coords.left, coords.top);\n if (pos$1) { ((assign = pos$1, node = assign.offsetNode, offset = assign.offset)); }\n } catch (_) {}\n }\n if (!node && root.caretRangeFromPoint) {\n var range = root.caretRangeFromPoint(coords.left, coords.top);\n if (range) { ((assign$1 = range, node = assign$1.startContainer, offset = assign$1.startOffset)); }\n }\n\n var elt = root.elementFromPoint(coords.left, coords.top + 1), pos;\n if (!elt || !view.dom.contains(elt.nodeType != 1 ? elt.parentNode : elt)) {\n var box = view.dom.getBoundingClientRect();\n if (!inRect(coords, box)) { return null }\n elt = elementFromPoint(view.dom, coords, box);\n if (!elt) { return null }\n }\n // Safari's caretRangeFromPoint returns nonsense when on a draggable element\n if (result.safari && elt.draggable) { node = offset = null; }\n elt = targetKludge(elt, coords);\n if (node) {\n if (result.gecko && node.nodeType == 1) {\n // Firefox will sometimes return offsets into <input> nodes, which\n // have no actual children, from caretPositionFromPoint (#953)\n offset = Math.min(offset, node.childNodes.length);\n // It'll also move the returned position before image nodes,\n // even if those are behind it.\n if (offset < node.childNodes.length) {\n var next = node.childNodes[offset], box$1;\n if (next.nodeName == \"IMG\" && (box$1 = next.getBoundingClientRect()).right <= coords.left &&\n box$1.bottom > coords.top)\n { offset++; }\n }\n }\n // Suspiciously specific kludge to work around caret*FromPoint\n // never returning a position at the end of the document\n if (node == view.dom && offset == node.childNodes.length - 1 && node.lastChild.nodeType == 1 &&\n coords.top > node.lastChild.getBoundingClientRect().bottom)\n { pos = view.state.doc.content.size; }\n // Ignore positions directly after a BR, since caret*FromPoint\n // 'round up' positions that would be more accurately placed\n // before the BR node.\n else if (offset == 0 || node.nodeType != 1 || node.childNodes[offset - 1].nodeName != \"BR\")\n { pos = posFromCaret(view, node, offset, coords); }\n }\n if (pos == null) { pos = posFromElement(view, elt, coords); }\n\n var desc = view.docView.nearestDesc(elt, true);\n return {pos: pos, inside: desc ? desc.posAtStart - desc.border : -1}\n}\n\nfunction singleRect(object, bias) {\n var rects = object.getClientRects();\n return !rects.length ? object.getBoundingClientRect() : rects[bias < 0 ? 0 : rects.length - 1]\n}\n\n// : (EditorView, number) → {left: number, top: number, right: number, bottom: number}\n// Given a position in the document model, get a bounding box of the\n// character at that position, relative to the window.\nfunction coordsAtPos(view, pos) {\n var ref = view.docView.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n\n // These browsers support querying empty text ranges\n if (node.nodeType == 3 && (result.webkit || result.gecko)) {\n var rect = singleRect(textRange(node, offset, offset), 0);\n // Firefox returns bad results (the position before the space)\n // when querying a position directly after line-broken\n // whitespace. Detect this situation and and kludge around it\n if (result.gecko && offset && /\\s/.test(node.nodeValue[offset - 1]) && offset < node.nodeValue.length) {\n var rectBefore = singleRect(textRange(node, offset - 1, offset - 1), -1);\n if (rectBefore.top == rect.top) {\n var rectAfter = singleRect(textRange(node, offset, offset + 1), -1);\n if (rectAfter.top != rect.top)\n { return flattenV(rectAfter, rectAfter.left < rectBefore.left) }\n }\n }\n return rect\n }\n\n if (node.nodeType == 1 && !view.state.doc.resolve(pos).parent.inlineContent) {\n // Return a horizontal line in block context\n var top = true, rect$1;\n if (offset < node.childNodes.length) {\n var after = node.childNodes[offset];\n if (after.nodeType == 1) { rect$1 = after.getBoundingClientRect(); }\n }\n if (!rect$1 && offset) {\n var before = node.childNodes[offset - 1];\n if (before.nodeType == 1) { rect$1 = before.getBoundingClientRect(); top = false; }\n }\n return flattenH(rect$1 || node.getBoundingClientRect(), top)\n }\n\n // Not Firefox/Chrome, or not in a text node, so we have to use\n // actual element/character rectangles to get a solution (this part\n // is not very bidi-safe)\n //\n // Try the left side first, fall back to the right one if that\n // doesn't work.\n for (var dir = -1; dir < 2; dir += 2) {\n if (dir < 0 && offset) {\n var prev = (void 0), target = node.nodeType == 3 ? textRange(node, offset - 1, offset)\n : (prev = node.childNodes[offset - 1]).nodeType == 3 ? textRange(prev)\n : prev.nodeType == 1 && prev.nodeName != \"BR\" ? prev : null; // BR nodes tend to only return the rectangle before them\n if (target) {\n var rect$2 = singleRect(target, 1);\n if (rect$2.top < rect$2.bottom) { return flattenV(rect$2, false) }\n }\n } else if (dir > 0 && offset < nodeSize(node)) {\n var next = (void 0), target$1 = node.nodeType == 3 ? textRange(node, offset, offset + 1)\n : (next = node.childNodes[offset]).nodeType == 3 ? textRange(next)\n : next.nodeType == 1 ? next : null;\n if (target$1) {\n var rect$3 = singleRect(target$1, -1);\n if (rect$3.top < rect$3.bottom) { return flattenV(rect$3, true) }\n }\n }\n }\n // All else failed, just try to get a rectangle for the target node\n return flattenV(singleRect(node.nodeType == 3 ? textRange(node) : node, 0), false)\n}\n\nfunction flattenV(rect, left) {\n if (rect.width == 0) { return rect }\n var x = left ? rect.left : rect.right;\n return {top: rect.top, bottom: rect.bottom, left: x, right: x}\n}\n\nfunction flattenH(rect, top) {\n if (rect.height == 0) { return rect }\n var y = top ? rect.top : rect.bottom;\n return {top: y, bottom: y, left: rect.left, right: rect.right}\n}\n\nfunction withFlushedState(view, state, f) {\n var viewState = view.state, active = view.root.activeElement;\n if (viewState != state) { view.updateState(state); }\n if (active != view.dom) { view.focus(); }\n try {\n return f()\n } finally {\n if (viewState != state) { view.updateState(viewState); }\n if (active != view.dom && active) { active.focus(); }\n }\n}\n\n// : (EditorView, number, number)\n// Whether vertical position motion in a given direction\n// from a position would leave a text block.\nfunction endOfTextblockVertical(view, state, dir) {\n var sel = state.selection;\n var $pos = dir == \"up\" ? sel.$anchor.min(sel.$head) : sel.$anchor.max(sel.$head);\n return withFlushedState(view, state, function () {\n var ref = view.docView.domFromPos($pos.pos);\n var dom = ref.node;\n for (;;) {\n var nearest = view.docView.nearestDesc(dom, true);\n if (!nearest) { break }\n if (nearest.node.isBlock) { dom = nearest.dom; break }\n dom = nearest.dom.parentNode;\n }\n var coords = coordsAtPos(view, $pos.pos);\n for (var child = dom.firstChild; child; child = child.nextSibling) {\n var boxes = (void 0);\n if (child.nodeType == 1) { boxes = child.getClientRects(); }\n else if (child.nodeType == 3) { boxes = textRange(child, 0, child.nodeValue.length).getClientRects(); }\n else { continue }\n for (var i = 0; i < boxes.length; i++) {\n var box = boxes[i];\n if (box.bottom > box.top && (dir == \"up\" ? box.bottom < coords.top + 1 : box.top > coords.bottom - 1))\n { return false }\n }\n }\n return true\n })\n}\n\nvar maybeRTL = /[\\u0590-\\u08ac]/;\n\nfunction endOfTextblockHorizontal(view, state, dir) {\n var ref = state.selection;\n var $head = ref.$head;\n if (!$head.parent.isTextblock) { return false }\n var offset = $head.parentOffset, atStart = !offset, atEnd = offset == $head.parent.content.size;\n var sel = getSelection();\n // If the textblock is all LTR, or the browser doesn't support\n // Selection.modify (Edge), fall back to a primitive approach\n if (!maybeRTL.test($head.parent.textContent) || !sel.modify)\n { return dir == \"left\" || dir == \"backward\" ? atStart : atEnd }\n\n return withFlushedState(view, state, function () {\n // This is a huge hack, but appears to be the best we can\n // currently do: use `Selection.modify` to move the selection by\n // one character, and see if that moves the cursor out of the\n // textblock (or doesn't move it at all, when at the start/end of\n // the document).\n var oldRange = sel.getRangeAt(0), oldNode = sel.focusNode, oldOff = sel.focusOffset;\n var oldBidiLevel = sel.caretBidiLevel; // Only for Firefox\n sel.modify(\"move\", dir, \"character\");\n var parentDOM = $head.depth ? view.docView.domAfterPos($head.before()) : view.dom;\n var result = !parentDOM.contains(sel.focusNode.nodeType == 1 ? sel.focusNode : sel.focusNode.parentNode) ||\n (oldNode == sel.focusNode && oldOff == sel.focusOffset);\n // Restore the previous selection\n sel.removeAllRanges();\n sel.addRange(oldRange);\n if (oldBidiLevel != null) { sel.caretBidiLevel = oldBidiLevel; }\n return result\n })\n}\n\nvar cachedState = null, cachedDir = null, cachedResult = false;\nfunction endOfTextblock(view, state, dir) {\n if (cachedState == state && cachedDir == dir) { return cachedResult }\n cachedState = state; cachedDir = dir;\n return cachedResult = dir == \"up\" || dir == \"down\"\n ? endOfTextblockVertical(view, state, dir)\n : endOfTextblockHorizontal(view, state, dir)\n}\n\n// NodeView:: interface\n//\n// By default, document nodes are rendered using the result of the\n// [`toDOM`](#model.NodeSpec.toDOM) method of their spec, and managed\n// entirely by the editor. For some use cases, such as embedded\n// node-specific editing interfaces, you want more control over\n// the behavior of a node's in-editor representation, and need to\n// [define](#view.EditorProps.nodeViews) a custom node view.\n//\n// Mark views only support `dom` and `contentDOM`, and don't support\n// any of the node view methods.\n//\n// Objects returned as node views must conform to this interface.\n//\n// dom:: ?dom.Node\n// The outer DOM node that represents the document node. When not\n// given, the default strategy is used to create a DOM node.\n//\n// contentDOM:: ?dom.Node\n// The DOM node that should hold the node's content. Only meaningful\n// if the node view also defines a `dom` property and if its node\n// type is not a leaf node type. When this is present, ProseMirror\n// will take care of rendering the node's children into it. When it\n// is not present, the node view itself is responsible for rendering\n// (or deciding not to render) its child nodes.\n//\n// update:: ?(node: Node, decorations: [Decoration]) → bool\n// When given, this will be called when the view is updating itself.\n// It will be given a node (possibly of a different type), and an\n// array of active decorations (which are automatically drawn, and\n// the node view may ignore if it isn't interested in them), and\n// should return true if it was able to update to that node, and\n// false otherwise. If the node view has a `contentDOM` property (or\n// no `dom` property), updating its child nodes will be handled by\n// ProseMirror.\n//\n// selectNode:: ?()\n// Can be used to override the way the node's selected status (as a\n// node selection) is displayed.\n//\n// deselectNode:: ?()\n// When defining a `selectNode` method, you should also provide a\n// `deselectNode` method to remove the effect again.\n//\n// setSelection:: ?(anchor: number, head: number, root: dom.Document)\n// This will be called to handle setting the selection inside the\n// node. The `anchor` and `head` positions are relative to the start\n// of the node. By default, a DOM selection will be created between\n// the DOM positions corresponding to those positions, but if you\n// override it you can do something else.\n//\n// stopEvent:: ?(event: dom.Event) → bool\n// Can be used to prevent the editor view from trying to handle some\n// or all DOM events that bubble up from the node view. Events for\n// which this returns true are not handled by the editor.\n//\n// ignoreMutation:: ?(dom.MutationRecord) → bool\n// Called when a DOM\n// [mutation](https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver)\n// or a selection change happens within the view. When the change is\n// a selection change, the record will have a `type` property of\n// `\"selection\"` (which doesn't occur for native mutation records).\n// Return false if the editor should re-read the selection or\n// re-parse the range around the mutation, true if it can safely be\n// ignored.\n//\n// destroy:: ?()\n// Called when the node view is removed from the editor or the whole\n// editor is destroyed.\n\n// View descriptions are data structures that describe the DOM that is\n// used to represent the editor's content. They are used for:\n//\n// - Incremental redrawing when the document changes\n//\n// - Figuring out what part of the document a given DOM position\n// corresponds to\n//\n// - Wiring in custom implementations of the editing interface for a\n// given node\n//\n// They form a doubly-linked mutable tree, starting at `view.docView`.\n\nvar NOT_DIRTY = 0, CHILD_DIRTY = 1, CONTENT_DIRTY = 2, NODE_DIRTY = 3;\n\n// Superclass for the various kinds of descriptions. Defines their\n// basic structure and shared methods.\nvar ViewDesc = function ViewDesc(parent, children, dom, contentDOM) {\n this.parent = parent;\n this.children = children;\n this.dom = dom;\n // An expando property on the DOM node provides a link back to its\n // description.\n dom.pmViewDesc = this;\n // This is the node that holds the child views. It may be null for\n // descs that don't have children.\n this.contentDOM = contentDOM;\n this.dirty = NOT_DIRTY;\n};\n\nvar prototypeAccessors = { beforePosition: { configurable: true },size: { configurable: true },border: { configurable: true },posBefore: { configurable: true },posAtStart: { configurable: true },posAfter: { configurable: true },posAtEnd: { configurable: true },contentLost: { configurable: true } };\n\n// Used to check whether a given description corresponds to a\n// widget/mark/node.\nViewDesc.prototype.matchesWidget = function matchesWidget () { return false };\nViewDesc.prototype.matchesMark = function matchesMark () { return false };\nViewDesc.prototype.matchesNode = function matchesNode () { return false };\nViewDesc.prototype.matchesHack = function matchesHack () { return false };\n\nprototypeAccessors.beforePosition.get = function () { return false };\n\n// : () → ?ParseRule\n// When parsing in-editor content (in domchange.js), we allow\n// descriptions to determine the parse rules that should be used to\n// parse them.\nViewDesc.prototype.parseRule = function parseRule () { return null };\n\n// : (dom.Event) → bool\n// Used by the editor's event handler to ignore events that come\n// from certain descs.\nViewDesc.prototype.stopEvent = function stopEvent () { return false };\n\n// The size of the content represented by this desc.\nprototypeAccessors.size.get = function () {\n var size = 0;\n for (var i = 0; i < this.children.length; i++) { size += this.children[i].size; }\n return size\n};\n\n// For block nodes, this represents the space taken up by their\n// start/end tokens.\nprototypeAccessors.border.get = function () { return 0 };\n\nViewDesc.prototype.destroy = function destroy () {\n this.parent = null;\n if (this.dom.pmViewDesc == this) { this.dom.pmViewDesc = null; }\n for (var i = 0; i < this.children.length; i++)\n { this.children[i].destroy(); }\n};\n\nViewDesc.prototype.posBeforeChild = function posBeforeChild (child) {\n for (var i = 0, pos = this.posAtStart; i < this.children.length; i++) {\n var cur = this.children[i];\n if (cur == child) { return pos }\n pos += cur.size;\n }\n};\n\nprototypeAccessors.posBefore.get = function () {\n return this.parent.posBeforeChild(this)\n};\n\nprototypeAccessors.posAtStart.get = function () {\n return this.parent ? this.parent.posBeforeChild(this) + this.border : 0\n};\n\nprototypeAccessors.posAfter.get = function () {\n return this.posBefore + this.size\n};\n\nprototypeAccessors.posAtEnd.get = function () {\n return this.posAtStart + this.size - 2 * this.border\n};\n\n// : (dom.Node, number, ?number) → number\nViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset, bias) {\n // If the DOM position is in the content, use the child desc after\n // it to figure out a position.\n if (this.contentDOM && this.contentDOM.contains(dom.nodeType == 1 ? dom : dom.parentNode)) {\n if (bias < 0) {\n var domBefore, desc;\n if (dom == this.contentDOM) {\n domBefore = dom.childNodes[offset - 1];\n } else {\n while (dom.parentNode != this.contentDOM) { dom = dom.parentNode; }\n domBefore = dom.previousSibling;\n }\n while (domBefore && !((desc = domBefore.pmViewDesc) && desc.parent == this)) { domBefore = domBefore.previousSibling; }\n return domBefore ? this.posBeforeChild(desc) + desc.size : this.posAtStart\n } else {\n var domAfter, desc$1;\n if (dom == this.contentDOM) {\n domAfter = dom.childNodes[offset];\n } else {\n while (dom.parentNode != this.contentDOM) { dom = dom.parentNode; }\n domAfter = dom.nextSibling;\n }\n while (domAfter && !((desc$1 = domAfter.pmViewDesc) && desc$1.parent == this)) { domAfter = domAfter.nextSibling; }\n return domAfter ? this.posBeforeChild(desc$1) : this.posAtEnd\n }\n }\n // Otherwise, use various heuristics, falling back on the bias\n // parameter, to determine whether to return the position at the\n // start or at the end of this view desc.\n var atEnd;\n if (this.contentDOM && this.contentDOM != this.dom && this.dom.contains(this.contentDOM)) {\n atEnd = dom.compareDocumentPosition(this.contentDOM) & 2;\n } else if (this.dom.firstChild) {\n if (offset == 0) { for (var search = dom;; search = search.parentNode) {\n if (search == this.dom) { atEnd = false; break }\n if (search.parentNode.firstChild != search) { break }\n } }\n if (atEnd == null && offset == dom.childNodes.length) { for (var search$1 = dom;; search$1 = search$1.parentNode) {\n if (search$1 == this.dom) { atEnd = true; break }\n if (search$1.parentNode.lastChild != search$1) { break }\n } }\n }\n return (atEnd == null ? bias > 0 : atEnd) ? this.posAtEnd : this.posAtStart\n};\n\n// Scan up the dom finding the first desc that is a descendant of\n// this one.\nViewDesc.prototype.nearestDesc = function nearestDesc (dom, onlyNodes) {\n for (var first = true, cur = dom; cur; cur = cur.parentNode) {\n var desc = this.getDesc(cur);\n if (desc && (!onlyNodes || desc.node)) {\n // If dom is outside of this desc's nodeDOM, don't count it.\n if (first && desc.nodeDOM &&\n !(desc.nodeDOM.nodeType == 1 ? desc.nodeDOM.contains(dom.nodeType == 1 ? dom : dom.parentNode) : desc.nodeDOM == dom))\n { first = false; }\n else\n { return desc }\n }\n }\n};\n\nViewDesc.prototype.getDesc = function getDesc (dom) {\n var desc = dom.pmViewDesc;\n for (var cur = desc; cur; cur = cur.parent) { if (cur == this) { return desc } }\n};\n\nViewDesc.prototype.posFromDOM = function posFromDOM (dom, offset, bias) {\n for (var scan = dom; scan; scan = scan.parentNode) {\n var desc = this.getDesc(scan);\n if (desc) { return desc.localPosFromDOM(dom, offset, bias) }\n }\n return -1\n};\n\n// : (number) → ?NodeViewDesc\n// Find the desc for the node after the given pos, if any. (When a\n// parent node overrode rendering, there might not be one.)\nViewDesc.prototype.descAt = function descAt (pos) {\n for (var i = 0, offset = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (offset == pos && end != offset) {\n while (!child.border && child.children.length) { child = child.children[0]; }\n return child\n }\n if (pos < end) { return child.descAt(pos - offset - child.border) }\n offset = end;\n }\n};\n\n// : (number) → {node: dom.Node, offset: number}\nViewDesc.prototype.domFromPos = function domFromPos (pos) {\n if (!this.contentDOM) { return {node: this.dom, offset: 0} }\n for (var offset = 0, i = 0;; i++) {\n if (offset == pos) {\n while (i < this.children.length && (this.children[i].beforePosition || this.children[i].dom.parentNode != this.contentDOM)) { i++; }\n return {node: this.contentDOM,\n offset: i == this.children.length ? this.contentDOM.childNodes.length : domIndex(this.children[i].dom)}\n }\n if (i == this.children.length) { throw new Error(\"Invalid position \" + pos) }\n var child = this.children[i], end = offset + child.size;\n if (pos < end) { return child.domFromPos(pos - offset - child.border) }\n offset = end;\n }\n};\n\n// Used to find a DOM range in a single parent for a given changed\n// range.\nViewDesc.prototype.parseRange = function parseRange (from, to, base) {\n if ( base === void 0 ) base = 0;\n\n if (this.children.length == 0)\n { return {node: this.contentDOM, from: from, to: to, fromOffset: 0, toOffset: this.contentDOM.childNodes.length} }\n\n var fromOffset = -1, toOffset = -1;\n for (var offset = base, i = 0;; i++) {\n var child = this.children[i], end = offset + child.size;\n if (fromOffset == -1 && from <= end) {\n var childBase = offset + child.border;\n // FIXME maybe descend mark views to parse a narrower range?\n if (from >= childBase && to <= end - child.border && child.node &&\n child.contentDOM && this.contentDOM.contains(child.contentDOM))\n { return child.parseRange(from, to, childBase) }\n\n from = offset;\n for (var j = i; j > 0; j--) {\n var prev = this.children[j - 1];\n if (prev.size && prev.dom.parentNode == this.contentDOM && !prev.emptyChildAt(1)) {\n fromOffset = domIndex(prev.dom) + 1;\n break\n }\n from -= prev.size;\n }\n if (fromOffset == -1) { fromOffset = 0; }\n }\n if (fromOffset > -1 && (end > to || i == this.children.length - 1)) {\n to = end;\n for (var j$1 = i + 1; j$1 < this.children.length; j$1++) {\n var next = this.children[j$1];\n if (next.size && next.dom.parentNode == this.contentDOM && !next.emptyChildAt(-1)) {\n toOffset = domIndex(next.dom);\n break\n }\n to += next.size;\n }\n if (toOffset == -1) { toOffset = this.contentDOM.childNodes.length; }\n break\n }\n offset = end;\n }\n return {node: this.contentDOM, from: from, to: to, fromOffset: fromOffset, toOffset: toOffset}\n};\n\nViewDesc.prototype.emptyChildAt = function emptyChildAt (side) {\n if (this.border || !this.contentDOM || !this.children.length) { return false }\n var child = this.children[side < 0 ? 0 : this.children.length - 1];\n return child.size == 0 || child.emptyChildAt(side)\n};\n\n// : (number) → dom.Node\nViewDesc.prototype.domAfterPos = function domAfterPos (pos) {\n var ref = this.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n if (node.nodeType != 1 || offset == node.childNodes.length)\n { throw new RangeError(\"No node after pos \" + pos) }\n return node.childNodes[offset]\n};\n\n// : (number, number, dom.Document)\n// View descs are responsible for setting any selection that falls\n// entirely inside of them, so that custom implementations can do\n// custom things with the selection. Note that this falls apart when\n// a selection starts in such a node and ends in another, in which\n// case we just use whatever domFromPos produces as a best effort.\nViewDesc.prototype.setSelection = function setSelection (anchor, head, root, force) {\n // If the selection falls entirely in a child, give it to that child\n var from = Math.min(anchor, head), to = Math.max(anchor, head);\n for (var i = 0, offset = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (from > offset && to < end)\n { return child.setSelection(anchor - offset - child.border, head - offset - child.border, root, force) }\n offset = end;\n }\n\n var anchorDOM = this.domFromPos(anchor), headDOM = this.domFromPos(head);\n var domSel = root.getSelection();\n\n if (!force &&\n isEquivalentPosition(anchorDOM.node, anchorDOM.offset, domSel.anchorNode, domSel.anchorOffset) &&\n isEquivalentPosition(headDOM.node, headDOM.offset, domSel.focusNode, domSel.focusOffset))\n { return }\n\n // On Firefox, using Selection.collapse to put the cursor after a\n // BR node for some reason doesn't always work (#1073)\n var geckoKludge = false;\n if (result.gecko && anchor == head) {\n var prev = anchorDOM.node.childNodes[anchorDOM.offset - 1];\n if (prev && prev.nodeName == \"BR\") { geckoKludge = true; }\n }\n // Selection.extend can be used to create an 'inverted' selection\n // (one where the focus is before the anchor), but not all\n // browsers support it yet.\n var domSelExtended = false;\n if ((domSel.extend || anchor == head) && !geckoKludge) {\n domSel.collapse(anchorDOM.node, anchorDOM.offset);\n try {\n if (anchor != head) { domSel.extend(headDOM.node, headDOM.offset); }\n domSelExtended = true;\n } catch (err) {\n // In some cases with Chrome the selection is empty after calling\n // collapse, even when it should be valid. This appears to be a bug, but\n // it is difficult to isolate. If this happens fallback to the old path\n // without using extend.\n if (!(err instanceof DOMException)) { throw err }\n }\n }\n if (!domSelExtended) {\n if (anchor > head) { var tmp = anchorDOM; anchorDOM = headDOM; headDOM = tmp; }\n var range = document.createRange();\n range.setEnd(headDOM.node, headDOM.offset);\n range.setStart(anchorDOM.node, anchorDOM.offset);\n domSel.removeAllRanges();\n domSel.addRange(range);\n }\n};\n\n// : (dom.MutationRecord) → bool\nViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return !this.contentDOM && mutation.type != \"selection\"\n};\n\nprototypeAccessors.contentLost.get = function () {\n return this.contentDOM && this.contentDOM != this.dom && !this.dom.contains(this.contentDOM)\n};\n\n// Remove a subtree of the element tree that has been touched\n// by a DOM change, so that the next update will redraw it.\nViewDesc.prototype.markDirty = function markDirty (from, to) {\n for (var offset = 0, i = 0; i < this.children.length; i++) {\n var child = this.children[i], end = offset + child.size;\n if (offset == end ? from <= end && to >= offset : from < end && to > offset) {\n var startInside = offset + child.border, endInside = end - child.border;\n if (from >= startInside && to <= endInside) {\n this.dirty = from == offset || to == end ? CONTENT_DIRTY : CHILD_DIRTY;\n if (from == startInside && to == endInside &&\n (child.contentLost || child.dom.parentNode != this.contentDOM)) { child.dirty = NODE_DIRTY; }\n else { child.markDirty(from - startInside, to - startInside); }\n return\n } else {\n child.dirty = NODE_DIRTY;\n }\n }\n offset = end;\n }\n this.dirty = CONTENT_DIRTY;\n};\n\nViewDesc.prototype.markParentsDirty = function markParentsDirty () {\n var level = 1;\n for (var node = this.parent; node; node = node.parent, level++) {\n var dirty = level == 1 ? CONTENT_DIRTY : CHILD_DIRTY;\n if (node.dirty < dirty) { node.dirty = dirty; }\n }\n};\n\nObject.defineProperties( ViewDesc.prototype, prototypeAccessors );\n\n// Reused array to avoid allocating fresh arrays for things that will\n// stay empty anyway.\nvar nothing = [];\n\n// A widget desc represents a widget decoration, which is a DOM node\n// drawn between the document nodes.\nvar WidgetViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function WidgetViewDesc(parent, widget, view, pos) {\n var self, dom = widget.type.toDOM;\n if (typeof dom == \"function\") { dom = dom(view, function () {\n if (!self) { return pos }\n if (self.parent) { return self.parent.posBeforeChild(self) }\n }); }\n if (!widget.type.spec.raw) {\n if (dom.nodeType != 1) {\n var wrap = document.createElement(\"span\");\n wrap.appendChild(dom);\n dom = wrap;\n }\n dom.contentEditable = false;\n dom.classList.add(\"ProseMirror-widget\");\n }\n ViewDesc.call(this, parent, nothing, dom, null);\n this.widget = widget;\n self = this;\n }\n\n if ( ViewDesc ) WidgetViewDesc.__proto__ = ViewDesc;\n WidgetViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n WidgetViewDesc.prototype.constructor = WidgetViewDesc;\n\n var prototypeAccessors$1 = { beforePosition: { configurable: true } };\n\n prototypeAccessors$1.beforePosition.get = function () {\n return this.widget.type.side < 0\n };\n\n WidgetViewDesc.prototype.matchesWidget = function matchesWidget (widget) {\n return this.dirty == NOT_DIRTY && widget.type.eq(this.widget.type)\n };\n\n WidgetViewDesc.prototype.parseRule = function parseRule () { return {ignore: true} };\n\n WidgetViewDesc.prototype.stopEvent = function stopEvent (event) {\n var stop = this.widget.spec.stopEvent;\n return stop ? stop(event) : false\n };\n\n WidgetViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return mutation.type != \"selection\" || this.widget.spec.ignoreSelection\n };\n\n Object.defineProperties( WidgetViewDesc.prototype, prototypeAccessors$1 );\n\n return WidgetViewDesc;\n}(ViewDesc));\n\nvar CompositionViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function CompositionViewDesc(parent, dom, textDOM, text) {\n ViewDesc.call(this, parent, nothing, dom, null);\n this.textDOM = textDOM;\n this.text = text;\n }\n\n if ( ViewDesc ) CompositionViewDesc.__proto__ = ViewDesc;\n CompositionViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n CompositionViewDesc.prototype.constructor = CompositionViewDesc;\n\n var prototypeAccessors$2 = { size: { configurable: true } };\n\n prototypeAccessors$2.size.get = function () { return this.text.length };\n\n CompositionViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset) {\n if (dom != this.textDOM) { return this.posAtStart + (offset ? this.size : 0) }\n return this.posAtStart + offset\n };\n\n CompositionViewDesc.prototype.domFromPos = function domFromPos (pos) {\n return {node: this.textDOM, offset: pos}\n };\n\n CompositionViewDesc.prototype.ignoreMutation = function ignoreMutation (mut) {\n return mut.type === 'characterData' && mut.target.nodeValue == mut.oldValue\n };\n\n Object.defineProperties( CompositionViewDesc.prototype, prototypeAccessors$2 );\n\n return CompositionViewDesc;\n}(ViewDesc));\n\n// A mark desc represents a mark. May have multiple children,\n// depending on how the mark is split. Note that marks are drawn using\n// a fixed nesting order, for simplicity and predictability, so in\n// some cases they will be split more often than would appear\n// necessary.\nvar MarkViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function MarkViewDesc(parent, mark, dom, contentDOM) {\n ViewDesc.call(this, parent, [], dom, contentDOM);\n this.mark = mark;\n }\n\n if ( ViewDesc ) MarkViewDesc.__proto__ = ViewDesc;\n MarkViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n MarkViewDesc.prototype.constructor = MarkViewDesc;\n\n MarkViewDesc.create = function create (parent, mark, inline, view) {\n var custom = view.nodeViews[mark.type.name];\n var spec = custom && custom(mark, view, inline);\n if (!spec || !spec.dom)\n { spec = DOMSerializer.renderSpec(document, mark.type.spec.toDOM(mark, inline)); }\n return new MarkViewDesc(parent, mark, spec.dom, spec.contentDOM || spec.dom)\n };\n\n MarkViewDesc.prototype.parseRule = function parseRule () { return {mark: this.mark.type.name, attrs: this.mark.attrs, contentElement: this.contentDOM} };\n\n MarkViewDesc.prototype.matchesMark = function matchesMark (mark) { return this.dirty != NODE_DIRTY && this.mark.eq(mark) };\n\n MarkViewDesc.prototype.markDirty = function markDirty (from, to) {\n ViewDesc.prototype.markDirty.call(this, from, to);\n // Move dirty info to nearest node view\n if (this.dirty != NOT_DIRTY) {\n var parent = this.parent;\n while (!parent.node) { parent = parent.parent; }\n if (parent.dirty < this.dirty) { parent.dirty = this.dirty; }\n this.dirty = NOT_DIRTY;\n }\n };\n\n MarkViewDesc.prototype.slice = function slice (from, to, view) {\n var copy = MarkViewDesc.create(this.parent, this.mark, true, view);\n var nodes = this.children, size = this.size;\n if (to < size) { nodes = replaceNodes(nodes, to, size, view); }\n if (from > 0) { nodes = replaceNodes(nodes, 0, from, view); }\n for (var i = 0; i < nodes.length; i++) { nodes[i].parent = copy; }\n copy.children = nodes;\n return copy\n };\n\n return MarkViewDesc;\n}(ViewDesc));\n\n// Node view descs are the main, most common type of view desc, and\n// correspond to an actual node in the document. Unlike mark descs,\n// they populate their child array themselves.\nvar NodeViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function NodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos) {\n ViewDesc.call(this, parent, node.isLeaf ? nothing : [], dom, contentDOM);\n this.nodeDOM = nodeDOM;\n this.node = node;\n this.outerDeco = outerDeco;\n this.innerDeco = innerDeco;\n if (contentDOM) { this.updateChildren(view, pos); }\n }\n\n if ( ViewDesc ) NodeViewDesc.__proto__ = ViewDesc;\n NodeViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n NodeViewDesc.prototype.constructor = NodeViewDesc;\n\n var prototypeAccessors$3 = { size: { configurable: true },border: { configurable: true } };\n\n // By default, a node is rendered using the `toDOM` method from the\n // node type spec. But client code can use the `nodeViews` spec to\n // supply a custom node view, which can influence various aspects of\n // the way the node works.\n //\n // (Using subclassing for this was intentionally decided against,\n // since it'd require exposing a whole slew of finnicky\n // implementation details to the user code that they probably will\n // never need.)\n NodeViewDesc.create = function create (parent, node, outerDeco, innerDeco, view, pos) {\n var assign;\n\n var custom = view.nodeViews[node.type.name], descObj;\n var spec = custom && custom(node, view, function () {\n // (This is a function that allows the custom view to find its\n // own position)\n if (!descObj) { return pos }\n if (descObj.parent) { return descObj.parent.posBeforeChild(descObj) }\n }, outerDeco);\n\n var dom = spec && spec.dom, contentDOM = spec && spec.contentDOM;\n if (node.isText) {\n if (!dom) { dom = document.createTextNode(node.text); }\n else if (dom.nodeType != 3) { throw new RangeError(\"Text must be rendered as a DOM text node\") }\n } else if (!dom) {\n((assign = DOMSerializer.renderSpec(document, node.type.spec.toDOM(node)), dom = assign.dom, contentDOM = assign.contentDOM));\n }\n if (!contentDOM && !node.isText && dom.nodeName != \"BR\") { // Chrome gets confused by <br contenteditable=false>\n if (!dom.hasAttribute(\"contenteditable\")) { dom.contentEditable = false; }\n if (node.type.spec.draggable) { dom.draggable = true; }\n }\n\n var nodeDOM = dom;\n dom = applyOuterDeco(dom, outerDeco, node);\n\n if (spec)\n { return descObj = new CustomNodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM,\n spec, view, pos + 1) }\n else if (node.isText)\n { return new TextViewDesc(parent, node, outerDeco, innerDeco, dom, nodeDOM, view) }\n else\n { return new NodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos + 1) }\n };\n\n NodeViewDesc.prototype.parseRule = function parseRule () {\n var this$1 = this;\n\n // Experimental kludge to allow opt-in re-parsing of nodes\n if (this.node.type.spec.reparseInView) { return null }\n // FIXME the assumption that this can always return the current\n // attrs means that if the user somehow manages to change the\n // attrs in the dom, that won't be picked up. Not entirely sure\n // whether this is a problem\n var rule = {node: this.node.type.name, attrs: this.node.attrs};\n if (this.node.type.spec.code) { rule.preserveWhitespace = \"full\"; }\n if (this.contentDOM && !this.contentLost) { rule.contentElement = this.contentDOM; }\n else { rule.getContent = function () { return this$1.contentDOM ? Fragment.empty : this$1.node.content; }; }\n return rule\n };\n\n NodeViewDesc.prototype.matchesNode = function matchesNode (node, outerDeco, innerDeco) {\n return this.dirty == NOT_DIRTY && node.eq(this.node) &&\n sameOuterDeco(outerDeco, this.outerDeco) && innerDeco.eq(this.innerDeco)\n };\n\n prototypeAccessors$3.size.get = function () { return this.node.nodeSize };\n\n prototypeAccessors$3.border.get = function () { return this.node.isLeaf ? 0 : 1 };\n\n // Syncs `this.children` to match `this.node.content` and the local\n // decorations, possibly introducing nesting for marks. Then, in a\n // separate step, syncs the DOM inside `this.contentDOM` to\n // `this.children`.\n NodeViewDesc.prototype.updateChildren = function updateChildren (view, pos) {\n var this$1 = this;\n\n var inline = this.node.inlineContent, off = pos;\n var composition = inline && view.composing && this.localCompositionNode(view, pos);\n var updater = new ViewTreeUpdater(this, composition && composition.node);\n iterDeco(this.node, this.innerDeco, function (widget, i, insideNode) {\n if (widget.spec.marks)\n { updater.syncToMarks(widget.spec.marks, inline, view); }\n else if (widget.type.side >= 0 && !insideNode)\n { updater.syncToMarks(i == this$1.node.childCount ? Mark.none : this$1.node.child(i).marks, inline, view); }\n // If the next node is a desc matching this widget, reuse it,\n // otherwise insert the widget as a new view desc.\n updater.placeWidget(widget, view, off);\n }, function (child, outerDeco, innerDeco, i) {\n // Make sure the wrapping mark descs match the node's marks.\n updater.syncToMarks(child.marks, inline, view);\n // Either find an existing desc that exactly matches this node,\n // and drop the descs before it.\n updater.findNodeMatch(child, outerDeco, innerDeco, i) ||\n // Or try updating the next desc to reflect this node.\n updater.updateNextNode(child, outerDeco, innerDeco, view, i) ||\n // Or just add it as a new desc.\n updater.addNode(child, outerDeco, innerDeco, view, off);\n off += child.nodeSize;\n });\n // Drop all remaining descs after the current position.\n updater.syncToMarks(nothing, inline, view);\n if (this.node.isTextblock) { updater.addTextblockHacks(); }\n updater.destroyRest();\n\n // Sync the DOM if anything changed\n if (updater.changed || this.dirty == CONTENT_DIRTY) {\n // May have to protect focused DOM from being changed if a composition is active\n if (composition) { this.protectLocalComposition(view, composition); }\n renderDescs(this.contentDOM, this.children, view);\n if (result.ios) { iosHacks(this.dom); }\n }\n };\n\n NodeViewDesc.prototype.localCompositionNode = function localCompositionNode (view, pos) {\n // Only do something if both the selection and a focused text node\n // are inside of this node, and the node isn't already part of a\n // view that's a child of this view\n var ref = view.state.selection;\n var from = ref.from;\n var to = ref.to;\n if (!(view.state.selection instanceof TextSelection) || from < pos || to > pos + this.node.content.size) { return }\n var sel = view.root.getSelection();\n var textNode = nearbyTextNode(sel.focusNode, sel.focusOffset);\n if (!textNode || !this.dom.contains(textNode.parentNode)) { return }\n\n // Find the text in the focused node in the node, stop if it's not\n // there (may have been modified through other means, in which\n // case it should overwritten)\n var text = textNode.nodeValue;\n var textPos = findTextInFragment(this.node.content, text, from - pos, to - pos);\n\n return textPos < 0 ? null : {node: textNode, pos: textPos, text: text}\n };\n\n NodeViewDesc.prototype.protectLocalComposition = function protectLocalComposition (view, ref) {\n var node = ref.node;\n var pos = ref.pos;\n var text = ref.text;\n\n // The node is already part of a local view desc, leave it there\n if (this.getDesc(node)) { return }\n\n // Create a composition view for the orphaned nodes\n var topNode = node;\n for (;; topNode = topNode.parentNode) {\n if (topNode.parentNode == this.contentDOM) { break }\n while (topNode.previousSibling) { topNode.parentNode.removeChild(topNode.previousSibling); }\n while (topNode.nextSibling) { topNode.parentNode.removeChild(topNode.nextSibling); }\n if (topNode.pmViewDesc) { topNode.pmViewDesc = null; }\n }\n var desc = new CompositionViewDesc(this, topNode, node, text);\n view.compositionNodes.push(desc);\n\n // Patch up this.children to contain the composition view\n this.children = replaceNodes(this.children, pos, pos + text.length, view, desc);\n };\n\n // : (Node, [Decoration], DecorationSet, EditorView) → bool\n // If this desc be updated to match the given node decoration,\n // do so and return true.\n NodeViewDesc.prototype.update = function update (node, outerDeco, innerDeco, view) {\n if (this.dirty == NODE_DIRTY ||\n !node.sameMarkup(this.node)) { return false }\n this.updateInner(node, outerDeco, innerDeco, view);\n return true\n };\n\n NodeViewDesc.prototype.updateInner = function updateInner (node, outerDeco, innerDeco, view) {\n this.updateOuterDeco(outerDeco);\n this.node = node;\n this.innerDeco = innerDeco;\n if (this.contentDOM) { this.updateChildren(view, this.posAtStart); }\n this.dirty = NOT_DIRTY;\n };\n\n NodeViewDesc.prototype.updateOuterDeco = function updateOuterDeco (outerDeco) {\n if (sameOuterDeco(outerDeco, this.outerDeco)) { return }\n var needsWrap = this.nodeDOM.nodeType != 1;\n var oldDOM = this.dom;\n this.dom = patchOuterDeco(this.dom, this.nodeDOM,\n computeOuterDeco(this.outerDeco, this.node, needsWrap),\n computeOuterDeco(outerDeco, this.node, needsWrap));\n if (this.dom != oldDOM) {\n oldDOM.pmViewDesc = null;\n this.dom.pmViewDesc = this;\n }\n this.outerDeco = outerDeco;\n };\n\n // Mark this node as being the selected node.\n NodeViewDesc.prototype.selectNode = function selectNode () {\n this.nodeDOM.classList.add(\"ProseMirror-selectednode\");\n if (this.contentDOM || !this.node.type.spec.draggable) { this.dom.draggable = true; }\n };\n\n // Remove selected node marking from this node.\n NodeViewDesc.prototype.deselectNode = function deselectNode () {\n this.nodeDOM.classList.remove(\"ProseMirror-selectednode\");\n if (this.contentDOM || !this.node.type.spec.draggable) { this.dom.removeAttribute(\"draggable\"); }\n };\n\n Object.defineProperties( NodeViewDesc.prototype, prototypeAccessors$3 );\n\n return NodeViewDesc;\n}(ViewDesc));\n\n// Create a view desc for the top-level document node, to be exported\n// and used by the view class.\nfunction docViewDesc(doc, outerDeco, innerDeco, dom, view) {\n applyOuterDeco(dom, outerDeco, doc);\n return new NodeViewDesc(null, doc, outerDeco, innerDeco, dom, dom, dom, view, 0)\n}\n\nvar TextViewDesc = /*@__PURE__*/(function (NodeViewDesc) {\n function TextViewDesc(parent, node, outerDeco, innerDeco, dom, nodeDOM, view) {\n NodeViewDesc.call(this, parent, node, outerDeco, innerDeco, dom, null, nodeDOM, view);\n }\n\n if ( NodeViewDesc ) TextViewDesc.__proto__ = NodeViewDesc;\n TextViewDesc.prototype = Object.create( NodeViewDesc && NodeViewDesc.prototype );\n TextViewDesc.prototype.constructor = TextViewDesc;\n\n TextViewDesc.prototype.parseRule = function parseRule () {\n var skip = this.nodeDOM.parentNode;\n while (skip && skip != this.dom && !skip.pmIsDeco) { skip = skip.parentNode; }\n return {skip: skip || true}\n };\n\n TextViewDesc.prototype.update = function update (node, outerDeco, _, view) {\n if (this.dirty == NODE_DIRTY || (this.dirty != NOT_DIRTY && !this.inParent()) ||\n !node.sameMarkup(this.node)) { return false }\n this.updateOuterDeco(outerDeco);\n if ((this.dirty != NOT_DIRTY || node.text != this.node.text) && node.text != this.nodeDOM.nodeValue) {\n this.nodeDOM.nodeValue = node.text;\n if (view.trackWrites == this.nodeDOM) { view.trackWrites = null; }\n }\n this.node = node;\n this.dirty = NOT_DIRTY;\n return true\n };\n\n TextViewDesc.prototype.inParent = function inParent () {\n var parentDOM = this.parent.contentDOM;\n for (var n = this.nodeDOM; n; n = n.parentNode) { if (n == parentDOM) { return true } }\n return false\n };\n\n TextViewDesc.prototype.domFromPos = function domFromPos (pos) {\n return {node: this.nodeDOM, offset: pos}\n };\n\n TextViewDesc.prototype.localPosFromDOM = function localPosFromDOM (dom, offset, bias) {\n if (dom == this.nodeDOM) { return this.posAtStart + Math.min(offset, this.node.text.length) }\n return NodeViewDesc.prototype.localPosFromDOM.call(this, dom, offset, bias)\n };\n\n TextViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return mutation.type != \"characterData\" && mutation.type != \"selection\"\n };\n\n TextViewDesc.prototype.slice = function slice (from, to, view) {\n var node = this.node.cut(from, to), dom = document.createTextNode(node.text);\n return new TextViewDesc(this.parent, node, this.outerDeco, this.innerDeco, dom, dom, view)\n };\n\n return TextViewDesc;\n}(NodeViewDesc));\n\n// A dummy desc used to tag trailing BR or span nodes created to work\n// around contentEditable terribleness.\nvar BRHackViewDesc = /*@__PURE__*/(function (ViewDesc) {\n function BRHackViewDesc () {\n ViewDesc.apply(this, arguments);\n }\n\n if ( ViewDesc ) BRHackViewDesc.__proto__ = ViewDesc;\n BRHackViewDesc.prototype = Object.create( ViewDesc && ViewDesc.prototype );\n BRHackViewDesc.prototype.constructor = BRHackViewDesc;\n\n BRHackViewDesc.prototype.parseRule = function parseRule () { return {ignore: true} };\n BRHackViewDesc.prototype.matchesHack = function matchesHack () { return this.dirty == NOT_DIRTY };\n\n return BRHackViewDesc;\n}(ViewDesc));\n\n// A separate subclass is used for customized node views, so that the\n// extra checks only have to be made for nodes that are actually\n// customized.\nvar CustomNodeViewDesc = /*@__PURE__*/(function (NodeViewDesc) {\n function CustomNodeViewDesc(parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, spec, view, pos) {\n NodeViewDesc.call(this, parent, node, outerDeco, innerDeco, dom, contentDOM, nodeDOM, view, pos);\n this.spec = spec;\n }\n\n if ( NodeViewDesc ) CustomNodeViewDesc.__proto__ = NodeViewDesc;\n CustomNodeViewDesc.prototype = Object.create( NodeViewDesc && NodeViewDesc.prototype );\n CustomNodeViewDesc.prototype.constructor = CustomNodeViewDesc;\n\n // A custom `update` method gets to decide whether the update goes\n // through. If it does, and there's a `contentDOM` node, our logic\n // updates the children.\n CustomNodeViewDesc.prototype.update = function update (node, outerDeco, innerDeco, view) {\n if (this.dirty == NODE_DIRTY) { return false }\n if (this.spec.update) {\n var result = this.spec.update(node, outerDeco);\n if (result) { this.updateInner(node, outerDeco, innerDeco, view); }\n return result\n } else if (!this.contentDOM && !node.isLeaf) {\n return false\n } else {\n return NodeViewDesc.prototype.update.call(this, node, outerDeco, innerDeco, view)\n }\n };\n\n CustomNodeViewDesc.prototype.selectNode = function selectNode () {\n this.spec.selectNode ? this.spec.selectNode() : NodeViewDesc.prototype.selectNode.call(this);\n };\n\n CustomNodeViewDesc.prototype.deselectNode = function deselectNode () {\n this.spec.deselectNode ? this.spec.deselectNode() : NodeViewDesc.prototype.deselectNode.call(this);\n };\n\n CustomNodeViewDesc.prototype.setSelection = function setSelection (anchor, head, root, force) {\n this.spec.setSelection ? this.spec.setSelection(anchor, head, root)\n : NodeViewDesc.prototype.setSelection.call(this, anchor, head, root, force);\n };\n\n CustomNodeViewDesc.prototype.destroy = function destroy () {\n if (this.spec.destroy) { this.spec.destroy(); }\n NodeViewDesc.prototype.destroy.call(this);\n };\n\n CustomNodeViewDesc.prototype.stopEvent = function stopEvent (event) {\n return this.spec.stopEvent ? this.spec.stopEvent(event) : false\n };\n\n CustomNodeViewDesc.prototype.ignoreMutation = function ignoreMutation (mutation) {\n return this.spec.ignoreMutation ? this.spec.ignoreMutation(mutation) : NodeViewDesc.prototype.ignoreMutation.call(this, mutation)\n };\n\n return CustomNodeViewDesc;\n}(NodeViewDesc));\n\n// : (dom.Node, [ViewDesc])\n// Sync the content of the given DOM node with the nodes associated\n// with the given array of view descs, recursing into mark descs\n// because this should sync the subtree for a whole node at a time.\nfunction renderDescs(parentDOM, descs, view) {\n var dom = parentDOM.firstChild, written = false;\n for (var i = 0; i < descs.length; i++) {\n var desc = descs[i], childDOM = desc.dom;\n if (childDOM.parentNode == parentDOM) {\n while (childDOM != dom) { dom = rm(dom); written = true; }\n dom = dom.nextSibling;\n } else {\n written = true;\n parentDOM.insertBefore(childDOM, dom);\n }\n if (desc instanceof MarkViewDesc) {\n var pos = dom ? dom.previousSibling : parentDOM.lastChild;\n renderDescs(desc.contentDOM, desc.children, view);\n dom = pos ? pos.nextSibling : parentDOM.firstChild;\n }\n }\n while (dom) { dom = rm(dom); written = true; }\n if (written && view.trackWrites == parentDOM) { view.trackWrites = null; }\n}\n\nfunction OuterDecoLevel(nodeName) {\n if (nodeName) { this.nodeName = nodeName; }\n}\nOuterDecoLevel.prototype = Object.create(null);\n\nvar noDeco = [new OuterDecoLevel];\n\nfunction computeOuterDeco(outerDeco, node, needsWrap) {\n if (outerDeco.length == 0) { return noDeco }\n\n var top = needsWrap ? noDeco[0] : new OuterDecoLevel, result = [top];\n\n for (var i = 0; i < outerDeco.length; i++) {\n var attrs = outerDeco[i].type.attrs, cur = top;\n if (!attrs) { continue }\n if (attrs.nodeName)\n { result.push(cur = new OuterDecoLevel(attrs.nodeName)); }\n\n for (var name in attrs) {\n var val = attrs[name];\n if (val == null) { continue }\n if (needsWrap && result.length == 1)\n { result.push(cur = top = new OuterDecoLevel(node.isInline ? \"span\" : \"div\")); }\n if (name == \"class\") { cur.class = (cur.class ? cur.class + \" \" : \"\") + val; }\n else if (name == \"style\") { cur.style = (cur.style ? cur.style + \";\" : \"\") + val; }\n else if (name != \"nodeName\") { cur[name] = val; }\n }\n }\n\n return result\n}\n\nfunction patchOuterDeco(outerDOM, nodeDOM, prevComputed, curComputed) {\n // Shortcut for trivial case\n if (prevComputed == noDeco && curComputed == noDeco) { return nodeDOM }\n\n var curDOM = nodeDOM;\n for (var i = 0; i < curComputed.length; i++) {\n var deco = curComputed[i], prev = prevComputed[i];\n if (i) {\n var parent = (void 0);\n if (prev && prev.nodeName == deco.nodeName && curDOM != outerDOM &&\n (parent = curDOM.parentNode) && parent.tagName.toLowerCase() == deco.nodeName) {\n curDOM = parent;\n } else {\n parent = document.createElement(deco.nodeName);\n parent.pmIsDeco = true;\n parent.appendChild(curDOM);\n prev = noDeco[0];\n curDOM = parent;\n }\n }\n patchAttributes(curDOM, prev || noDeco[0], deco);\n }\n return curDOM\n}\n\nfunction patchAttributes(dom, prev, cur) {\n for (var name in prev)\n { if (name != \"class\" && name != \"style\" && name != \"nodeName\" && !(name in cur))\n { dom.removeAttribute(name); } }\n for (var name$1 in cur)\n { if (name$1 != \"class\" && name$1 != \"style\" && name$1 != \"nodeName\" && cur[name$1] != prev[name$1])\n { dom.setAttribute(name$1, cur[name$1]); } }\n if (prev.class != cur.class) {\n var prevList = prev.class ? prev.class.split(\" \") : nothing;\n var curList = cur.class ? cur.class.split(\" \") : nothing;\n for (var i = 0; i < prevList.length; i++) { if (curList.indexOf(prevList[i]) == -1)\n { dom.classList.remove(prevList[i]); } }\n for (var i$1 = 0; i$1 < curList.length; i$1++) { if (prevList.indexOf(curList[i$1]) == -1)\n { dom.classList.add(curList[i$1]); } }\n }\n if (prev.style != cur.style) {\n if (prev.style) {\n var prop = /\\s*([\\w\\-\\xa1-\\uffff]+)\\s*:(?:\"(?:\\\\.|[^\"])*\"|'(?:\\\\.|[^'])*'|\\(.*?\\)|[^;])*/g, m;\n while (m = prop.exec(prev.style))\n { dom.style.removeProperty(m[1]); }\n }\n if (cur.style)\n { dom.style.cssText += cur.style; }\n }\n}\n\nfunction applyOuterDeco(dom, deco, node) {\n return patchOuterDeco(dom, dom, noDeco, computeOuterDeco(deco, node, dom.nodeType != 1))\n}\n\n// : ([Decoration], [Decoration]) → bool\nfunction sameOuterDeco(a, b) {\n if (a.length != b.length) { return false }\n for (var i = 0; i < a.length; i++) { if (!a[i].type.eq(b[i].type)) { return false } }\n return true\n}\n\n// Remove a DOM node and return its next sibling.\nfunction rm(dom) {\n var next = dom.nextSibling;\n dom.parentNode.removeChild(dom);\n return next\n}\n\n// Helper class for incrementally updating a tree of mark descs and\n// the widget and node descs inside of them.\nvar ViewTreeUpdater = function ViewTreeUpdater(top, lockedNode) {\n this.top = top;\n this.lock = lockedNode;\n // Index into `this.top`'s child array, represents the current\n // update position.\n this.index = 0;\n // When entering a mark, the current top and index are pushed\n // onto this.\n this.stack = [];\n // Tracks whether anything was changed\n this.changed = false;\n\n var pre = preMatch(top.node.content, top.children);\n this.preMatched = pre.nodes;\n this.preMatchOffset = pre.offset;\n};\n\nViewTreeUpdater.prototype.getPreMatch = function getPreMatch (index) {\n return index >= this.preMatchOffset ? this.preMatched[index - this.preMatchOffset] : null\n};\n\n// Destroy and remove the children between the given indices in\n// `this.top`.\nViewTreeUpdater.prototype.destroyBetween = function destroyBetween (start, end) {\n if (start == end) { return }\n for (var i = start; i < end; i++) { this.top.children[i].destroy(); }\n this.top.children.splice(start, end - start);\n this.changed = true;\n};\n\n// Destroy all remaining children in `this.top`.\nViewTreeUpdater.prototype.destroyRest = function destroyRest () {\n this.destroyBetween(this.index, this.top.children.length);\n};\n\n// : ([Mark], EditorView)\n// Sync the current stack of mark descs with the given array of\n// marks, reusing existing mark descs when possible.\nViewTreeUpdater.prototype.syncToMarks = function syncToMarks (marks, inline, view) {\n var keep = 0, depth = this.stack.length >> 1;\n var maxKeep = Math.min(depth, marks.length);\n while (keep < maxKeep &&\n (keep == depth - 1 ? this.top : this.stack[(keep + 1) << 1]).matchesMark(marks[keep]) && marks[keep].type.spec.spanning !== false)\n { keep++; }\n\n while (keep < depth) {\n this.destroyRest();\n this.top.dirty = NOT_DIRTY;\n this.index = this.stack.pop();\n this.top = this.stack.pop();\n depth--;\n }\n while (depth < marks.length) {\n this.stack.push(this.top, this.index + 1);\n var found = -1;\n for (var i = this.index; i < Math.min(this.index + 3, this.top.children.length); i++) {\n if (this.top.children[i].matchesMark(marks[depth])) { found = i; break }\n }\n if (found > -1) {\n if (found > this.index) {\n this.changed = true;\n this.destroyBetween(this.index, found);\n }\n this.top = this.top.children[this.index];\n } else {\n var markDesc = MarkViewDesc.create(this.top, marks[depth], inline, view);\n this.top.children.splice(this.index, 0, markDesc);\n this.top = markDesc;\n this.changed = true;\n }\n this.index = 0;\n depth++;\n }\n};\n\n// : (Node, [Decoration], DecorationSet) → bool\n// Try to find a node desc matching the given data. Skip over it and\n// return true when successful.\nViewTreeUpdater.prototype.findNodeMatch = function findNodeMatch (node, outerDeco, innerDeco, index) {\n var found = -1, preMatch = index < 0 ? undefined : this.getPreMatch(index), children = this.top.children;\n if (preMatch && preMatch.matchesNode(node, outerDeco, innerDeco)) {\n found = children.indexOf(preMatch);\n } else {\n for (var i = this.index, e = Math.min(children.length, i + 5); i < e; i++) {\n var child = children[i];\n if (child.matchesNode(node, outerDeco, innerDeco) && this.preMatched.indexOf(child) < 0) {\n found = i;\n break\n }\n }\n }\n if (found < 0) { return false }\n this.destroyBetween(this.index, found);\n this.index++;\n return true\n};\n\n// : (Node, [Decoration], DecorationSet, EditorView, Fragment, number) → bool\n// Try to update the next node, if any, to the given data. Checks\n// pre-matches to avoid overwriting nodes that could still be used.\nViewTreeUpdater.prototype.updateNextNode = function updateNextNode (node, outerDeco, innerDeco, view, index) {\n for (var i = this.index; i < this.top.children.length; i++) {\n var next = this.top.children[i];\n if (next instanceof NodeViewDesc) {\n var preMatch = this.preMatched.indexOf(next);\n if (preMatch > -1 && preMatch + this.preMatchOffset != index) { return false }\n var nextDOM = next.dom;\n\n // Can't update if nextDOM is or contains this.lock, except if\n // it's a text node whose content already matches the new text\n // and whose decorations match the new ones.\n var locked = this.lock && (nextDOM == this.lock || nextDOM.nodeType == 1 && nextDOM.contains(this.lock.parentNode)) &&\n !(node.isText && next.node && next.node.isText && next.nodeDOM.nodeValue == node.text &&\n next.dirty != NODE_DIRTY && sameOuterDeco(outerDeco, next.outerDeco));\n if (!locked && next.update(node, outerDeco, innerDeco, view)) {\n this.destroyBetween(this.index, i);\n if (next.dom != nextDOM) { this.changed = true; }\n this.index++;\n return true\n }\n break\n }\n }\n return false\n};\n\n// : (Node, [Decoration], DecorationSet, EditorView)\n// Insert the node as a newly created node desc.\nViewTreeUpdater.prototype.addNode = function addNode (node, outerDeco, innerDeco, view, pos) {\n this.top.children.splice(this.index++, 0, NodeViewDesc.create(this.top, node, outerDeco, innerDeco, view, pos));\n this.changed = true;\n};\n\nViewTreeUpdater.prototype.placeWidget = function placeWidget (widget, view, pos) {\n var next = this.index < this.top.children.length ? this.top.children[this.index] : null;\n if (next && next.matchesWidget(widget) && (widget == next.widget || !next.widget.type.toDOM.parentNode)) {\n this.index++;\n } else {\n var desc = new WidgetViewDesc(this.top, widget, view, pos);\n this.top.children.splice(this.index++, 0, desc);\n this.changed = true;\n }\n};\n\n// Make sure a textblock looks and behaves correctly in\n// contentEditable.\nViewTreeUpdater.prototype.addTextblockHacks = function addTextblockHacks () {\n var lastChild = this.top.children[this.index - 1];\n while (lastChild instanceof MarkViewDesc) { lastChild = lastChild.children[lastChild.children.length - 1]; }\n\n if (!lastChild || // Empty textblock\n !(lastChild instanceof TextViewDesc) ||\n /\\n$/.test(lastChild.node.text)) {\n if (this.index < this.top.children.length && this.top.children[this.index].matchesHack()) {\n this.index++;\n } else {\n var dom = document.createElement(\"br\");\n this.top.children.splice(this.index++, 0, new BRHackViewDesc(this.top, nothing, dom, null));\n this.changed = true;\n }\n }\n};\n\n// : (Fragment, [ViewDesc]) → [ViewDesc]\n// Iterate from the end of the fragment and array of descs to find\n// directly matching ones, in order to avoid overeagerly reusing\n// those for other nodes. Returns an array whose positions correspond\n// to node positions in the fragment, and whose elements are either\n// descs matched to the child at that index, or empty.\nfunction preMatch(frag, descs) {\n var result = [], end = frag.childCount;\n for (var i = descs.length - 1; end > 0 && i >= 0; i--) {\n var desc = descs[i], node = desc.node;\n if (!node) { continue }\n if (node != frag.child(end - 1)) { break }\n result.push(desc);\n --end;\n }\n return {nodes: result.reverse(), offset: end}\n}\n\nfunction compareSide(a, b) { return a.type.side - b.type.side }\n\n// : (ViewDesc, DecorationSet, (Decoration, number), (Node, [Decoration], DecorationSet, number))\n// This function abstracts iterating over the nodes and decorations in\n// a fragment. Calls `onNode` for each node, with its local and child\n// decorations. Splits text nodes when there is a decoration starting\n// or ending inside of them. Calls `onWidget` for each widget.\nfunction iterDeco(parent, deco, onWidget, onNode) {\n var locals = deco.locals(parent), offset = 0;\n // Simple, cheap variant for when there are no local decorations\n if (locals.length == 0) {\n for (var i = 0; i < parent.childCount; i++) {\n var child = parent.child(i);\n onNode(child, locals, deco.forChild(offset, child), i);\n offset += child.nodeSize;\n }\n return\n }\n\n var decoIndex = 0, active = [], restNode = null;\n for (var parentIndex = 0;;) {\n if (decoIndex < locals.length && locals[decoIndex].to == offset) {\n var widget = locals[decoIndex++], widgets = (void 0);\n while (decoIndex < locals.length && locals[decoIndex].to == offset)\n { (widgets || (widgets = [widget])).push(locals[decoIndex++]); }\n if (widgets) {\n widgets.sort(compareSide);\n for (var i$1 = 0; i$1 < widgets.length; i$1++) { onWidget(widgets[i$1], parentIndex, !!restNode); }\n } else {\n onWidget(widget, parentIndex, !!restNode);\n }\n }\n\n var child$1 = (void 0), index = (void 0);\n if (restNode) {\n index = -1;\n child$1 = restNode;\n restNode = null;\n } else if (parentIndex < parent.childCount) {\n index = parentIndex;\n child$1 = parent.child(parentIndex++);\n } else {\n break\n }\n\n for (var i$2 = 0; i$2 < active.length; i$2++) { if (active[i$2].to <= offset) { active.splice(i$2--, 1); } }\n while (decoIndex < locals.length && locals[decoIndex].from <= offset && locals[decoIndex].to > offset)\n { active.push(locals[decoIndex++]); }\n\n var end = offset + child$1.nodeSize;\n if (child$1.isText) {\n var cutAt = end;\n if (decoIndex < locals.length && locals[decoIndex].from < cutAt) { cutAt = locals[decoIndex].from; }\n for (var i$3 = 0; i$3 < active.length; i$3++) { if (active[i$3].to < cutAt) { cutAt = active[i$3].to; } }\n if (cutAt < end) {\n restNode = child$1.cut(cutAt - offset);\n child$1 = child$1.cut(0, cutAt - offset);\n end = cutAt;\n index = -1;\n }\n }\n\n var outerDeco = !active.length ? nothing\n : child$1.isInline && !child$1.isLeaf ? active.filter(function (d) { return !d.inline; })\n : active.slice();\n onNode(child$1, outerDeco, deco.forChild(offset, child$1), index);\n offset = end;\n }\n}\n\n// List markers in Mobile Safari will mysteriously disappear\n// sometimes. This works around that.\nfunction iosHacks(dom) {\n if (dom.nodeName == \"UL\" || dom.nodeName == \"OL\") {\n var oldCSS = dom.style.cssText;\n dom.style.cssText = oldCSS + \"; list-style: square !important\";\n window.getComputedStyle(dom).listStyle;\n dom.style.cssText = oldCSS;\n }\n}\n\nfunction nearbyTextNode(node, offset) {\n for (;;) {\n if (node.nodeType == 3) { return node }\n if (node.nodeType == 1 && offset > 0) {\n if (node.childNodes.length > offset && node.childNodes[offset].nodeType == 3)\n { return node.childNodes[offset] }\n node = node.childNodes[offset - 1];\n offset = nodeSize(node);\n } else if (node.nodeType == 1 && offset < node.childNodes.length) {\n node = node.childNodes[offset];\n offset = 0;\n } else {\n return null\n }\n }\n}\n\n// Find a piece of text in an inline fragment, overlapping from-to\nfunction findTextInFragment(frag, text, from, to) {\n for (var i = 0, pos = 0; i < frag.childCount && pos <= to;) {\n var child = frag.child(i++), childStart = pos;\n pos += child.nodeSize;\n if (!child.isText) { continue }\n var str = child.text;\n while (i < frag.childCount) {\n var next = frag.child(i++);\n pos += next.nodeSize;\n if (!next.isText) { break }\n str += next.text;\n }\n if (pos >= from) {\n var found = str.lastIndexOf(text, to - childStart);\n if (found >= 0 && found + text.length + childStart >= from)\n { return childStart + found }\n }\n }\n return -1\n}\n\n// Replace range from-to in an array of view descs with replacement\n// (may be null to just delete). This goes very much against the grain\n// of the rest of this code, which tends to create nodes with the\n// right shape in one go, rather than messing with them after\n// creation, but is necessary in the composition hack.\nfunction replaceNodes(nodes, from, to, view, replacement) {\n var result = [];\n for (var i = 0, off = 0; i < nodes.length; i++) {\n var child = nodes[i], start = off, end = off += child.size;\n if (start >= to || end <= from) {\n result.push(child);\n } else {\n if (start < from) { result.push(child.slice(0, from - start, view)); }\n if (replacement) {\n result.push(replacement);\n replacement = null;\n }\n if (end > to) { result.push(child.slice(to - start, child.size, view)); }\n }\n }\n return result\n}\n\nfunction moveSelectionBlock(state, dir) {\n var ref = state.selection;\n var $anchor = ref.$anchor;\n var $head = ref.$head;\n var $side = dir > 0 ? $anchor.max($head) : $anchor.min($head);\n var $start = !$side.parent.inlineContent ? $side : $side.depth ? state.doc.resolve(dir > 0 ? $side.after() : $side.before()) : null;\n return $start && Selection.findFrom($start, dir)\n}\n\nfunction apply(view, sel) {\n view.dispatch(view.state.tr.setSelection(sel).scrollIntoView());\n return true\n}\n\nfunction selectHorizontally(view, dir, mods) {\n var sel = view.state.selection;\n if (sel instanceof TextSelection) {\n if (!sel.empty || mods.indexOf(\"s\") > -1) {\n return false\n } else if (view.endOfTextblock(dir > 0 ? \"right\" : \"left\")) {\n var next = moveSelectionBlock(view.state, dir);\n if (next && (next instanceof NodeSelection)) { return apply(view, next) }\n return false\n } else if (!(result.mac && mods.indexOf(\"m\") > -1)) {\n var $head = sel.$head, node = $head.textOffset ? null : dir < 0 ? $head.nodeBefore : $head.nodeAfter, desc;\n if (!node || node.isText) { return false }\n var nodePos = dir < 0 ? $head.pos - node.nodeSize : $head.pos;\n if (!(node.isAtom || (desc = view.docView.descAt(nodePos)) && !desc.contentDOM)) { return false }\n if (NodeSelection.isSelectable(node)) {\n return apply(view, new NodeSelection(dir < 0 ? view.state.doc.resolve($head.pos - node.nodeSize) : $head))\n } else if (result.webkit) {\n // Chrome and Safari will introduce extra pointless cursor\n // positions around inline uneditable nodes, so we have to\n // take over and move the cursor past them (#937)\n return apply(view, new TextSelection(view.state.doc.resolve(dir < 0 ? nodePos : nodePos + node.nodeSize)))\n } else {\n return false\n }\n }\n } else if (sel instanceof NodeSelection && sel.node.isInline) {\n return apply(view, new TextSelection(dir > 0 ? sel.$to : sel.$from))\n } else {\n var next$1 = moveSelectionBlock(view.state, dir);\n if (next$1) { return apply(view, next$1) }\n return false\n }\n}\n\nfunction nodeLen(node) {\n return node.nodeType == 3 ? node.nodeValue.length : node.childNodes.length\n}\n\nfunction isIgnorable(dom) {\n var desc = dom.pmViewDesc;\n return desc && desc.size == 0 && (dom.nextSibling || dom.nodeName != \"BR\")\n}\n\n// Make sure the cursor isn't directly after one or more ignored\n// nodes, which will confuse the browser's cursor motion logic.\nfunction skipIgnoredNodesLeft(view) {\n var sel = view.root.getSelection();\n var node = sel.focusNode, offset = sel.focusOffset;\n if (!node) { return }\n var moveNode, moveOffset, force = false;\n // Gecko will do odd things when the selection is directly in front\n // of a non-editable node, so in that case, move it into the next\n // node if possible. Issue prosemirror/prosemirror#832.\n if (result.gecko && node.nodeType == 1 && offset < nodeLen(node) && isIgnorable(node.childNodes[offset])) { force = true; }\n for (;;) {\n if (offset > 0) {\n if (node.nodeType != 1) {\n break\n } else {\n var before = node.childNodes[offset - 1];\n if (isIgnorable(before)) {\n moveNode = node;\n moveOffset = --offset;\n } else if (before.nodeType == 3) {\n node = before;\n offset = node.nodeValue.length;\n } else { break }\n }\n } else if (isBlockNode(node)) {\n break\n } else {\n var prev = node.previousSibling;\n while (prev && isIgnorable(prev)) {\n moveNode = node.parentNode;\n moveOffset = domIndex(prev);\n prev = prev.previousSibling;\n }\n if (!prev) {\n node = node.parentNode;\n if (node == view.dom) { break }\n offset = 0;\n } else {\n node = prev;\n offset = nodeLen(node);\n }\n }\n }\n if (force) { setSelFocus(view, sel, node, offset); }\n else if (moveNode) { setSelFocus(view, sel, moveNode, moveOffset); }\n}\n\n// Make sure the cursor isn't directly before one or more ignored\n// nodes.\nfunction skipIgnoredNodesRight(view) {\n var sel = view.root.getSelection();\n var node = sel.focusNode, offset = sel.focusOffset;\n if (!node) { return }\n var len = nodeLen(node);\n var moveNode, moveOffset;\n for (;;) {\n if (offset < len) {\n if (node.nodeType != 1) { break }\n var after = node.childNodes[offset];\n if (isIgnorable(after)) {\n moveNode = node;\n moveOffset = ++offset;\n }\n else { break }\n } else if (isBlockNode(node)) {\n break\n } else {\n var next = node.nextSibling;\n while (next && isIgnorable(next)) {\n moveNode = next.parentNode;\n moveOffset = domIndex(next) + 1;\n next = next.nextSibling;\n }\n if (!next) {\n node = node.parentNode;\n if (node == view.dom) { break }\n offset = len = 0;\n } else {\n node = next;\n offset = 0;\n len = nodeLen(node);\n }\n }\n }\n if (moveNode) { setSelFocus(view, sel, moveNode, moveOffset); }\n}\n\nfunction isBlockNode(dom) {\n var desc = dom.pmViewDesc;\n return desc && desc.node && desc.node.isBlock\n}\n\nfunction setSelFocus(view, sel, node, offset) {\n if (selectionCollapsed(sel)) {\n var range = document.createRange();\n range.setEnd(node, offset);\n range.setStart(node, offset);\n sel.removeAllRanges();\n sel.addRange(range);\n } else if (sel.extend) {\n sel.extend(node, offset);\n }\n view.domObserver.setCurSelection();\n}\n\n// : (EditorState, number)\n// Check whether vertical selection motion would involve node\n// selections. If so, apply it (if not, the result is left to the\n// browser)\nfunction selectVertically(view, dir, mods) {\n var sel = view.state.selection;\n if (sel instanceof TextSelection && !sel.empty || mods.indexOf(\"s\") > -1) { return false }\n if (result.mac && mods.indexOf(\"m\") > -1) { return false }\n var $from = sel.$from;\n var $to = sel.$to;\n\n if (!$from.parent.inlineContent || view.endOfTextblock(dir < 0 ? \"up\" : \"down\")) {\n var next = moveSelectionBlock(view.state, dir);\n if (next && (next instanceof NodeSelection))\n { return apply(view, next) }\n }\n if (!$from.parent.inlineContent) {\n var beyond = Selection.findFrom(dir < 0 ? $from : $to, dir);\n return beyond ? apply(view, beyond) : true\n }\n return false\n}\n\nfunction stopNativeHorizontalDelete(view, dir) {\n if (!(view.state.selection instanceof TextSelection)) { return true }\n var ref = view.state.selection;\n var $head = ref.$head;\n var $anchor = ref.$anchor;\n var empty = ref.empty;\n if (!$head.sameParent($anchor)) { return true }\n if (!empty) { return false }\n if (view.endOfTextblock(dir > 0 ? \"forward\" : \"backward\")) { return true }\n var nextNode = !$head.textOffset && (dir < 0 ? $head.nodeBefore : $head.nodeAfter);\n if (nextNode && !nextNode.isText) {\n var tr = view.state.tr;\n if (dir < 0) { tr.delete($head.pos - nextNode.nodeSize, $head.pos); }\n else { tr.delete($head.pos, $head.pos + nextNode.nodeSize); }\n view.dispatch(tr);\n return true\n }\n return false\n}\n\nfunction switchEditable(view, node, state) {\n view.domObserver.stop();\n node.contentEditable = state;\n view.domObserver.start();\n}\n\n// Issue #867 / https://bugs.chromium.org/p/chromium/issues/detail?id=903821\n// In which Chrome does really wrong things when the down arrow is\n// pressed when the cursor is directly at the start of a textblock and\n// has an uneditable node after it\nfunction chromeDownArrowBug(view) {\n if (!result.chrome || view.state.selection.$head.parentOffset > 0) { return }\n var ref = view.root.getSelection();\n var focusNode = ref.focusNode;\n var focusOffset = ref.focusOffset;\n if (focusNode && focusNode.nodeType == 1 && focusOffset == 0 &&\n focusNode.firstChild && focusNode.firstChild.contentEditable == \"false\") {\n var child = focusNode.firstChild;\n switchEditable(view, child, true);\n setTimeout(function () { return switchEditable(view, child, false); }, 20);\n }\n}\n\n// A backdrop key mapping used to make sure we always suppress keys\n// that have a dangerous default effect, even if the commands they are\n// bound to return false, and to make sure that cursor-motion keys\n// find a cursor (as opposed to a node selection) when pressed. For\n// cursor-motion keys, the code in the handlers also takes care of\n// block selections.\n\nfunction getMods(event) {\n var result = \"\";\n if (event.ctrlKey) { result += \"c\"; }\n if (event.metaKey) { result += \"m\"; }\n if (event.altKey) { result += \"a\"; }\n if (event.shiftKey) { result += \"s\"; }\n return result\n}\n\nfunction captureKeyDown(view, event) {\n var code = event.keyCode, mods = getMods(event);\n if (code == 8 || (result.mac && code == 72 && mods == \"c\")) { // Backspace, Ctrl-h on Mac\n return stopNativeHorizontalDelete(view, -1) || skipIgnoredNodesLeft(view)\n } else if (code == 46 || (result.mac && code == 68 && mods == \"c\")) { // Delete, Ctrl-d on Mac\n return stopNativeHorizontalDelete(view, 1) || skipIgnoredNodesRight(view)\n } else if (code == 13 || code == 27) { // Enter, Esc\n return true\n } else if (code == 37) { // Left arrow\n return selectHorizontally(view, -1, mods) || skipIgnoredNodesLeft(view)\n } else if (code == 39) { // Right arrow\n return selectHorizontally(view, 1, mods) || skipIgnoredNodesRight(view)\n } else if (code == 38) { // Up arrow\n return selectVertically(view, -1, mods) || skipIgnoredNodesLeft(view)\n } else if (code == 40) { // Down arrow\n return chromeDownArrowBug(view) || selectVertically(view, 1, mods) || skipIgnoredNodesRight(view)\n } else if (mods == (result.mac ? \"m\" : \"c\") &&\n (code == 66 || code == 73 || code == 89 || code == 90)) { // Mod-[biyz]\n return true\n }\n return false\n}\n\nfunction selectionFromDOM(view, origin) {\n var domSel = view.root.getSelection(), doc = view.state.doc;\n if (!domSel.focusNode) { return null }\n var nearestDesc = view.docView.nearestDesc(domSel.focusNode), inWidget = nearestDesc && nearestDesc.size == 0;\n var head = view.docView.posFromDOM(domSel.focusNode, domSel.focusOffset);\n if (head < 0) { return null }\n var $head = doc.resolve(head), $anchor, selection;\n if (selectionCollapsed(domSel)) {\n $anchor = $head;\n while (nearestDesc && !nearestDesc.node) { nearestDesc = nearestDesc.parent; }\n if (nearestDesc && nearestDesc.node.isAtom && NodeSelection.isSelectable(nearestDesc.node) && nearestDesc.parent\n && !(nearestDesc.node.isInline && isOnEdge(domSel.focusNode, domSel.focusOffset, nearestDesc.dom))) {\n var pos = nearestDesc.posBefore;\n selection = new NodeSelection(head == pos ? $head : doc.resolve(pos));\n }\n } else {\n var anchor = view.docView.posFromDOM(domSel.anchorNode, domSel.anchorOffset);\n if (anchor < 0) { return null }\n $anchor = doc.resolve(anchor);\n }\n\n if (!selection) {\n var bias = origin == \"pointer\" || (view.state.selection.head < $head.pos && !inWidget) ? 1 : -1;\n selection = selectionBetween(view, $anchor, $head, bias);\n }\n return selection\n}\n\nfunction selectionToDOM(view, force) {\n var sel = view.state.selection;\n syncNodeSelection(view, sel);\n\n if (view.editable ? !view.hasFocus() :\n !(hasSelection(view) && document.activeElement && document.activeElement.contains(view.dom))) { return }\n\n view.domObserver.disconnectSelection();\n\n if (view.cursorWrapper) {\n selectCursorWrapper(view);\n } else {\n var anchor = sel.anchor;\n var head = sel.head;\n var resetEditableFrom, resetEditableTo;\n if (brokenSelectBetweenUneditable && !(sel instanceof TextSelection)) {\n if (!sel.$from.parent.inlineContent)\n { resetEditableFrom = temporarilyEditableNear(view, sel.from); }\n if (!sel.empty && !sel.$from.parent.inlineContent)\n { resetEditableTo = temporarilyEditableNear(view, sel.to); }\n }\n view.docView.setSelection(anchor, head, view.root, force);\n if (brokenSelectBetweenUneditable) {\n if (resetEditableFrom) { resetEditable(resetEditableFrom); }\n if (resetEditableTo) { resetEditable(resetEditableTo); }\n }\n if (sel.visible) {\n view.dom.classList.remove(\"ProseMirror-hideselection\");\n } else {\n view.dom.classList.add(\"ProseMirror-hideselection\");\n if (\"onselectionchange\" in document) { removeClassOnSelectionChange(view); }\n }\n }\n\n view.domObserver.setCurSelection();\n view.domObserver.connectSelection();\n}\n\n// Kludge to work around Webkit not allowing a selection to start/end\n// between non-editable block nodes. We briefly make something\n// editable, set the selection, then set it uneditable again.\n\nvar brokenSelectBetweenUneditable = result.safari || result.chrome && result.chrome_version < 63;\n\nfunction temporarilyEditableNear(view, pos) {\n var ref = view.docView.domFromPos(pos);\n var node = ref.node;\n var offset = ref.offset;\n var after = offset < node.childNodes.length ? node.childNodes[offset] : null;\n var before = offset ? node.childNodes[offset - 1] : null;\n if (result.safari && after && after.contentEditable == \"false\") { return setEditable(after) }\n if ((!after || after.contentEditable == \"false\") && (!before || before.contentEditable == \"false\")) {\n if (after) { return setEditable(after) }\n else if (before) { return setEditable(before) }\n }\n}\n\nfunction setEditable(element) {\n element.contentEditable = \"true\";\n if (result.safari && element.draggable) { element.draggable = false; element.wasDraggable = true; }\n return element\n}\n\nfunction resetEditable(element) {\n element.contentEditable = \"false\";\n if (element.wasDraggable) { element.draggable = true; element.wasDraggable = null; }\n}\n\nfunction removeClassOnSelectionChange(view) {\n var doc = view.dom.ownerDocument;\n doc.removeEventListener(\"selectionchange\", view.hideSelectionGuard);\n var domSel = view.root.getSelection();\n var node = domSel.anchorNode, offset = domSel.anchorOffset;\n doc.addEventListener(\"selectionchange\", view.hideSelectionGuard = function () {\n if (domSel.anchorNode != node || domSel.anchorOffset != offset) {\n doc.removeEventListener(\"selectionchange\", view.hideSelectionGuard);\n view.dom.classList.remove(\"ProseMirror-hideselection\");\n }\n });\n}\n\nfunction selectCursorWrapper(view) {\n var domSel = view.root.getSelection(), range = document.createRange();\n var node = view.cursorWrapper.dom, img = node.nodeName == \"IMG\";\n if (img) { range.setEnd(node.parentNode, domIndex(node) + 1); }\n else { range.setEnd(node, 0); }\n range.collapse(false);\n domSel.removeAllRanges();\n domSel.addRange(range);\n // Kludge to kill 'control selection' in IE11 when selecting an\n // invisible cursor wrapper, since that would result in those weird\n // resize handles and a selection that considers the absolutely\n // positioned wrapper, rather than the root editable node, the\n // focused element.\n if (!img && !view.state.selection.visible && result.ie && result.ie_version <= 11) {\n node.disabled = true;\n node.disabled = false;\n }\n}\n\nfunction syncNodeSelection(view, sel) {\n if (sel instanceof NodeSelection) {\n var desc = view.docView.descAt(sel.from);\n if (desc != view.lastSelectedViewDesc) {\n clearNodeSelection(view);\n if (desc) { desc.selectNode(); }\n view.lastSelectedViewDesc = desc;\n }\n } else {\n clearNodeSelection(view);\n }\n}\n\n// Clear all DOM statefulness of the last node selection.\nfunction clearNodeSelection(view) {\n if (view.lastSelectedViewDesc) {\n if (view.lastSelectedViewDesc.parent)\n { view.lastSelectedViewDesc.deselectNode(); }\n view.lastSelectedViewDesc = null;\n }\n}\n\nfunction selectionBetween(view, $anchor, $head, bias) {\n return view.someProp(\"createSelectionBetween\", function (f) { return f(view, $anchor, $head); })\n || TextSelection.between($anchor, $head, bias)\n}\n\nfunction hasFocusAndSelection(view) {\n if (view.editable && view.root.activeElement != view.dom) { return false }\n return hasSelection(view)\n}\n\nfunction hasSelection(view) {\n var sel = view.root.getSelection();\n if (!sel.anchorNode) { return false }\n try {\n // Firefox will raise 'permission denied' errors when accessing\n // properties of `sel.anchorNode` when it's in a generated CSS\n // element.\n return view.dom.contains(sel.anchorNode.nodeType == 3 ? sel.anchorNode.parentNode : sel.anchorNode) &&\n (view.editable || view.dom.contains(sel.focusNode.nodeType == 3 ? sel.focusNode.parentNode : sel.focusNode))\n } catch(_) {\n return false\n }\n}\n\nfunction anchorInRightPlace(view) {\n var anchorDOM = view.docView.domFromPos(view.state.selection.anchor);\n var domSel = view.root.getSelection();\n return isEquivalentPosition(anchorDOM.node, anchorDOM.offset, domSel.anchorNode, domSel.anchorOffset)\n}\n\n// Note that all referencing and parsing is done with the\n// start-of-operation selection and document, since that's the one\n// that the DOM represents. If any changes came in in the meantime,\n// the modification is mapped over those before it is applied, in\n// readDOMChange.\n\nfunction parseBetween(view, from_, to_) {\n var ref = view.docView.parseRange(from_, to_);\n var parent = ref.node;\n var fromOffset = ref.fromOffset;\n var toOffset = ref.toOffset;\n var from = ref.from;\n var to = ref.to;\n\n var domSel = view.root.getSelection(), find = null, anchor = domSel.anchorNode;\n if (anchor && view.dom.contains(anchor.nodeType == 1 ? anchor : anchor.parentNode)) {\n find = [{node: anchor, offset: domSel.anchorOffset}];\n if (!selectionCollapsed(domSel))\n { find.push({node: domSel.focusNode, offset: domSel.focusOffset}); }\n }\n // Work around issue in Chrome where backspacing sometimes replaces\n // the deleted content with a random BR node (issues #799, #831)\n if (result.chrome && view.lastKeyCode === 8) {\n for (var off = toOffset; off > fromOffset; off--) {\n var node = parent.childNodes[off - 1], desc = node.pmViewDesc;\n if (node.nodeType == \"BR\" && !desc) { toOffset = off; break }\n if (!desc || desc.size) { break }\n }\n }\n var startDoc = view.state.doc;\n var parser = view.someProp(\"domParser\") || DOMParser.fromSchema(view.state.schema);\n var $from = startDoc.resolve(from);\n\n var sel = null, doc = parser.parse(parent, {\n topNode: $from.parent,\n topMatch: $from.parent.contentMatchAt($from.index()),\n topOpen: true,\n from: fromOffset,\n to: toOffset,\n preserveWhitespace: $from.parent.type.spec.code ? \"full\" : true,\n editableContent: true,\n findPositions: find,\n ruleFromNode: ruleFromNode,\n context: $from\n });\n if (find && find[0].pos != null) {\n var anchor$1 = find[0].pos, head = find[1] && find[1].pos;\n if (head == null) { head = anchor$1; }\n sel = {anchor: anchor$1 + from, head: head + from};\n }\n return {doc: doc, sel: sel, from: from, to: to}\n}\n\nfunction ruleFromNode(dom) {\n var desc = dom.pmViewDesc;\n if (desc) {\n return desc.parseRule()\n } else if (dom.nodeName == \"BR\" && dom.parentNode) {\n // Safari replaces the list item or table cell with a BR\n // directly in the list node (?!) if you delete the last\n // character in a list item or table cell (#708, #862)\n if (result.safari && /^(ul|ol)$/i.test(dom.parentNode.nodeName)) {\n var skip = document.createElement(\"div\");\n skip.appendChild(document.createElement(\"li\"));\n return {skip: skip}\n } else if (dom.parentNode.lastChild == dom || result.safari && /^(tr|table)$/i.test(dom.parentNode.nodeName)) {\n return {ignore: true}\n }\n } else if (dom.nodeName == \"IMG\" && dom.getAttribute(\"mark-placeholder\")) {\n return {ignore: true}\n }\n}\n\nfunction readDOMChange(view, from, to, typeOver, addedNodes) {\n if (from < 0) {\n var origin = view.lastSelectionTime > Date.now() - 50 ? view.lastSelectionOrigin : null;\n var newSel = selectionFromDOM(view, origin);\n if (newSel && !view.state.selection.eq(newSel)) {\n var tr$1 = view.state.tr.setSelection(newSel);\n if (origin == \"pointer\") { tr$1.setMeta(\"pointer\", true); }\n else if (origin == \"key\") { tr$1.scrollIntoView(); }\n view.dispatch(tr$1);\n }\n return\n }\n\n var $before = view.state.doc.resolve(from);\n var shared = $before.sharedDepth(to);\n from = $before.before(shared + 1);\n to = view.state.doc.resolve(to).after(shared + 1);\n\n var sel = view.state.selection;\n var parse = parseBetween(view, from, to);\n\n var doc = view.state.doc, compare = doc.slice(parse.from, parse.to);\n var preferredPos, preferredSide;\n // Prefer anchoring to end when Backspace is pressed\n if (view.lastKeyCode === 8 && Date.now() - 100 < view.lastKeyCodeTime) {\n preferredPos = view.state.selection.to;\n preferredSide = \"end\";\n } else {\n preferredPos = view.state.selection.from;\n preferredSide = \"start\";\n }\n view.lastKeyCode = null;\n\n var change = findDiff(compare.content, parse.doc.content, parse.from, preferredPos, preferredSide);\n if (!change) {\n if (typeOver && sel instanceof TextSelection && !sel.empty && sel.$head.sameParent(sel.$anchor) &&\n !view.composing && !(parse.sel && parse.sel.anchor != parse.sel.head)) {\n change = {start: sel.from, endA: sel.to, endB: sel.to};\n } else {\n if (parse.sel) {\n var sel$1 = resolveSelection(view, view.state.doc, parse.sel);\n if (sel$1 && !sel$1.eq(view.state.selection)) { view.dispatch(view.state.tr.setSelection(sel$1)); }\n }\n return\n }\n }\n view.domChangeCount++;\n // Handle the case where overwriting a selection by typing matches\n // the start or end of the selected content, creating a change\n // that's smaller than what was actually overwritten.\n if (view.state.selection.from < view.state.selection.to &&\n change.start == change.endB &&\n view.state.selection instanceof TextSelection) {\n if (change.start > view.state.selection.from && change.start <= view.state.selection.from + 2) {\n change.start = view.state.selection.from;\n } else if (change.endA < view.state.selection.to && change.endA >= view.state.selection.to - 2) {\n change.endB += (view.state.selection.to - change.endA);\n change.endA = view.state.selection.to;\n }\n }\n\n // IE11 will insert a non-breaking space _ahead_ of the space after\n // the cursor space when adding a space before another space. When\n // that happened, adjust the change to cover the space instead.\n if (result.ie && result.ie_version <= 11 && change.endB == change.start + 1 &&\n change.endA == change.start && change.start > parse.from &&\n parse.doc.textBetween(change.start - parse.from - 1, change.start - parse.from + 1) == \" \\u00a0\") {\n change.start--;\n change.endA--;\n change.endB--;\n }\n\n var $from = parse.doc.resolveNoCache(change.start - parse.from);\n var $to = parse.doc.resolveNoCache(change.endB - parse.from);\n var inlineChange = $from.sameParent($to) && $from.parent.inlineContent;\n var nextSel;\n // If this looks like the effect of pressing Enter (or was recorded\n // as being an iOS enter press), just dispatch an Enter key instead.\n if (((result.ios && view.lastIOSEnter > Date.now() - 225 &&\n (!inlineChange || addedNodes.some(function (n) { return n.nodeName == \"DIV\" || n.nodeName == \"P\"; }))) ||\n (!inlineChange && $from.pos < parse.doc.content.size &&\n (nextSel = Selection.findFrom(parse.doc.resolve($from.pos + 1), 1, true)) &&\n nextSel.head == $to.pos)) &&\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); })) {\n view.lastIOSEnter = 0;\n return\n }\n // Same for backspace\n if (view.state.selection.anchor > change.start &&\n looksLikeJoin(doc, change.start, change.endA, $from, $to) &&\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(8, \"Backspace\")); })) {\n if (result.android && result.chrome) { view.domObserver.suppressSelectionUpdates(); } // #820\n return\n }\n\n // This tries to detect Android virtual keyboard\n // enter-and-pick-suggestion action. That sometimes (see issue\n // #1059) first fires a DOM mutation, before moving the selection to\n // the newly created block. And then, because ProseMirror cleans up\n // the DOM selection, it gives up moving the selection entirely,\n // leaving the cursor in the wrong place. When that happens, we drop\n // the new paragraph from the initial change, and fire a simulated\n // enter key afterwards.\n if (result.android && !inlineChange && $from.start() != $to.start() && $to.parentOffset == 0 && $from.depth == $to.depth &&\n parse.sel && parse.sel.anchor == parse.sel.head && parse.sel.head == change.endA) {\n change.endB -= 2;\n $to = parse.doc.resolveNoCache(change.endB - parse.from);\n setTimeout(function () {\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); });\n }, 20);\n }\n\n var chFrom = change.start, chTo = change.endA;\n\n var tr, storedMarks, markChange, $from1;\n if (inlineChange) {\n if ($from.pos == $to.pos) { // Deletion\n // IE11 sometimes weirdly moves the DOM selection around after\n // backspacing out the first element in a textblock\n if (result.ie && result.ie_version <= 11 && $from.parentOffset == 0) {\n view.domObserver.suppressSelectionUpdates();\n setTimeout(function () { return selectionToDOM(view); }, 20);\n }\n tr = view.state.tr.delete(chFrom, chTo);\n storedMarks = doc.resolve(change.start).marksAcross(doc.resolve(change.endA));\n } else if ( // Adding or removing a mark\n change.endA == change.endB && ($from1 = doc.resolve(change.start)) &&\n (markChange = isMarkChange($from.parent.content.cut($from.parentOffset, $to.parentOffset),\n $from1.parent.content.cut($from1.parentOffset, change.endA - $from1.start())))\n ) {\n tr = view.state.tr;\n if (markChange.type == \"add\") { tr.addMark(chFrom, chTo, markChange.mark); }\n else { tr.removeMark(chFrom, chTo, markChange.mark); }\n } else if ($from.parent.child($from.index()).isText && $from.index() == $to.index() - ($to.textOffset ? 0 : 1)) {\n // Both positions in the same text node -- simply insert text\n var text = $from.parent.textBetween($from.parentOffset, $to.parentOffset);\n if (view.someProp(\"handleTextInput\", function (f) { return f(view, chFrom, chTo, text); })) { return }\n tr = view.state.tr.insertText(text, chFrom, chTo);\n }\n }\n\n if (!tr)\n { tr = view.state.tr.replace(chFrom, chTo, parse.doc.slice(change.start - parse.from, change.endB - parse.from)); }\n if (parse.sel) {\n var sel$2 = resolveSelection(view, tr.doc, parse.sel);\n // Chrome Android will sometimes, during composition, report the\n // selection in the wrong place. If it looks like that is\n // happening, don't update the selection.\n // Edge just doesn't move the cursor forward when you start typing\n // in an empty block or between br nodes.\n if (sel$2 && !(result.chrome && result.android && view.composing && sel$2.empty &&\n (sel$2.head == chFrom || sel$2.head == tr.mapping.map(chTo) - 1) ||\n result.ie && sel$2.empty && sel$2.head == chFrom))\n { tr.setSelection(sel$2); }\n }\n if (storedMarks) { tr.ensureMarks(storedMarks); }\n view.dispatch(tr.scrollIntoView());\n}\n\nfunction resolveSelection(view, doc, parsedSel) {\n if (Math.max(parsedSel.anchor, parsedSel.head) > doc.content.size) { return null }\n return selectionBetween(view, doc.resolve(parsedSel.anchor), doc.resolve(parsedSel.head))\n}\n\n// : (Fragment, Fragment) → ?{mark: Mark, type: string}\n// Given two same-length, non-empty fragments of inline content,\n// determine whether the first could be created from the second by\n// removing or adding a single mark type.\nfunction isMarkChange(cur, prev) {\n var curMarks = cur.firstChild.marks, prevMarks = prev.firstChild.marks;\n var added = curMarks, removed = prevMarks, type, mark, update;\n for (var i = 0; i < prevMarks.length; i++) { added = prevMarks[i].removeFromSet(added); }\n for (var i$1 = 0; i$1 < curMarks.length; i$1++) { removed = curMarks[i$1].removeFromSet(removed); }\n if (added.length == 1 && removed.length == 0) {\n mark = added[0];\n type = \"add\";\n update = function (node) { return node.mark(mark.addToSet(node.marks)); };\n } else if (added.length == 0 && removed.length == 1) {\n mark = removed[0];\n type = \"remove\";\n update = function (node) { return node.mark(mark.removeFromSet(node.marks)); };\n } else {\n return null\n }\n var updated = [];\n for (var i$2 = 0; i$2 < prev.childCount; i$2++) { updated.push(update(prev.child(i$2))); }\n if (Fragment.from(updated).eq(cur)) { return {mark: mark, type: type} }\n}\n\nfunction looksLikeJoin(old, start, end, $newStart, $newEnd) {\n if (!$newStart.parent.isTextblock ||\n // The content must have shrunk\n end - start <= $newEnd.pos - $newStart.pos ||\n // newEnd must point directly at or after the end of the block that newStart points into\n skipClosingAndOpening($newStart, true, false) < $newEnd.pos)\n { return false }\n\n var $start = old.resolve(start);\n // Start must be at the end of a block\n if ($start.parentOffset < $start.parent.content.size || !$start.parent.isTextblock)\n { return false }\n var $next = old.resolve(skipClosingAndOpening($start, true, true));\n // The next textblock must start before end and end near it\n if (!$next.parent.isTextblock || $next.pos > end ||\n skipClosingAndOpening($next, true, false) < end)\n { return false }\n\n // The fragments after the join point must match\n return $newStart.parent.content.cut($newStart.parentOffset).eq($next.parent.content)\n}\n\nfunction skipClosingAndOpening($pos, fromEnd, mayOpen) {\n var depth = $pos.depth, end = fromEnd ? $pos.end() : $pos.pos;\n while (depth > 0 && (fromEnd || $pos.indexAfter(depth) == $pos.node(depth).childCount)) {\n depth--;\n end++;\n fromEnd = false;\n }\n if (mayOpen) {\n var next = $pos.node(depth).maybeChild($pos.indexAfter(depth));\n while (next && !next.isLeaf) {\n next = next.firstChild;\n end++;\n }\n }\n return end\n}\n\nfunction findDiff(a, b, pos, preferredPos, preferredSide) {\n var start = a.findDiffStart(b, pos);\n if (start == null) { return null }\n var ref = a.findDiffEnd(b, pos + a.size, pos + b.size);\n var endA = ref.a;\n var endB = ref.b;\n if (preferredSide == \"end\") {\n var adjust = Math.max(0, start - Math.min(endA, endB));\n preferredPos -= endA + adjust - start;\n }\n if (endA < start && a.size < b.size) {\n var move = preferredPos <= start && preferredPos >= endA ? start - preferredPos : 0;\n start -= move;\n endB = start + (endB - endA);\n endA = start;\n } else if (endB < start) {\n var move$1 = preferredPos <= start && preferredPos >= endB ? start - preferredPos : 0;\n start -= move$1;\n endA = start + (endA - endB);\n endB = start;\n }\n return {start: start, endA: endA, endB: endB}\n}\n\nfunction serializeForClipboard(view, slice) {\n var context = [];\n var content = slice.content;\n var openStart = slice.openStart;\n var openEnd = slice.openEnd;\n while (openStart > 1 && openEnd > 1 && content.childCount == 1 && content.firstChild.childCount == 1) {\n openStart--;\n openEnd--;\n var node = content.firstChild;\n context.push(node.type.name, node.type.hasRequiredAttrs() ? node.attrs : null);\n content = node.content;\n }\n\n var serializer = view.someProp(\"clipboardSerializer\") || DOMSerializer.fromSchema(view.state.schema);\n var doc = detachedDoc(), wrap = doc.createElement(\"div\");\n wrap.appendChild(serializer.serializeFragment(content, {document: doc}));\n\n var firstChild = wrap.firstChild, needsWrap;\n while (firstChild && firstChild.nodeType == 1 && (needsWrap = wrapMap[firstChild.nodeName.toLowerCase()])) {\n for (var i = needsWrap.length - 1; i >= 0; i--) {\n var wrapper = doc.createElement(needsWrap[i]);\n while (wrap.firstChild) { wrapper.appendChild(wrap.firstChild); }\n wrap.appendChild(wrapper);\n }\n firstChild = wrap.firstChild;\n }\n\n if (firstChild && firstChild.nodeType == 1)\n { firstChild.setAttribute(\"data-pm-slice\", (openStart + \" \" + openEnd + \" \" + (JSON.stringify(context)))); }\n\n var text = view.someProp(\"clipboardTextSerializer\", function (f) { return f(slice); }) ||\n slice.content.textBetween(0, slice.content.size, \"\\n\\n\");\n\n return {dom: wrap, text: text}\n}\n\n// : (EditorView, string, string, ?bool, ResolvedPos) → ?Slice\n// Read a slice of content from the clipboard (or drop data).\nfunction parseFromClipboard(view, text, html, plainText, $context) {\n var dom, inCode = $context.parent.type.spec.code, slice;\n if (!html && !text) { return null }\n var asText = text && (plainText || inCode || !html);\n if (asText) {\n view.someProp(\"transformPastedText\", function (f) { text = f(text, inCode || plainText); });\n if (inCode) { return new Slice(Fragment.from(view.state.schema.text(text)), 0, 0) }\n var parsed = view.someProp(\"clipboardTextParser\", function (f) { return f(text, $context, plainText); });\n if (parsed) {\n slice = parsed;\n } else {\n dom = document.createElement(\"div\");\n text.trim().split(/(?:\\r\\n?|\\n)+/).forEach(function (block) {\n dom.appendChild(document.createElement(\"p\")).textContent = block;\n });\n }\n } else {\n view.someProp(\"transformPastedHTML\", function (f) { html = f(html); });\n dom = readHTML(html);\n }\n\n var contextNode = dom && dom.querySelector(\"[data-pm-slice]\");\n var sliceData = contextNode && /^(\\d+) (\\d+) (.*)/.exec(contextNode.getAttribute(\"data-pm-slice\"));\n if (!slice) {\n var parser = view.someProp(\"clipboardParser\") || view.someProp(\"domParser\") || DOMParser.fromSchema(view.state.schema);\n slice = parser.parseSlice(dom, {preserveWhitespace: !!(asText || sliceData), context: $context});\n }\n if (sliceData)\n { slice = addContext(closeSlice(slice, +sliceData[1], +sliceData[2]), sliceData[3]); }\n else // HTML wasn't created by ProseMirror. Make sure top-level siblings are coherent\n { slice = Slice.maxOpen(normalizeSiblings(slice.content, $context), false); }\n\n view.someProp(\"transformPasted\", function (f) { slice = f(slice); });\n return slice\n}\n\n// Takes a slice parsed with parseSlice, which means there hasn't been\n// any content-expression checking done on the top nodes, tries to\n// find a parent node in the current context that might fit the nodes,\n// and if successful, rebuilds the slice so that it fits into that parent.\n//\n// This addresses the problem that Transform.replace expects a\n// coherent slice, and will fail to place a set of siblings that don't\n// fit anywhere in the schema.\nfunction normalizeSiblings(fragment, $context) {\n if (fragment.childCount < 2) { return fragment }\n var loop = function ( d ) {\n var parent = $context.node(d);\n var match = parent.contentMatchAt($context.index(d));\n var lastWrap = (void 0), result = [];\n fragment.forEach(function (node) {\n if (!result) { return }\n var wrap = match.findWrapping(node.type), inLast;\n if (!wrap) { return result = null }\n if (inLast = result.length && lastWrap.length && addToSibling(wrap, lastWrap, node, result[result.length - 1], 0)) {\n result[result.length - 1] = inLast;\n } else {\n if (result.length) { result[result.length - 1] = closeRight(result[result.length - 1], lastWrap.length); }\n var wrapped = withWrappers(node, wrap);\n result.push(wrapped);\n match = match.matchType(wrapped.type, wrapped.attrs);\n lastWrap = wrap;\n }\n });\n if (result) { return { v: Fragment.from(result) } }\n };\n\n for (var d = $context.depth; d >= 0; d--) {\n var returned = loop( d );\n\n if ( returned ) return returned.v;\n }\n return fragment\n}\n\nfunction withWrappers(node, wrap, from) {\n if ( from === void 0 ) from = 0;\n\n for (var i = wrap.length - 1; i >= from; i--)\n { node = wrap[i].create(null, Fragment.from(node)); }\n return node\n}\n\n// Used to group adjacent nodes wrapped in similar parents by\n// normalizeSiblings into the same parent node\nfunction addToSibling(wrap, lastWrap, node, sibling, depth) {\n if (depth < wrap.length && depth < lastWrap.length && wrap[depth] == lastWrap[depth]) {\n var inner = addToSibling(wrap, lastWrap, node, sibling.lastChild, depth + 1);\n if (inner) { return sibling.copy(sibling.content.replaceChild(sibling.childCount - 1, inner)) }\n var match = sibling.contentMatchAt(sibling.childCount);\n if (match.matchType(depth == wrap.length - 1 ? node.type : wrap[depth + 1]))\n { return sibling.copy(sibling.content.append(Fragment.from(withWrappers(node, wrap, depth + 1)))) }\n }\n}\n\nfunction closeRight(node, depth) {\n if (depth == 0) { return node }\n var fragment = node.content.replaceChild(node.childCount - 1, closeRight(node.lastChild, depth - 1));\n var fill = node.contentMatchAt(node.childCount).fillBefore(Fragment.empty, true);\n return node.copy(fragment.append(fill))\n}\n\nfunction closeRange(fragment, side, from, to, depth, openEnd) {\n var node = side < 0 ? fragment.firstChild : fragment.lastChild, inner = node.content;\n if (depth < to - 1) { inner = closeRange(inner, side, from, to, depth + 1, openEnd); }\n if (depth >= from)\n { inner = side < 0 ? node.contentMatchAt(0).fillBefore(inner, fragment.childCount > 1 || openEnd <= depth).append(inner)\n : inner.append(node.contentMatchAt(node.childCount).fillBefore(Fragment.empty, true)); }\n return fragment.replaceChild(side < 0 ? 0 : fragment.childCount - 1, node.copy(inner))\n}\n\nfunction closeSlice(slice, openStart, openEnd) {\n if (openStart < slice.openStart)\n { slice = new Slice(closeRange(slice.content, -1, openStart, slice.openStart, 0, slice.openEnd), openStart, slice.openEnd); }\n if (openEnd < slice.openEnd)\n { slice = new Slice(closeRange(slice.content, 1, openEnd, slice.openEnd, 0, 0), slice.openStart, openEnd); }\n return slice\n}\n\n// Trick from jQuery -- some elements must be wrapped in other\n// elements for innerHTML to work. I.e. if you do `div.innerHTML =\n// \"<td>..</td>\"` the table cells are ignored.\nvar wrapMap = {\n thead: [\"table\"],\n tbody: [\"table\"],\n tfoot: [\"table\"],\n caption: [\"table\"],\n colgroup: [\"table\"],\n col: [\"table\", \"colgroup\"],\n tr: [\"table\", \"tbody\"],\n td: [\"table\", \"tbody\", \"tr\"],\n th: [\"table\", \"tbody\", \"tr\"]\n};\n\nvar _detachedDoc = null;\nfunction detachedDoc() {\n return _detachedDoc || (_detachedDoc = document.implementation.createHTMLDocument(\"title\"))\n}\n\nfunction readHTML(html) {\n var metas = /(\\s*<meta [^>]*>)*/.exec(html);\n if (metas) { html = html.slice(metas[0].length); }\n var elt = detachedDoc().createElement(\"div\");\n var firstTag = /(?:<meta [^>]*>)*<([a-z][^>\\s]+)/i.exec(html), wrap, depth = 0;\n if (wrap = firstTag && wrapMap[firstTag[1].toLowerCase()]) {\n html = wrap.map(function (n) { return \"<\" + n + \">\"; }).join(\"\") + html + wrap.map(function (n) { return \"</\" + n + \">\"; }).reverse().join(\"\");\n depth = wrap.length;\n }\n elt.innerHTML = html;\n for (var i = 0; i < depth; i++) { elt = elt.firstChild; }\n return elt\n}\n\nfunction addContext(slice, context) {\n if (!slice.size) { return slice }\n var schema = slice.content.firstChild.type.schema, array;\n try { array = JSON.parse(context); }\n catch(e) { return slice }\n var content = slice.content;\n var openStart = slice.openStart;\n var openEnd = slice.openEnd;\n for (var i = array.length - 2; i >= 0; i -= 2) {\n var type = schema.nodes[array[i]];\n if (!type || type.hasRequiredAttrs()) { break }\n content = Fragment.from(type.create(array[i + 1], content));\n openStart++; openEnd++;\n }\n return new Slice(content, openStart, openEnd)\n}\n\nvar observeOptions = {\n childList: true,\n characterData: true,\n characterDataOldValue: true,\n attributes: true,\n attributeOldValue: true,\n subtree: true\n};\n// IE11 has very broken mutation observers, so we also listen to DOMCharacterDataModified\nvar useCharData = result.ie && result.ie_version <= 11;\n\nvar SelectionState = function SelectionState() {\n this.anchorNode = this.anchorOffset = this.focusNode = this.focusOffset = null;\n};\n\nSelectionState.prototype.set = function set (sel) {\n this.anchorNode = sel.anchorNode; this.anchorOffset = sel.anchorOffset;\n this.focusNode = sel.focusNode; this.focusOffset = sel.focusOffset;\n};\n\nSelectionState.prototype.eq = function eq (sel) {\n return sel.anchorNode == this.anchorNode && sel.anchorOffset == this.anchorOffset &&\n sel.focusNode == this.focusNode && sel.focusOffset == this.focusOffset\n};\n\nvar DOMObserver = function DOMObserver(view, handleDOMChange) {\n var this$1 = this;\n\n this.view = view;\n this.handleDOMChange = handleDOMChange;\n this.queue = [];\n this.flushingSoon = -1;\n this.observer = window.MutationObserver &&\n new window.MutationObserver(function (mutations) {\n for (var i = 0; i < mutations.length; i++) { this$1.queue.push(mutations[i]); }\n // IE11 will sometimes (on backspacing out a single character\n // text node after a BR node) call the observer callback\n // before actually updating the DOM, which will cause\n // ProseMirror to miss the change (see #930)\n if (result.ie && result.ie_version <= 11 && mutations.some(\n function (m) { return m.type == \"childList\" && m.removedNodes.length ||\n m.type == \"characterData\" && m.oldValue.length > m.target.nodeValue.length; }))\n { this$1.flushSoon(); }\n else\n { this$1.flush(); }\n });\n this.currentSelection = new SelectionState;\n if (useCharData) {\n this.onCharData = function (e) {\n this$1.queue.push({target: e.target, type: \"characterData\", oldValue: e.prevValue});\n this$1.flushSoon();\n };\n }\n this.onSelectionChange = this.onSelectionChange.bind(this);\n this.suppressingSelectionUpdates = false;\n};\n\nDOMObserver.prototype.flushSoon = function flushSoon () {\n var this$1 = this;\n\n if (this.flushingSoon < 0)\n { this.flushingSoon = window.setTimeout(function () { this$1.flushingSoon = -1; this$1.flush(); }, 20); }\n};\n\nDOMObserver.prototype.forceFlush = function forceFlush () {\n if (this.flushingSoon > -1) {\n window.clearTimeout(this.flushingSoon);\n this.flushingSoon = -1;\n this.flush();\n }\n};\n\nDOMObserver.prototype.start = function start () {\n if (this.observer)\n { this.observer.observe(this.view.dom, observeOptions); }\n if (useCharData)\n { this.view.dom.addEventListener(\"DOMCharacterDataModified\", this.onCharData); }\n this.connectSelection();\n};\n\nDOMObserver.prototype.stop = function stop () {\n var this$1 = this;\n\n if (this.observer) {\n var take = this.observer.takeRecords();\n if (take.length) {\n for (var i = 0; i < take.length; i++) { this.queue.push(take[i]); }\n window.setTimeout(function () { return this$1.flush(); }, 20);\n }\n this.observer.disconnect();\n }\n if (useCharData) { this.view.dom.removeEventListener(\"DOMCharacterDataModified\", this.onCharData); }\n this.disconnectSelection();\n};\n\nDOMObserver.prototype.connectSelection = function connectSelection () {\n this.view.dom.ownerDocument.addEventListener(\"selectionchange\", this.onSelectionChange);\n};\n\nDOMObserver.prototype.disconnectSelection = function disconnectSelection () {\n this.view.dom.ownerDocument.removeEventListener(\"selectionchange\", this.onSelectionChange);\n};\n\nDOMObserver.prototype.suppressSelectionUpdates = function suppressSelectionUpdates () {\n var this$1 = this;\n\n this.suppressingSelectionUpdates = true;\n setTimeout(function () { return this$1.suppressingSelectionUpdates = false; }, 50);\n};\n\nDOMObserver.prototype.onSelectionChange = function onSelectionChange () {\n if (!hasFocusAndSelection(this.view)) { return }\n if (this.suppressingSelectionUpdates) { return selectionToDOM(this.view) }\n // Deletions on IE11 fire their events in the wrong order, giving\n // us a selection change event before the DOM changes are\n // reported.\n if (result.ie && result.ie_version <= 11 && !this.view.state.selection.empty) {\n var sel = this.view.root.getSelection();\n // Selection.isCollapsed isn't reliable on IE\n if (sel.focusNode && isEquivalentPosition(sel.focusNode, sel.focusOffset, sel.anchorNode, sel.anchorOffset))\n { return this.flushSoon() }\n }\n this.flush();\n};\n\nDOMObserver.prototype.setCurSelection = function setCurSelection () {\n this.currentSelection.set(this.view.root.getSelection());\n};\n\nDOMObserver.prototype.ignoreSelectionChange = function ignoreSelectionChange (sel) {\n if (sel.rangeCount == 0) { return true }\n var container = sel.getRangeAt(0).commonAncestorContainer;\n var desc = this.view.docView.nearestDesc(container);\n if (desc && desc.ignoreMutation({type: \"selection\", target: container.nodeType == 3 ? container.parentNode : container})) {\n this.setCurSelection();\n return true\n }\n};\n\nDOMObserver.prototype.flush = function flush () {\n if (!this.view.docView || this.flushingSoon > -1) { return }\n var mutations = this.observer ? this.observer.takeRecords() : [];\n if (this.queue.length) {\n mutations = this.queue.concat(mutations);\n this.queue.length = 0;\n }\n\n var sel = this.view.root.getSelection();\n var newSel = !this.suppressingSelectionUpdates && !this.currentSelection.eq(sel) && hasSelection(this.view) && !this.ignoreSelectionChange(sel);\n\n var from = -1, to = -1, typeOver = false, added = [];\n if (this.view.editable) {\n for (var i = 0; i < mutations.length; i++) {\n var result$1 = this.registerMutation(mutations[i], added);\n if (result$1) {\n from = from < 0 ? result$1.from : Math.min(result$1.from, from);\n to = to < 0 ? result$1.to : Math.max(result$1.to, to);\n if (result$1.typeOver) { typeOver = true; }\n }\n }\n }\n\n if (result.gecko && added.length > 1) {\n var brs = added.filter(function (n) { return n.nodeName == \"BR\"; });\n if (brs.length == 2) {\n var a = brs[0];\n var b = brs[1];\n if (a.parentNode && a.parentNode.parentNode == b.parentNode) { b.remove(); }\n else { a.remove(); }\n }\n }\n\n if (from > -1 || newSel) {\n if (from > -1) {\n this.view.docView.markDirty(from, to);\n checkCSS(this.view);\n }\n this.handleDOMChange(from, to, typeOver, added);\n if (this.view.docView.dirty) { this.view.updateState(this.view.state); }\n else if (!this.currentSelection.eq(sel)) { selectionToDOM(this.view); }\n }\n};\n\nDOMObserver.prototype.registerMutation = function registerMutation (mut, added) {\n // Ignore mutations inside nodes that were already noted as inserted\n if (added.indexOf(mut.target) > -1) { return null }\n var desc = this.view.docView.nearestDesc(mut.target);\n if (mut.type == \"attributes\" &&\n (desc == this.view.docView || mut.attributeName == \"contenteditable\" ||\n // Firefox sometimes fires spurious events for null/empty styles\n (mut.attributeName == \"style\" && !mut.oldValue && !mut.target.getAttribute(\"style\"))))\n { return null }\n if (!desc || desc.ignoreMutation(mut)) { return null }\n\n if (mut.type == \"childList\") {\n var prev = mut.previousSibling, next = mut.nextSibling;\n if (result.ie && result.ie_version <= 11 && mut.addedNodes.length) {\n // IE11 gives us incorrect next/prev siblings for some\n // insertions, so if there are added nodes, recompute those\n for (var i = 0; i < mut.addedNodes.length; i++) {\n var ref = mut.addedNodes[i];\n var previousSibling = ref.previousSibling;\n var nextSibling = ref.nextSibling;\n if (!previousSibling || Array.prototype.indexOf.call(mut.addedNodes, previousSibling) < 0) { prev = previousSibling; }\n if (!nextSibling || Array.prototype.indexOf.call(mut.addedNodes, nextSibling) < 0) { next = nextSibling; }\n }\n }\n var fromOffset = prev && prev.parentNode == mut.target\n ? domIndex(prev) + 1 : 0;\n var from = desc.localPosFromDOM(mut.target, fromOffset, -1);\n var toOffset = next && next.parentNode == mut.target\n ? domIndex(next) : mut.target.childNodes.length;\n for (var i$1 = 0; i$1 < mut.addedNodes.length; i$1++) { added.push(mut.addedNodes[i$1]); }\n var to = desc.localPosFromDOM(mut.target, toOffset, 1);\n return {from: from, to: to}\n } else if (mut.type == \"attributes\") {\n return {from: desc.posAtStart - desc.border, to: desc.posAtEnd + desc.border}\n } else { // \"characterData\"\n return {\n from: desc.posAtStart,\n to: desc.posAtEnd,\n // An event was generated for a text change that didn't change\n // any text. Mark the dom change to fall back to assuming the\n // selection was typed over with an identical value if it can't\n // find another change.\n typeOver: mut.target.nodeValue == mut.oldValue\n }\n }\n};\n\nvar cssChecked = false;\n\nfunction checkCSS(view) {\n if (cssChecked) { return }\n cssChecked = true;\n if (getComputedStyle(view.dom).whiteSpace == \"normal\")\n { console[\"warn\"](\"ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package.\"); }\n}\n\n// A collection of DOM events that occur within the editor, and callback functions\n// to invoke when the event fires.\nvar handlers = {}, editHandlers = {};\n\nfunction initInput(view) {\n view.shiftKey = false;\n view.mouseDown = null;\n view.lastKeyCode = null;\n view.lastKeyCodeTime = 0;\n view.lastClick = {time: 0, x: 0, y: 0, type: \"\"};\n view.lastSelectionOrigin = null;\n view.lastSelectionTime = 0;\n\n view.lastIOSEnter = 0;\n view.lastIOSEnterFallbackTimeout = null;\n\n view.composing = false;\n view.composingTimeout = null;\n view.compositionNodes = [];\n view.compositionEndedAt = -2e8;\n\n view.domObserver = new DOMObserver(view, function (from, to, typeOver, added) { return readDOMChange(view, from, to, typeOver, added); });\n view.domObserver.start();\n // Used by hacks like the beforeinput handler to check whether anything happened in the DOM\n view.domChangeCount = 0;\n\n view.eventHandlers = Object.create(null);\n var loop = function ( event ) {\n var handler = handlers[event];\n view.dom.addEventListener(event, view.eventHandlers[event] = function (event) {\n if (eventBelongsToView(view, event) && !runCustomHandler(view, event) &&\n (view.editable || !(event.type in editHandlers)))\n { handler(view, event); }\n });\n };\n\n for (var event in handlers) loop( event );\n // On Safari, for reasons beyond my understanding, adding an input\n // event handler makes an issue where the composition vanishes when\n // you press enter go away.\n if (result.safari) { view.dom.addEventListener(\"input\", function () { return null; }); }\n\n ensureListeners(view);\n}\n\nfunction setSelectionOrigin(view, origin) {\n view.lastSelectionOrigin = origin;\n view.lastSelectionTime = Date.now();\n}\n\nfunction destroyInput(view) {\n view.domObserver.stop();\n for (var type in view.eventHandlers)\n { view.dom.removeEventListener(type, view.eventHandlers[type]); }\n clearTimeout(view.composingTimeout);\n clearTimeout(view.lastIOSEnterFallbackTimeout);\n}\n\nfunction ensureListeners(view) {\n view.someProp(\"handleDOMEvents\", function (currentHandlers) {\n for (var type in currentHandlers) { if (!view.eventHandlers[type])\n { view.dom.addEventListener(type, view.eventHandlers[type] = function (event) { return runCustomHandler(view, event); }); } }\n });\n}\n\nfunction runCustomHandler(view, event) {\n return view.someProp(\"handleDOMEvents\", function (handlers) {\n var handler = handlers[event.type];\n return handler ? handler(view, event) || event.defaultPrevented : false\n })\n}\n\nfunction eventBelongsToView(view, event) {\n if (!event.bubbles) { return true }\n if (event.defaultPrevented) { return false }\n for (var node = event.target; node != view.dom; node = node.parentNode)\n { if (!node || node.nodeType == 11 ||\n (node.pmViewDesc && node.pmViewDesc.stopEvent(event)))\n { return false } }\n return true\n}\n\nfunction dispatchEvent(view, event) {\n if (!runCustomHandler(view, event) && handlers[event.type] &&\n (view.editable || !(event.type in editHandlers)))\n { handlers[event.type](view, event); }\n}\n\neditHandlers.keydown = function (view, event) {\n view.shiftKey = event.keyCode == 16 || event.shiftKey;\n if (inOrNearComposition(view, event)) { return }\n view.domObserver.forceFlush();\n view.lastKeyCode = event.keyCode;\n view.lastKeyCodeTime = Date.now();\n // On iOS, if we preventDefault enter key presses, the virtual\n // keyboard gets confused. So the hack here is to set a flag that\n // makes the DOM change code recognize that what just happens should\n // be replaced by whatever the Enter key handlers do.\n if (result.ios && event.keyCode == 13 && !event.ctrlKey && !event.altKey && !event.metaKey) {\n var now = Date.now();\n view.lastIOSEnter = now;\n view.lastIOSEnterFallbackTimeout = setTimeout(function () {\n if (view.lastIOSEnter == now) {\n view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(13, \"Enter\")); });\n view.lastIOSEnter = 0;\n }\n }, 200);\n } else if (view.someProp(\"handleKeyDown\", function (f) { return f(view, event); }) || captureKeyDown(view, event)) {\n event.preventDefault();\n } else {\n setSelectionOrigin(view, \"key\");\n }\n};\n\neditHandlers.keyup = function (view, e) {\n if (e.keyCode == 16) { view.shiftKey = false; }\n};\n\neditHandlers.keypress = function (view, event) {\n if (inOrNearComposition(view, event) || !event.charCode ||\n event.ctrlKey && !event.altKey || result.mac && event.metaKey) { return }\n\n if (view.someProp(\"handleKeyPress\", function (f) { return f(view, event); })) {\n event.preventDefault();\n return\n }\n\n var sel = view.state.selection;\n if (!(sel instanceof TextSelection) || !sel.$from.sameParent(sel.$to)) {\n var text = String.fromCharCode(event.charCode);\n if (!view.someProp(\"handleTextInput\", function (f) { return f(view, sel.$from.pos, sel.$to.pos, text); }))\n { view.dispatch(view.state.tr.insertText(text).scrollIntoView()); }\n event.preventDefault();\n }\n};\n\nfunction eventCoords(event) { return {left: event.clientX, top: event.clientY} }\n\nfunction isNear(event, click) {\n var dx = click.x - event.clientX, dy = click.y - event.clientY;\n return dx * dx + dy * dy < 100\n}\n\nfunction runHandlerOnContext(view, propName, pos, inside, event) {\n if (inside == -1) { return false }\n var $pos = view.state.doc.resolve(inside);\n var loop = function ( i ) {\n if (view.someProp(propName, function (f) { return i > $pos.depth ? f(view, pos, $pos.nodeAfter, $pos.before(i), event, true)\n : f(view, pos, $pos.node(i), $pos.before(i), event, false); }))\n { return { v: true } }\n };\n\n for (var i = $pos.depth + 1; i > 0; i--) {\n var returned = loop( i );\n\n if ( returned ) return returned.v;\n }\n return false\n}\n\nfunction updateSelection(view, selection, origin) {\n if (!view.focused) { view.focus(); }\n var tr = view.state.tr.setSelection(selection);\n if (origin == \"pointer\") { tr.setMeta(\"pointer\", true); }\n view.dispatch(tr);\n}\n\nfunction selectClickedLeaf(view, inside) {\n if (inside == -1) { return false }\n var $pos = view.state.doc.resolve(inside), node = $pos.nodeAfter;\n if (node && node.isAtom && NodeSelection.isSelectable(node)) {\n updateSelection(view, new NodeSelection($pos), \"pointer\");\n return true\n }\n return false\n}\n\nfunction selectClickedNode(view, inside) {\n if (inside == -1) { return false }\n var sel = view.state.selection, selectedNode, selectAt;\n if (sel instanceof NodeSelection) { selectedNode = sel.node; }\n\n var $pos = view.state.doc.resolve(inside);\n for (var i = $pos.depth + 1; i > 0; i--) {\n var node = i > $pos.depth ? $pos.nodeAfter : $pos.node(i);\n if (NodeSelection.isSelectable(node)) {\n if (selectedNode && sel.$from.depth > 0 &&\n i >= sel.$from.depth && $pos.before(sel.$from.depth + 1) == sel.$from.pos)\n { selectAt = $pos.before(sel.$from.depth); }\n else\n { selectAt = $pos.before(i); }\n break\n }\n }\n\n if (selectAt != null) {\n updateSelection(view, NodeSelection.create(view.state.doc, selectAt), \"pointer\");\n return true\n } else {\n return false\n }\n}\n\nfunction handleSingleClick(view, pos, inside, event, selectNode) {\n return runHandlerOnContext(view, \"handleClickOn\", pos, inside, event) ||\n view.someProp(\"handleClick\", function (f) { return f(view, pos, event); }) ||\n (selectNode ? selectClickedNode(view, inside) : selectClickedLeaf(view, inside))\n}\n\nfunction handleDoubleClick(view, pos, inside, event) {\n return runHandlerOnContext(view, \"handleDoubleClickOn\", pos, inside, event) ||\n view.someProp(\"handleDoubleClick\", function (f) { return f(view, pos, event); })\n}\n\nfunction handleTripleClick(view, pos, inside, event) {\n return runHandlerOnContext(view, \"handleTripleClickOn\", pos, inside, event) ||\n view.someProp(\"handleTripleClick\", function (f) { return f(view, pos, event); }) ||\n defaultTripleClick(view, inside)\n}\n\nfunction defaultTripleClick(view, inside) {\n var doc = view.state.doc;\n if (inside == -1) {\n if (doc.inlineContent) {\n updateSelection(view, TextSelection.create(doc, 0, doc.content.size), \"pointer\");\n return true\n }\n return false\n }\n\n var $pos = doc.resolve(inside);\n for (var i = $pos.depth + 1; i > 0; i--) {\n var node = i > $pos.depth ? $pos.nodeAfter : $pos.node(i);\n var nodePos = $pos.before(i);\n if (node.inlineContent)\n { updateSelection(view, TextSelection.create(doc, nodePos + 1, nodePos + 1 + node.content.size), \"pointer\"); }\n else if (NodeSelection.isSelectable(node))\n { updateSelection(view, NodeSelection.create(doc, nodePos), \"pointer\"); }\n else\n { continue }\n return true\n }\n}\n\nfunction forceDOMFlush(view) {\n return endComposition(view)\n}\n\nvar selectNodeModifier = result.mac ? \"metaKey\" : \"ctrlKey\";\n\nhandlers.mousedown = function (view, event) {\n view.shiftKey = event.shiftKey;\n var flushed = forceDOMFlush(view);\n var now = Date.now(), type = \"singleClick\";\n if (now - view.lastClick.time < 500 && isNear(event, view.lastClick) && !event[selectNodeModifier]) {\n if (view.lastClick.type == \"singleClick\") { type = \"doubleClick\"; }\n else if (view.lastClick.type == \"doubleClick\") { type = \"tripleClick\"; }\n }\n view.lastClick = {time: now, x: event.clientX, y: event.clientY, type: type};\n\n var pos = view.posAtCoords(eventCoords(event));\n if (!pos) { return }\n\n if (type == \"singleClick\")\n { view.mouseDown = new MouseDown(view, pos, event, flushed); }\n else if ((type == \"doubleClick\" ? handleDoubleClick : handleTripleClick)(view, pos.pos, pos.inside, event))\n { event.preventDefault(); }\n else\n { setSelectionOrigin(view, \"pointer\"); }\n};\n\nvar MouseDown = function MouseDown(view, pos, event, flushed) {\n var this$1 = this;\n\n this.view = view;\n this.startDoc = view.state.doc;\n this.pos = pos;\n this.event = event;\n this.flushed = flushed;\n this.selectNode = event[selectNodeModifier];\n this.allowDefault = event.shiftKey;\n\n var targetNode, targetPos;\n if (pos.inside > -1) {\n targetNode = view.state.doc.nodeAt(pos.inside);\n targetPos = pos.inside;\n } else {\n var $pos = view.state.doc.resolve(pos.pos);\n targetNode = $pos.parent;\n targetPos = $pos.depth ? $pos.before() : 0;\n }\n\n this.mightDrag = null;\n\n var target = flushed ? null : event.target;\n var targetDesc = target ? view.docView.nearestDesc(target, true) : null;\n this.target = targetDesc ? targetDesc.dom : null;\n\n if (targetNode.type.spec.draggable && targetNode.type.spec.selectable !== false ||\n view.state.selection instanceof NodeSelection && targetPos == view.state.selection.from)\n { this.mightDrag = {node: targetNode,\n pos: targetPos,\n addAttr: this.target && !this.target.draggable,\n setUneditable: this.target && result.gecko && !this.target.hasAttribute(\"contentEditable\")}; }\n\n if (this.target && this.mightDrag && (this.mightDrag.addAttr || this.mightDrag.setUneditable)) {\n this.view.domObserver.stop();\n if (this.mightDrag.addAttr) { this.target.draggable = true; }\n if (this.mightDrag.setUneditable)\n { setTimeout(function () { return this$1.target.setAttribute(\"contentEditable\", \"false\"); }, 20); }\n this.view.domObserver.start();\n }\n\n view.root.addEventListener(\"mouseup\", this.up = this.up.bind(this));\n view.root.addEventListener(\"mousemove\", this.move = this.move.bind(this));\n setSelectionOrigin(view, \"pointer\");\n};\n\nMouseDown.prototype.done = function done () {\n this.view.root.removeEventListener(\"mouseup\", this.up);\n this.view.root.removeEventListener(\"mousemove\", this.move);\n if (this.mightDrag && this.target) {\n this.view.domObserver.stop();\n if (this.mightDrag.addAttr) { this.target.removeAttribute(\"draggable\"); }\n if (this.mightDrag.setUneditable) { this.target.removeAttribute(\"contentEditable\"); }\n this.view.domObserver.start();\n }\n this.view.mouseDown = null;\n};\n\nMouseDown.prototype.up = function up (event) {\n this.done();\n\n if (!this.view.dom.contains(event.target.nodeType == 3 ? event.target.parentNode : event.target))\n { return }\n\n var pos = this.pos;\n if (this.view.state.doc != this.startDoc) { pos = this.view.posAtCoords(eventCoords(event)); }\n\n if (this.allowDefault || !pos) {\n setSelectionOrigin(this.view, \"pointer\");\n } else if (handleSingleClick(this.view, pos.pos, pos.inside, event, this.selectNode)) {\n event.preventDefault();\n } else if (this.flushed ||\n // Safari ignores clicks on draggable elements\n (result.safari && this.mightDrag && !this.mightDrag.node.isAtom) ||\n // Chrome will sometimes treat a node selection as a\n // cursor, but still report that the node is selected\n // when asked through getSelection. You'll then get a\n // situation where clicking at the point where that\n // (hidden) cursor is doesn't change the selection, and\n // thus doesn't get a reaction from ProseMirror. This\n // works around that.\n (result.chrome && !(this.view.state.selection instanceof TextSelection) &&\n (pos.pos == this.view.state.selection.from || pos.pos == this.view.state.selection.to))) {\n updateSelection(this.view, Selection.near(this.view.state.doc.resolve(pos.pos)), \"pointer\");\n event.preventDefault();\n } else {\n setSelectionOrigin(this.view, \"pointer\");\n }\n};\n\nMouseDown.prototype.move = function move (event) {\n if (!this.allowDefault && (Math.abs(this.event.x - event.clientX) > 4 ||\n Math.abs(this.event.y - event.clientY) > 4))\n { this.allowDefault = true; }\n setSelectionOrigin(this.view, \"pointer\");\n};\n\nhandlers.touchdown = function (view) {\n forceDOMFlush(view);\n setSelectionOrigin(view, \"pointer\");\n};\n\nhandlers.contextmenu = function (view) { return forceDOMFlush(view); };\n\nfunction inOrNearComposition(view, event) {\n if (view.composing) { return true }\n // See https://www.stum.de/2016/06/24/handling-ime-events-in-javascript/.\n // On Japanese input method editors (IMEs), the Enter key is used to confirm character\n // selection. On Safari, when Enter is pressed, compositionend and keydown events are\n // emitted. The keydown event triggers newline insertion, which we don't want.\n // This method returns true if the keydown event should be ignored.\n // We only ignore it once, as pressing Enter a second time *should* insert a newline.\n // Furthermore, the keydown event timestamp must be close to the compositionEndedAt timestamp.\n // This guards against the case where compositionend is triggered without the keyboard\n // (e.g. character confirmation may be done with the mouse), and keydown is triggered\n // afterwards- we wouldn't want to ignore the keydown event in this case.\n if (result.safari && Math.abs(event.timeStamp - view.compositionEndedAt) < 500) {\n view.compositionEndedAt = -2e8;\n return true\n }\n return false\n}\n\n// Drop active composition after 5 seconds of inactivity on Android\nvar timeoutComposition = result.android ? 5000 : -1;\n\neditHandlers.compositionstart = editHandlers.compositionupdate = function (view) {\n if (!view.composing) {\n view.domObserver.flush();\n var state = view.state;\n var $pos = state.selection.$from;\n if (state.selection.empty &&\n (state.storedMarks || (!$pos.textOffset && $pos.parentOffset && $pos.nodeBefore.marks.some(function (m) { return m.type.spec.inclusive === false; })))) {\n // Need to wrap the cursor in mark nodes different from the ones in the DOM context\n view.markCursor = view.state.storedMarks || $pos.marks();\n endComposition(view, true);\n view.markCursor = null;\n } else {\n endComposition(view);\n // In firefox, if the cursor is after but outside a marked node,\n // the inserted text won't inherit the marks. So this moves it\n // inside if necessary.\n if (result.gecko && state.selection.empty && $pos.parentOffset && !$pos.textOffset && $pos.nodeBefore.marks.length) {\n var sel = view.root.getSelection();\n for (var node = sel.focusNode, offset = sel.focusOffset; node && node.nodeType == 1 && offset != 0;) {\n var before = offset < 0 ? node.lastChild : node.childNodes[offset - 1];\n if (!before) { break }\n if (before.nodeType == 3) {\n sel.collapse(before, before.nodeValue.length);\n break\n } else {\n node = before;\n offset = -1;\n }\n }\n }\n }\n view.composing = true;\n }\n scheduleComposeEnd(view, timeoutComposition);\n};\n\neditHandlers.compositionend = function (view, event) {\n if (view.composing) {\n view.composing = false;\n view.compositionEndedAt = event.timeStamp;\n scheduleComposeEnd(view, 20);\n }\n};\n\nfunction scheduleComposeEnd(view, delay) {\n clearTimeout(view.composingTimeout);\n if (delay > -1) { view.composingTimeout = setTimeout(function () { return endComposition(view); }, delay); }\n}\n\nfunction clearComposition(view) {\n view.composing = false;\n while (view.compositionNodes.length > 0) { view.compositionNodes.pop().markParentsDirty(); }\n}\n\nfunction endComposition(view, forceUpdate) {\n view.domObserver.forceFlush();\n clearComposition(view);\n if (forceUpdate || view.docView.dirty) {\n var sel = selectionFromDOM(view);\n if (sel && !sel.eq(view.state.selection)) { view.dispatch(view.state.tr.setSelection(sel)); }\n else { view.updateState(view.state); }\n return true\n }\n return false\n}\n\nfunction captureCopy(view, dom) {\n // The extra wrapper is somehow necessary on IE/Edge to prevent the\n // content from being mangled when it is put onto the clipboard\n if (!view.dom.parentNode) { return }\n var wrap = view.dom.parentNode.appendChild(document.createElement(\"div\"));\n wrap.appendChild(dom);\n wrap.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n var sel = getSelection(), range = document.createRange();\n range.selectNodeContents(dom);\n // Done because IE will fire a selectionchange moving the selection\n // to its start when removeAllRanges is called and the editor still\n // has focus (which will mess up the editor's selection state).\n view.dom.blur();\n sel.removeAllRanges();\n sel.addRange(range);\n setTimeout(function () {\n if (wrap.parentNode) { wrap.parentNode.removeChild(wrap); }\n view.focus();\n }, 50);\n}\n\n// This is very crude, but unfortunately both these browsers _pretend_\n// that they have a clipboard API—all the objects and methods are\n// there, they just don't work, and they are hard to test.\nvar brokenClipboardAPI = (result.ie && result.ie_version < 15) ||\n (result.ios && result.webkit_version < 604);\n\nhandlers.copy = editHandlers.cut = function (view, e) {\n var sel = view.state.selection, cut = e.type == \"cut\";\n if (sel.empty) { return }\n\n // IE and Edge's clipboard interface is completely broken\n var data = brokenClipboardAPI ? null : e.clipboardData;\n var slice = sel.content();\n var ref = serializeForClipboard(view, slice);\n var dom = ref.dom;\n var text = ref.text;\n if (data) {\n e.preventDefault();\n data.clearData();\n data.setData(\"text/html\", dom.innerHTML);\n data.setData(\"text/plain\", text);\n } else {\n captureCopy(view, dom);\n }\n if (cut) { view.dispatch(view.state.tr.deleteSelection().scrollIntoView().setMeta(\"uiEvent\", \"cut\")); }\n};\n\nfunction sliceSingleNode(slice) {\n return slice.openStart == 0 && slice.openEnd == 0 && slice.content.childCount == 1 ? slice.content.firstChild : null\n}\n\nfunction capturePaste(view, e) {\n if (!view.dom.parentNode) { return }\n var plainText = view.shiftKey || view.state.selection.$from.parent.type.spec.code;\n var target = view.dom.parentNode.appendChild(document.createElement(plainText ? \"textarea\" : \"div\"));\n if (!plainText) { target.contentEditable = \"true\"; }\n target.style.cssText = \"position: fixed; left: -10000px; top: 10px\";\n target.focus();\n setTimeout(function () {\n view.focus();\n if (target.parentNode) { target.parentNode.removeChild(target); }\n if (plainText) { doPaste(view, target.value, null, e); }\n else { doPaste(view, target.textContent, target.innerHTML, e); }\n }, 50);\n}\n\nfunction doPaste(view, text, html, e) {\n var slice = parseFromClipboard(view, text, html, view.shiftKey, view.state.selection.$from);\n if (view.someProp(\"handlePaste\", function (f) { return f(view, e, slice || Slice.empty); }) || !slice) { return }\n\n var singleNode = sliceSingleNode(slice);\n var tr = singleNode ? view.state.tr.replaceSelectionWith(singleNode, view.shiftKey) : view.state.tr.replaceSelection(slice);\n view.dispatch(tr.scrollIntoView().setMeta(\"paste\", true).setMeta(\"uiEvent\", \"paste\"));\n}\n\neditHandlers.paste = function (view, e) {\n var data = brokenClipboardAPI ? null : e.clipboardData;\n var html = data && data.getData(\"text/html\"), text = data && data.getData(\"text/plain\");\n if (data && (html || text || data.files.length)) {\n doPaste(view, text, html, e);\n e.preventDefault();\n } else {\n capturePaste(view, e);\n }\n};\n\nvar Dragging = function Dragging(slice, move) {\n this.slice = slice;\n this.move = move;\n};\n\nvar dragCopyModifier = result.mac ? \"altKey\" : \"ctrlKey\";\n\nhandlers.dragstart = function (view, e) {\n var mouseDown = view.mouseDown;\n if (mouseDown) { mouseDown.done(); }\n if (!e.dataTransfer) { return }\n\n var sel = view.state.selection;\n var pos = sel.empty ? null : view.posAtCoords(eventCoords(e));\n if (pos && pos.pos >= sel.from && pos.pos <= (sel instanceof NodeSelection ? sel.to - 1: sel.to)) ; else if (mouseDown && mouseDown.mightDrag) {\n view.dispatch(view.state.tr.setSelection(NodeSelection.create(view.state.doc, mouseDown.mightDrag.pos)));\n } else if (e.target && e.target.nodeType == 1) {\n var desc = view.docView.nearestDesc(e.target, true);\n if (!desc || !desc.node.type.spec.draggable || desc == view.docView) { return }\n view.dispatch(view.state.tr.setSelection(NodeSelection.create(view.state.doc, desc.posBefore)));\n }\n var slice = view.state.selection.content();\n var ref = serializeForClipboard(view, slice);\n var dom = ref.dom;\n var text = ref.text;\n e.dataTransfer.clearData();\n e.dataTransfer.setData(brokenClipboardAPI ? \"Text\" : \"text/html\", dom.innerHTML);\n if (!brokenClipboardAPI) { e.dataTransfer.setData(\"text/plain\", text); }\n view.dragging = new Dragging(slice, !e[dragCopyModifier]);\n};\n\nhandlers.dragend = function (view) {\n window.setTimeout(function () { return view.dragging = null; }, 50);\n};\n\neditHandlers.dragover = editHandlers.dragenter = function (_, e) { return e.preventDefault(); };\n\neditHandlers.drop = function (view, e) {\n var dragging = view.dragging;\n view.dragging = null;\n\n if (!e.dataTransfer) { return }\n\n var eventPos = view.posAtCoords(eventCoords(e));\n if (!eventPos) { return }\n var $mouse = view.state.doc.resolve(eventPos.pos);\n if (!$mouse) { return }\n var slice = dragging && dragging.slice ||\n parseFromClipboard(view, e.dataTransfer.getData(brokenClipboardAPI ? \"Text\" : \"text/plain\"),\n brokenClipboardAPI ? null : e.dataTransfer.getData(\"text/html\"), false, $mouse);\n if (view.someProp(\"handleDrop\", function (f) { return f(view, e, slice || Slice.empty, dragging && dragging.move); })) {\n e.preventDefault();\n return\n }\n if (!slice) { return }\n\n e.preventDefault();\n var insertPos = slice ? dropPoint(view.state.doc, $mouse.pos, slice) : $mouse.pos;\n if (insertPos == null) { insertPos = $mouse.pos; }\n\n var tr = view.state.tr;\n if (dragging && dragging.move) { tr.deleteSelection(); }\n\n var pos = tr.mapping.map(insertPos);\n var isNode = slice.openStart == 0 && slice.openEnd == 0 && slice.content.childCount == 1;\n var beforeInsert = tr.doc;\n if (isNode)\n { tr.replaceRangeWith(pos, pos, slice.content.firstChild); }\n else\n { tr.replaceRange(pos, pos, slice); }\n if (tr.doc.eq(beforeInsert)) { return }\n\n var $pos = tr.doc.resolve(pos);\n if (isNode && NodeSelection.isSelectable(slice.content.firstChild) &&\n $pos.nodeAfter && $pos.nodeAfter.sameMarkup(slice.content.firstChild))\n { tr.setSelection(new NodeSelection($pos)); }\n else\n { tr.setSelection(selectionBetween(view, $pos, tr.doc.resolve(tr.mapping.map(insertPos)))); }\n view.focus();\n view.dispatch(tr.setMeta(\"uiEvent\", \"drop\"));\n};\n\nhandlers.focus = function (view) {\n if (!view.focused) {\n view.domObserver.stop();\n view.dom.classList.add(\"ProseMirror-focused\");\n view.domObserver.start();\n view.focused = true;\n setTimeout(function () {\n if (view.docView && view.hasFocus() && !view.domObserver.currentSelection.eq(view.root.getSelection()))\n { selectionToDOM(view); }\n }, 20);\n }\n};\n\nhandlers.blur = function (view) {\n if (view.focused) {\n view.domObserver.stop();\n view.dom.classList.remove(\"ProseMirror-focused\");\n view.domObserver.start();\n view.domObserver.currentSelection.set({});\n view.focused = false;\n }\n};\n\nhandlers.beforeinput = function (view, event) {\n // We should probably do more with beforeinput events, but support\n // is so spotty that I'm still waiting to see where they are going.\n\n // Very specific hack to deal with backspace sometimes failing on\n // Chrome Android when after an uneditable node.\n if (result.chrome && result.android && event.inputType == \"deleteContentBackward\") {\n var domChangeCount = view.domChangeCount;\n setTimeout(function () {\n if (view.domChangeCount != domChangeCount) { return } // Event already had some effect\n // This bug tends to close the virtual keyboard, so we refocus\n view.dom.blur();\n view.focus();\n if (view.someProp(\"handleKeyDown\", function (f) { return f(view, keyEvent(8, \"Backspace\")); })) { return }\n var ref = view.state.selection;\n var $cursor = ref.$cursor;\n // Crude approximation of backspace behavior when no command handled it\n if ($cursor && $cursor.pos > 0) { view.dispatch(view.state.tr.delete($cursor.pos - 1, $cursor.pos).scrollIntoView()); }\n }, 50);\n }\n};\n\n// Make sure all handlers get registered\nfor (var prop in editHandlers) { handlers[prop] = editHandlers[prop]; }\n\nfunction compareObjs(a, b) {\n if (a == b) { return true }\n for (var p in a) { if (a[p] !== b[p]) { return false } }\n for (var p$1 in b) { if (!(p$1 in a)) { return false } }\n return true\n}\n\nvar WidgetType = function WidgetType(toDOM, spec) {\n this.spec = spec || noSpec;\n this.side = this.spec.side || 0;\n this.toDOM = toDOM;\n};\n\nWidgetType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var ref = mapping.mapResult(span.from + oldOffset, this.side < 0 ? -1 : 1);\n var pos = ref.pos;\n var deleted = ref.deleted;\n return deleted ? null : new Decoration(pos - offset, pos - offset, this)\n};\n\nWidgetType.prototype.valid = function valid () { return true };\n\nWidgetType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof WidgetType &&\n (this.spec.key && this.spec.key == other.spec.key ||\n this.toDOM == other.toDOM && compareObjs(this.spec, other.spec)))\n};\n\nvar InlineType = function InlineType(attrs, spec) {\n this.spec = spec || noSpec;\n this.attrs = attrs;\n};\n\nInlineType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var from = mapping.map(span.from + oldOffset, this.spec.inclusiveStart ? -1 : 1) - offset;\n var to = mapping.map(span.to + oldOffset, this.spec.inclusiveEnd ? 1 : -1) - offset;\n return from >= to ? null : new Decoration(from, to, this)\n};\n\nInlineType.prototype.valid = function valid (_, span) { return span.from < span.to };\n\nInlineType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof InlineType && compareObjs(this.attrs, other.attrs) &&\n compareObjs(this.spec, other.spec))\n};\n\nInlineType.is = function is (span) { return span.type instanceof InlineType };\n\nvar NodeType = function NodeType(attrs, spec) {\n this.spec = spec || noSpec;\n this.attrs = attrs;\n};\n\nNodeType.prototype.map = function map (mapping, span, offset, oldOffset) {\n var from = mapping.mapResult(span.from + oldOffset, 1);\n if (from.deleted) { return null }\n var to = mapping.mapResult(span.to + oldOffset, -1);\n if (to.deleted || to.pos <= from.pos) { return null }\n return new Decoration(from.pos - offset, to.pos - offset, this)\n};\n\nNodeType.prototype.valid = function valid (node, span) {\n var ref = node.content.findIndex(span.from);\n var index = ref.index;\n var offset = ref.offset;\n return offset == span.from && offset + node.child(index).nodeSize == span.to\n};\n\nNodeType.prototype.eq = function eq (other) {\n return this == other ||\n (other instanceof NodeType && compareObjs(this.attrs, other.attrs) &&\n compareObjs(this.spec, other.spec))\n};\n\n// ::- Decoration objects can be provided to the view through the\n// [`decorations` prop](#view.EditorProps.decorations). They come in\n// several variants—see the static members of this class for details.\nvar Decoration = function Decoration(from, to, type) {\n // :: number\n // The start position of the decoration.\n this.from = from;\n // :: number\n // The end position. Will be the same as `from` for [widget\n // decorations](#view.Decoration^widget).\n this.to = to;\n this.type = type;\n};\n\nvar prototypeAccessors$1 = { spec: { configurable: true },inline: { configurable: true } };\n\nDecoration.prototype.copy = function copy (from, to) {\n return new Decoration(from, to, this.type)\n};\n\nDecoration.prototype.eq = function eq (other, offset) {\n if ( offset === void 0 ) offset = 0;\n\n return this.type.eq(other.type) && this.from + offset == other.from && this.to + offset == other.to\n};\n\nDecoration.prototype.map = function map (mapping, offset, oldOffset) {\n return this.type.map(mapping, this, offset, oldOffset)\n};\n\n// :: (number, union<(view: EditorView, getPos: () → number) → dom.Node, dom.Node>, ?Object) → Decoration\n// Creates a widget decoration, which is a DOM node that's shown in\n// the document at the given position. It is recommended that you\n// delay rendering the widget by passing a function that will be\n// called when the widget is actually drawn in a view, but you can\n// also directly pass a DOM node. `getPos` can be used to find the\n// widget's current document position.\n//\n// spec::- These options are supported:\n//\n// side:: ?number\n// Controls which side of the document position this widget is\n// associated with. When negative, it is drawn before a cursor\n// at its position, and content inserted at that position ends\n// up after the widget. When zero (the default) or positive, the\n// widget is drawn after the cursor and content inserted there\n// ends up before the widget.\n//\n// When there are multiple widgets at a given position, their\n// `side` values determine the order in which they appear. Those\n// with lower values appear first. The ordering of widgets with\n// the same `side` value is unspecified.\n//\n// When `marks` is null, `side` also determines the marks that\n// the widget is wrapped in—those of the node before when\n// negative, those of the node after when positive.\n//\n// marks:: ?[Mark]\n// The precise set of marks to draw around the widget.\n//\n// stopEvent:: ?(event: dom.Event) → bool\n// Can be used to control which DOM events, when they bubble out\n// of this widget, the editor view should ignore.\n//\n// ignoreSelection:: ?bool\n// When set (defaults to false), selection changes inside the\n// widget are ignored, and don't cause ProseMirror to try and\n// re-sync the selection with its selection state.\n//\n// key:: ?string\n// When comparing decorations of this type (in order to decide\n// whether it needs to be redrawn), ProseMirror will by default\n// compare the widget DOM node by identity. If you pass a key,\n// that key will be compared instead, which can be useful when\n// you generate decorations on the fly and don't want to store\n// and reuse DOM nodes. Make sure that any widgets with the same\n// key are interchangeable—if widgets differ in, for example,\n// the behavior of some event handler, they should get\n// different keys.\nDecoration.widget = function widget (pos, toDOM, spec) {\n return new Decoration(pos, pos, new WidgetType(toDOM, spec))\n};\n\n// :: (number, number, DecorationAttrs, ?Object) → Decoration\n// Creates an inline decoration, which adds the given attributes to\n// each inline node between `from` and `to`.\n//\n// spec::- These options are recognized:\n//\n// inclusiveStart:: ?bool\n// Determines how the left side of the decoration is\n// [mapped](#transform.Position_Mapping) when content is\n// inserted directly at that position. By default, the decoration\n// won't include the new content, but you can set this to `true`\n// to make it inclusive.\n//\n// inclusiveEnd:: ?bool\n// Determines how the right side of the decoration is mapped.\n// See\n// [`inclusiveStart`](#view.Decoration^inline^spec.inclusiveStart).\nDecoration.inline = function inline (from, to, attrs, spec) {\n return new Decoration(from, to, new InlineType(attrs, spec))\n};\n\n// :: (number, number, DecorationAttrs, ?Object) → Decoration\n// Creates a node decoration. `from` and `to` should point precisely\n// before and after a node in the document. That node, and only that\n// node, will receive the given attributes.\n//\n// spec::-\n//\n// Optional information to store with the decoration. It\n// is also used when comparing decorators for equality.\nDecoration.node = function node (from, to, attrs, spec) {\n return new Decoration(from, to, new NodeType(attrs, spec))\n};\n\n// :: Object\n// The spec provided when creating this decoration. Can be useful\n// if you've stored extra information in that object.\nprototypeAccessors$1.spec.get = function () { return this.type.spec };\n\nprototypeAccessors$1.inline.get = function () { return this.type instanceof InlineType };\n\nObject.defineProperties( Decoration.prototype, prototypeAccessors$1 );\n\n// DecorationAttrs:: interface\n// A set of attributes to add to a decorated node. Most properties\n// simply directly correspond to DOM attributes of the same name,\n// which will be set to the property's value. These are exceptions:\n//\n// class:: ?string\n// A CSS class name or a space-separated set of class names to be\n// _added_ to the classes that the node already had.\n//\n// style:: ?string\n// A string of CSS to be _added_ to the node's existing `style` property.\n//\n// nodeName:: ?string\n// When non-null, the target node is wrapped in a DOM element of\n// this type (and the other attributes are applied to this element).\n\nvar none = [], noSpec = {};\n\n// ::- A collection of [decorations](#view.Decoration), organized in\n// such a way that the drawing algorithm can efficiently use and\n// compare them. This is a persistent data structure—it is not\n// modified, updates create a new value.\nvar DecorationSet = function DecorationSet(local, children) {\n this.local = local && local.length ? local : none;\n this.children = children && children.length ? children : none;\n};\n\n// :: (Node, [Decoration]) → DecorationSet\n// Create a set of decorations, using the structure of the given\n// document.\nDecorationSet.create = function create (doc, decorations) {\n return decorations.length ? buildTree(decorations, doc, 0, noSpec) : empty\n};\n\n// :: (?number, ?number, ?(spec: Object) → bool) → [Decoration]\n// Find all decorations in this set which touch the given range\n// (including decorations that start or end directly at the\n// boundaries) and match the given predicate on their spec. When\n// `start` and `end` are omitted, all decorations in the set are\n// considered. When `predicate` isn't given, all decorations are\n// assumed to match.\nDecorationSet.prototype.find = function find (start, end, predicate) {\n var result = [];\n this.findInner(start == null ? 0 : start, end == null ? 1e9 : end, result, 0, predicate);\n return result\n};\n\nDecorationSet.prototype.findInner = function findInner (start, end, result, offset, predicate) {\n for (var i = 0; i < this.local.length; i++) {\n var span = this.local[i];\n if (span.from <= end && span.to >= start && (!predicate || predicate(span.spec)))\n { result.push(span.copy(span.from + offset, span.to + offset)); }\n }\n for (var i$1 = 0; i$1 < this.children.length; i$1 += 3) {\n if (this.children[i$1] < end && this.children[i$1 + 1] > start) {\n var childOff = this.children[i$1] + 1;\n this.children[i$1 + 2].findInner(start - childOff, end - childOff, result, offset + childOff, predicate);\n }\n }\n};\n\n// :: (Mapping, Node, ?Object) → DecorationSet\n// Map the set of decorations in response to a change in the\n// document.\n//\n// options::- An optional set of options.\n//\n// onRemove:: ?(decorationSpec: Object)\n// When given, this function will be called for each decoration\n// that gets dropped as a result of the mapping, passing the\n// spec of that decoration.\nDecorationSet.prototype.map = function map (mapping, doc, options) {\n if (this == empty || mapping.maps.length == 0) { return this }\n return this.mapInner(mapping, doc, 0, 0, options || noSpec)\n};\n\nDecorationSet.prototype.mapInner = function mapInner (mapping, node, offset, oldOffset, options) {\n var newLocal;\n for (var i = 0; i < this.local.length; i++) {\n var mapped = this.local[i].map(mapping, offset, oldOffset);\n if (mapped && mapped.type.valid(node, mapped)) { (newLocal || (newLocal = [])).push(mapped); }\n else if (options.onRemove) { options.onRemove(this.local[i].spec); }\n }\n\n if (this.children.length)\n { return mapChildren(this.children, newLocal, mapping, node, offset, oldOffset, options) }\n else\n { return newLocal ? new DecorationSet(newLocal.sort(byPos)) : empty }\n};\n\n// :: (Node, [Decoration]) → DecorationSet\n// Add the given array of decorations to the ones in the set,\n// producing a new set. Needs access to the current document to\n// create the appropriate tree structure.\nDecorationSet.prototype.add = function add (doc, decorations) {\n if (!decorations.length) { return this }\n if (this == empty) { return DecorationSet.create(doc, decorations) }\n return this.addInner(doc, decorations, 0)\n};\n\nDecorationSet.prototype.addInner = function addInner (doc, decorations, offset) {\n var this$1 = this;\n\n var children, childIndex = 0;\n doc.forEach(function (childNode, childOffset) {\n var baseOffset = childOffset + offset, found;\n if (!(found = takeSpansForNode(decorations, childNode, baseOffset))) { return }\n\n if (!children) { children = this$1.children.slice(); }\n while (childIndex < children.length && children[childIndex] < childOffset) { childIndex += 3; }\n if (children[childIndex] == childOffset)\n { children[childIndex + 2] = children[childIndex + 2].addInner(childNode, found, baseOffset + 1); }\n else\n { children.splice(childIndex, 0, childOffset, childOffset + childNode.nodeSize, buildTree(found, childNode, baseOffset + 1, noSpec)); }\n childIndex += 3;\n });\n\n var local = moveSpans(childIndex ? withoutNulls(decorations) : decorations, -offset);\n return new DecorationSet(local.length ? this.local.concat(local).sort(byPos) : this.local,\n children || this.children)\n};\n\n// :: ([Decoration]) → DecorationSet\n// Create a new set that contains the decorations in this set, minus\n// the ones in the given array.\nDecorationSet.prototype.remove = function remove (decorations) {\n if (decorations.length == 0 || this == empty) { return this }\n return this.removeInner(decorations, 0)\n};\n\nDecorationSet.prototype.removeInner = function removeInner (decorations, offset) {\n var children = this.children, local = this.local;\n for (var i = 0; i < children.length; i += 3) {\n var found = (void 0), from = children[i] + offset, to = children[i + 1] + offset;\n for (var j = 0, span = (void 0); j < decorations.length; j++) { if (span = decorations[j]) {\n if (span.from > from && span.to < to) {\n decorations[j] = null\n ;(found || (found = [])).push(span);\n }\n } }\n if (!found) { continue }\n if (children == this.children) { children = this.children.slice(); }\n var removed = children[i + 2].removeInner(found, from + 1);\n if (removed != empty) {\n children[i + 2] = removed;\n } else {\n children.splice(i, 3);\n i -= 3;\n }\n }\n if (local.length) { for (var i$1 = 0, span$1 = (void 0); i$1 < decorations.length; i$1++) { if (span$1 = decorations[i$1]) {\n for (var j$1 = 0; j$1 < local.length; j$1++) { if (local[j$1].eq(span$1, offset)) {\n if (local == this.local) { local = this.local.slice(); }\n local.splice(j$1--, 1);\n } }\n } } }\n if (children == this.children && local == this.local) { return this }\n return local.length || children.length ? new DecorationSet(local, children) : empty\n};\n\nDecorationSet.prototype.forChild = function forChild (offset, node) {\n if (this == empty) { return this }\n if (node.isLeaf) { return DecorationSet.empty }\n\n var child, local;\n for (var i = 0; i < this.children.length; i += 3) { if (this.children[i] >= offset) {\n if (this.children[i] == offset) { child = this.children[i + 2]; }\n break\n } }\n var start = offset + 1, end = start + node.content.size;\n for (var i$1 = 0; i$1 < this.local.length; i$1++) {\n var dec = this.local[i$1];\n if (dec.from < end && dec.to > start && (dec.type instanceof InlineType)) {\n var from = Math.max(start, dec.from) - start, to = Math.min(end, dec.to) - start;\n if (from < to) { (local || (local = [])).push(dec.copy(from, to)); }\n }\n }\n if (local) {\n var localSet = new DecorationSet(local.sort(byPos));\n return child ? new DecorationGroup([localSet, child]) : localSet\n }\n return child || empty\n};\n\nDecorationSet.prototype.eq = function eq (other) {\n if (this == other) { return true }\n if (!(other instanceof DecorationSet) ||\n this.local.length != other.local.length ||\n this.children.length != other.children.length) { return false }\n for (var i = 0; i < this.local.length; i++)\n { if (!this.local[i].eq(other.local[i])) { return false } }\n for (var i$1 = 0; i$1 < this.children.length; i$1 += 3)\n { if (this.children[i$1] != other.children[i$1] ||\n this.children[i$1 + 1] != other.children[i$1 + 1] ||\n !this.children[i$1 + 2].eq(other.children[i$1 + 2])) { return false } }\n return true\n};\n\nDecorationSet.prototype.locals = function locals (node) {\n return removeOverlap(this.localsInner(node))\n};\n\nDecorationSet.prototype.localsInner = function localsInner (node) {\n if (this == empty) { return none }\n if (node.inlineContent || !this.local.some(InlineType.is)) { return this.local }\n var result = [];\n for (var i = 0; i < this.local.length; i++) {\n if (!(this.local[i].type instanceof InlineType))\n { result.push(this.local[i]); }\n }\n return result\n};\n\nvar empty = new DecorationSet();\n\n// :: DecorationSet\n// The empty set of decorations.\nDecorationSet.empty = empty;\n\nDecorationSet.removeOverlap = removeOverlap;\n\n// :- An abstraction that allows the code dealing with decorations to\n// treat multiple DecorationSet objects as if it were a single object\n// with (a subset of) the same interface.\nvar DecorationGroup = function DecorationGroup(members) {\n this.members = members;\n};\n\nDecorationGroup.prototype.forChild = function forChild (offset, child) {\n if (child.isLeaf) { return DecorationSet.empty }\n var found = [];\n for (var i = 0; i < this.members.length; i++) {\n var result = this.members[i].forChild(offset, child);\n if (result == empty) { continue }\n if (result instanceof DecorationGroup) { found = found.concat(result.members); }\n else { found.push(result); }\n }\n return DecorationGroup.from(found)\n};\n\nDecorationGroup.prototype.eq = function eq (other) {\n if (!(other instanceof DecorationGroup) ||\n other.members.length != this.members.length) { return false }\n for (var i = 0; i < this.members.length; i++)\n { if (!this.members[i].eq(other.members[i])) { return false } }\n return true\n};\n\nDecorationGroup.prototype.locals = function locals (node) {\n var result, sorted = true;\n for (var i = 0; i < this.members.length; i++) {\n var locals = this.members[i].localsInner(node);\n if (!locals.length) { continue }\n if (!result) {\n result = locals;\n } else {\n if (sorted) {\n result = result.slice();\n sorted = false;\n }\n for (var j = 0; j < locals.length; j++) { result.push(locals[j]); }\n }\n }\n return result ? removeOverlap(sorted ? result : result.sort(byPos)) : none\n};\n\n// : ([DecorationSet]) → union<DecorationSet, DecorationGroup>\n// Create a group for the given array of decoration sets, or return\n// a single set when possible.\nDecorationGroup.from = function from (members) {\n switch (members.length) {\n case 0: return empty\n case 1: return members[0]\n default: return new DecorationGroup(members)\n }\n};\n\nfunction mapChildren(oldChildren, newLocal, mapping, node, offset, oldOffset, options) {\n var children = oldChildren.slice();\n\n // Mark the children that are directly touched by changes, and\n // move those that are after the changes.\n var shift = function (oldStart, oldEnd, newStart, newEnd) {\n for (var i = 0; i < children.length; i += 3) {\n var end = children[i + 1], dSize = (void 0);\n if (end == -1 || oldStart > end + oldOffset) { continue }\n if (oldEnd >= children[i] + oldOffset) {\n children[i + 1] = -1;\n } else if (newStart >= offset && (dSize = (newEnd - newStart) - (oldEnd - oldStart))) {\n children[i] += dSize;\n children[i + 1] += dSize;\n }\n }\n };\n for (var i = 0; i < mapping.maps.length; i++) { mapping.maps[i].forEach(shift); }\n\n // Find the child nodes that still correspond to a single node,\n // recursively call mapInner on them and update their positions.\n var mustRebuild = false;\n for (var i$1 = 0; i$1 < children.length; i$1 += 3) { if (children[i$1 + 1] == -1) { // Touched nodes\n var from = mapping.map(children[i$1] + oldOffset), fromLocal = from - offset;\n if (fromLocal < 0 || fromLocal >= node.content.size) {\n mustRebuild = true;\n continue\n }\n // Must read oldChildren because children was tagged with -1\n var to = mapping.map(oldChildren[i$1 + 1] + oldOffset, -1), toLocal = to - offset;\n var ref = node.content.findIndex(fromLocal);\n var index = ref.index;\n var childOffset = ref.offset;\n var childNode = node.maybeChild(index);\n if (childNode && childOffset == fromLocal && childOffset + childNode.nodeSize == toLocal) {\n var mapped = children[i$1 + 2].mapInner(mapping, childNode, from + 1, children[i$1] + oldOffset + 1, options);\n if (mapped != empty) {\n children[i$1] = fromLocal;\n children[i$1 + 1] = toLocal;\n children[i$1 + 2] = mapped;\n } else {\n children[i$1 + 1] = -2;\n mustRebuild = true;\n }\n } else {\n mustRebuild = true;\n }\n } }\n\n // Remaining children must be collected and rebuilt into the appropriate structure\n if (mustRebuild) {\n var decorations = mapAndGatherRemainingDecorations(children, oldChildren, newLocal || [], mapping,\n offset, oldOffset, options);\n var built = buildTree(decorations, node, 0, options);\n newLocal = built.local;\n for (var i$2 = 0; i$2 < children.length; i$2 += 3) { if (children[i$2 + 1] < 0) {\n children.splice(i$2, 3);\n i$2 -= 3;\n } }\n for (var i$3 = 0, j = 0; i$3 < built.children.length; i$3 += 3) {\n var from$1 = built.children[i$3];\n while (j < children.length && children[j] < from$1) { j += 3; }\n children.splice(j, 0, built.children[i$3], built.children[i$3 + 1], built.children[i$3 + 2]);\n }\n }\n\n return new DecorationSet(newLocal && newLocal.sort(byPos), children)\n}\n\nfunction moveSpans(spans, offset) {\n if (!offset || !spans.length) { return spans }\n var result = [];\n for (var i = 0; i < spans.length; i++) {\n var span = spans[i];\n result.push(new Decoration(span.from + offset, span.to + offset, span.type));\n }\n return result\n}\n\nfunction mapAndGatherRemainingDecorations(children, oldChildren, decorations, mapping, offset, oldOffset, options) {\n // Gather all decorations from the remaining marked children\n function gather(set, oldOffset) {\n for (var i = 0; i < set.local.length; i++) {\n var mapped = set.local[i].map(mapping, offset, oldOffset);\n if (mapped) { decorations.push(mapped); }\n else if (options.onRemove) { options.onRemove(set.local[i].spec); }\n }\n for (var i$1 = 0; i$1 < set.children.length; i$1 += 3)\n { gather(set.children[i$1 + 2], set.children[i$1] + oldOffset + 1); }\n }\n for (var i = 0; i < children.length; i += 3) { if (children[i + 1] == -1)\n { gather(children[i + 2], oldChildren[i] + oldOffset + 1); } }\n\n return decorations\n}\n\nfunction takeSpansForNode(spans, node, offset) {\n if (node.isLeaf) { return null }\n var end = offset + node.nodeSize, found = null;\n for (var i = 0, span = (void 0); i < spans.length; i++) {\n if ((span = spans[i]) && span.from > offset && span.to < end) {\n(found || (found = [])).push(span);\n spans[i] = null;\n }\n }\n return found\n}\n\nfunction withoutNulls(array) {\n var result = [];\n for (var i = 0; i < array.length; i++)\n { if (array[i] != null) { result.push(array[i]); } }\n return result\n}\n\n// : ([Decoration], Node, number) → DecorationSet\n// Build up a tree that corresponds to a set of decorations. `offset`\n// is a base offset that should be subtractet from the `from` and `to`\n// positions in the spans (so that we don't have to allocate new spans\n// for recursive calls).\nfunction buildTree(spans, node, offset, options) {\n var children = [], hasNulls = false;\n node.forEach(function (childNode, localStart) {\n var found = takeSpansForNode(spans, childNode, localStart + offset);\n if (found) {\n hasNulls = true;\n var subtree = buildTree(found, childNode, offset + localStart + 1, options);\n if (subtree != empty)\n { children.push(localStart, localStart + childNode.nodeSize, subtree); }\n }\n });\n var locals = moveSpans(hasNulls ? withoutNulls(spans) : spans, -offset).sort(byPos);\n for (var i = 0; i < locals.length; i++) { if (!locals[i].type.valid(node, locals[i])) {\n if (options.onRemove) { options.onRemove(locals[i].spec); }\n locals.splice(i--, 1);\n } }\n return locals.length || children.length ? new DecorationSet(locals, children) : empty\n}\n\n// : (Decoration, Decoration) → number\n// Used to sort decorations so that ones with a low start position\n// come first, and within a set with the same start position, those\n// with an smaller end position come first.\nfunction byPos(a, b) {\n return a.from - b.from || a.to - b.to\n}\n\n// : ([Decoration]) → [Decoration]\n// Scan a sorted array of decorations for partially overlapping spans,\n// and split those so that only fully overlapping spans are left (to\n// make subsequent rendering easier). Will return the input array if\n// no partially overlapping spans are found (the common case).\nfunction removeOverlap(spans) {\n var working = spans;\n for (var i = 0; i < working.length - 1; i++) {\n var span = working[i];\n if (span.from != span.to) { for (var j = i + 1; j < working.length; j++) {\n var next = working[j];\n if (next.from == span.from) {\n if (next.to != span.to) {\n if (working == spans) { working = spans.slice(); }\n // Followed by a partially overlapping larger span. Split that\n // span.\n working[j] = next.copy(next.from, span.to);\n insertAhead(working, j + 1, next.copy(span.to, next.to));\n }\n continue\n } else {\n if (next.from < span.to) {\n if (working == spans) { working = spans.slice(); }\n // The end of this one overlaps with a subsequent span. Split\n // this one.\n working[i] = span.copy(span.from, next.from);\n insertAhead(working, j, span.copy(next.from, span.to));\n }\n break\n }\n } }\n }\n return working\n}\n\nfunction insertAhead(array, i, deco) {\n while (i < array.length && byPos(deco, array[i]) > 0) { i++; }\n array.splice(i, 0, deco);\n}\n\n// : (EditorView) → union<DecorationSet, DecorationGroup>\n// Get the decorations associated with the current props of a view.\nfunction viewDecorations(view) {\n var found = [];\n view.someProp(\"decorations\", function (f) {\n var result = f(view.state);\n if (result && result != empty) { found.push(result); }\n });\n if (view.cursorWrapper)\n { found.push(DecorationSet.create(view.state.doc, [view.cursorWrapper.deco])); }\n return DecorationGroup.from(found)\n}\n\n// ::- An editor view manages the DOM structure that represents an\n// editable document. Its state and behavior are determined by its\n// [props](#view.DirectEditorProps).\nvar EditorView = function EditorView(place, props) {\n this._props = props;\n // :: EditorState\n // The view's current [state](#state.EditorState).\n this.state = props.state;\n\n this.dispatch = this.dispatch.bind(this);\n\n this._root = null;\n this.focused = false;\n // Kludge used to work around a Chrome bug\n this.trackWrites = null;\n\n // :: dom.Element\n // An editable DOM node containing the document. (You probably\n // should not directly interfere with its content.)\n this.dom = (place && place.mount) || document.createElement(\"div\");\n if (place) {\n if (place.appendChild) { place.appendChild(this.dom); }\n else if (place.apply) { place(this.dom); }\n else if (place.mount) { this.mounted = true; }\n }\n\n // :: bool\n // Indicates whether the editor is currently [editable](#view.EditorProps.editable).\n this.editable = getEditable(this);\n this.markCursor = null;\n this.cursorWrapper = null;\n updateCursorWrapper(this);\n this.nodeViews = buildNodeViews(this);\n this.docView = docViewDesc(this.state.doc, computeDocDeco(this), viewDecorations(this), this.dom, this);\n\n this.lastSelectedViewDesc = null;\n // :: ?{slice: Slice, move: bool}\n // When editor content is being dragged, this object contains\n // information about the dragged slice and whether it is being\n // copied or moved. At any other time, it is null.\n this.dragging = null;\n\n initInput(this);\n\n this.pluginViews = [];\n this.updatePluginViews();\n};\n\nvar prototypeAccessors$2 = { props: { configurable: true },root: { configurable: true } };\n\n// composing:: boolean\n// Holds `true` when a\n// [composition](https://developer.mozilla.org/en-US/docs/Mozilla/IME_handling_guide)\n// is active.\n\n// :: DirectEditorProps\n// The view's current [props](#view.EditorProps).\nprototypeAccessors$2.props.get = function () {\n if (this._props.state != this.state) {\n var prev = this._props;\n this._props = {};\n for (var name in prev) { this._props[name] = prev[name]; }\n this._props.state = this.state;\n }\n return this._props\n};\n\n// :: (DirectEditorProps)\n// Update the view's props. Will immediately cause an update to\n// the DOM.\nEditorView.prototype.update = function update (props) {\n if (props.handleDOMEvents != this._props.handleDOMEvents) { ensureListeners(this); }\n this._props = props;\n this.updateStateInner(props.state, true);\n};\n\n// :: (DirectEditorProps)\n// Update the view by updating existing props object with the object\n// given as argument. Equivalent to `view.update(Object.assign({},\n// view.props, props))`.\nEditorView.prototype.setProps = function setProps (props) {\n var updated = {};\n for (var name in this._props) { updated[name] = this._props[name]; }\n updated.state = this.state;\n for (var name$1 in props) { updated[name$1] = props[name$1]; }\n this.update(updated);\n};\n\n// :: (EditorState)\n// Update the editor's `state` prop, without touching any of the\n// other props.\nEditorView.prototype.updateState = function updateState (state) {\n this.updateStateInner(state, this.state.plugins != state.plugins);\n};\n\nEditorView.prototype.updateStateInner = function updateStateInner (state, reconfigured) {\n var this$1 = this;\n\n var prev = this.state, redraw = false, updateSel = false;\n // When stored marks are added, stop composition, so that they can\n // be displayed.\n if (state.storedMarks && this.composing) {\n clearComposition(this);\n updateSel = true;\n }\n this.state = state;\n if (reconfigured) {\n var nodeViews = buildNodeViews(this);\n if (changedNodeViews(nodeViews, this.nodeViews)) {\n this.nodeViews = nodeViews;\n redraw = true;\n }\n ensureListeners(this);\n }\n\n this.editable = getEditable(this);\n updateCursorWrapper(this);\n var innerDeco = viewDecorations(this), outerDeco = computeDocDeco(this);\n\n var scroll = reconfigured ? \"reset\"\n : state.scrollToSelection > prev.scrollToSelection ? \"to selection\" : \"preserve\";\n var updateDoc = redraw || !this.docView.matchesNode(state.doc, outerDeco, innerDeco);\n if (updateDoc || !state.selection.eq(prev.selection)) { updateSel = true; }\n var oldScrollPos = scroll == \"preserve\" && updateSel && this.dom.style.overflowAnchor == null && storeScrollPos(this);\n\n if (updateSel) {\n this.domObserver.stop();\n // Work around an issue in Chrome, IE, and Edge where changing\n // the DOM around an active selection puts it into a broken\n // state where the thing the user sees differs from the\n // selection reported by the Selection object (#710, #973,\n // #1011, #1013, #1035).\n var forceSelUpdate = updateDoc && (result.ie || result.chrome) && !this.composing &&\n !prev.selection.empty && !state.selection.empty && selectionContextChanged(prev.selection, state.selection);\n if (updateDoc) {\n // If the node that the selection points into is written to,\n // Chrome sometimes starts misreporting the selection, so this\n // tracks that and forces a selection reset when our update\n // did write to the node.\n var chromeKludge = result.chrome ? (this.trackWrites = this.root.getSelection().focusNode) : null;\n if (redraw || !this.docView.update(state.doc, outerDeco, innerDeco, this)) {\n this.docView.updateOuterDeco([]);\n this.docView.destroy();\n this.docView = docViewDesc(state.doc, outerDeco, innerDeco, this.dom, this);\n }\n if (chromeKludge && !this.trackWrites) { forceSelUpdate = true; }\n }\n // Work around for an issue where an update arriving right between\n // a DOM selection change and the \"selectionchange\" event for it\n // can cause a spurious DOM selection update, disrupting mouse\n // drag selection.\n if (forceSelUpdate ||\n !(this.mouseDown && this.domObserver.currentSelection.eq(this.root.getSelection()) && anchorInRightPlace(this))) {\n selectionToDOM(this, forceSelUpdate);\n } else {\n syncNodeSelection(this, state.selection);\n this.domObserver.setCurSelection();\n }\n this.domObserver.start();\n }\n\n this.updatePluginViews(prev);\n\n if (scroll == \"reset\") {\n this.dom.scrollTop = 0;\n } else if (scroll == \"to selection\") {\n var startDOM = this.root.getSelection().focusNode;\n if (this.someProp(\"handleScrollToSelection\", function (f) { return f(this$1); }))\n ; // Handled\n else if (state.selection instanceof NodeSelection)\n { scrollRectIntoView(this, this.docView.domAfterPos(state.selection.from).getBoundingClientRect(), startDOM); }\n else\n { scrollRectIntoView(this, this.coordsAtPos(state.selection.head), startDOM); }\n } else if (oldScrollPos) {\n resetScrollPos(oldScrollPos);\n }\n};\n\nEditorView.prototype.destroyPluginViews = function destroyPluginViews () {\n var view;\n while (view = this.pluginViews.pop()) { if (view.destroy) { view.destroy(); } }\n};\n\nEditorView.prototype.updatePluginViews = function updatePluginViews (prevState) {\n if (!prevState || prevState.plugins != this.state.plugins) {\n this.destroyPluginViews();\n for (var i = 0; i < this.state.plugins.length; i++) {\n var plugin = this.state.plugins[i];\n if (plugin.spec.view) { this.pluginViews.push(plugin.spec.view(this)); }\n }\n } else {\n for (var i$1 = 0; i$1 < this.pluginViews.length; i$1++) {\n var pluginView = this.pluginViews[i$1];\n if (pluginView.update) { pluginView.update(this, prevState); }\n }\n }\n};\n\n// :: (string, ?(prop: *) → *) → *\n// Goes over the values of a prop, first those provided directly,\n// then those from plugins (in order), and calls `f` every time a\n// non-undefined value is found. When `f` returns a truthy value,\n// that is immediately returned. When `f` isn't provided, it is\n// treated as the identity function (the prop value is returned\n// directly).\nEditorView.prototype.someProp = function someProp (propName, f) {\n var prop = this._props && this._props[propName], value;\n if (prop != null && (value = f ? f(prop) : prop)) { return value }\n var plugins = this.state.plugins;\n if (plugins) { for (var i = 0; i < plugins.length; i++) {\n var prop$1 = plugins[i].props[propName];\n if (prop$1 != null && (value = f ? f(prop$1) : prop$1)) { return value }\n } }\n};\n\n// :: () → bool\n// Query whether the view has focus.\nEditorView.prototype.hasFocus = function hasFocus () {\n return this.root.activeElement == this.dom\n};\n\n// :: ()\n// Focus the editor.\nEditorView.prototype.focus = function focus () {\n this.domObserver.stop();\n if (this.editable) { focusPreventScroll(this.dom); }\n selectionToDOM(this);\n this.domObserver.start();\n};\n\n// :: union<dom.Document, dom.DocumentFragment>\n// Get the document root in which the editor exists. This will\n// usually be the top-level `document`, but might be a [shadow\n// DOM](https://developer.mozilla.org/en-US/docs/Web/Web_Components/Shadow_DOM)\n// root if the editor is inside one.\nprototypeAccessors$2.root.get = function () {\n var cached = this._root;\n if (cached == null) { for (var search = this.dom.parentNode; search; search = search.parentNode) {\n if (search.nodeType == 9 || (search.nodeType == 11 && search.host)) {\n if (!search.getSelection) { Object.getPrototypeOf(search).getSelection = function () { return document.getSelection(); }; }\n return this._root = search\n }\n } }\n return cached || document\n};\n\n// :: ({left: number, top: number}) → ?{pos: number, inside: number}\n// Given a pair of viewport coordinates, return the document\n// position that corresponds to them. May return null if the given\n// coordinates aren't inside of the editor. When an object is\n// returned, its `pos` property is the position nearest to the\n// coordinates, and its `inside` property holds the position of the\n// inner node that the position falls inside of, or -1 if it is at\n// the top level, not in any node.\nEditorView.prototype.posAtCoords = function posAtCoords$1 (coords) {\n return posAtCoords(this, coords)\n};\n\n// :: (number) → {left: number, right: number, top: number, bottom: number}\n// Returns the viewport rectangle at a given document position. `left`\n// and `right` will be the same number, as this returns a flat\n// cursor-ish rectangle.\nEditorView.prototype.coordsAtPos = function coordsAtPos$1 (pos) {\n return coordsAtPos(this, pos)\n};\n\n// :: (number) → {node: dom.Node, offset: number}\n// Find the DOM position that corresponds to the given document\n// position. Note that you should **not** mutate the editor's\n// internal DOM, only inspect it (and even that is usually not\n// necessary).\nEditorView.prototype.domAtPos = function domAtPos (pos) {\n return this.docView.domFromPos(pos)\n};\n\n// :: (number) → ?dom.Node\n// Find the DOM node that represents the document node after the\n// given position. May return `null` when the position doesn't point\n// in front of a node or if the node is inside an opaque node view.\n//\n// This is intended to be able to call things like\n// `getBoundingClientRect` on that DOM node. Do **not** mutate the\n// editor DOM directly, or add styling this way, since that will be\n// immediately overriden by the editor as it redraws the node.\nEditorView.prototype.nodeDOM = function nodeDOM (pos) {\n var desc = this.docView.descAt(pos);\n return desc ? desc.nodeDOM : null\n};\n\n// :: (dom.Node, number, ?number) → number\n// Find the document position that corresponds to a given DOM\n// position. (Whenever possible, it is preferable to inspect the\n// document structure directly, rather than poking around in the\n// DOM, but sometimes—for example when interpreting an event\n// target—you don't have a choice.)\n//\n// The `bias` parameter can be used to influence which side of a DOM\n// node to use when the position is inside a leaf node.\nEditorView.prototype.posAtDOM = function posAtDOM (node, offset, bias) {\n if ( bias === void 0 ) bias = -1;\n\n var pos = this.docView.posFromDOM(node, offset, bias);\n if (pos == null) { throw new RangeError(\"DOM position not inside the editor\") }\n return pos\n};\n\n// :: (union<\"up\", \"down\", \"left\", \"right\", \"forward\", \"backward\">, ?EditorState) → bool\n// Find out whether the selection is at the end of a textblock when\n// moving in a given direction. When, for example, given `\"left\"`,\n// it will return true if moving left from the current cursor\n// position would leave that position's parent textblock. Will apply\n// to the view's current state by default, but it is possible to\n// pass a different state.\nEditorView.prototype.endOfTextblock = function endOfTextblock$1 (dir, state) {\n return endOfTextblock(this, state || this.state, dir)\n};\n\n// :: ()\n// Removes the editor from the DOM and destroys all [node\n// views](#view.NodeView).\nEditorView.prototype.destroy = function destroy () {\n if (!this.docView) { return }\n destroyInput(this);\n this.destroyPluginViews();\n if (this.mounted) {\n this.docView.update(this.state.doc, [], viewDecorations(this), this);\n this.dom.textContent = \"\";\n } else if (this.dom.parentNode) {\n this.dom.parentNode.removeChild(this.dom);\n }\n this.docView.destroy();\n this.docView = null;\n};\n\n// Used for testing.\nEditorView.prototype.dispatchEvent = function dispatchEvent$1 (event) {\n return dispatchEvent(this, event)\n};\n\n// :: (Transaction)\n// Dispatch a transaction. Will call\n// [`dispatchTransaction`](#view.DirectEditorProps.dispatchTransaction)\n// when given, and otherwise defaults to applying the transaction to\n// the current state and calling\n// [`updateState`](#view.EditorView.updateState) with the result.\n// This method is bound to the view instance, so that it can be\n// easily passed around.\nEditorView.prototype.dispatch = function dispatch (tr) {\n var dispatchTransaction = this._props.dispatchTransaction;\n if (dispatchTransaction) { dispatchTransaction.call(this, tr); }\n else { this.updateState(this.state.apply(tr)); }\n};\n\nObject.defineProperties( EditorView.prototype, prototypeAccessors$2 );\n\nfunction computeDocDeco(view) {\n var attrs = Object.create(null);\n attrs.class = \"ProseMirror\";\n attrs.contenteditable = String(view.editable);\n\n view.someProp(\"attributes\", function (value) {\n if (typeof value == \"function\") { value = value(view.state); }\n if (value) { for (var attr in value) {\n if (attr == \"class\")\n { attrs.class += \" \" + value[attr]; }\n else if (!attrs[attr] && attr != \"contenteditable\" && attr != \"nodeName\")\n { attrs[attr] = String(value[attr]); }\n } }\n });\n\n return [Decoration.node(0, view.state.doc.content.size, attrs)]\n}\n\nfunction updateCursorWrapper(view) {\n if (view.markCursor) {\n var dom = document.createElement(\"img\");\n dom.setAttribute(\"mark-placeholder\", \"true\");\n view.cursorWrapper = {dom: dom, deco: Decoration.widget(view.state.selection.head, dom, {raw: true, marks: view.markCursor})};\n } else {\n view.cursorWrapper = null;\n }\n}\n\nfunction getEditable(view) {\n return !view.someProp(\"editable\", function (value) { return value(view.state) === false; })\n}\n\nfunction selectionContextChanged(sel1, sel2) {\n var depth = Math.min(sel1.$anchor.sharedDepth(sel1.head), sel2.$anchor.sharedDepth(sel2.head));\n return sel1.$anchor.start(depth) != sel2.$anchor.start(depth)\n}\n\nfunction buildNodeViews(view) {\n var result = {};\n view.someProp(\"nodeViews\", function (obj) {\n for (var prop in obj) { if (!Object.prototype.hasOwnProperty.call(result, prop))\n { result[prop] = obj[prop]; } }\n });\n return result\n}\n\nfunction changedNodeViews(a, b) {\n var nA = 0, nB = 0;\n for (var prop in a) {\n if (a[prop] != b[prop]) { return true }\n nA++;\n }\n for (var _ in b) { nB++; }\n return nA != nB\n}\n\n// EditorProps:: interface\n//\n// Props are configuration values that can be passed to an editor view\n// or included in a plugin. This interface lists the supported props.\n//\n// The various event-handling functions may all return `true` to\n// indicate that they handled the given event. The view will then take\n// care to call `preventDefault` on the event, except with\n// `handleDOMEvents`, where the handler itself is responsible for that.\n//\n// How a prop is resolved depends on the prop. Handler functions are\n// called one at a time, starting with the base props and then\n// searching through the plugins (in order of appearance) until one of\n// them returns true. For some props, the first plugin that yields a\n// value gets precedence.\n//\n// handleDOMEvents:: ?Object<(view: EditorView, event: dom.Event) → bool>\n// Can be an object mapping DOM event type names to functions that\n// handle them. Such functions will be called before any handling\n// ProseMirror does of events fired on the editable DOM element.\n// Contrary to the other event handling props, when returning true\n// from such a function, you are responsible for calling\n// `preventDefault` yourself (or not, if you want to allow the\n// default behavior).\n//\n// handleKeyDown:: ?(view: EditorView, event: dom.KeyboardEvent) → bool\n// Called when the editor receives a `keydown` event.\n//\n// handleKeyPress:: ?(view: EditorView, event: dom.KeyboardEvent) → bool\n// Handler for `keypress` events.\n//\n// handleTextInput:: ?(view: EditorView, from: number, to: number, text: string) → bool\n// Whenever the user directly input text, this handler is called\n// before the input is applied. If it returns `true`, the default\n// behavior of actually inserting the text is suppressed.\n//\n// handleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a click, from the inside out. The\n// `direct` flag will be true for the inner node.\n//\n// handleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is clicked, after `handleClickOn` handlers\n// have been called.\n//\n// handleDoubleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a double click.\n//\n// handleDoubleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is double-clicked, after `handleDoubleClickOn`.\n//\n// handleTripleClickOn:: ?(view: EditorView, pos: number, node: Node, nodePos: number, event: dom.MouseEvent, direct: bool) → bool\n// Called for each node around a triple click.\n//\n// handleTripleClick:: ?(view: EditorView, pos: number, event: dom.MouseEvent) → bool\n// Called when the editor is triple-clicked, after `handleTripleClickOn`.\n//\n// handlePaste:: ?(view: EditorView, event: dom.ClipboardEvent, slice: Slice) → bool\n// Can be used to override the behavior of pasting. `slice` is the\n// pasted content parsed by the editor, but you can directly access\n// the event to get at the raw content.\n//\n// handleDrop:: ?(view: EditorView, event: dom.Event, slice: Slice, moved: bool) → bool\n// Called when something is dropped on the editor. `moved` will be\n// true if this drop moves from the current selection (which should\n// thus be deleted).\n//\n// handleScrollToSelection:: ?(view: EditorView) → bool\n// Called when the view, after updating its state, tries to scroll\n// the selection into view. A handler function may return false to\n// indicate that it did not handle the scrolling and further\n// handlers or the default behavior should be tried.\n//\n// createSelectionBetween:: ?(view: EditorView, anchor: ResolvedPos, head: ResolvedPos) → ?Selection\n// Can be used to override the way a selection is created when\n// reading a DOM selection between the given anchor and head.\n//\n// domParser:: ?DOMParser\n// The [parser](#model.DOMParser) to use when reading editor changes\n// from the DOM. Defaults to calling\n// [`DOMParser.fromSchema`](#model.DOMParser^fromSchema) on the\n// editor's schema.\n//\n// transformPastedHTML:: ?(html: string) → string\n// Can be used to transform pasted HTML text, _before_ it is parsed,\n// for example to clean it up.\n//\n// clipboardParser:: ?DOMParser\n// The [parser](#model.DOMParser) to use when reading content from\n// the clipboard. When not given, the value of the\n// [`domParser`](#view.EditorProps.domParser) prop is used.\n//\n// transformPastedText:: ?(text: string, plain: bool) → string\n// Transform pasted plain text. The `plain` flag will be true when\n// the text is pasted as plain text.\n//\n// clipboardTextParser:: ?(text: string, $context: ResolvedPos, plain: bool) → Slice\n// A function to parse text from the clipboard into a document\n// slice. Called after\n// [`transformPastedText`](#view.EditorProps.transformPastedText).\n// The default behavior is to split the text into lines, wrap them\n// in `<p>` tags, and call\n// [`clipboardParser`](#view.EditorProps.clipboardParser) on it.\n// The `plain` flag will be true when the text is pasted as plain text.\n//\n// transformPasted:: ?(Slice) → Slice\n// Can be used to transform pasted content before it is applied to\n// the document.\n//\n// nodeViews:: ?Object<(node: Node, view: EditorView, getPos: () → number, decorations: [Decoration]) → NodeView>\n// Allows you to pass custom rendering and behavior logic for nodes\n// and marks. Should map node and mark names to constructor\n// functions that produce a [`NodeView`](#view.NodeView) object\n// implementing the node's display behavior. For nodes, the third\n// argument `getPos` is a function that can be called to get the\n// node's current position, which can be useful when creating\n// transactions to update it. For marks, the third argument is a\n// boolean that indicates whether the mark's content is inline.\n//\n// `decorations` is an array of node or inline decorations that are\n// active around the node. They are automatically drawn in the\n// normal way, and you will usually just want to ignore this, but\n// they can also be used as a way to provide context information to\n// the node view without adding it to the document itself.\n//\n// clipboardSerializer:: ?DOMSerializer\n// The DOM serializer to use when putting content onto the\n// clipboard. If not given, the result of\n// [`DOMSerializer.fromSchema`](#model.DOMSerializer^fromSchema)\n// will be used.\n//\n// clipboardTextSerializer:: ?(Slice) → string\n// A function that will be called to get the text for the current\n// selection when copying text to the clipboard. By default, the\n// editor will use [`textBetween`](#model.Node.textBetween) on the\n// selected range.\n//\n// decorations:: ?(state: EditorState) → ?DecorationSet\n// A set of [document decorations](#view.Decoration) to show in the\n// view.\n//\n// editable:: ?(state: EditorState) → bool\n// When this returns false, the content of the view is not directly\n// editable.\n//\n// attributes:: ?union<Object<string>, (EditorState) → ?Object<string>>\n// Control the DOM attributes of the editable element. May be either\n// an object or a function going from an editor state to an object.\n// By default, the element will get a class `\"ProseMirror\"`, and\n// will have its `contentEditable` attribute determined by the\n// [`editable` prop](#view.EditorProps.editable). Additional classes\n// provided here will be added to the class. For other attributes,\n// the value provided first (as in\n// [`someProp`](#view.EditorView.someProp)) will be used.\n//\n// scrollThreshold:: ?union<number, {top: number, right: number, bottom: number, left: number}>\n// Determines the distance (in pixels) between the cursor and the\n// end of the visible viewport at which point, when scrolling the\n// cursor into view, scrolling takes place. Defaults to 0.\n//\n// scrollMargin:: ?union<number, {top: number, right: number, bottom: number, left: number}>\n// Determines the extra space (in pixels) that is left above or\n// below the cursor when it is scrolled into view. Defaults to 5.\n\n// DirectEditorProps:: interface extends EditorProps\n//\n// The props object given directly to the editor view supports two\n// fields that can't be used in plugins:\n//\n// state:: EditorState\n// The current state of the editor.\n//\n// dispatchTransaction:: ?(tr: Transaction)\n// The callback over which to send transactions (state updates)\n// produced by the view. If you specify this, you probably want to\n// make sure this ends up calling the view's\n// [`updateState`](#view.EditorView.updateState) method with a new\n// state that has the transaction\n// [applied](#state.EditorState.apply). The callback will be bound to have\n// the view instance as its `this` binding.\n\nexport { Decoration, DecorationSet, EditorView, endComposition as __endComposition, parseFromClipboard as __parseFromClipboard, serializeForClipboard as __serializeForClipboard };\n//# sourceMappingURL=index.es.js.map\n","import { Plugin } from 'prosemirror-state';\nimport { dropPoint } from 'prosemirror-transform';\n\n// :: (options: ?Object) → Plugin\n// Create a plugin that, when added to a ProseMirror instance,\n// causes a decoration to show up at the drop position when something\n// is dragged over the editor.\n//\n// options::- These options are supported:\n//\n// color:: ?string\n// The color of the cursor. Defaults to `black`.\n//\n// width:: ?number\n// The precise width of the cursor in pixels. Defaults to 1.\n//\n// class:: ?string\n// A CSS class name to add to the cursor element.\nfunction dropCursor(options) {\n if ( options === void 0 ) options = {};\n\n return new Plugin({\n view: function view(editorView) { return new DropCursorView(editorView, options) }\n })\n}\n\nvar DropCursorView = function DropCursorView(editorView, options) {\n var this$1 = this;\n\n this.editorView = editorView;\n this.width = options.width || 1;\n this.color = options.color || \"black\";\n this.class = options.class;\n this.cursorPos = null;\n this.element = null;\n this.timeout = null;\n\n this.handlers = [\"dragover\", \"dragend\", \"drop\", \"dragleave\"].map(function (name) {\n var handler = function (e) { return this$1[name](e); };\n editorView.dom.addEventListener(name, handler);\n return {name: name, handler: handler}\n });\n};\n\nDropCursorView.prototype.destroy = function destroy () {\n var this$1 = this;\n\n this.handlers.forEach(function (ref) {\n var name = ref.name;\n var handler = ref.handler;\n\n return this$1.editorView.dom.removeEventListener(name, handler);\n });\n};\n\nDropCursorView.prototype.update = function update (editorView, prevState) {\n if (this.cursorPos != null && prevState.doc != editorView.state.doc) { this.updateOverlay(); }\n};\n\nDropCursorView.prototype.setCursor = function setCursor (pos) {\n if (pos == this.cursorPos) { return }\n this.cursorPos = pos;\n if (pos == null) {\n this.element.parentNode.removeChild(this.element);\n this.element = null;\n } else {\n this.updateOverlay();\n }\n};\n\nDropCursorView.prototype.updateOverlay = function updateOverlay () {\n var $pos = this.editorView.state.doc.resolve(this.cursorPos), rect;\n if (!$pos.parent.inlineContent) {\n var before = $pos.nodeBefore, after = $pos.nodeAfter;\n if (before || after) {\n var nodeRect = this.editorView.nodeDOM(this.cursorPos - (before ?before.nodeSize : 0)).getBoundingClientRect();\n var top = before ? nodeRect.bottom : nodeRect.top;\n if (before && after)\n { top = (top + this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top) / 2; }\n rect = {left: nodeRect.left, right: nodeRect.right, top: top - this.width / 2, bottom: top + this.width / 2};\n }\n }\n if (!rect) {\n var coords = this.editorView.coordsAtPos(this.cursorPos);\n rect = {left: coords.left - this.width / 2, right: coords.left + this.width / 2, top: coords.top, bottom: coords.bottom};\n }\n\n var parent = this.editorView.dom.offsetParent;\n if (!this.element) {\n this.element = parent.appendChild(document.createElement(\"div\"));\n if (this.class) { this.element.className = this.class; }\n this.element.style.cssText = \"position: absolute; z-index: 50; pointer-events: none; background-color: \" + this.color;\n }\n var parentRect = !parent || parent == document.body && getComputedStyle(parent).position == \"static\"\n ? {left: -pageXOffset, top: -pageYOffset} : parent.getBoundingClientRect();\n this.element.style.left = (rect.left - parentRect.left) + \"px\";\n this.element.style.top = (rect.top - parentRect.top) + \"px\";\n this.element.style.width = (rect.right - rect.left) + \"px\";\n this.element.style.height = (rect.bottom - rect.top) + \"px\";\n};\n\nDropCursorView.prototype.scheduleRemoval = function scheduleRemoval (timeout) {\n var this$1 = this;\n\n clearTimeout(this.timeout);\n this.timeout = setTimeout(function () { return this$1.setCursor(null); }, timeout);\n};\n\nDropCursorView.prototype.dragover = function dragover (event) {\n if (!this.editorView.editable) { return }\n var pos = this.editorView.posAtCoords({left: event.clientX, top: event.clientY});\n if (pos) {\n var target = pos.pos;\n if (this.editorView.dragging && this.editorView.dragging.slice) {\n target = dropPoint(this.editorView.state.doc, target, this.editorView.dragging.slice);\n if (target == null) { target = pos.pos; }\n }\n this.setCursor(target);\n this.scheduleRemoval(5000);\n }\n};\n\nDropCursorView.prototype.dragend = function dragend () {\n this.scheduleRemoval(20);\n};\n\nDropCursorView.prototype.drop = function drop () {\n this.scheduleRemoval(20);\n};\n\nDropCursorView.prototype.dragleave = function dragleave (event) {\n if (event.target == this.editorView.dom || !this.editorView.dom.contains(event.relatedTarget))\n { this.setCursor(null); }\n};\n\nexport { dropCursor };\n//# sourceMappingURL=index.es.js.map\n","import { keydownHandler } from 'prosemirror-keymap';\nimport { NodeSelection, Selection, Plugin, TextSelection } from 'prosemirror-state';\nimport { DecorationSet, Decoration } from 'prosemirror-view';\nimport { Slice } from 'prosemirror-model';\n\n// ::- Gap cursor selections are represented using this class. Its\n// `$anchor` and `$head` properties both point at the cursor position.\nvar GapCursor = /*@__PURE__*/(function (Selection) {\n function GapCursor($pos) {\n Selection.call(this, $pos, $pos);\n }\n\n if ( Selection ) GapCursor.__proto__ = Selection;\n GapCursor.prototype = Object.create( Selection && Selection.prototype );\n GapCursor.prototype.constructor = GapCursor;\n\n GapCursor.prototype.map = function map (doc, mapping) {\n var $pos = doc.resolve(mapping.map(this.head));\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos)\n };\n\n GapCursor.prototype.content = function content () { return Slice.empty };\n\n GapCursor.prototype.eq = function eq (other) {\n return other instanceof GapCursor && other.head == this.head\n };\n\n GapCursor.prototype.toJSON = function toJSON () {\n return {type: \"gapcursor\", pos: this.head}\n };\n\n GapCursor.fromJSON = function fromJSON (doc, json) {\n if (typeof json.pos != \"number\") { throw new RangeError(\"Invalid input for GapCursor.fromJSON\") }\n return new GapCursor(doc.resolve(json.pos))\n };\n\n GapCursor.prototype.getBookmark = function getBookmark () { return new GapBookmark(this.anchor) };\n\n GapCursor.valid = function valid ($pos) {\n var parent = $pos.parent;\n if (parent.isTextblock || !closedBefore($pos) || !closedAfter($pos)) { return false }\n var override = parent.type.spec.allowGapCursor;\n if (override != null) { return override }\n var deflt = parent.contentMatchAt($pos.index()).defaultType;\n return deflt && deflt.isTextblock\n };\n\n GapCursor.findFrom = function findFrom ($pos, dir, mustMove) {\n search: for (;;) {\n if (!mustMove && GapCursor.valid($pos)) { return $pos }\n var pos = $pos.pos, next = null;\n // Scan up from this position\n for (var d = $pos.depth;; d--) {\n var parent = $pos.node(d);\n if (dir > 0 ? $pos.indexAfter(d) < parent.childCount : $pos.index(d) > 0) {\n next = parent.child(dir > 0 ? $pos.indexAfter(d) : $pos.index(d) - 1);\n break\n } else if (d == 0) {\n return null\n }\n pos += dir;\n var $cur = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur)) { return $cur }\n }\n\n // And then down into the next node\n for (;;) {\n var inside = dir > 0 ? next.firstChild : next.lastChild;\n if (!inside) {\n if (next.isAtom && !next.isText && !NodeSelection.isSelectable(next)) {\n $pos = $pos.doc.resolve(pos + next.nodeSize * dir);\n mustMove = false;\n continue search\n }\n break\n }\n next = inside;\n pos += dir;\n var $cur$1 = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur$1)) { return $cur$1 }\n }\n\n return null\n }\n };\n\n return GapCursor;\n}(Selection));\n\nGapCursor.prototype.visible = false;\n\nSelection.jsonID(\"gapcursor\", GapCursor);\n\nvar GapBookmark = function GapBookmark(pos) {\n this.pos = pos;\n};\nGapBookmark.prototype.map = function map (mapping) {\n return new GapBookmark(mapping.map(this.pos))\n};\nGapBookmark.prototype.resolve = function resolve (doc) {\n var $pos = doc.resolve(this.pos);\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos)\n};\n\nfunction closedBefore($pos) {\n for (var d = $pos.depth; d >= 0; d--) {\n var index = $pos.index(d);\n // At the start of this parent, look at next one\n if (index == 0) { continue }\n // See if the node before (or its first ancestor) is closed\n for (var before = $pos.node(d).child(index - 1);; before = before.lastChild) {\n if ((before.childCount == 0 && !before.inlineContent) || before.isAtom || before.type.spec.isolating) { return true }\n if (before.inlineContent) { return false }\n }\n }\n // Hit start of document\n return true\n}\n\nfunction closedAfter($pos) {\n for (var d = $pos.depth; d >= 0; d--) {\n var index = $pos.indexAfter(d), parent = $pos.node(d);\n if (index == parent.childCount) { continue }\n for (var after = parent.child(index);; after = after.firstChild) {\n if ((after.childCount == 0 && !after.inlineContent) || after.isAtom || after.type.spec.isolating) { return true }\n if (after.inlineContent) { return false }\n }\n }\n return true\n}\n\n// :: () → Plugin\n// Create a gap cursor plugin. When enabled, this will capture clicks\n// near and arrow-key-motion past places that don't have a normally\n// selectable position nearby, and create a gap cursor selection for\n// them. The cursor is drawn as an element with class\n// `ProseMirror-gapcursor`. You can either include\n// `style/gapcursor.css` from the package's directory or add your own\n// styles to make it visible.\nvar gapCursor = function() {\n return new Plugin({\n props: {\n decorations: drawGapCursor,\n\n createSelectionBetween: function createSelectionBetween(_view, $anchor, $head) {\n if ($anchor.pos == $head.pos && GapCursor.valid($head)) { return new GapCursor($head) }\n },\n\n handleClick: handleClick,\n handleKeyDown: handleKeyDown\n }\n })\n};\n\nvar handleKeyDown = keydownHandler({\n \"ArrowLeft\": arrow(\"horiz\", -1),\n \"ArrowRight\": arrow(\"horiz\", 1),\n \"ArrowUp\": arrow(\"vert\", -1),\n \"ArrowDown\": arrow(\"vert\", 1)\n});\n\nfunction arrow(axis, dir) {\n var dirStr = axis == \"vert\" ? (dir > 0 ? \"down\" : \"up\") : (dir > 0 ? \"right\" : \"left\");\n return function(state, dispatch, view) {\n var sel = state.selection;\n var $start = dir > 0 ? sel.$to : sel.$from, mustMove = sel.empty;\n if (sel instanceof TextSelection) {\n if (!view.endOfTextblock(dirStr) || $start.depth == 0) { return false }\n mustMove = false;\n $start = state.doc.resolve(dir > 0 ? $start.after() : $start.before());\n }\n var $found = GapCursor.findFrom($start, dir, mustMove);\n if (!$found) { return false }\n if (dispatch) { dispatch(state.tr.setSelection(new GapCursor($found))); }\n return true\n }\n}\n\nfunction handleClick(view, pos, event) {\n if (!view.editable) { return false }\n var $pos = view.state.doc.resolve(pos);\n if (!GapCursor.valid($pos)) { return false }\n var ref = view.posAtCoords({left: event.clientX, top: event.clientY});\n var inside = ref.inside;\n if (inside > -1 && NodeSelection.isSelectable(view.state.doc.nodeAt(inside))) { return false }\n view.dispatch(view.state.tr.setSelection(new GapCursor($pos)));\n return true\n}\n\nfunction drawGapCursor(state) {\n if (!(state.selection instanceof GapCursor)) { return null }\n var node = document.createElement(\"div\");\n node.className = \"ProseMirror-gapcursor\";\n return DecorationSet.create(state.doc, [Decoration.widget(state.selection.head, node, {key: \"gapcursor\"})])\n}\n\nexport { GapCursor, gapCursor };\n//# sourceMappingURL=index.es.js.map\n","\n /*!\n * tiptap v1.29.5\n * (c) 2020 überdosis GbR (limited liability)\n * @license MIT\n */\n \nimport { EditorState, Plugin, PluginKey, TextSelection } from 'prosemirror-state';\nexport { NodeSelection, Plugin, PluginKey, TextSelection } from 'prosemirror-state';\nimport { EditorView } from 'prosemirror-view';\nimport { Schema, DOMParser, DOMSerializer } from 'prosemirror-model';\nimport { dropCursor } from 'prosemirror-dropcursor';\nimport { gapCursor } from 'prosemirror-gapcursor';\nimport { keymap } from 'prosemirror-keymap';\nimport { baseKeymap } from 'prosemirror-commands';\nimport { inputRules, undoInputRule } from 'prosemirror-inputrules';\nimport { getMarkRange, markIsActive, getMarkAttrs, nodeIsActive, getNodeAttrs } from 'tiptap-utils';\nimport Vue from 'vue';\nimport { setBlockType } from 'tiptap-commands';\n\nfunction camelCase (str) {\n return str.replace(/(?:^\\w|[A-Z]|\\b\\w)/g, (word, index) => index === 0 ? word.toLowerCase() : word.toUpperCase()).replace(/\\s+/g, '');\n}\n\nclass ComponentView {\n constructor(component, {\n editor,\n extension,\n parent,\n node,\n view,\n decorations,\n getPos\n }) {\n this.component = component;\n this.editor = editor;\n this.extension = extension;\n this.parent = parent;\n this.node = node;\n this.view = view;\n this.decorations = decorations;\n this.isNode = !!this.node.marks;\n this.isMark = !this.isNode;\n this.getPos = this.isMark ? this.getMarkPos : getPos;\n this.captureEvents = true;\n this.dom = this.createDOM();\n this.contentDOM = this.vm.$refs.content;\n }\n\n createDOM() {\n const Component = Vue.extend(this.component);\n const props = {\n editor: this.editor,\n node: this.node,\n view: this.view,\n getPos: () => this.getPos(),\n decorations: this.decorations,\n selected: false,\n options: this.extension.options,\n updateAttrs: attrs => this.updateAttrs(attrs)\n };\n\n if (typeof this.extension.setSelection === 'function') {\n this.setSelection = this.extension.setSelection;\n }\n\n if (typeof this.extension.update === 'function') {\n this.update = this.extension.update;\n }\n\n this.vm = new Component({\n parent: this.parent,\n propsData: props\n }).$mount();\n return this.vm.$el;\n }\n\n update(node, decorations) {\n if (node.type !== this.node.type) {\n return false;\n }\n\n if (node === this.node && this.decorations === decorations) {\n return true;\n }\n\n this.node = node;\n this.decorations = decorations;\n this.updateComponentProps({\n node,\n decorations\n });\n return true;\n }\n\n updateComponentProps(props) {\n if (!this.vm._props) {\n return;\n } // Update props in component\n // TODO: Avoid mutating a prop directly.\n // Maybe there is a better way to do this?\n\n\n const originalSilent = Vue.config.silent;\n Vue.config.silent = true;\n Object.entries(props).forEach(([key, value]) => {\n this.vm._props[key] = value;\n }); // this.vm._props.node = node\n // this.vm._props.decorations = decorations\n\n Vue.config.silent = originalSilent;\n }\n\n updateAttrs(attrs) {\n if (!this.view.editable) {\n return;\n }\n\n const {\n state\n } = this.view;\n const {\n type\n } = this.node;\n const pos = this.getPos();\n const newAttrs = { ...this.node.attrs,\n ...attrs\n };\n const transaction = this.isMark ? state.tr.removeMark(pos.from, pos.to, type).addMark(pos.from, pos.to, type.create(newAttrs)) : state.tr.setNodeMarkup(pos, null, newAttrs);\n this.view.dispatch(transaction);\n } // prevent a full re-render of the vue component on update\n // we'll handle prop updates in `update()`\n\n\n ignoreMutation(mutation) {\n // allow leaf nodes to be selected\n if (mutation.type === 'selection') {\n return false;\n }\n\n if (!this.contentDOM) {\n return true;\n }\n\n return !this.contentDOM.contains(mutation.target);\n } // disable (almost) all prosemirror event listener for node views\n\n\n stopEvent(event) {\n if (typeof this.extension.stopEvent === 'function') {\n return this.extension.stopEvent(event);\n }\n\n const draggable = !!this.extension.schema.draggable; // support a custom drag handle\n\n if (draggable && event.type === 'mousedown') {\n const dragHandle = event.target.closest && event.target.closest('[data-drag-handle]');\n const isValidDragHandle = dragHandle && (this.dom === dragHandle || this.dom.contains(dragHandle));\n\n if (isValidDragHandle) {\n this.captureEvents = false;\n document.addEventListener('dragend', () => {\n this.captureEvents = true;\n }, {\n once: true\n });\n }\n }\n\n const isCopy = event.type === 'copy';\n const isPaste = event.type === 'paste';\n const isCut = event.type === 'cut';\n const isDrag = event.type.startsWith('drag') || event.type === 'drop';\n\n if (draggable && isDrag || isCopy || isPaste || isCut) {\n return false;\n }\n\n return this.captureEvents;\n }\n\n selectNode() {\n this.updateComponentProps({\n selected: true\n });\n }\n\n deselectNode() {\n this.updateComponentProps({\n selected: false\n });\n }\n\n getMarkPos() {\n const pos = this.view.posAtDOM(this.dom);\n const resolvedPos = this.view.state.doc.resolve(pos);\n const range = getMarkRange(resolvedPos, this.node.type);\n return range;\n }\n\n destroy() {\n this.vm.$destroy();\n }\n\n}\n\nclass Emitter {\n // Add an event listener for given event\n on(event, fn) {\n this._callbacks = this._callbacks || {}; // Create namespace for this event\n\n if (!this._callbacks[event]) {\n this._callbacks[event] = [];\n }\n\n this._callbacks[event].push(fn);\n\n return this;\n }\n\n emit(event, ...args) {\n this._callbacks = this._callbacks || {};\n const callbacks = this._callbacks[event];\n\n if (callbacks) {\n callbacks.forEach(callback => callback.apply(this, args));\n }\n\n return this;\n } // Remove event listener for given event.\n // If fn is not provided, all event listeners for that event will be removed.\n // If neither is provided, all event listeners will be removed.\n\n\n off(event, fn) {\n if (!arguments.length) {\n this._callbacks = {};\n } else {\n // event listeners for the given event\n const callbacks = this._callbacks ? this._callbacks[event] : null;\n\n if (callbacks) {\n if (fn) {\n this._callbacks[event] = callbacks.filter(cb => cb !== fn); // remove specific handler\n } else {\n delete this._callbacks[event]; // remove all handlers\n }\n }\n }\n\n return this;\n }\n\n}\n\nclass Extension {\n constructor(options = {}) {\n this.options = { ...this.defaultOptions,\n ...options\n };\n }\n\n init() {\n return null;\n }\n\n bindEditor(editor = null) {\n this.editor = editor;\n }\n\n get name() {\n return null;\n }\n\n get type() {\n return 'extension';\n }\n\n get defaultOptions() {\n return {};\n }\n\n get plugins() {\n return [];\n }\n\n inputRules() {\n return [];\n }\n\n pasteRules() {\n return [];\n }\n\n keys() {\n return {};\n }\n\n}\n\nclass ExtensionManager {\n constructor(extensions = [], editor) {\n extensions.forEach(extension => {\n extension.bindEditor(editor);\n extension.init();\n });\n this.extensions = extensions;\n }\n\n get nodes() {\n return this.extensions.filter(extension => extension.type === 'node').reduce((nodes, {\n name,\n schema\n }) => ({ ...nodes,\n [name]: schema\n }), {});\n }\n\n get options() {\n const {\n view\n } = this;\n return this.extensions.reduce((nodes, extension) => ({ ...nodes,\n [extension.name]: new Proxy(extension.options, {\n set(obj, prop, value) {\n const changed = obj[prop] !== value;\n Object.assign(obj, {\n [prop]: value\n });\n\n if (changed) {\n view.updateState(view.state);\n }\n\n return true;\n }\n\n })\n }), {});\n }\n\n get marks() {\n return this.extensions.filter(extension => extension.type === 'mark').reduce((marks, {\n name,\n schema\n }) => ({ ...marks,\n [name]: schema\n }), {});\n }\n\n get plugins() {\n return this.extensions.filter(extension => extension.plugins).reduce((allPlugins, {\n plugins\n }) => [...allPlugins, ...plugins], []);\n }\n\n keymaps({\n schema\n }) {\n const extensionKeymaps = this.extensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.keys).map(extension => extension.keys({\n schema\n }));\n const nodeMarkKeymaps = this.extensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.keys).map(extension => extension.keys({\n type: schema[\"\".concat(extension.type, \"s\")][extension.name],\n schema\n }));\n return [...extensionKeymaps, ...nodeMarkKeymaps].map(keys => keymap(keys));\n }\n\n inputRules({\n schema,\n excludedExtensions\n }) {\n if (!(excludedExtensions instanceof Array) && excludedExtensions) return [];\n const allowedExtensions = excludedExtensions instanceof Array ? this.extensions.filter(extension => !excludedExtensions.includes(extension.name)) : this.extensions;\n const extensionInputRules = allowedExtensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.inputRules).map(extension => extension.inputRules({\n schema\n }));\n const nodeMarkInputRules = allowedExtensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.inputRules).map(extension => extension.inputRules({\n type: schema[\"\".concat(extension.type, \"s\")][extension.name],\n schema\n }));\n return [...extensionInputRules, ...nodeMarkInputRules].reduce((allInputRules, inputRules) => [...allInputRules, ...inputRules], []);\n }\n\n pasteRules({\n schema,\n excludedExtensions\n }) {\n if (!(excludedExtensions instanceof Array) && excludedExtensions) return [];\n const allowedExtensions = excludedExtensions instanceof Array ? this.extensions.filter(extension => !excludedExtensions.includes(extension.name)) : this.extensions;\n const extensionPasteRules = allowedExtensions.filter(extension => ['extension'].includes(extension.type)).filter(extension => extension.pasteRules).map(extension => extension.pasteRules({\n schema\n }));\n const nodeMarkPasteRules = allowedExtensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.pasteRules).map(extension => extension.pasteRules({\n type: schema[\"\".concat(extension.type, \"s\")][extension.name],\n schema\n }));\n return [...extensionPasteRules, ...nodeMarkPasteRules].reduce((allPasteRules, pasteRules) => [...allPasteRules, ...pasteRules], []);\n }\n\n commands({\n schema,\n view\n }) {\n return this.extensions.filter(extension => extension.commands).reduce((allCommands, extension) => {\n const {\n name,\n type\n } = extension;\n const commands = {};\n const value = extension.commands({\n schema,\n ...(['node', 'mark'].includes(type) ? {\n type: schema[\"\".concat(type, \"s\")][name]\n } : {})\n });\n\n const apply = (cb, attrs) => {\n if (!view.editable) {\n return false;\n }\n\n view.focus();\n return cb(attrs)(view.state, view.dispatch, view);\n };\n\n const handle = (_name, _value) => {\n if (Array.isArray(_value)) {\n commands[_name] = attrs => _value.forEach(callback => apply(callback, attrs));\n } else if (typeof _value === 'function') {\n commands[_name] = attrs => apply(_value, attrs);\n }\n };\n\n if (typeof value === 'object') {\n Object.entries(value).forEach(([commandName, commandValue]) => {\n handle(commandName, commandValue);\n });\n } else {\n handle(name, value);\n }\n\n return { ...allCommands,\n ...commands\n };\n }, {});\n }\n\n}\n\nfunction injectCSS (css) {\n if (process.env.NODE_ENV !== 'test') {\n const style = document.createElement('style');\n style.type = 'text/css';\n style.textContent = css;\n const {\n head\n } = document;\n const {\n firstChild\n } = head;\n\n if (firstChild) {\n head.insertBefore(style, firstChild);\n } else {\n head.appendChild(style);\n }\n }\n}\n\nclass Mark extends Extension {\n constructor(options = {}) {\n super(options);\n }\n\n get type() {\n return 'mark';\n }\n\n get view() {\n return null;\n }\n\n get schema() {\n return null;\n }\n\n command() {\n return () => {};\n }\n\n}\n\nfunction minMax(value = 0, min = 0, max = 0) {\n return Math.min(Math.max(parseInt(value, 10), min), max);\n}\n\nclass Node extends Extension {\n constructor(options = {}) {\n super(options);\n }\n\n get type() {\n return 'node';\n }\n\n get view() {\n return null;\n }\n\n get schema() {\n return null;\n }\n\n command() {\n return () => {};\n }\n\n}\n\nclass Doc extends Node {\n get name() {\n return 'doc';\n }\n\n get schema() {\n return {\n content: 'block+'\n };\n }\n\n}\n\nclass Paragraph extends Node {\n get name() {\n return 'paragraph';\n }\n\n get schema() {\n return {\n content: 'inline*',\n group: 'block',\n draggable: false,\n parseDOM: [{\n tag: 'p'\n }],\n toDOM: () => ['p', 0]\n };\n }\n\n commands({\n type\n }) {\n return () => setBlockType(type);\n }\n\n}\n\nclass Text extends Node {\n get name() {\n return 'text';\n }\n\n get schema() {\n return {\n group: 'inline'\n };\n }\n\n}\n\nvar css = \".ProseMirror {\\n position: relative;\\n}\\n\\n.ProseMirror {\\n word-wrap: break-word;\\n white-space: pre-wrap;\\n -webkit-font-variant-ligatures: none;\\n font-variant-ligatures: none;\\n}\\n\\n.ProseMirror pre {\\n white-space: pre-wrap;\\n}\\n\\n.ProseMirror-gapcursor {\\n display: none;\\n pointer-events: none;\\n position: absolute;\\n}\\n\\n.ProseMirror-gapcursor:after {\\n content: \\\"\\\";\\n display: block;\\n position: absolute;\\n top: -2px;\\n width: 20px;\\n border-top: 1px solid black;\\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\\n}\\n\\n@keyframes ProseMirror-cursor-blink {\\n to {\\n visibility: hidden;\\n }\\n}\\n\\n.ProseMirror-hideselection *::selection {\\n background: transparent;\\n}\\n\\n.ProseMirror-hideselection *::-moz-selection {\\n background: transparent;\\n}\\n\\n.ProseMirror-hideselection * {\\n caret-color: transparent;\\n}\\n\\n.ProseMirror-focused .ProseMirror-gapcursor {\\n display: block;\\n}\\n\";\n\nclass Editor extends Emitter {\n constructor(options = {}) {\n super();\n this.defaultOptions = {\n editorProps: {},\n editable: true,\n autoFocus: null,\n extensions: [],\n content: '',\n topNode: 'doc',\n emptyDocument: {\n type: 'doc',\n content: [{\n type: 'paragraph'\n }]\n },\n useBuiltInExtensions: true,\n disableInputRules: false,\n disablePasteRules: false,\n dropCursor: {},\n enableDropCursor: true,\n enableGapCursor: true,\n parseOptions: {},\n injectCSS: true,\n onInit: () => {},\n onTransaction: () => {},\n onUpdate: () => {},\n onFocus: () => {},\n onBlur: () => {},\n onPaste: () => {},\n onDrop: () => {}\n };\n this.events = ['init', 'transaction', 'update', 'focus', 'blur', 'paste', 'drop'];\n this.init(options);\n }\n\n init(options = {}) {\n this.setOptions({ ...this.defaultOptions,\n ...options\n });\n this.focused = false;\n this.selection = {\n from: 0,\n to: 0\n };\n this.element = document.createElement('div');\n this.extensions = this.createExtensions();\n this.nodes = this.createNodes();\n this.marks = this.createMarks();\n this.schema = this.createSchema();\n this.plugins = this.createPlugins();\n this.keymaps = this.createKeymaps();\n this.inputRules = this.createInputRules();\n this.pasteRules = this.createPasteRules();\n this.view = this.createView();\n this.commands = this.createCommands();\n this.setActiveNodesAndMarks();\n\n if (this.options.injectCSS) {\n injectCSS(css);\n }\n\n if (this.options.autoFocus !== null) {\n this.focus(this.options.autoFocus);\n }\n\n this.events.forEach(name => {\n this.on(name, this.options[camelCase(\"on \".concat(name))] || (() => {}));\n });\n this.emit('init', {\n view: this.view,\n state: this.state\n }); // give extension manager access to our view\n\n this.extensions.view = this.view;\n }\n\n setOptions(options) {\n this.options = { ...this.options,\n ...options\n };\n\n if (this.view && this.state) {\n this.view.updateState(this.state);\n }\n }\n\n get builtInExtensions() {\n if (!this.options.useBuiltInExtensions) {\n return [];\n }\n\n return [new Doc(), new Text(), new Paragraph()];\n }\n\n get state() {\n return this.view ? this.view.state : null;\n }\n\n createExtensions() {\n return new ExtensionManager([...this.builtInExtensions, ...this.options.extensions], this);\n }\n\n createPlugins() {\n return this.extensions.plugins;\n }\n\n createKeymaps() {\n return this.extensions.keymaps({\n schema: this.schema\n });\n }\n\n createInputRules() {\n return this.extensions.inputRules({\n schema: this.schema,\n excludedExtensions: this.options.disableInputRules\n });\n }\n\n createPasteRules() {\n return this.extensions.pasteRules({\n schema: this.schema,\n excludedExtensions: this.options.disablePasteRules\n });\n }\n\n createCommands() {\n return this.extensions.commands({\n schema: this.schema,\n view: this.view\n });\n }\n\n createNodes() {\n return this.extensions.nodes;\n }\n\n createMarks() {\n return this.extensions.marks;\n }\n\n createSchema() {\n return new Schema({\n topNode: this.options.topNode,\n nodes: this.nodes,\n marks: this.marks\n });\n }\n\n createState() {\n return EditorState.create({\n schema: this.schema,\n doc: this.createDocument(this.options.content),\n plugins: [...this.plugins, inputRules({\n rules: this.inputRules\n }), ...this.pasteRules, ...this.keymaps, keymap({\n Backspace: undoInputRule\n }), keymap(baseKeymap), ...(this.options.enableDropCursor ? [dropCursor(this.options.dropCursor)] : []), ...(this.options.enableGapCursor ? [gapCursor()] : []), new Plugin({\n key: new PluginKey('editable'),\n props: {\n editable: () => this.options.editable\n }\n }), new Plugin({\n props: {\n attributes: {\n tabindex: 0\n },\n handleDOMEvents: {\n focus: (view, event) => {\n this.focused = true;\n this.emit('focus', {\n event,\n state: view.state,\n view\n });\n const transaction = this.state.tr.setMeta('focused', true);\n this.view.dispatch(transaction);\n },\n blur: (view, event) => {\n this.focused = false;\n this.emit('blur', {\n event,\n state: view.state,\n view\n });\n const transaction = this.state.tr.setMeta('focused', false);\n this.view.dispatch(transaction);\n }\n }\n }\n }), new Plugin({\n props: this.options.editorProps\n })]\n });\n }\n\n createDocument(content, parseOptions = this.options.parseOptions) {\n if (content === null) {\n return this.schema.nodeFromJSON(this.options.emptyDocument);\n }\n\n if (typeof content === 'object') {\n try {\n return this.schema.nodeFromJSON(content);\n } catch (error) {\n console.warn('[tiptap warn]: Invalid content.', 'Passed value:', content, 'Error:', error);\n return this.schema.nodeFromJSON(this.options.emptyDocument);\n }\n }\n\n if (typeof content === 'string') {\n const htmlString = \"<div>\".concat(content, \"</div>\");\n const parser = new window.DOMParser();\n const element = parser.parseFromString(htmlString, 'text/html').body.firstElementChild;\n return DOMParser.fromSchema(this.schema).parse(element, parseOptions);\n }\n\n return false;\n }\n\n createView() {\n return new EditorView(this.element, {\n state: this.createState(),\n handlePaste: (...args) => {\n this.emit('paste', ...args);\n },\n handleDrop: (...args) => {\n this.emit('drop', ...args);\n },\n dispatchTransaction: this.dispatchTransaction.bind(this)\n });\n }\n\n setParentComponent(component = null) {\n if (!component) {\n return;\n }\n\n this.view.setProps({\n nodeViews: this.initNodeViews({\n parent: component,\n extensions: [...this.builtInExtensions, ...this.options.extensions]\n })\n });\n }\n\n initNodeViews({\n parent,\n extensions\n }) {\n return extensions.filter(extension => ['node', 'mark'].includes(extension.type)).filter(extension => extension.view).reduce((nodeViews, extension) => {\n const nodeView = (node, view, getPos, decorations) => {\n const component = extension.view;\n return new ComponentView(component, {\n editor: this,\n extension,\n parent,\n node,\n view,\n getPos,\n decorations\n });\n };\n\n return { ...nodeViews,\n [extension.name]: nodeView\n };\n }, {});\n }\n\n dispatchTransaction(transaction) {\n const newState = this.state.apply(transaction);\n this.view.updateState(newState);\n this.selection = {\n from: this.state.selection.from,\n to: this.state.selection.to\n };\n this.setActiveNodesAndMarks();\n this.emit('transaction', {\n getHTML: this.getHTML.bind(this),\n getJSON: this.getJSON.bind(this),\n state: this.state,\n transaction\n });\n\n if (!transaction.docChanged || transaction.getMeta('preventUpdate')) {\n return;\n }\n\n this.emitUpdate(transaction);\n }\n\n emitUpdate(transaction) {\n this.emit('update', {\n getHTML: this.getHTML.bind(this),\n getJSON: this.getJSON.bind(this),\n state: this.state,\n transaction\n });\n }\n\n resolveSelection(position = null) {\n if (this.selection && position === null) {\n return this.selection;\n }\n\n if (position === 'start' || position === true) {\n return {\n from: 0,\n to: 0\n };\n }\n\n if (position === 'end') {\n const {\n doc\n } = this.state;\n return {\n from: doc.content.size,\n to: doc.content.size\n };\n }\n\n return {\n from: position,\n to: position\n };\n }\n\n focus(position = null) {\n if (this.view.focused && position === null || position === false) {\n return;\n }\n\n const {\n from,\n to\n } = this.resolveSelection(position);\n this.setSelection(from, to);\n setTimeout(() => this.view.focus(), 10);\n }\n\n setSelection(from = 0, to = 0) {\n const {\n doc,\n tr\n } = this.state;\n const resolvedFrom = minMax(from, 0, doc.content.size);\n const resolvedEnd = minMax(to, 0, doc.content.size);\n const selection = TextSelection.create(doc, resolvedFrom, resolvedEnd);\n const transaction = tr.setSelection(selection);\n this.view.dispatch(transaction);\n }\n\n blur() {\n this.view.dom.blur();\n }\n\n getSchemaJSON() {\n return JSON.parse(JSON.stringify({\n nodes: this.extensions.nodes,\n marks: this.extensions.marks\n }));\n }\n\n getHTML() {\n const div = document.createElement('div');\n const fragment = DOMSerializer.fromSchema(this.schema).serializeFragment(this.state.doc.content);\n div.appendChild(fragment);\n return div.innerHTML;\n }\n\n getJSON() {\n return this.state.doc.toJSON();\n }\n\n setContent(content = {}, emitUpdate = false, parseOptions) {\n const {\n doc,\n tr\n } = this.state;\n const document = this.createDocument(content, parseOptions);\n const selection = TextSelection.create(doc, 0, doc.content.size);\n const transaction = tr.setSelection(selection).replaceSelectionWith(document, false).setMeta('preventUpdate', !emitUpdate);\n this.view.dispatch(transaction);\n }\n\n clearContent(emitUpdate = false) {\n this.setContent(this.options.emptyDocument, emitUpdate);\n }\n\n setActiveNodesAndMarks() {\n this.activeMarks = Object.entries(this.schema.marks).reduce((marks, [name, mark]) => ({ ...marks,\n [name]: (attrs = {}) => markIsActive(this.state, mark, attrs)\n }), {});\n this.activeMarkAttrs = Object.entries(this.schema.marks).reduce((marks, [name, mark]) => ({ ...marks,\n [name]: getMarkAttrs(this.state, mark)\n }), {});\n this.activeNodes = Object.entries(this.schema.nodes).reduce((nodes, [name, node]) => ({ ...nodes,\n [name]: (attrs = {}) => nodeIsActive(this.state, node, attrs)\n }), {});\n }\n\n getMarkAttrs(type = null) {\n return this.activeMarkAttrs[type];\n }\n\n getNodeAttrs(type = null) {\n return { ...getNodeAttrs(this.state, this.schema.nodes[type])\n };\n }\n\n get isActive() {\n return Object.entries({ ...this.activeMarks,\n ...this.activeNodes\n }).reduce((types, [name, value]) => ({ ...types,\n [name]: (attrs = {}) => value(attrs)\n }), {});\n }\n\n registerPlugin(plugin = null, handlePlugins) {\n const plugins = typeof handlePlugins === 'function' ? handlePlugins(plugin, this.state.plugins) : [plugin, ...this.state.plugins];\n const newState = this.state.reconfigure({\n plugins\n });\n this.view.updateState(newState);\n }\n\n unregisterPlugin(name = null) {\n if (!name || !this.view.docView) {\n return;\n }\n\n const newState = this.state.reconfigure({\n plugins: this.state.plugins.filter(plugin => !plugin.key.startsWith(\"\".concat(name, \"$\")))\n });\n this.view.updateState(newState);\n }\n\n destroy() {\n if (!this.view) {\n return;\n }\n\n this.view.destroy();\n }\n\n}\n\nvar EditorContent = {\n props: {\n editor: {\n default: null,\n type: Object\n }\n },\n watch: {\n editor: {\n immediate: true,\n\n handler(editor) {\n if (editor && editor.element) {\n this.$nextTick(() => {\n this.$el.appendChild(editor.element.firstChild);\n editor.setParentComponent(this);\n });\n }\n }\n\n }\n },\n\n render(createElement) {\n return createElement('div');\n },\n\n beforeDestroy() {\n this.editor.element = this.$el;\n }\n\n};\n\nclass Menu {\n constructor({\n options\n }) {\n this.options = options;\n this.preventHide = false; // the mousedown event is fired before blur so we can prevent it\n\n this.mousedownHandler = this.handleClick.bind(this);\n this.options.element.addEventListener('mousedown', this.mousedownHandler, {\n capture: true\n });\n\n this.blurHandler = () => {\n if (this.preventHide) {\n this.preventHide = false;\n return;\n }\n\n this.options.editor.emit('menubar:focusUpdate', false);\n };\n\n this.options.editor.on('blur', this.blurHandler);\n }\n\n handleClick() {\n this.preventHide = true;\n }\n\n destroy() {\n this.options.element.removeEventListener('mousedown', this.mousedownHandler);\n this.options.editor.off('blur', this.blurHandler);\n }\n\n}\n\nfunction MenuBar (options) {\n return new Plugin({\n key: new PluginKey('menu_bar'),\n\n view(editorView) {\n return new Menu({\n editorView,\n options\n });\n }\n\n });\n}\n\nvar EditorMenuBar = {\n props: {\n editor: {\n default: null,\n type: Object\n }\n },\n\n data() {\n return {\n focused: false\n };\n },\n\n watch: {\n editor: {\n immediate: true,\n\n handler(editor) {\n if (editor) {\n this.$nextTick(() => {\n editor.registerPlugin(MenuBar({\n editor,\n element: this.$el\n }));\n this.focused = editor.focused;\n editor.on('focus', () => {\n this.focused = true;\n });\n editor.on('menubar:focusUpdate', focused => {\n this.focused = focused;\n });\n });\n }\n }\n\n }\n },\n\n render() {\n if (!this.editor) {\n return null;\n }\n\n return this.$scopedSlots.default({\n focused: this.focused,\n focus: this.editor.focus,\n commands: this.editor.commands,\n isActive: this.editor.isActive,\n getMarkAttrs: this.editor.getMarkAttrs.bind(this.editor),\n getNodeAttrs: this.editor.getNodeAttrs.bind(this.editor)\n });\n }\n\n};\n\nfunction textRange(node, from, to) {\n const range = document.createRange();\n range.setEnd(node, to == null ? node.nodeValue.length : to);\n range.setStart(node, from || 0);\n return range;\n}\n\nfunction singleRect(object, bias) {\n const rects = object.getClientRects();\n return !rects.length ? object.getBoundingClientRect() : rects[bias < 0 ? 0 : rects.length - 1];\n}\n\nfunction coordsAtPos(view, pos, end = false) {\n const {\n node,\n offset\n } = view.docView.domFromPos(pos);\n let side;\n let rect;\n\n if (node.nodeType === 3) {\n if (end && offset < node.nodeValue.length) {\n rect = singleRect(textRange(node, offset - 1, offset), -1);\n side = 'right';\n } else if (offset < node.nodeValue.length) {\n rect = singleRect(textRange(node, offset, offset + 1), -1);\n side = 'left';\n }\n } else if (node.firstChild) {\n if (offset < node.childNodes.length) {\n const child = node.childNodes[offset];\n rect = singleRect(child.nodeType === 3 ? textRange(child) : child, -1);\n side = 'left';\n }\n\n if ((!rect || rect.top === rect.bottom) && offset) {\n const child = node.childNodes[offset - 1];\n rect = singleRect(child.nodeType === 3 ? textRange(child) : child, 1);\n side = 'right';\n }\n } else {\n rect = node.getBoundingClientRect();\n side = 'left';\n }\n\n const x = rect[side];\n return {\n top: rect.top,\n bottom: rect.bottom,\n left: x,\n right: x\n };\n}\n\nclass Menu$1 {\n constructor({\n options,\n editorView\n }) {\n this.options = { ...{\n element: null,\n keepInBounds: true,\n onUpdate: () => false\n },\n ...options\n };\n this.editorView = editorView;\n this.isActive = false;\n this.left = 0;\n this.bottom = 0;\n this.top = 0;\n this.preventHide = false; // the mousedown event is fired before blur so we can prevent it\n\n this.mousedownHandler = this.handleClick.bind(this);\n this.options.element.addEventListener('mousedown', this.mousedownHandler, {\n capture: true\n });\n\n this.focusHandler = ({\n view\n }) => {\n this.update(view);\n };\n\n this.options.editor.on('focus', this.focusHandler);\n\n this.blurHandler = ({\n event\n }) => {\n if (this.preventHide) {\n this.preventHide = false;\n return;\n }\n\n this.hide(event);\n };\n\n this.options.editor.on('blur', this.blurHandler);\n }\n\n handleClick() {\n this.preventHide = true;\n }\n\n update(view, lastState) {\n const {\n state\n } = view;\n\n if (view.composing) {\n return;\n } // Don't do anything if the document/selection didn't change\n\n\n if (lastState && lastState.doc.eq(state.doc) && lastState.selection.eq(state.selection)) {\n return;\n } // Hide the tooltip if the selection is empty\n\n\n if (state.selection.empty) {\n this.hide();\n return;\n } // Otherwise, reposition it and update its content\n\n\n const {\n from,\n to\n } = state.selection; // These are in screen coordinates\n // We can't use EditorView.cordsAtPos here because it can't handle linebreaks correctly\n // See: https://github.com/ProseMirror/prosemirror-view/pull/47\n\n const start = coordsAtPos(view, from);\n const end = coordsAtPos(view, to, true); // The box in which the tooltip is positioned, to use as base\n\n const parent = this.options.element.offsetParent;\n\n if (!parent) {\n this.hide();\n return;\n }\n\n const box = parent.getBoundingClientRect();\n const el = this.options.element.getBoundingClientRect(); // Find a center-ish x position from the selection endpoints (when\n // crossing lines, end may be more to the left)\n\n const left = (start.left + end.left) / 2 - box.left; // Keep the menuBubble in the bounding box of the offsetParent i\n\n this.left = Math.round(this.options.keepInBounds ? Math.min(box.width - el.width / 2, Math.max(left, el.width / 2)) : left);\n this.bottom = Math.round(box.bottom - start.top);\n this.top = Math.round(end.bottom - box.top);\n this.isActive = true;\n this.sendUpdate();\n }\n\n sendUpdate() {\n this.options.onUpdate({\n isActive: this.isActive,\n left: this.left,\n bottom: this.bottom,\n top: this.top\n });\n }\n\n hide(event) {\n if (event && event.relatedTarget && this.options.element.parentNode && this.options.element.parentNode.contains(event.relatedTarget)) {\n return;\n }\n\n this.isActive = false;\n this.sendUpdate();\n }\n\n destroy() {\n this.options.element.removeEventListener('mousedown', this.mousedownHandler);\n this.options.editor.off('focus', this.focusHandler);\n this.options.editor.off('blur', this.blurHandler);\n }\n\n}\n\nfunction MenuBubble (options) {\n return new Plugin({\n key: new PluginKey('menu_bubble'),\n\n view(editorView) {\n return new Menu$1({\n editorView,\n options\n });\n }\n\n });\n}\n\nvar EditorMenuBubble = {\n props: {\n editor: {\n default: null,\n type: Object\n },\n keepInBounds: {\n default: true,\n type: Boolean\n }\n },\n\n data() {\n return {\n menu: {\n isActive: false,\n left: 0,\n bottom: 0\n }\n };\n },\n\n watch: {\n editor: {\n immediate: true,\n\n handler(editor) {\n if (editor) {\n this.$nextTick(() => {\n editor.registerPlugin(MenuBubble({\n editor,\n element: this.$el,\n keepInBounds: this.keepInBounds,\n onUpdate: menu => {\n // the second check ensures event is fired only once\n if (menu.isActive && this.menu.isActive === false) {\n this.$emit('show', menu);\n } else if (!menu.isActive && this.menu.isActive === true) {\n this.$emit('hide', menu);\n }\n\n this.menu = menu;\n }\n }));\n });\n }\n }\n\n }\n },\n\n render() {\n if (!this.editor) {\n return null;\n }\n\n return this.$scopedSlots.default({\n focused: this.editor.view.focused,\n focus: this.editor.focus,\n commands: this.editor.commands,\n isActive: this.editor.isActive,\n getMarkAttrs: this.editor.getMarkAttrs.bind(this.editor),\n getNodeAttrs: this.editor.getNodeAttrs.bind(this.editor),\n menu: this.menu\n });\n },\n\n beforeDestroy() {\n this.editor.unregisterPlugin('menu_bubble');\n }\n\n};\n\nclass Menu$2 {\n constructor({\n options,\n editorView\n }) {\n this.options = { ...{\n resizeObserver: true,\n element: null,\n onUpdate: () => false\n },\n ...options\n };\n this.preventHide = false;\n this.editorView = editorView;\n this.isActive = false;\n this.top = 0; // the mousedown event is fired before blur so we can prevent it\n\n this.mousedownHandler = this.handleClick.bind(this);\n this.options.element.addEventListener('mousedown', this.mousedownHandler, {\n capture: true\n });\n\n this.focusHandler = ({\n view\n }) => {\n this.update(view);\n };\n\n this.options.editor.on('focus', this.focusHandler);\n\n this.blurHandler = ({\n event\n }) => {\n if (this.preventHide) {\n this.preventHide = false;\n return;\n }\n\n this.hide(event);\n };\n\n this.options.editor.on('blur', this.blurHandler); // sometimes we have to update the position\n // because of a loaded images for example\n\n if (this.options.resizeObserver && window.ResizeObserver) {\n this.resizeObserver = new ResizeObserver(() => {\n if (this.isActive) {\n this.update(this.editorView);\n }\n });\n this.resizeObserver.observe(this.editorView.dom);\n }\n }\n\n handleClick() {\n this.preventHide = true;\n }\n\n update(view, lastState) {\n const {\n state\n } = view; // Don't do anything if the document/selection didn't change\n\n if (lastState && lastState.doc.eq(state.doc) && lastState.selection.eq(state.selection)) {\n return;\n }\n\n if (!state.selection.empty) {\n this.hide();\n return;\n }\n\n const currentDom = view.domAtPos(state.selection.anchor);\n const isActive = currentDom.node.innerHTML === '<br>' && currentDom.node.tagName === 'P' && currentDom.node.parentNode === view.dom;\n\n if (!isActive) {\n this.hide();\n return;\n }\n\n const parent = this.options.element.offsetParent;\n\n if (!parent) {\n this.hide();\n return;\n }\n\n const editorBoundings = parent.getBoundingClientRect();\n const cursorBoundings = view.coordsAtPos(state.selection.anchor);\n const top = cursorBoundings.top - editorBoundings.top;\n this.isActive = true;\n this.top = top;\n this.sendUpdate();\n }\n\n sendUpdate() {\n this.options.onUpdate({\n isActive: this.isActive,\n top: this.top\n });\n }\n\n hide(event) {\n if (event && event.relatedTarget && this.options.element.parentNode && this.options.element.parentNode.contains(event.relatedTarget)) {\n return;\n }\n\n this.isActive = false;\n this.sendUpdate();\n }\n\n destroy() {\n this.options.element.removeEventListener('mousedown', this.mousedownHandler);\n\n if (this.resizeObserver) {\n this.resizeObserver.unobserve(this.editorView.dom);\n }\n\n this.options.editor.off('focus', this.focusHandler);\n this.options.editor.off('blur', this.blurHandler);\n }\n\n}\n\nfunction FloatingMenu (options) {\n return new Plugin({\n key: new PluginKey('floating_menu'),\n\n view(editorView) {\n return new Menu$2({\n editorView,\n options\n });\n }\n\n });\n}\n\nvar EditorFloatingMenu = {\n props: {\n editor: {\n default: null,\n type: Object\n }\n },\n\n data() {\n return {\n menu: {\n isActive: false,\n left: 0,\n bottom: 0\n }\n };\n },\n\n watch: {\n editor: {\n immediate: true,\n\n handler(editor) {\n if (editor) {\n this.$nextTick(() => {\n editor.registerPlugin(FloatingMenu({\n editor,\n element: this.$el,\n onUpdate: menu => {\n // the second check ensures event is fired only once\n if (menu.isActive && this.menu.isActive === false) {\n this.$emit('show', menu);\n } else if (!menu.isActive && this.menu.isActive === true) {\n this.$emit('hide', menu);\n }\n\n this.menu = menu;\n }\n }));\n });\n }\n }\n\n }\n },\n\n render() {\n if (!this.editor) {\n return null;\n }\n\n return this.$scopedSlots.default({\n focused: this.editor.view.focused,\n focus: this.editor.focus,\n commands: this.editor.commands,\n isActive: this.editor.isActive,\n getMarkAttrs: this.editor.getMarkAttrs.bind(this.editor),\n getNodeAttrs: this.editor.getNodeAttrs.bind(this.editor),\n menu: this.menu\n });\n },\n\n beforeDestroy() {\n this.editor.unregisterPlugin('floating_menu');\n }\n\n};\n\nexport { Doc, Editor, EditorContent, EditorFloatingMenu, EditorMenuBar, EditorMenuBubble, Extension, Mark, Node, Paragraph, Text };\n"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea.a283cad8.js b/priv/static/adminfe/static/js/chunk-68ea.a283cad8.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-68ea"],{"/eX4":function(s,t,i){"use strict";i.r(t);var e=[function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"pic-404"},[t("img",{staticClass:"pic-404__parent",attrs:{src:i("o2sD"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child left",attrs:{src:i("Jvyq"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child mid",attrs:{src:i("Jvyq"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child right",attrs:{src:i("Jvyq"),alt:"404"}})])}],n={name:"Page404",computed:{message:function(){return"There is nothing here"}}},r=(i("J67/"),i("KHd+")),l=Object(r.a)(n,function(){var s=this,t=s.$createElement,i=s._self._c||t;return i("div",{staticClass:"wscn-http404-container"},[i("div",{staticClass:"wscn-http404"},[s._m(0),s._v(" "),i("div",{staticClass:"bullshit"},[i("div",{staticClass:"bullshit__oops"},[s._v("OOPS!")]),s._v(" "),i("div",{staticClass:"bullshit__headline"},[s._v(s._s(s.message))]),s._v(" "),i("div",{staticClass:"bullshit__info"},[s._v("Please make sure you URL is correct")]),s._v(" "),i("router-link",{staticClass:"bullshit__return-home",attrs:{to:"/"}},[s._v("Go to the home page")])],1)])])},e,!1,null,"1d6b2d2a",null);l.options.__file="404.vue";t.default=l.exports},"J67/":function(s,t,i){"use strict";var e=i("QCkX");i.n(e).a},Jvyq:function(s,t){s.exports="data:image/png;base64,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"},QCkX:function(s,t,i){},o2sD:function(s,t,i){s.exports=i.p+"static/img/404.a57b6f3.png"}}]); +//# sourceMappingURL=chunk-68ea.a283cad8.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea.a283cad8.js.map b/priv/static/adminfe/static/js/chunk-68ea.a283cad8.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/errorPage/404.vue?e9e9","webpack:///./src/views/errorPage/404.vue?e36b","webpack:///src/views/errorPage/404.vue","webpack:///./src/views/errorPage/404.vue","webpack:///./src/views/errorPage/404.vue?ce30","webpack:///./src/assets/404_images/404_cloud.png","webpack:///./src/assets/404_images/404.png"],"names":["staticRenderFns","_h","this","$createElement","_c","_self","staticClass","attrs","src","__webpack_require__","alt","_v","errorPage_404vue_type_script_lang_js_","name","computed","message","component","Object","componentNormalizer","_vm","_m","_s","to","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_404_vue_vue_type_style_index_0_id_1d6b2d2a_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","n","module","exports","p"],"mappings":"+GAAA,IACAA,GAAA,WAAoC,IAAaC,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBE,YAAA,YAAsBF,EAAA,OAAYE,YAAA,kBAAAC,OAAqCC,IAAMC,EAAQ,QAA6BC,IAAA,SAAlMR,KAAiNS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,sBAAAC,OAAyCC,IAAMC,EAAQ,QAAmCC,IAAA,SAAnUR,KAAkVS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,qBAAAC,OAAwCC,IAAMC,EAAQ,QAAmCC,IAAA,SAAncR,KAAkdS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,uBAAAC,OAA0CC,IAAMC,EAAQ,QAAmCC,IAAA,aCDjaE,GCsBxMC,KAAA,UACAC,UACAC,QADA,WAEA,yDCjBAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdL,EHTF,WAA0B,IAAAO,EAAAjB,KAAaD,EAAAkB,EAAAhB,eAA0BC,EAAAe,EAAAd,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBE,YAAA,2BAAqCF,EAAA,OAAYE,YAAA,iBAA2Ba,EAAAC,GAAA,GAAAD,EAAAR,GAAA,KAAAP,EAAA,OAAkCE,YAAA,aAAuBF,EAAA,OAAYE,YAAA,mBAA6Ba,EAAAR,GAAA,WAAAQ,EAAAR,GAAA,KAAAP,EAAA,OAA0CE,YAAA,uBAAiCa,EAAAR,GAAAQ,EAAAE,GAAAF,EAAAJ,YAAAI,EAAAR,GAAA,KAAAP,EAAA,OAAsDE,YAAA,mBAA6Ba,EAAAR,GAAA,yCAAAQ,EAAAR,GAAA,KAAAP,EAAA,eAAgFE,YAAA,wBAAAC,OAA2Ce,GAAA,OAAUH,EAAAR,GAAA,kCGWzjBX,GACF,EACA,KACA,WACA,MAIAgB,EAAAO,QAAAC,OAAA,UACeC,EAAA,QAAAT,+CCpBf,IAAAU,EAAAjB,EAAA,QAAAA,EAAAkB,EAAAD,GAA6e,sBCA7eE,EAAAC,QAAA,0xMCAAD,EAAAC,QAAiBpB,EAAAqB,EAAuB","file":"static/js/chunk-68ea.a283cad8.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wscn-http404-container\"},[_c('div',{staticClass:\"wscn-http404\"},[_vm._m(0),_vm._v(\" \"),_c('div',{staticClass:\"bullshit\"},[_c('div',{staticClass:\"bullshit__oops\"},[_vm._v(\"OOPS!\")]),_vm._v(\" \"),_c('div',{staticClass:\"bullshit__headline\"},[_vm._v(_vm._s(_vm.message))]),_vm._v(\" \"),_c('div',{staticClass:\"bullshit__info\"},[_vm._v(\"Please make sure you URL is correct\")]),_vm._v(\" \"),_c('router-link',{staticClass:\"bullshit__return-home\",attrs:{\"to\":\"/\"}},[_vm._v(\"Go to the home page\")])],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pic-404\"},[_c('img',{staticClass:\"pic-404__parent\",attrs:{\"src\":require(\"@/assets/404_images/404.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child left\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child mid\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child right\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}})])}]\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"wscn-http404-container\">\n <div class=\"wscn-http404\">\n <div class=\"pic-404\">\n <img class=\"pic-404__parent\" src=\"@/assets/404_images/404.png\" alt=\"404\">\n <img class=\"pic-404__child left\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n <img class=\"pic-404__child mid\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n <img class=\"pic-404__child right\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n </div>\n <div class=\"bullshit\">\n <div class=\"bullshit__oops\">OOPS!</div>\n <div class=\"bullshit__headline\">{{ message }}</div>\n <div class=\"bullshit__info\">Please make sure you URL is correct</div>\n <router-link to=\"/\" class=\"bullshit__return-home\">Go to the home page</router-link>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n\nexport default {\n name: 'Page404',\n computed: {\n message() {\n return 'There is nothing here'\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.wscn-http404-container{\n transform: translate(-50%,-50%);\n position: absolute;\n top: 40%;\n left: 50%;\n}\n.wscn-http404 {\n position: relative;\n width: 1200px;\n padding: 0 50px;\n overflow: hidden;\n .pic-404 {\n position: relative;\n float: left;\n width: 600px;\n overflow: hidden;\n &__parent {\n width: 100%;\n }\n &__child {\n position: absolute;\n &.left {\n width: 80px;\n top: 17px;\n left: 220px;\n opacity: 0;\n animation-name: cloudLeft;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1s;\n }\n &.mid {\n width: 46px;\n top: 10px;\n left: 420px;\n opacity: 0;\n animation-name: cloudMid;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1.2s;\n }\n &.right {\n width: 62px;\n top: 100px;\n left: 500px;\n opacity: 0;\n animation-name: cloudRight;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1s;\n }\n @keyframes cloudLeft {\n 0% {\n top: 17px;\n left: 220px;\n opacity: 0;\n }\n 20% {\n top: 33px;\n left: 188px;\n opacity: 1;\n }\n 80% {\n top: 81px;\n left: 92px;\n opacity: 1;\n }\n 100% {\n top: 97px;\n left: 60px;\n opacity: 0;\n }\n }\n @keyframes cloudMid {\n 0% {\n top: 10px;\n left: 420px;\n opacity: 0;\n }\n 20% {\n top: 40px;\n left: 360px;\n opacity: 1;\n }\n 70% {\n top: 130px;\n left: 180px;\n opacity: 1;\n }\n 100% {\n top: 160px;\n left: 120px;\n opacity: 0;\n }\n }\n @keyframes cloudRight {\n 0% {\n top: 100px;\n left: 500px;\n opacity: 0;\n }\n 20% {\n top: 120px;\n left: 460px;\n opacity: 1;\n }\n 80% {\n top: 180px;\n left: 340px;\n opacity: 1;\n }\n 100% {\n top: 200px;\n left: 300px;\n opacity: 0;\n }\n }\n }\n }\n .bullshit {\n position: relative;\n float: left;\n width: 300px;\n padding: 30px 0;\n overflow: hidden;\n &__oops {\n font-size: 32px;\n font-weight: bold;\n line-height: 40px;\n color: #1482f0;\n opacity: 0;\n margin-bottom: 20px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-fill-mode: forwards;\n }\n &__headline {\n font-size: 20px;\n line-height: 24px;\n color: #222;\n font-weight: bold;\n opacity: 0;\n margin-bottom: 10px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.1s;\n animation-fill-mode: forwards;\n }\n &__info {\n font-size: 13px;\n line-height: 21px;\n color: grey;\n opacity: 0;\n margin-bottom: 30px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.2s;\n animation-fill-mode: forwards;\n }\n &__return-home {\n display: block;\n float: left;\n width: 165px;\n height: 36px;\n background: #1482f0;\n border-radius: 100px;\n text-align: center;\n color: #ffffff;\n opacity: 0;\n font-size: 14px;\n line-height: 36px;\n cursor: pointer;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.3s;\n animation-fill-mode: forwards;\n }\n @keyframes slideUp {\n 0% {\n transform: translateY(60px);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./404.vue?vue&type=template&id=1d6b2d2a&scoped=true&\"\nimport script from \"./404.vue?vue&type=script&lang=js&\"\nexport * from \"./404.vue?vue&type=script&lang=js&\"\nimport style0 from \"./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1d6b2d2a\",\n null\n \n)\n\ncomponent.options.__file = \"404.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/img/404.a57b6f3.png\";"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js b/priv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-68ea9"],{"/eX4":function(s,t,i){"use strict";i.r(t);var e=[function(){var s=this.$createElement,t=this._self._c||s;return t("div",{staticClass:"pic-404"},[t("img",{staticClass:"pic-404__parent",attrs:{src:i("o2sD"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child left",attrs:{src:i("Jvyq"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child mid",attrs:{src:i("Jvyq"),alt:"404"}}),this._v(" "),t("img",{staticClass:"pic-404__child right",attrs:{src:i("Jvyq"),alt:"404"}})])}],n={name:"Page404",computed:{message:function(){return"There is nothing here"}}},r=(i("J67/"),i("KHd+")),l=Object(r.a)(n,function(){var s=this,t=s.$createElement,i=s._self._c||t;return i("div",{staticClass:"wscn-http404-container"},[i("div",{staticClass:"wscn-http404"},[s._m(0),s._v(" "),i("div",{staticClass:"bullshit"},[i("div",{staticClass:"bullshit__oops"},[s._v("OOPS!")]),s._v(" "),i("div",{staticClass:"bullshit__headline"},[s._v(s._s(s.message))]),s._v(" "),i("div",{staticClass:"bullshit__info"},[s._v("Please make sure you URL is correct")]),s._v(" "),i("router-link",{staticClass:"bullshit__return-home",attrs:{to:"/"}},[s._v("Go to the home page")])],1)])])},e,!1,null,"1d6b2d2a",null);l.options.__file="404.vue";t.default=l.exports},"J67/":function(s,t,i){"use strict";var e=i("QCkX");i.n(e).a},Jvyq:function(s,t){s.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAACKCAYAAABW3IOxAAAAAXNSR0IArs4c6QAAElhJREFUeAHtnXuQHMV9x7tndvdOQkgCWZKxkITEQ5YB87AVCT9iEqgyTsXlyA42QVRcScXYzvOPkKeJLSrOy8RVxMSVBNuVqrhIxS7KJk5BKlWpQKiKX4hgwOII6CzLAk6H0Pt0e/uY6Xx+p7vT3Gl2b2e3Z2d2t7vqdzuP7l//+tvf6+75dU+PVi5kioAxZl01UDtMEG43Wu/AmOuUUYeVVqNKmVGjvX2+HAdqX6mkfqS1Pp2pwQkz1wnju+gdIACZlpTr6npU7FChETIh5uJkKvWYPkO+fUp7oyZUowWt9hWLahTyHU2mK/3YjmApYjxlzGWmSuukQ4iktwP2NZCsmFqWWh9D96hWZp+nvb2lgvompNubWn4tKHYEawGkVqJAnBWVutpmZlono2mdjFnVSlqbcTytnynSpHlaXYPeV5F3QLIDNvNIossRLAlaM3Ehk1etqitDIZGidTKMnbTayvVM8IRAZQj1dNHXF9N9blhQpBc4f2dW3WcmgCwAIPenEGdNJVDbGYhDpOmB+DaunZ+14VrpV31fjxb96dZqeRN7vs29m4WITeKkcssRbAGsEKdUq6lrQ7o6M9M6GWU2LYiW6Snd4HO+p8sFX70dQ7wWjfkW8T4IyYIW41uJNvAEKxuzUQbiSocMwqdbp+sh2ZAVdC0qgRhVur8nS75+A79b2lT9AHo+3mbatpINHMEgz/JKqH7ZmPBtJtA3J3cTtIVz+4m0PsyYfS8D9ytRsrp9RXMpd0Oye+bOUj4YOIJNVsJvQKqdgitAh8aocQbIr/P0d4pLNbmMDOPsXKk9tSYMzUrOux6wbaTg6SN0g9vI3HaLeif6v9SNQg0UwSZr5ndVGP51EmCpiJPEH4OAxwFLBskyhilyvozBzyp+L5JxWxKdjeKSl+j+Xqmgl0D66xrFs3Bd8tlJfv9mQVdTFQNDMMj1Tm3M45Ch0BSRhDeppBqtnXjXZXrnlApV1TAKxwe2hHsreEBYw/015NsYazzwdIM/KBT0ZURa6GZIaFHL0eWf5SZs/E7LKdqI2LjQbSjLaxIqd3W5ap6ma1yXiY2MowB6nLyPQbZJ7dE1Kzz6Ri2hG6zMdINZuD2OYNO7IJn4ylIJfU8wyOVN1cx/8MuAPj+BSq0PFabnFddnbNUB8r8Be8bSsKNVH0oaeXdF51Q13J03cknB8WM9TUeaNbnElI3Iv4NRM0etxGsr9HULRsv1XoAT8HJVToZozw8V9VvaqrH0Ej2G6ltoyao2s+jbFmzSmPX4IB7MG7mowIlSUa+xWYmWdP0Mev7JNl59STBAKqqa+XoWqxkWq+yCr1+iOX3DYvEyuv8R8r3bZt59SbByDV+XmV7QZxOrjnUx7tpT8FL1b3VsIwq22lAyq6PvCDZZMbfy+P/bswXMz68ew4FqtfLyU7bGlvQVwVhBeoXW5iuNi5vNHcZdhkH9cXI/LxsLssu1bwjGuGuJqZmH+M3CYdm0Bnlp49tM/Qxc6yWgWJ02aYpyyjenauHfMXF9dcrZJFZP6/UiKyG2J07YJwn6ogVjGujXINdH81YnkGuKrlFWQvTNP3JSjHueYNWquZY5xvuTFrwb8Zln3INLQjzlAxt6n2BBeBdPjaxm0CZPtYg9e5jEfleebMrClp5vuk9Vwl1CLqZf9nuePljy1YTvqxKku4iB9eUM+m0v1lu8nrR+fbioB7rlmgWp5wkmBYFEOjBmcxCqzbX6bNFkaao+4fvmh3RVRwu+Z3iau5CLl5LggrOx7B/h7xpF68AO7KOI9gXBogWKHrPmakU9UG+rB/SetWD6Fq1dQEv3Eu8QjtHCVYueWso4aT1xraxsQPcTEPmno3YM8nFfEyyuYmnt/CAwlweBujx6n0WARwqe9+OCF55kOodDbzXE20z8lpdD02LuZ42X7D3hwgwCA0ewRjVvQrOqFgar5K2PMyGQl0JqdK//xxzi6wzYA1qmFazhugTSrZiNNfsrcSHXBOebZq+53wH2z7RS+RCpWAvMFnrXLdPvG80kohscLxW8l30dln3PG+ZR/E2QcATy3dSK3kGK41qwNmqbV9nWTlWDtWeSnhnbrT6/kNclOG2U0F6SnveD2YOiY03unzUGQkewGFDcJXsIOILZw9JpikHAESwGFHfJHgKOYPawdJpiEHAEiwHFXbKHgCOYPSydphgEHMFiQHGX7CHgCGYPS6cpBgFHsBhQ3CV7CDiC2cPSaYpBwE1vxIAy4Jd+gUn+V1rA4Ani3CHr65rFdQRrhs5g3ltCsUUWC7cRQbYX/XiziK6LbIaOu7cYAnfS2t3TLJIjWDN03L1WEPg0JPtko4iOYI2QcdeTIPC3kOxDcQkcweJQcdeSIiA8ks3+blyY0BFsISLuvF0E5P3ThyGZfEZwLjiCzUHhDiwgIC/DyJ64cy++OIJZQNWpmIfARZzJtvHT31VyBJuHjTuxhIC8c/ooJJPP7bjgEEgFAfmW5UOOYKlg65TOIHCTI5jjQqoIOIKlCq9T7gjmOJAqAo5gqcLrlDuCOQ6kikBPEww/yw2+7z3FvlynU0XJKW8bgZ5bcAipZDHcLyG/gVy/+owrr16tq2fLNXO0UgtWhopPtmSxN2vb1dC/CdnErzcCxLoUSz+B/Cpy4SJWlys1M1KuhyeqdcP3svWbSe8vkqaj22zfFPqe6ukeoSMA4hPXc00wSCEVdgsirdX7kLbsZYfWE3yc9AW+fltmQ7mLjNJXoLstXdgQGxzBYmHJJ8GofGmhfgX5dWRzrOkdXOSrIIf5OsiLtHB1NgneQH6bOlA3ndQRLBbBfBGMipYNdKW1kjFWKy8exJYq6cXQqJch3GilFupqIIQ2FyfV4QgWi1j2BINUsovzrchvIjtizezyRfbb38cDw0E+sFXgeAs2LvoJZEew2ErKjmBU2gZMkleePoZMrx2KNTH7i2EtVCO0cIdo4ZaGodrKnvorF5rlCLYQkenz7hMMYt1M1tINvh9J9cluuoj2/9T4msjeybo5DOFWmFBdCeHOcwSLBbo7BINUy8n+o4gQa0usKb17cbJSV4+VCurneCy1+mTau5DMWZ4uwSDWVWQlpLoDWTaXbf8cvERR5FPJ2/qnSFZLUrfuyYdUonMnIsR6j1Vz86PsJ5jyMnID4lqtJvViDRyIJYv975yRNzXJs5dvjWO8tFrytGv9n7OXgWlg+2sdEwxivRvl0lp9ECk2yKjXL0s3+CwiXWHX/HM9DNppbL8PubdtgkGsN/INn78s+upnUbS+h8FoZroAtQe5DpEHFReaI1Dl9j8gn2Vbp9ckatsEK1eDrzHl8mEUhSj5AR+D4qOf6gp0in+r14MA9T1kK+K+QbR4bcoeYV9FdsOHA9HobRFsqm7eFwbho1FFcoxymUF+Zubzd/Ju3MaFcXJ+HmLfd5FLkH4dR1I0q+EbaLubuh+J05qYYHSNS6eqZi/OxUviFM5emyHbs0I2vqF9KRk1jT+bLsPf75P3amRThjb0Utb/ibF/RD3LEKJhSEywqUpwL//mdzXUGHNDyMaSmef4uOdhutG8ke1pTF6K9JsDOKYmrFySoYMQ67FWtCUiWLVqrgmU2UMr1tEjOsb9kJZtHLJtwgDry3FaKThx9iIydnhri/EHPZrgJV3hw0mAaJlgkMpjhcF3WIr8U0kyWCwuBu+dIdslXSLbPmwSt4O82u7C4gjsJ8pnkAepKxmjJgotE4xx12+FJvxCIu0JI1OAEcg2Rsu2EcNkibTNcBBlryDbkZbLbdOAHtN1CHs/izxAvZz9lHnCQrQENK3XOpYcj/B7fkL9bUenUPIx9lch24YOySb+GPG+C7E66trbLkxvJZTW/XPI31AHk52a3hLBJishj6JG5hczCRT0Rcj2CmRbj8GXtWiEAPUcsg0ZbjHNIEcTMkkP9VfgLdhZCYsSrFI3HwiC8GEruVlQQuH3QbaDBQ+y6ViyCVBPIdciXWtxLRQtKxXS/T2AiPddukWroSnB6BKXMfZ6Hp9XLqeCeOF2lFfFDhZ8vQ6ybQQZ8WWJ932VVZT6U5kM2B9EPgOxZCCfSmhKsMlqcJ8y6ndSydmiUgAKhor6dQqz1qLaflb1rxTuU+AmrodUQ0OC4fN6Oz6v79KK5X5Zs+/rl0u+TvwmUKrI5lP5f2HWH0MscZZ2JcQSTEiFz+tJfF6yiiDXAbAmhou6H1fL2sT9SZQJsWR6p6sh9rG9XKdb7AFyCVJFv30fTVeRziYzmYAW77tMSGcSzmnByvI6WY2BvTHnZWJRgkw1c5vDBb06QZJBiXqAgu5Gvgq5ZDoss3BOC2aq5ov4vHJPLkGMcZds/O/CWQTEqfxnyN9DLFnTlnmYRzB8Xr+Iz+vnM7eqBQM8Tx/ytHpjC1EHIcoJCnkvch/EOp2nAs91kXSJK3h7mT57+uWNPNl4ji2AWMMtUZwz/pwYA3OhTEnvR8T7fjSPpZ5rwdiH4S8wUN4Myn3Ai38Kcl2Ye0PTM1C8719B/hRivZpeNp1rnm4E8HntwOf1P7RiXucq09UAoCdxSyxPN5fcajdY9i/In4DDaG6tjBhWgFQFVko80AvkErtxSwxF7B+kw/+msHdBrKZLlPMGiDdVV3dBrqvzZlicPbgljjD3OGgEE1/WByDWjb1GLqlDjy3+buR1oCNxFZqna4Brhnw9SJPYsrLhE8jVlP1beaqLJLboseM1tizV1VLB+9+SH0762mM1Qv6eJFkxcYzu8YIkhevRuOJm+DzyOYiVK5dDO3ieIVgkJYUKqcxn8JAfw890GWTbELmdySE2VRjY93vXKB73f0RkAG99XVYmFUem5xBsoSG4BEaGCvpQ0ffWsy4MwnU/FAteGTuWdD/nruX4CDn9PsR6vms5dimjRQkWtcMvePuHff0TXqRdw5uOsrAv9eBpfQqnar+uTH0KAOXJ8PHUgcwog0QEi9rIVM3YkqLH8mVzASR4S1pujqGiZ+iq+81p/2OwvBv5Z8glvq2+DW0TLIqI53tHadle4KWMpZDhKvGtRe+3e8za+xOlQl9NaB8Diz9H7odYlXZx6aV0VggWLTBPoRNF34yUitBOs0Fum98MogJCxn40jlHtPXssKxu+iMjUjpBsYIJ1gkWRgx7VkqefZ1lNnXHbVsjW8jIgnmQncUssjerrwWPp/r6OyF4O+3vQ/o5NTpVgUeukRYIwI7gbJmnZ5FtBDddyEXeKeMPR9D14LFM7v0dZnuxB262Z3DWCLbQYx+5LeOaPez6bnxgzz0PPvYApody/bLKwTDPnMrXzhxCrZ73vDcrV1uXMCBa1tljQB0u+GmfItR7CLWPs1XJXGtWT8bE4R+9BvgS5Ml2mnDEO87LPBcGiFp0/7KvzhnpqZD87tXMvxJqIlsUd53AzEGYLqJeeIFhfTu3Y/qew4q+ybVQP6OvbqR3b2DuCJUNUpnbkyfCxZMkGN3bul0jnpGoOYMcdyDZHrmQ14lqw5njJPlkytfMFiDUQUzvN4Uh+1xEsHrPZqR3ZMyuXr4PFm52/q45g8+tk4Kd25sPR+Zkj2FkMn+BQ1mYN9NTOWTjsHDmCKfUCUP4BxHJTO3Y4NU/LID9FjoPEJ5GrHLnmccLqySC2YG5qxyqFmisrsBp5gumZQdghcHZq59O0WGPNYXF3bSHgrV3hrwXwXcgjSNtfdLBlUEp6HkXvNZTvY4gjV0ogx6mdN6t88qRZVQ7DDxsd7mLC+R0sCpx3P06B7WvLhj3W61gbGrqpHdsVlFBfQwIdK5uNlUp4u1Lh7TiHrkqot+3olggmUzufQvr+rZ22ge5SwoYEi+Y/PmHequr1XaHSt6X9pneHBHNTO9GKy8FxSwSbtVO6zMMT6t2hCW7nC6O3stTZ+iZwbRLMTe3MVlLOfhMRLGo7ZCuOnwpuYX3gLsj2flo2K28AJSTY7NSO7AH/o6h97jgfCLRNsKj5r/FNI3My2MnHb3ah8GbI1/YLGwkIJlM7sjbr+1Fb3HG+ELBCsGiRDp0ya1QYfmT64cCoHdF7rRy3QDA3tdMKkDmJY51g0XKNHzebcXnwFIrbw6g3R+81Om5CMJna2Y18mVar3ii9u54vBFIlWLSoh0+b6+u1+u3MHNzGzMG66L3ocQzB5PuPn0dkQzb31k4UrB447hrBZrFgfOYdmqi/RwcaZ676EGRbOXtPfiMEc1M7UWDccXIEINvQ+Mn6zrHj9YfGTtTLsp3nqamAy+YR5MrkGl0Kh0ADBI4Ys/zUVPj4sdPBPQ2iuMsOAYeAQ2A+Av8Pby5Qwk3kUm8AAAAASUVORK5CYII="},QCkX:function(s,t,i){},o2sD:function(s,t,i){s.exports=i.p+"static/img/404.a57b6f3.png"}}]); -//# sourceMappingURL=chunk-68ea9.9821cd6a.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js.map b/priv/static/adminfe/static/js/chunk-68ea9.9821cd6a.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/errorPage/404.vue?e9e9","webpack:///./src/views/errorPage/404.vue?e36b","webpack:///src/views/errorPage/404.vue","webpack:///./src/views/errorPage/404.vue","webpack:///./src/views/errorPage/404.vue?ce30","webpack:///./src/assets/404_images/404_cloud.png","webpack:///./src/assets/404_images/404.png"],"names":["staticRenderFns","_h","this","$createElement","_c","_self","staticClass","attrs","src","__webpack_require__","alt","_v","errorPage_404vue_type_script_lang_js_","name","computed","message","component","Object","componentNormalizer","_vm","_m","_s","to","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_404_vue_vue_type_style_index_0_id_1d6b2d2a_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","n","module","exports","p"],"mappings":"gHAAA,IACAA,GAAA,WAAoC,IAAaC,EAAbC,KAAaC,eAA0BC,EAAvCF,KAAuCG,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBE,YAAA,YAAsBF,EAAA,OAAYE,YAAA,kBAAAC,OAAqCC,IAAMC,EAAQ,QAA6BC,IAAA,SAAlMR,KAAiNS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,sBAAAC,OAAyCC,IAAMC,EAAQ,QAAmCC,IAAA,SAAnUR,KAAkVS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,qBAAAC,OAAwCC,IAAMC,EAAQ,QAAmCC,IAAA,SAAncR,KAAkdS,GAAA,KAAAP,EAAA,OAAwBE,YAAA,uBAAAC,OAA0CC,IAAMC,EAAQ,QAAmCC,IAAA,aCDjaE,GCsBxMC,KAAA,UACAC,UACAC,QADA,WAEA,yDCjBAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdL,EHTF,WAA0B,IAAAO,EAAAjB,KAAaD,EAAAkB,EAAAhB,eAA0BC,EAAAe,EAAAd,MAAAD,IAAAH,EAAwB,OAAAG,EAAA,OAAiBE,YAAA,2BAAqCF,EAAA,OAAYE,YAAA,iBAA2Ba,EAAAC,GAAA,GAAAD,EAAAR,GAAA,KAAAP,EAAA,OAAkCE,YAAA,aAAuBF,EAAA,OAAYE,YAAA,mBAA6Ba,EAAAR,GAAA,WAAAQ,EAAAR,GAAA,KAAAP,EAAA,OAA0CE,YAAA,uBAAiCa,EAAAR,GAAAQ,EAAAE,GAAAF,EAAAJ,YAAAI,EAAAR,GAAA,KAAAP,EAAA,OAAsDE,YAAA,mBAA6Ba,EAAAR,GAAA,yCAAAQ,EAAAR,GAAA,KAAAP,EAAA,eAAgFE,YAAA,wBAAAC,OAA2Ce,GAAA,OAAUH,EAAAR,GAAA,kCGWzjBX,GACF,EACA,KACA,WACA,MAIAgB,EAAAO,QAAAC,OAAA,UACeC,EAAA,QAAAT,+CCpBf,IAAAU,EAAAjB,EAAA,QAAAA,EAAAkB,EAAAD,GAA6e,sBCA7eE,EAAAC,QAAA,0xMCAAD,EAAAC,QAAiBpB,EAAAqB,EAAuB","file":"static/js/chunk-68ea9.9821cd6a.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wscn-http404-container\"},[_c('div',{staticClass:\"wscn-http404\"},[_vm._m(0),_vm._v(\" \"),_c('div',{staticClass:\"bullshit\"},[_c('div',{staticClass:\"bullshit__oops\"},[_vm._v(\"OOPS!\")]),_vm._v(\" \"),_c('div',{staticClass:\"bullshit__headline\"},[_vm._v(_vm._s(_vm.message))]),_vm._v(\" \"),_c('div',{staticClass:\"bullshit__info\"},[_vm._v(\"Please make sure you URL is correct\")]),_vm._v(\" \"),_c('router-link',{staticClass:\"bullshit__return-home\",attrs:{\"to\":\"/\"}},[_vm._v(\"Go to the home page\")])],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pic-404\"},[_c('img',{staticClass:\"pic-404__parent\",attrs:{\"src\":require(\"@/assets/404_images/404.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child left\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child mid\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}}),_vm._v(\" \"),_c('img',{staticClass:\"pic-404__child right\",attrs:{\"src\":require(\"@/assets/404_images/404_cloud.png\"),\"alt\":\"404\"}})])}]\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"wscn-http404-container\">\n <div class=\"wscn-http404\">\n <div class=\"pic-404\">\n <img class=\"pic-404__parent\" src=\"@/assets/404_images/404.png\" alt=\"404\">\n <img class=\"pic-404__child left\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n <img class=\"pic-404__child mid\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n <img class=\"pic-404__child right\" src=\"@/assets/404_images/404_cloud.png\" alt=\"404\">\n </div>\n <div class=\"bullshit\">\n <div class=\"bullshit__oops\">OOPS!</div>\n <div class=\"bullshit__headline\">{{ message }}</div>\n <div class=\"bullshit__info\">Please make sure you URL is correct</div>\n <router-link to=\"/\" class=\"bullshit__return-home\">Go to the home page</router-link>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n\nexport default {\n name: 'Page404',\n computed: {\n message() {\n return 'There is nothing here'\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n.wscn-http404-container{\n transform: translate(-50%,-50%);\n position: absolute;\n top: 40%;\n left: 50%;\n}\n.wscn-http404 {\n position: relative;\n width: 1200px;\n padding: 0 50px;\n overflow: hidden;\n .pic-404 {\n position: relative;\n float: left;\n width: 600px;\n overflow: hidden;\n &__parent {\n width: 100%;\n }\n &__child {\n position: absolute;\n &.left {\n width: 80px;\n top: 17px;\n left: 220px;\n opacity: 0;\n animation-name: cloudLeft;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1s;\n }\n &.mid {\n width: 46px;\n top: 10px;\n left: 420px;\n opacity: 0;\n animation-name: cloudMid;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1.2s;\n }\n &.right {\n width: 62px;\n top: 100px;\n left: 500px;\n opacity: 0;\n animation-name: cloudRight;\n animation-duration: 2s;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n animation-delay: 1s;\n }\n @keyframes cloudLeft {\n 0% {\n top: 17px;\n left: 220px;\n opacity: 0;\n }\n 20% {\n top: 33px;\n left: 188px;\n opacity: 1;\n }\n 80% {\n top: 81px;\n left: 92px;\n opacity: 1;\n }\n 100% {\n top: 97px;\n left: 60px;\n opacity: 0;\n }\n }\n @keyframes cloudMid {\n 0% {\n top: 10px;\n left: 420px;\n opacity: 0;\n }\n 20% {\n top: 40px;\n left: 360px;\n opacity: 1;\n }\n 70% {\n top: 130px;\n left: 180px;\n opacity: 1;\n }\n 100% {\n top: 160px;\n left: 120px;\n opacity: 0;\n }\n }\n @keyframes cloudRight {\n 0% {\n top: 100px;\n left: 500px;\n opacity: 0;\n }\n 20% {\n top: 120px;\n left: 460px;\n opacity: 1;\n }\n 80% {\n top: 180px;\n left: 340px;\n opacity: 1;\n }\n 100% {\n top: 200px;\n left: 300px;\n opacity: 0;\n }\n }\n }\n }\n .bullshit {\n position: relative;\n float: left;\n width: 300px;\n padding: 30px 0;\n overflow: hidden;\n &__oops {\n font-size: 32px;\n font-weight: bold;\n line-height: 40px;\n color: #1482f0;\n opacity: 0;\n margin-bottom: 20px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-fill-mode: forwards;\n }\n &__headline {\n font-size: 20px;\n line-height: 24px;\n color: #222;\n font-weight: bold;\n opacity: 0;\n margin-bottom: 10px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.1s;\n animation-fill-mode: forwards;\n }\n &__info {\n font-size: 13px;\n line-height: 21px;\n color: grey;\n opacity: 0;\n margin-bottom: 30px;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.2s;\n animation-fill-mode: forwards;\n }\n &__return-home {\n display: block;\n float: left;\n width: 165px;\n height: 36px;\n background: #1482f0;\n border-radius: 100px;\n text-align: center;\n color: #ffffff;\n opacity: 0;\n font-size: 14px;\n line-height: 36px;\n cursor: pointer;\n animation-name: slideUp;\n animation-duration: 0.5s;\n animation-delay: 0.3s;\n animation-fill-mode: forwards;\n }\n @keyframes slideUp {\n 0% {\n transform: translateY(60px);\n opacity: 0;\n }\n 100% {\n transform: translateY(0);\n opacity: 1;\n }\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./404.vue?vue&type=template&id=1d6b2d2a&scoped=true&\"\nimport script from \"./404.vue?vue&type=script&lang=js&\"\nexport * from \"./404.vue?vue&type=script&lang=js&\"\nimport style0 from \"./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1d6b2d2a\",\n null\n \n)\n\ncomponent.options.__file = \"404.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=style&index=0&id=1d6b2d2a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAACKCAYAAABW3IOxAAAAAXNSR0IArs4c6QAAElhJREFUeAHtnXuQHMV9x7tndvdOQkgCWZKxkITEQ5YB87AVCT9iEqgyTsXlyA42QVRcScXYzvOPkKeJLSrOy8RVxMSVBNuVqrhIxS7KJk5BKlWpQKiKX4hgwOII6CzLAk6H0Pt0e/uY6Xx+p7vT3Gl2b2e3Z2d2t7vqdzuP7l//+tvf6+75dU+PVi5kioAxZl01UDtMEG43Wu/AmOuUUYeVVqNKmVGjvX2+HAdqX6mkfqS1Pp2pwQkz1wnju+gdIACZlpTr6npU7FChETIh5uJkKvWYPkO+fUp7oyZUowWt9hWLahTyHU2mK/3YjmApYjxlzGWmSuukQ4iktwP2NZCsmFqWWh9D96hWZp+nvb2lgvompNubWn4tKHYEawGkVqJAnBWVutpmZlono2mdjFnVSlqbcTytnynSpHlaXYPeV5F3QLIDNvNIossRLAlaM3Ehk1etqitDIZGidTKMnbTayvVM8IRAZQj1dNHXF9N9blhQpBc4f2dW3WcmgCwAIPenEGdNJVDbGYhDpOmB+DaunZ+14VrpV31fjxb96dZqeRN7vs29m4WITeKkcssRbAGsEKdUq6lrQ7o6M9M6GWU2LYiW6Snd4HO+p8sFX70dQ7wWjfkW8T4IyYIW41uJNvAEKxuzUQbiSocMwqdbp+sh2ZAVdC0qgRhVur8nS75+A79b2lT9AHo+3mbatpINHMEgz/JKqH7ZmPBtJtA3J3cTtIVz+4m0PsyYfS8D9ytRsrp9RXMpd0Oye+bOUj4YOIJNVsJvQKqdgitAh8aocQbIr/P0d4pLNbmMDOPsXKk9tSYMzUrOux6wbaTg6SN0g9vI3HaLeif6v9SNQg0UwSZr5ndVGP51EmCpiJPEH4OAxwFLBskyhilyvozBzyp+L5JxWxKdjeKSl+j+Xqmgl0D66xrFs3Bd8tlJfv9mQVdTFQNDMMj1Tm3M45Ch0BSRhDeppBqtnXjXZXrnlApV1TAKxwe2hHsreEBYw/015NsYazzwdIM/KBT0ZURa6GZIaFHL0eWf5SZs/E7LKdqI2LjQbSjLaxIqd3W5ap6ma1yXiY2MowB6nLyPQbZJ7dE1Kzz6Ri2hG6zMdINZuD2OYNO7IJn4ylIJfU8wyOVN1cx/8MuAPj+BSq0PFabnFddnbNUB8r8Be8bSsKNVH0oaeXdF51Q13J03cknB8WM9TUeaNbnElI3Iv4NRM0etxGsr9HULRsv1XoAT8HJVToZozw8V9VvaqrH0Ej2G6ltoyao2s+jbFmzSmPX4IB7MG7mowIlSUa+xWYmWdP0Mev7JNl59STBAKqqa+XoWqxkWq+yCr1+iOX3DYvEyuv8R8r3bZt59SbByDV+XmV7QZxOrjnUx7tpT8FL1b3VsIwq22lAyq6PvCDZZMbfy+P/bswXMz68ew4FqtfLyU7bGlvQVwVhBeoXW5iuNi5vNHcZdhkH9cXI/LxsLssu1bwjGuGuJqZmH+M3CYdm0Bnlp49tM/Qxc6yWgWJ02aYpyyjenauHfMXF9dcrZJFZP6/UiKyG2J07YJwn6ogVjGujXINdH81YnkGuKrlFWQvTNP3JSjHueYNWquZY5xvuTFrwb8Zln3INLQjzlAxt6n2BBeBdPjaxm0CZPtYg9e5jEfleebMrClp5vuk9Vwl1CLqZf9nuePljy1YTvqxKku4iB9eUM+m0v1lu8nrR+fbioB7rlmgWp5wkmBYFEOjBmcxCqzbX6bNFkaao+4fvmh3RVRwu+Z3iau5CLl5LggrOx7B/h7xpF68AO7KOI9gXBogWKHrPmakU9UG+rB/SetWD6Fq1dQEv3Eu8QjtHCVYueWso4aT1xraxsQPcTEPmno3YM8nFfEyyuYmnt/CAwlweBujx6n0WARwqe9+OCF55kOodDbzXE20z8lpdD02LuZ42X7D3hwgwCA0ewRjVvQrOqFgar5K2PMyGQl0JqdK//xxzi6wzYA1qmFazhugTSrZiNNfsrcSHXBOebZq+53wH2z7RS+RCpWAvMFnrXLdPvG80kohscLxW8l30dln3PG+ZR/E2QcATy3dSK3kGK41qwNmqbV9nWTlWDtWeSnhnbrT6/kNclOG2U0F6SnveD2YOiY03unzUGQkewGFDcJXsIOILZw9JpikHAESwGFHfJHgKOYPawdJpiEHAEiwHFXbKHgCOYPSydphgEHMFiQHGX7CHgCGYPS6cpBgFHsBhQ3CV7CDiC2cPSaYpBwE1vxIAy4Jd+gUn+V1rA4Ani3CHr65rFdQRrhs5g3ltCsUUWC7cRQbYX/XiziK6LbIaOu7cYAnfS2t3TLJIjWDN03L1WEPg0JPtko4iOYI2QcdeTIPC3kOxDcQkcweJQcdeSIiA8ks3+blyY0BFsISLuvF0E5P3ThyGZfEZwLjiCzUHhDiwgIC/DyJ64cy++OIJZQNWpmIfARZzJtvHT31VyBJuHjTuxhIC8c/ooJJPP7bjgEEgFAfmW5UOOYKlg65TOIHCTI5jjQqoIOIKlCq9T7gjmOJAqAo5gqcLrlDuCOQ6kikBPEww/yw2+7z3FvlynU0XJKW8bgZ5bcAipZDHcLyG/gVy/+owrr16tq2fLNXO0UgtWhopPtmSxN2vb1dC/CdnErzcCxLoUSz+B/Cpy4SJWlys1M1KuhyeqdcP3svWbSe8vkqaj22zfFPqe6ukeoSMA4hPXc00wSCEVdgsirdX7kLbsZYfWE3yc9AW+fltmQ7mLjNJXoLstXdgQGxzBYmHJJ8GofGmhfgX5dWRzrOkdXOSrIIf5OsiLtHB1NgneQH6bOlA3ndQRLBbBfBGMipYNdKW1kjFWKy8exJYq6cXQqJch3GilFupqIIQ2FyfV4QgWi1j2BINUsovzrchvIjtizezyRfbb38cDw0E+sFXgeAs2LvoJZEew2ErKjmBU2gZMkleePoZMrx2KNTH7i2EtVCO0cIdo4ZaGodrKnvorF5rlCLYQkenz7hMMYt1M1tINvh9J9cluuoj2/9T4msjeybo5DOFWmFBdCeHOcwSLBbo7BINUy8n+o4gQa0usKb17cbJSV4+VCurneCy1+mTau5DMWZ4uwSDWVWQlpLoDWTaXbf8cvERR5FPJ2/qnSFZLUrfuyYdUonMnIsR6j1Vz86PsJ5jyMnID4lqtJvViDRyIJYv975yRNzXJs5dvjWO8tFrytGv9n7OXgWlg+2sdEwxivRvl0lp9ECk2yKjXL0s3+CwiXWHX/HM9DNppbL8PubdtgkGsN/INn78s+upnUbS+h8FoZroAtQe5DpEHFReaI1Dl9j8gn2Vbp9ckatsEK1eDrzHl8mEUhSj5AR+D4qOf6gp0in+r14MA9T1kK+K+QbR4bcoeYV9FdsOHA9HobRFsqm7eFwbho1FFcoxymUF+Zubzd/Ju3MaFcXJ+HmLfd5FLkH4dR1I0q+EbaLubuh+J05qYYHSNS6eqZi/OxUviFM5emyHbs0I2vqF9KRk1jT+bLsPf75P3amRThjb0Utb/ibF/RD3LEKJhSEywqUpwL//mdzXUGHNDyMaSmef4uOdhutG8ke1pTF6K9JsDOKYmrFySoYMQ67FWtCUiWLVqrgmU2UMr1tEjOsb9kJZtHLJtwgDry3FaKThx9iIydnhri/EHPZrgJV3hw0mAaJlgkMpjhcF3WIr8U0kyWCwuBu+dIdslXSLbPmwSt4O82u7C4gjsJ8pnkAepKxmjJgotE4xx12+FJvxCIu0JI1OAEcg2Rsu2EcNkibTNcBBlryDbkZbLbdOAHtN1CHs/izxAvZz9lHnCQrQENK3XOpYcj/B7fkL9bUenUPIx9lch24YOySb+GPG+C7E66trbLkxvJZTW/XPI31AHk52a3hLBJishj6JG5hczCRT0Rcj2CmRbj8GXtWiEAPUcsg0ZbjHNIEcTMkkP9VfgLdhZCYsSrFI3HwiC8GEruVlQQuH3QbaDBQ+y6ViyCVBPIdciXWtxLRQtKxXS/T2AiPddukWroSnB6BKXMfZ6Hp9XLqeCeOF2lFfFDhZ8vQ6ybQQZ8WWJ932VVZT6U5kM2B9EPgOxZCCfSmhKsMlqcJ8y6ndSydmiUgAKhor6dQqz1qLaflb1rxTuU+AmrodUQ0OC4fN6Oz6v79KK5X5Zs+/rl0u+TvwmUKrI5lP5f2HWH0MscZZ2JcQSTEiFz+tJfF6yiiDXAbAmhou6H1fL2sT9SZQJsWR6p6sh9rG9XKdb7AFyCVJFv30fTVeRziYzmYAW77tMSGcSzmnByvI6WY2BvTHnZWJRgkw1c5vDBb06QZJBiXqAgu5Gvgq5ZDoss3BOC2aq5ov4vHJPLkGMcZds/O/CWQTEqfxnyN9DLFnTlnmYRzB8Xr+Iz+vnM7eqBQM8Tx/ytHpjC1EHIcoJCnkvch/EOp2nAs91kXSJK3h7mT57+uWNPNl4ji2AWMMtUZwz/pwYA3OhTEnvR8T7fjSPpZ5rwdiH4S8wUN4Myn3Ai38Kcl2Ye0PTM1C8719B/hRivZpeNp1rnm4E8HntwOf1P7RiXucq09UAoCdxSyxPN5fcajdY9i/In4DDaG6tjBhWgFQFVko80AvkErtxSwxF7B+kw/+msHdBrKZLlPMGiDdVV3dBrqvzZlicPbgljjD3OGgEE1/WByDWjb1GLqlDjy3+buR1oCNxFZqna4Brhnw9SJPYsrLhE8jVlP1beaqLJLboseM1tizV1VLB+9+SH0762mM1Qv6eJFkxcYzu8YIkhevRuOJm+DzyOYiVK5dDO3ieIVgkJYUKqcxn8JAfw890GWTbELmdySE2VRjY93vXKB73f0RkAG99XVYmFUem5xBsoSG4BEaGCvpQ0ffWsy4MwnU/FAteGTuWdD/nruX4CDn9PsR6vms5dimjRQkWtcMvePuHff0TXqRdw5uOsrAv9eBpfQqnar+uTH0KAOXJ8PHUgcwog0QEi9rIVM3YkqLH8mVzASR4S1pujqGiZ+iq+81p/2OwvBv5Z8glvq2+DW0TLIqI53tHadle4KWMpZDhKvGtRe+3e8za+xOlQl9NaB8Diz9H7odYlXZx6aV0VggWLTBPoRNF34yUitBOs0Fum98MogJCxn40jlHtPXssKxu+iMjUjpBsYIJ1gkWRgx7VkqefZ1lNnXHbVsjW8jIgnmQncUssjerrwWPp/r6OyF4O+3vQ/o5NTpVgUeukRYIwI7gbJmnZ5FtBDddyEXeKeMPR9D14LFM7v0dZnuxB262Z3DWCLbQYx+5LeOaPez6bnxgzz0PPvYApody/bLKwTDPnMrXzhxCrZ73vDcrV1uXMCBa1tljQB0u+GmfItR7CLWPs1XJXGtWT8bE4R+9BvgS5Ml2mnDEO87LPBcGiFp0/7KvzhnpqZD87tXMvxJqIlsUd53AzEGYLqJeeIFhfTu3Y/qew4q+ybVQP6OvbqR3b2DuCJUNUpnbkyfCxZMkGN3bul0jnpGoOYMcdyDZHrmQ14lqw5njJPlkytfMFiDUQUzvN4Uh+1xEsHrPZqR3ZMyuXr4PFm52/q45g8+tk4Kd25sPR+Zkj2FkMn+BQ1mYN9NTOWTjsHDmCKfUCUP4BxHJTO3Y4NU/LID9FjoPEJ5GrHLnmccLqySC2YG5qxyqFmisrsBp5gumZQdghcHZq59O0WGPNYXF3bSHgrV3hrwXwXcgjSNtfdLBlUEp6HkXvNZTvY4gjV0ogx6mdN6t88qRZVQ7DDxsd7mLC+R0sCpx3P06B7WvLhj3W61gbGrqpHdsVlFBfQwIdK5uNlUp4u1Lh7TiHrkqot+3olggmUzufQvr+rZ22ge5SwoYEi+Y/PmHequr1XaHSt6X9pneHBHNTO9GKy8FxSwSbtVO6zMMT6t2hCW7nC6O3stTZ+iZwbRLMTe3MVlLOfhMRLGo7ZCuOnwpuYX3gLsj2flo2K28AJSTY7NSO7AH/o6h97jgfCLRNsKj5r/FNI3My2MnHb3ah8GbI1/YLGwkIJlM7sjbr+1Fb3HG+ELBCsGiRDp0ya1QYfmT64cCoHdF7rRy3QDA3tdMKkDmJY51g0XKNHzebcXnwFIrbw6g3R+81Om5CMJna2Y18mVar3ii9u54vBFIlWLSoh0+b6+u1+u3MHNzGzMG66L3ocQzB5PuPn0dkQzb31k4UrB447hrBZrFgfOYdmqi/RwcaZ676EGRbOXtPfiMEc1M7UWDccXIEINvQ+Mn6zrHj9YfGTtTLsp3nqamAy+YR5MrkGl0Kh0ADBI4Ys/zUVPj4sdPBPQ2iuMsOAYeAQ2A+Av8Pby5Qwk3kUm8AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"static/img/404.a57b6f3.png\";"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js b/priv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-6e81"],{BF41:function(t,a,i){},"UUO+":function(t,a,i){"use strict";i.r(a);var e=i("zGwZ"),s=i.n(e),r={name:"Page401",data:function(){return{errGif:s.a+"?"+ +new Date,ewizardClap:"https://wpimg.wallstcn.com/007ef517-bafd-4066-aae4-6883632d9646",dialogVisible:!1}},methods:{back:function(){this.$route.query.noGoBack?this.$router.push({path:"/dashboard"}):this.$router.go(-1)}}},n=(i("UrVv"),i("KHd+")),l=Object(n.a)(r,function(){var t=this,a=t.$createElement,i=t._self._c||a;return i("div",{staticClass:"errPage-container"},[i("el-button",{staticClass:"pan-back-btn",attrs:{icon:"arrow-left"},on:{click:t.back}},[t._v("返回")]),t._v(" "),i("el-row",[i("el-col",{attrs:{span:12}},[i("h1",{staticClass:"text-jumbo text-ginormous"},[t._v("Oops!")]),t._v("\n gif来源"),i("a",{attrs:{href:"https://zh.airbnb.com/",target:"_blank"}},[t._v("airbnb")]),t._v(" 页面\n "),i("h2",[t._v("你没有权限去该页面")]),t._v(" "),i("h6",[t._v("如有不满请联系你领导")]),t._v(" "),i("ul",{staticClass:"list-unstyled"},[i("li",[t._v("或者你可以去:")]),t._v(" "),i("li",{staticClass:"link-type"},[i("router-link",{attrs:{to:"/dashboard"}},[t._v("回首页")])],1),t._v(" "),i("li",{staticClass:"link-type"},[i("a",{attrs:{href:"https://www.taobao.com/"}},[t._v("随便看看")])]),t._v(" "),i("li",[i("a",{attrs:{href:"#"},on:{click:function(a){a.preventDefault(),t.dialogVisible=!0}}},[t._v("点我看图")])])])]),t._v(" "),i("el-col",{attrs:{span:12}},[i("img",{attrs:{src:t.errGif,width:"313",height:"428",alt:"Girl has dropped her ice cream."}})])],1),t._v(" "),i("el-dialog",{attrs:{visible:t.dialogVisible,title:"随便看"},on:{"update:visible":function(a){t.dialogVisible=a}}},[i("img",{staticClass:"pan-img",attrs:{src:t.ewizardClap}})])],1)},[],!1,null,"ab9be52c",null);l.options.__file="401.vue";a.default=l.exports},UrVv:function(t,a,i){"use strict";var e=i("BF41");i.n(e).a},zGwZ:function(t,a,i){t.exports=i.p+"static/img/401.089007e.gif"}}]); +//# sourceMappingURL=chunk-6e81.b4ee7cf5.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js.map b/priv/static/adminfe/static/js/chunk-6e81.b4ee7cf5.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/errorPage/401.vue?e7a2","webpack:///./src/views/errorPage/401.vue?6307","webpack:///src/views/errorPage/401.vue","webpack:///./src/views/errorPage/401.vue","webpack:///./src/views/errorPage/401.vue?2b76","webpack:///./src/assets/401_images/401.gif"],"names":["errorPage_401vue_type_script_lang_js_","name","data","errGif","_401_default","a","Date","ewizardClap","dialogVisible","methods","back","this","$route","query","noGoBack","$router","push","path","go","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","icon","on","click","_v","span","href","target","to","$event","preventDefault","src","width","height","alt","visible","title","update:visible","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_401_vue_vue_type_style_index_0_id_ab9be52c_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","module","exports","p"],"mappings":"sIAAA,yBCAwMA,GCgCxMC,KAAA,UACAC,KAAA,WACA,OACAC,OAAAC,EAAAC,EAAA,UAAAC,KACAC,YAAA,kEACAC,eAAA,IAGAC,SACAC,KADA,WAEAC,KAAAC,OAAAC,MAAAC,SACAH,KAAAI,QAAAC,MAAAC,KAAA,eAEAN,KAAAI,QAAAG,IAAA,8BCrCAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdpB,EHTF,WAA0B,IAAAsB,EAAAX,KAAaY,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,OAAiBE,YAAA,sBAAgCF,EAAA,aAAkBE,YAAA,eAAAC,OAAkCC,KAAA,cAAoBC,IAAKC,MAAAT,EAAAZ,QAAkBY,EAAAU,GAAA,QAAAV,EAAAU,GAAA,KAAAP,EAAA,UAAAA,EAAA,UAAuDG,OAAOK,KAAA,MAAWR,EAAA,MAAWE,YAAA,8BAAwCL,EAAAU,GAAA,WAAAV,EAAAU,GAAA,iBAAAP,EAAA,KAAoDG,OAAOM,KAAA,yBAAAC,OAAA,YAAmDb,EAAAU,GAAA,YAAAV,EAAAU,GAAA,eAAAP,EAAA,MAAAH,EAAAU,GAAA,eAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAAH,EAAAU,GAAA,gBAAAV,EAAAU,GAAA,KAAAP,EAAA,MAA2IE,YAAA,kBAA4BF,EAAA,MAAAH,EAAAU,GAAA,aAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAoDE,YAAA,cAAwBF,EAAA,eAAoBG,OAAOQ,GAAA,gBAAmBd,EAAAU,GAAA,aAAAV,EAAAU,GAAA,KAAAP,EAAA,MAA2CE,YAAA,cAAwBF,EAAA,KAAUG,OAAOM,KAAA,6BAAkCZ,EAAAU,GAAA,YAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAAA,EAAA,KAAkDG,OAAOM,KAAA,KAAWJ,IAAKC,MAAA,SAAAM,GAAyBA,EAAAC,iBAAwBhB,EAAAd,eAAA,MAAyBc,EAAAU,GAAA,gBAAAV,EAAAU,GAAA,KAAAP,EAAA,UAAkDG,OAAOK,KAAA,MAAWR,EAAA,OAAYG,OAAOW,IAAAjB,EAAAnB,OAAAqC,MAAA,MAAAC,OAAA,MAAAC,IAAA,wCAAuF,GAAApB,EAAAU,GAAA,KAAAP,EAAA,aAAoCG,OAAOe,QAAArB,EAAAd,cAAAoC,MAAA,OAA0Cd,IAAKe,iBAAA,SAAAR,GAAkCf,EAAAd,cAAA6B,MAA2BZ,EAAA,OAAYE,YAAA,UAAAC,OAA6BW,IAAAjB,EAAAf,kBAAuB,QGYl4C,EACA,KACA,WACA,MAIAY,EAAA2B,QAAAC,OAAA,UACeC,EAAA,QAAA7B,6CCpBf,IAAA8B,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAA6e,wBCA7eG,EAAAC,QAAiBH,EAAAI,EAAuB","file":"static/js/chunk-6e81.b4ee7cf5.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"errPage-container\"},[_c('el-button',{staticClass:\"pan-back-btn\",attrs:{\"icon\":\"arrow-left\"},on:{\"click\":_vm.back}},[_vm._v(\"返回\")]),_vm._v(\" \"),_c('el-row',[_c('el-col',{attrs:{\"span\":12}},[_c('h1',{staticClass:\"text-jumbo text-ginormous\"},[_vm._v(\"Oops!\")]),_vm._v(\"\\n gif来源\"),_c('a',{attrs:{\"href\":\"https://zh.airbnb.com/\",\"target\":\"_blank\"}},[_vm._v(\"airbnb\")]),_vm._v(\" 页面\\n \"),_c('h2',[_vm._v(\"你没有权限去该页面\")]),_vm._v(\" \"),_c('h6',[_vm._v(\"如有不满请联系你领导\")]),_vm._v(\" \"),_c('ul',{staticClass:\"list-unstyled\"},[_c('li',[_vm._v(\"或者你可以去:\")]),_vm._v(\" \"),_c('li',{staticClass:\"link-type\"},[_c('router-link',{attrs:{\"to\":\"/dashboard\"}},[_vm._v(\"回首页\")])],1),_vm._v(\" \"),_c('li',{staticClass:\"link-type\"},[_c('a',{attrs:{\"href\":\"https://www.taobao.com/\"}},[_vm._v(\"随便看看\")])]),_vm._v(\" \"),_c('li',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.dialogVisible=true}}},[_vm._v(\"点我看图\")])])])]),_vm._v(\" \"),_c('el-col',{attrs:{\"span\":12}},[_c('img',{attrs:{\"src\":_vm.errGif,\"width\":\"313\",\"height\":\"428\",\"alt\":\"Girl has dropped her ice cream.\"}})])],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.dialogVisible,\"title\":\"随便看\"},on:{\"update:visible\":function($event){_vm.dialogVisible=$event}}},[_c('img',{staticClass:\"pan-img\",attrs:{\"src\":_vm.ewizardClap}})])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"errPage-container\">\n <el-button icon=\"arrow-left\" class=\"pan-back-btn\" @click=\"back\">返回</el-button>\n <el-row>\n <el-col :span=\"12\">\n <h1 class=\"text-jumbo text-ginormous\">Oops!</h1>\n gif来源<a href=\"https://zh.airbnb.com/\" target=\"_blank\">airbnb</a> 页面\n <h2>你没有权限去该页面</h2>\n <h6>如有不满请联系你领导</h6>\n <ul class=\"list-unstyled\">\n <li>或者你可以去:</li>\n <li class=\"link-type\">\n <router-link to=\"/dashboard\">回首页</router-link>\n </li>\n <li class=\"link-type\"><a href=\"https://www.taobao.com/\">随便看看</a></li>\n <li><a href=\"#\" @click.prevent=\"dialogVisible=true\">点我看图</a></li>\n </ul>\n </el-col>\n <el-col :span=\"12\">\n <img :src=\"errGif\" width=\"313\" height=\"428\" alt=\"Girl has dropped her ice cream.\">\n </el-col>\n </el-row>\n <el-dialog :visible.sync=\"dialogVisible\" title=\"随便看\">\n <img :src=\"ewizardClap\" class=\"pan-img\">\n </el-dialog>\n </div>\n</template>\n\n<script>\nimport errGif from '@/assets/401_images/401.gif'\n\nexport default {\n name: 'Page401',\n data: function() {\n return {\n errGif: errGif + '?' + +new Date(),\n ewizardClap: 'https://wpimg.wallstcn.com/007ef517-bafd-4066-aae4-6883632d9646',\n dialogVisible: false\n }\n },\n methods: {\n back() {\n if (this.$route.query.noGoBack) {\n this.$router.push({ path: '/dashboard' })\n } else {\n this.$router.go(-1)\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n .errPage-container {\n width: 800px;\n max-width: 100%;\n margin: 100px auto;\n .pan-back-btn {\n background: #008489;\n color: #fff;\n border: none!important;\n }\n .pan-gif {\n margin: 0 auto;\n display: block;\n }\n .pan-img {\n display: block;\n margin: 0 auto;\n width: 100%;\n }\n .text-jumbo {\n font-size: 60px;\n font-weight: 700;\n color: #484848;\n }\n .list-unstyled {\n font-size: 14px;\n li {\n padding-bottom: 5px;\n }\n a {\n color: #008489;\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n }\n }\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./401.vue?vue&type=template&id=ab9be52c&scoped=true&\"\nimport script from \"./401.vue?vue&type=script&lang=js&\"\nexport * from \"./401.vue?vue&type=script&lang=js&\"\nimport style0 from \"./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ab9be52c\",\n null\n \n)\n\ncomponent.options.__file = \"401.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"static/img/401.089007e.gif\";"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e81.ebe9039f.js b/priv/static/adminfe/static/js/chunk-6e81.ebe9039f.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-6e81"],{BF41:function(t,a,i){},"UUO+":function(t,a,i){"use strict";i.r(a);var e=i("zGwZ"),s=i.n(e),r={name:"Page401",data:function(){return{errGif:s.a+"?"+ +new Date,ewizardClap:"https://wpimg.wallstcn.com/007ef517-bafd-4066-aae4-6883632d9646",dialogVisible:!1}},methods:{back:function(){this.$route.query.noGoBack?this.$router.push({path:"/dashboard"}):this.$router.go(-1)}}},n=(i("UrVv"),i("KHd+")),l=Object(n.a)(r,function(){var t=this,a=t.$createElement,i=t._self._c||a;return i("div",{staticClass:"errPage-container"},[i("el-button",{staticClass:"pan-back-btn",attrs:{icon:"arrow-left"},on:{click:t.back}},[t._v("返回")]),t._v(" "),i("el-row",[i("el-col",{attrs:{span:12}},[i("h1",{staticClass:"text-jumbo text-ginormous"},[t._v("Oops!")]),t._v("\n gif来源"),i("a",{attrs:{href:"https://zh.airbnb.com/",target:"_blank"}},[t._v("airbnb")]),t._v(" 页面\n "),i("h2",[t._v("你没有权限去该页面")]),t._v(" "),i("h6",[t._v("如有不满请联系你领导")]),t._v(" "),i("ul",{staticClass:"list-unstyled"},[i("li",[t._v("或者你可以去:")]),t._v(" "),i("li",{staticClass:"link-type"},[i("router-link",{attrs:{to:"/dashboard"}},[t._v("回首页")])],1),t._v(" "),i("li",{staticClass:"link-type"},[i("a",{attrs:{href:"https://www.taobao.com/"}},[t._v("随便看看")])]),t._v(" "),i("li",[i("a",{attrs:{href:"#"},on:{click:function(a){a.preventDefault(),t.dialogVisible=!0}}},[t._v("点我看图")])])])]),t._v(" "),i("el-col",{attrs:{span:12}},[i("img",{attrs:{src:t.errGif,width:"313",height:"428",alt:"Girl has dropped her ice cream."}})])],1),t._v(" "),i("el-dialog",{attrs:{visible:t.dialogVisible,title:"随便看"},on:{"update:visible":function(a){t.dialogVisible=a}}},[i("img",{staticClass:"pan-img",attrs:{src:t.ewizardClap}})])],1)},[],!1,null,"ab9be52c",null);l.options.__file="401.vue";a.default=l.exports},UrVv:function(t,a,i){"use strict";var e=i("BF41");i.n(e).a},zGwZ:function(t,a,i){t.exports=i.p+"static/img/401.089007e.gif"}}]); -//# sourceMappingURL=chunk-6e81.ebe9039f.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e81.ebe9039f.js.map b/priv/static/adminfe/static/js/chunk-6e81.ebe9039f.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/errorPage/401.vue?e7a2","webpack:///./src/views/errorPage/401.vue?6307","webpack:///src/views/errorPage/401.vue","webpack:///./src/views/errorPage/401.vue","webpack:///./src/views/errorPage/401.vue?2b76","webpack:///./src/assets/401_images/401.gif"],"names":["errorPage_401vue_type_script_lang_js_","name","data","errGif","_401_default","a","Date","ewizardClap","dialogVisible","methods","back","this","$route","query","noGoBack","$router","push","path","go","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","icon","on","click","_v","span","href","target","to","$event","preventDefault","src","width","height","alt","visible","title","update:visible","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_401_vue_vue_type_style_index_0_id_ab9be52c_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","module","exports","p"],"mappings":"sIAAA,yBCAwMA,GCgCxMC,KAAA,UACAC,KAAA,WACA,OACAC,OAAAC,EAAAC,EAAA,UAAAC,KACAC,YAAA,kEACAC,eAAA,IAGAC,SACAC,KADA,WAEAC,KAAAC,OAAAC,MAAAC,SACAH,KAAAI,QAAAC,MAAAC,KAAA,eAEAN,KAAAI,QAAAG,IAAA,8BCrCAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdpB,EHTF,WAA0B,IAAAsB,EAAAX,KAAaY,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,OAAiBE,YAAA,sBAAgCF,EAAA,aAAkBE,YAAA,eAAAC,OAAkCC,KAAA,cAAoBC,IAAKC,MAAAT,EAAAZ,QAAkBY,EAAAU,GAAA,QAAAV,EAAAU,GAAA,KAAAP,EAAA,UAAAA,EAAA,UAAuDG,OAAOK,KAAA,MAAWR,EAAA,MAAWE,YAAA,8BAAwCL,EAAAU,GAAA,WAAAV,EAAAU,GAAA,iBAAAP,EAAA,KAAoDG,OAAOM,KAAA,yBAAAC,OAAA,YAAmDb,EAAAU,GAAA,YAAAV,EAAAU,GAAA,eAAAP,EAAA,MAAAH,EAAAU,GAAA,eAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAAH,EAAAU,GAAA,gBAAAV,EAAAU,GAAA,KAAAP,EAAA,MAA2IE,YAAA,kBAA4BF,EAAA,MAAAH,EAAAU,GAAA,aAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAoDE,YAAA,cAAwBF,EAAA,eAAoBG,OAAOQ,GAAA,gBAAmBd,EAAAU,GAAA,aAAAV,EAAAU,GAAA,KAAAP,EAAA,MAA2CE,YAAA,cAAwBF,EAAA,KAAUG,OAAOM,KAAA,6BAAkCZ,EAAAU,GAAA,YAAAV,EAAAU,GAAA,KAAAP,EAAA,MAAAA,EAAA,KAAkDG,OAAOM,KAAA,KAAWJ,IAAKC,MAAA,SAAAM,GAAyBA,EAAAC,iBAAwBhB,EAAAd,eAAA,MAAyBc,EAAAU,GAAA,gBAAAV,EAAAU,GAAA,KAAAP,EAAA,UAAkDG,OAAOK,KAAA,MAAWR,EAAA,OAAYG,OAAOW,IAAAjB,EAAAnB,OAAAqC,MAAA,MAAAC,OAAA,MAAAC,IAAA,wCAAuF,GAAApB,EAAAU,GAAA,KAAAP,EAAA,aAAoCG,OAAOe,QAAArB,EAAAd,cAAAoC,MAAA,OAA0Cd,IAAKe,iBAAA,SAAAR,GAAkCf,EAAAd,cAAA6B,MAA2BZ,EAAA,OAAYE,YAAA,UAAAC,OAA6BW,IAAAjB,EAAAf,kBAAuB,QGYl4C,EACA,KACA,WACA,MAIAY,EAAA2B,QAAAC,OAAA,UACeC,EAAA,QAAA7B,6CCpBf,IAAA8B,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAA6e,wBCA7eG,EAAAC,QAAiBH,EAAAI,EAAuB","file":"static/js/chunk-6e81.ebe9039f.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"errPage-container\"},[_c('el-button',{staticClass:\"pan-back-btn\",attrs:{\"icon\":\"arrow-left\"},on:{\"click\":_vm.back}},[_vm._v(\"返回\")]),_vm._v(\" \"),_c('el-row',[_c('el-col',{attrs:{\"span\":12}},[_c('h1',{staticClass:\"text-jumbo text-ginormous\"},[_vm._v(\"Oops!\")]),_vm._v(\"\\n gif来源\"),_c('a',{attrs:{\"href\":\"https://zh.airbnb.com/\",\"target\":\"_blank\"}},[_vm._v(\"airbnb\")]),_vm._v(\" 页面\\n \"),_c('h2',[_vm._v(\"你没有权限去该页面\")]),_vm._v(\" \"),_c('h6',[_vm._v(\"如有不满请联系你领导\")]),_vm._v(\" \"),_c('ul',{staticClass:\"list-unstyled\"},[_c('li',[_vm._v(\"或者你可以去:\")]),_vm._v(\" \"),_c('li',{staticClass:\"link-type\"},[_c('router-link',{attrs:{\"to\":\"/dashboard\"}},[_vm._v(\"回首页\")])],1),_vm._v(\" \"),_c('li',{staticClass:\"link-type\"},[_c('a',{attrs:{\"href\":\"https://www.taobao.com/\"}},[_vm._v(\"随便看看\")])]),_vm._v(\" \"),_c('li',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.dialogVisible=true}}},[_vm._v(\"点我看图\")])])])]),_vm._v(\" \"),_c('el-col',{attrs:{\"span\":12}},[_c('img',{attrs:{\"src\":_vm.errGif,\"width\":\"313\",\"height\":\"428\",\"alt\":\"Girl has dropped her ice cream.\"}})])],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.dialogVisible,\"title\":\"随便看\"},on:{\"update:visible\":function($event){_vm.dialogVisible=$event}}},[_c('img',{staticClass:\"pan-img\",attrs:{\"src\":_vm.ewizardClap}})])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"errPage-container\">\n <el-button icon=\"arrow-left\" class=\"pan-back-btn\" @click=\"back\">返回</el-button>\n <el-row>\n <el-col :span=\"12\">\n <h1 class=\"text-jumbo text-ginormous\">Oops!</h1>\n gif来源<a href=\"https://zh.airbnb.com/\" target=\"_blank\">airbnb</a> 页面\n <h2>你没有权限去该页面</h2>\n <h6>如有不满请联系你领导</h6>\n <ul class=\"list-unstyled\">\n <li>或者你可以去:</li>\n <li class=\"link-type\">\n <router-link to=\"/dashboard\">回首页</router-link>\n </li>\n <li class=\"link-type\"><a href=\"https://www.taobao.com/\">随便看看</a></li>\n <li><a href=\"#\" @click.prevent=\"dialogVisible=true\">点我看图</a></li>\n </ul>\n </el-col>\n <el-col :span=\"12\">\n <img :src=\"errGif\" width=\"313\" height=\"428\" alt=\"Girl has dropped her ice cream.\">\n </el-col>\n </el-row>\n <el-dialog :visible.sync=\"dialogVisible\" title=\"随便看\">\n <img :src=\"ewizardClap\" class=\"pan-img\">\n </el-dialog>\n </div>\n</template>\n\n<script>\nimport errGif from '@/assets/401_images/401.gif'\n\nexport default {\n name: 'Page401',\n data: function() {\n return {\n errGif: errGif + '?' + +new Date(),\n ewizardClap: 'https://wpimg.wallstcn.com/007ef517-bafd-4066-aae4-6883632d9646',\n dialogVisible: false\n }\n },\n methods: {\n back() {\n if (this.$route.query.noGoBack) {\n this.$router.push({ path: '/dashboard' })\n } else {\n this.$router.go(-1)\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n .errPage-container {\n width: 800px;\n max-width: 100%;\n margin: 100px auto;\n .pan-back-btn {\n background: #008489;\n color: #fff;\n border: none!important;\n }\n .pan-gif {\n margin: 0 auto;\n display: block;\n }\n .pan-img {\n display: block;\n margin: 0 auto;\n width: 100%;\n }\n .text-jumbo {\n font-size: 60px;\n font-weight: 700;\n color: #484848;\n }\n .list-unstyled {\n font-size: 14px;\n li {\n padding-bottom: 5px;\n }\n a {\n color: #008489;\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n }\n }\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./401.vue?vue&type=template&id=ab9be52c&scoped=true&\"\nimport script from \"./401.vue?vue&type=script&lang=js&\"\nexport * from \"./401.vue?vue&type=script&lang=js&\"\nimport style0 from \"./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ab9be52c\",\n null\n \n)\n\ncomponent.options.__file = \"401.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./401.vue?vue&type=style&index=0&id=ab9be52c&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"static/img/401.089007e.gif\";"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e8c.bb92565e.js b/priv/static/adminfe/static/js/chunk-6e8c.bb92565e.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-6e8c"],{"13xp":function(e,s,t){"use strict";var r=t("2r4G");t.n(r).a},"2r4G":function(e,s,t){},"4bFr":function(e,s,t){"use strict";t.r(s);var r=t("ot3S"),i=t("tPM3"),a=t("o0o1"),n=t.n(a),o=t("yXPU"),u=t.n(o),l=t("XJYT"),c={name:"SecuritySettingsModal",props:{visible:{type:Boolean,default:!1},user:{type:Object,default:function(){return{}}}},data:function(){return{securitySettingsForm:{newEmail:"",newPassword:"",isEmailLoading:!1,isPasswordLoading:!1}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},getLabelWidth:function(){return this.isDesktop?"120px":"85px"},userCredentials:function(){return this.$store.state.userProfile.userCredentials}},mounted:function(){var e=u()(n.a.mark(function e(){return n.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.$store.dispatch("FetchUserCredentials",{nickname:this.user.nickname});case 2:this.securitySettingsForm.newEmail=this.userCredentials.email;case 3:case"end":return e.stop()}},e,this)}));return function(){return e.apply(this,arguments)}}(),methods:{updateEmail:function(){var e=this;return u()(n.a.mark(function s(){var t;return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return t={email:e.securitySettingsForm.newEmail},e.securitySettingsForm.isEmailLoading=!0,s.next=4,e.$store.dispatch("UpdateUserCredentials",{nickname:e.user.nickname,credentials:t});case 4:e.securitySettingsForm.isEmailLoading=!1,Object(l.Message)({message:e.$t("userProfile.securitySettings.emailUpdated"),type:"success",duration:5e3});case 6:case"end":return s.stop()}},s)}))()},updatePassword:function(){var e=this;return u()(n.a.mark(function s(){var t;return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return t={password:e.securitySettingsForm.newPassword},e.securitySettingsForm.isPasswordLoading=!0,s.next=4,e.$store.dispatch("UpdateUserCredentials",{nickname:e.user.nickname,credentials:t});case 4:e.securitySettingsForm.isPasswordLoading=!1,e.securitySettingsForm.newPassword="",Object(l.Message)({message:e.$t("userProfile.securitySettings.passwordUpdated"),type:"success",duration:5e3});case 7:case"end":return s.stop()}},s)}))()},close:function(){this.$emit("close",!0)}}},d=(t("13xp"),t("KHd+")),p=Object(d.a)(c,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dialog",{staticClass:"security-settings-modal",attrs:{"before-close":e.close,title:e.$t("userProfile.securitySettings.securitySettings"),visible:e.visible}},[t("el-form",{attrs:{model:e.securitySettingsForm,"label-width":e.getLabelWidth}},[t("el-form-item",{attrs:{label:e.$t("userProfile.securitySettings.email")}},[t("el-input",{attrs:{placeholder:e.$t("userProfile.securitySettings.inputNewEmail")},model:{value:e.securitySettingsForm.newEmail,callback:function(s){e.$set(e.securitySettingsForm,"newEmail",s)},expression:"securitySettingsForm.newEmail"}})],1),e._v(" "),t("el-form-item",[t("el-button",{staticClass:"security-settings-submit-button",attrs:{loading:e.securitySettingsForm.isEmailLoading,disabled:!e.securitySettingsForm.newEmail||e.securitySettingsForm.newEmail===e.userCredentials.email,type:"primary"},on:{click:function(s){return e.updateEmail()}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.submit"))+"\n ")])],1),e._v(" "),t("el-form-item",{staticClass:"password-input",attrs:{label:e.$t("userProfile.securitySettings.password")}},[t("el-input",{attrs:{placeholder:e.$t("userProfile.securitySettings.inputNewPassword")},model:{value:e.securitySettingsForm.newPassword,callback:function(s){e.$set(e.securitySettingsForm,"newPassword",s)},expression:"securitySettingsForm.newPassword"}}),e._v(" "),t("small",{staticClass:"form-text"},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.passwordLengthNotice",{minLength:8}))+"\n ")])],1),e._v(" "),t("el-alert",{staticClass:"password-alert",attrs:{closable:!1,type:"warning","show-icon":""}},[t("p",[e._v(e._s(e.$t("userProfile.securitySettings.passwordChangeWarning1")))]),e._v(" "),t("p",[e._v(e._s(e.$t("userProfile.securitySettings.passwordChangeWarning2")))])]),e._v(" "),t("el-form-item",[t("el-button",{staticClass:"security-settings-submit-button",attrs:{loading:e.securitySettingsForm.isPasswordLoading,disabled:e.securitySettingsForm.newPassword.length<8,type:"primary"},on:{click:function(s){return e.updatePassword()}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.submit"))+"\n ")])],1)],1)],1)},[],!1,null,null,null);p.options.__file="SecuritySettingsModal.vue";var g=p.exports,v=t("rIUS"),_=t("WjBP"),m={name:"UsersShow",components:{ModerationDropdown:i.a,RebootButton:v.a,ResetPasswordDialog:_.a,Status:r.a,SecuritySettingsModal:g},data:function(){return{showPrivate:!1,resetPasswordDialogOpen:!1,securitySettingsModalVisible:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.users.loading},statuses:function(){return this.$store.state.userProfile.statuses},statusesLoading:function(){return this.$store.state.userProfile.statusesLoading},user:function(){return this.$store.state.userProfile.user},userProfileLoading:function(){return this.$store.state.userProfile.userProfileLoading},userCredentials:function(){return this.$store.state.userProfile.userCredentials}},mounted:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("FetchUserProfile",{userId:this.$route.params.id,godmode:!1})},methods:{closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},humanizeTag:function(e){return{"mrf_tag:media-force-nsfw":"Force NSFW","mrf_tag:media-strip":"Strip Media","mrf_tag:force-unlisted":"Force Unlisted","mrf_tag:sandbox":"Sandbox","mrf_tag:disable-remote-subscription":"Disable remote subscription","mrf_tag:disable-any-subscription":"Disable any subscription"}[e]},onTogglePrivate:function(){this.$store.dispatch("FetchUserProfile",{userId:this.$route.params.id,godmode:this.showPrivate})},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(e,s){return e[s]}}},f=(t("9IXO"),Object(d.a)(m,function(){var e=this,s=e.$createElement,t=e._self._c||s;return e.userProfileLoading?e._e():t("main",[e.isDesktop||e.isTablet?t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[e.propertyExists(e.user,"avatar")?t("el-avatar",{attrs:{src:e.user.avatar,size:"large"}}):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("h1",[e._v(e._s(e.user.nickname))]):t("h1",{staticClass:"invalid"},[e._v("("+e._s(e.$t("users.invalidNickname"))+")")]),e._v(" "),e.propertyExists(e.user,"url")?t("a",{attrs:{href:e.user.url,target:"_blank"}},[t("i",{staticClass:"el-icon-top-right",attrs:{title:e.$t("userProfile.openAccountInInstance")}})]):e._e()],1),e._v(" "),t("div",{staticClass:"left-header-container"},[e.propertyExists(e.user,"nickname")?t("moderation-dropdown",{attrs:{user:e.user,page:"userPage"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):e._e(),e._v(" "),t("reboot-button")],1)]):e._e(),e._v(" "),e.isMobile?t("div",{staticClass:"user-page-header-container"},[t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[e.propertyExists(e.user,"avatar")?t("el-avatar",{attrs:{src:e.user.avatar,size:"large"}}):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("h1",[e._v(e._s(e.user.nickname))]):t("h1",{staticClass:"invalid"},[e._v("("+e._s(e.$t("users.invalidNickname"))+")")])],1),e._v(" "),t("reboot-button")],1),e._v(" "),e.propertyExists(e.user,"nickname")?t("moderation-dropdown",{attrs:{user:e.user,page:"userPage"},on:{"open-reset-token-dialog":e.openResetPasswordDialog}}):e._e()],1):e._e(),e._v(" "),t("reset-password-dialog",{attrs:{"reset-password-dialog-open":e.resetPasswordDialogOpen},on:{"close-reset-token-dialog":e.closeResetPasswordDialog}}),e._v(" "),t("div",{staticClass:"user-profile-container"},[t("el-card",{staticClass:"user-profile-card"},[t("div",{staticClass:"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium"},[e.propertyExists(e.user,"nickname")?e._e():t("el-tag",{staticClass:"invalid-user-tag",attrs:{type:"info"}},[e._v("\n "+e._s(e.$t("users.invalidAccount"))+"\n ")]),e._v(" "),t("table",{staticClass:"user-profile-table"},[t("tbody",[t("tr",{staticClass:"el-table__row"},[t("td",{staticClass:"name-col"},[e._v("ID")]),e._v(" "),t("td",[e._v("\n "+e._s(e.user.id)+"\n ")])]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.actorType")))]),e._v(" "),t("td",[t("el-tag",{attrs:{type:"Person"===e.userCredentials.actor_type?"success":"warning"}},[e._v("\n "+e._s(e.userCredentials.actor_type)+"\n ")])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.tags")))]),e._v(" "),t("td",[0!==e.user.tags.length&&e.propertyExists(e.user,"tags")?e._l(e.user.tags,function(s){return t("el-tag",{key:s,staticClass:"user-profile-tag"},[e._v(e._s(e.humanizeTag(s)))])}):t("span",[e._v("—")])],2)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.roles")))]),e._v(" "),t("td",[e.user.roles.admin?t("el-tag",{staticClass:"user-profile-tag"},[e._v("\n "+e._s(e.$t("users.admin"))+"\n ")]):e._e(),e._v(" "),e.user.roles.moderator?t("el-tag",{staticClass:"user-profile-tag"},[e._v("\n "+e._s(e.$t("users.moderator"))+"\n ")]):e._e(),e._v(" "),e.propertyExists(e.user,"roles")&&(e.user.roles.moderator||e.user.roles.admin)?e._e():t("span",[e._v("—")])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.accountType")))]),e._v(" "),t("td",[e.user.local?t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.local")))]):e._e(),e._v(" "),e.user.local?e._e():t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.external")))])],1)]),e._v(" "),t("tr",{staticClass:"el-table__row"},[t("td",[e._v(e._s(e.$t("userProfile.status")))]),e._v(" "),t("td",[e.user.approval_pending?t("el-tag",{attrs:{type:"info"}},[e._v(e._s(e.$t("userProfile.pending")))]):e._e(),e._v(" "),!e.user.deactivated&!e.user.approval_pending?t("el-tag",{attrs:{type:"success"}},[e._v(e._s(e.$t("userProfile.active")))]):e._e(),e._v(" "),e.user.deactivated?t("el-tag",{attrs:{type:"danger"}},[e._v(e._s(e.$t("userProfile.deactivated")))]):e._e()],1)])])]),e._v(" "),e.user.registration_reason?t("div",[t("div",{staticClass:"reason-label"},[e._v(e._s(e.$t("userProfile.reason")))]),e._v('\n "'+e._s(e.user.registration_reason)+'"\n ')]):e._e()],1),e._v(" "),e.propertyExists(e.user,"nickname")?t("el-button",{staticClass:"security-setting-button",attrs:{icon:"el-icon-lock"},on:{click:function(s){e.securitySettingsModalVisible=!0}}},[e._v("\n "+e._s(e.$t("userProfile.securitySettings.securitySettings"))+"\n ")]):e._e(),e._v(" "),e.propertyExists(e.user,"nickname")?t("SecuritySettingsModal",{attrs:{user:e.user,visible:e.securitySettingsModalVisible},on:{close:function(s){e.securitySettingsModalVisible=!1}}}):e._e()],1),e._v(" "),t("div",{staticClass:"recent-statuses-container"},[t("h2",{staticClass:"recent-statuses"},[e._v(e._s(e.$t("userProfile.recentStatuses")))]),e._v(" "),t("el-checkbox",{staticClass:"show-private-statuses",on:{change:e.onTogglePrivate},model:{value:e.showPrivate,callback:function(s){e.showPrivate=s},expression:"showPrivate"}},[e._v("\n "+e._s(e.$t("statuses.showPrivateStatuses"))+"\n ")]),e._v(" "),e.statusesLoading?e._e():t("el-timeline",{staticClass:"statuses"},[e._l(e.statuses,function(s){return t("el-timeline-item",{key:s.id},[t("status",{attrs:{status:s,account:s.account,"show-checkbox":!1,"user-id":e.user.id,godmode:e.showPrivate}})],1)}),e._v(" "),0===e.statuses.length?t("p",{staticClass:"no-statuses"},[e._v(e._s(e.$t("userProfile.noStatuses")))]):e._e()],2)],1)],1)],1)},[],!1,null,null,null));f.options.__file="show.vue";s.default=f.exports},"53Av":function(e,s,t){"use strict";var r=t("lOBV");t.n(r).a},"9IXO":function(e,s,t){"use strict";var r=t("msq4");t.n(r).a},RnhZ:function(e,s,t){var r={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function i(e){var s=a(e);return t(s)}function a(e){if(!t.o(r,e)){var s=new Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}return r[e]}i.keys=function(){return Object.keys(r)},i.resolve=a,e.exports=i,i.id="RnhZ"},WjBP:function(e,s,t){"use strict";var r={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},i=t("KHd+"),a=Object(i.a)(r,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{visible:e.dialogOpen,title:e.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:e.closeResetPasswordDialog}},[t("div",[t("p",{staticClass:"password-reset-token"},[e._v(e._s(e.$t("users.passwordResetTokenGenerated"))+" "+e._s(e.passwordResetToken))]),e._v(" "),t("p",[e._v(e._s(e.$t("users.linkToResetPassword"))+"\n "),t("a",{staticClass:"reset-password-link",attrs:{href:e.passwordResetLink,target:"_blank"}},[e._v(e._s(e.passwordResetLink))])])])])},[],!1,null,null,null);a.options.__file="ResetPasswordDialog.vue";s.a=a.exports},lOBV:function(e,s,t){},msq4:function(e,s,t){},tPM3:function(e,s,t){"use strict";var r={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(e){this.$store.dispatch("UpdateActorType",{user:this.user,type:e,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{disableMfa:function(e){this.$store.dispatch("DisableMfa",e)},getPasswordResetToken:function(e){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",e)},handleConfirmationResend:function(e){this.$store.dispatch("ResendConfirmationEmail",[e])},handleDeletion:function(e){var s=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(e){this.$store.dispatch("ApproveUsersAccount",{users:[e],_userId:e.id,_statusId:this.statusId})},handleAccountRejection:function(e){var s=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteUsers",{users:[e],_userId:e.id})}).catch(function(){s.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(e){this.$store.dispatch("ConfirmUsersEmail",{users:[e],_userId:e.id,_statusId:this.statusId})},requirePasswordReset:function(e){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[e]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(e){var s=e.local,t=e.id;return s&&this.showDeactivatedButton(t)},showDeactivatedButton:function(e){return this.$store.state.user.id!==e},toggleActivation:function(e){e.deactivated?this.$store.dispatch("ActivateUsers",{users:[e],_userId:e.id}):this.$store.dispatch("DeactivateUsers",{users:[e],_userId:e.id})},toggleTag:function(e,s){e.tags.includes(s)?this.$store.dispatch("RemoveTag",{users:[e],tag:s,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[e],tag:s,_userId:e.id,_statusId:this.statusId})},toggleUserRight:function(e,s){e.roles[s]?this.$store.dispatch("DeleteRight",{users:[e],right:s,_userId:e.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[e],right:s,_userId:e.id,_statusId:this.statusId})}}},i=(t("53Av"),t("KHd+")),a=Object(i.a)(r,function(){var e=this,s=e.$createElement,t=e._self._c||s;return t("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(e){e.stopPropagation()}}},[t("div",["users"===e.page?t("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[e._v("\n "+e._s(e.$t("users.moderation"))+"\n "),e.isDesktop?t("i",{staticClass:"el-icon-arrow-down el-icon--right"}):e._e()]):e._e(),e._v(" "),"userPage"===e.page||"statusPage"===e.page?t("el-button",{staticClass:"moderate-user-button"},[t("span",{staticClass:"moderate-user-button-container"},[t("span",[t("i",{staticClass:"el-icon-edit"}),e._v("\n "+e._s(e.$t("users.moderateUser"))+"\n ")]),e._v(" "),t("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):e._e()],1),e._v(" "),t("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t("el-dropdown-item",{staticClass:"actor-type-dropdown"},[t("el-select",{staticClass:"actor-type-select",attrs:{placeholder:e.$t("userProfile.actorType")},model:{value:e.actorType,callback:function(s){e.actorType=s},expression:"actorType"}},[t("el-option",{attrs:{label:e.$t("users.service"),value:"Service"}}),e._v(" "),t("el-option",{attrs:{label:e.$t("users.person"),value:"Person"}})],1)],1),e._v(" "),e.showAdminAction(e.user)?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.toggleUserRight(e.user,"admin")}}},[e._v("\n "+e._s(e.user.roles.admin?e.$t("users.revokeAdmin"):e.$t("users.grantAdmin"))+"\n ")]):e._e(),e._v(" "),e.showAdminAction(e.user)?t("el-dropdown-item",{nativeOn:{click:function(s){return e.toggleUserRight(e.user,"moderator")}}},[e._v("\n "+e._s(e.user.roles.moderator?e.$t("users.revokeModerator"):e.$t("users.grantModerator"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?t("el-dropdown-item",{attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(s){return e.toggleActivation(e.user)}}},[e._v("\n "+e._s(e.user.deactivated?e.$t("users.activateAccount"):e.$t("users.deactivateAccount"))+"\n ")]):e._e(),e._v(" "),e.showDeactivatedButton(e.user.id)&&"statusPage"!==e.page?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleDeletion(e.user)}}},[e._v("\n "+e._s(e.$t("users.deleteAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.handleAccountApproval(e.user)}}},[e._v("\n "+e._s(e.$t("users.approveAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.approval_pending?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleAccountRejection(e.user)}}},[e._v("\n "+e._s(e.$t("users.rejectAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.handleEmailConfirmation(e.user)}}},[e._v("\n "+e._s(e.$t("users.confirmAccount"))+"\n ")]):e._e(),e._v(" "),e.user.local&&e.user.confirmation_pending?t("el-dropdown-item",{nativeOn:{click:function(s){return e.handleConfirmationResend(e.user)}}},[e._v("\n "+e._s(e.$t("users.resendConfirmation"))+"\n ")]):e._e(),e._v(" "),t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:e.showAdminAction(e.user)},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:media-force-nsfw")}}},[e._v("\n "+e._s(e.$t("users.forceNsfw"))+"\n "),e.user.tags.includes("mrf_tag:media-force-nsfw")?t("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:media-strip")}}},[e._v("\n "+e._s(e.$t("users.stripMedia"))+"\n "),e.user.tags.includes("mrf_tag:media-strip")?t("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:force-unlisted")}}},[e._v("\n "+e._s(e.$t("users.forceUnlisted"))+"\n "),e.user.tags.includes("mrf_tag:force-unlisted")?t("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:sandbox")}}},[e._v("\n "+e._s(e.$t("users.sandbox"))+"\n "),e.user.tags.includes("mrf_tag:sandbox")?t("i",{staticClass:"el-icon-check"}):e._e()]),e._v(" "),e.user.local?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:disable-remote-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableRemoteSubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-remote-subscription")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{class:{"active-tag":e.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(s){return e.toggleTag(e.user,"mrf_tag:disable-any-subscription")}}},[e._v("\n "+e._s(e.$t("users.disableAnySubscription"))+"\n "),e.user.tags.includes("mrf_tag:disable-any-subscription")?t("i",{staticClass:"el-icon-check"}):e._e()]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(s){return e.getPasswordResetToken(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.getPasswordResetToken"))+"\n ")]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{nativeOn:{click:function(s){return e.requirePasswordReset(e.user)}}},[e._v("\n "+e._s(e.$t("users.requirePasswordReset"))+"\n ")]):e._e(),e._v(" "),e.user.local?t("el-dropdown-item",{nativeOn:{click:function(s){return e.disableMfa(e.user.nickname)}}},[e._v("\n "+e._s(e.$t("users.disableMfa"))+"\n ")]):e._e()],1)],1)},[],!1,null,null,null);a.options.__file="ModerationDropdown.vue";s.a=a.exports}}]); +//# sourceMappingURL=chunk-6e8c.bb92565e.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-6e8c.bb92565e.js.map b/priv/static/adminfe/static/js/chunk-6e8c.bb92565e.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/users/components/SecuritySettingsModal.vue?5147","webpack:///./src/views/users/show.vue?816e","webpack:///./src/views/users/components/SecuritySettingsModal.vue?49db","webpack:///src/views/users/components/SecuritySettingsModal.vue","webpack:///./src/views/users/components/SecuritySettingsModal.vue","webpack:///./src/views/users/components/SecuritySettingsModal.vue?dd3f","webpack:///./src/views/users/show.vue?ac8b","webpack:///src/views/users/show.vue","webpack:///./src/views/users/show.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./src/views/users/show.vue?aed3","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?93ed","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SecuritySettingsModal_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_SecuritySettingsModalvue_type_script_lang_js_","name","props","visible","type","Boolean","default","user","Object","data","securitySettingsForm","newEmail","newPassword","isEmailLoading","isPasswordLoading","computed","isDesktop","this","$store","state","app","device","getLabelWidth","userCredentials","userProfile","mounted","_mounted","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","dispatch","nickname","email","stop","apply","arguments","methods","updateEmail","_this","_callee2","credentials","_context2","element_ui_common","message","$t","duration","updatePassword","_this2","_callee3","_context3","password","close","$emit","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","before-close","title","model","label-width","label","placeholder","value","callback","$$v","$set","expression","_v","loading","disabled","on","click","$event","_s","minLength","closable","show-icon","length","options","__file","SecuritySettingsModal","users_showvue_type_script_lang_js_","components","ModerationDropdown","RebootButton","ResetPasswordDialog","Status","showPrivate","resetPasswordDialogOpen","securitySettingsModalVisible","isMobile","isTablet","users","statuses","statusesLoading","userProfileLoading","userId","$route","params","id","godmode","closeResetPasswordDialog","humanizeTag","tag","mrf_tag:media-force-nsfw","mrf_tag:media-strip","mrf_tag:force-unlisted","mrf_tag:sandbox","mrf_tag:disable-remote-subscription","mrf_tag:disable-any-subscription","onTogglePrivate","openResetPasswordDialog","propertyExists","account","property","show_component","_e","src","avatar","size","href","url","target","page","open-reset-token-dialog","reset-password-dialog-open","close-reset-token-dialog","actor_type","tags","_l","key","roles","moderator","admin","local","deactivated","approval_pending","registration_reason","icon","change","status","show-checkbox","user-id","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_show_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","webpackContextResolve","o","e","Error","code","keys","resolve","module","exports","components_ResetPasswordDialogvue_type_script_lang_js_","dialogOpen","passwordResetLink","passwordResetToken","link","token","directives","rawName","custom-class","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","get","set","_userId","_statusId","disableMfa","getPasswordResetToken","handleConfirmationResend","handleDeletion","$confirm","confirmButtonText","cancelButtonText","then","catch","$message","handleAccountApproval","handleAccountRejection","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","showDeactivatedButton","toggleActivation","toggleTag","includes","toggleUserRight","right","hide-on-click","trigger","placement","nativeOn","stopPropagation","slot","divided","confirmation_pending","class","active-tag"],"mappings":"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,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,QAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,WAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,YAAA,OACAC,eAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,QAIA,SAAAC,EAAAC,GACA,IAAA3T,EAAA4T,EAAAD,GACA,OAAA5a,EAAAiH,GAEA,SAAA4T,EAAAD,GACA,IAAA5a,EAAA8a,EAAA9Q,EAAA4Q,GAAA,CACA,IAAAG,EAAA,IAAAC,MAAA,uBAAAJ,EAAA,KAEA,MADAG,EAAAE,KAAA,mBACAF,EAEA,OAAA/Q,EAAA4Q,GAEAD,EAAAO,KAAA,WACA,OAAAxa,OAAAwa,KAAAlR,IAEA2Q,EAAAQ,QAAAN,EACAO,EAAAC,QAAAV,EACAA,EAAA1T,GAAA,0CC/RA,ICA8NqU,GCkB9Nnb,KAAA,sBACAC,OACAkG,yBACAhG,KAAAC,QACAC,SAAA,IAGAS,UACAsa,WADA,WAEA,OAAApa,KAAAmF,yBAEApB,QAJA,WAKA,OAAA/D,KAAAC,OAAAC,MAAAqF,MAAAxB,SAEAsW,kBAPA,WAQA,OAAAra,KAAAC,OAAAC,MAAAqF,MAAA+U,mBAAAC,MAEAD,mBAVA,WAWA,OAAAta,KAAAC,OAAAC,MAAAqF,MAAA+U,mBAAAE,QAGA/Y,SACAuE,yBADA,WAEAhG,KAAAyC,MAAA,2CClCAC,EAAgBnD,OAAAoD,EAAA,EAAApD,CACd4a,EHRF,WAA0B,IAAAvX,EAAA5C,KAAa6C,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,aAAuB0X,aAAazb,KAAA,UAAA0b,QAAA,YAAAjX,MAAAb,EAAA,QAAAiB,WAAA,YAA4EX,OAAShE,QAAA0D,EAAAwX,WAAAhX,MAAAR,EAAAX,GAAA,mCAAA0Y,eAAA,+BAAwH1W,IAAKzB,MAAAI,EAAAoD,4BAAsCjD,EAAA,OAAAA,EAAA,KAAoBE,YAAA,yBAAmCL,EAAAkB,GAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,0CAAAW,EAAAwB,GAAAxB,EAAA0X,uBAAA1X,EAAAkB,GAAA,KAAAf,EAAA,KAAAH,EAAAkB,GAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,0CAAAc,EAAA,KAA8LE,YAAA,sBAAAC,OAAyCiE,KAAAvE,EAAAyX,kBAAAhT,OAAA,YAAgDzE,EAAAkB,GAAAlB,EAAAwB,GAAAxB,EAAAyX,iCGWnsB,EACA,KACA,KACA,MAIA3X,EAAA+B,QAAAC,OAAA,0BACegE,EAAA,EAAAhG,2FCnBf,ICA6NkY,GCkI7N5b,KAAA,qBACAC,OACAK,MACAH,KAAAI,OACAF,QAAA,WACA,WAGAiI,MACAnI,KAAA0b,OACAxb,QAAA,SAEAyb,UACA3b,KAAA0b,OACAxb,QAAA,KAGAS,UACAib,WACAC,IADA,WAEA,OAAAhb,KAAAV,KAAAoI,YAEAuT,IAJA,SAIA9b,GACAa,KAAAC,OAAAkB,SAAA,mBACA7B,KAAAU,KAAAV,KACAH,OACA+b,QAAAlb,KAAAV,KAAAwG,GACAqV,UAAAnb,KAAA8a,aAIA/a,UAdA,WAeA,kBAAAC,KAAAC,OAAAC,MAAAC,IAAAC,SAGAqB,SACA2Z,WADA,SACAha,GACApB,KAAAC,OAAAkB,SAAA,aAAAC,IAEAia,sBAJA,SAIAja,GACApB,KAAAyC,MAAA,2BACAzC,KAAAC,OAAAkB,SAAA,wBAAAC,IAEAka,yBARA,SAQAhc,GACAU,KAAAC,OAAAkB,SAAA,2BAAA7B,KAEAic,eAXA,SAWAjc,GAAA,IAAAqC,EAAA3B,KACAA,KAAAwb,SACAxb,KAAAiC,GAAA,iCAEAwZ,kBAAA,SACAC,iBAAA,SACAvc,KAAA,YACAwc,KAAA,WACAha,EAAA1B,OAAAkB,SAAA,eAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,OACA8V,MAAA,WACAja,EAAAka,UACA1c,KAAA,OACA6C,QAAA,uBAIA8Z,sBA3BA,SA2BAxc,GACAU,KAAAC,OAAAkB,SAAA,uBAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,YAEAiB,uBA9BA,SA8BAzc,GAAA,IAAA8C,EAAApC,KACAA,KAAAwb,SACAxb,KAAAiC,GAAA,oCAEAwZ,kBAAA,SACAC,iBAAA,SACAvc,KAAA,YACAwc,KAAA,WACAvZ,EAAAnC,OAAAkB,SAAA,eAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,OACA8V,MAAA,WACAxZ,EAAAyZ,UACA1c,KAAA,OACA6C,QAAA,uBAIAga,wBA9CA,SA8CA1c,GACAU,KAAAC,OAAAkB,SAAA,qBAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,YAEAmB,qBAjDA,SAiDA3c,GACAU,KAAAC,OAAAC,MAAAZ,KAAA4c,SAAAC,SAAAC,cAKApc,KAAAC,OAAAkB,SAAA,wBAAA7B,IAHAU,KAAAqc,OAAArc,KAAAiC,GAAA,sCAAA9C,KAAA,WAKAmd,gBAzDA,SAAAC,GAyDA,IAAAtU,EAAAsU,EAAAtU,MAAAnC,EAAAyW,EAAAzW,GACA,OAAAmC,GAAAjI,KAAAwc,sBAAA1W,IAEA0W,sBA5DA,SA4DA1W,GACA,OAAA9F,KAAAC,OAAAC,MAAAZ,KAAAwG,QAEA2W,iBA/DA,SA+DAnd,GACAA,EAAA4I,YACAlI,KAAAC,OAAAkB,SAAA,iBAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,KACA9F,KAAAC,OAAAkB,SAAA,mBAAAoE,OAAAjG,GAAA4b,QAAA5b,EAAAwG,MAEA4W,UApEA,SAoEApd,EAAA4G,GACA5G,EAAAqI,KAAAgV,SAAAzW,GACAlG,KAAAC,OAAAkB,SAAA,aAAAoE,OAAAjG,GAAA4G,MAAAgV,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,WACA9a,KAAAC,OAAAkB,SAAA,UAAAoE,OAAAjG,GAAA4G,MAAAgV,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,YAEA8B,gBAzEA,SAyEAtd,EAAAud,GACAvd,EAAAwI,MAAA+U,GACA7c,KAAAC,OAAAkB,SAAA,eAAAoE,OAAAjG,GAAAud,QAAA3B,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,WACA9a,KAAAC,OAAAkB,SAAA,YAAAoE,OAAAjG,GAAAud,QAAA3B,QAAA5b,EAAAwG,GAAAqV,UAAAnb,KAAA8a,sCCzOApY,EAAgBnD,OAAAoD,EAAA,EAAApD,CACdqb,EHTF,WAA0B,IAAAhY,EAAA5C,KAAa6C,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,eAAyBG,OAAO4Z,iBAAA,EAAA5V,KAAA,QAAA6V,QAAA,QAAAC,UAAA,aAA+EC,UAAW/Y,MAAA,SAAAC,GAAyBA,EAAA+Y,sBAA4Bna,EAAA,iBAAAH,EAAA0E,KAAAvE,EAAA,aAAmDE,YAAA,mBAAAC,OAAsC/D,KAAA,UAAeyD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,iCAAAW,EAAA,UAAAG,EAAA,KAA2FE,YAAA,sCAAgDL,EAAAmE,OAAAnE,EAAAmE,KAAAnE,EAAAkB,GAAA,kBAAAlB,EAAA0E,MAAA,eAAA1E,EAAA0E,KAAAvE,EAAA,aAAyGE,YAAA,yBAAmCF,EAAA,QAAaE,YAAA,mCAA6CF,EAAA,QAAAA,EAAA,KAAqBE,YAAA,iBAA2BL,EAAAkB,GAAA,eAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,uCAAAW,EAAAkB,GAAA,KAAAf,EAAA,KAAiGE,YAAA,0CAAgDL,EAAAmE,MAAA,GAAAnE,EAAAkB,GAAA,KAAAf,EAAA,oBAAsDG,OAAOia,KAAA,YAAkBA,KAAA,aAAiBpa,EAAA,oBAAyBE,YAAA,wBAAkCF,EAAA,aAAkBE,YAAA,oBAAAC,OAAuCM,YAAAZ,EAAAX,GAAA,0BAA8CoB,OAAQI,MAAAb,EAAA,UAAAc,SAAA,SAAAC,GAA+Cf,EAAAmY,UAAApX,GAAkBE,WAAA,eAAyBd,EAAA,aAAkBG,OAAOK,MAAAX,EAAAX,GAAA,iBAAAwB,MAAA,aAAmDb,EAAAkB,GAAA,KAAAf,EAAA,aAA8BG,OAAOK,MAAAX,EAAAX,GAAA,gBAAAwB,MAAA,aAAiD,OAAAb,EAAAkB,GAAA,KAAAlB,EAAA0Z,gBAAA1Z,EAAAtD,MAAAyD,EAAA,oBAA6EG,OAAOka,QAAA,IAAaH,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAga,gBAAAha,EAAAtD,KAAA,aAAgDsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAtD,KAAAwI,MAAAE,MAAApF,EAAAX,GAAA,qBAAAW,EAAAX,GAAA,iCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAA0Z,gBAAA1Z,EAAAtD,MAAAyD,EAAA,oBAAoMka,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAga,gBAAAha,EAAAtD,KAAA,iBAAoDsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAtD,KAAAwI,MAAAC,UAAAnF,EAAAX,GAAA,yBAAAW,EAAAX,GAAA,qCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAA4Z,sBAAA5Z,EAAAtD,KAAAwG,KAAA,eAAAlD,EAAA0E,KAAAvE,EAAA,oBAAsPG,OAAOka,QAAAxa,EAAA0Z,gBAAA1Z,EAAAtD,OAAwC2d,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA6Z,iBAAA7Z,EAAAtD,UAAwCsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAtD,KAAA4I,YAAAtF,EAAAX,GAAA,yBAAAW,EAAAX,GAAA,wCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAA4Z,sBAAA5Z,EAAAtD,KAAAwG,KAAA,eAAAlD,EAAA0E,KAAAvE,EAAA,oBAAqPka,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA2Y,eAAA3Y,EAAAtD,UAAsCsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,oCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA2I,OAAArF,EAAAtD,KAAA6I,iBAAApF,EAAA,oBAAgKG,OAAOka,QAAA,IAAaH,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAkZ,sBAAAlZ,EAAAtD,UAA6CsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,qCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA2I,OAAArF,EAAAtD,KAAA6I,iBAAApF,EAAA,oBAAiKka,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAmZ,uBAAAnZ,EAAAtD,UAA8CsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,oCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA2I,OAAArF,EAAAtD,KAAA+d,qBAAAta,EAAA,oBAAoKG,OAAOka,QAAA,IAAaH,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAoZ,wBAAApZ,EAAAtD,UAA+CsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,qCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA2I,OAAArF,EAAAtD,KAAA+d,qBAAAta,EAAA,oBAAqKka,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA0Y,yBAAA1Y,EAAAtD,UAAgDsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,yCAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAf,EAAA,oBAAuHua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,6BAAmEzZ,OAAQka,QAAAxa,EAAA0Z,gBAAA1Z,EAAAtD,OAAwC2d,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,gCAA6DsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,gCAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,4BAAA5Z,EAAA,KAA+HE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAkB,GAAA,KAAAf,EAAA,oBAAgDua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,wBAA8DM,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,2BAAwDsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,iCAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,uBAAA5Z,EAAA,KAA2HE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAkB,GAAA,KAAAf,EAAA,oBAAgDua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,2BAAiEM,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,8BAA2DsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,oCAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,0BAAA5Z,EAAA,KAAiIE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAkB,GAAA,KAAAf,EAAA,oBAAgDua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,oBAA0DM,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,uBAAoDsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,8BAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,mBAAA5Z,EAAA,KAAoHE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA,MAAAyD,EAAA,oBAAiEua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,wCAA8EM,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,2CAAwEsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,gDAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,uCAAA5Z,EAAA,KAA0JE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA,MAAAyD,EAAA,oBAA0Eua,OAAOC,aAAA3a,EAAAtD,KAAAqI,KAAAgV,SAAA,qCAA2EM,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAA8Z,UAAA9Z,EAAAtD,KAAA,wCAAqEsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,6CAAAW,EAAAtD,KAAAqI,KAAAgV,SAAA,oCAAA5Z,EAAA,KAAoJE,YAAA,kBAA4BL,EAAAmE,OAAAnE,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA,MAAAyD,EAAA,oBAA0EG,OAAOka,QAAA,IAAaH,UAAW/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAyY,sBAAAzY,EAAAtD,KAAA8B,cAAsDwB,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,4CAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA,MAAAyD,EAAA,oBAA2Ika,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAqZ,qBAAArZ,EAAAtD,UAA4CsD,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,2CAAAW,EAAAmE,KAAAnE,EAAAkB,GAAA,KAAAlB,EAAAtD,KAAA,MAAAyD,EAAA,oBAA0Ika,UAAU/Y,MAAA,SAAAC,GAAyB,OAAAvB,EAAAwY,WAAAxY,EAAAtD,KAAA8B,cAA2CwB,EAAAkB,GAAA,WAAAlB,EAAAwB,GAAAxB,EAAAX,GAAA,iCAAAW,EAAAmE,MAAA,YGY1/M,EACA,KACA,KACA,MAIArE,EAAA+B,QAAAC,OAAA,yBACegE,EAAA,EAAAhG","file":"static/js/chunk-6e8c.bb92565e.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.userProfileLoading)?_c('main',[(_vm.isDesktop || _vm.isTablet)?_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'url'))?_c('a',{attrs:{\"href\":_vm.user.url,\"target\":\"_blank\"}},[_c('i',{staticClass:\"el-icon-top-right\",attrs:{\"title\":_vm.$t('userProfile.openAccountInInstance')}})]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"left-header-container\"},[(_vm.propertyExists(_vm.user, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'userPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_vm._e(),_vm._v(\" \"),_c('reboot-button')],1)]):_vm._e(),_vm._v(\" \"),(_vm.isMobile)?_c('div',{staticClass:\"user-page-header-container\"},[_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])],1),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'userPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),_c('div',{staticClass:\"user-profile-container\"},[_c('el-card',{staticClass:\"user-profile-card\"},[_c('div',{staticClass:\"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium\"},[(!_vm.propertyExists(_vm.user, 'nickname'))?_c('el-tag',{staticClass:\"invalid-user-tag\",attrs:{\"type\":\"info\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.invalidAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('table',{staticClass:\"user-profile-table\"},[_c('tbody',[_c('tr',{staticClass:\"el-table__row\"},[_c('td',{staticClass:\"name-col\"},[_vm._v(\"ID\")]),_vm._v(\" \"),_c('td',[_vm._v(\"\\n \"+_vm._s(_vm.user.id)+\"\\n \")])]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.actorType')))]),_vm._v(\" \"),_c('td',[_c('el-tag',{attrs:{\"type\":_vm.userCredentials.actor_type === 'Person' ? 'success' : 'warning'}},[_vm._v(\"\\n \"+_vm._s(_vm.userCredentials.actor_type)+\"\\n \")])],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.tags')))]),_vm._v(\" \"),_c('td',[(_vm.user.tags.length === 0 || !_vm.propertyExists(_vm.user, 'tags'))?_c('span',[_vm._v(\"—\")]):_vm._l((_vm.user.tags),function(tag){return _c('el-tag',{key:tag,staticClass:\"user-profile-tag\"},[_vm._v(_vm._s(_vm.humanizeTag(tag)))])})],2)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.roles')))]),_vm._v(\" \"),_c('td',[(_vm.user.roles.admin)?_c('el-tag',{staticClass:\"user-profile-tag\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.admin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.roles.moderator)?_c('el-tag',{staticClass:\"user-profile-tag\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.propertyExists(_vm.user, 'roles') || (!_vm.user.roles.moderator && !_vm.user.roles.admin))?_c('span',[_vm._v(\"—\")]):_vm._e()],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.accountType')))]),_vm._v(\" \"),_c('td',[(_vm.user.local)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.local')))]):_vm._e(),_vm._v(\" \"),(!_vm.user.local)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.external')))]):_vm._e()],1)]),_vm._v(\" \"),_c('tr',{staticClass:\"el-table__row\"},[_c('td',[_vm._v(_vm._s(_vm.$t('userProfile.status')))]),_vm._v(\" \"),_c('td',[(_vm.user.approval_pending)?_c('el-tag',{attrs:{\"type\":\"info\"}},[_vm._v(_vm._s(_vm.$t('userProfile.pending')))]):_vm._e(),_vm._v(\" \"),(!_vm.user.deactivated & !_vm.user.approval_pending)?_c('el-tag',{attrs:{\"type\":\"success\"}},[_vm._v(_vm._s(_vm.$t('userProfile.active')))]):_vm._e(),_vm._v(\" \"),(_vm.user.deactivated)?_c('el-tag',{attrs:{\"type\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('userProfile.deactivated')))]):_vm._e()],1)])])]),_vm._v(\" \"),(_vm.user.registration_reason)?_c('div',[_c('div',{staticClass:\"reason-label\"},[_vm._v(_vm._s(_vm.$t('userProfile.reason')))]),_vm._v(\"\\n \\\"\"+_vm._s(_vm.user.registration_reason)+\"\\\"\\n \")]):_vm._e()],1),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('el-button',{staticClass:\"security-setting-button\",attrs:{\"icon\":\"el-icon-lock\"},on:{\"click\":function($event){_vm.securitySettingsModalVisible = true}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.securitySettings'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('SecuritySettingsModal',{attrs:{\"user\":_vm.user,\"visible\":_vm.securitySettingsModalVisible},on:{\"close\":function($event){_vm.securitySettingsModalVisible = false}}}):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"recent-statuses-container\"},[_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.recentStatuses')))]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",on:{\"change\":_vm.onTogglePrivate},model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")]),_vm._v(\" \"),(!_vm.statusesLoading)?_c('el-timeline',{staticClass:\"statuses\"},[_vm._l((_vm.statuses),function(status){return _c('el-timeline-item',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":false,\"user-id\":_vm.user.id,\"godmode\":_vm.showPrivate}})],1)}),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e()],2):_vm._e()],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SecuritySettingsModal.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n :before-close=\"close\"\n :title=\"$t('userProfile.securitySettings.securitySettings')\"\n :visible=\"visible\"\n class=\"security-settings-modal\">\n <el-form :model=\"securitySettingsForm\" :label-width=\"getLabelWidth\">\n <el-form-item :label=\"$t('userProfile.securitySettings.email')\">\n <el-input v-model=\"securitySettingsForm.newEmail\" :placeholder=\"$t('userProfile.securitySettings.inputNewEmail')\"/>\n </el-form-item>\n <el-form-item>\n <el-button\n :loading=\"securitySettingsForm.isEmailLoading\"\n :disabled=\"!securitySettingsForm.newEmail || securitySettingsForm.newEmail === userCredentials.email\"\n type=\"primary\"\n class=\"security-settings-submit-button\"\n @click=\"updateEmail()\">\n {{ $t('userProfile.securitySettings.submit') }}\n </el-button>\n </el-form-item>\n <el-form-item :label=\"$t('userProfile.securitySettings.password')\" class=\"password-input\">\n <el-input v-model=\"securitySettingsForm.newPassword\" :placeholder=\"$t('userProfile.securitySettings.inputNewPassword')\"/>\n <small class=\"form-text\">\n {{ $t('userProfile.securitySettings.passwordLengthNotice', { minLength: 8 }) }}\n </small>\n </el-form-item>\n <el-alert\n :closable=\"false\"\n type=\"warning\"\n show-icon\n class=\"password-alert\">\n <p>{{ $t('userProfile.securitySettings.passwordChangeWarning1') }}</p>\n <p>{{ $t('userProfile.securitySettings.passwordChangeWarning2') }}</p>\n </el-alert>\n <el-form-item>\n <el-button\n :loading=\"securitySettingsForm.isPasswordLoading\"\n :disabled=\"securitySettingsForm.newPassword.length < 8\"\n type=\"primary\"\n class=\"security-settings-submit-button\"\n @click=\"updatePassword()\">\n {{ $t('userProfile.securitySettings.submit') }}\n </el-button>\n </el-form-item>\n </el-form>\n </el-dialog>\n</template>\n\n<script>\nimport { Message } from 'element-ui'\n\nexport default {\n name: 'SecuritySettingsModal',\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n user: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n data() {\n return {\n securitySettingsForm: {\n newEmail: '',\n newPassword: '',\n isEmailLoading: false,\n isPasswordLoading: false\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n getLabelWidth() {\n return this.isDesktop ? '120px' : '85px'\n },\n userCredentials() {\n return this.$store.state.userProfile.userCredentials\n }\n },\n mounted: async function() {\n await this.$store.dispatch('FetchUserCredentials', { nickname: this.user.nickname })\n this.securitySettingsForm.newEmail = this.userCredentials.email\n },\n methods: {\n async updateEmail() {\n const credentials = { email: this.securitySettingsForm.newEmail }\n this.securitySettingsForm.isEmailLoading = true\n await this.$store.dispatch('UpdateUserCredentials', { nickname: this.user.nickname, credentials })\n this.securitySettingsForm.isEmailLoading = false\n Message({\n message: this.$t('userProfile.securitySettings.emailUpdated'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n async updatePassword() {\n const credentials = { password: this.securitySettingsForm.newPassword }\n this.securitySettingsForm.isPasswordLoading = true\n await this.$store.dispatch('UpdateUserCredentials', { nickname: this.user.nickname, credentials })\n this.securitySettingsForm.isPasswordLoading = false\n this.securitySettingsForm.newPassword = ''\n Message({\n message: this.$t('userProfile.securitySettings.passwordUpdated'),\n type: 'success',\n duration: 5 * 1000\n })\n },\n close() {\n this.$emit('close', true)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.security-settings-container {\n display: flex;\n label {\n width: 15%;\n height: 36px;\n }\n}\n.security-settings-modal {\n .el-dialog__body {\n padding-top: 10px;\n }\n .el-form-item {\n margin-bottom: 15px;\n }\n .password-alert {\n margin-bottom: 15px;\n }\n .password-input {\n margin-bottom: 0;\n }\n}\n.security-settings-submit-button {\n float: right;\n}\n\n@media all and (max-width: 800px) {\n .security-settings-modal {\n .el-dialog {\n width: 90%;\n }\n }\n}\n\n.security-settings-modal {\n .el-alert .el-alert__description {\n word-break: break-word;\n font-size: 1em;\n }\n\n .form-text {\n display: block;\n margin-top: .25rem;\n color: #909399;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./SecuritySettingsModal.vue?vue&type=template&id=7fb08478&\"\nimport script from \"./SecuritySettingsModal.vue?vue&type=script&lang=js&\"\nexport * from \"./SecuritySettingsModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SecuritySettingsModal.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SecuritySettingsModal.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{staticClass:\"security-settings-modal\",attrs:{\"before-close\":_vm.close,\"title\":_vm.$t('userProfile.securitySettings.securitySettings'),\"visible\":_vm.visible}},[_c('el-form',{attrs:{\"model\":_vm.securitySettingsForm,\"label-width\":_vm.getLabelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('userProfile.securitySettings.email')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('userProfile.securitySettings.inputNewEmail')},model:{value:(_vm.securitySettingsForm.newEmail),callback:function ($$v) {_vm.$set(_vm.securitySettingsForm, \"newEmail\", $$v)},expression:\"securitySettingsForm.newEmail\"}})],1),_vm._v(\" \"),_c('el-form-item',[_c('el-button',{staticClass:\"security-settings-submit-button\",attrs:{\"loading\":_vm.securitySettingsForm.isEmailLoading,\"disabled\":!_vm.securitySettingsForm.newEmail || _vm.securitySettingsForm.newEmail === _vm.userCredentials.email,\"type\":\"primary\"},on:{\"click\":function($event){return _vm.updateEmail()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.submit'))+\"\\n \")])],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"password-input\",attrs:{\"label\":_vm.$t('userProfile.securitySettings.password')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('userProfile.securitySettings.inputNewPassword')},model:{value:(_vm.securitySettingsForm.newPassword),callback:function ($$v) {_vm.$set(_vm.securitySettingsForm, \"newPassword\", $$v)},expression:\"securitySettingsForm.newPassword\"}}),_vm._v(\" \"),_c('small',{staticClass:\"form-text\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.passwordLengthNotice', { minLength: 8 }))+\"\\n \")])],1),_vm._v(\" \"),_c('el-alert',{staticClass:\"password-alert\",attrs:{\"closable\":false,\"type\":\"warning\",\"show-icon\":\"\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('userProfile.securitySettings.passwordChangeWarning1')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('userProfile.securitySettings.passwordChangeWarning2')))])]),_vm._v(\" \"),_c('el-form-item',[_c('el-button',{staticClass:\"security-settings-submit-button\",attrs:{\"loading\":_vm.securitySettingsForm.isPasswordLoading,\"disabled\":_vm.securitySettingsForm.newPassword.length < 8,\"type\":\"primary\"},on:{\"click\":function($event){return _vm.updatePassword()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.securitySettings.submit'))+\"\\n \")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"","<template>\n <main v-if=\"!userProfileLoading\">\n <header v-if=\"isDesktop || isTablet\" class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n <a v-if=\"propertyExists(user, 'url')\" :href=\"user.url\" target=\"_blank\">\n <i :title=\"$t('userProfile.openAccountInInstance')\" class=\"el-icon-top-right\"/>\n </a>\n </div>\n <div class=\"left-header-container\">\n <moderation-dropdown\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :page=\"'userPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <reboot-button/>\n </div>\n </header>\n <div v-if=\"isMobile\" class=\"user-page-header-container\">\n <header class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n </div>\n <reboot-button/>\n </header>\n <moderation-dropdown\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :page=\"'userPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n </div>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div class=\"user-profile-container\">\n <el-card class=\"user-profile-card\">\n <div class=\"el-table el-table--fit el-table--enable-row-hover el-table--enable-row-transition el-table--medium\">\n <el-tag v-if=\"!propertyExists(user, 'nickname')\" type=\"info\" class=\"invalid-user-tag\">\n {{ $t('users.invalidAccount') }}\n </el-tag>\n <table class=\"user-profile-table\">\n <tbody>\n <tr class=\"el-table__row\">\n <td class=\"name-col\">ID</td>\n <td>\n {{ user.id }}\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.actorType') }}</td>\n <td>\n <el-tag\n :type=\"userCredentials.actor_type === 'Person' ? 'success' : 'warning'\">\n {{ userCredentials.actor_type }}\n </el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.tags') }}</td>\n <td>\n <span v-if=\"user.tags.length === 0 || !propertyExists(user, 'tags')\">—</span>\n <el-tag v-for=\"tag in user.tags\" v-else :key=\"tag\" class=\"user-profile-tag\">{{ humanizeTag(tag) }}</el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.roles') }}</td>\n <td>\n <el-tag v-if=\"user.roles.admin\" class=\"user-profile-tag\">\n {{ $t('users.admin') }}\n </el-tag>\n <el-tag v-if=\"user.roles.moderator\" class=\"user-profile-tag\">\n {{ $t('users.moderator') }}\n </el-tag>\n <span v-if=\"!propertyExists(user, 'roles') || (!user.roles.moderator && !user.roles.admin)\">—</span>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.accountType') }}</td>\n <td>\n <el-tag v-if=\"user.local\" type=\"info\">{{ $t('userProfile.local') }}</el-tag>\n <el-tag v-if=\"!user.local\" type=\"info\">{{ $t('userProfile.external') }}</el-tag>\n </td>\n </tr>\n <tr class=\"el-table__row\">\n <td>{{ $t('userProfile.status') }}</td>\n <td>\n <el-tag v-if=\"user.approval_pending\" type=\"info\">{{ $t('userProfile.pending') }}</el-tag>\n <el-tag v-if=\"!user.deactivated & !user.approval_pending\" type=\"success\">{{ $t('userProfile.active') }}</el-tag>\n <el-tag v-if=\"user.deactivated\" type=\"danger\">{{ $t('userProfile.deactivated') }}</el-tag>\n </td>\n </tr>\n </tbody>\n </table>\n <div v-if=\"user.registration_reason\">\n <div class=\"reason-label\">{{ $t('userProfile.reason') }}</div>\n \"{{ user.registration_reason }}\"\n </div>\n </div>\n <el-button v-if=\"propertyExists(user, 'nickname')\" icon=\"el-icon-lock\" class=\"security-setting-button\" @click=\"securitySettingsModalVisible = true\">\n {{ $t('userProfile.securitySettings.securitySettings') }}\n </el-button>\n <SecuritySettingsModal\n v-if=\"propertyExists(user, 'nickname')\"\n :user=\"user\"\n :visible=\"securitySettingsModalVisible\"\n @close=\"securitySettingsModalVisible = false\" />\n </el-card>\n <div class=\"recent-statuses-container\">\n <h2 class=\"recent-statuses\">{{ $t('userProfile.recentStatuses') }}</h2>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\" @change=\"onTogglePrivate\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n <el-timeline v-if=\"!statusesLoading\" class=\"statuses\">\n <el-timeline-item v-for=\"status in statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account\" :show-checkbox=\"false\" :user-id=\"user.id\" :godmode=\"showPrivate\"/>\n </el-timeline-item>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n </el-timeline>\n </div>\n </div>\n </main>\n</template>\n\n<script>\nimport Status from '@/components/Status'\nimport ModerationDropdown from './components/ModerationDropdown'\nimport SecuritySettingsModal from './components/SecuritySettingsModal'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from './components/ResetPasswordDialog'\n\nexport default {\n name: 'UsersShow',\n components: { ModerationDropdown, RebootButton, ResetPasswordDialog, Status, SecuritySettingsModal },\n data() {\n return {\n showPrivate: false,\n resetPasswordDialogOpen: false,\n securitySettingsModalVisible: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.users.loading\n },\n statuses() {\n return this.$store.state.userProfile.statuses\n },\n statusesLoading() {\n return this.$store.state.userProfile.statusesLoading\n },\n user() {\n return this.$store.state.userProfile.user\n },\n userProfileLoading() {\n return this.$store.state.userProfile.userProfileLoading\n },\n userCredentials() {\n return this.$store.state.userProfile.userCredentials\n }\n },\n mounted: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('FetchUserProfile', { userId: this.$route.params.id, godmode: false })\n },\n methods: {\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n humanizeTag(tag) {\n const mapTags = {\n 'mrf_tag:media-force-nsfw': 'Force NSFW',\n 'mrf_tag:media-strip': 'Strip Media',\n 'mrf_tag:force-unlisted': 'Force Unlisted',\n 'mrf_tag:sandbox': 'Sandbox',\n 'mrf_tag:disable-remote-subscription': 'Disable remote subscription',\n 'mrf_tag:disable-any-subscription': 'Disable any subscription'\n }\n return mapTags[tag]\n },\n onTogglePrivate() {\n this.$store.dispatch('FetchUserProfile', { userId: this.$route.params.id, godmode: this.showPrivate })\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\nheader {\n align-items: center;\n display: flex;\n margin: 22px 0;\n padding-left: 15px;\n h1 {\n margin: 0 0 0 10px;\n }\n}\ntable {\n margin: 10px 0 0 15px;\n .name-col {\n width: 150px;\n }\n}\n.avatar-name-container {\n display: flex;\n align-items: center;\n .el-icon-top-right {\n font-size: 2em;\n line-height: 36px;\n color: #606266;\n }\n}\n.invalid {\n color: gray;\n}\n.el-table--border::after, .el-table--group::after, .el-table::before {\n background-color: transparent;\n}\n.image {\n width: 20%;\n img {\n width: 100%;\n }\n}\n.invalid-user-tag {\n font-size: 14px;\n width: inherit;\n height: auto;\n text-align: center;\n word-wrap: break-word;\n white-space: normal;\n}\n.left-header-container {\n align-items: center;\n display: flex;\n justify-content: space-between;\n}\n.no-statuses {\n margin-left: 28px;\n color: #606266;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.poll ul {\n list-style-type: none;\n padding: 0;\n width: 30%;\n}\n.reboot-button {\n padding: 10px;\n margin-left: 10px;\n}\n.recent-statuses-container {\n display: flex;\n flex-direction: column;\n width: 67%;\n}\n.recent-statuses-header {\n margin-top: 10px;\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.security-setting-button {\n margin-top: 20px;\n width: 100%;\n}\n.statuses {\n padding: 0 20px 0 0;\n}\n.show-private {\n width: 200px;\n text-align: left;\n line-height: 67px;\n margin-right: 20px;\n}\n.show-private-statuses {\n margin-left: 28px;\n margin-bottom: 20px;\n}\n.recent-statuses {\n margin-left: 28px;\n}\n.user-page-header {\n display: flex;\n justify-content: space-between;\n margin: 22px 15px 22px 20px;\n padding: 0;\n align-items: center;\n h1 {\n display: inline\n }\n}\n.user-profile-card {\n margin: 0 20px;\n width: 30%;\n min-width: 300px;\n height: fit-content;\n}\n.user-profile-container {\n display: flex;\n}\n.user-profile-table {\n margin: 0;\n width: inherit;\n}\n.user-profile-tag {\n margin: 0 4px 4px 0;\n}\n.reason-label {\n color: #878d99;\n font-weight: bold;\n margin: 5px 0;\n}\n\n@media only screen and (max-width:480px) {\n .avatar-name-container {\n margin-bottom: 10px;\n }\n .el-timeline-item__wrapper {\n padding-left: 18px;\n }\n .password-reset-token-dialog {\n width: 85%\n }\n .recent-statuses {\n margin: 20px 10px 15px 10px;\n }\n .recent-statuses-container {\n width: 100%;\n margin: 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 10px;\n }\n .status-container {\n margin: 0 10px;\n }\n .statuses {\n padding-right: 10px;\n margin-left: 8px;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 15px 10px;\n }\n .user-page-header-container {\n .el-dropdown {\n width: 95%;\n margin: 0 15px 15px 10px;\n }\n }\n .user-profile-card {\n margin: 0 10px;\n width: 95%;\n td {\n width: 80px;\n }\n }\n .user-profile-container {\n flex-direction: column;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .recent-statuses {\n margin: 20px 10px 15px 0;\n }\n .recent-statuses-container {\n width: 97%;\n margin: 0 20px;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 20px 20px;\n }\n .user-profile-card {\n margin: 0 20px;\n width: fit-content;\n }\n .user-profile-container {\n flex-direction: column;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./show.vue?vue&type=template&id=ab25eeb8&\"\nimport script from \"./show.vue?vue&type=script&lang=js&\"\nexport * from \"./show.vue?vue&type=script&lang=js&\"\nimport style0 from \"./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"show.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=439555de&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7503.e78266ed.js b/priv/static/adminfe/static/js/chunk-7503.e78266ed.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-7503"],{"53Av":function(s,e,t){"use strict";var a=t("lOBV");t.n(a).a},RnhZ:function(s,e,t){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(s){var e=n(s);return t(e)}function n(s){if(!t.o(a,s)){var e=new Error("Cannot find module '"+s+"'");throw e.code="MODULE_NOT_FOUND",e}return a[s]}r.keys=function(){return Object.keys(a)},r.resolve=n,s.exports=r,r.id="RnhZ"},S3Ak:function(s,e,t){"use strict";var a=t("lGnS");t.n(a).a},WjBP:function(s,e,t){"use strict";var a={name:"ResetPasswordDialog",props:{resetPasswordDialogOpen:{type:Boolean,default:!1}},computed:{dialogOpen:function(){return this.resetPasswordDialogOpen},loading:function(){return this.$store.state.users.loading},passwordResetLink:function(){return this.$store.state.users.passwordResetToken.link},passwordResetToken:function(){return this.$store.state.users.passwordResetToken.token}},methods:{closeResetPasswordDialog:function(){this.$emit("close-reset-token-dialog")}}},r=t("KHd+"),n=Object(r.a)(a,function(){var s=this,e=s.$createElement,t=s._self._c||e;return t("el-dialog",{directives:[{name:"loading",rawName:"v-loading",value:s.loading,expression:"loading"}],attrs:{visible:s.dialogOpen,title:s.$t("users.passwordResetTokenCreated"),"custom-class":"password-reset-token-dialog"},on:{close:s.closeResetPasswordDialog}},[t("div",[t("p",{staticClass:"password-reset-token"},[s._v(s._s(s.$t("users.passwordResetTokenGenerated"))+" "+s._s(s.passwordResetToken))]),s._v(" "),t("p",[s._v(s._s(s.$t("users.linkToResetPassword"))+"\n "),t("a",{staticClass:"reset-password-link",attrs:{href:s.passwordResetLink,target:"_blank"}},[s._v(s._s(s.passwordResetLink))])])])])},[],!1,null,null,null);n.options.__file="ResetPasswordDialog.vue";e.a=n.exports},lGnS:function(s,e,t){},lOBV:function(s,e,t){},rwwt:function(s,e,t){"use strict";t.r(e);var a=t("ot3S"),r=t("tPM3"),n=t("rIUS"),i=t("WjBP"),o={name:"StatusShow",components:{ModerationDropdown:r.a,RebootButton:n.a,ResetPasswordDialog:i.a,Status:a.a},data:function(){return{showPrivate:!1,resetPasswordDialogOpen:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.status.loading},status:function(){return this.$store.state.status.fetchedStatus},statuses:function(){return this.$store.state.userProfile.statuses},statusesLoading:function(){return this.$store.state.userProfile.statusesLoading},user:function(){return this.$store.state.status.statusAuthor}},beforeMount:function(){this.$store.dispatch("NeedReboot"),this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("FetchStatus",this.$route.params.id)},methods:{closeResetPasswordDialog:function(){this.resetPasswordDialogOpen=!1,this.$store.dispatch("RemovePasswordToken")},onTogglePrivate:function(){this.$store.dispatch("FetchUserStatuses",{userId:this.user.id,godmode:this.showPrivate})},openResetPasswordDialog:function(){this.resetPasswordDialogOpen=!0},propertyExists:function(s,e){return s[e]}}},u=(t("S3Ak"),t("KHd+")),c=Object(u.a)(o,function(){var s=this,e=s.$createElement,t=s._self._c||e;return s.loading?s._e():t("div",{staticClass:"status-show-container"},[s.isDesktop||s.isTablet?t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[s.propertyExists(s.user,"id")?t("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:s.user.id}}}},[t("div",{staticClass:"avatar-name-header"},[s.propertyExists(s.user,"avatar")?t("el-avatar",{attrs:{src:s.user.avatar,size:"large"}}):s._e(),s._v(" "),s.propertyExists(s.user,"nickname")?t("h1",[s._v(s._s(s.user.nickname))]):t("h1",{staticClass:"invalid"},[s._v("("+s._s(s.$t("users.invalidNickname"))+")")])],1)]):s._e(),s._v(" "),s.propertyExists(s.user,"url")?t("a",{attrs:{href:s.user.url,target:"_blank"}},[t("i",{staticClass:"el-icon-top-right",attrs:{title:s.$t("userProfile.openAccountInInstance")}})]):s._e()],1),s._v(" "),t("div",{staticClass:"left-header-container"},[t("moderation-dropdown",{attrs:{user:s.user,page:"statusPage","status-id":s.status.id},on:{"open-reset-token-dialog":s.openResetPasswordDialog}}),s._v(" "),t("reboot-button")],1)]):s._e(),s._v(" "),s.isMobile?t("div",{staticClass:"status-page-header-container"},[t("header",{staticClass:"user-page-header"},[t("div",{staticClass:"avatar-name-container"},[s.propertyExists(s.user,"avatar")?t("el-avatar",{attrs:{src:s.user.avatar,size:"large"}}):s._e(),s._v(" "),s.propertyExists(s.user,"nickname")?t("h1",[s._v(s._s(s.user.nickname))]):s._e()],1),s._v(" "),t("reboot-button")],1),s._v(" "),t("moderation-dropdown",{attrs:{user:s.user,page:"statusPage"},on:{"open-reset-token-dialog":s.openResetPasswordDialog}})],1):s._e(),s._v(" "),t("reset-password-dialog",{attrs:{"reset-password-dialog-open":s.resetPasswordDialogOpen},on:{"close-reset-token-dialog":s.closeResetPasswordDialog}}),s._v(" "),t("div",{staticClass:"status-container"},[t("status",{attrs:{status:s.status,account:s.user,"show-checkbox":!1,godmode:s.showPrivate}})],1),s._v(" "),t("div",{staticClass:"recent-statuses-container-show"},[s.propertyExists(s.user,"nickname")?t("h2",{staticClass:"recent-statuses"},[s._v("\n "+s._s(s.$t("userProfile.recentStatuses"))+" by "+s._s(s.user.nickname)+"\n ")]):t("h2",{staticClass:"recent-statuses"},[s._v(s._s(s.$t("userProfile.recentStatuses")))]),s._v(" "),t("el-checkbox",{staticClass:"show-private-statuses",on:{change:s.onTogglePrivate},model:{value:s.showPrivate,callback:function(e){s.showPrivate=e},expression:"showPrivate"}},[s._v("\n "+s._s(s.$t("statuses.showPrivateStatuses"))+"\n ")]),s._v(" "),s.statusesLoading?s._e():t("el-timeline",{staticClass:"statuses"},[s._l(s.statuses,function(e){return t("el-timeline-item",{key:e.id},[t("status",{attrs:{status:e,account:e.account,"show-checkbox":!1,"user-id":s.user.id,godmode:s.showPrivate}})],1)}),s._v(" "),0===s.statuses.length?t("p",{staticClass:"no-statuses"},[s._v(s._s(s.$t("userProfile.noStatuses")))]):s._e()],2)],1)],1)},[],!1,null,null,null);c.options.__file="show.vue";e.default=c.exports},tPM3:function(s,e,t){"use strict";var a={name:"ModerationDropdown",props:{user:{type:Object,default:function(){return{}}},page:{type:String,default:"users"},statusId:{type:String,default:""}},computed:{actorType:{get:function(){return this.user.actor_type},set:function(s){this.$store.dispatch("UpdateActorType",{user:this.user,type:s,_userId:this.user.id,_statusId:this.statusId})}},isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{disableMfa:function(s){this.$store.dispatch("DisableMfa",s)},getPasswordResetToken:function(s){this.$emit("open-reset-token-dialog"),this.$store.dispatch("GetPasswordResetToken",s)},handleConfirmationResend:function(s){this.$store.dispatch("ResendConfirmationEmail",[s])},handleDeletion:function(s){var e=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$store.dispatch("DeleteUsers",{users:[s],_userId:s.id})}).catch(function(){e.$message({type:"info",message:"Delete canceled"})})},handleAccountApproval:function(s){this.$store.dispatch("ApproveUsersAccount",{users:[s],_userId:s.id,_statusId:this.statusId})},handleAccountRejection:function(s){var e=this;this.$confirm(this.$t("users.rejectAccountConfirmation"),{confirmButtonText:"Reject",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$store.dispatch("DeleteUsers",{users:[s],_userId:s.id})}).catch(function(){e.$message({type:"info",message:"Reject canceled"})})},handleEmailConfirmation:function(s){this.$store.dispatch("ConfirmUsersEmail",{users:[s],_userId:s.id,_statusId:this.statusId})},requirePasswordReset:function(s){this.$store.state.user.nodeInfo.metadata.mailerEnabled?this.$store.dispatch("RequirePasswordReset",[s]):this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},showAdminAction:function(s){var e=s.local,t=s.id;return e&&this.showDeactivatedButton(t)},showDeactivatedButton:function(s){return this.$store.state.user.id!==s},toggleActivation:function(s){s.deactivated?this.$store.dispatch("ActivateUsers",{users:[s],_userId:s.id}):this.$store.dispatch("DeactivateUsers",{users:[s],_userId:s.id})},toggleTag:function(s,e){s.tags.includes(e)?this.$store.dispatch("RemoveTag",{users:[s],tag:e,_userId:s.id,_statusId:this.statusId}):this.$store.dispatch("AddTag",{users:[s],tag:e,_userId:s.id,_statusId:this.statusId})},toggleUserRight:function(s,e){s.roles[e]?this.$store.dispatch("DeleteRight",{users:[s],right:e,_userId:s.id,_statusId:this.statusId}):this.$store.dispatch("AddRight",{users:[s],right:e,_userId:s.id,_statusId:this.statusId})}}},r=(t("53Av"),t("KHd+")),n=Object(r.a)(a,function(){var s=this,e=s.$createElement,t=s._self._c||e;return t("el-dropdown",{attrs:{"hide-on-click":!1,size:"small",trigger:"click",placement:"top-start"},nativeOn:{click:function(s){s.stopPropagation()}}},[t("div",["users"===s.page?t("el-button",{staticClass:"el-dropdown-link",attrs:{type:"text"}},[s._v("\n "+s._s(s.$t("users.moderation"))+"\n "),s.isDesktop?t("i",{staticClass:"el-icon-arrow-down el-icon--right"}):s._e()]):s._e(),s._v(" "),"userPage"===s.page||"statusPage"===s.page?t("el-button",{staticClass:"moderate-user-button"},[t("span",{staticClass:"moderate-user-button-container"},[t("span",[t("i",{staticClass:"el-icon-edit"}),s._v("\n "+s._s(s.$t("users.moderateUser"))+"\n ")]),s._v(" "),t("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):s._e()],1),s._v(" "),t("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t("el-dropdown-item",{staticClass:"actor-type-dropdown"},[t("el-select",{staticClass:"actor-type-select",attrs:{placeholder:s.$t("userProfile.actorType")},model:{value:s.actorType,callback:function(e){s.actorType=e},expression:"actorType"}},[t("el-option",{attrs:{label:s.$t("users.service"),value:"Service"}}),s._v(" "),t("el-option",{attrs:{label:s.$t("users.person"),value:"Person"}})],1)],1),s._v(" "),s.showAdminAction(s.user)?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.toggleUserRight(s.user,"admin")}}},[s._v("\n "+s._s(s.user.roles.admin?s.$t("users.revokeAdmin"):s.$t("users.grantAdmin"))+"\n ")]):s._e(),s._v(" "),s.showAdminAction(s.user)?t("el-dropdown-item",{nativeOn:{click:function(e){return s.toggleUserRight(s.user,"moderator")}}},[s._v("\n "+s._s(s.user.roles.moderator?s.$t("users.revokeModerator"):s.$t("users.grantModerator"))+"\n ")]):s._e(),s._v(" "),s.showDeactivatedButton(s.user.id)&&"statusPage"!==s.page?t("el-dropdown-item",{attrs:{divided:s.showAdminAction(s.user)},nativeOn:{click:function(e){return s.toggleActivation(s.user)}}},[s._v("\n "+s._s(s.user.deactivated?s.$t("users.activateAccount"):s.$t("users.deactivateAccount"))+"\n ")]):s._e(),s._v(" "),s.showDeactivatedButton(s.user.id)&&"statusPage"!==s.page?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleDeletion(s.user)}}},[s._v("\n "+s._s(s.$t("users.deleteAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.approval_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.handleAccountApproval(s.user)}}},[s._v("\n "+s._s(s.$t("users.approveAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.approval_pending?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleAccountRejection(s.user)}}},[s._v("\n "+s._s(s.$t("users.rejectAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.confirmation_pending?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.handleEmailConfirmation(s.user)}}},[s._v("\n "+s._s(s.$t("users.confirmAccount"))+"\n ")]):s._e(),s._v(" "),s.user.local&&s.user.confirmation_pending?t("el-dropdown-item",{nativeOn:{click:function(e){return s.handleConfirmationResend(s.user)}}},[s._v("\n "+s._s(s.$t("users.resendConfirmation"))+"\n ")]):s._e(),s._v(" "),t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:s.showAdminAction(s.user)},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:media-force-nsfw")}}},[s._v("\n "+s._s(s.$t("users.forceNsfw"))+"\n "),s.user.tags.includes("mrf_tag:media-force-nsfw")?t("i",{staticClass:"el-icon-check"}):s._e()]),s._v(" "),t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:media-strip")}}},[s._v("\n "+s._s(s.$t("users.stripMedia"))+"\n "),s.user.tags.includes("mrf_tag:media-strip")?t("i",{staticClass:"el-icon-check"}):s._e()]),s._v(" "),t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:force-unlisted")}}},[s._v("\n "+s._s(s.$t("users.forceUnlisted"))+"\n "),s.user.tags.includes("mrf_tag:force-unlisted")?t("i",{staticClass:"el-icon-check"}):s._e()]),s._v(" "),t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:sandbox")}}},[s._v("\n "+s._s(s.$t("users.sandbox"))+"\n "),s.user.tags.includes("mrf_tag:sandbox")?t("i",{staticClass:"el-icon-check"}):s._e()]),s._v(" "),s.user.local?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:disable-remote-subscription")}}},[s._v("\n "+s._s(s.$t("users.disableRemoteSubscription"))+"\n "),s.user.tags.includes("mrf_tag:disable-remote-subscription")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{class:{"active-tag":s.user.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(e){return s.toggleTag(s.user,"mrf_tag:disable-any-subscription")}}},[s._v("\n "+s._s(s.$t("users.disableAnySubscription"))+"\n "),s.user.tags.includes("mrf_tag:disable-any-subscription")?t("i",{staticClass:"el-icon-check"}):s._e()]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return s.getPasswordResetToken(s.user.nickname)}}},[s._v("\n "+s._s(s.$t("users.getPasswordResetToken"))+"\n ")]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{nativeOn:{click:function(e){return s.requirePasswordReset(s.user)}}},[s._v("\n "+s._s(s.$t("users.requirePasswordReset"))+"\n ")]):s._e(),s._v(" "),s.user.local?t("el-dropdown-item",{nativeOn:{click:function(e){return s.disableMfa(s.user.nickname)}}},[s._v("\n "+s._s(s.$t("users.disableMfa"))+"\n ")]):s._e()],1)],1)},[],!1,null,null,null);n.options.__file="ModerationDropdown.vue";e.a=n.exports}}]); +//# sourceMappingURL=chunk-7503.e78266ed.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7503.e78266ed.js.map b/priv/static/adminfe/static/js/chunk-7503.e78266ed.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/users/components/ModerationDropdown.vue?e3f0","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/statuses/show.vue?2896","webpack:///./src/views/users/components/ResetPasswordDialog.vue?0b2b","webpack:///./src/views/users/components/ResetPasswordDialog.vue?31da","webpack:///src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/users/components/ResetPasswordDialog.vue","webpack:///./src/views/statuses/show.vue?ba35","webpack:///./src/views/statuses/show.vue?6fdf","webpack:///src/views/statuses/show.vue","webpack:///./src/views/statuses/show.vue","webpack:///./src/views/users/components/ModerationDropdown.vue?93ed","webpack:///./src/views/users/components/ModerationDropdown.vue?676e","webpack:///src/views/users/components/ModerationDropdown.vue","webpack:///./src/views/users/components/ModerationDropdown.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ModerationDropdown_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","id","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_show_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","components_ResetPasswordDialogvue_type_script_lang_js_","name","props","resetPasswordDialogOpen","type","Boolean","default","computed","dialogOpen","this","loading","$store","state","users","passwordResetLink","passwordResetToken","link","token","methods","closeResetPasswordDialog","$emit","component","componentNormalizer","_vm","_h","$createElement","_c","_self","directives","rawName","value","expression","attrs","visible","title","$t","custom-class","on","close","staticClass","_v","_s","href","target","options","__file","__webpack_exports__","statuses_showvue_type_script_lang_js_","components","ModerationDropdown","RebootButton","ResetPasswordDialog","Status","data","showPrivate","isDesktop","app","device","isMobile","isTablet","status","fetchedStatus","statuses","userProfile","statusesLoading","user","statusAuthor","beforeMount","dispatch","$route","params","onTogglePrivate","userId","godmode","openResetPasswordDialog","propertyExists","account","property","_e","to","src","avatar","size","nickname","url","page","status-id","open-reset-token-dialog","reset-password-dialog-open","close-reset-token-dialog","show-checkbox","change","model","callback","$$v","_l","key","user-id","length","components_ModerationDropdownvue_type_script_lang_js_","String","statusId","actorType","get","actor_type","set","_userId","_statusId","disableMfa","getPasswordResetToken","handleConfirmationResend","handleDeletion","_this","$confirm","confirmButtonText","cancelButtonText","then","catch","$message","message","handleAccountApproval","handleAccountRejection","_this2","handleEmailConfirmation","requirePasswordReset","nodeInfo","metadata","mailerEnabled","$alert","showAdminAction","_ref","local","showDeactivatedButton","toggleActivation","deactivated","toggleTag","tag","tags","includes","toggleUserRight","right","roles","hide-on-click","trigger","placement","nativeOn","click","$event","stopPropagation","slot","placeholder","label","divided","admin","moderator","approval_pending","confirmation_pending","class","active-tag"],"mappings":"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","file":"static/js/chunk-7503.e78266ed.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dialog',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"visible\":_vm.dialogOpen,\"title\":_vm.$t('users.passwordResetTokenCreated'),\"custom-class\":\"password-reset-token-dialog\"},on:{\"close\":_vm.closeResetPasswordDialog}},[_c('div',[_c('p',{staticClass:\"password-reset-token\"},[_vm._v(_vm._s(_vm.$t('users.passwordResetTokenGenerated'))+\" \"+_vm._s(_vm.passwordResetToken))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('users.linkToResetPassword'))+\"\\n \"),_c('a',{staticClass:\"reset-password-link\",attrs:{\"href\":_vm.passwordResetLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.passwordResetLink))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetPasswordDialog.vue?vue&type=script&lang=js&\"","<template>\n <el-dialog\n v-loading=\"loading\"\n :visible=\"dialogOpen\"\n :title=\"$t('users.passwordResetTokenCreated')\"\n custom-class=\"password-reset-token-dialog\"\n @close=\"closeResetPasswordDialog\">\n <div>\n <p class=\"password-reset-token\">{{ $t('users.passwordResetTokenGenerated') }} {{ passwordResetToken }}</p>\n <p>{{ $t('users.linkToResetPassword') }}\n <a :href=\"passwordResetLink\" target=\"_blank\" class=\"reset-password-link\">{{ passwordResetLink }}</a>\n </p>\n </div>\n </el-dialog>\n</template>\n\n<script>\nexport default {\n name: 'ResetPasswordDialog',\n props: {\n resetPasswordDialogOpen: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n dialogOpen() {\n return this.resetPasswordDialogOpen\n },\n loading() {\n return this.$store.state.users.loading\n },\n passwordResetLink() {\n return this.$store.state.users.passwordResetToken.link\n },\n passwordResetToken() {\n return this.$store.state.users.passwordResetToken.token\n }\n },\n methods: {\n closeResetPasswordDialog() {\n this.$emit('close-reset-token-dialog')\n }\n }\n}\n</script>\n\n","import { render, staticRenderFns } from \"./ResetPasswordDialog.vue?vue&type=template&id=e7d3eed4&\"\nimport script from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetPasswordDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ResetPasswordDialog.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"status-show-container\"},[(_vm.isDesktop || _vm.isTablet)?_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.user.id }}}},[_c('div',{staticClass:\"avatar-name-header\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_c('h1',{staticClass:\"invalid\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])],1)]):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'url'))?_c('a',{attrs:{\"href\":_vm.user.url,\"target\":\"_blank\"}},[_c('i',{staticClass:\"el-icon-top-right\",attrs:{\"title\":_vm.$t('userProfile.openAccountInInstance')}})]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"left-header-container\"},[_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'statusPage',\"status-id\":_vm.status.id},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}}),_vm._v(\" \"),_c('reboot-button')],1)]):_vm._e(),_vm._v(\" \"),(_vm.isMobile)?_c('div',{staticClass:\"status-page-header-container\"},[_c('header',{staticClass:\"user-page-header\"},[_c('div',{staticClass:\"avatar-name-container\"},[(_vm.propertyExists(_vm.user, 'avatar'))?_c('el-avatar',{attrs:{\"src\":_vm.user.avatar,\"size\":\"large\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.user, 'nickname'))?_c('h1',[_vm._v(_vm._s(_vm.user.nickname))]):_vm._e()],1),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('moderation-dropdown',{attrs:{\"user\":_vm.user,\"page\":'statusPage'},on:{\"open-reset-token-dialog\":_vm.openResetPasswordDialog}})],1):_vm._e(),_vm._v(\" \"),_c('reset-password-dialog',{attrs:{\"reset-password-dialog-open\":_vm.resetPasswordDialogOpen},on:{\"close-reset-token-dialog\":_vm.closeResetPasswordDialog}}),_vm._v(\" \"),_c('div',{staticClass:\"status-container\"},[_c('status',{attrs:{\"status\":_vm.status,\"account\":_vm.user,\"show-checkbox\":false,\"godmode\":_vm.showPrivate}})],1),_vm._v(\" \"),_c('div',{staticClass:\"recent-statuses-container-show\"},[(_vm.propertyExists(_vm.user, 'nickname'))?_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.recentStatuses'))+\" by \"+_vm._s(_vm.user.nickname)+\"\\n \")]):_c('h2',{staticClass:\"recent-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.recentStatuses')))]),_vm._v(\" \"),_c('el-checkbox',{staticClass:\"show-private-statuses\",on:{\"change\":_vm.onTogglePrivate},model:{value:(_vm.showPrivate),callback:function ($$v) {_vm.showPrivate=$$v},expression:\"showPrivate\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.showPrivateStatuses'))+\"\\n \")]),_vm._v(\" \"),(!_vm.statusesLoading)?_c('el-timeline',{staticClass:\"statuses\"},[_vm._l((_vm.statuses),function(status){return _c('el-timeline-item',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account,\"show-checkbox\":false,\"user-id\":_vm.user.id,\"godmode\":_vm.showPrivate}})],1)}),_vm._v(\" \"),(_vm.statuses.length === 0)?_c('p',{staticClass:\"no-statuses\"},[_vm._v(_vm._s(_vm.$t('userProfile.noStatuses')))]):_vm._e()],2):_vm._e()],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"status-show-container\">\n <header v-if=\"isDesktop || isTablet\" class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <router-link\n v-if=\"propertyExists(user, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: user.id }}\"\n class=\"router-link\">\n <div class=\"avatar-name-header\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n <h1 v-else class=\"invalid\">({{ $t('users.invalidNickname') }})</h1>\n </div>\n </router-link>\n <a v-if=\"propertyExists(user, 'url')\" :href=\"user.url\" target=\"_blank\">\n <i :title=\"$t('userProfile.openAccountInInstance')\" class=\"el-icon-top-right\"/>\n </a>\n </div>\n <div class=\"left-header-container\">\n <moderation-dropdown\n :user=\"user\"\n :page=\"'statusPage'\"\n :status-id=\"status.id\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n <reboot-button/>\n </div>\n </header>\n <div v-if=\"isMobile\" class=\"status-page-header-container\">\n <header class=\"user-page-header\">\n <div class=\"avatar-name-container\">\n <el-avatar v-if=\"propertyExists(user, 'avatar')\" :src=\"user.avatar\" size=\"large\" />\n <h1 v-if=\"propertyExists(user, 'nickname')\">{{ user.nickname }}</h1>\n </div>\n <reboot-button/>\n </header>\n <moderation-dropdown\n :user=\"user\"\n :page=\"'statusPage'\"\n @open-reset-token-dialog=\"openResetPasswordDialog\"/>\n </div>\n <reset-password-dialog\n :reset-password-dialog-open=\"resetPasswordDialogOpen\"\n @close-reset-token-dialog=\"closeResetPasswordDialog\"/>\n <div class=\"status-container\">\n <status :status=\"status\" :account=\"user\" :show-checkbox=\"false\" :godmode=\"showPrivate\"/>\n </div>\n <div class=\"recent-statuses-container-show\">\n <h2 v-if=\"propertyExists(user, 'nickname')\" class=\"recent-statuses\">\n {{ $t('userProfile.recentStatuses') }} by {{ user.nickname }}\n </h2>\n <h2 v-else class=\"recent-statuses\">{{ $t('userProfile.recentStatuses') }}</h2>\n <el-checkbox v-model=\"showPrivate\" class=\"show-private-statuses\" @change=\"onTogglePrivate\">\n {{ $t('statuses.showPrivateStatuses') }}\n </el-checkbox>\n <el-timeline v-if=\"!statusesLoading\" class=\"statuses\">\n <el-timeline-item v-for=\"status in statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account\" :show-checkbox=\"false\" :user-id=\"user.id\" :godmode=\"showPrivate\"/>\n </el-timeline-item>\n <p v-if=\"statuses.length === 0\" class=\"no-statuses\">{{ $t('userProfile.noStatuses') }}</p>\n </el-timeline>\n </div>\n </div>\n</template>\n\n<script>\nimport Status from '@/components/Status'\nimport ModerationDropdown from '../users/components/ModerationDropdown'\nimport RebootButton from '@/components/RebootButton'\nimport ResetPasswordDialog from '@/views/users/components/ResetPasswordDialog'\n\nexport default {\n name: 'StatusShow',\n components: { ModerationDropdown, RebootButton, ResetPasswordDialog, Status },\n data() {\n return {\n showPrivate: false,\n resetPasswordDialogOpen: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.status.loading\n },\n status() {\n return this.$store.state.status.fetchedStatus\n },\n statuses() {\n return this.$store.state.userProfile.statuses\n },\n statusesLoading() {\n return this.$store.state.userProfile.statusesLoading\n },\n user() {\n return this.$store.state.status.statusAuthor\n }\n },\n beforeMount: function() {\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('FetchStatus', this.$route.params.id)\n },\n methods: {\n closeResetPasswordDialog() {\n this.resetPasswordDialogOpen = false\n this.$store.dispatch('RemovePasswordToken')\n },\n onTogglePrivate() {\n this.$store.dispatch('FetchUserStatuses', { userId: this.user.id, godmode: this.showPrivate })\n },\n openResetPasswordDialog() {\n this.resetPasswordDialogOpen = true\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.avatar-name-container {\n display: flex;\n align-items: center;\n .el-icon-top-right {\n font-size: 2em;\n line-height: 36px;\n color: #606266;\n }\n}\n.avatar-name-header {\n display: flex;\n height: 40px;\n align-items: center;\n}\n.invalid {\n color: gray;\n}\n.no-statuses {\n margin-left: 28px;\n color: #606266;\n}\n.password-reset-token {\n margin: 0 0 14px 0;\n}\n.password-reset-token-dialog {\n width: 50%\n}\n.reboot-button {\n padding: 10px;\n margin-left: 6px;\n}\n\n.recent-statuses-container-show {\n display: flex;\n flex-direction: column;\n .el-timeline-item {\n margin-left: 20px;\n }\n .recent-statuses {\n margin-left: 20px;\n }\n .show-private-statuses {\n margin-left: 20px;\n margin-bottom: 20px;\n }\n}\n.reset-password-link {\n text-decoration: underline;\n}\n.router-link {\n text-decoration: none;\n}\n.status-container {\n margin: 0 15px 0 20px;\n}\n.statuses {\n padding: 0 20px 0 0;\n}\n.user-page-header {\n display: flex;\n justify-content: space-between;\n margin: 22px 15px 22px 20px;\n padding: 0;\n align-items: center;\n h1 {\n display: inline;\n margin: 0 0 0 10px;\n }\n}\n\n@media only screen and (min-width: 1824px) {\n .status-show-container {\n max-width: 1824px;\n margin: auto;\n }\n}\n\n@media only screen and (max-width:480px) {\n .avatar-name-container {\n margin-bottom: 10px;\n }\n .el-timeline-item__wrapper {\n padding-left: 18px;\n }\n .left-header-container {\n align-items: center;\n display: flex;\n justify-content: space-between;\n }\n .password-reset-token-dialog {\n width: 85%\n }\n .recent-statuses {\n margin: 20px 10px 15px 10px;\n }\n .recent-statuses-container-show {\n width: 100%;\n margin: 0 0 0 10px;\n .el-timeline-item {\n margin-left: 0;\n }\n .recent-statuses {\n margin-left: 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n }\n .status-card {\n .el-card__body {\n padding: 15px;\n }\n }\n .status-container {\n margin: 0 10px;\n }\n .statuses {\n padding-right: 10px;\n margin-left: 0;\n .el-timeline-item__wrapper {\n margin-right: 10px;\n }\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 5px 10px;\n }\n .status-page-header-container {\n width: 100%;\n .el-dropdown {\n width: stretch;\n margin: 0 10px 15px 10px;\n }\n }\n}\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .recent-statuses-container-show {\n width: 97%;\n margin: 0 20px;\n .el-timeline-item {\n margin-left: 2px;\n }\n .recent-statuses {\n margin: 20px 10px 15px 0;\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n }\n .show-private-statuses {\n margin: 0 10px 20px 0;\n }\n .user-page-header {\n padding: 0;\n margin: 7px 15px 20px 20px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./show.vue?vue&type=template&id=7911e5ce&\"\nimport script from \"./show.vue?vue&type=script&lang=js&\"\nexport * from \"./show.vue?vue&type=script&lang=js&\"\nimport style0 from \"./show.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"show.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"top-start\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',[(_vm.page === 'users')?_c('el-button',{staticClass:\"el-dropdown-link\",attrs:{\"type\":\"text\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderation'))+\"\\n \"),(_vm.isDesktop)?_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.page === 'userPage' || _vm.page === 'statusPage')?_c('el-button',{staticClass:\"moderate-user-button\"},[_c('span',{staticClass:\"moderate-user-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUser'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e()],1),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{staticClass:\"actor-type-dropdown\"},[_c('el-select',{staticClass:\"actor-type-select\",attrs:{\"placeholder\":_vm.$t('userProfile.actorType')},model:{value:(_vm.actorType),callback:function ($$v) {_vm.actorType=$$v},expression:\"actorType\"}},[_c('el-option',{attrs:{\"label\":_vm.$t('users.service'),\"value\":\"Service\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"label\":_vm.$t('users.person'),\"value\":\"Person\"}})],1)],1),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.admin ? _vm.$t('users.revokeAdmin') : _vm.$t('users.grantAdmin'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showAdminAction(_vm.user))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.toggleUserRight(_vm.user, 'moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.roles.moderator ? _vm.$t('users.revokeModerator') : _vm.$t('users.grantModerator'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleActivation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.user.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.user.id) && _vm.page !== 'statusPage')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleAccountApproval(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.approval_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleAccountRejection(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.handleEmailConfirmation(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local && _vm.user.confirmation_pending)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleConfirmationResend(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":_vm.showAdminAction(_vm.user)},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.user.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.user, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.user.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.getPasswordResetToken(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.getPasswordResetToken'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset(_vm.user)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.user.local)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.disableMfa(_vm.user.nickname)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableMfa'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerationDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" size=\"small\" trigger=\"click\" placement=\"top-start\" @click.native.stop>\n <div>\n <el-button v-if=\"page === 'users'\" type=\"text\" class=\"el-dropdown-link\">\n {{ $t('users.moderation') }}\n <i v-if=\"isDesktop\" class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-button v-if=\"page === 'userPage' || page === 'statusPage'\" class=\"moderate-user-button\">\n <span class=\"moderate-user-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUser') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n </div>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n class=\"actor-type-dropdown\">\n <el-select v-model=\"actorType\" :placeholder=\"$t('userProfile.actorType')\" class=\"actor-type-select\">\n <el-option :label=\"$t('users.service')\" value=\"Service\"/>\n <el-option :label=\"$t('users.person')\" value=\"Person\"/>\n </el-select>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n divided\n @click.native=\"toggleUserRight(user, 'admin')\">\n {{ user.roles.admin ? $t('users.revokeAdmin') : $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showAdminAction(user)\"\n @click.native=\"toggleUserRight(user, 'moderator')\">\n {{ user.roles.moderator ? $t('users.revokeModerator') : $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n :divided=\"showAdminAction(user)\"\n @click.native=\"toggleActivation(user)\">\n {{ user.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(user.id) && page !== 'statusPage'\"\n @click.native=\"handleDeletion(user)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n divided\n @click.native=\"handleAccountApproval(user)\">\n {{ $t('users.approveAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.approval_pending\"\n @click.native=\"handleAccountRejection(user)\">\n {{ $t('users.rejectAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n divided\n @click.native=\"handleEmailConfirmation(user)\">\n {{ $t('users.confirmAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local && user.confirmation_pending\"\n @click.native=\"handleConfirmationResend(user)\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n :divided=\"showAdminAction(user)\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"user.tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"user.tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"user.tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n :class=\"{ 'active-tag': user.tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(user, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"user.tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n divided\n @click.native=\"getPasswordResetToken(user.nickname)\">\n {{ $t('users.getPasswordResetToken') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"requirePasswordReset(user)\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"user.local\"\n @click.native=\"disableMfa(user.nickname)\">\n {{ $t('users.disableMfa') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerationDropdown',\n props: {\n user: {\n type: Object,\n default: function() {\n return {}\n }\n },\n page: {\n type: String,\n default: 'users'\n },\n statusId: {\n type: String,\n default: ''\n }\n },\n computed: {\n actorType: {\n get() {\n return this.user.actor_type\n },\n set(type) {\n this.$store.dispatch('UpdateActorType', {\n user: this.user,\n type,\n _userId: this.user.id,\n _statusId: this.statusId\n })\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n disableMfa(nickname) {\n this.$store.dispatch('DisableMfa', nickname)\n },\n getPasswordResetToken(nickname) {\n this.$emit('open-reset-token-dialog')\n this.$store.dispatch('GetPasswordResetToken', nickname)\n },\n handleConfirmationResend(user) {\n this.$store.dispatch('ResendConfirmationEmail', [user])\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleAccountApproval(user) {\n this.$store.dispatch('ApproveUsersAccount', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n handleAccountRejection(user) {\n this.$confirm(\n this.$t('users.rejectAccountConfirmation'),\n {\n confirmButtonText: 'Reject',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUsers', { users: [user], _userId: user.id })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Reject canceled'\n })\n })\n },\n handleEmailConfirmation(user) {\n this.$store.dispatch('ConfirmUsersEmail', { users: [user], _userId: user.id, _statusId: this.statusId })\n },\n requirePasswordReset(user) {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n return\n }\n this.$store.dispatch('RequirePasswordReset', [user])\n },\n showAdminAction({ local, id }) {\n return local && this.showDeactivatedButton(id)\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleActivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUsers', { users: [user], _userId: user.id })\n : this.$store.dispatch('DeactivateUsers', { users: [user], _userId: user.id })\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddTag', { users: [user], tag, _userId: user.id, _statusId: this.statusId })\n },\n toggleUserRight(user, right) {\n user.roles[right]\n ? this.$store.dispatch('DeleteRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n : this.$store.dispatch('AddRight', { users: [user], right, _userId: user.id, _statusId: this.statusId })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n .el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before {\n margin: 0 0;\n height: 0;\n }\n .el-dropdown-menu--small .actor-type-dropdown {\n padding: 0;\n }\n .actor-type-select {\n width: 100%;\n input {\n border-color: transparent;\n color: #606266;\n }\n .el-input__inner:hover {\n border-color: transparent;\n background-color: #ecf5ff;\n }\n .el-input.is-focus {\n border-color: transparent;\n }\n .el-input__suffix-inner {\n pointer-events: none;\n }\n .el-select .el-input__inner:focus {\n border-color: transparent;\n }\n .el-input.is-active .el-input__inner, .el-input__inner:focus {\n border-color: transparent;\n }\n }\n .actor-type-select .el-input.is-focus .el-input__inner {\n border-color: transparent;\n }\n .moderate-user-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .moderate-user-button-container {\n display: flex;\n justify-content: space-between;\n }\n @media only screen and (max-width:480px) {\n .moderate-user-button {\n width: 100%\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./ModerationDropdown.vue?vue&type=template&id=439555de&\"\nimport script from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerationDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModerationDropdown.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerationDropdown.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7c6b.48819f73.js b/priv/static/adminfe/static/js/chunk-7c6b.48819f73.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-7c6b"],{HMof:function(e,t,i){"use strict";i.r(t);var n=i("o0o1"),s=i.n(n),a=i("yXPU"),r=i.n(a),o=i("lSNA"),l=i.n(o),c=i("rIUS"),v=i("L2JU"),u=i("9i3r");function m(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,n)}return i}function d(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?m(Object(i),!0).forEach(function(t){l()(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):m(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}var p={components:{RebootButton:c.a},data:function(){return{rules:{email:[{validator:this.validateEmail,trigger:"blur"}]},newTokenForm:{maxUse:1,expiresAt:""},inviteUserForm:{email:"",name:""},createTokenDialogVisible:!1,inviteUserDialogVisible:!1}},computed:d(d({},Object(v.b)(["authHost"])),{},{getLabelWidth:function(){return this.isDesktop?"100px":"85px"},inviteLink:function(){return"".concat(Object(u.a)(this.authHost),"/registration/").concat(this.newToken.token)},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.invites.loading},newToken:function(){return this.$store.state.invites.newToken},tokens:function(){return this.$store.state.invites.inviteTokens}}),mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchInviteTokens")},methods:{closeDialogWindow:function(){this.inviteUserDialogVisible=!1,this.createTokenDialogVisible=!1,this.$store.dispatch("RemoveNewToken"),this.$data.inviteUserForm.email="",this.$data.inviteUserForm.name=""},createToken:function(){this.$store.dispatch("GenerateInviteToken",this.$data.newTokenForm)},inviteUserViaEmail:function(){var e=this;return r()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e.$refs.inviteUserForm.validate(function(){var t=r()(s.a.mark(function t(i){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!i){t.next=6;break}return t.next=3,e.$store.dispatch("InviteUserViaEmail",e.$data.inviteUserForm);case 3:e.closeDialogWindow(),t.next=8;break;case 6:return e.$message({type:"error",message:e.$t("invites.submitFormError")}),t.abrupt("return",!1);case 8:case"end":return t.stop()}},t)}));return function(e){return t.apply(this,arguments)}}());case 1:case"end":return t.stop()}},t)}))()},revokeInviteToken:function(e){this.$store.dispatch("RevokeToken",e)},validateEmail:function(e,t,i){return""===t?i(new Error(this.$t("invites.emptyEmailError"))):this.validEmail(t)?i():i(new Error(this.$t("invites.invalidEmailError")))},validEmail:function(e){return/^[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])?)*$/.test(e)}}},b=(i("ObxI"),i("KHd+")),k=Object(b.a)(p,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"invites-container"},[i("div",{staticClass:"invites-header-container"},[i("h1",[e._v(e._s(e.$t("invites.inviteTokens")))]),e._v(" "),i("reboot-button")],1),e._v(" "),i("div",{staticClass:"actions-container"},[i("el-button",{staticClass:"create-invite-token",on:{click:function(t){e.createTokenDialogVisible=!0}}},[i("span",[i("i",{staticClass:"icon el-icon-plus"}),e._v("\n "+e._s(e.$t("invites.createInviteToken"))+"\n ")])]),e._v(" "),i("el-button",{staticClass:"invite-via-email",on:{click:function(t){e.inviteUserDialogVisible=!0}}},[i("span",[i("i",{staticClass:"icon el-icon-message"}),e._v("\n "+e._s(e.$t("invites.inviteUserViaEmail"))+"\n ")])])],1),e._v(" "),i("el-dialog",{attrs:{visible:e.createTokenDialogVisible,"show-close":!1,title:e.$t("invites.createInviteToken"),"custom-class":"create-new-token-dialog"},on:{"update:visible":function(t){e.createTokenDialogVisible=t}}},[i("el-form",{ref:"newTokenForm",attrs:{model:e.newTokenForm,"label-width":e.getLabelWidth,"status-icon":""}},[i("el-form-item",{attrs:{label:e.$t("invites.maxUse")}},[i("el-input-number",{attrs:{min:0,size:e.isDesktop?"medium":"small",name:"maxUse"},model:{value:e.newTokenForm.maxUse,callback:function(t){e.$set(e.newTokenForm,"maxUse",t)},expression:"newTokenForm.maxUse"}})],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.expiresAt")}},[i("el-date-picker",{staticClass:"pick-date",attrs:{placeholder:e.$t("invites.pickDate"),type:"date",name:"date","value-format":"yyyy-MM-dd"},model:{value:e.newTokenForm.expiresAt,callback:function(t){e.$set(e.newTokenForm,"expiresAt",t)},expression:"newTokenForm.expiresAt"}})],1)],1),e._v(" "),i("span",{attrs:{slot:"footer"},slot:"footer"},[i("el-button",{staticClass:"invites-close-dialog",on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("invites.cancel")))]),e._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:e.createToken}},[e._v(e._s(e.$t("invites.create")))])],1),e._v(" "),"token"in e.newToken?i("el-card",[i("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[i("span",[e._v(e._s(e.$t("invites.tokenCreated")))])]),e._v(" "),i("el-form",{staticClass:"new-token-card",attrs:{"label-width":"85px"}},[i("el-form-item",{attrs:{label:e.$t("invites.inviteLink")}},[i("el-link",{attrs:{href:e.inviteLink,underline:!1,target:"_blank"}},[e._v("\n "+e._s(e.inviteLink)+"\n ")])],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.token")}},[e._v("\n "+e._s(e.newToken.token)+"\n ")]),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.maxUse")}},[e._v("\n "+e._s(e.newToken.maxUse)+"\n ")]),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.expiresAt")}},[e._v("\n "+e._s(e.newToken.expiresAt||"(not set)")+"\n ")])],1)],1):e._e()],1),e._v(" "),i("el-dialog",{attrs:{visible:e.inviteUserDialogVisible,"show-close":!1,title:e.$t("invites.sendRegistration"),"custom-class":"invite-via-email-dialog"},on:{"update:visible":function(t){e.inviteUserDialogVisible=t}}},[i("div",[i("p",{staticClass:"info"},[e._v(e._s(e.$t("invites.inviteViaEmailAlert")))]),e._v(" "),i("el-form",{ref:"inviteUserForm",attrs:{model:e.inviteUserForm,rules:e.rules,"label-width":e.getLabelWidth,"status-icon":""}},[i("el-form-item",{attrs:{label:e.$t("invites.email"),prop:"email"}},[i("el-input",{attrs:{name:"email",type:"email",autofocus:""},model:{value:e.inviteUserForm.email,callback:function(t){e.$set(e.inviteUserForm,"email",t)},expression:"inviteUserForm.email"}})],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.name"),prop:"name"}},[i("el-input",{attrs:{name:"name"},model:{value:e.inviteUserForm.name,callback:function(t){e.$set(e.inviteUserForm,"name",t)},expression:"inviteUserForm.name"}})],1)],1)],1),e._v(" "),i("span",{attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("invites.cancel")))]),e._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:e.inviteUserViaEmail}},[e._v(e._s(e.$t("invites.create")))])],1)]),e._v(" "),i("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],staticClass:"invite-token-table",attrs:{data:e.tokens,"default-sort":{prop:"used",order:"ascending"}}},[e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.id"),"min-width":"60",prop:"id",sortable:""}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.token"),"min-width":e.isDesktop?320:120,prop:"token"}}),e._v(" "),e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.expiresAt"),align:"center","header-align":"center","min-width":"110",prop:"expires_at",sortable:""}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.maxUse"),align:"center","header-align":"center","min-width":"60",prop:"max_use",sortable:""}}),e._v(" "),e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.uses"),align:"center","header-align":"center","min-width":"60",prop:"uses"}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.used"),"min-width":e.isDesktop?60:50,align:"center","header-align":"center",prop:"used",sortable:""},scopedSlots:e._u([{key:"default",fn:function(t){return[i("el-tag",{attrs:{type:t.row.used?"danger":"success","disable-transitions":""}},[e._v("\n "+e._s(t.row.used?e.$t("invites.used"):e.$t("invites.active"))+"\n ")])]}}])}),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.actions"),"min-width":e.isDesktop?100:50,align:"center","header-align":"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(i){return e.revokeInviteToken(t.row.token)}}},[e._v("\n "+e._s(e.$t("invites.revoke"))+"\n ")])]}}])})],1)],1)},[],!1,null,null,null);k.options.__file="index.vue";t.default=k.exports},ObxI:function(e,t,i){"use strict";var n=i("Tykb");i.n(n).a},Tykb:function(e,t,i){}}]); +//# sourceMappingURL=chunk-7c6b.48819f73.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7c6b.48819f73.js.map b/priv/static/adminfe/static/js/chunk-7c6b.48819f73.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/invites/index.vue?3e9a","webpack:///src/views/invites/index.vue","webpack:///./src/views/invites/index.vue?b523","webpack:///./src/views/invites/index.vue","webpack:///./src/views/invites/index.vue?0fc1"],"names":["views_invitesvue_type_script_lang_js_","components","RebootButton","data","rules","email","validator","this","validateEmail","trigger","newTokenForm","maxUse","expiresAt","inviteUserForm","name","createTokenDialogVisible","inviteUserDialogVisible","computed","_objectSpread","Object","vuex_esm","getLabelWidth","isDesktop","inviteLink","concat","utils","authHost","newToken","token","$store","state","app","device","loading","invites","tokens","inviteTokens","mounted","dispatch","methods","closeDialogWindow","$data","createToken","inviteUserViaEmail","_this","asyncToGenerator_default","regenerator_default","a","mark","_callee2","wrap","_context2","prev","next","$refs","validate","_ref","_callee","valid","_context","$message","type","message","$t","abrupt","stop","_x","apply","arguments","revokeInviteToken","rule","value","callback","Error","validEmail","test","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","on","click","$event","attrs","visible","show-close","title","custom-class","update:visible","ref","model","label-width","status-icon","label","min","size","$$v","$set","expression","placeholder","value-format","slot","href","underline","target","_e","prop","autofocus","directives","rawName","default-sort","order","min-width","sortable","align","header-align","scopedSlots","_u","key","fn","scope","row","used","disable-transitions","nativeOn","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n"],"mappings":"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","file":"static/js/chunk-7c6b.48819f73.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"invites-container\"},[_c('div',{staticClass:\"invites-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('invites.inviteTokens')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"actions-container\"},[_c('el-button',{staticClass:\"create-invite-token\",on:{\"click\":function($event){_vm.createTokenDialogVisible = true}}},[_c('span',[_c('i',{staticClass:\"icon el-icon-plus\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.createInviteToken'))+\"\\n \")])]),_vm._v(\" \"),_c('el-button',{staticClass:\"invite-via-email\",on:{\"click\":function($event){_vm.inviteUserDialogVisible = true}}},[_c('span',[_c('i',{staticClass:\"icon el-icon-message\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.inviteUserViaEmail'))+\"\\n \")])])],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.createTokenDialogVisible,\"show-close\":false,\"title\":_vm.$t('invites.createInviteToken'),\"custom-class\":\"create-new-token-dialog\"},on:{\"update:visible\":function($event){_vm.createTokenDialogVisible=$event}}},[_c('el-form',{ref:\"newTokenForm\",attrs:{\"model\":_vm.newTokenForm,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.maxUse')}},[_c('el-input-number',{attrs:{\"min\":0,\"size\":_vm.isDesktop ? 'medium' : 'small',\"name\":\"maxUse\"},model:{value:(_vm.newTokenForm.maxUse),callback:function ($$v) {_vm.$set(_vm.newTokenForm, \"maxUse\", $$v)},expression:\"newTokenForm.maxUse\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.expiresAt')}},[_c('el-date-picker',{staticClass:\"pick-date\",attrs:{\"placeholder\":_vm.$t('invites.pickDate'),\"type\":\"date\",\"name\":\"date\",\"value-format\":\"yyyy-MM-dd\"},model:{value:(_vm.newTokenForm.expiresAt),callback:function ($$v) {_vm.$set(_vm.newTokenForm, \"expiresAt\", $$v)},expression:\"newTokenForm.expiresAt\"}})],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{staticClass:\"invites-close-dialog\",on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('invites.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.createToken}},[_vm._v(_vm._s(_vm.$t('invites.create')))])],1),_vm._v(\" \"),('token' in _vm.newToken)?_c('el-card',[_c('div',{staticClass:\"clearfix\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('span',[_vm._v(_vm._s(_vm.$t('invites.tokenCreated')))])]),_vm._v(\" \"),_c('el-form',{staticClass:\"new-token-card\",attrs:{\"label-width\":\"85px\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.inviteLink')}},[_c('el-link',{attrs:{\"href\":_vm.inviteLink,\"underline\":false,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.inviteLink)+\"\\n \")])],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.token')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.token)+\"\\n \")]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.maxUse')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.maxUse)+\"\\n \")]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.expiresAt')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.expiresAt || '(not set)')+\"\\n \")])],1)],1):_vm._e()],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.inviteUserDialogVisible,\"show-close\":false,\"title\":_vm.$t('invites.sendRegistration'),\"custom-class\":\"invite-via-email-dialog\"},on:{\"update:visible\":function($event){_vm.inviteUserDialogVisible=$event}}},[_c('div',[_c('p',{staticClass:\"info\"},[_vm._v(_vm._s(_vm.$t('invites.inviteViaEmailAlert')))]),_vm._v(\" \"),_c('el-form',{ref:\"inviteUserForm\",attrs:{\"model\":_vm.inviteUserForm,\"rules\":_vm.rules,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.email'),\"prop\":\"email\"}},[_c('el-input',{attrs:{\"name\":\"email\",\"type\":\"email\",\"autofocus\":\"\"},model:{value:(_vm.inviteUserForm.email),callback:function ($$v) {_vm.$set(_vm.inviteUserForm, \"email\", $$v)},expression:\"inviteUserForm.email\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.name'),\"prop\":\"name\"}},[_c('el-input',{attrs:{\"name\":\"name\"},model:{value:(_vm.inviteUserForm.name),callback:function ($$v) {_vm.$set(_vm.inviteUserForm, \"name\", $$v)},expression:\"inviteUserForm.name\"}})],1)],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('invites.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.inviteUserViaEmail}},[_vm._v(_vm._s(_vm.$t('invites.create')))])],1)]),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"invite-token-table\",attrs:{\"data\":_vm.tokens,\"default-sort\":{prop: 'used', order: 'ascending'}}},[(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.id'),\"min-width\":\"60\",\"prop\":\"id\",\"sortable\":\"\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.token'),\"min-width\":_vm.isDesktop ? 320 : 120,\"prop\":\"token\"}}),_vm._v(\" \"),(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.expiresAt'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"110\",\"prop\":\"expires_at\",\"sortable\":\"\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.maxUse'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"60\",\"prop\":\"max_use\",\"sortable\":\"\"}}),_vm._v(\" \"),(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.uses'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"60\",\"prop\":\"uses\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.used'),\"min-width\":_vm.isDesktop ? 60 : 50,\"align\":\"center\",\"header-align\":\"center\",\"prop\":\"used\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-tag',{attrs:{\"type\":scope.row.used ? 'danger' : 'success',\"disable-transitions\":\"\"}},[_vm._v(\"\\n \"+_vm._s(scope.row.used ? _vm.$t('invites.used') : _vm.$t('invites.active'))+\"\\n \")])]}}])}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.actions'),\"min-width\":_vm.isDesktop ? 100 : 50,\"align\":\"center\",\"header-align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{attrs:{\"type\":\"text\",\"size\":\"small\"},nativeOn:{\"click\":function($event){return _vm.revokeInviteToken(scope.row.token)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.revoke'))+\"\\n \")])]}}])})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"invites-container\">\n <div class=\"invites-header-container\">\n <h1>{{ $t('invites.inviteTokens') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"actions-container\">\n <el-button class=\"create-invite-token\" @click=\"createTokenDialogVisible = true\">\n <span>\n <i class=\"icon el-icon-plus\"/>\n {{ $t('invites.createInviteToken') }}\n </span>\n </el-button>\n <el-button class=\"invite-via-email\" @click=\"inviteUserDialogVisible = true\">\n <span>\n <i class=\"icon el-icon-message\"/>\n {{ $t('invites.inviteUserViaEmail') }}\n </span>\n </el-button>\n </div>\n <el-dialog\n :visible.sync=\"createTokenDialogVisible\"\n :show-close=\"false\"\n :title=\"$t('invites.createInviteToken')\"\n custom-class=\"create-new-token-dialog\">\n <el-form ref=\"newTokenForm\" :model=\"newTokenForm\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('invites.maxUse')\">\n <el-input-number\n v-model=\"newTokenForm.maxUse\"\n :min=\"0\"\n :size=\"isDesktop ? 'medium' : 'small'\"\n name=\"maxUse\"/>\n </el-form-item>\n <el-form-item :label=\"$t('invites.expiresAt')\">\n <el-date-picker\n v-model=\"newTokenForm.expiresAt\"\n :placeholder=\"$t('invites.pickDate')\"\n class=\"pick-date\"\n type=\"date\"\n name=\"date\"\n value-format=\"yyyy-MM-dd\"/>\n </el-form-item>\n </el-form>\n <span slot=\"footer\">\n <el-button class=\"invites-close-dialog\" @click=\"closeDialogWindow\">{{ $t('invites.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"createToken\">{{ $t('invites.create') }}</el-button>\n </span>\n <el-card v-if=\"'token' in newToken\">\n <div slot=\"header\" class=\"clearfix\">\n <span>{{ $t('invites.tokenCreated') }}</span>\n </div>\n <el-form label-width=\"85px\" class=\"new-token-card\">\n <el-form-item :label=\"$t('invites.inviteLink')\">\n <el-link :href=\"inviteLink\" :underline=\"false\" target=\"_blank\">\n {{ inviteLink }}\n </el-link>\n </el-form-item>\n <el-form-item :label=\"$t('invites.token')\">\n {{ newToken.token }}\n </el-form-item>\n <el-form-item :label=\"$t('invites.maxUse')\">\n {{ newToken.maxUse }}\n </el-form-item>\n <el-form-item :label=\"$t('invites.expiresAt')\">\n {{ newToken.expiresAt || '(not set)' }}\n </el-form-item>\n </el-form>\n </el-card>\n </el-dialog>\n <el-dialog\n :visible.sync=\"inviteUserDialogVisible\"\n :show-close=\"false\"\n :title=\"$t('invites.sendRegistration')\"\n custom-class=\"invite-via-email-dialog\">\n <div>\n <p class=\"info\">{{ $t('invites.inviteViaEmailAlert') }}</p>\n <el-form ref=\"inviteUserForm\" :model=\"inviteUserForm\" :rules=\"rules\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('invites.email')\" prop=\"email\">\n <el-input v-model=\"inviteUserForm.email\" name=\"email\" type=\"email\" autofocus/>\n </el-form-item>\n <el-form-item :label=\"$t('invites.name')\" prop=\"name\">\n <el-input v-model=\"inviteUserForm.name\" name=\"name\"/>\n </el-form-item>\n </el-form>\n </div>\n <span slot=\"footer\">\n <el-button @click=\"closeDialogWindow\">{{ $t('invites.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"inviteUserViaEmail\">{{ $t('invites.create') }}</el-button>\n </span>\n </el-dialog>\n <el-table\n v-loading=\"loading\"\n :data=\"tokens\"\n :default-sort = \"{prop: 'used', order: 'ascending'}\"\n class=\"invite-token-table\">\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.id')\"\n min-width=\"60\"\n prop=\"id\"\n sortable/>\n <el-table-column\n :label=\"$t('invites.token')\"\n :min-width=\"isDesktop ? 320 : 120\"\n prop=\"token\"/>\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.expiresAt')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"110\"\n prop=\"expires_at\"\n sortable/>\n <el-table-column\n :label=\"$t('invites.maxUse')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"60\"\n prop=\"max_use\"\n sortable/>\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.uses')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"60\"\n prop=\"uses\"/>\n <el-table-column\n :label=\"$t('invites.used')\"\n :min-width=\"isDesktop ? 60 : 50\"\n align=\"center\"\n header-align=\"center\"\n prop=\"used\"\n sortable>\n <template slot-scope=\"scope\">\n <el-tag\n :type=\"scope.row.used ? 'danger' : 'success'\"\n disable-transitions>\n {{ scope.row.used ? $t('invites.used') : $t('invites.active') }}\n </el-tag>\n </template>\n </el-table-column>\n <el-table-column\n :label=\"$t('invites.actions')\"\n :min-width=\"isDesktop ? 100 : 50\"\n align=\"center\"\n header-align=\"center\">\n <template slot-scope=\"scope\">\n <el-button type=\"text\" size=\"small\" @click.native=\"revokeInviteToken(scope.row.token)\">\n {{ $t('invites.revoke') }}\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n </div>\n</template>\n\n<script>\nimport RebootButton from '@/components/RebootButton'\nimport { mapGetters } from 'vuex'\nimport { baseName } from '@/api/utils'\n\nexport default {\n components: { RebootButton },\n data() {\n return {\n rules: {\n email: [\n { validator: this.validateEmail, trigger: 'blur' }\n ]\n },\n newTokenForm: {\n maxUse: 1,\n expiresAt: ''\n },\n inviteUserForm: {\n email: '',\n name: ''\n },\n createTokenDialogVisible: false,\n inviteUserDialogVisible: false\n }\n },\n computed: {\n ...mapGetters([\n 'authHost'\n ]),\n getLabelWidth() {\n return this.isDesktop ? '100px' : '85px'\n },\n inviteLink() {\n return `${baseName(this.authHost)}/registration/${this.newToken.token}`\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.invites.loading\n },\n newToken() {\n return this.$store.state.invites.newToken\n },\n tokens() {\n return this.$store.state.invites.inviteTokens\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchInviteTokens')\n },\n methods: {\n closeDialogWindow() {\n this.inviteUserDialogVisible = false\n this.createTokenDialogVisible = false\n this.$store.dispatch('RemoveNewToken')\n this.$data.inviteUserForm.email = ''\n this.$data.inviteUserForm.name = ''\n },\n createToken() {\n this.$store.dispatch('GenerateInviteToken', this.$data.newTokenForm)\n },\n async inviteUserViaEmail() {\n this.$refs['inviteUserForm'].validate(async(valid) => {\n if (valid) {\n await this.$store.dispatch('InviteUserViaEmail', this.$data.inviteUserForm)\n this.closeDialogWindow()\n } else {\n this.$message({\n type: 'error',\n message: this.$t('invites.submitFormError')\n })\n return false\n }\n })\n },\n revokeInviteToken(token) {\n this.$store.dispatch('RevokeToken', token)\n },\n validateEmail(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('invites.emptyEmailError')))\n } else if (!this.validEmail(value)) {\n return callback(new Error(this.$t('invites.invalidEmailError')))\n } else {\n return callback()\n }\n },\n validEmail(email) {\n const re = /^[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])?)*$/\n return re.test(email)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.invites-container {\n .actions-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 15px 15px 15px 15px;\n }\n .create-invite-token {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .create-new-token-dialog {\n width: 50%;\n a {\n margin-bottom: 3px;\n }\n .el-card__body {\n padding: 10px 20px;\n }\n }\n .el-dialog__body {\n padding: 5px 20px 0 20px\n }\n h1 {\n margin: 0;\n }\n .icon {\n margin-right: 5px;\n }\n .invite-token-table {\n width: 100%;\n margin: 0 15px;\n }\n .invite-via-email {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .invite-via-email-dialog {\n width: 50%\n }\n .invites-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n }\n .info {\n color: #666666;\n font-size: 13px;\n line-height: 22px;\n margin: 0 0 10px 0;\n }\n .new-token-card {\n .el-form-item {\n margin: 0;\n }\n }\n .reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .invites-container {\n .actions-container {\n display: flex;\n height: 82px;\n flex-direction: column;\n align-items: center;\n margin: 15px 10px 7px 10px;\n }\n .cell {\n padding: 0;\n }\n .create-invite-token {\n width: 100%;\n }\n .create-new-token-dialog {\n width: 85%\n }\n .el-date-editor {\n width: 150px;\n }\n .el-dialog__body {\n padding: 5px 15px 0 15px\n }\n h1 {\n margin: 0;\n }\n .invite-token-table {\n width: 100%;\n margin: 0 5px;\n font-size: 12px;\n font-weight: 500;\n }\n .invite-via-email {\n width: 100%;\n margin: 10px 0 0 0;\n }\n .invite-via-email-dialog {\n width: 85%\n }\n .invites-header-container {\n margin: 0 10px;\n }\n .info {\n margin: 0 0 10px 5px;\n }\n th {\n .cell {\n padding: 0;\n }\n }\n }\n .create-invite-token {\n width: 100%\n }\n .invite-via-email {\n width: 100%\n }\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=92978bf4&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7c6b.56a14571.js b/priv/static/adminfe/static/js/chunk-7c6b.56a14571.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-7c6b"],{HMof:function(e,t,i){"use strict";i.r(t);var n=i("o0o1"),s=i.n(n),a=i("yXPU"),r=i.n(a),o=i("lSNA"),l=i.n(o),c=i("rIUS"),v=i("L2JU"),u=i("9i3r");function m(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,n)}return i}function d(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?m(Object(i),!0).forEach(function(t){l()(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):m(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}var p={components:{RebootButton:c.a},data:function(){return{rules:{email:[{validator:this.validateEmail,trigger:"blur"}]},newTokenForm:{maxUse:1,expiresAt:""},inviteUserForm:{email:"",name:""},createTokenDialogVisible:!1,inviteUserDialogVisible:!1}},computed:d(d({},Object(v.b)(["authHost"])),{},{getLabelWidth:function(){return this.isDesktop?"100px":"85px"},inviteLink:function(){return"".concat(Object(u.a)(this.authHost),"/registration/").concat(this.newToken.token)},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.invites.loading},newToken:function(){return this.$store.state.invites.newToken},tokens:function(){return this.$store.state.invites.inviteTokens}}),mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchInviteTokens")},methods:{closeDialogWindow:function(){this.inviteUserDialogVisible=!1,this.createTokenDialogVisible=!1,this.$store.dispatch("RemoveNewToken"),this.$data.inviteUserForm.email="",this.$data.inviteUserForm.name=""},createToken:function(){this.$store.dispatch("GenerateInviteToken",this.$data.newTokenForm)},inviteUserViaEmail:function(){var e=this;return r()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e.$refs.inviteUserForm.validate(function(){var t=r()(s.a.mark(function t(i){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!i){t.next=6;break}return t.next=3,e.$store.dispatch("InviteUserViaEmail",e.$data.inviteUserForm);case 3:e.closeDialogWindow(),t.next=8;break;case 6:return e.$message({type:"error",message:e.$t("invites.submitFormError")}),t.abrupt("return",!1);case 8:case"end":return t.stop()}},t)}));return function(e){return t.apply(this,arguments)}}());case 1:case"end":return t.stop()}},t)}))()},revokeInviteToken:function(e){this.$store.dispatch("RevokeToken",e)},validateEmail:function(e,t,i){return""===t?i(new Error(this.$t("invites.emptyEmailError"))):this.validEmail(t)?i():i(new Error(this.$t("invites.invalidEmailError")))},validEmail:function(e){return/^[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])?)*$/.test(e)}}},b=(i("ObxI"),i("KHd+")),k=Object(b.a)(p,function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",{staticClass:"invites-container"},[i("div",{staticClass:"invites-header-container"},[i("h1",[e._v(e._s(e.$t("invites.inviteTokens")))]),e._v(" "),i("reboot-button")],1),e._v(" "),i("div",{staticClass:"actions-container"},[i("el-button",{staticClass:"create-invite-token",on:{click:function(t){e.createTokenDialogVisible=!0}}},[i("span",[i("i",{staticClass:"icon el-icon-plus"}),e._v("\n "+e._s(e.$t("invites.createInviteToken"))+"\n ")])]),e._v(" "),i("el-button",{staticClass:"invite-via-email",on:{click:function(t){e.inviteUserDialogVisible=!0}}},[i("span",[i("i",{staticClass:"icon el-icon-message"}),e._v("\n "+e._s(e.$t("invites.inviteUserViaEmail"))+"\n ")])])],1),e._v(" "),i("el-dialog",{attrs:{visible:e.createTokenDialogVisible,"show-close":!1,title:e.$t("invites.createInviteToken"),"custom-class":"create-new-token-dialog"},on:{"update:visible":function(t){e.createTokenDialogVisible=t}}},[i("el-form",{ref:"newTokenForm",attrs:{model:e.newTokenForm,"label-width":e.getLabelWidth,"status-icon":""}},[i("el-form-item",{attrs:{label:e.$t("invites.maxUse")}},[i("el-input-number",{attrs:{min:0,size:e.isDesktop?"medium":"small",name:"maxUse"},model:{value:e.newTokenForm.maxUse,callback:function(t){e.$set(e.newTokenForm,"maxUse",t)},expression:"newTokenForm.maxUse"}})],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.expiresAt")}},[i("el-date-picker",{staticClass:"pick-date",attrs:{placeholder:e.$t("invites.pickDate"),type:"date",name:"date","value-format":"yyyy-MM-dd"},model:{value:e.newTokenForm.expiresAt,callback:function(t){e.$set(e.newTokenForm,"expiresAt",t)},expression:"newTokenForm.expiresAt"}})],1)],1),e._v(" "),i("span",{attrs:{slot:"footer"},slot:"footer"},[i("el-button",{staticClass:"invites-close-dialog",on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("invites.cancel")))]),e._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:e.createToken}},[e._v(e._s(e.$t("invites.create")))])],1),e._v(" "),"token"in e.newToken?i("el-card",[i("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[i("span",[e._v(e._s(e.$t("invites.tokenCreated")))])]),e._v(" "),i("el-form",{staticClass:"new-token-card",attrs:{"label-width":"85px"}},[i("el-form-item",{attrs:{label:e.$t("invites.inviteLink")}},[i("el-link",{attrs:{href:e.inviteLink,underline:!1,target:"_blank"}},[e._v("\n "+e._s(e.inviteLink)+"\n ")])],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.token")}},[e._v("\n "+e._s(e.newToken.token)+"\n ")]),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.maxUse")}},[e._v("\n "+e._s(e.newToken.maxUse)+"\n ")]),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.expiresAt")}},[e._v("\n "+e._s(e.newToken.expiresAt||"(not set)")+"\n ")])],1)],1):e._e()],1),e._v(" "),i("el-dialog",{attrs:{visible:e.inviteUserDialogVisible,"show-close":!1,title:e.$t("invites.sendRegistration"),"custom-class":"invite-via-email-dialog"},on:{"update:visible":function(t){e.inviteUserDialogVisible=t}}},[i("div",[i("p",{staticClass:"info"},[e._v(e._s(e.$t("invites.inviteViaEmailAlert")))]),e._v(" "),i("el-form",{ref:"inviteUserForm",attrs:{model:e.inviteUserForm,rules:e.rules,"label-width":e.getLabelWidth,"status-icon":""}},[i("el-form-item",{attrs:{label:e.$t("invites.email"),prop:"email"}},[i("el-input",{attrs:{name:"email",type:"email",autofocus:""},model:{value:e.inviteUserForm.email,callback:function(t){e.$set(e.inviteUserForm,"email",t)},expression:"inviteUserForm.email"}})],1),e._v(" "),i("el-form-item",{attrs:{label:e.$t("invites.name"),prop:"name"}},[i("el-input",{attrs:{name:"name"},model:{value:e.inviteUserForm.name,callback:function(t){e.$set(e.inviteUserForm,"name",t)},expression:"inviteUserForm.name"}})],1)],1)],1),e._v(" "),i("span",{attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:e.closeDialogWindow}},[e._v(e._s(e.$t("invites.cancel")))]),e._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:e.inviteUserViaEmail}},[e._v(e._s(e.$t("invites.create")))])],1)]),e._v(" "),i("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],staticClass:"invite-token-table",attrs:{data:e.tokens,"default-sort":{prop:"used",order:"ascending"}}},[e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.id"),"min-width":"60",prop:"id",sortable:""}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.token"),"min-width":e.isDesktop?320:120,prop:"token"}}),e._v(" "),e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.expiresAt"),align:"center","header-align":"center","min-width":"110",prop:"expires_at",sortable:""}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.maxUse"),align:"center","header-align":"center","min-width":"60",prop:"max_use",sortable:""}}),e._v(" "),e.isDesktop?i("el-table-column",{attrs:{label:e.$t("invites.uses"),align:"center","header-align":"center","min-width":"60",prop:"uses"}}):e._e(),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.used"),"min-width":e.isDesktop?60:50,align:"center","header-align":"center",prop:"used",sortable:""},scopedSlots:e._u([{key:"default",fn:function(t){return[i("el-tag",{attrs:{type:t.row.used?"danger":"success","disable-transitions":""}},[e._v("\n "+e._s(t.row.used?e.$t("invites.used"):e.$t("invites.active"))+"\n ")])]}}])}),e._v(" "),i("el-table-column",{attrs:{label:e.$t("invites.actions"),"min-width":e.isDesktop?100:50,align:"center","header-align":"center"},scopedSlots:e._u([{key:"default",fn:function(t){return[i("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(i){return e.revokeInviteToken(t.row.token)}}},[e._v("\n "+e._s(e.$t("invites.revoke"))+"\n ")])]}}])})],1)],1)},[],!1,null,null,null);k.options.__file="index.vue";t.default=k.exports},ObxI:function(e,t,i){"use strict";var n=i("Tykb");i.n(n).a},Tykb:function(e,t,i){}}]); -//# sourceMappingURL=chunk-7c6b.56a14571.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-7c6b.56a14571.js.map b/priv/static/adminfe/static/js/chunk-7c6b.56a14571.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/invites/index.vue?3e9a","webpack:///src/views/invites/index.vue","webpack:///./src/views/invites/index.vue?b523","webpack:///./src/views/invites/index.vue","webpack:///./src/views/invites/index.vue?0fc1"],"names":["views_invitesvue_type_script_lang_js_","components","RebootButton","data","rules","email","validator","this","validateEmail","trigger","newTokenForm","maxUse","expiresAt","inviteUserForm","name","createTokenDialogVisible","inviteUserDialogVisible","computed","_objectSpread","Object","vuex_esm","getLabelWidth","isDesktop","inviteLink","concat","utils","authHost","newToken","token","$store","state","app","device","loading","invites","tokens","inviteTokens","mounted","dispatch","methods","closeDialogWindow","$data","createToken","inviteUserViaEmail","_this","asyncToGenerator_default","regenerator_default","a","mark","_callee2","wrap","_context2","prev","next","$refs","validate","_ref","_callee","valid","_context","$message","type","message","$t","abrupt","stop","_x","apply","arguments","revokeInviteToken","rule","value","callback","Error","validEmail","test","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","on","click","$event","attrs","visible","show-close","title","custom-class","update:visible","ref","model","label-width","status-icon","label","min","size","$$v","$set","expression","placeholder","value-format","slot","href","underline","target","_e","prop","autofocus","directives","rawName","default-sort","order","min-width","sortable","align","header-align","scopedSlots","_u","key","fn","scope","row","used","disable-transitions","nativeOn","options","__file","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n"],"mappings":"6GAAA,kqBCkKA,IClK0MA,GDmK1MC,YAAAC,eAAA,GACAC,KAFA,WAGA,OACAC,OACAC,QACAC,UAAAC,KAAAC,cAAAC,QAAA,UAGAC,cACAC,OAAA,EACAC,UAAA,IAEAC,gBACAR,MAAA,GACAS,KAAA,IAEAC,0BAAA,EACAC,yBAAA,IAGAC,SAAAC,OACAC,OAAAC,EAAA,EAAAD,EACA,kBAEAE,cAJA,WAKA,OAAAd,KAAAe,UAAA,gBAEAC,WAPA,WAQA,SAAAC,OAAAL,OAAAM,EAAA,EAAAN,CAAAZ,KAAAmB,UAAA,kBAAAF,OAAAjB,KAAAoB,SAAAC,QAEAN,UAVA,WAWA,kBAAAf,KAAAsB,OAAAC,MAAAC,IAAAC,QAEAC,QAbA,WAcA,OAAA1B,KAAAsB,OAAAC,MAAAI,QAAAD,SAEAN,SAhBA,WAiBA,OAAApB,KAAAsB,OAAAC,MAAAI,QAAAP,UAEAQ,OAnBA,WAoBA,OAAA5B,KAAAsB,OAAAC,MAAAI,QAAAE,gBAGAC,QA5CA,WA6CA9B,KAAAsB,OAAAS,SAAA,eACA/B,KAAAsB,OAAAS,SAAA,cACA/B,KAAAsB,OAAAS,SAAA,sBAEAC,SACAC,kBADA,WAEAjC,KAAAS,yBAAA,EACAT,KAAAQ,0BAAA,EACAR,KAAAsB,OAAAS,SAAA,kBACA/B,KAAAkC,MAAA5B,eAAAR,MAAA,GACAE,KAAAkC,MAAA5B,eAAAC,KAAA,IAEA4B,YARA,WASAnC,KAAAsB,OAAAS,SAAA,sBAAA/B,KAAAkC,MAAA/B,eAEAiC,mBAXA,WAWA,IAAAC,EAAArC,KAAA,OAAAsC,IAAAC,EAAAC,EAAAC,KAAA,SAAAC,IAAA,OAAAH,EAAAC,EAAAG,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,OACAT,EAAAU,MAAA,eAAAC,SAAA,eAAAC,EAAAX,IAAAC,EAAAC,EAAAC,KAAA,SAAAS,EAAAC,GAAA,OAAAZ,EAAAC,EAAAG,KAAA,SAAAS,GAAA,cAAAA,EAAAP,KAAAO,EAAAN,MAAA,WACAK,EADA,CAAAC,EAAAN,KAAA,eAAAM,EAAAN,KAAA,EAEAT,EAAAf,OAAAS,SAAA,qBAAAM,EAAAH,MAAA5B,gBAFA,OAGA+B,EAAAJ,oBAHAmB,EAAAN,KAAA,sBAKAT,EAAAgB,UACAC,KAAA,QACAC,QAAAlB,EAAAmB,GAAA,6BAPAJ,EAAAK,OAAA,UASA,GATA,wBAAAL,EAAAM,SAAAR,MAAA,gBAAAS,GAAA,OAAAV,EAAAW,MAAA5D,KAAA6D,YAAA,IADA,wBAAAjB,EAAAc,SAAAhB,KAAAJ,IAcAwB,kBAzBA,SAyBAzC,GACArB,KAAAsB,OAAAS,SAAA,cAAAV,IAEApB,cA5BA,SA4BA8D,EAAAC,EAAAC,GACA,WAAAD,EACAC,EAAA,IAAAC,MAAAlE,KAAAwD,GAAA,6BACAxD,KAAAmE,WAAAH,GAGAC,IAFAA,EAAA,IAAAC,MAAAlE,KAAAwD,GAAA,gCAKAW,WArCA,SAqCArE,GAEA,MADA,wIACAsE,KAAAtE,8BElPAuE,EAAgBzD,OAAA0D,EAAA,EAAA1D,CACdnB,EHTF,WAA0B,IAAA8E,EAAAvE,KAAawE,EAAAD,EAAAE,eAA0BC,EAAAH,EAAAI,MAAAD,IAAAF,EAAwB,OAAAE,EAAA,OAAiBE,YAAA,sBAAgCF,EAAA,OAAYE,YAAA,6BAAuCF,EAAA,MAAAH,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,4BAAAe,EAAAM,GAAA,KAAAH,EAAA,qBAAAH,EAAAM,GAAA,KAAAH,EAAA,OAAsHE,YAAA,sBAAgCF,EAAA,aAAkBE,YAAA,sBAAAG,IAAsCC,MAAA,SAAAC,GAAyBV,EAAA/D,0BAAA,MAAsCkE,EAAA,QAAAA,EAAA,KAAqBE,YAAA,sBAAgCL,EAAAM,GAAA,aAAAN,EAAAO,GAAAP,EAAAf,GAAA,8CAAAe,EAAAM,GAAA,KAAAH,EAAA,aAA8GE,YAAA,mBAAAG,IAAmCC,MAAA,SAAAC,GAAyBV,EAAA9D,yBAAA,MAAqCiE,EAAA,QAAAA,EAAA,KAAqBE,YAAA,yBAAmCL,EAAAM,GAAA,aAAAN,EAAAO,GAAAP,EAAAf,GAAA,mDAAAe,EAAAM,GAAA,KAAAH,EAAA,aAAmHQ,OAAOC,QAAAZ,EAAA/D,yBAAA4E,cAAA,EAAAC,MAAAd,EAAAf,GAAA,6BAAA8B,eAAA,2BAA+IP,IAAKQ,iBAAA,SAAAN,GAAkCV,EAAA/D,yBAAAyE,MAAsCP,EAAA,WAAgBc,IAAA,eAAAN,OAA0BO,MAAAlB,EAAApE,aAAAuF,cAAAnB,EAAAzD,cAAA6E,cAAA,MAA2EjB,EAAA,gBAAqBQ,OAAOU,MAAArB,EAAAf,GAAA,qBAAkCkB,EAAA,mBAAwBQ,OAAOW,IAAA,EAAAC,KAAAvB,EAAAxD,UAAA,iBAAAR,KAAA,UAAkEkF,OAAQzB,MAAAO,EAAApE,aAAA,OAAA8D,SAAA,SAAA8B,GAAyDxB,EAAAyB,KAAAzB,EAAApE,aAAA,SAAA4F,IAA0CE,WAAA,0BAAmC,GAAA1B,EAAAM,GAAA,KAAAH,EAAA,gBAAqCQ,OAAOU,MAAArB,EAAAf,GAAA,wBAAqCkB,EAAA,kBAAuBE,YAAA,YAAAM,OAA+BgB,YAAA3B,EAAAf,GAAA,oBAAAF,KAAA,OAAA/C,KAAA,OAAA4F,eAAA,cAAiGV,OAAQzB,MAAAO,EAAApE,aAAA,UAAA8D,SAAA,SAAA8B,GAA4DxB,EAAAyB,KAAAzB,EAAApE,aAAA,YAAA4F,IAA6CE,WAAA,6BAAsC,OAAA1B,EAAAM,GAAA,KAAAH,EAAA,QAAiCQ,OAAOkB,KAAA,UAAgBA,KAAA,WAAe1B,EAAA,aAAkBE,YAAA,uBAAAG,IAAuCC,MAAAT,EAAAtC,qBAA+BsC,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,sBAAAe,EAAAM,GAAA,KAAAH,EAAA,aAAyEQ,OAAO5B,KAAA,WAAiByB,IAAKC,MAAAT,EAAApC,eAAyBoC,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,0BAAAe,EAAAM,GAAA,eAAAN,EAAAnD,SAAAsD,EAAA,WAAAA,EAAA,OAA+GE,YAAA,WAAAM,OAA8BkB,KAAA,UAAgBA,KAAA,WAAe1B,EAAA,QAAAH,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,8BAAAe,EAAAM,GAAA,KAAAH,EAAA,WAA0FE,YAAA,iBAAAM,OAAoCQ,cAAA,UAAsBhB,EAAA,gBAAqBQ,OAAOU,MAAArB,EAAAf,GAAA,yBAAsCkB,EAAA,WAAgBQ,OAAOmB,KAAA9B,EAAAvD,WAAAsF,WAAA,EAAAC,OAAA,YAA2DhC,EAAAM,GAAA,iBAAAN,EAAAO,GAAAP,EAAAvD,YAAA,sBAAAuD,EAAAM,GAAA,KAAAH,EAAA,gBAAsGQ,OAAOU,MAAArB,EAAAf,GAAA,oBAAiCe,EAAAM,GAAA,eAAAN,EAAAO,GAAAP,EAAAnD,SAAAC,OAAA,gBAAAkD,EAAAM,GAAA,KAAAH,EAAA,gBAAkGQ,OAAOU,MAAArB,EAAAf,GAAA,qBAAkCe,EAAAM,GAAA,eAAAN,EAAAO,GAAAP,EAAAnD,SAAAhB,QAAA,gBAAAmE,EAAAM,GAAA,KAAAH,EAAA,gBAAmGQ,OAAOU,MAAArB,EAAAf,GAAA,wBAAqCe,EAAAM,GAAA,eAAAN,EAAAO,GAAAP,EAAAnD,SAAAf,WAAA,qCAAAkE,EAAAiC,MAAA,GAAAjC,EAAAM,GAAA,KAAAH,EAAA,aAAuIQ,OAAOC,QAAAZ,EAAA9D,wBAAA2E,cAAA,EAAAC,MAAAd,EAAAf,GAAA,4BAAA8B,eAAA,2BAA6IP,IAAKQ,iBAAA,SAAAN,GAAkCV,EAAA9D,wBAAAwE,MAAqCP,EAAA,OAAAA,EAAA,KAAoBE,YAAA,SAAmBL,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,mCAAAe,EAAAM,GAAA,KAAAH,EAAA,WAAoFc,IAAA,iBAAAN,OAA4BO,MAAAlB,EAAAjE,eAAAT,MAAA0E,EAAA1E,MAAA6F,cAAAnB,EAAAzD,cAAA6E,cAAA,MAA+FjB,EAAA,gBAAqBQ,OAAOU,MAAArB,EAAAf,GAAA,iBAAAiD,KAAA,WAAgD/B,EAAA,YAAiBQ,OAAO3E,KAAA,QAAA+C,KAAA,QAAAoD,UAAA,IAA6CjB,OAAQzB,MAAAO,EAAAjE,eAAA,MAAA2D,SAAA,SAAA8B,GAA0DxB,EAAAyB,KAAAzB,EAAAjE,eAAA,QAAAyF,IAA2CE,WAAA,2BAAoC,GAAA1B,EAAAM,GAAA,KAAAH,EAAA,gBAAqCQ,OAAOU,MAAArB,EAAAf,GAAA,gBAAAiD,KAAA,UAA8C/B,EAAA,YAAiBQ,OAAO3E,KAAA,QAAckF,OAAQzB,MAAAO,EAAAjE,eAAA,KAAA2D,SAAA,SAAA8B,GAAyDxB,EAAAyB,KAAAzB,EAAAjE,eAAA,OAAAyF,IAA0CE,WAAA,0BAAmC,WAAA1B,EAAAM,GAAA,KAAAH,EAAA,QAAqCQ,OAAOkB,KAAA,UAAgBA,KAAA,WAAe1B,EAAA,aAAkBK,IAAIC,MAAAT,EAAAtC,qBAA+BsC,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,sBAAAe,EAAAM,GAAA,KAAAH,EAAA,aAAyEQ,OAAO5B,KAAA,WAAiByB,IAAKC,MAAAT,EAAAnC,sBAAgCmC,EAAAM,GAAAN,EAAAO,GAAAP,EAAAf,GAAA,4BAAAe,EAAAM,GAAA,KAAAH,EAAA,YAA8EiC,aAAapG,KAAA,UAAAqG,QAAA,YAAA5C,MAAAO,EAAA,QAAA0B,WAAA,YAA4ErB,YAAA,qBAAAM,OAA0CtF,KAAA2E,EAAA3C,OAAAiF,gBAAkCJ,KAAA,OAAAK,MAAA,gBAAmCvC,EAAA,UAAAG,EAAA,mBAAwCQ,OAAOU,MAAArB,EAAAf,GAAA,cAAAuD,YAAA,KAAAN,KAAA,KAAAO,SAAA,MAAyEzC,EAAAiC,KAAAjC,EAAAM,GAAA,KAAAH,EAAA,mBAA6CQ,OAAOU,MAAArB,EAAAf,GAAA,iBAAAuD,YAAAxC,EAAAxD,UAAA,QAAA0F,KAAA,WAAsFlC,EAAAM,GAAA,KAAAN,EAAA,UAAAG,EAAA,mBAAoDQ,OAAOU,MAAArB,EAAAf,GAAA,qBAAAyD,MAAA,SAAAC,eAAA,SAAAH,YAAA,MAAAN,KAAA,aAAAO,SAAA,MAAkIzC,EAAAiC,KAAAjC,EAAAM,GAAA,KAAAH,EAAA,mBAA6CQ,OAAOU,MAAArB,EAAAf,GAAA,kBAAAyD,MAAA,SAAAC,eAAA,SAAAH,YAAA,KAAAN,KAAA,UAAAO,SAAA,MAA2HzC,EAAAM,GAAA,KAAAN,EAAA,UAAAG,EAAA,mBAAoDQ,OAAOU,MAAArB,EAAAf,GAAA,gBAAAyD,MAAA,SAAAC,eAAA,SAAAH,YAAA,KAAAN,KAAA,UAAwGlC,EAAAiC,KAAAjC,EAAAM,GAAA,KAAAH,EAAA,mBAA6CQ,OAAOU,MAAArB,EAAAf,GAAA,gBAAAuD,YAAAxC,EAAAxD,UAAA,MAAAkG,MAAA,SAAAC,eAAA,SAAAT,KAAA,OAAAO,SAAA,IAAwIG,YAAA5C,EAAA6C,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAA7C,EAAA,UAAqBQ,OAAO5B,KAAAiE,EAAAC,IAAAC,KAAA,mBAAAC,sBAAA,MAAuEnD,EAAAM,GAAA,eAAAN,EAAAO,GAAAyC,EAAAC,IAAAC,KAAAlD,EAAAf,GAAA,gBAAAe,EAAAf,GAAA,0CAAwHe,EAAAM,GAAA,KAAAH,EAAA,mBAAoCQ,OAAOU,MAAArB,EAAAf,GAAA,mBAAAuD,YAAAxC,EAAAxD,UAAA,OAAAkG,MAAA,SAAAC,eAAA,UAAgHC,YAAA5C,EAAA6C,KAAsBC,IAAA,UAAAC,GAAA,SAAAC,GAAiC,OAAA7C,EAAA,aAAwBQ,OAAO5B,KAAA,OAAAwC,KAAA,SAA6B6B,UAAW3C,MAAA,SAAAC,GAAyB,OAAAV,EAAAT,kBAAAyD,EAAAC,IAAAnG,WAAgDkD,EAAAM,GAAA,eAAAN,EAAAO,GAAAP,EAAAf,GAAA,2CAA8E,YGY/0M,EACA,KACA,KACA,MAIAa,EAAAuD,QAAAC,OAAA,YACeC,EAAA,QAAAzD,6CCpBf,IAAA0D,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAAud","file":"static/js/chunk-7c6b.56a14571.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"invites-container\"},[_c('div',{staticClass:\"invites-header-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('invites.inviteTokens')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"actions-container\"},[_c('el-button',{staticClass:\"create-invite-token\",on:{\"click\":function($event){_vm.createTokenDialogVisible = true}}},[_c('span',[_c('i',{staticClass:\"icon el-icon-plus\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.createInviteToken'))+\"\\n \")])]),_vm._v(\" \"),_c('el-button',{staticClass:\"invite-via-email\",on:{\"click\":function($event){_vm.inviteUserDialogVisible = true}}},[_c('span',[_c('i',{staticClass:\"icon el-icon-message\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.inviteUserViaEmail'))+\"\\n \")])])],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.createTokenDialogVisible,\"show-close\":false,\"title\":_vm.$t('invites.createInviteToken'),\"custom-class\":\"create-new-token-dialog\"},on:{\"update:visible\":function($event){_vm.createTokenDialogVisible=$event}}},[_c('el-form',{ref:\"newTokenForm\",attrs:{\"model\":_vm.newTokenForm,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.maxUse')}},[_c('el-input-number',{attrs:{\"min\":0,\"size\":_vm.isDesktop ? 'medium' : 'small',\"name\":\"maxUse\"},model:{value:(_vm.newTokenForm.maxUse),callback:function ($$v) {_vm.$set(_vm.newTokenForm, \"maxUse\", $$v)},expression:\"newTokenForm.maxUse\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.expiresAt')}},[_c('el-date-picker',{staticClass:\"pick-date\",attrs:{\"placeholder\":_vm.$t('invites.pickDate'),\"type\":\"date\",\"name\":\"date\",\"value-format\":\"yyyy-MM-dd\"},model:{value:(_vm.newTokenForm.expiresAt),callback:function ($$v) {_vm.$set(_vm.newTokenForm, \"expiresAt\", $$v)},expression:\"newTokenForm.expiresAt\"}})],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{staticClass:\"invites-close-dialog\",on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('invites.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.createToken}},[_vm._v(_vm._s(_vm.$t('invites.create')))])],1),_vm._v(\" \"),('token' in _vm.newToken)?_c('el-card',[_c('div',{staticClass:\"clearfix\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('span',[_vm._v(_vm._s(_vm.$t('invites.tokenCreated')))])]),_vm._v(\" \"),_c('el-form',{staticClass:\"new-token-card\",attrs:{\"label-width\":\"85px\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.inviteLink')}},[_c('el-link',{attrs:{\"href\":_vm.inviteLink,\"underline\":false,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.inviteLink)+\"\\n \")])],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.token')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.token)+\"\\n \")]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.maxUse')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.maxUse)+\"\\n \")]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.expiresAt')}},[_vm._v(\"\\n \"+_vm._s(_vm.newToken.expiresAt || '(not set)')+\"\\n \")])],1)],1):_vm._e()],1),_vm._v(\" \"),_c('el-dialog',{attrs:{\"visible\":_vm.inviteUserDialogVisible,\"show-close\":false,\"title\":_vm.$t('invites.sendRegistration'),\"custom-class\":\"invite-via-email-dialog\"},on:{\"update:visible\":function($event){_vm.inviteUserDialogVisible=$event}}},[_c('div',[_c('p',{staticClass:\"info\"},[_vm._v(_vm._s(_vm.$t('invites.inviteViaEmailAlert')))]),_vm._v(\" \"),_c('el-form',{ref:\"inviteUserForm\",attrs:{\"model\":_vm.inviteUserForm,\"rules\":_vm.rules,\"label-width\":_vm.getLabelWidth,\"status-icon\":\"\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.email'),\"prop\":\"email\"}},[_c('el-input',{attrs:{\"name\":\"email\",\"type\":\"email\",\"autofocus\":\"\"},model:{value:(_vm.inviteUserForm.email),callback:function ($$v) {_vm.$set(_vm.inviteUserForm, \"email\", $$v)},expression:\"inviteUserForm.email\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('invites.name'),\"prop\":\"name\"}},[_c('el-input',{attrs:{\"name\":\"name\"},model:{value:(_vm.inviteUserForm.name),callback:function ($$v) {_vm.$set(_vm.inviteUserForm, \"name\", $$v)},expression:\"inviteUserForm.name\"}})],1)],1)],1),_vm._v(\" \"),_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{on:{\"click\":_vm.closeDialogWindow}},[_vm._v(_vm._s(_vm.$t('invites.cancel')))]),_vm._v(\" \"),_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.inviteUserViaEmail}},[_vm._v(_vm._s(_vm.$t('invites.create')))])],1)]),_vm._v(\" \"),_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"invite-token-table\",attrs:{\"data\":_vm.tokens,\"default-sort\":{prop: 'used', order: 'ascending'}}},[(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.id'),\"min-width\":\"60\",\"prop\":\"id\",\"sortable\":\"\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.token'),\"min-width\":_vm.isDesktop ? 320 : 120,\"prop\":\"token\"}}),_vm._v(\" \"),(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.expiresAt'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"110\",\"prop\":\"expires_at\",\"sortable\":\"\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.maxUse'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"60\",\"prop\":\"max_use\",\"sortable\":\"\"}}),_vm._v(\" \"),(_vm.isDesktop)?_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.uses'),\"align\":\"center\",\"header-align\":\"center\",\"min-width\":\"60\",\"prop\":\"uses\"}}):_vm._e(),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.used'),\"min-width\":_vm.isDesktop ? 60 : 50,\"align\":\"center\",\"header-align\":\"center\",\"prop\":\"used\",\"sortable\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-tag',{attrs:{\"type\":scope.row.used ? 'danger' : 'success',\"disable-transitions\":\"\"}},[_vm._v(\"\\n \"+_vm._s(scope.row.used ? _vm.$t('invites.used') : _vm.$t('invites.active'))+\"\\n \")])]}}])}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('invites.actions'),\"min-width\":_vm.isDesktop ? 100 : 50,\"align\":\"center\",\"header-align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{attrs:{\"type\":\"text\",\"size\":\"small\"},nativeOn:{\"click\":function($event){return _vm.revokeInviteToken(scope.row.token)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('invites.revoke'))+\"\\n \")])]}}])})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"invites-container\">\n <div class=\"invites-header-container\">\n <h1>{{ $t('invites.inviteTokens') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"actions-container\">\n <el-button class=\"create-invite-token\" @click=\"createTokenDialogVisible = true\">\n <span>\n <i class=\"icon el-icon-plus\"/>\n {{ $t('invites.createInviteToken') }}\n </span>\n </el-button>\n <el-button class=\"invite-via-email\" @click=\"inviteUserDialogVisible = true\">\n <span>\n <i class=\"icon el-icon-message\"/>\n {{ $t('invites.inviteUserViaEmail') }}\n </span>\n </el-button>\n </div>\n <el-dialog\n :visible.sync=\"createTokenDialogVisible\"\n :show-close=\"false\"\n :title=\"$t('invites.createInviteToken')\"\n custom-class=\"create-new-token-dialog\">\n <el-form ref=\"newTokenForm\" :model=\"newTokenForm\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('invites.maxUse')\">\n <el-input-number\n v-model=\"newTokenForm.maxUse\"\n :min=\"0\"\n :size=\"isDesktop ? 'medium' : 'small'\"\n name=\"maxUse\"/>\n </el-form-item>\n <el-form-item :label=\"$t('invites.expiresAt')\">\n <el-date-picker\n v-model=\"newTokenForm.expiresAt\"\n :placeholder=\"$t('invites.pickDate')\"\n class=\"pick-date\"\n type=\"date\"\n name=\"date\"\n value-format=\"yyyy-MM-dd\"/>\n </el-form-item>\n </el-form>\n <span slot=\"footer\">\n <el-button class=\"invites-close-dialog\" @click=\"closeDialogWindow\">{{ $t('invites.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"createToken\">{{ $t('invites.create') }}</el-button>\n </span>\n <el-card v-if=\"'token' in newToken\">\n <div slot=\"header\" class=\"clearfix\">\n <span>{{ $t('invites.tokenCreated') }}</span>\n </div>\n <el-form label-width=\"85px\" class=\"new-token-card\">\n <el-form-item :label=\"$t('invites.inviteLink')\">\n <el-link :href=\"inviteLink\" :underline=\"false\" target=\"_blank\">\n {{ inviteLink }}\n </el-link>\n </el-form-item>\n <el-form-item :label=\"$t('invites.token')\">\n {{ newToken.token }}\n </el-form-item>\n <el-form-item :label=\"$t('invites.maxUse')\">\n {{ newToken.maxUse }}\n </el-form-item>\n <el-form-item :label=\"$t('invites.expiresAt')\">\n {{ newToken.expiresAt || '(not set)' }}\n </el-form-item>\n </el-form>\n </el-card>\n </el-dialog>\n <el-dialog\n :visible.sync=\"inviteUserDialogVisible\"\n :show-close=\"false\"\n :title=\"$t('invites.sendRegistration')\"\n custom-class=\"invite-via-email-dialog\">\n <div>\n <p class=\"info\">{{ $t('invites.inviteViaEmailAlert') }}</p>\n <el-form ref=\"inviteUserForm\" :model=\"inviteUserForm\" :rules=\"rules\" :label-width=\"getLabelWidth\" status-icon>\n <el-form-item :label=\"$t('invites.email')\" prop=\"email\">\n <el-input v-model=\"inviteUserForm.email\" name=\"email\" type=\"email\" autofocus/>\n </el-form-item>\n <el-form-item :label=\"$t('invites.name')\" prop=\"name\">\n <el-input v-model=\"inviteUserForm.name\" name=\"name\"/>\n </el-form-item>\n </el-form>\n </div>\n <span slot=\"footer\">\n <el-button @click=\"closeDialogWindow\">{{ $t('invites.cancel') }}</el-button>\n <el-button type=\"primary\" @click=\"inviteUserViaEmail\">{{ $t('invites.create') }}</el-button>\n </span>\n </el-dialog>\n <el-table\n v-loading=\"loading\"\n :data=\"tokens\"\n :default-sort = \"{prop: 'used', order: 'ascending'}\"\n class=\"invite-token-table\">\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.id')\"\n min-width=\"60\"\n prop=\"id\"\n sortable/>\n <el-table-column\n :label=\"$t('invites.token')\"\n :min-width=\"isDesktop ? 320 : 120\"\n prop=\"token\"/>\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.expiresAt')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"110\"\n prop=\"expires_at\"\n sortable/>\n <el-table-column\n :label=\"$t('invites.maxUse')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"60\"\n prop=\"max_use\"\n sortable/>\n <el-table-column\n v-if=\"isDesktop\"\n :label=\"$t('invites.uses')\"\n align=\"center\"\n header-align=\"center\"\n min-width=\"60\"\n prop=\"uses\"/>\n <el-table-column\n :label=\"$t('invites.used')\"\n :min-width=\"isDesktop ? 60 : 50\"\n align=\"center\"\n header-align=\"center\"\n prop=\"used\"\n sortable>\n <template slot-scope=\"scope\">\n <el-tag\n :type=\"scope.row.used ? 'danger' : 'success'\"\n disable-transitions>\n {{ scope.row.used ? $t('invites.used') : $t('invites.active') }}\n </el-tag>\n </template>\n </el-table-column>\n <el-table-column\n :label=\"$t('invites.actions')\"\n :min-width=\"isDesktop ? 100 : 50\"\n align=\"center\"\n header-align=\"center\">\n <template slot-scope=\"scope\">\n <el-button type=\"text\" size=\"small\" @click.native=\"revokeInviteToken(scope.row.token)\">\n {{ $t('invites.revoke') }}\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n </div>\n</template>\n\n<script>\nimport RebootButton from '@/components/RebootButton'\nimport { mapGetters } from 'vuex'\nimport { baseName } from '@/api/utils'\n\nexport default {\n components: { RebootButton },\n data() {\n return {\n rules: {\n email: [\n { validator: this.validateEmail, trigger: 'blur' }\n ]\n },\n newTokenForm: {\n maxUse: 1,\n expiresAt: ''\n },\n inviteUserForm: {\n email: '',\n name: ''\n },\n createTokenDialogVisible: false,\n inviteUserDialogVisible: false\n }\n },\n computed: {\n ...mapGetters([\n 'authHost'\n ]),\n getLabelWidth() {\n return this.isDesktop ? '100px' : '85px'\n },\n inviteLink() {\n return `${baseName(this.authHost)}/registration/${this.newToken.token}`\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.invites.loading\n },\n newToken() {\n return this.$store.state.invites.newToken\n },\n tokens() {\n return this.$store.state.invites.inviteTokens\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchInviteTokens')\n },\n methods: {\n closeDialogWindow() {\n this.inviteUserDialogVisible = false\n this.createTokenDialogVisible = false\n this.$store.dispatch('RemoveNewToken')\n this.$data.inviteUserForm.email = ''\n this.$data.inviteUserForm.name = ''\n },\n createToken() {\n this.$store.dispatch('GenerateInviteToken', this.$data.newTokenForm)\n },\n async inviteUserViaEmail() {\n this.$refs['inviteUserForm'].validate(async(valid) => {\n if (valid) {\n await this.$store.dispatch('InviteUserViaEmail', this.$data.inviteUserForm)\n this.closeDialogWindow()\n } else {\n this.$message({\n type: 'error',\n message: this.$t('invites.submitFormError')\n })\n return false\n }\n })\n },\n revokeInviteToken(token) {\n this.$store.dispatch('RevokeToken', token)\n },\n validateEmail(rule, value, callback) {\n if (value === '') {\n return callback(new Error(this.$t('invites.emptyEmailError')))\n } else if (!this.validEmail(value)) {\n return callback(new Error(this.$t('invites.invalidEmailError')))\n } else {\n return callback()\n }\n },\n validEmail(email) {\n const re = /^[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])?)*$/\n return re.test(email)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.invites-container {\n .actions-container {\n display: flex;\n height: 36px;\n justify-content: space-between;\n align-items: center;\n margin: 15px 15px 15px 15px;\n }\n .create-invite-token {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .create-new-token-dialog {\n width: 50%;\n a {\n margin-bottom: 3px;\n }\n .el-card__body {\n padding: 10px 20px;\n }\n }\n .el-dialog__body {\n padding: 5px 20px 0 20px\n }\n h1 {\n margin: 0;\n }\n .icon {\n margin-right: 5px;\n }\n .invite-token-table {\n width: 100%;\n margin: 0 15px;\n }\n .invite-via-email {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .invite-via-email-dialog {\n width: 50%\n }\n .invites-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n }\n .info {\n color: #666666;\n font-size: 13px;\n line-height: 22px;\n margin: 0 0 10px 0;\n }\n .new-token-card {\n .el-form-item {\n margin: 0;\n }\n }\n .reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .invites-container {\n .actions-container {\n display: flex;\n height: 82px;\n flex-direction: column;\n align-items: center;\n margin: 15px 10px 7px 10px;\n }\n .cell {\n padding: 0;\n }\n .create-invite-token {\n width: 100%;\n }\n .create-new-token-dialog {\n width: 85%\n }\n .el-date-editor {\n width: 150px;\n }\n .el-dialog__body {\n padding: 5px 15px 0 15px\n }\n h1 {\n margin: 0;\n }\n .invite-token-table {\n width: 100%;\n margin: 0 5px;\n font-size: 12px;\n font-weight: 500;\n }\n .invite-via-email {\n width: 100%;\n margin: 10px 0 0 0;\n }\n .invite-via-email-dialog {\n width: 85%\n }\n .invites-header-container {\n margin: 0 10px;\n }\n .info {\n margin: 0 0 10px 5px;\n }\n th {\n .cell {\n padding: 0;\n }\n }\n }\n .create-invite-token {\n width: 100%\n }\n .invite-via-email {\n width: 100%\n }\n}\n</style>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=92978bf4&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-850d.3e6102c2.js b/priv/static/adminfe/static/js/chunk-850d.3e6102c2.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-850d"],{"07OA":function(t,e,s){"use strict";var a=s("51EY");s.n(a).a},"4rb0":function(t,e,s){},"51EY":function(t,e,s){},"5tnn":function(t,e,s){"use strict";var a=s("V/GZ");s.n(a).a},"G/Mk":function(t,e,s){"use strict";var a=s("xdcp");s.n(a).a},RnhZ:function(t,e,s){var a={"./af":"K/tc","./af.js":"K/tc","./ar":"jnO4","./ar-dz":"o1bE","./ar-dz.js":"o1bE","./ar-kw":"Qj4J","./ar-kw.js":"Qj4J","./ar-ly":"HP3h","./ar-ly.js":"HP3h","./ar-ma":"CoRJ","./ar-ma.js":"CoRJ","./ar-sa":"gjCT","./ar-sa.js":"gjCT","./ar-tn":"bYM6","./ar-tn.js":"bYM6","./ar.js":"jnO4","./az":"SFxW","./az.js":"SFxW","./be":"H8ED","./be.js":"H8ED","./bg":"hKrs","./bg.js":"hKrs","./bm":"p/rL","./bm.js":"p/rL","./bn":"kEOa","./bn.js":"kEOa","./bo":"0mo+","./bo.js":"0mo+","./br":"aIdf","./br.js":"aIdf","./bs":"JVSJ","./bs.js":"JVSJ","./ca":"1xZ4","./ca.js":"1xZ4","./cs":"PA2r","./cs.js":"PA2r","./cv":"A+xa","./cv.js":"A+xa","./cy":"l5ep","./cy.js":"l5ep","./da":"DxQv","./da.js":"DxQv","./de":"tGlX","./de-at":"s+uk","./de-at.js":"s+uk","./de-ch":"u3GI","./de-ch.js":"u3GI","./de.js":"tGlX","./dv":"WYrj","./dv.js":"WYrj","./el":"jUeY","./el.js":"jUeY","./en-au":"Dmvi","./en-au.js":"Dmvi","./en-ca":"OIYi","./en-ca.js":"OIYi","./en-gb":"Oaa7","./en-gb.js":"Oaa7","./en-ie":"4dOw","./en-ie.js":"4dOw","./en-il":"czMo","./en-il.js":"czMo","./en-in":"7C5Q","./en-in.js":"7C5Q","./en-nz":"b1Dy","./en-nz.js":"b1Dy","./en-sg":"t+mt","./en-sg.js":"t+mt","./eo":"Zduo","./eo.js":"Zduo","./es":"iYuL","./es-do":"CjzT","./es-do.js":"CjzT","./es-us":"Vclq","./es-us.js":"Vclq","./es.js":"iYuL","./et":"7BjC","./et.js":"7BjC","./eu":"D/JM","./eu.js":"D/JM","./fa":"jfSC","./fa.js":"jfSC","./fi":"gekB","./fi.js":"gekB","./fil":"1ppg","./fil.js":"1ppg","./fo":"ByF4","./fo.js":"ByF4","./fr":"nyYc","./fr-ca":"2fjn","./fr-ca.js":"2fjn","./fr-ch":"Dkky","./fr-ch.js":"Dkky","./fr.js":"nyYc","./fy":"cRix","./fy.js":"cRix","./ga":"USCx","./ga.js":"USCx","./gd":"9rRi","./gd.js":"9rRi","./gl":"iEDd","./gl.js":"iEDd","./gom-deva":"qvJo","./gom-deva.js":"qvJo","./gom-latn":"DKr+","./gom-latn.js":"DKr+","./gu":"4MV3","./gu.js":"4MV3","./he":"x6pH","./he.js":"x6pH","./hi":"3E1r","./hi.js":"3E1r","./hr":"S6ln","./hr.js":"S6ln","./hu":"WxRl","./hu.js":"WxRl","./hy-am":"1rYy","./hy-am.js":"1rYy","./id":"UDhR","./id.js":"UDhR","./is":"BVg3","./is.js":"BVg3","./it":"bpih","./it-ch":"bxKX","./it-ch.js":"bxKX","./it.js":"bpih","./ja":"B55N","./ja.js":"B55N","./jv":"tUCv","./jv.js":"tUCv","./ka":"IBtZ","./ka.js":"IBtZ","./kk":"bXm7","./kk.js":"bXm7","./km":"6B0Y","./km.js":"6B0Y","./kn":"PpIw","./kn.js":"PpIw","./ko":"Ivi+","./ko.js":"Ivi+","./ku":"JCF/","./ku.js":"JCF/","./ky":"lgnt","./ky.js":"lgnt","./lb":"RAwQ","./lb.js":"RAwQ","./lo":"sp3z","./lo.js":"sp3z","./lt":"JvlW","./lt.js":"JvlW","./lv":"uXwI","./lv.js":"uXwI","./me":"KTz0","./me.js":"KTz0","./mi":"aIsn","./mi.js":"aIsn","./mk":"aQkU","./mk.js":"aQkU","./ml":"AvvY","./ml.js":"AvvY","./mn":"lYtQ","./mn.js":"lYtQ","./mr":"Ob0Z","./mr.js":"Ob0Z","./ms":"6+QB","./ms-my":"ZAMP","./ms-my.js":"ZAMP","./ms.js":"6+QB","./mt":"G0Uy","./mt.js":"G0Uy","./my":"honF","./my.js":"honF","./nb":"bOMt","./nb.js":"bOMt","./ne":"OjkT","./ne.js":"OjkT","./nl":"+s0g","./nl-be":"2ykv","./nl-be.js":"2ykv","./nl.js":"+s0g","./nn":"uEye","./nn.js":"uEye","./oc-lnc":"Fnuy","./oc-lnc.js":"Fnuy","./pa-in":"8/+R","./pa-in.js":"8/+R","./pl":"jVdC","./pl.js":"jVdC","./pt":"8mBD","./pt-br":"0tRk","./pt-br.js":"0tRk","./pt.js":"8mBD","./ro":"lyxo","./ro.js":"lyxo","./ru":"lXzo","./ru.js":"lXzo","./sd":"Z4QM","./sd.js":"Z4QM","./se":"//9w","./se.js":"//9w","./si":"7aV9","./si.js":"7aV9","./sk":"e+ae","./sk.js":"e+ae","./sl":"gVVK","./sl.js":"gVVK","./sq":"yPMs","./sq.js":"yPMs","./sr":"zx6S","./sr-cyrl":"E+lV","./sr-cyrl.js":"E+lV","./sr.js":"zx6S","./ss":"Ur1D","./ss.js":"Ur1D","./sv":"X709","./sv.js":"X709","./sw":"dNwA","./sw.js":"dNwA","./ta":"PeUW","./ta.js":"PeUW","./te":"XLvN","./te.js":"XLvN","./tet":"V2x9","./tet.js":"V2x9","./tg":"Oxv6","./tg.js":"Oxv6","./th":"EOgW","./th.js":"EOgW","./tk":"Wv91","./tk.js":"Wv91","./tl-ph":"Dzi0","./tl-ph.js":"Dzi0","./tlh":"z3Vd","./tlh.js":"z3Vd","./tr":"DoHr","./tr.js":"DoHr","./tzl":"z1FC","./tzl.js":"z1FC","./tzm":"wQk9","./tzm-latn":"tT3J","./tzm-latn.js":"tT3J","./tzm.js":"wQk9","./ug-cn":"YRex","./ug-cn.js":"YRex","./uk":"raLr","./uk.js":"raLr","./ur":"UpQW","./ur.js":"UpQW","./uz":"Loxo","./uz-latn":"AQ68","./uz-latn.js":"AQ68","./uz.js":"Loxo","./vi":"KSF8","./vi.js":"KSF8","./x-pseudo":"/X5v","./x-pseudo.js":"/X5v","./yo":"fzPg","./yo.js":"fzPg","./zh-cn":"XDpg","./zh-cn.js":"XDpg","./zh-hk":"SatO","./zh-hk.js":"SatO","./zh-mo":"OmwH","./zh-mo.js":"OmwH","./zh-tw":"kOpN","./zh-tw.js":"kOpN"};function r(t){var e=n(t);return s(e)}function n(t){if(!s.o(a,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return a[t]}r.keys=function(){return Object.keys(a)},r.resolve=n,t.exports=r,r.id="RnhZ"},"V/GZ":function(t,e,s){},cEOe:function(t,e,s){"use strict";s.r(e);var a=s("ZhIB"),r=s.n(a),n=s("wd/R"),o=s.n(n),i={name:"NoteCard",props:{report:{type:Object,required:!0},note:{type:Object,required:!0}},methods:{handleNoteDeletion:function(t,e){var s=this;this.$confirm("Are you sure you want to delete this note?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteReportNote",{noteID:t,reportID:e}),s.$message({type:"success",message:"Delete completed"})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},parseTimestamp:function(t){return o()(t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,e){return t[e]}}},c=(s("G/Mk"),s("KHd+")),l=Object(c.a)(i,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-card",{staticClass:"note-card"},[s("div",{attrs:{slot:"header"},slot:"header"},[s("div",{staticClass:"note-header"},[t.propertyExists(t.note.user,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.note.user.id}}}},[s("div",{staticClass:"note-actor"},[t.propertyExists(t.note.user,"avatar")?s("img",{staticClass:"note-avatar-img",attrs:{src:t.note.user.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(t.note.user,"nickname")?s("span",{staticClass:"note-actor-name"},[t._v(t._s(t.note.user.nickname))]):s("span",{staticClass:"note-actor-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])])]):t._e(),t._v(" "),s("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.handleNoteDeletion(t.note.id,t.report.id)}}},[t._v("\n "+t._s(t.$t("reports.deleteNote"))+"\n ")])],1)]),t._v(" "),s("div",{staticClass:"note-body"},[s("span",{staticClass:"note-content",domProps:{innerHTML:t._s(t.note.content)}}),t._v("\n "+t._s(t.parseTimestamp(t.note.created_at))+"\n ")])])},[],!1,null,null,null);l.options.__file="NoteCard.vue";var u=l.exports,d=s("ot3S"),p={name:"ModerateUserDropdown",props:{account:{type:Object,required:!0},reportId:{type:String,required:!0}},computed:{tagPolicyEnabled:function(){return this.$store.state.users.mrfPolicies.includes("Pleroma.Web.ActivityPub.MRF.TagPolicy")},tags:function(){return this.account.tags||[]}},methods:{enableTagPolicy:function(){var t=this;this.$confirm(this.$t("users.confirmEnablingTagPolicy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$message({type:"success",message:t.$t("users.enableTagPolicySuccessMessage")}),t.$store.dispatch("EnableTagPolicy")}).catch(function(){t.$message({type:"info",message:"Canceled"})})},handleDeactivation:function(t){t.deactivated?this.$store.dispatch("ActivateUserFromReports",{user:t,reportId:this.reportId}):this.$store.dispatch("DeactivateUserFromReports",{user:t,reportId:this.reportId})},handleDeletion:function(t){var e=this;this.$confirm(this.$t("users.deleteUserConfirmation"),{confirmButtonText:"Delete",cancelButtonText:"Cancel",type:"warning"}).then(function(){e.$store.dispatch("DeleteUserFromReports",{user:t,reportId:e.reportId})}).catch(function(){e.$message({type:"info",message:"Delete canceled"})})},showDeactivatedButton:function(t){return this.$store.state.user.id!==t},toggleTag:function(t,e){t.tags.includes(e)?this.$store.dispatch("RemoveTagFromReports",{user:t,tag:e,reportId:this.reportId}):this.$store.dispatch("AddTagFromReports",{user:t,tag:e,reportId:this.reportId})}}},v=Object(c.a)(p,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-dropdown",{attrs:{"hide-on-click":!1,trigger:"click"}},[s("el-button",{attrs:{disabled:!t.account.id,plain:"",size:"small",icon:"el-icon-files"}},[t._v(t._s(t.$t("reports.moderateUser"))+"\n "),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),s("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t.showDeactivatedButton(t.account)?s("el-dropdown-item",{nativeOn:{click:function(e){return t.handleDeactivation(t.account)}}},[t._v("\n "+t._s(t.account.deactivated?t.$t("users.activateAccount"):t.$t("users.deactivateAccount"))+"\n ")]):t._e(),t._v(" "),t.showDeactivatedButton(t.account.id)?s("el-dropdown-item",{nativeOn:{click:function(e){return t.handleDeletion(t.account)}}},[t._v("\n "+t._s(t.$t("users.deleteAccount"))+"\n ")]):t._e(),t._v(" "),t.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:media-force-nsfw")},attrs:{divided:!0},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.forceNsfw"))+"\n "),t.tags.includes("mrf_tag:media-force-nsfw")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:media-strip")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.stripMedia"))+"\n "),t.tags.includes("mrf_tag:media-strip")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:force-unlisted")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.forceUnlisted"))+"\n "),t.tags.includes("mrf_tag:force-unlisted")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:sandbox")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.sandbox"))+"\n "),t.tags.includes("mrf_tag:sandbox")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled&&t.account.local?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:disable-remote-subscription")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.disableRemoteSubscription"))+"\n "),t.tags.includes("mrf_tag:disable-remote-subscription")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled&&t.account.local?s("el-dropdown-item",{class:{"active-tag":t.tags.includes("mrf_tag:disable-any-subscription")},nativeOn:{click:function(e){return t.toggleTag(t.account,"mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.disableAnySubscription"))+"\n "),t.tags.includes("mrf_tag:disable-any-subscription")?s("i",{staticClass:"el-icon-check"}):t._e()]):t._e(),t._v(" "),t.tagPolicyEnabled?t._e():s("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""},nativeOn:{click:function(e){return t.enableTagPolicy(e)}}},[t._v("\n "+t._s(t.$t("users.enableTagPolicy"))+"\n ")])],1)],1)},[],!1,null,null,null);v.options.__file="ModerateUserDropdown.vue";var m=v.exports,g={name:"Report",components:{Status:d.a,ModerateUserDropdown:m,NoteCard:u},props:{reports:{type:Array,required:!0}},data:function(){return{notes:{}}},computed:{loading:function(){return this.$store.state.reports.loading},pageSize:function(){return this.$store.state.reports.pageSize},totalReportsCount:function(){return this.$store.state.reports.totalReportsCount},currentPage:function(){return this.$store.state.reports.currentPage}},methods:{changeReportState:function(t,e){this.$store.dispatch("ChangeReportState",[{state:t,id:e}])},capitalizeFirstLetter:function(t){return t.charAt(0).toUpperCase()+t.slice(1)},getStateType:function(t){switch(t){case"closed":return"info";case"resolved":return"success";default:return"primary"}},getStatusesTitle:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return"Reported statuses: ".concat(t.length," item(s)")},getNotesTitle:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return"Notes: ".concat(t.length," item(s)")},handleNewNote:function(t){this.$store.dispatch("CreateReportNote",{content:this.notes[t],reportID:t}),this.notes[t]=""},handlePageChange:function(t){this.$store.dispatch("FetchReports",t)},parseTimestamp:function(t){return o()(t).format("L HH:mm")},propertyExists:function(t,e,s){return s?t[e]&&t[s]:t[e]},showStatuses:function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).length>0}}},h=(s("07OA"),Object(c.a)(g,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",[s("el-timeline",{staticClass:"reports-timeline"},t._l(t.reports,function(e){return s("el-timeline-item",{key:e.id,staticClass:"timeline-item-container",attrs:{timestamp:t.parseTimestamp(e.created_at),placement:"top"}},[s("el-card",{staticClass:"report"},[s("div",{staticClass:"report-header-container"},[s("div",{staticClass:"title-container"},[t.propertyExists(e.account,"nickname")?s("h3",{staticClass:"report-title"},[t._v(t._s(t.$t("reports.reportOn"))+" "+t._s(e.account.nickname))]):s("h3",{staticClass:"report-title"},[t._v(t._s(t.$t("reports.report")))]),t._v(" "),t.propertyExists(e.account,"id")?s("h5",{staticClass:"id"},[t._v(t._s(t.$t("reports.id"))+": "+t._s(e.id))]):t._e()]),t._v(" "),s("div",[s("el-tag",{staticClass:"report-tag",attrs:{type:t.getStateType(e.state),size:"large"}},[t._v(t._s(t.capitalizeFirstLetter(e.state)))]),t._v(" "),s("el-dropdown",{attrs:{trigger:"click"}},[s("el-button",{staticClass:"report-actions-button",attrs:{plain:"",size:"small",icon:"el-icon-edit"}},[t._v(t._s(t.$t("reports.changeState"))),s("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),s("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},["resolved"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("resolved",e.id)}}},[t._v(t._s(t.$t("reports.resolve")))]):t._e(),t._v(" "),"open"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("open",e.id)}}},[t._v(t._s(t.$t("reports.reopen")))]):t._e(),t._v(" "),"closed"!==e.state?s("el-dropdown-item",{nativeOn:{click:function(s){return t.changeReportState("closed",e.id)}}},[t._v(t._s(t.$t("reports.close")))]):t._e()],1)],1),t._v(" "),t.propertyExists(e.account,"nickname")?s("moderate-user-dropdown",{attrs:{account:e.account,"report-id":e.id}}):t._e()],1)]),t._v(" "),s("el-divider",{staticClass:"divider"}),t._v(" "),s("div",{staticClass:"report-account-container"},[s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.account"))+":")]),t._v(" "),s("div",{staticClass:"report-account"},[t.propertyExists(e.account,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:e.account.id}}}},[t.propertyExists(e.account,"avatar")?s("img",{staticClass:"avatar-img",attrs:{src:e.account.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(e.account,"nickname")?s("span",{staticClass:"report-account-name"},[t._v(t._s(e.account.nickname))]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")]),t._v(" "),t.propertyExists(e.account,"url")?s("a",{staticClass:"account",attrs:{href:e.account.url,target:"_blank"}},[t._v("\n "+t._s(t.$t("userProfile.openAccountInInstance"))+"\n "),s("i",{staticClass:"el-icon-top-right"})]):t._e()],1)]),t._v(" "),e.content&&e.content.length>0?s("div",[s("el-divider",{staticClass:"divider"}),t._v(" "),s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.content"))+":\n "),s("span",[t._v(t._s(e.content))])])],1):t._e(),t._v(" "),s("el-divider",{staticClass:"divider"}),t._v(" "),s("div",{staticClass:"report-account-container",style:t.showStatuses(e.statuses)?"":"margin-bottom:15px"},[s("span",{staticClass:"report-row-key"},[t._v(t._s(t.$t("reports.actor"))+":")]),t._v(" "),s("div",{staticClass:"report-account"},[t.propertyExists(e.actor,"id")?s("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:e.actor.id}}}},[t.propertyExists(e.actor,"avatar")?s("img",{staticClass:"avatar-img",attrs:{src:e.actor.avatar,alt:"avatar"}}):t._e(),t._v(" "),t.propertyExists(e.actor,"nickname")?s("span",{staticClass:"report-account-name"},[t._v(t._s(e.actor.nickname))]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])]):s("span",{staticClass:"report-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")]),t._v(" "),t.propertyExists(e.actor,"url")?s("a",{staticClass:"account",attrs:{href:e.actor.url,target:"_blank"}},[t._v("\n "+t._s(t.$t("userProfile.openAccountInInstance"))+"\n "),s("i",{staticClass:"el-icon-top-right"})]):t._e()],1)]),t._v(" "),t.showStatuses(e.statuses)?s("div",{staticClass:"reported-statuses"},[s("el-collapse",[s("el-collapse-item",{attrs:{title:t.getStatusesTitle(e.statuses)}},t._l(e.statuses,function(a){return s("div",{key:a.id},[s("status",{attrs:{status:a,account:a.account.nickname?a.account:e.account,"show-checkbox":!1,page:t.currentPage}})],1)}),0)],1)],1):t._e(),t._v(" "),s("div",{staticClass:"report-notes"},[s("el-collapse",[s("el-collapse-item",{attrs:{title:t.getNotesTitle(e.notes)}},t._l(e.notes,function(t,a){return s("note-card",{key:a,attrs:{note:t,report:e}})}),1)],1),t._v(" "),s("div",{staticClass:"report-note-form"},[s("el-input",{attrs:{placeholder:t.$t("reports.leaveNote"),type:"textarea",rows:"2"},model:{value:t.notes[e.id],callback:function(s){t.$set(t.notes,e.id,s)},expression:"notes[report.id]"}}),t._v(" "),s("div",{staticClass:"report-post-note"},[s("el-button",{on:{click:function(s){return t.handleNewNote(e.id)}}},[t._v(t._s(t.$t("reports.postNote")))])],1)],1)],1)],1)],1)}),1),t._v(" "),t.loading?t._e():s("div",{staticClass:"reports-pagination"},[s("el-pagination",{attrs:{total:t.totalReportsCount,"current-page":t.currentPage,"page-size":t.pageSize,background:"",layout:"prev, pager, next"},on:{"current-change":t.handlePageChange}})],1)],1)},[],!1,null,null,null));h.options.__file="Report.vue";var _=h.exports,f=s("mSNy"),j={data:function(){return{filter:"open",options:[{value:"open",label:f.a.t("reportsFilter.open")},{value:"closed",label:f.a.t("reportsFilter.closed")},{value:"resolved",label:f.a.t("reportsFilter.resolved")}]}},created:function(){this.$store.dispatch("SetReportsFilter",this.$data.filter)},methods:{toggleFilters:function(){this.$store.dispatch("SetReportsFilter",this.$data.filter),this.$store.dispatch("ClearFetchedReports"),this.$store.dispatch("FetchReports",1)}}},b=(s("5tnn"),Object(c.a)(j,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("el-select",{staticClass:"select-field",attrs:{placeholder:t.$t("reportsFilter.inputPlaceholder"),clearable:"","value-key":"value"},on:{change:t.toggleFilters},model:{value:t.filter,callback:function(e){t.filter=e},expression:"filter"}},t._l(t.options,function(e){return s("el-option",{key:e.value,attrs:{label:e.label,value:e.value}},[t._v(t._s(e.label))])}),1)},[],!1,null,"5ab7c15a",null));b.options.__file="ReportsFilter.vue";var k=b.exports,y={components:{RebootButton:s("rIUS").a,Report:_,ReportsFilter:k},computed:{loading:function(){return this.$store.state.reports.loading},normalizedReportsCount:function(){return r()(this.$store.state.reports.totalReportsCount).format("0a")},reports:function(){return this.$store.state.reports.fetchedReports}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchTagPolicySetting"),this.$store.dispatch("FetchReports",1)}},C=(s("wnWh"),Object(c.a)(y,function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("div",{staticClass:"reports-container"},[s("div",{staticClass:"reports-header-container"},[s("h1",[t._v("\n "+t._s(t.$t("reports.reports"))+"\n "),s("span",{staticClass:"report-count"},[t._v("("+t._s(t.normalizedReportsCount)+")")])]),t._v(" "),s("reboot-button")],1),t._v(" "),s("div",{staticClass:"reports-filter-container"},[s("reports-filter")],1),t._v(" "),s("div",{staticClass:"block"},[s("report",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],attrs:{reports:t.reports}}),t._v(" "),0===t.reports.length?s("div",{staticClass:"no-reports-message"},[s("p",[t._v("There are no reports to display")])]):t._e()],1)])},[],!1,null,"6ac87f34",null));C.options.__file="index.vue";e.default=C.exports},wnWh:function(t,e,s){"use strict";var a=s("4rb0");s.n(a).a},xdcp:function(t,e,s){}}]); -//# sourceMappingURL=chunk-850d.3e6102c2.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-850d.3e6102c2.js.map b/priv/static/adminfe/static/js/chunk-850d.3e6102c2.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/reports/components/Report.vue?ad5f","webpack:///./src/views/reports/components/ReportsFilter.vue?5d06","webpack:///./src/views/reports/components/NoteCard.vue?b93a","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/views/reports/index.vue?8d7d","webpack:///./src/views/reports/components/NoteCard.vue?6205","webpack:///src/views/reports/components/NoteCard.vue","webpack:///./src/views/reports/components/NoteCard.vue","webpack:///./src/views/reports/components/NoteCard.vue?6977","webpack:///./src/views/reports/components/ModerateUserDropdown.vue?6745","webpack:///src/views/reports/components/ModerateUserDropdown.vue","webpack:///./src/views/reports/components/ModerateUserDropdown.vue","webpack:///./src/views/reports/components/ModerateUserDropdown.vue?6775","webpack:///./src/views/reports/components/Report.vue?a764","webpack:///src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue?022c","webpack:///./src/views/reports/components/ReportsFilter.vue?e3b7","webpack:///src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue?49ad","webpack:///./src/views/reports/index.vue?3bcc","webpack:///src/views/reports/index.vue","webpack:///./src/views/reports/index.vue","webpack:///./src/views/reports/index.vue?6a35"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Report_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ReportsFilter_vue_vue_type_style_index_0_id_5ab7c15a_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NoteCard_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","map","./af","./af.js","./ar","./ar-dz","./ar-dz.js","./ar-kw","./ar-kw.js","./ar-ly","./ar-ly.js","./ar-ma","./ar-ma.js","./ar-sa","./ar-sa.js","./ar-tn","./ar-tn.js","./ar.js","./az","./az.js","./be","./be.js","./bg","./bg.js","./bm","./bm.js","./bn","./bn.js","./bo","./bo.js","./br","./br.js","./bs","./bs.js","./ca","./ca.js","./cs","./cs.js","./cv","./cv.js","./cy","./cy.js","./da","./da.js","./de","./de-at","./de-at.js","./de-ch","./de-ch.js","./de.js","./dv","./dv.js","./el","./el.js","./en-au","./en-au.js","./en-ca","./en-ca.js","./en-gb","./en-gb.js","./en-ie","./en-ie.js","./en-il","./en-il.js","./en-in","./en-in.js","./en-nz","./en-nz.js","./en-sg","./en-sg.js","./eo","./eo.js","./es","./es-do","./es-do.js","./es-us","./es-us.js","./es.js","./et","./et.js","./eu","./eu.js","./fa","./fa.js","./fi","./fi.js","./fil","./fil.js","./fo","./fo.js","./fr","./fr-ca","./fr-ca.js","./fr-ch","./fr-ch.js","./fr.js","./fy","./fy.js","./ga","./ga.js","./gd","./gd.js","./gl","./gl.js","./gom-deva","./gom-deva.js","./gom-latn","./gom-latn.js","./gu","./gu.js","./he","./he.js","./hi","./hi.js","./hr","./hr.js","./hu","./hu.js","./hy-am","./hy-am.js","./id","./id.js","./is","./is.js","./it","./it-ch","./it-ch.js","./it.js","./ja","./ja.js","./jv","./jv.js","./ka","./ka.js","./kk","./kk.js","./km","./km.js","./kn","./kn.js","./ko","./ko.js","./ku","./ku.js","./ky","./ky.js","./lb","./lb.js","./lo","./lo.js","./lt","./lt.js","./lv","./lv.js","./me","./me.js","./mi","./mi.js","./mk","./mk.js","./ml","./ml.js","./mn","./mn.js","./mr","./mr.js","./ms","./ms-my","./ms-my.js","./ms.js","./mt","./mt.js","./my","./my.js","./nb","./nb.js","./ne","./ne.js","./nl","./nl-be","./nl-be.js","./nl.js","./nn","./nn.js","./oc-lnc","./oc-lnc.js","./pa-in","./pa-in.js","./pl","./pl.js","./pt","./pt-br","./pt-br.js","./pt.js","./ro","./ro.js","./ru","./ru.js","./sd","./sd.js","./se","./se.js","./si","./si.js","./sk","./sk.js","./sl","./sl.js","./sq","./sq.js","./sr","./sr-cyrl","./sr-cyrl.js","./sr.js","./ss","./ss.js","./sv","./sv.js","./sw","./sw.js","./ta","./ta.js","./te","./te.js","./tet","./tet.js","./tg","./tg.js","./th","./th.js","./tk","./tk.js","./tl-ph","./tl-ph.js","./tlh","./tlh.js","./tr","./tr.js","./tzl","./tzl.js","./tzm","./tzm-latn","./tzm-latn.js","./tzm.js","./ug-cn","./ug-cn.js","./uk","./uk.js","./ur","./ur.js","./uz","./uz-latn","./uz-latn.js","./uz.js","./vi","./vi.js","./x-pseudo","./x-pseudo.js","./yo","./yo.js","./zh-cn","./zh-cn.js","./zh-hk","./zh-hk.js","./zh-mo","./zh-mo.js","./zh-tw","./zh-tw.js","webpackContext","req","id","webpackContextResolve","o","e","Error","code","keys","Object","resolve","module","exports","components_NoteCardvue_type_script_lang_js_","name","props","report","type","required","note","methods","handleNoteDeletion","noteID","reportID","_this","this","$confirm","confirmButtonText","cancelButtonText","then","$store","dispatch","$message","message","catch","parseTimestamp","timestamp","moment_default","format","propertyExists","account","property","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","slot","user","to","params","src","avatar","alt","_e","_v","_s","nickname","$t","size","nativeOn","click","$event","domProps","innerHTML","content","created_at","options","__file","NoteCard","components_ModerateUserDropdownvue_type_script_lang_js_","reportId","String","computed","tagPolicyEnabled","state","users","mrfPolicies","includes","tags","enableTagPolicy","handleDeactivation","deactivated","handleDeletion","_this2","showDeactivatedButton","toggleTag","tag","ModerateUserDropdown_component","hide-on-click","trigger","disabled","plain","icon","class","active-tag","divided","local","ModerateUserDropdown","components_Reportvue_type_script_lang_js_","components","Status","reports","Array","data","notes","loading","pageSize","totalReportsCount","currentPage","changeReportState","capitalizeFirstLetter","str","charAt","toUpperCase","slice","getStateType","getStatusesTitle","statuses","arguments","length","undefined","concat","getNotesTitle","handleNewNote","handlePageChange","page","_secondProperty","showStatuses","Report_component","_l","key","placement","report-id","href","url","target","style","actor","title","status","show-checkbox","index","placeholder","rows","model","value","callback","$$v","$set","expression","on","total","current-page","page-size","background","layout","current-change","Report","components_ReportsFiltervue_type_script_lang_js_","filter","label","lang","t","created","$data","toggleFilters","ReportsFilter_component","clearable","value-key","change","item","ReportsFilter","views_reportsvue_type_script_lang_js_","RebootButton","normalizedReportsCount","numeral_default","fetchedReports","mounted","reports_component","directives","rawName","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_6ac87f34_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"wGAAA,IAAAA,EAAAC,EAAA,QAAAA,EAAAC,EAAAF,GAA0e,yFCA1e,IAAAG,EAAAF,EAAA,QAAAA,EAAAC,EAAAC,GAAygB,uCCAzgB,IAAAC,EAAAH,EAAA,QAAAA,EAAAC,EAAAE,GAA4e,wBCA5e,IAAAC,GACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,QAAA,OACAC,WAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,aAAA,OACAC,gBAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,WAAA,OACAC,cAAA,OACAC,UAAA,OACAC,aAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,aAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,UAAA,OACAC,OAAA,OACAC,U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","file":"static/js/chunk-850d.3e6102c2.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"reports-container\"},[_c('div',{staticClass:\"reports-header-container\"},[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.reports'))+\"\\n \"),_c('span',{staticClass:\"report-count\"},[_vm._v(\"(\"+_vm._s(_vm.normalizedReportsCount)+\")\")])]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"reports-filter-container\"},[_c('reports-filter')],1),_vm._v(\" \"),_c('div',{staticClass:\"block\"},[_c('report',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"reports\":_vm.reports}}),_vm._v(\" \"),(_vm.reports.length === 0)?_c('div',{staticClass:\"no-reports-message\"},[_c('p',[_vm._v(\"There are no reports to display\")])]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NoteCard.vue?vue&type=script&lang=js&\"","<template>\n <el-card class=\"note-card\">\n <div slot=\"header\">\n <div class=\"note-header\">\n <router-link\n v-if=\"propertyExists(note.user, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: note.user.id }}\"\n class=\"router-link\">\n <div class=\"note-actor\">\n <img\n v-if=\"propertyExists(note.user, 'avatar')\"\n :src=\"note.user.avatar\"\n alt=\"avatar\"\n class=\"note-avatar-img\">\n <span v-if=\"propertyExists(note.user, 'nickname')\" class=\"note-actor-name\">{{ note.user.nickname }}</span>\n <span v-else class=\"note-actor-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </div>\n </router-link>\n <el-button size=\"mini\" @click.native=\"handleNoteDeletion(note.id, report.id)\">\n {{ $t('reports.deleteNote') }}\n </el-button>\n </div>\n </div>\n <div class=\"note-body\">\n <span class=\"note-content\" v-html=\"note.content\"/>\n {{ parseTimestamp(note.created_at) }}\n </div>\n </el-card>\n</template>\n\n<script>\nimport moment from 'moment'\n\nexport default {\n name: 'NoteCard',\n props: {\n report: {\n type: Object,\n required: true\n },\n note: {\n type: Object,\n required: true\n }\n },\n methods: {\n handleNoteDeletion(noteID, reportID) {\n this.$confirm('Are you sure you want to delete this note?', 'Warning', {\n confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteReportNote', { noteID, reportID })\n this.$message({\n type: 'success',\n message: 'Delete completed'\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property) {\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n a {\n text-decoration: underline;\n }\n .deactivated {\n color: gray;\n }\n .el-icon-arrow-right {\n margin-right: 6px;\n }\n .note-header {\n display: flex;\n justify-content: space-between;\n align-items: baseline;\n height: 40px;\n }\n .note-actor {\n display: flex;\n align-items: center;\n }\n .note-actor-name {\n margin: 0;\n height: 28px;\n }\n .note-avatar-img {\n width: 15px;\n height: 15px;\n margin-right: 5px;\n }\n .note-body {\n display: flex;\n flex-direction: column;\n }\n .note-card {\n margin-bottom: 15px;\n }\n .note-content {\n font-size: 15px;\n }\n .note-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n height: 28px;\n font-size: 15px;\n font-weight: 500;\n }\n .router-link {\n text-decoration: none;\n }\n\n @media only screen and (max-width:480px) {\n .el-card__header {\n padding: 10px 17px;\n }\n .note-header {\n display: flex;\n flex-direction: column;\n height: 65px;\n }\n .note-actor {\n margin-bottom: 5px;\n }\n .note-header {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./NoteCard.vue?vue&type=template&id=030edbfd&\"\nimport script from \"./NoteCard.vue?vue&type=script&lang=js&\"\nexport * from \"./NoteCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NoteCard.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NoteCard.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-card',{staticClass:\"note-card\"},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"note-header\"},[(_vm.propertyExists(_vm.note.user, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.note.user.id }}}},[_c('div',{staticClass:\"note-actor\"},[(_vm.propertyExists(_vm.note.user, 'avatar'))?_c('img',{staticClass:\"note-avatar-img\",attrs:{\"src\":_vm.note.user.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.note.user, 'nickname'))?_c('span',{staticClass:\"note-actor-name\"},[_vm._v(_vm._s(_vm.note.user.nickname))]):_c('span',{staticClass:\"note-actor-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])])]):_vm._e(),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.handleNoteDeletion(_vm.note.id, _vm.report.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.deleteNote'))+\"\\n \")])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"note-body\"},[_c('span',{staticClass:\"note-content\",domProps:{\"innerHTML\":_vm._s(_vm.note.content)}}),_vm._v(\"\\n \"+_vm._s(_vm.parseTimestamp(_vm.note.created_at))+\"\\n \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerateUserDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModerateUserDropdown.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown :hide-on-click=\"false\" trigger=\"click\">\n <el-button :disabled=\"!account.id\" plain size=\"small\" icon=\"el-icon-files\">{{ $t('reports.moderateUser') }}\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n v-if=\"showDeactivatedButton(account)\"\n @click.native=\"handleDeactivation(account)\">\n {{ account.deactivated ? $t('users.activateAccount') : $t('users.deactivateAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"showDeactivatedButton(account.id)\"\n @click.native=\"handleDeletion(account)\">\n {{ $t('users.deleteAccount') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :divided=\"true\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:media-force-nsfw') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:media-force-nsfw')\">\n {{ $t('users.forceNsfw') }}\n <i v-if=\"tags.includes('mrf_tag:media-force-nsfw')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:media-strip') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:media-strip')\">\n {{ $t('users.stripMedia') }}\n <i v-if=\"tags.includes('mrf_tag:media-strip')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:force-unlisted') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:force-unlisted')\">\n {{ $t('users.forceUnlisted') }}\n <i v-if=\"tags.includes('mrf_tag:force-unlisted')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:sandbox') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:sandbox')\">\n {{ $t('users.sandbox') }}\n <i v-if=\"tags.includes('mrf_tag:sandbox')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled && account.local\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:disable-remote-subscription') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:disable-remote-subscription')\">\n {{ $t('users.disableRemoteSubscription') }}\n <i v-if=\"tags.includes('mrf_tag:disable-remote-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"tagPolicyEnabled && account.local\"\n :class=\"{ 'active-tag': tags.includes('mrf_tag:disable-any-subscription') }\"\n @click.native=\"toggleTag(account, 'mrf_tag:disable-any-subscription')\">\n {{ $t('users.disableAnySubscription') }}\n <i v-if=\"tags.includes('mrf_tag:disable-any-subscription')\" class=\"el-icon-check\"/>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"!tagPolicyEnabled\"\n divided\n class=\"no-hover\"\n @click.native=\"enableTagPolicy\">\n {{ $t('users.enableTagPolicy') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n name: 'ModerateUserDropdown',\n props: {\n account: {\n type: Object,\n required: true\n },\n reportId: {\n type: String,\n required: true\n }\n },\n computed: {\n tagPolicyEnabled() {\n return this.$store.state.users.mrfPolicies.includes('Pleroma.Web.ActivityPub.MRF.TagPolicy')\n },\n tags() {\n return this.account.tags || []\n }\n },\n methods: {\n enableTagPolicy() {\n this.$confirm(\n this.$t('users.confirmEnablingTagPolicy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('users.enableTagPolicySuccessMessage')\n })\n this.$store.dispatch('EnableTagPolicy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n handleDeactivation(user) {\n user.deactivated\n ? this.$store.dispatch('ActivateUserFromReports', { user, reportId: this.reportId })\n : this.$store.dispatch('DeactivateUserFromReports', { user, reportId: this.reportId })\n },\n handleDeletion(user) {\n this.$confirm(\n this.$t('users.deleteUserConfirmation'),\n {\n confirmButtonText: 'Delete',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteUserFromReports', { user, reportId: this.reportId })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n showDeactivatedButton(id) {\n return this.$store.state.user.id !== id\n },\n toggleTag(user, tag) {\n user.tags.includes(tag)\n ? this.$store.dispatch('RemoveTagFromReports', { user, tag, reportId: this.reportId })\n : this.$store.dispatch('AddTagFromReports', { user, tag, reportId: this.reportId })\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./ModerateUserDropdown.vue?vue&type=template&id=c2b03060&\"\nimport script from \"./ModerateUserDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./ModerateUserDropdown.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ModerateUserDropdown.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"hide-on-click\":false,\"trigger\":\"click\"}},[_c('el-button',{attrs:{\"disabled\":!_vm.account.id,\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-files\"}},[_vm._v(_vm._s(_vm.$t('reports.moderateUser'))+\"\\n \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(_vm.showDeactivatedButton(_vm.account))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeactivation(_vm.account)}}},[_vm._v(\"\\n \"+_vm._s(_vm.account.deactivated ? _vm.$t('users.activateAccount') : _vm.$t('users.deactivateAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.showDeactivatedButton(_vm.account.id))?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.handleDeletion(_vm.account)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccount'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:media-force-nsfw') },attrs:{\"divided\":true},nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceNsfw'))+\"\\n \"),(_vm.tags.includes('mrf_tag:media-force-nsfw'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:media-strip') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.stripMedia'))+\"\\n \"),(_vm.tags.includes('mrf_tag:media-strip'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:force-unlisted') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.forceUnlisted'))+\"\\n \"),(_vm.tags.includes('mrf_tag:force-unlisted'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:sandbox') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.sandbox'))+\"\\n \"),(_vm.tags.includes('mrf_tag:sandbox'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled && _vm.account.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:disable-remote-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableRemoteSubscription'))+\"\\n \"),(_vm.tags.includes('mrf_tag:disable-remote-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled && _vm.account.local)?_c('el-dropdown-item',{class:{ 'active-tag': _vm.tags.includes('mrf_tag:disable-any-subscription') },nativeOn:{\"click\":function($event){return _vm.toggleTag(_vm.account, 'mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.disableAnySubscription'))+\"\\n \"),(_vm.tags.includes('mrf_tag:disable-any-subscription'))?_c('i',{staticClass:\"el-icon-check\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(!_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.enableTagPolicy($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.enableTagPolicy'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <el-timeline class=\"reports-timeline\">\n <el-timeline-item\n v-for=\"report in reports\"\n :timestamp=\"parseTimestamp(report.created_at)\"\n :key=\"report.id\"\n placement=\"top\"\n class=\"timeline-item-container\">\n <el-card class=\"report\">\n <div class=\"report-header-container\">\n <div class=\"title-container\">\n <h3 v-if=\"propertyExists(report.account, 'nickname')\" class=\"report-title\">{{ $t('reports.reportOn') }} {{ report.account.nickname }}</h3>\n <h3 v-else class=\"report-title\">{{ $t('reports.report') }}</h3>\n <h5 v-if=\"propertyExists(report.account, 'id')\" class=\"id\">{{ $t('reports.id') }}: {{ report.id }}</h5>\n </div>\n <div>\n <el-tag :type=\"getStateType(report.state)\" size=\"large\" class=\"report-tag\">{{ capitalizeFirstLetter(report.state) }}</el-tag>\n <el-dropdown trigger=\"click\">\n <el-button plain size=\"small\" icon=\"el-icon-edit\" class=\"report-actions-button\">{{ $t('reports.changeState') }}<i class=\"el-icon-arrow-down el-icon--right\"/></el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item v-if=\"report.state !== 'resolved'\" @click.native=\"changeReportState('resolved', report.id)\">{{ $t('reports.resolve') }}</el-dropdown-item>\n <el-dropdown-item v-if=\"report.state !== 'open'\" @click.native=\"changeReportState('open', report.id)\">{{ $t('reports.reopen') }}</el-dropdown-item>\n <el-dropdown-item v-if=\"report.state !== 'closed'\" @click.native=\"changeReportState('closed', report.id)\">{{ $t('reports.close') }}</el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n <moderate-user-dropdown v-if=\"propertyExists(report.account, 'nickname')\" :account=\"report.account\" :report-id=\"report.id\" />\n </div>\n </div>\n <el-divider class=\"divider\"/>\n <div class=\"report-account-container\">\n <span class=\"report-row-key\">{{ $t('reports.account') }}:</span>\n <div class=\"report-account\">\n <router-link\n v-if=\"propertyExists(report.account, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: report.account.id }}\"\n class=\"router-link\">\n <img\n v-if=\"propertyExists(report.account, 'avatar')\"\n :src=\"report.account.avatar\"\n alt=\"avatar\"\n class=\"avatar-img\">\n <span v-if=\"propertyExists(report.account, 'nickname')\" class=\"report-account-name\">{{ report.account.nickname }}</span>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </router-link>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n <a v-if=\"propertyExists(report.account, 'url')\" :href=\"report.account.url\" target=\"_blank\" class=\"account\">\n {{ $t('userProfile.openAccountInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n <div v-if=\"report.content && report.content.length > 0\">\n <el-divider class=\"divider\"/>\n <span class=\"report-row-key\">{{ $t('reports.content') }}:\n <span>{{ report.content }}</span>\n </span>\n </div>\n <el-divider class=\"divider\"/>\n <div :style=\"showStatuses(report.statuses) ? '' : 'margin-bottom:15px'\" class=\"report-account-container\">\n <span class=\"report-row-key\">{{ $t('reports.actor') }}:</span>\n <div class=\"report-account\">\n <router-link\n v-if=\"propertyExists(report.actor, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: report.actor.id }}\"\n class=\"router-link\">\n <img\n v-if=\"propertyExists(report.actor, 'avatar')\"\n :src=\"report.actor.avatar\"\n alt=\"avatar\"\n class=\"avatar-img\">\n <span v-if=\"propertyExists(report.actor, 'nickname')\" class=\"report-account-name\">{{ report.actor.nickname }}</span>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </router-link>\n <span v-else class=\"report-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n <a v-if=\"propertyExists(report.actor, 'url')\" :href=\"report.actor.url\" target=\"_blank\" class=\"account\">\n {{ $t('userProfile.openAccountInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n <div v-if=\"showStatuses(report.statuses)\" class=\"reported-statuses\">\n <el-collapse>\n <el-collapse-item :title=\"getStatusesTitle(report.statuses)\">\n <div v-for=\"status in report.statuses\" :key=\"status.id\">\n <status :status=\"status\" :account=\"status.account.nickname ? status.account : report.account\" :show-checkbox=\"false\" :page=\"currentPage\"/>\n </div>\n </el-collapse-item>\n </el-collapse>\n </div>\n <div class=\"report-notes\">\n <el-collapse>\n <el-collapse-item :title=\"getNotesTitle(report.notes)\">\n <note-card v-for=\"(note, index) in report.notes\" :key=\"index\" :note=\"note\" :report=\"report\"/>\n </el-collapse-item>\n </el-collapse>\n <div class=\"report-note-form\">\n <el-input\n v-model=\"notes[report.id]\"\n :placeholder=\"$t('reports.leaveNote')\"\n type=\"textarea\"\n rows=\"2\"/>\n <div class=\"report-post-note\">\n <el-button @click=\"handleNewNote(report.id)\">{{ $t('reports.postNote') }}</el-button>\n </div>\n </div>\n </div>\n </el-card>\n </el-timeline-item>\n </el-timeline>\n <div v-if=\"!loading\" class=\"reports-pagination\">\n <el-pagination\n :total=\"totalReportsCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n background\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport NoteCard from './NoteCard'\nimport Status from '@/components/Status'\nimport ModerateUserDropdown from './ModerateUserDropdown'\n\nexport default {\n name: 'Report',\n components: { Status, ModerateUserDropdown, NoteCard },\n props: {\n reports: {\n type: Array,\n required: true\n }\n },\n data() {\n return {\n notes: {}\n }\n },\n computed: {\n loading() {\n return this.$store.state.reports.loading\n },\n pageSize() {\n return this.$store.state.reports.pageSize\n },\n totalReportsCount() {\n return this.$store.state.reports.totalReportsCount\n },\n currentPage() {\n return this.$store.state.reports.currentPage\n }\n },\n methods: {\n changeReportState(state, id) {\n this.$store.dispatch('ChangeReportState', [{ state, id }])\n },\n capitalizeFirstLetter(str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n getStateType(state) {\n switch (state) {\n case 'closed':\n return 'info'\n case 'resolved':\n return 'success'\n default:\n return 'primary'\n }\n },\n getStatusesTitle(statuses = []) {\n return `Reported statuses: ${statuses.length} item(s)`\n },\n getNotesTitle(notes = []) {\n return `Notes: ${notes.length} item(s)`\n },\n handleNewNote(reportID) {\n this.$store.dispatch('CreateReportNote', { content: this.notes[reportID], reportID })\n this.notes[reportID] = ''\n },\n handlePageChange(page) {\n this.$store.dispatch('FetchReports', page)\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('L HH:mm')\n },\n propertyExists(account, property, _secondProperty) {\n if (_secondProperty) {\n return account[property] && account[_secondProperty]\n }\n return account[property]\n },\n showStatuses(statuses = []) {\n return statuses.length > 0\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n h4 {\n margin: 0;\n height: 17px;\n }\n .account {\n line-height: 26px;\n font-size: 13px;\n color: #606266;\n }\n .account:hover {\n text-decoration: underline;\n }\n .avatar-img {\n vertical-align: bottom;\n width: 15px;\n height: 15px;\n }\n .divider {\n margin: 15px 0;\n }\n .deactivated {\n color: gray;\n }\n .el-card__body {\n padding: 17px;\n }\n .el-card__header {\n background-color: #FAFAFA;\n padding: 10px 20px;\n }\n .el-collapse {\n border-bottom: none;\n }\n .el-collapse-item__header {\n height: 46px;\n font-size: 14px;\n }\n .el-collapse-item__content {\n padding-bottom: 7px;\n }\n .el-icon-arrow-right {\n margin-right: 6px;\n }\n .id {\n color: gray;\n margin-top: 6px;\n }\n .line {\n width: 100%;\n height: 0;\n border: 0.5px solid #EBEEF5;\n margin: 15px 0 15px;\n }\n .new-note {\n p {\n font-size: 14px;\n font-weight: 500;\n height: 17px;\n margin: 13px 0 7px;\n }\n }\n .note {\n box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);\n margin-bottom: 10px;\n }\n .no-notes {\n font-style: italic;\n color: gray;\n }\n .report {\n .report-header-container {\n display: flex;\n justify-content: space-between;\n align-items: baseline;\n height: 40px;\n }\n }\n .report-account {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n flex-grow: 2;\n }\n .report-account-container {\n display: flex;\n align-items: baseline;\n }\n .report-account-name {\n font-size: 15px;\n font-weight: 500;\n }\n .report-row-key {\n font-size: 14px;\n font-weight: 500;\n padding-right: 5px;\n }\n .report-title {\n margin: 0;\n }\n .report-note-form {\n margin: 15px 0 0 0;\n }\n .report-post-note {\n margin: 5px 0 0 0;\n text-align: right;\n }\n .reports-pagination {\n margin: 25px 0;\n text-align: center;\n }\n .reports-timeline {\n margin: 30px 45px 45px 19px;\n padding: 0px;\n }\n .router-link {\n text-decoration: none;\n }\n .reported-statuses {\n margin-top: 15px;\n }\n .submit-button {\n display: block;\n margin: 7px 0 17px auto;\n }\n .timestamp {\n margin: 0;\n font-style: italic;\n color: gray;\n }\n\n @media only screen and (max-width:480px) {\n .report {\n .report-header-container {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: flex-start;\n height: auto;\n }\n .id {\n margin: 6px 0 0 0;\n }\n .report-actions-button {\n margin: 3px 0 6px;\n }\n .report-tag {\n margin: 3px 0 6px;\n }\n .title-container {\n margin-bottom: 7px;\n }\n }\n .reports-timeline {\n margin: 20px 10px;\n .el-timeline-item__wrapper {\n padding-left: 20px;\n }\n }\n }\n</style>\n","import { render, staticRenderFns } from \"./Report.vue?vue&type=template&id=097b42a3&\"\nimport script from \"./Report.vue?vue&type=script&lang=js&\"\nexport * from \"./Report.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Report.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('el-timeline',{staticClass:\"reports-timeline\"},_vm._l((_vm.reports),function(report){return _c('el-timeline-item',{key:report.id,staticClass:\"timeline-item-container\",attrs:{\"timestamp\":_vm.parseTimestamp(report.created_at),\"placement\":\"top\"}},[_c('el-card',{staticClass:\"report\"},[_c('div',{staticClass:\"report-header-container\"},[_c('div',{staticClass:\"title-container\"},[(_vm.propertyExists(report.account, 'nickname'))?_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.reportOn'))+\" \"+_vm._s(report.account.nickname))]):_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.report')))]),_vm._v(\" \"),(_vm.propertyExists(report.account, 'id'))?_c('h5',{staticClass:\"id\"},[_vm._v(_vm._s(_vm.$t('reports.id'))+\": \"+_vm._s(report.id))]):_vm._e()]),_vm._v(\" \"),_c('div',[_c('el-tag',{staticClass:\"report-tag\",attrs:{\"type\":_vm.getStateType(report.state),\"size\":\"large\"}},[_vm._v(_vm._s(_vm.capitalizeFirstLetter(report.state)))]),_vm._v(\" \"),_c('el-dropdown',{attrs:{\"trigger\":\"click\"}},[_c('el-button',{staticClass:\"report-actions-button\",attrs:{\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-edit\"}},[_vm._v(_vm._s(_vm.$t('reports.changeState'))),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(report.state !== 'resolved')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('resolved', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.resolve')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'open')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('open', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.reopen')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'closed')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('closed', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.close')))]):_vm._e()],1)],1),_vm._v(\" \"),(_vm.propertyExists(report.account, 'nickname'))?_c('moderate-user-dropdown',{attrs:{\"account\":report.account,\"report-id\":report.id}}):_vm._e()],1)]),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('div',{staticClass:\"report-account-container\"},[_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.account'))+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"report-account\"},[(_vm.propertyExists(report.account, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: report.account.id }}}},[(_vm.propertyExists(report.account, 'avatar'))?_c('img',{staticClass:\"avatar-img\",attrs:{\"src\":report.account.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(report.account, 'nickname'))?_c('span',{staticClass:\"report-account-name\"},[_vm._v(_vm._s(report.account.nickname))]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(report.account, 'url'))?_c('a',{staticClass:\"account\",attrs:{\"href\":report.account.url,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.openAccountInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()],1)]),_vm._v(\" \"),(report.content && report.content.length > 0)?_c('div',[_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.content'))+\":\\n \"),_c('span',[_vm._v(_vm._s(report.content))])])],1):_vm._e(),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('div',{staticClass:\"report-account-container\",style:(_vm.showStatuses(report.statuses) ? '' : 'margin-bottom:15px')},[_c('span',{staticClass:\"report-row-key\"},[_vm._v(_vm._s(_vm.$t('reports.actor'))+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"report-account\"},[(_vm.propertyExists(report.actor, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: report.actor.id }}}},[(_vm.propertyExists(report.actor, 'avatar'))?_c('img',{staticClass:\"avatar-img\",attrs:{\"src\":report.actor.avatar,\"alt\":\"avatar\"}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(report.actor, 'nickname'))?_c('span',{staticClass:\"report-account-name\"},[_vm._v(_vm._s(report.actor.nickname))]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])]):_c('span',{staticClass:\"report-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")]),_vm._v(\" \"),(_vm.propertyExists(report.actor, 'url'))?_c('a',{staticClass:\"account\",attrs:{\"href\":report.actor.url,\"target\":\"_blank\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('userProfile.openAccountInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()],1)]),_vm._v(\" \"),(_vm.showStatuses(report.statuses))?_c('div',{staticClass:\"reported-statuses\"},[_c('el-collapse',[_c('el-collapse-item',{attrs:{\"title\":_vm.getStatusesTitle(report.statuses)}},_vm._l((report.statuses),function(status){return _c('div',{key:status.id},[_c('status',{attrs:{\"status\":status,\"account\":status.account.nickname ? status.account : report.account,\"show-checkbox\":false,\"page\":_vm.currentPage}})],1)}),0)],1)],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"report-notes\"},[_c('el-collapse',[_c('el-collapse-item',{attrs:{\"title\":_vm.getNotesTitle(report.notes)}},_vm._l((report.notes),function(note,index){return _c('note-card',{key:index,attrs:{\"note\":note,\"report\":report}})}),1)],1),_vm._v(\" \"),_c('div',{staticClass:\"report-note-form\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('reports.leaveNote'),\"type\":\"textarea\",\"rows\":\"2\"},model:{value:(_vm.notes[report.id]),callback:function ($$v) {_vm.$set(_vm.notes, report.id, $$v)},expression:\"notes[report.id]\"}}),_vm._v(\" \"),_c('div',{staticClass:\"report-post-note\"},[_c('el-button',{on:{\"click\":function($event){return _vm.handleNewNote(report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.postNote')))])],1)],1)],1)],1)],1)}),1),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"reports-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.totalReportsCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"background\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"","<template>\n <el-select\n v-model=\"filter\"\n :placeholder=\"$t('reportsFilter.inputPlaceholder')\"\n clearable\n class=\"select-field\"\n value-key=\"value\"\n @change=\"toggleFilters\">\n <el-option\n v-for=\"item in options\"\n :key=\"item.value\"\n :label=\"item.label\"\n :value=\"item.value\">{{ item.label }}</el-option>\n </el-select>\n</template>\n\n<script>\nimport i18n from '@/lang'\n\nexport default {\n data() {\n return {\n filter: 'open',\n options: [\n {\n value: 'open',\n label: i18n.t('reportsFilter.open')\n },\n {\n value: 'closed',\n label: i18n.t('reportsFilter.closed')\n },\n {\n value: 'resolved',\n label: i18n.t('reportsFilter.resolved')\n }\n ]\n }\n },\n created() {\n this.$store.dispatch('SetReportsFilter', this.$data.filter)\n },\n methods: {\n toggleFilters() {\n this.$store.dispatch('SetReportsFilter', this.$data.filter)\n this.$store.dispatch('ClearFetchedReports')\n this.$store.dispatch('FetchReports', 1)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.select-field {\n width: 350px;\n}\n\n@media only screen and (max-width:480px) {\n .select-field {\n width: 100%;\n margin-bottom: 5px;\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .select-field {\n width: 50%;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./ReportsFilter.vue?vue&type=template&id=5ab7c15a&scoped=true&\"\nimport script from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ab7c15a\",\n null\n \n)\n\ncomponent.options.__file = \"ReportsFilter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-select',{staticClass:\"select-field\",attrs:{\"placeholder\":_vm.$t('reportsFilter.inputPlaceholder'),\"clearable\":\"\",\"value-key\":\"value\"},on:{\"change\":_vm.toggleFilters},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value}},[_vm._v(_vm._s(item.label))])}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"reports-container\">\n <div class=\"reports-header-container\">\n <h1>\n {{ $t('reports.reports') }}\n <span class=\"report-count\">({{ normalizedReportsCount }})</span>\n </h1>\n <reboot-button/>\n </div>\n <div class=\"reports-filter-container\">\n <reports-filter/>\n </div>\n <div class=\"block\">\n <report v-loading=\"loading\" :reports=\"reports\"/>\n <div v-if=\"reports.length === 0\" class=\"no-reports-message\">\n <p>There are no reports to display</p>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport numeral from 'numeral'\nimport Report from './components/Report'\nimport ReportsFilter from './components/ReportsFilter'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: { RebootButton, Report, ReportsFilter },\n computed: {\n loading() {\n return this.$store.state.reports.loading\n },\n normalizedReportsCount() {\n return numeral(this.$store.state.reports.totalReportsCount).format('0a')\n },\n reports() {\n return this.$store.state.reports.fetchedReports\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchTagPolicySetting')\n this.$store.dispatch('FetchReports', 1)\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.reports-container {\n .reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n }\n .reports-filter-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 15px 45px 22px 15px;\n padding-bottom: 0\n }\n .reports-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px;\n }\n h1 {\n margin: 0;\n }\n .no-reports-message {\n color: gray;\n margin-left: 19px\n }\n .report-count {\n color: gray;\n font-size: 28px;\n }\n}\n\n@media only screen and (max-width:480px) {\n .reports-container {\n h1 {\n margin: 7px 10px 15px 10px;\n }\n .reboot-button {\n margin: 0 0 5px 10px;\n width: 145px;\n }\n .report-count {\n font-size: 22px;\n }\n .reports-filter-container {\n margin: 0 10px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=6ac87f34&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6ac87f34\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\""],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-97e2.8936d9a7.js b/priv/static/adminfe/static/js/chunk-97e2.8936d9a7.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-97e2"],{"26YS":function(e,t,a){"use strict";a.r(t);var o=a("o0o1"),s=a.n(o),i=a("yXPU"),c=a.n(i),n=a("cDf5"),l=a.n(n),r=a("QILm"),m=a.n(r),p=a("mm8V"),u={props:{host:{type:String,required:!0},packName:{type:String,required:!0},shortcode:{type:String,required:!0},file:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{newShortcode:null,newFile:null,copyToLocalPackName:null,copyPopoverVisible:!1,copyToShortcode:"",copyToFilename:""}},computed:{emojiName:{get:function(){return null!==this.newShortcode?this.newShortcode:this.shortcode},set:function(e){this.newShortcode=e}},emojiFile:{get:function(){return null!==this.newFile?this.newFile:this.file},set:function(e){this.newFile=e}},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},localPacks:function(){return this.$store.state.emojiPacks.localPacks},remoteInstance:function(){return this.$store.state.emojiPacks.remoteInstance}},methods:{update:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.prev=0,e.$store.dispatch("UpdateEmojiFile",{packName:e.packName,shortcode:e.shortcode,newShortcode:e.emojiName,newFilename:e.emojiFile,force:!0}),t.next=7;break;case 4:return t.prev=4,t.t0=t.catch(0),t.abrupt("return");case 7:e.newShortcode=null,e.newFile=null,e.$store.dispatch("ReloadEmoji");case 10:case"end":return t.stop()}},t,null,[[0,4]])}))()},remove:function(){var e=this;this.$confirm("This will delete the emoji, are you sure?","Warning",{confirmButtonText:"Yes, delete the emoji",cancelButtonText:"No, leave it be",type:"warning"}).then(function(){e.$store.dispatch("DeleteEmojiFile",{packName:e.packName,shortcode:e.shortcode}).then(function(){e.newShortcode=null,e.newFile=null,e.$store.dispatch("ReloadEmoji")})})},copyToLocal:function(){try{this.$store.dispatch("AddNewEmojiFile",{packName:this.copyToLocalPackName,file:this.addressOfEmojiInPack(this.remoteInstance,this.packName,this.file),shortcode:""!==this.copyToShortcode.trim()?this.copyToShortcode.trim():this.shortcode,filename:""!==this.copyToFilename.trim()?this.copyToFilename.trim():this.file})}catch(e){return}this.copyToLocalPackName=null,this.copyToLocalVisible=!1,this.copyToShortcode="",this.copyToFilename="",this.$store.dispatch("ReloadEmoji")},addressOfEmojiInPack:p.b}},d=(a("4ySm"),a("KHd+")),h=Object(d.a)(u,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",[e.isLocal?a("div",{class:e.isMobile?"emoji-container-flex":"emoji-container-grid"},[a("img",{staticClass:"emoji-preview-img",attrs:{src:e.addressOfEmojiInPack(e.host,e.packName,e.file)}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{placeholder:e.$t("emoji.shortcode")},model:{value:e.emojiName,callback:function(t){e.emojiName=t},expression:"emojiName"}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{placeholder:e.$t("emoji.file")},model:{value:e.emojiFile,callback:function(t){e.emojiFile=t},expression:"emojiFile"}}),e._v(" "),a("div",{staticClass:"emoji-buttons"},[a("el-button",{attrs:{type:"primary"},on:{click:e.update}},[e._v(e._s(e.$t("emoji.update")))]),e._v(" "),a("el-button",{staticClass:"remove-emoji-button",on:{click:e.remove}},[e._v(e._s(e.$t("emoji.remove")))])],1)],1):e._e(),e._v(" "),e.isLocal?e._e():a("div",{class:e.isMobile?"emoji-container-flex":"remote-emoji-container-grid"},[a("img",{staticClass:"emoji-preview-img",attrs:{src:e.addressOfEmojiInPack(e.remoteInstance,e.packName,e.file)}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{value:e.emojiName,placeholder:e.$t("emoji.shortcode")}}),e._v(" "),a("el-input",{staticClass:"emoji-info",attrs:{value:e.emojiFile,placeholder:e.$t("emoji.file")}}),e._v(" "),a("el-popover",{staticClass:"copy-pack-container",attrs:{placement:"left-start","popper-class":"copy-popover"},model:{value:e.copyPopoverVisible,callback:function(t){e.copyPopoverVisible=t},expression:"copyPopoverVisible"}},[a("p",[e._v(e._s(e.$t("emoji.selectLocalPack")))]),e._v(" "),a("el-select",{staticClass:"copy-pack-select",attrs:{placeholder:e.$t("emoji.localPack")},model:{value:e.copyToLocalPackName,callback:function(t){e.copyToLocalPackName=t},expression:"copyToLocalPackName"}},e._l(e.localPacks,function(e,t){return a("el-option",{key:t,attrs:{label:t,value:t}})}),1),e._v(" "),a("p",[e._v(e._s(e.$t("emoji.specifyShortcode")))]),e._v(" "),a("el-input",{attrs:{placeholder:e.$t("emoji.leaveEmptyShortcode")},model:{value:e.copyToShortcode,callback:function(t){e.copyToShortcode=t},expression:"copyToShortcode"}}),e._v(" "),a("p",[e._v(e._s(e.$t("emoji.specifyFilename")))]),e._v(" "),a("el-input",{attrs:{placeholder:e.$t("emoji.leaveEmptyFilename")},model:{value:e.copyToFilename,callback:function(t){e.copyToFilename=t},expression:"copyToFilename"}}),e._v(" "),a("el-button",{staticClass:"copy-to-local-pack-button",attrs:{disabled:!e.copyToLocalPackName,type:"primary"},on:{click:e.copyToLocal}},[e._v(e._s(e.$t("emoji.copy")))]),e._v(" "),a("el-button",{staticClass:"emoji-button",attrs:{slot:"reference",type:"primary"},slot:"reference"},[e._v(e._s(e.$t("emoji.copyToLocalPack")))])],1)],1)])},[],!1,null,null,null);h.options.__file="SingleEmojiEditor.vue";var k=h.exports,f={props:{packName:{type:String,required:!0}},data:function(){return{shortcode:"",imageUploadURL:"",customFileName:""}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device}},methods:{uploadEmoji:function(e){var t=this;return c()(s.a.mark(function a(){var o;return s.a.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:o=e.file,a.prev=1,t.$store.dispatch("AddNewEmojiFile",{packName:t.packName,file:o||t.imageUploadURL,shortcode:t.shortcode,filename:t.customFileName}),a.next=8;break;case 5:return a.prev=5,a.t0=a.catch(1),a.abrupt("return");case 8:t.shortcode="",t.imageUploadURL="",t.customFileName="",t.$store.dispatch("ReloadEmoji");case 12:case"end":return a.stop()}},a,null,[[1,5]])}))()}}},v=(a("IVv3"),Object(d.a)(f,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-form",{staticClass:"new-emoji-uploader-form",attrs:{"label-position":e.isMobile?"top":"left","label-width":"130px",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.shortcode")}},[a("el-input",{attrs:{placeholder:e.$t("emoji.optional")},model:{value:e.shortcode,callback:function(t){e.shortcode=t},expression:"shortcode"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.customFilename")}},[a("el-input",{attrs:{placeholder:e.$t("emoji.optional")},model:{value:e.customFileName,callback:function(t){e.customFileName=t},expression:"customFileName"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.uploadFile")}},[a("div",{staticClass:"upload-file-url"},[a("el-input",{attrs:{placeholder:e.$t("emoji.url")},model:{value:e.imageUploadURL,callback:function(t){e.imageUploadURL=t},expression:"imageUploadURL"}}),e._v(" "),a("el-button",{staticClass:"upload-button",attrs:{type:"primary"},on:{click:e.uploadEmoji}},[e._v(e._s(e.$t("emoji.upload")))])],1),e._v(" "),a("div",{staticClass:"upload-container"},[a("p",{staticClass:"text"},[e._v("or")]),e._v(" "),a("el-upload",{attrs:{"http-request":e.uploadEmoji,multiple:!1,"show-file-list":!1,action:"add"}},[a("el-button",{attrs:{type:"primary"}},[e._v(e._s(e.$t("emoji.clickToUpload")))])],1)],1)])],1)},[],!1,null,null,null));function b(e){var t=function(e,t){if("object"!==l()(e)||null===e)return e;var a=e[Symbol.toPrimitive];if(void 0!==a){var o=a.call(e,t||"default");if("object"!==l()(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===l()(t)?t:String(t)}v.options.__file="NewEmojiUploader.vue";var j={components:{SingleEmojiEditor:k,NewEmojiUploader:v.exports},props:{name:{type:String,required:!0},pack:{type:Object,required:!0},host:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{showPackContent:[]}},computed:{currentFilesPage:function(){return this.$store.state.emojiPacks.currentFilesPage},currentPage:function(){return this.$store.state.emojiPacks.currentPage},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"90px":(this.isTablet,"155px")},localPackFilesCount:function(){return this.$store.state.emojiPacks.localPackFilesCount},pageSize:function(){return this.$store.state.emojiPacks.filesPageSize},share:{get:function(){return this.pack.pack["share-files"]},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"share-files",value:e})}},homepage:{get:function(){return this.pack.pack.homepage},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"homepage",value:e})}},description:{get:function(){return this.pack.pack.description},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"description",value:e})}},license:{get:function(){return this.pack.pack.license},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"license",value:e})}},fallbackSrc:{get:function(){return this.pack.pack["fallback-src"]},set:function(e){""!==e.trim()?this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:e}):(this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:null}),this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src-sha256",value:null}))}}},methods:{collapse:function(){this.showPackContent=[]},deletePack:function(){var e=this;this.$confirm("This will delete the pack, are you sure?","Warning",{confirmButtonText:"Yes, delete the pack",cancelButtonText:"No, leave it be",type:"warning"}).then(function(){e.$store.dispatch("DeletePack",{name:e.name}).then(function(){return e.$store.dispatch("ReloadEmoji")}).then(function(){var t=e.$store.state.emojiPacks.localPacks,a=e.name,o=(t[a],m()(t,[a].map(b)));0===Object.keys(o).length&&e.currentPage>1?e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage-1):e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage)})}).catch(function(){})},handleChange:function(e,t){e.includes("manageEmoji")&&this.$store.dispatch("FetchSinglePack",{name:t,page:1})},handleFilesPageChange:function(e){this.$store.dispatch("FetchSinglePack",{name:this.name,page:e})},savePackMetadata:function(){this.$store.dispatch("SavePackMetadata",{packName:this.name})}}},P=(a("LE4i"),Object(d.a)(j,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-collapse-item",{staticClass:"has-background",attrs:{title:e.name,name:e.name}},[a("el-form",{staticClass:"emoji-pack-metadata",attrs:{"label-width":e.labelWidth,"label-position":"left",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.sharePack")}},[a("el-switch",{model:{value:e.share,callback:function(t){e.share=t},expression:"share"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.homepage")}},[a("el-input",{model:{value:e.homepage,callback:function(t){e.homepage=t},expression:"homepage"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.description")}},[a("el-input",{attrs:{type:"textarea"},model:{value:e.description,callback:function(t){e.description=t},expression:"description"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.license")}},[a("el-input",{model:{value:e.license,callback:function(t){e.license=t},expression:"license"}})],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrc")}},[a("el-input",{model:{value:e.fallbackSrc,callback:function(t){e.fallbackSrc=t},expression:"fallbackSrc"}})],1),e._v(" "),e.fallbackSrc&&""!==e.fallbackSrc.trim()?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrcSha")}},[e._v("\n "+e._s(e.pack.pack["fallback-src-sha256"])+"\n ")]):e._e()],1),e._v(" "),a("div",{staticClass:"pack-button-container"},[a("div",{staticClass:"save-pack-button-container"},[a("el-button",{staticClass:"save-pack-button",attrs:{type:"primary"},on:{click:e.savePackMetadata}},[e._v(e._s(e.$t("emoji.saveMetadata")))]),e._v(" "),a("el-button",{staticClass:"delete-pack-button",on:{click:e.deletePack}},[e._v(e._s(e.$t("emoji.deletePack")))])],1),e._v(" "),a("div",{staticClass:"download-pack-button-container"},[e.pack.pack["can-download"]?a("el-link",{attrs:{href:"//"+e.host+"/api/pleroma/emoji/packs/"+e.name+"/download_shared",underline:!1,type:"primary",target:"_blank"}},[a("el-button",{staticClass:"download-archive"},[e._v(e._s(e.$t("emoji.downloadPackArchive")))])],1):e._e()],1)]),e._v(" "),a("el-collapse",{staticClass:"contents-collapse",on:{change:function(t){return e.handleChange(t,e.name)}},model:{value:e.showPackContent,callback:function(t){e.showPackContent=t},expression:"showPackContent"}},[e.isLocal?a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.addNewEmoji"),name:"addEmoji"}},[a("new-emoji-uploader",{attrs:{"pack-name":e.name}})],1):e._e(),e._v(" "),a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.manageEmoji"),name:"manageEmoji"}},[e.pack.files&&Object.keys(e.pack.files).length>0?a("div",e._l(e.pack.files,function(t,o){return a("single-emoji-editor",{key:o,attrs:{host:e.host,"pack-name":e.name,shortcode:o,file:t,"is-local":e.isLocal}})}),1):a("span",{staticClass:"expl"},[e._v(e._s(e.$t("emoji.emptyPack")))]),e._v(" "),a("div",{staticClass:"files-pagination"},[a("el-pagination",{attrs:{total:e.localPackFilesCount,"current-page":e.currentFilesPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handleFilesPageChange}})],1)])],1)],1)},[],!1,null,null,null));P.options.__file="LocalEmojiPack.vue";var _=P.exports,$={components:{SingleEmojiEditor:k},props:{name:{type:String,required:!0},pack:{type:Object,required:!0},host:{type:String,required:!0},isLocal:{type:Boolean,required:!0}},data:function(){return{showPackContent:[],downloadSharedAs:""}},computed:{currentPage:function(){return this.$store.state.emojiPacks.currentPage},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"90px":(this.isTablet,"120px")},loadRemotePack:function(){return this.$store.state.emojiPacks.activeTab===this.name},remoteInstanceAddress:function(){return this.$store.state.emojiPacks.remoteInstance},share:{get:function(){return this.pack.pack["share-files"]},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"share-files",value:e})}},homepage:{get:function(){return this.pack.pack.homepage},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"homepage",value:e})}},description:{get:function(){return this.pack.pack.description},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"description",value:e})}},license:{get:function(){return this.pack.pack.license},set:function(e){this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"license",value:e})}},fallbackSrc:{get:function(){return this.pack.pack["fallback-src"]},set:function(e){""!==e.trim()?this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:e}):(this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src",value:null}),this.$store.dispatch("UpdateLocalPackVal",{name:this.name,key:"fallback-src-sha256",value:null}))}}},methods:{downloadFromInstance:function(){var e=this;this.$store.dispatch("DownloadFrom",{instanceAddress:this.remoteInstanceAddress,packName:this.name,as:this.downloadSharedAs}).then(function(){return e.$store.dispatch("ReloadEmoji")}).then(function(){return e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage)})}}},g=(a("Zd0x"),Object(d.a)($,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("el-collapse-item",{staticClass:"has-background",attrs:{title:e.name,name:e.name}},[e.loadRemotePack?a("div",[a("el-form",{staticClass:"emoji-pack-metadata remote-pack-metadata",attrs:{"label-width":e.labelWidth,"label-position":"left",size:"small"}},[a("el-form-item",{attrs:{label:e.$t("emoji.sharePack")}},[a("el-switch",{attrs:{disabled:""},model:{value:e.share,callback:function(t){e.share=t},expression:"share"}})],1),e._v(" "),e.homepage?a("el-form-item",{attrs:{label:e.$t("emoji.homepage")}},[a("span",[e._v(e._s(e.homepage))])]):e._e(),e._v(" "),e.description?a("el-form-item",{attrs:{label:e.$t("emoji.description")}},[a("span",[e._v(e._s(e.description))])]):e._e(),e._v(" "),e.license?a("el-form-item",{attrs:{label:e.$t("emoji.license")}},[a("span",[e._v(e._s(e.license))])]):e._e(),e._v(" "),e.fallbackSrc?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrc")}},[a("span",[e._v(e._s(e.fallbackSrc))])]):e._e(),e._v(" "),e.fallbackSrc&&""!==e.fallbackSrc.trim()?a("el-form-item",{attrs:{label:e.$t("emoji.fallbackSrcSha")}},[e._v("\n "+e._s(e.pack.pack["fallback-src-sha256"])+"\n ")]):e._e(),e._v(" "),a("el-form-item",[e.pack.pack["can-download"]&&e.pack.pack["fallback-src"]?a("el-link",{attrs:{href:e.pack.pack["fallback-src"],underline:!1,type:"primary",target:"_blank"}},[a("el-button",{staticClass:"download-archive"},[e._v(e._s(e.$t("emoji.downloadPackArchive")))])],1):e._e()],1)],1),e._v(" "),a("el-collapse",{staticClass:"contents-collapse",model:{value:e.showPackContent,callback:function(t){e.showPackContent=t},expression:"showPackContent"}},[a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.manageEmoji"),name:"manageEmoji"}},[e.pack.files&&Object.keys(e.pack.files).length>0?a("div",e._l(e.pack.files,function(t,o){return a("single-emoji-editor",{key:o,attrs:{host:e.host,"pack-name":e.name,shortcode:o,file:t,"is-local":e.isLocal}})}),1):a("span",{staticClass:"expl"},[e._v(e._s(e.$t("emoji.emptyPack")))])]),e._v(" "),a("el-collapse-item",{staticClass:"no-background",attrs:{title:e.$t("emoji.downloadPack"),name:"downloadPack"}},[a("p",[e._v("\n "+e._s(e.$t("emoji.thisWillDownload"))+' "'+e._s(e.name)+'" '+e._s(e.$t("emoji.downloadToCurrentInstance"))+'\n "'+e._s(""===e.downloadSharedAs.trim()?e.name:e.downloadSharedAs)+'" ('+e._s(e.$t("emoji.canBeChanged"))+").\n "+e._s(e.$t("emoji.willBeUsable"))+".\n ")]),e._v(" "),a("div",{staticClass:"download-shared-pack"},[a("el-input",{attrs:{placeholder:e.$t("emoji.downloadAsOptional")},model:{value:e.downloadSharedAs,callback:function(t){e.downloadSharedAs=t},expression:"downloadSharedAs"}}),e._v(" "),a("el-button",{staticClass:"download-shared-pack-button",attrs:{type:"primary"},on:{click:e.downloadFromInstance}},[e._v("\n "+e._s(e.isDesktop?e.$t("emoji.downloadSharedPack"):e.$t("emoji.downloadSharedPackMobile"))+"\n ")])],1)])],1)],1):e._e()])},[],!1,null,null,null));g.options.__file="RemoteEmojiPack.vue";var y=g.exports,w=a("mSNy"),C={components:{LocalEmojiPack:_,RebootButton:a("rIUS").a,RemoteEmojiPack:y},data:function(){return{activeTab:"local",newPackName:"",activeLocalPack:[],activeRemotePack:[],fullscreenLoading:!1}},computed:{currentPage:function(){return this.$store.state.emojiPacks.currentPage},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"105px":this.isTablet?"180px":"200px"},localPacks:function(){return this.$store.state.emojiPacks.localPacks},localPacksCount:function(){return this.$store.state.emojiPacks.localPacksCount},pageSize:function(){return this.$store.state.emojiPacks.pageSize},remoteInstanceAddress:{get:function(){return this.$store.state.emojiPacks.remoteInstance},set:function(e){this.$store.dispatch("SetRemoteInstance",e)}},remotePacks:function(){return this.$store.state.emojiPacks.remotePacks}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.refreshLocalPacks()},methods:{createLocalPack:function(){var e=this;this.$store.dispatch("CreatePack",{name:this.newPackName}).then(function(){e.newPackName="",e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage),e.$store.dispatch("ReloadEmoji")})},handlePageChange:function(e){this.$store.dispatch("FetchLocalEmojiPacks",e)},importFromFS:function(){var e=this;this.$store.dispatch("ImportFromFS").then(function(){e.$store.dispatch("FetchLocalEmojiPacks",e.currentPage),e.$store.dispatch("ReloadEmoji")})},refreshLocalPacks:function(){try{this.$store.dispatch("FetchLocalEmojiPacks",this.currentPage)}catch(e){return}this.$message({type:"success",message:w.a.t("emoji.refreshed")})},refreshRemotePacks:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.fullscreenLoading=!0,t.next=3,e.$store.dispatch("SetRemoteEmojiPacks",{remoteInstance:e.remoteInstanceAddress});case 3:e.fullscreenLoading=!1;case 4:case"end":return t.stop()}},t)}))()},reloadEmoji:function(){var e=this;return c()(s.a.mark(function t(){return s.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:t.prev=0,e.$store.dispatch("ReloadEmoji"),t.next=7;break;case 4:return t.prev=4,t.t0=t.catch(0),t.abrupt("return");case 7:e.$message({type:"success",message:w.a.t("emoji.reloaded")});case 8:case"end":return t.stop()}},t,null,[[0,4]])}))()},setActiveTab:function(e){this.$refs.localEmojiPack.forEach(function(e){return e.collapse()}),this.$store.dispatch("SetActiveTab",e)}}},S=(a("smuD"),Object(d.a)(C,function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"emoji-packs"},[a("div",{staticClass:"emoji-packs-header"},[a("h1",[e._v(e._s(e.$t("emoji.emojiPacks")))]),e._v(" "),a("reboot-button")],1),e._v(" "),a("div",{staticClass:"emoji-header-container"},[a("div",{staticClass:"emoji-packs-header-button-container"},[a("el-button",{staticClass:"reload-emoji-button",on:{click:e.reloadEmoji}},[e._v(e._s(e.$t("emoji.reloadEmoji")))]),e._v(" "),a("el-tooltip",{attrs:{content:e.$t("emoji.importEmojiTooltip"),effects:"dark",placement:"bottom","popper-class":"import-pack-button"}},[a("el-button",{on:{click:e.importFromFS}},[e._v("\n "+e._s(e.$t("emoji.importPacks"))+"\n ")])],1)],1)]),e._v(" "),a("el-tabs",{staticClass:"emoji-packs-tabs",attrs:{type:"card"},model:{value:e.activeTab,callback:function(t){e.activeTab=t},expression:"activeTab"}},[a("el-tab-pane",{attrs:{label:e.$t("emoji.localPacks"),name:"local"}},[a("el-form",{staticClass:"emoji-packs-form",attrs:{"label-width":e.labelWidth}},[a("el-form-item",{attrs:{label:e.$t("emoji.localPacks")}},[a("el-button",{on:{click:e.refreshLocalPacks}},[e._v(e._s(e.$t("emoji.refreshLocalPacks")))])],1),e._v(" "),a("el-form-item",{attrs:{label:e.$t("emoji.createLocalPack")}},[a("div",{staticClass:"create-pack"},[a("el-input",{attrs:{placeholder:e.$t("users.name")},model:{value:e.newPackName,callback:function(t){e.newPackName=t},expression:"newPackName"}}),e._v(" "),a("el-button",{staticClass:"create-pack-button",attrs:{disabled:""===e.newPackName.trim()},on:{click:e.createLocalPack}},[e._v("\n "+e._s(e.$t("users.create"))+"\n ")])],1)]),e._v(" "),Object.keys(e.localPacks).length>0?a("el-form-item",{attrs:{label:e.$t("emoji.packs")}},e._l(e.localPacks,function(t,o){return a("el-collapse",{key:o,attrs:{accordion:""},on:{change:e.setActiveTab},model:{value:e.activeLocalPack,callback:function(t){e.activeLocalPack=t},expression:"activeLocalPack"}},[a("local-emoji-pack",{ref:"localEmojiPack",refInFor:!0,attrs:{name:o,pack:t,host:e.$store.getters.authHost,"is-local":!0}})],1)}),1):e._e()],1),e._v(" "),a("div",{staticClass:"pagination"},[a("el-pagination",{attrs:{total:e.localPacksCount,"current-page":e.currentPage,"page-size":e.pageSize,"hide-on-single-page":"",layout:"prev, pager, next"},on:{"current-change":e.handlePageChange}})],1)],1),e._v(" "),a("el-tab-pane",{attrs:{label:e.$t("emoji.remotePacks"),name:"remote"}},[a("el-form",{staticClass:"emoji-packs-form",attrs:{"label-width":e.labelWidth}},[a("el-form-item",{attrs:{label:e.$t("emoji.remotePacks")}},[a("div",{staticClass:"create-pack"},[a("el-input",{attrs:{placeholder:e.$t("emoji.remoteInstanceAddress")},model:{value:e.remoteInstanceAddress,callback:function(t){e.remoteInstanceAddress=t},expression:"remoteInstanceAddress"}}),e._v(" "),a("el-button",{directives:[{name:"loading",rawName:"v-loading.fullscreen.lock",value:e.fullscreenLoading,expression:"fullscreenLoading",modifiers:{fullscreen:!0,lock:!0}}],staticClass:"create-pack-button",attrs:{disabled:""===e.remoteInstanceAddress.trim()},on:{click:e.refreshRemotePacks}},[e._v("\n "+e._s(e.$t("emoji.refreshRemote"))+"\n ")])],1)]),e._v(" "),Object.keys(e.remotePacks).length>0?a("el-form-item",{attrs:{label:e.$t("emoji.packs")}},e._l(e.remotePacks,function(t,o){return a("el-collapse",{key:o,attrs:{accordion:""},on:{change:e.setActiveTab},model:{value:e.activeRemotePack,callback:function(t){e.activeRemotePack=t},expression:"activeRemotePack"}},[a("remote-emoji-pack",{attrs:{name:o,pack:t,host:e.$store.getters.authHost,"is-local":!1}})],1)}),1):e._e()],1)],1)],1)],1)},[],!1,null,null,null));S.options.__file="index.vue";t.default=S.exports},"4ySm":function(e,t,a){"use strict";var o=a("n6gr");a.n(o).a},"6lYW":function(e,t,a){},HBNe:function(e,t,a){},IVv3:function(e,t,a){"use strict";var o=a("6lYW");a.n(o).a},LE4i:function(e,t,a){"use strict";var o=a("HBNe");a.n(o).a},QZC8:function(e,t,a){},Zd0x:function(e,t,a){"use strict";var o=a("eDOw");a.n(o).a},eDOw:function(e,t,a){},n6gr:function(e,t,a){},smuD:function(e,t,a){"use strict";var o=a("QZC8");a.n(o).a}}]); +//# sourceMappingURL=chunk-97e2.8936d9a7.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-97e2.8936d9a7.js.map b/priv/static/adminfe/static/js/chunk-97e2.8936d9a7.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/views/emojiPacks/index.vue?6c67","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?5a7e","webpack:///src/views/emojiPacks/components/SingleEmojiEditor.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?52fe","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?1c09","webpack:///src/views/emojiPacks/components/NewEmojiUploader.vue","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?e7aa","webpack:///src/views/emojiPacks/components/LocalEmojiPack.vue","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?88cd","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?9534","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?4c9f","webpack:///src/views/emojiPacks/components/RemoteEmojiPack.vue","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?deb7","webpack:///./src/views/emojiPacks/index.vue?a332","webpack:///src/views/emojiPacks/index.vue","webpack:///./src/views/emojiPacks/index.vue","webpack:///./src/views/emojiPacks/components/SingleEmojiEditor.vue?bc44","webpack:///./src/views/emojiPacks/components/NewEmojiUploader.vue?d98f","webpack:///./src/views/emojiPacks/components/LocalEmojiPack.vue?2a38","webpack:///./src/views/emojiPacks/components/RemoteEmojiPack.vue?118a","webpack:///./src/views/emojiPacks/index.vue?7b86"],"names":["components_SingleEmojiEditorvue_type_script_lang_js_","props","host","type","String","required","packName","shortcode","file","isLocal","Boolean","data","newShortcode","newFile","copyToLocalPackName","copyPopoverVisible","copyToShortcode","copyToFilename","computed","emojiName","get","this","set","val","emojiFile","isDesktop","$store","state","app","device","isMobile","localPacks","emojiPacks","remoteInstance","methods","update","_this","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","dispatch","newFilename","force","t0","abrupt","stop","remove","_this2","$confirm","confirmButtonText","cancelButtonText","then","copyToLocal","addressOfEmojiInPack","trim","filename","e","copyToLocalVisible","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","class","staticClass","attrs","src","_v","placeholder","$t","model","value","callback","$$v","expression","on","click","_s","_e","placement","popper-class","_l","_pack","name","key","label","disabled","slot","options","__file","SingleEmojiEditor","components_NewEmojiUploadervue_type_script_lang_js_","imageUploadURL","customFileName","uploadEmoji","_ref","NewEmojiUploader_component","label-position","label-width","size","http-request","multiple","show-file-list","action","components_LocalEmojiPackvue_type_script_lang_js_","components","NewEmojiUploader","pack","showPackContent","currentFilesPage","currentPage","isTablet","labelWidth","localPackFilesCount","pageSize","filesPageSize","share","homepage","description","license","fallbackSrc","collapse","deletePack","_this$$store$state$em","_this$name","updatedPacks","objectWithoutProperties_default","map","_toPropertyKey","keys","length","catch","handleChange","openTabs","includes","page","handleFilesPageChange","savePackMetadata","LocalEmojiPack_component","title","href","underline","target","change","$event","pack-name","files","is-local","total","current-page","page-size","hide-on-single-page","layout","current-change","LocalEmojiPack","components_RemoteEmojiPackvue_type_script_lang_js_","downloadSharedAs","loadRemotePack","activeTab","remoteInstanceAddress","downloadFromInstance","instanceAddress","as","RemoteEmojiPack_component","RemoteEmojiPack","views_emojiPacksvue_type_script_lang_js_","RebootButton","newPackName","activeLocalPack","activeRemotePack","fullscreenLoading","localPacksCount","instance","remotePacks","mounted","refreshLocalPacks","createLocalPack","handlePageChange","importFromFS","$message","message","lang","t","refreshRemotePacks","_this3","reloadEmoji","_this4","_callee2","_context2","setActiveTab","$refs","localEmojiPack","forEach","el","emojiPacks_component","content","effects","accordion","ref","refInFor","getters","authHost","directives","rawName","modifiers","fullscreen","lock","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SingleEmojiEditor_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_NewEmojiUploader_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LocalEmojiPack_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RemoteEmojiPack_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-97e2.8936d9a7.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"emoji-packs\"},[_c('div',{staticClass:\"emoji-packs-header\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('emoji.emojiPacks')))]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"emoji-header-container\"},[_c('div',{staticClass:\"emoji-packs-header-button-container\"},[_c('el-button',{staticClass:\"reload-emoji-button\",on:{\"click\":_vm.reloadEmoji}},[_vm._v(_vm._s(_vm.$t('emoji.reloadEmoji')))]),_vm._v(\" \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('emoji.importEmojiTooltip'),\"effects\":\"dark\",\"placement\":\"bottom\",\"popper-class\":\"import-pack-button\"}},[_c('el-button',{on:{\"click\":_vm.importFromFS}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.importPacks'))+\"\\n \")])],1)],1)]),_vm._v(\" \"),_c('el-tabs',{staticClass:\"emoji-packs-tabs\",attrs:{\"type\":\"card\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},[_c('el-tab-pane',{attrs:{\"label\":_vm.$t('emoji.localPacks'),\"name\":\"local\"}},[_c('el-form',{staticClass:\"emoji-packs-form\",attrs:{\"label-width\":_vm.labelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.localPacks')}},[_c('el-button',{on:{\"click\":_vm.refreshLocalPacks}},[_vm._v(_vm._s(_vm.$t('emoji.refreshLocalPacks')))])],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.createLocalPack')}},[_c('div',{staticClass:\"create-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('users.name')},model:{value:(_vm.newPackName),callback:function ($$v) {_vm.newPackName=$$v},expression:\"newPackName\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"create-pack-button\",attrs:{\"disabled\":_vm.newPackName.trim() === ''},on:{\"click\":_vm.createLocalPack}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.create'))+\"\\n \")])],1)]),_vm._v(\" \"),(Object.keys(_vm.localPacks).length > 0)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.packs')}},_vm._l((_vm.localPacks),function(pack,name){return _c('el-collapse',{key:name,attrs:{\"accordion\":\"\"},on:{\"change\":_vm.setActiveTab},model:{value:(_vm.activeLocalPack),callback:function ($$v) {_vm.activeLocalPack=$$v},expression:\"activeLocalPack\"}},[_c('local-emoji-pack',{ref:\"localEmojiPack\",refInFor:true,attrs:{\"name\":name,\"pack\":pack,\"host\":_vm.$store.getters.authHost,\"is-local\":true}})],1)}),1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.localPacksCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1)],1),_vm._v(\" \"),_c('el-tab-pane',{attrs:{\"label\":_vm.$t('emoji.remotePacks'),\"name\":\"remote\"}},[_c('el-form',{staticClass:\"emoji-packs-form\",attrs:{\"label-width\":_vm.labelWidth}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.remotePacks')}},[_c('div',{staticClass:\"create-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.remoteInstanceAddress')},model:{value:(_vm.remoteInstanceAddress),callback:function ($$v) {_vm.remoteInstanceAddress=$$v},expression:\"remoteInstanceAddress\"}}),_vm._v(\" \"),_c('el-button',{directives:[{name:\"loading\",rawName:\"v-loading.fullscreen.lock\",value:(_vm.fullscreenLoading),expression:\"fullscreenLoading\",modifiers:{\"fullscreen\":true,\"lock\":true}}],staticClass:\"create-pack-button\",attrs:{\"disabled\":_vm.remoteInstanceAddress.trim() === ''},on:{\"click\":_vm.refreshRemotePacks}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.refreshRemote'))+\"\\n \")])],1)]),_vm._v(\" \"),(Object.keys(_vm.remotePacks).length > 0)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.packs')}},_vm._l((_vm.remotePacks),function(pack,name){return _c('el-collapse',{key:name,attrs:{\"accordion\":\"\"},on:{\"change\":_vm.setActiveTab},model:{value:(_vm.activeRemotePack),callback:function ($$v) {_vm.activeRemotePack=$$v},expression:\"activeRemotePack\"}},[_c('remote-emoji-pack',{attrs:{\"name\":name,\"pack\":pack,\"host\":_vm.$store.getters.authHost,\"is-local\":false}})],1)}),1):_vm._e()],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <div v-if=\"isLocal\" :class=\"isMobile ? 'emoji-container-flex' : 'emoji-container-grid'\">\n <img\n :src=\"addressOfEmojiInPack(host, packName, file)\"\n class=\"emoji-preview-img\">\n <el-input v-model=\"emojiName\" :placeholder=\"$t('emoji.shortcode')\" class=\"emoji-info\"/>\n <el-input v-model=\"emojiFile\" :placeholder=\"$t('emoji.file')\" class=\"emoji-info\"/>\n <div class=\"emoji-buttons\">\n <el-button type=\"primary\" @click=\"update\">{{ $t('emoji.update') }}</el-button>\n <el-button class=\"remove-emoji-button\" @click=\"remove\">{{ $t('emoji.remove') }}</el-button>\n </div>\n </div>\n\n <div v-if=\"!isLocal\" :class=\"isMobile ? 'emoji-container-flex' : 'remote-emoji-container-grid'\">\n <img\n :src=\"addressOfEmojiInPack(remoteInstance, packName, file)\"\n class=\"emoji-preview-img\">\n <el-input :value=\"emojiName\" :placeholder=\"$t('emoji.shortcode')\" class=\"emoji-info\"/>\n <el-input :value=\"emojiFile\" :placeholder=\"$t('emoji.file')\" class=\"emoji-info\"/>\n <el-popover v-model=\"copyPopoverVisible\" placement=\"left-start\" popper-class=\"copy-popover\" class=\"copy-pack-container\">\n <p>{{ $t('emoji.selectLocalPack') }}</p>\n <el-select v-model=\"copyToLocalPackName\" :placeholder=\"$t('emoji.localPack')\" class=\"copy-pack-select\">\n <el-option\n v-for=\"(_pack, name) in localPacks\"\n :key=\"name\"\n :label=\"name\"\n :value=\"name\" />\n </el-select>\n <p>{{ $t('emoji.specifyShortcode') }}</p>\n <el-input v-model=\"copyToShortcode\" :placeholder=\"$t('emoji.leaveEmptyShortcode')\"/>\n <p>{{ $t('emoji.specifyFilename') }}</p>\n <el-input v-model=\"copyToFilename\" :placeholder=\"$t('emoji.leaveEmptyFilename')\"/>\n <el-button\n :disabled=\"!copyToLocalPackName\"\n type=\"primary\"\n class=\"copy-to-local-pack-button\"\n @click=\"copyToLocal\">{{ $t('emoji.copy') }}</el-button>\n <el-button slot=\"reference\" type=\"primary\" class=\"emoji-button\">{{ $t('emoji.copyToLocalPack') }}</el-button>\n </el-popover>\n </div>\n </div>\n</template>\n\n<script>\n\nimport { addressOfEmojiInPack } from '@/api/emojiPacks'\nexport default {\n props: {\n host: {\n type: String,\n required: true\n },\n packName: {\n type: String,\n required: true\n },\n shortcode: {\n type: String,\n required: true\n },\n file: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n newShortcode: null,\n newFile: null,\n copyToLocalPackName: null,\n copyPopoverVisible: false,\n copyToShortcode: '',\n copyToFilename: ''\n }\n },\n computed: {\n emojiName: {\n get() {\n // Return a modified shortcode if it was modified, otherwise return the old shortcode\n return this.newShortcode !== null ? this.newShortcode : this.shortcode\n },\n set(val) { this.newShortcode = val }\n },\n emojiFile: {\n get() {\n // Return a modified file name if it was modified, otherwise return the old file name\n return this.newFile !== null ? this.newFile : this.file\n },\n set(val) { this.newFile = val }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n localPacks() {\n return this.$store.state.emojiPacks.localPacks\n },\n remoteInstance() {\n return this.$store.state.emojiPacks.remoteInstance\n }\n },\n methods: {\n async update() {\n try {\n this.$store.dispatch('UpdateEmojiFile', {\n packName: this.packName,\n shortcode: this.shortcode,\n newShortcode: this.emojiName,\n newFilename: this.emojiFile,\n force: true\n })\n } catch (e) {\n return\n }\n this.newShortcode = null\n this.newFile = null\n\n this.$store.dispatch('ReloadEmoji')\n },\n remove() {\n this.$confirm('This will delete the emoji, are you sure?', 'Warning', {\n confirmButtonText: 'Yes, delete the emoji',\n cancelButtonText: 'No, leave it be',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteEmojiFile', {\n packName: this.packName,\n shortcode: this.shortcode\n }).then(() => {\n this.newShortcode = null\n this.newFile = null\n\n this.$store.dispatch('ReloadEmoji')\n })\n })\n },\n copyToLocal() {\n try {\n this.$store.dispatch('AddNewEmojiFile', {\n packName: this.copyToLocalPackName,\n file: this.addressOfEmojiInPack(this.remoteInstance, this.packName, this.file),\n shortcode: this.copyToShortcode.trim() !== '' ? this.copyToShortcode.trim() : this.shortcode,\n filename: this.copyToFilename.trim() !== '' ? this.copyToFilename.trim() : this.file\n })\n } catch (e) {\n return\n }\n this.copyToLocalPackName = null\n this.copyToLocalVisible = false\n this.copyToShortcode = ''\n this.copyToFilename = ''\n\n this.$store.dispatch('ReloadEmoji')\n },\n addressOfEmojiInPack\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.copy-popover {\n width: 330px\n}\n.copy-to-local-pack-button {\n margin-top: 15px;\n float: right;\n}\n.emoji-buttons {\n place-self: center;\n min-width: 200px\n}\n.emoji-container-grid {\n display: grid;\n grid-template-columns: 75px auto auto 200px;\n grid-column-gap: 15px;\n margin-bottom: 10px;\n}\n.emoji-preview-img {\n max-width: 100%;\n place-self: center;\n}\n.emoji-info {\n place-self: center;\n}\n.copy-pack-container {\n place-self: center stretch;\n}\n.copy-pack-select {\n width: 100%;\n}\n.remote-emoji-container-grid {\n display: grid;\n grid-template-columns: 75px auto auto 160px;\n grid-column-gap: 15px;\n margin-bottom: 10px;\n}\n@media only screen and (max-width:480px) {\n .emoji-container-flex {\n display: flex;\n flex-direction: column;\n border: 1px solid #dcdfe6;\n box-shadow: 0 2px 12px 0 rgba(0,0,0,.1);\n border-radius: 4px;\n padding: 15px;\n margin: 0 15px 15px 0;\n }\n .emoji-preview-img {\n margin-bottom: 10px;\n }\n .emoji-info {\n margin-bottom: 10px;\n }\n .emoji-buttons {\n display: flex;\n justify-content: space-between;\n width: 100%;\n button {\n padding: 10px 5px;\n width: 47%;\n }\n }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n .emoji-container-grid {\n grid-column-gap: 10px;\n }\n .emoji-buttons {\n .el-button+.el-button {\n margin-left: 5px;\n }\n }\n .remote-emoji-container-grid {\n grid-column-gap: 10px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./SingleEmojiEditor.vue?vue&type=template&id=6c624eee&\"\nimport script from \"./SingleEmojiEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleEmojiEditor.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SingleEmojiEditor.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLocal)?_c('div',{class:_vm.isMobile ? 'emoji-container-flex' : 'emoji-container-grid'},[_c('img',{staticClass:\"emoji-preview-img\",attrs:{\"src\":_vm.addressOfEmojiInPack(_vm.host, _vm.packName, _vm.file)}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"placeholder\":_vm.$t('emoji.shortcode')},model:{value:(_vm.emojiName),callback:function ($$v) {_vm.emojiName=$$v},expression:\"emojiName\"}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"placeholder\":_vm.$t('emoji.file')},model:{value:(_vm.emojiFile),callback:function ($$v) {_vm.emojiFile=$$v},expression:\"emojiFile\"}}),_vm._v(\" \"),_c('div',{staticClass:\"emoji-buttons\"},[_c('el-button',{attrs:{\"type\":\"primary\"},on:{\"click\":_vm.update}},[_vm._v(_vm._s(_vm.$t('emoji.update')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"remove-emoji-button\",on:{\"click\":_vm.remove}},[_vm._v(_vm._s(_vm.$t('emoji.remove')))])],1)],1):_vm._e(),_vm._v(\" \"),(!_vm.isLocal)?_c('div',{class:_vm.isMobile ? 'emoji-container-flex' : 'remote-emoji-container-grid'},[_c('img',{staticClass:\"emoji-preview-img\",attrs:{\"src\":_vm.addressOfEmojiInPack(_vm.remoteInstance, _vm.packName, _vm.file)}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"value\":_vm.emojiName,\"placeholder\":_vm.$t('emoji.shortcode')}}),_vm._v(\" \"),_c('el-input',{staticClass:\"emoji-info\",attrs:{\"value\":_vm.emojiFile,\"placeholder\":_vm.$t('emoji.file')}}),_vm._v(\" \"),_c('el-popover',{staticClass:\"copy-pack-container\",attrs:{\"placement\":\"left-start\",\"popper-class\":\"copy-popover\"},model:{value:(_vm.copyPopoverVisible),callback:function ($$v) {_vm.copyPopoverVisible=$$v},expression:\"copyPopoverVisible\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('emoji.selectLocalPack')))]),_vm._v(\" \"),_c('el-select',{staticClass:\"copy-pack-select\",attrs:{\"placeholder\":_vm.$t('emoji.localPack')},model:{value:(_vm.copyToLocalPackName),callback:function ($$v) {_vm.copyToLocalPackName=$$v},expression:\"copyToLocalPackName\"}},_vm._l((_vm.localPacks),function(_pack,name){return _c('el-option',{key:name,attrs:{\"label\":name,\"value\":name}})}),1),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('emoji.specifyShortcode')))]),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.leaveEmptyShortcode')},model:{value:(_vm.copyToShortcode),callback:function ($$v) {_vm.copyToShortcode=$$v},expression:\"copyToShortcode\"}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('emoji.specifyFilename')))]),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.leaveEmptyFilename')},model:{value:(_vm.copyToFilename),callback:function ($$v) {_vm.copyToFilename=$$v},expression:\"copyToFilename\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"copy-to-local-pack-button\",attrs:{\"disabled\":!_vm.copyToLocalPackName,\"type\":\"primary\"},on:{\"click\":_vm.copyToLocal}},[_vm._v(_vm._s(_vm.$t('emoji.copy')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"emoji-button\",attrs:{\"slot\":\"reference\",\"type\":\"primary\"},slot:\"reference\"},[_vm._v(_vm._s(_vm.$t('emoji.copyToLocalPack')))])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=script&lang=js&\"","<template>\n <el-form :label-position=\"isMobile ? 'top' : 'left'\" label-width=\"130px\" size=\"small\" class=\"new-emoji-uploader-form\">\n <el-form-item :label=\"$t('emoji.shortcode')\">\n <el-input v-model=\"shortcode\" :placeholder=\"$t('emoji.optional')\"/>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.customFilename')\">\n <el-input v-model=\"customFileName\" :placeholder=\"$t('emoji.optional')\"/>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.uploadFile')\">\n <div class=\"upload-file-url\">\n <el-input v-model=\"imageUploadURL\" :placeholder=\"$t('emoji.url')\"/>\n <el-button type=\"primary\" class=\"upload-button\" @click=\"uploadEmoji\">{{ $t('emoji.upload') }}</el-button>\n </div>\n <div class=\"upload-container\">\n <p class=\"text\">or</p>\n <el-upload\n :http-request=\"uploadEmoji\"\n :multiple=\"false\"\n :show-file-list=\"false\"\n action=\"add\">\n <el-button type=\"primary\">{{ $t('emoji.clickToUpload') }}</el-button>\n </el-upload>\n </div>\n </el-form-item>\n </el-form>\n</template>\n\n<script>\nexport default {\n props: {\n packName: {\n type: String,\n required: true\n }\n },\n data() {\n return {\n shortcode: '',\n imageUploadURL: '',\n customFileName: ''\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n }\n },\n methods: {\n async uploadEmoji({ file }) {\n try {\n this.$store.dispatch('AddNewEmojiFile', {\n packName: this.packName,\n file: file || this.imageUploadURL,\n shortcode: this.shortcode,\n filename: this.customFileName\n })\n } catch (e) {\n return\n }\n this.shortcode = ''\n this.imageUploadURL = ''\n this.customFileName = ''\n\n this.$store.dispatch('ReloadEmoji')\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.add-new-emoji {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.text {\n line-height: 20px;\n margin-right: 15px;\n}\n.upload-container {\n display: flex;\n align-items: baseline;\n}\n.upload-button {\n margin-left: 10px;\n}\n.upload-file-url {\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .new-emoji-uploader-form {\n label.el-form-item__label {\n padding: 0;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./NewEmojiUploader.vue?vue&type=template&id=403a380a&\"\nimport script from \"./NewEmojiUploader.vue?vue&type=script&lang=js&\"\nexport * from \"./NewEmojiUploader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"NewEmojiUploader.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{staticClass:\"new-emoji-uploader-form\",attrs:{\"label-position\":_vm.isMobile ? 'top' : 'left',\"label-width\":\"130px\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.shortcode')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.optional')},model:{value:(_vm.shortcode),callback:function ($$v) {_vm.shortcode=$$v},expression:\"shortcode\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.customFilename')}},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.optional')},model:{value:(_vm.customFileName),callback:function ($$v) {_vm.customFileName=$$v},expression:\"customFileName\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.uploadFile')}},[_c('div',{staticClass:\"upload-file-url\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.url')},model:{value:(_vm.imageUploadURL),callback:function ($$v) {_vm.imageUploadURL=$$v},expression:\"imageUploadURL\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"upload-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.uploadEmoji}},[_vm._v(_vm._s(_vm.$t('emoji.upload')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"upload-container\"},[_c('p',{staticClass:\"text\"},[_vm._v(\"or\")]),_vm._v(\" \"),_c('el-upload',{attrs:{\"http-request\":_vm.uploadEmoji,\"multiple\":false,\"show-file-list\":false,\"action\":\"add\"}},[_c('el-button',{attrs:{\"type\":\"primary\"}},[_vm._v(_vm._s(_vm.$t('emoji.clickToUpload')))])],1)],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <el-collapse-item :title=\"name\" :name=\"name\" class=\"has-background\">\n <el-form :label-width=\"labelWidth\" label-position=\"left\" size=\"small\" class=\"emoji-pack-metadata\">\n <el-form-item :label=\" $t('emoji.sharePack')\">\n <el-switch v-model=\"share\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.homepage')\">\n <el-input v-model=\"homepage\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.description')\">\n <el-input v-model=\"description\" type=\"textarea\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.license')\">\n <el-input v-model=\"license\" />\n </el-form-item>\n <el-form-item :label=\" $t('emoji.fallbackSrc')\">\n <el-input v-model=\"fallbackSrc\" />\n </el-form-item>\n <el-form-item\n v-if=\"fallbackSrc && fallbackSrc.trim() !== ''\"\n :label=\" $t('emoji.fallbackSrcSha')\">\n {{ pack.pack[\"fallback-src-sha256\"] }}\n </el-form-item>\n </el-form>\n <div class=\"pack-button-container\">\n <div class=\"save-pack-button-container\">\n <el-button type=\"primary\" class=\"save-pack-button\" @click=\"savePackMetadata\">{{ $t('emoji.saveMetadata') }}</el-button>\n <el-button class=\"delete-pack-button\" @click=\"deletePack\">{{ $t('emoji.deletePack') }}</el-button>\n </div>\n <div class=\"download-pack-button-container\">\n <el-link\n v-if=\"pack.pack['can-download']\"\n :href=\"`//${host}/api/pleroma/emoji/packs/${name}/download_shared`\"\n :underline=\"false\"\n type=\"primary\"\n target=\"_blank\">\n <el-button class=\"download-archive\">{{ $t('emoji.downloadPackArchive') }}</el-button>\n </el-link>\n </div>\n </div>\n <el-collapse v-model=\"showPackContent\" class=\"contents-collapse\" @change=\"handleChange($event, name)\">\n <el-collapse-item v-if=\"isLocal\" :title=\" $t('emoji.addNewEmoji')\" name=\"addEmoji\" class=\"no-background\">\n <new-emoji-uploader :pack-name=\"name\"/>\n </el-collapse-item>\n <el-collapse-item :title=\" $t('emoji.manageEmoji')\" name=\"manageEmoji\" class=\"no-background\">\n <div v-if=\"pack.files && Object.keys(pack.files).length > 0\">\n <single-emoji-editor\n v-for=\"(file, shortcode) in pack.files\"\n :key=\"shortcode\"\n :host=\"host\"\n :pack-name=\"name\"\n :shortcode=\"shortcode\"\n :file=\"file\"\n :is-local=\"isLocal\" />\n </div>\n <span v-else class=\"expl\">{{ $t('emoji.emptyPack') }}</span>\n <div class=\"files-pagination\">\n <el-pagination\n :total=\"localPackFilesCount\"\n :current-page=\"currentFilesPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handleFilesPageChange\"\n />\n </div>\n </el-collapse-item>\n </el-collapse>\n </el-collapse-item>\n</template>\n\n<script>\nimport SingleEmojiEditor from './SingleEmojiEditor.vue'\nimport NewEmojiUploader from './NewEmojiUploader.vue'\n\nexport default {\n components: { SingleEmojiEditor, NewEmojiUploader },\n props: {\n name: {\n type: String,\n required: true\n },\n pack: {\n type: Object,\n required: true\n },\n host: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n showPackContent: []\n }\n },\n computed: {\n currentFilesPage() {\n return this.$store.state.emojiPacks.currentFilesPage\n },\n currentPage() {\n return this.$store.state.emojiPacks.currentPage\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '90px'\n } else if (this.isTablet) {\n return '155px'\n } else {\n return '155px'\n }\n },\n localPackFilesCount() {\n return this.$store.state.emojiPacks.localPackFilesCount\n },\n pageSize() {\n return this.$store.state.emojiPacks.filesPageSize\n },\n share: {\n get() { return this.pack.pack['share-files'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'share-files', value }\n )\n }\n },\n homepage: {\n get() { return this.pack.pack['homepage'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'homepage', value }\n )\n }\n },\n description: {\n get() { return this.pack.pack['description'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'description', value }\n )\n }\n },\n license: {\n get() { return this.pack.pack['license'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'license', value }\n )\n }\n },\n fallbackSrc: {\n get() { return this.pack.pack['fallback-src'] },\n set(value) {\n if (value.trim() !== '') {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value }\n )\n } else {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value: null }\n )\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src-sha256', value: null }\n )\n }\n }\n }\n },\n methods: {\n collapse() {\n this.showPackContent = []\n },\n deletePack() {\n this.$confirm('This will delete the pack, are you sure?', 'Warning', {\n confirmButtonText: 'Yes, delete the pack',\n cancelButtonText: 'No, leave it be',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeletePack', { name: this.name })\n .then(() => this.$store.dispatch('ReloadEmoji'))\n .then(() => {\n const { [this.name]: value, ...updatedPacks } = this.$store.state.emojiPacks.localPacks\n if (Object.keys(updatedPacks).length === 0 && this.currentPage > 1) {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage - 1)\n } else {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage)\n }\n })\n }).catch(() => {})\n },\n handleChange(openTabs, name) {\n if (openTabs.includes('manageEmoji')) {\n this.$store.dispatch('FetchSinglePack', { name, page: 1 })\n }\n },\n handleFilesPageChange(page) {\n this.$store.dispatch('FetchSinglePack', { name: this.name, page })\n },\n savePackMetadata() {\n this.$store.dispatch('SavePackMetadata', { packName: this.name })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.download-archive {\n width: 250px\n}\n.download-pack-button-container {\n width: 265px;\n .el-link {\n width: inherit;\n span {\n width: inherit;\n .download-archive {\n width: inherit;\n }\n }\n }\n}\n.download-shared-pack {\n display: flex;\n margin-bottom: 10px;\n}\n.download-shared-pack-button {\n margin-left: 10px;\n}\n.el-collapse-item__content {\n padding-bottom: 0;\n}\n.el-collapse-item__header {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.emoji-pack-card {\n margin-top: 5px;\n}\n.emoji-pack-metadata {\n .el-form-item {\n margin-bottom: 10px;\n }\n}\n.files-pagination {\n margin: 25px 0;\n text-align: center;\n}\n.has-background .el-collapse-item__header {\n background: #f6f6f6;\n}\n.no-background .el-collapse-item__header {\n background: white;\n}\n.pack-button-container {\n margin: 0 0 18px 120px;\n}\n.save-pack-button-container {\n margin-bottom: 8px;\n width: 265px;\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .delete-pack-button {\n width: 45%;\n }\n .download-pack-button-container {\n width: 100%;\n }\n .download-shared-pack {\n flex-direction: column;\n }\n .download-shared-pack-button {\n margin-left: 0;\n margin-top: 10px;\n padding: 10px;\n }\n .pack-button-container {\n width: 100%;\n margin: 0 0 22px 0;\n }\n .remote-pack-metadata {\n .el-form-item__content {\n line-height: 24px;\n margin-top: 4px;\n }\n }\n .save-pack-button {\n width: 54%;\n }\n .save-pack-button-container {\n margin-bottom: 8px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n button {\n padding: 10px 5px;\n }\n .el-button+.el-button {\n margin-left: 3px;\n }\n }\n}\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LocalEmojiPack.vue?vue&type=template&id=63adc609&\"\nimport script from \"./LocalEmojiPack.vue?vue&type=script&lang=js&\"\nexport * from \"./LocalEmojiPack.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LocalEmojiPack.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-collapse-item',{staticClass:\"has-background\",attrs:{\"title\":_vm.name,\"name\":_vm.name}},[_c('el-form',{staticClass:\"emoji-pack-metadata\",attrs:{\"label-width\":_vm.labelWidth,\"label-position\":\"left\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.sharePack')}},[_c('el-switch',{model:{value:(_vm.share),callback:function ($$v) {_vm.share=$$v},expression:\"share\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.homepage')}},[_c('el-input',{model:{value:(_vm.homepage),callback:function ($$v) {_vm.homepage=$$v},expression:\"homepage\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.description')}},[_c('el-input',{attrs:{\"type\":\"textarea\"},model:{value:(_vm.description),callback:function ($$v) {_vm.description=$$v},expression:\"description\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.license')}},[_c('el-input',{model:{value:(_vm.license),callback:function ($$v) {_vm.license=$$v},expression:\"license\"}})],1),_vm._v(\" \"),_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrc')}},[_c('el-input',{model:{value:(_vm.fallbackSrc),callback:function ($$v) {_vm.fallbackSrc=$$v},expression:\"fallbackSrc\"}})],1),_vm._v(\" \"),(_vm.fallbackSrc && _vm.fallbackSrc.trim() !== '')?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrcSha')}},[_vm._v(\"\\n \"+_vm._s(_vm.pack.pack[\"fallback-src-sha256\"])+\"\\n \")]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"pack-button-container\"},[_c('div',{staticClass:\"save-pack-button-container\"},[_c('el-button',{staticClass:\"save-pack-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.savePackMetadata}},[_vm._v(_vm._s(_vm.$t('emoji.saveMetadata')))]),_vm._v(\" \"),_c('el-button',{staticClass:\"delete-pack-button\",on:{\"click\":_vm.deletePack}},[_vm._v(_vm._s(_vm.$t('emoji.deletePack')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"download-pack-button-container\"},[(_vm.pack.pack['can-download'])?_c('el-link',{attrs:{\"href\":(\"//\" + _vm.host + \"/api/pleroma/emoji/packs/\" + _vm.name + \"/download_shared\"),\"underline\":false,\"type\":\"primary\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"download-archive\"},[_vm._v(_vm._s(_vm.$t('emoji.downloadPackArchive')))])],1):_vm._e()],1)]),_vm._v(\" \"),_c('el-collapse',{staticClass:\"contents-collapse\",on:{\"change\":function($event){return _vm.handleChange($event, _vm.name)}},model:{value:(_vm.showPackContent),callback:function ($$v) {_vm.showPackContent=$$v},expression:\"showPackContent\"}},[(_vm.isLocal)?_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.addNewEmoji'),\"name\":\"addEmoji\"}},[_c('new-emoji-uploader',{attrs:{\"pack-name\":_vm.name}})],1):_vm._e(),_vm._v(\" \"),_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.manageEmoji'),\"name\":\"manageEmoji\"}},[(_vm.pack.files && Object.keys(_vm.pack.files).length > 0)?_c('div',_vm._l((_vm.pack.files),function(file,shortcode){return _c('single-emoji-editor',{key:shortcode,attrs:{\"host\":_vm.host,\"pack-name\":_vm.name,\"shortcode\":shortcode,\"file\":file,\"is-local\":_vm.isLocal}})}),1):_c('span',{staticClass:\"expl\"},[_vm._v(_vm._s(_vm.$t('emoji.emptyPack')))]),_vm._v(\" \"),_c('div',{staticClass:\"files-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.localPackFilesCount,\"current-page\":_vm.currentFilesPage,\"page-size\":_vm.pageSize,\"hide-on-single-page\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handleFilesPageChange}})],1)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=script&lang=js&\"","<template>\n <el-collapse-item :title=\"name\" :name=\"name\" class=\"has-background\">\n <div v-if=\"loadRemotePack\">\n <el-form :label-width=\"labelWidth\" label-position=\"left\" size=\"small\" class=\"emoji-pack-metadata remote-pack-metadata\">\n <el-form-item :label=\" $t('emoji.sharePack')\">\n <el-switch v-model=\"share\" disabled />\n </el-form-item>\n <el-form-item v-if=\"homepage\" :label=\" $t('emoji.homepage')\">\n <span>{{ homepage }}</span>\n </el-form-item>\n <el-form-item v-if=\"description\" :label=\" $t('emoji.description')\">\n <span>{{ description }}</span>\n </el-form-item>\n <el-form-item v-if=\"license\" :label=\" $t('emoji.license')\">\n <span>{{ license }}</span>\n </el-form-item>\n <el-form-item v-if=\"fallbackSrc\" :label=\" $t('emoji.fallbackSrc')\">\n <span>{{ fallbackSrc }}</span>\n </el-form-item>\n <el-form-item\n v-if=\"fallbackSrc && fallbackSrc.trim() !== ''\"\n :label=\" $t('emoji.fallbackSrcSha')\">\n {{ pack.pack[\"fallback-src-sha256\"] }}\n </el-form-item>\n <el-form-item>\n <el-link\n v-if=\"pack.pack['can-download'] && pack.pack['fallback-src']\"\n :href=\"pack.pack['fallback-src']\"\n :underline=\"false\"\n type=\"primary\"\n target=\"_blank\">\n <el-button class=\"download-archive\">{{ $t('emoji.downloadPackArchive') }}</el-button>\n </el-link>\n </el-form-item>\n </el-form>\n <el-collapse v-model=\"showPackContent\" class=\"contents-collapse\">\n <el-collapse-item :title=\" $t('emoji.manageEmoji')\" name=\"manageEmoji\" class=\"no-background\">\n <div v-if=\"pack.files && Object.keys(pack.files).length > 0\">\n <single-emoji-editor\n v-for=\"(file, shortcode) in pack.files\"\n :key=\"shortcode\"\n :host=\"host\"\n :pack-name=\"name\"\n :shortcode=\"shortcode\"\n :file=\"file\"\n :is-local=\"isLocal\" />\n </div>\n <span v-else class=\"expl\">{{ $t('emoji.emptyPack') }}</span>\n </el-collapse-item>\n <el-collapse-item :title=\" $t('emoji.downloadPack')\" name=\"downloadPack\" class=\"no-background\">\n <p>\n {{ $t('emoji.thisWillDownload') }} \"{{ name }}\" {{ $t('emoji.downloadToCurrentInstance') }}\n \"{{ downloadSharedAs.trim() === '' ? name : downloadSharedAs }}\" ({{ $t('emoji.canBeChanged') }}).\n {{ $t('emoji.willBeUsable') }}.\n </p>\n <div class=\"download-shared-pack\">\n <el-input v-model=\"downloadSharedAs\" :placeholder=\" $t('emoji.downloadAsOptional')\"/>\n <el-button type=\"primary\" class=\"download-shared-pack-button\" @click=\"downloadFromInstance\">\n {{ isDesktop ? $t('emoji.downloadSharedPack') : $t('emoji.downloadSharedPackMobile') }}\n </el-button>\n </div>\n </el-collapse-item>\n </el-collapse>\n </div>\n </el-collapse-item>\n</template>\n\n<script>\nimport SingleEmojiEditor from './SingleEmojiEditor.vue'\n\nexport default {\n components: { SingleEmojiEditor },\n props: {\n name: {\n type: String,\n required: true\n },\n pack: {\n type: Object,\n required: true\n },\n host: {\n type: String,\n required: true\n },\n isLocal: {\n type: Boolean,\n required: true\n }\n },\n data() {\n return {\n showPackContent: [],\n downloadSharedAs: ''\n }\n },\n computed: {\n currentPage() {\n return this.$store.state.emojiPacks.currentPage\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '90px'\n } else if (this.isTablet) {\n return '120px'\n } else {\n return '120px'\n }\n },\n loadRemotePack() {\n return this.$store.state.emojiPacks.activeTab === this.name\n },\n remoteInstanceAddress() {\n return this.$store.state.emojiPacks.remoteInstance\n },\n share: {\n get() { return this.pack.pack['share-files'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'share-files', value }\n )\n }\n },\n homepage: {\n get() { return this.pack.pack['homepage'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'homepage', value }\n )\n }\n },\n description: {\n get() { return this.pack.pack['description'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'description', value }\n )\n }\n },\n license: {\n get() { return this.pack.pack['license'] },\n set(value) {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'license', value }\n )\n }\n },\n fallbackSrc: {\n get() { return this.pack.pack['fallback-src'] },\n set(value) {\n if (value.trim() !== '') {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value }\n )\n } else {\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src', value: null }\n )\n this.$store.dispatch(\n 'UpdateLocalPackVal',\n { name: this.name, key: 'fallback-src-sha256', value: null }\n )\n }\n }\n }\n },\n methods: {\n downloadFromInstance() {\n this.$store.dispatch(\n 'DownloadFrom',\n { instanceAddress: this.remoteInstanceAddress, packName: this.name, as: this.downloadSharedAs }\n ).then(() => this.$store.dispatch('ReloadEmoji'))\n .then(() => this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage))\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.download-archive {\n width: 250px\n}\n.download-pack-button-container {\n width: 265px;\n .el-link {\n width: inherit;\n span {\n width: inherit;\n .download-archive {\n width: inherit;\n }\n }\n }\n}\n.download-shared-pack {\n display: flex;\n margin-bottom: 10px;\n}\n.download-shared-pack-button {\n margin-left: 10px;\n}\n.el-collapse-item__content {\n padding-bottom: 0;\n}\n.el-collapse-item__header {\n height: 36px;\n font-size: 14px;\n font-weight: 700;\n color: #606266;\n}\n.emoji-pack-card {\n margin-top: 5px;\n}\n.emoji-pack-metadata {\n .el-form-item {\n margin-bottom: 10px;\n }\n}\n.has-background .el-collapse-item__header {\n background: #f6f6f6;\n}\n.no-background .el-collapse-item__header {\n background: white;\n}\n.pack-button-container {\n margin: 0 0 18px 120px;\n}\n.save-pack-button-container {\n margin-bottom: 8px;\n width: 265px;\n display: flex;\n justify-content: space-between;\n}\n@media only screen and (max-width:480px) {\n .delete-pack-button {\n width: 45%;\n }\n .download-pack-button-container {\n width: 100%;\n }\n .download-shared-pack {\n flex-direction: column;\n }\n .download-shared-pack-button {\n margin-left: 0;\n margin-top: 10px;\n padding: 10px;\n }\n .pack-button-container {\n width: 100%;\n margin: 0 0 22px 0;\n }\n .remote-pack-metadata {\n .el-form-item__content {\n line-height: 24px;\n margin-top: 4px;\n }\n }\n .save-pack-button {\n width: 54%;\n }\n .save-pack-button-container {\n margin-bottom: 8px;\n width: 100%;\n display: flex;\n justify-content: space-between;\n button {\n padding: 10px 5px;\n }\n .el-button+.el-button {\n margin-left: 3px;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./RemoteEmojiPack.vue?vue&type=template&id=3c9fab0c&\"\nimport script from \"./RemoteEmojiPack.vue?vue&type=script&lang=js&\"\nexport * from \"./RemoteEmojiPack.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RemoteEmojiPack.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-collapse-item',{staticClass:\"has-background\",attrs:{\"title\":_vm.name,\"name\":_vm.name}},[(_vm.loadRemotePack)?_c('div',[_c('el-form',{staticClass:\"emoji-pack-metadata remote-pack-metadata\",attrs:{\"label-width\":_vm.labelWidth,\"label-position\":\"left\",\"size\":\"small\"}},[_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.sharePack')}},[_c('el-switch',{attrs:{\"disabled\":\"\"},model:{value:(_vm.share),callback:function ($$v) {_vm.share=$$v},expression:\"share\"}})],1),_vm._v(\" \"),(_vm.homepage)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.homepage')}},[_c('span',[_vm._v(_vm._s(_vm.homepage))])]):_vm._e(),_vm._v(\" \"),(_vm.description)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.description')}},[_c('span',[_vm._v(_vm._s(_vm.description))])]):_vm._e(),_vm._v(\" \"),(_vm.license)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.license')}},[_c('span',[_vm._v(_vm._s(_vm.license))])]):_vm._e(),_vm._v(\" \"),(_vm.fallbackSrc)?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrc')}},[_c('span',[_vm._v(_vm._s(_vm.fallbackSrc))])]):_vm._e(),_vm._v(\" \"),(_vm.fallbackSrc && _vm.fallbackSrc.trim() !== '')?_c('el-form-item',{attrs:{\"label\":_vm.$t('emoji.fallbackSrcSha')}},[_vm._v(\"\\n \"+_vm._s(_vm.pack.pack[\"fallback-src-sha256\"])+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-form-item',[(_vm.pack.pack['can-download'] && _vm.pack.pack['fallback-src'])?_c('el-link',{attrs:{\"href\":_vm.pack.pack['fallback-src'],\"underline\":false,\"type\":\"primary\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"download-archive\"},[_vm._v(_vm._s(_vm.$t('emoji.downloadPackArchive')))])],1):_vm._e()],1)],1),_vm._v(\" \"),_c('el-collapse',{staticClass:\"contents-collapse\",model:{value:(_vm.showPackContent),callback:function ($$v) {_vm.showPackContent=$$v},expression:\"showPackContent\"}},[_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.manageEmoji'),\"name\":\"manageEmoji\"}},[(_vm.pack.files && Object.keys(_vm.pack.files).length > 0)?_c('div',_vm._l((_vm.pack.files),function(file,shortcode){return _c('single-emoji-editor',{key:shortcode,attrs:{\"host\":_vm.host,\"pack-name\":_vm.name,\"shortcode\":shortcode,\"file\":file,\"is-local\":_vm.isLocal}})}),1):_c('span',{staticClass:\"expl\"},[_vm._v(_vm._s(_vm.$t('emoji.emptyPack')))])]),_vm._v(\" \"),_c('el-collapse-item',{staticClass:\"no-background\",attrs:{\"title\":_vm.$t('emoji.downloadPack'),\"name\":\"downloadPack\"}},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.thisWillDownload'))+\" \\\"\"+_vm._s(_vm.name)+\"\\\" \"+_vm._s(_vm.$t('emoji.downloadToCurrentInstance'))+\"\\n \\\"\"+_vm._s(_vm.downloadSharedAs.trim() === '' ? _vm.name : _vm.downloadSharedAs)+\"\\\" (\"+_vm._s(_vm.$t('emoji.canBeChanged'))+\").\\n \"+_vm._s(_vm.$t('emoji.willBeUsable'))+\".\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"download-shared-pack\"},[_c('el-input',{attrs:{\"placeholder\":_vm.$t('emoji.downloadAsOptional')},model:{value:(_vm.downloadSharedAs),callback:function ($$v) {_vm.downloadSharedAs=$$v},expression:\"downloadSharedAs\"}}),_vm._v(\" \"),_c('el-button',{staticClass:\"download-shared-pack-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.downloadFromInstance}},[_vm._v(\"\\n \"+_vm._s(_vm.isDesktop ? _vm.$t('emoji.downloadSharedPack') : _vm.$t('emoji.downloadSharedPackMobile'))+\"\\n \")])],1)])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"emoji-packs\">\n <div class=\"emoji-packs-header\">\n <h1>{{ $t('emoji.emojiPacks') }}</h1>\n <reboot-button/>\n </div>\n <div class=\"emoji-header-container\">\n <div class=\"emoji-packs-header-button-container\">\n <el-button class=\"reload-emoji-button\" @click=\"reloadEmoji\">{{ $t('emoji.reloadEmoji') }}</el-button>\n <el-tooltip :content=\"$t('emoji.importEmojiTooltip')\" effects=\"dark\" placement=\"bottom\" popper-class=\"import-pack-button\">\n <el-button @click=\"importFromFS\">\n {{ $t('emoji.importPacks') }}\n </el-button>\n </el-tooltip>\n </div>\n </div>\n <el-tabs v-model=\"activeTab\" type=\"card\" class=\"emoji-packs-tabs\">\n <el-tab-pane :label=\"$t('emoji.localPacks')\" name=\"local\">\n <el-form :label-width=\"labelWidth\" class=\"emoji-packs-form\">\n <el-form-item :label=\"$t('emoji.localPacks')\">\n <el-button @click=\"refreshLocalPacks\">{{ $t('emoji.refreshLocalPacks') }}</el-button>\n </el-form-item>\n <el-form-item :label=\"$t('emoji.createLocalPack')\">\n <div class=\"create-pack\">\n <el-input v-model=\"newPackName\" :placeholder=\"$t('users.name')\" />\n <el-button\n :disabled=\"newPackName.trim() === ''\"\n class=\"create-pack-button\"\n @click=\"createLocalPack\">\n {{ $t('users.create') }}\n </el-button>\n </div>\n </el-form-item>\n <el-form-item v-if=\"Object.keys(localPacks).length > 0\" :label=\"$t('emoji.packs')\">\n <el-collapse v-for=\"(pack, name) in localPacks\" :key=\"name\" v-model=\"activeLocalPack\" accordion @change=\"setActiveTab\">\n <local-emoji-pack ref=\"localEmojiPack\" :name=\"name\" :pack=\"pack\" :host=\"$store.getters.authHost\" :is-local=\"true\" />\n </el-collapse>\n </el-form-item>\n </el-form>\n <div class=\"pagination\">\n <el-pagination\n :total=\"localPacksCount\"\n :current-page=\"currentPage\"\n :page-size=\"pageSize\"\n hide-on-single-page\n layout=\"prev, pager, next\"\n @current-change=\"handlePageChange\"\n />\n </div>\n </el-tab-pane>\n <el-tab-pane :label=\"$t('emoji.remotePacks')\" name=\"remote\">\n <el-form :label-width=\"labelWidth\" class=\"emoji-packs-form\">\n <el-form-item :label=\"$t('emoji.remotePacks')\">\n <div class=\"create-pack\">\n <el-input\n v-model=\"remoteInstanceAddress\"\n :placeholder=\"$t('emoji.remoteInstanceAddress')\" />\n <el-button\n v-loading.fullscreen.lock=\"fullscreenLoading\"\n :disabled=\"remoteInstanceAddress.trim() === ''\"\n class=\"create-pack-button\"\n @click=\"refreshRemotePacks\">\n {{ $t('emoji.refreshRemote') }}\n </el-button>\n </div>\n </el-form-item>\n <el-form-item v-if=\"Object.keys(remotePacks).length > 0\" :label=\"$t('emoji.packs')\">\n <el-collapse v-for=\"(pack, name) in remotePacks\" :key=\"name\" v-model=\"activeRemotePack\" accordion @change=\"setActiveTab\">\n <remote-emoji-pack :name=\"name\" :pack=\"pack\" :host=\"$store.getters.authHost\" :is-local=\"false\" />\n </el-collapse>\n </el-form-item>\n </el-form>\n </el-tab-pane>\n </el-tabs>\n </div>\n</template>\n\n<script>\nimport LocalEmojiPack from './components/LocalEmojiPack'\nimport RemoteEmojiPack from './components/RemoteEmojiPack'\nimport i18n from '@/lang'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: { LocalEmojiPack, RebootButton, RemoteEmojiPack },\n data() {\n return {\n activeTab: 'local',\n newPackName: '',\n activeLocalPack: [],\n activeRemotePack: [],\n fullscreenLoading: false\n }\n },\n computed: {\n currentPage() {\n return this.$store.state.emojiPacks.currentPage\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '105px'\n } else if (this.isTablet) {\n return '180px'\n } else {\n return '200px'\n }\n },\n localPacks() {\n return this.$store.state.emojiPacks.localPacks\n },\n localPacksCount() {\n return this.$store.state.emojiPacks.localPacksCount\n },\n pageSize() {\n return this.$store.state.emojiPacks.pageSize\n },\n remoteInstanceAddress: {\n get() {\n return this.$store.state.emojiPacks.remoteInstance\n },\n set(instance) {\n this.$store.dispatch('SetRemoteInstance', instance)\n }\n },\n remotePacks() {\n return this.$store.state.emojiPacks.remotePacks\n }\n },\n mounted() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.refreshLocalPacks()\n },\n methods: {\n createLocalPack() {\n this.$store.dispatch('CreatePack', { name: this.newPackName })\n .then(() => {\n this.newPackName = ''\n\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage)\n this.$store.dispatch('ReloadEmoji')\n })\n },\n handlePageChange(page) {\n this.$store.dispatch('FetchLocalEmojiPacks', page)\n },\n importFromFS() {\n this.$store.dispatch('ImportFromFS')\n .then(() => {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage)\n this.$store.dispatch('ReloadEmoji')\n })\n },\n refreshLocalPacks() {\n try {\n this.$store.dispatch('FetchLocalEmojiPacks', this.currentPage)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('emoji.refreshed')\n })\n },\n async refreshRemotePacks() {\n this.fullscreenLoading = true\n await this.$store.dispatch('SetRemoteEmojiPacks', { remoteInstance: this.remoteInstanceAddress })\n this.fullscreenLoading = false\n },\n async reloadEmoji() {\n try {\n this.$store.dispatch('ReloadEmoji')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('emoji.reloaded')\n })\n },\n setActiveTab(activeTab) {\n this.$refs.localEmojiPack.forEach(el => el.collapse())\n this.$store.dispatch('SetActiveTab', activeTab)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.create-pack {\n display: flex;\n justify-content: space-between\n}\n.create-pack-button {\n margin-left: 10px;\n}\n.emoji-header-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 0 15px 22px 15px;\n}\n.emoji-packs-header-button-container {\n display: flex;\n}\n.emoji-packs-form {\n margin-top: 15px;\n}\n.emoji-packs-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin: 10px 15px 15px 15px;\n}\n.emoji-packs-tabs {\n margin: 0 15px 15px 15px;\n}\n.import-pack-button {\n margin-left: 10px;\n width: 30%;\n max-width: 700px;\n}\nh1 {\n margin: 0;\n}\n.line {\n width: 100%;\n height: 0;\n border: 1px solid #eee;\n margin-bottom: 22px;\n}\n.pagination {\n margin: 25px 0;\n text-align: center;\n}\n.reboot-button {\n padding: 10px;\n margin: 0;\n width: 145px;\n}\n\n@media only screen and (min-width: 1824px) {\n .emoji-packs {\n max-width: 1824px;\n margin: auto;\n }\n}\n\n@media only screen and (max-width:480px) {\n .create-pack {\n height: 82px;\n flex-direction: column;\n }\n .create-pack-button {\n margin-left: 0;\n }\n .divider {\n margin: 15px 0;\n }\n .el-message {\n min-width: 80%;\n }\n .el-message-box {\n width: 80%;\n }\n .emoji-header-container {\n flex-direction: column;\n align-items: flex-start;\n }\n .emoji-packs-form {\n margin: 0 7px;\n label {\n padding-right: 8px;\n }\n .el-form-item {\n margin-bottom: 15px;\n }\n }\n .emoji-packs-header {\n margin: 15px;\n }\n .emoji-packs-header-button-container {\n height: 82px;\n flex-direction: column;\n .el-button+.el-button {\n margin: 7px 0 0 0;\n width: fit-content;\n }\n }\n .import-pack-button {\n width: 90%;\n }\n .reload-emoji-button {\n width: fit-content;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=c5c109ba&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SingleEmojiEditor.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NewEmojiUploader.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LocalEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RemoteEmojiPack.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-9a72.3826fd71.js b/priv/static/adminfe/static/js/chunk-9a72.3826fd71.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-9a72"],{GFxI:function(e,n,t){},aSQl:function(e,n,t){"use strict";t.d(n,"a",function(){return p});var o=t("o0o1"),a=t.n(o),r=t("yXPU"),s=t.n(r),i=t("oAJy"),l=t.n(i),c=t("LvDl"),u=t.n(c),p=function(){var e=s()(a.a.mark(function e(n){var t,o;return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.a.getItem("vuex-lz");case 2:if(t=e.sent,void 0!==(o=u.a.get(t,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:o});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},abDm:function(e,n,t){"use strict";var o=t("GFxI");t.n(o).a},c11S:function(e,n,t){"use strict";var o=t("gTgX");t.n(o).a},gTgX:function(e,n,t){},ntYl:function(e,n,t){"use strict";t.r(n);var o=t("J4zp"),a=t.n(o),r=t("o0o1"),s=t.n(r),i=t("yXPU"),l=t.n(i),c=t("zT9a"),u=t("oAJy"),p=t.n(u),d=t("LvDl"),m=t.n(d),g=t("mSNy"),v=t("aSQl"),h={name:"Login",components:{"svg-icon":c.a},data:function(){return{loginForm:{username:"",password:""},passwordType:"password",loading:!1,loadingPleromaFE:!1,showDialog:!1,redirect:void 0,pleromaFEToken:!1,pleromaFEStateKey:"vuex-lz",pleromaFEState:{}}},watch:{$route:{handler:function(e){this.redirect=e.query&&e.query.redirect},immediate:!0}},mounted:function(){var e=this;return l()(s.a.mark(function n(){var t;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,p.a.getItem(e.pleromaFEStateKey);case 2:if(t=n.sent,e.pleromaFEState=t,void 0!==m.a.get(t,"oauth.userToken")){n.next=6;break}return n.abrupt("return");case 6:e.pleromaFEToken=!0;case 7:case"end":return n.stop()}},n)}))()},methods:{showPwd:function(){"password"===this.passwordType?this.passwordType="":this.passwordType="password"},handleLogin:function(){var e=this;this.loading=!0;var n=this.getLoginData();this.$store.dispatch("LoginByUsername",n).then(function(){e.loading=!1,e.$router.push({path:e.redirect||"/users/index"})}).catch(function(){e.loading=!1})},handlePleromaFELogin:function(){var e=this;return l()(s.a.mark(function n(){return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.loadingPleromaFE=!0,n.prev=1,n.next=4,Object(v.a)(e.$store);case 4:n.next=10;break;case 6:n.prev=6,n.t0=n.catch(1),e.loadingPleromaFE=!1,e.$message.error(g.a.t("login.pleromaFELoginFailed"));case 10:e.loadingPleromaFE=!1,e.$message.success(g.a.t("login.pleromaFELoginSucceed")),e.$router.push({path:e.redirect||"/users/index"});case 13:case"end":return n.stop()}},n,null,[[1,6]])}))()},getLoginData:function(){var e=this.loginForm.username.split("@"),n=a()(e,2),t=n[0],o=n[1];return{username:t.trim(),authHost:o?o.trim():window.location.host,password:this.loginForm.password}}}},f=(t("c11S"),t("abDm"),t("KHd+")),w=Object(f.a)(h,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"login-container"},[t("el-form",{ref:"loginForm",staticClass:"login-form",attrs:{model:e.loginForm,"auto-complete":"on","label-position":"left"}},[t("div",{staticClass:"title-container"},[t("h3",{staticClass:"title"},[e._v("\n "+e._s(e.$t("login.title"))+"\n ")])]),e._v(" "),t("el-form-item",{attrs:{prop:"username"}},[t("span",{staticClass:"svg-container"},[t("svg-icon",{attrs:{"icon-class":"user"}})],1),e._v(" "),t("el-input",{attrs:{placeholder:e.$t("login.username"),name:"username",type:"text","auto-complete":"on"},model:{value:e.loginForm.username,callback:function(n){e.$set(e.loginForm,"username",n)},expression:"loginForm.username"}})],1),e._v(" "),t("div",{staticClass:"omit-host-note"},[e._v(e._s(e.$t("login.omitHostname")))]),e._v(" "),t("el-form-item",{attrs:{prop:"password"}},[t("span",{staticClass:"svg-container"},[t("svg-icon",{attrs:{"icon-class":"password"}})],1),e._v(" "),t("el-input",{attrs:{type:e.passwordType,placeholder:e.$t("login.password"),name:"password","auto-complete":"on"},nativeOn:{keyup:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.handleLogin(n)}},model:{value:e.loginForm.password,callback:function(n){e.$set(e.loginForm,"password",n)},expression:"loginForm.password"}}),e._v(" "),t("span",{staticClass:"show-pwd",on:{click:e.showPwd}},[t("svg-icon",{attrs:{"icon-class":"password"===e.passwordType?"eye":"eye-open"}})],1)],1),e._v(" "),t("el-button",{staticClass:"login-button",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handleLogin(n)}}},[e._v("\n "+e._s(e.$t("login.logIn"))+"\n ")]),e._v(" "),e.pleromaFEToken?t("el-button",{staticClass:"login-button",attrs:{loading:e.loadingPleromaFE,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handlePleromaFELogin(n)}}},[e._v("\n "+e._s(e.$t("login.logInViaPleromaFE"))+"\n ")]):e._e()],1)],1)},[],!1,null,"5bb13616",null);w.options.__file="index.vue";n.default=w.exports}}]); +//# sourceMappingURL=chunk-9a72.3826fd71.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-9a72.3826fd71.js.map b/priv/static/adminfe/static/js/chunk-9a72.3826fd71.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/services/pleromaAuth.js","webpack:///./src/views/login/index.vue?4fb3","webpack:///./src/views/login/index.vue?0399","webpack:///./src/views/login/index.vue?7240","webpack:///./src/views/login/index.vue?95e4","webpack:///src/views/login/index.vue","webpack:///./src/views/login/index.vue"],"names":["authenticateWithPleromaFE","_ref","_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","a","mark","_callee","store","pleromaFEState","token","wrap","_context","prev","next","localforage","getItem","sent","undefined","_","get","Error","dispatch","stop","_x","apply","this","arguments","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_5bb13616_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","views_loginvue_type_script_lang_js_","name","components","svg-icon","SvgIcon","data","loginForm","username","password","passwordType","loading","loadingPleromaFE","showDialog","redirect","pleromaFEToken","pleromaFEStateKey","watch","$route","handler","route","query","immediate","mounted","_this","asyncToGenerator_default","regenerator_default","localforage_default","lodash_default","abrupt","methods","showPwd","handleLogin","_this2","loginData","getLoginData","$store","then","$router","push","path","catch","handlePleromaFELogin","_this3","_callee2","_context2","Object","pleromaAuth","t0","$message","error","lang","t","success","_this$loginForm$usern","split","_this$loginForm$usern2","slicedToArray_default","authHost","trim","window","location","host","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","ref","attrs","model","auto-complete","label-position","_v","_s","$t","prop","icon-class","placeholder","type","value","callback","$$v","$set","expression","nativeOn","keyup","$event","indexOf","_k","keyCode","key","on","click","preventDefault","_e","options","__file","__webpack_exports__"],"mappings":"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","file":"static/js/chunk-9a72.3826fd71.js","sourcesContent":["import localforage from 'localforage'\nimport _ from 'lodash'\n\nconst pleromaFEStateKey = 'vuex-lz'\n\nexport const authenticateWithPleromaFE = async(store) => {\n const pleromaFEState = await localforage.getItem(pleromaFEStateKey)\n const token = _.get(pleromaFEState, 'oauth.userToken')\n\n if (token === undefined) {\n throw new Error('PleromaFE token not found')\n }\n\n await store.dispatch('LoginByPleromaFE', { token })\n}\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login-container\"},[_c('el-form',{ref:\"loginForm\",staticClass:\"login-form\",attrs:{\"model\":_vm.loginForm,\"auto-complete\":\"on\",\"label-position\":\"left\"}},[_c('div',{staticClass:\"title-container\"},[_c('h3',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.title'))+\"\\n \")])]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"prop\":\"username\"}},[_c('span',{staticClass:\"svg-container\"},[_c('svg-icon',{attrs:{\"icon-class\":\"user\"}})],1),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('login.username'),\"name\":\"username\",\"type\":\"text\",\"auto-complete\":\"on\"},model:{value:(_vm.loginForm.username),callback:function ($$v) {_vm.$set(_vm.loginForm, \"username\", $$v)},expression:\"loginForm.username\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"omit-host-note\"},[_vm._v(_vm._s(_vm.$t('login.omitHostname')))]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"prop\":\"password\"}},[_c('span',{staticClass:\"svg-container\"},[_c('svg-icon',{attrs:{\"icon-class\":\"password\"}})],1),_vm._v(\" \"),_c('el-input',{attrs:{\"type\":_vm.passwordType,\"placeholder\":_vm.$t('login.password'),\"name\":\"password\",\"auto-complete\":\"on\"},nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.handleLogin($event)}},model:{value:(_vm.loginForm.password),callback:function ($$v) {_vm.$set(_vm.loginForm, \"password\", $$v)},expression:\"loginForm.password\"}}),_vm._v(\" \"),_c('span',{staticClass:\"show-pwd\",on:{\"click\":_vm.showPwd}},[_c('svg-icon',{attrs:{\"icon-class\":_vm.passwordType === 'password' ? 'eye' : 'eye-open'}})],1)],1),_vm._v(\" \"),_c('el-button',{staticClass:\"login-button\",attrs:{\"loading\":_vm.loading,\"type\":\"primary\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.handleLogin($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.logIn'))+\"\\n \")]),_vm._v(\" \"),(_vm.pleromaFEToken)?_c('el-button',{staticClass:\"login-button\",attrs:{\"loading\":_vm.loadingPleromaFE,\"type\":\"primary\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.handlePleromaFELogin($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.logInViaPleromaFE'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"login-container\">\n <el-form ref=\"loginForm\" :model=\"loginForm\" class=\"login-form\" auto-complete=\"on\" label-position=\"left\">\n <div class=\"title-container\">\n <h3 class=\"title\">\n {{ $t('login.title') }}\n </h3>\n </div>\n\n <el-form-item prop=\"username\">\n <span class=\"svg-container\">\n <svg-icon icon-class=\"user\" />\n </span>\n <el-input\n v-model=\"loginForm.username\"\n :placeholder=\"$t('login.username')\"\n name=\"username\"\n type=\"text\"\n auto-complete=\"on\"\n />\n </el-form-item>\n <div class=\"omit-host-note\">{{ $t('login.omitHostname') }}</div>\n\n <el-form-item prop=\"password\">\n <span class=\"svg-container\">\n <svg-icon icon-class=\"password\" />\n </span>\n <el-input\n v-model=\"loginForm.password\"\n :type=\"passwordType\"\n :placeholder=\"$t('login.password')\"\n name=\"password\"\n auto-complete=\"on\"\n @keyup.enter.native=\"handleLogin\"\n />\n <span class=\"show-pwd\" @click=\"showPwd\">\n <svg-icon :icon-class=\"passwordType === 'password' ? 'eye' : 'eye-open'\" />\n </span>\n </el-form-item>\n\n <el-button :loading=\"loading\" class=\"login-button\" type=\"primary\" @click.native.prevent=\"handleLogin\">\n {{ $t('login.logIn') }}\n </el-button>\n <!-- Note: PleromaFE login feature relies on admin scope presence in PleromaFE token (older versions of PleromaFE don't support it) -->\n <el-button v-if=\"pleromaFEToken\" :loading=\"loadingPleromaFE\" class=\"login-button\" type=\"primary\" @click.native.prevent=\"handlePleromaFELogin\">\n {{ $t('login.logInViaPleromaFE') }}\n </el-button>\n </el-form>\n </div>\n</template>\n\n<script>\nimport SvgIcon from '@/components/element-ui/SvgIcon'\nimport localforage from 'localforage'\nimport _ from 'lodash'\nimport i18n from '@/lang'\nimport { authenticateWithPleromaFE } from '@/services/pleromaAuth'\n\nexport default {\n name: 'Login',\n components: { 'svg-icon': SvgIcon },\n data: function() {\n return {\n loginForm: {\n username: '',\n password: ''\n },\n passwordType: 'password',\n loading: false,\n loadingPleromaFE: false,\n showDialog: false,\n redirect: undefined,\n pleromaFEToken: false,\n pleromaFEStateKey: 'vuex-lz',\n pleromaFEState: {}\n }\n },\n watch: {\n $route: {\n handler: function(route) {\n this.redirect = route.query && route.query.redirect\n },\n immediate: true\n }\n },\n async mounted() {\n const pleromaFEState = await localforage.getItem(this.pleromaFEStateKey)\n this.pleromaFEState = pleromaFEState\n\n if (_.get(pleromaFEState, 'oauth.userToken') === undefined) {\n return\n }\n\n this.pleromaFEToken = true\n },\n methods: {\n showPwd() {\n if (this.passwordType === 'password') {\n this.passwordType = ''\n } else {\n this.passwordType = 'password'\n }\n },\n handleLogin() {\n this.loading = true\n const loginData = this.getLoginData()\n this.$store.dispatch('LoginByUsername', loginData).then(() => {\n this.loading = false\n this.$router.push({ path: this.redirect || '/users/index' })\n }).catch(() => {\n this.loading = false\n })\n },\n async handlePleromaFELogin() {\n this.loadingPleromaFE = true\n try {\n await authenticateWithPleromaFE(this.$store)\n } catch (error) {\n this.loadingPleromaFE = false\n this.$message.error(i18n.t('login.pleromaFELoginFailed'))\n }\n\n this.loadingPleromaFE = false\n\n this.$message.success(i18n.t('login.pleromaFELoginSucceed'))\n this.$router.push({ path: this.redirect || '/users/index' })\n },\n getLoginData() {\n const [username, authHost] = this.loginForm.username.split('@')\n\n return {\n username: username.trim(),\n authHost: authHost ? authHost.trim() : window.location.host,\n password: this.loginForm.password\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\">\n $bg:#283443;\n $light_gray:#eee;\n $cursor: #fff;\n\n @supports (-webkit-mask: none) and (not (cater-color: $cursor)) {\n .login-container .el-input input{\n color: $cursor;\n &::first-line {\n color: $light_gray;\n }\n }\n }\n\n /* reset element-ui css */\n .login-container {\n .el-input {\n display: inline-block;\n height: 47px;\n width: 85%;\n input {\n background: transparent;\n border: 0px;\n -webkit-appearance: none;\n border-radius: 0px;\n padding: 12px 5px 12px 15px;\n color: $light_gray;\n height: 47px;\n caret-color: $cursor;\n &:-webkit-autofill {\n -webkit-box-shadow: 0 0 0px 1000px $bg inset !important;\n -webkit-text-fill-color: $cursor !important;\n }\n }\n }\n .el-form-item {\n border: 1px solid rgba(255, 255, 255, 0.1);\n background: rgba(0, 0, 0, 0.1);\n border-radius: 5px;\n color: #454545;\n }\n .login-button {\n width: 100%;\n margin: 0 0 10px 0;\n }\n .omit-host-note {\n color: #596f8c;\n font-size: 0.8em;\n font-style: italic;\n margin: -20px 0 15px 0;\n padding: 3px 0 0 15px;\n }\n }\n</style>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n$bg:#2d3a4b;\n$dark_gray:#889aa4;\n$light_gray:#eee;\n\n.login-container {\n min-height: 100%;\n width: 100%;\n background-color: $bg;\n overflow: hidden;\n .login-form {\n position: relative;\n width: 520px;\n max-width: 100%;\n padding: 160px 35px 0;\n margin: 0 auto;\n overflow: hidden;\n }\n .tips {\n font-size: 14px;\n color: #fff;\n margin-bottom: 10px;\n span {\n &:first-of-type {\n margin-right: 16px;\n }\n }\n }\n .svg-container {\n padding: 6px 5px 6px 15px;\n color: $dark_gray;\n vertical-align: middle;\n width: 30px;\n display: inline-block;\n }\n .title-container {\n position: relative;\n .title {\n font-size: 26px;\n color: $light_gray;\n margin: 0px auto 40px auto;\n text-align: center;\n font-weight: bold;\n }\n .set-language {\n color: #fff;\n position: absolute;\n top: 3px;\n font-size:18px;\n right: 0px;\n cursor: pointer;\n }\n }\n .show-pwd {\n position: absolute;\n right: 10px;\n top: 7px;\n font-size: 16px;\n color: $dark_gray;\n cursor: pointer;\n user-select: none;\n }\n .thirdparty-button {\n position: absolute;\n right: 0;\n bottom: 6px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5bb13616&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\nimport style1 from \"./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5bb13616\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-9d55.7af22f45.js b/priv/static/adminfe/static/js/chunk-9d55.7af22f45.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-9d55"],{"+2nY":function(t,e,i){"use strict";var n=i("ld6V");i.n(n).a},"+qaP":function(t,e,i){"use strict";var n=i("60OA");i.n(n).a},"0FjT":function(t,e,i){"use strict";var n=i("dnRK");i.n(n).a},"2q6O":function(t,e,i){"use strict";var n=i("Scsy");i.n(n).a},"3IoU":function(t,e,i){"use strict";var n=i("6V7o");i.n(n).a},"3YZA":function(t,e,i){},"3yoa":function(t,e,i){"use strict";var n=i("Vk/j");i.n(n).a},"4NUT":function(t,e,i){},"4b9x":function(t,e,i){"use strict";var n=i("wgcy");i.n(n).a},"60OA":function(t,e,i){},"6V7o":function(t,e,i){},"77pt":function(t,e,i){},"9Hof":function(t,e,i){"use strict";var n=i("ncj/");i.n(n).a},"9p49":function(t,e,i){},"9y8C":function(t,e,i){"use strict";var n=i("rKzx");i.n(n).a},DPt0:function(t,e,i){"use strict";var n=i("x6RV");i.n(n).a},EXm2:function(t,e,i){},Ezi3:function(t,e,i){"use strict";var n=i("MNl6");i.n(n).a},FCne:function(t,e,i){"use strict";var n=i("OCuP");i.n(n).a},"J7+w":function(t,e,i){"use strict";var n=i("fyIw");i.n(n).a},JqY8:function(t,e,i){},KFE3:function(t,e,i){"use strict";var n=i("mSK5");i.n(n).a},MNl6:function(t,e,i){},NiUD:function(t,e,i){},OCuP:function(t,e,i){},OQQp:function(t,e,i){"use strict";var n=i("pPJ2");i.n(n).a},PYLh:function(t,e,i){},PygS:function(t,e,i){"use strict";var n=i("TtMh");i.n(n).a},RSJF:function(t,e,i){},Scsy:function(t,e,i){},TOIk:function(t,e,i){},TRR9:function(t,e,i){},TtMh:function(t,e,i){},TudB:function(t,e,i){},"UbP/":function(t,e,i){},UdS4:function(t,e,i){"use strict";var n=i("WwJU");i.n(n).a},UqcT:function(t,e,i){"use strict";var n=i("RSJF");i.n(n).a},UtFC:function(t,e,i){},"Vk/j":function(t,e,i){},"WvM+":function(t,e,i){"use strict";var n=i("TRR9");i.n(n).a},WwJU:function(t,e,i){},YKHE:function(t,e,i){},YcIK:function(t,e,i){"use strict";i.r(e);var n=i("o0o1"),s=i.n(n),a=i("yXPU"),r=i.n(a),o=i("mSNy"),l=i("lSNA"),u=i.n(l),c=i("L2JU"),p=i("RIqP"),d=i.n(p),g=i("h74u");function b(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function h(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?b(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):b(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var f={name:"EditableKeywordInput",props:{data:{type:Array,default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{editableKeywordWithInteger:function(){return this.setting.type.includes("keyword")&&this.setting.type.includes("integer")},editableKeywordWithSelect:function(){return this.setting.type.includes("map")&&-1!==this.setting.type.findIndex(function(t){return t.includes("list")&&t.includes("string")})||this.setting.type.includes("keyword")&&-1!==this.setting.type.findIndex(function(t){return t.includes("list")&&t.includes("string")})},editableKeywordWithString:function(){return":crontab"!==this.setting.key&&(this.setting.type.includes("keyword")&&this.setting.type.includes("string")||this.setting.type.includes("tuple")&&this.setting.type.includes("list")||this.setting.type.includes("map")&&this.setting.type.includes("string"))},isDesktop:function(){return"desktop"===this.$store.state.app.device},keyPlaceholder:function(){return":replace"===this.setting.key?"pattern":"key"},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},valuePlaceholder:function(){return":replace"===this.setting.key?"replacement":"value"}},methods:{addRowToEditableKeyword:function(){var t=[].concat(d()(this.data),[{"":{value:"",id:this.generateID()}}]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteEditableKeywordRow:function(t){var e=this.getId(t),i=this.data.filter(function(t){return Object.values(t)[0].id!==e});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},getCrontabWorkerLabel:function(t){var e=this.getKey(t);return e.includes("Pleroma.Workers.Cron.")?e.replace("Pleroma.Workers.Cron.",""):e},getKey:function(t){return Object.keys(t)[0]},getId:function(t){return Object.values(t)[0].id},getSuggestion:function(t){var e=this;return this.setting.suggestions.find(function(i){return i[1]===e.getKey(t)})[0]},getValue:function(t){return Object.values(t)[0].value},parseEditableKeyword:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(i,a){return Object.values(i)[0].id===s?"key"===e?u()({},t,Object.values(n.data[a])[0]):u()({},Object.keys(i)[0],h(h({},Object.values(n.data[a])[0]),{},{value:t})):i});this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateCrontab:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(e,i){return Object.values(e)[0].id===s?u()({},Object.keys(e)[0],h(h({},Object.values(n.data[i])[0]),{},{value:t})):e}),r=a.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],["reversed_tuple",Object.values(e)[0].value]))},{});this.$store.dispatch("UpdateSettings",{group:this.settingGroup.group,key:this.settingGroup.key,input:this.setting.key,value:r,type:this.setting.type}),this.$store.dispatch("UpdateState",{group:this.settingGroup.group,key:this.settingGroup.key,input:this.setting.key,value:a})},updateSetting:function(t,e,i,n,s){var a=this.wrapUpdatedSettings(t,n,s);if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})},wrapUpdatedSettings:function(t,e,i){return"map"===i?t.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],Object.values(e)[0].value))},{}):t.reduce(function(t,e){return h(h({},t),{},u()({},Object.keys(e)[0],["list",Object.values(e)[0].value]))},{})}}},m=(i("nKzF"),i("KHd+")),v=Object(m.a)(f,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"editable-keyword-container"},[":crontab"===t.setting.key?i("div",{staticClass:"crontab",attrs:{"data-search":t.setting.key}},t._l(t.data,function(e){return i("el-form-item",{key:t.getId(e),staticClass:"crontab-container",attrs:{label:t.getCrontabWorkerLabel(e)}},[i("el-input",{staticClass:"input setting-input",attrs:{value:t.getValue(e),placeholder:t.getSuggestion(e)||null},on:{input:function(i){return t.updateCrontab(i,"value",e)}}})],1)}),1):t.editableKeywordWithInteger?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:"key"},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-input-number",{staticClass:"value-input",attrs:{value:t.getValue(e),min:0,size:"large"},on:{change:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t.editableKeywordWithString?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:t.keyPlaceholder},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-input",{staticClass:"value-input",attrs:{value:t.getValue(e),placeholder:t.valuePlaceholder},on:{input:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t.editableKeywordWithSelect?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"setting-input"},[i("el-input",{staticClass:"name-input",attrs:{value:t.getKey(e),placeholder:"key"},on:{input:function(i){return t.parseEditableKeyword(i,"key",e)}}}),t._v(" :\n "),i("el-select",{staticClass:"value-input",attrs:{value:t.getValue(e),multiple:"",filterable:"","allow-create":""},on:{change:function(i){return t.parseEditableKeyword(i,"value",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteEditableKeywordRow(e)}}})],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToEditableKeyword}})],2):t._e()])},[],!1,null,null,null);v.options.__file="EditableKeywordInput.vue";var y=v.exports,_=i("zUJn"),k=i("8j27"),O={name:"EditorInput",components:{EditorContent:_.b,EditorMenuBar:_.c},props:{value:{type:String,default:""},name:{type:String,default:""}},data:function(){return{editor:null,emitAfterOnUpdate:!1}},computed:{isMobile:function(){return"mobile"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"}},watch:{value:function(t){this.emitAfterOnUpdate?this.emitAfterOnUpdate=!1:this.editor&&this.editor.setContent(t)}},beforeDestroy:function(){this.editor&&this.editor.destroy()},mounted:function(){var t=this;this.editor=new _.a({extensions:[new k.a,new k.b,new k.c,new k.d,new k.e({levels:[1,2,3]}),new k.f,new k.g,new k.h,new k.i,new k.j,new k.k,new k.l],content:this.value,onUpdate:function(e){var i=e.getHTML;t.$emit("input",i())}}),this.editor.setContent(this.value)},methods:{removeInstanceDoc:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("RemoveInstanceDocument",t.name);case 2:t.editor.setContent(t.value);case 3:case"end":return e.stop()}},e)}))()}}},P=(i("3yoa"),Object(m.a)(O,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("el-form",{attrs:{"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("el-form-item",{staticClass:"editor-form-item",attrs:{"data-search":"instance-panel"===t.name?":instance_panel":":terms_of_services"}},[i("span",{attrs:{slot:"label"},slot:"label"},[t._v("\n "+t._s("instance-panel"===t.name?t.$t("settings.instancePanel"):t.$t("settings.termsOfServices"))+"\n "),i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeInstanceDoc}})],1)],1),t._v(" "),i("div",{staticClass:"editor"},[i("editor-menu-bar",{attrs:{editor:t.editor},scopedSlots:t._u([{key:"default",fn:function(e){var n=e.commands,s=e.isActive;return[i("div",{staticClass:"menubar"},[i("button",{staticClass:"menubar__button",class:{"is-active":s.bold()},on:{click:n.bold}},[i("svg-icon",{attrs:{"icon-class":"tiptap-bold"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.italic()},on:{click:n.italic}},[i("svg-icon",{attrs:{"icon-class":"tiptap-italic"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.underline()},on:{click:n.underline}},[i("svg-icon",{attrs:{"icon-class":"tiptap-underline"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.heading({level:1})},on:{click:function(t){return n.heading({level:1})}}},[t._v("\n H1\n ")]),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.heading({level:2})},on:{click:function(t){return n.heading({level:2})}}},[t._v("\n H2\n ")]),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.heading({level:3})},on:{click:function(t){return n.heading({level:3})}}},[t._v("\n H3\n ")]),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.bullet_list()},on:{click:n.bullet_list}},[i("svg-icon",{attrs:{"icon-class":"tiptap-ul"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.ordered_list()},on:{click:n.ordered_list}},[i("svg-icon",{attrs:{"icon-class":"tiptap-ol"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.blockquote()},on:{click:n.blockquote}},[i("svg-icon",{attrs:{"icon-class":"tiptap-quote"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.link()},on:{click:n.link}},[i("svg-icon",{attrs:{"icon-class":"tiptap-link"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",class:{"is-active":s.code_block()},on:{click:n.code_block}},[i("svg-icon",{attrs:{"icon-class":"tiptap-code"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",on:{click:n.horizontal_rule}},[i("svg-icon",{attrs:{"icon-class":"tiptap-hr"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",on:{click:n.undo}},[i("svg-icon",{attrs:{"icon-class":"tiptap-undo"}})],1),t._v(" "),i("button",{staticClass:"menubar__button",on:{click:n.redo}},[i("svg-icon",{attrs:{"icon-class":"tiptap-redo"}})],1)])]}}])}),t._v(" "),i("editor-content",{staticClass:"editor__content",attrs:{editor:t.editor}})],1)])],1)},[],!1,null,null,null));P.options.__file="EditorInput.vue";var w=P.exports;function S(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function j(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?S(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):S(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var D={name:"EditableKeywordInput",props:{data:{type:Array,default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{addIconToIcons:function(){var t=[].concat(d()(this.data),[[{key:"",value:"",id:this.generateID()}]]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},addValueToIcons:function(t){var e=this,i=this.data.map(function(i,n){return n===t?[].concat(d()(i),[{key:"",value:"",id:e.generateID()}]):i});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteIcondRow:function(t){var e=this.data.filter(function(e,i){return i!==t});this.updateSetting(e,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},parseIcons:function(t,e,i,n){var s=this.data.map(function(s,a){return a===i?s.map(function(i){return i.id===n?j(j({},i),{},"key"===e?{key:t}:{value:t}):i}):s});this.updateSetting(s,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.map(function(t){return t.reduce(function(t,e){var i=e.key,n=e.value;return j(j({},t),{},u()({},i,n))},{})},{});this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},C=(i("rdar"),Object(m.a)(D,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"mascot-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e,n){return i("div",{key:n,staticClass:"mascot"},[i("div",{staticClass:"icons-container"},[i("div",{staticClass:"icon-container"},t._l(e,function(e){var s=e.key,a=e.value,r=e.id;return i("div",{key:r,staticClass:"icon-values-container"},[i("el-input",{staticClass:"icon-key-input",attrs:{value:s,placeholder:"key"},on:{input:function(e){return t.parseIcons(e,"key",n,r)}}}),t._v(" :\n "),i("el-input",{staticClass:"icon-value-input",attrs:{value:a,placeholder:"value"},on:{input:function(e){return t.parseIcons(e,"value",n,r)}}})],1)}),0),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(e){return t.deleteIcondRow(n)}}})],1),t._v(" "),i("div",{staticClass:"icons-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:function(e){return t.addValueToIcons(n)}}}),t._v(" "),i("span",{staticClass:"icons-button-desc"},[t._v("Add another `key - value` pair to this icon")])],1),t._v(" "),i("el-divider",{staticClass:"divider"})],1)}),t._v(" "),i("div",{staticClass:"icons-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addIconToIcons}}),t._v(" "),i("span",{staticClass:"icons-button-desc"},[t._v("Add another icon configuration")])],1)],2)},[],!1,null,null,null));C.options.__file="IconsInput.vue";var x=C.exports,$=i("LvDl"),U=i.n($),E=i("9i3r"),I=i("X4fA"),M="/api/v1/media";var A=function(){return{Authorization:"Bearer ".concat(Object(I.b)())}};function T(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function W(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?T(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):T(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var G={name:"ImageUploadInput",props:{inputValue:{type:[String,Object],default:function(){return{}}},setting:{type:Object,default:function(){return{}}}},data:function(){return{loading:!1}},computed:W(W({},Object(c.b)(["authHost"])),{},{fullSize:function(){return!!U.a.includes([":background",":nsfwCensorImage"],this.setting.key)},dimensions:function(){return{width:this.fullSize?"100%":"100px",height:this.fullSize?"250px":"100px"}},isDefault:function(){return this.defaultImage===this.inputValue},defaultImage:function(){return this.baseName+U.a.get(this.setting,"suggestions[0]")},baseName:function(){return Object(E.a)(this.authHost)}}),methods:{imageUrl:function(t){return U.a.isString(t)?t.startsWith("http")||t.startsWith("https")?t:this.baseName+t:this.defaultImage},handleFiles:function(t){var e=this,i=t.target.files[0];if(i){var n=new FileReader;n.onload=function(t){t.target;var n=new FormData;n.append("file",i),e.loading=!0,function(t){var e=t.formData,i=t.authHost,n=Object(E.a)(i)+M;return fetch(n,{body:e,method:"POST",headers:A()}).then(function(t){return t.json()})}({formData:n,authHost:e.authHost}).then(function(t){e.loading=!1,e.$emit("change",t.url)})},n.readAsDataURL(i)}},removeFile:function(){this.$emit("change",this.defaultImage)}}},L=(i("zzeU"),Object(m.a)(G,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"image-upload-area"},[i("div",{staticClass:"input-row"},[i("div",{staticClass:"image-upload-wrapper",style:t.dimensions},[i("div",{staticClass:"image-upload-overlay",style:t.dimensions},[i("input",{staticClass:"input-file",attrs:{"aria-label":t.$t("settings.changeImage"),type:"file",accept:".jpg,.jpeg,.png"},on:{change:t.handleFiles}}),t._v(" "),i("div",{staticClass:"caption"},[t._v("\n "+t._s(t.$t("settings.changeImage"))+"\n ")]),t._v(" "),i("el-image",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticClass:"uploaded-image",style:t.dimensions,attrs:{src:t.imageUrl(t.inputValue),fit:"cover"}})],1)])]),t._v(" "),i("div",{staticClass:"image-button-group"},[i("el-button",{staticClass:"upload-button",attrs:{size:"small"}},[t._v("\n "+t._s(t.$t("settings.uploadImage"))+"\n "),i("input",{staticClass:"input-file",attrs:{"aria-label":t.$t("settings.changeImage"),type:"file",accept:".jpg,.jpeg,.png"},on:{change:t.handleFiles}})]),t._v(" "),t.isDefault?t._e():i("el-button",{staticStyle:{"margin-left":"5px"},attrs:{type:"danger",size:"small"},on:{click:function(e){return t.removeFile()}}},[t._v("\n "+t._s(t.$t("settings.remove"))+"\n ")])],1)])},[],!1,null,null,null));L.options.__file="ImageUploadInput.vue";var F=L.exports,R={name:"LinkFormatterInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{autoLinkerAtomValue:function(){return this.data[this.setting.key]&&":"===this.data[this.setting.key][0]?this.data[this.setting.key].substr(1):this.data[this.setting.key]},autoLinkerBooleanValue:function(){var t=this.data[this.setting.key];return"string"==typeof t||"number"==typeof t},autoLinkerIntegerValue:function(){return this.data[this.setting.key]||0},autoLinkerStringValue:function(){return this.data[this.setting.key]||""}},methods:{processTwoTypeValue:function(t,e){if(!0===t){var i=":truncate"===e?0:"";this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)}else this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)},updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},V=(i("9y8C"),Object(m.a)(R,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[t.setting.type.includes("string")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input",{attrs:{value:t.autoLinkerStringValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}):t._e()],1):t._e(),t._v(" "),t.setting.type.includes("integer")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input-number",{attrs:{value:t.autoLinkerIntegerValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}):t._e()],1):t._e(),t._v(" "),t.setting.type.includes("atom")?i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-switch",{attrs:{value:t.autoLinkerBooleanValue},on:{change:function(e){return t.processTwoTypeValue(e,t.setting.key)}}}),t._v(" "),t.autoLinkerBooleanValue?i("el-input",{attrs:{value:t.autoLinkerAtomValue},on:{input:function(e){return t.processTwoTypeValue(e,t.setting.key)}}},[i("template",{slot:"prepend"},[t._v(":")])],2):t._e()],1):t._e()])},[],!1,null,null,null));V.options.__file="LinkFormatterInput.vue";var K=V.exports,z=i("QILm"),q=i.n(z),B=i("J4zp"),N=i.n(B);function Q(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function H(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Q(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Q(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var J={name:"MascotsInput",props:{data:{type:Array,default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device}},methods:{addRowToMascots:function(){var t=[].concat(d()(this.data),[{"":{":url":"",":mime_type":"",id:this.generateID()}}]);this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},deleteMascotsRow:function(t){var e=this.getId(t),i=this.data.filter(function(t){return Object.values(t)[0].id!==e});this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},generateID:function(){return"f".concat((~~(1e8*Math.random())).toString(16))},getId:function(t){return Object.values(t)[0].id},getName:function(t){return Object.keys(t)[0]},getUrl:function(t){var e=Object.values(t);return N()(e,1)[0][":url"]},getMimeType:function(t){var e=Object.values(t);return N()(e,1)[0][":mime_type"]},parseMascots:function(t,e,i){var n=this,s=this.getId(i),a=this.data.map(function(i,a){return Object.values(i)[0].id===s?"name"===e?u()({},t,Object.values(n.data[a])[0]):"url"===e?u()({},Object.keys(i)[0],H(H({},Object.values(n.data[a])[0]),{},{":url":t})):u()({},Object.keys(i)[0],H(H({},Object.values(n.data[a])[0]),{},{":mime_type":t})):i});this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.reduce(function(t,e){var i=Object.values(e)[0],n=(i.id,q()(i,["id"]));return H(H({},t),{},u()({},Object.keys(e)[0],["",n]))},{});this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},Y=(i("+2nY"),Object(m.a)(J,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"mascot-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t._l(t.data,function(e){return i("div",{key:t.getId(e),staticClass:"mascot"},[i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"Name","label-width":"85px"}},[i("div",{staticClass:"mascot-name-container"},[i("el-input",{staticClass:"mascot-name-input",attrs:{value:t.getName(e),placeholder:"Name"},on:{input:function(i){return t.parseMascots(i,"name",e)}}}),t._v(" "),i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(i){return t.deleteMascotsRow(e)}}})],1)]),t._v(" "),i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"URL","label-width":"85px"}},[i("el-input",{staticClass:"mascot-input",attrs:{value:t.getUrl(e),placeholder:"URL"},on:{input:function(i){return t.parseMascots(i,"url",e)}}})],1),t._v(" "),i("el-form-item",{staticClass:"mascot-form-item",attrs:{label:"Mime type","label-width":"85px"}},[i("el-input",{staticClass:"mascot-input",attrs:{value:t.getMimeType(e),placeholder:"Mime type"},on:{input:function(i){return t.parseMascots(i,"mimeType",e)}}})],1)],1)}),t._v(" "),i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:t.addRowToMascots}})],2)},[],!1,null,null,null));Y.options.__file="MascotsInput.vue";var X=Y.exports;function Z(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function tt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Z(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Z(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var et={name:"ProxyUrlInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},proxyUrlData:function(){return 0===Object.keys(this.data).length?{socks5:!1,host:null,port:null}:this.data}},methods:{updateProxyUrl:function(t,e){var i;i=tt(tt({},this.proxyUrlData),{},"socks5"===e?{socks5:t}:"host"===e?{host:t}:{port:t}),this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.socks5?[":socks5",t.host,t.port]:"".concat(t.host,":").concat(t.port);if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},it=(i("mGnP"),Object(m.a)(et,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"proxy-url-input",attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-input",{staticClass:"proxy-url-host-input",attrs:{value:t.proxyUrlData.host,placeholder:"host (e.g. localhost or 127.0.0.1)"},on:{input:function(e){return t.updateProxyUrl(e,"host")}}}),t._v(" "),t.isDesktop?i("span",[t._v(":")]):t._e(),t._v(" "),i("el-input",{staticClass:"proxy-url-value-input",attrs:{value:t.proxyUrlData.port,placeholder:"port (e.g 9020 or 3090)"},on:{input:function(e){return t.updateProxyUrl(e,"port")}}}),t._v(" "),i("div",{staticClass:"socks5-checkbox-container"},[i("el-checkbox",{attrs:{value:t.proxyUrlData.socks5},on:{change:function(e){return t.updateProxyUrl(e,"socks5")}}}),t._v(" "),i("span",{staticClass:"socks5-checkbox"},[t._v("Socks5")])],1)],1)},[],!1,null,null,null));it.options.__file="ProxyUrlInput.vue";var nt=it.exports,st={name:"PruneInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{prune:{get:function(){return this.data[0]},set:function(t){this.updateRadioInput(t)}}},methods:{updateIntInput:function(t,e){this.updateSetting([e,t],this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.includes(":disabled")?":disabled":t;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})},updateRadioInput:function(t){var e=":disabled"===t?[t]:[t,0];this.updateSetting(e,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)}}},at=(i("Ezi3"),Object(m.a)(st,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-radio-group",{staticClass:"prune-options",model:{value:t.prune,callback:function(e){t.prune=e},expression:"prune"}},[i("el-radio",{attrs:{label:":disabled"}},[t._v("Disabled")]),t._v(" "),i("el-radio",{attrs:{label:":maxlen"}},[t._v("Limit-based")]),t._v(" "),i("el-radio",{attrs:{label:":maxage"}},[t._v("Time-based")])],1),t._v(" "),":maxlen"===t.prune?i("el-form-item",{attrs:{label:"Max length","label-width":"100","label-position":"left"}},[i("el-input-number",{staticClass:"top-margin",attrs:{value:t.data[1],min:0,placeholder:"1500",size:"large"},on:{change:function(e){return t.updateIntInput(e,":maxlen")}}})],1):t._e(),t._v(" "),":maxage"===t.prune?i("el-form-item",{attrs:{label:"Max age","label-width":"100","label-position":"left"}},[i("el-input-number",{staticClass:"top-margin",attrs:{value:t.data[1],min:0,placeholder:"3600",size:"large"},on:{change:function(e){return t.updateIntInput(e,":maxage")}}})],1):t._e()],1)},[],!1,null,null,null));at.options.__file="PruneInput.vue";var rt=at.exports,ot={name:"RateLimitInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},rateLimitAllUsers:function(){return this.data[this.setting.key]?this.data[this.setting.key]:["",""]},rateLimitAuthUsers:function(){return!(!this.data[this.setting.key]||!Array.isArray(this.data[this.setting.key][0]))&&this.data[this.setting.key][1]},rateLimitUnauthUsers:function(){return!(!this.data[this.setting.key]||!Array.isArray(this.data[this.setting.key][1]))&&this.data[this.setting.key][0]}},methods:{parseRateLimiter:function(t,e,i,n,s){var a;"oneLimit"===n?a="scale"===i?[t,s[1]]:[s[0],t]:"unauthUsersLimit"===n?a="scale"===i?[[t,s[0][1]],[s[1][0],s[1][1]]]:[[s[0][0],t],[s[1][0],s[1][1]]]:"authUserslimit"===n&&(a="scale"===i?[[s[0][0],s[0][1]],[t,s[1][1]]]:[[s[0][0],s[0][1]],[s[1][0],t]]),this.updateSetting(a,this.settingGroup.group,this.settingGroup.key,e,this.setting.type)},toggleLimits:function(t,e){this.updateSetting(t,this.settingGroup.group,this.settingGroup.key,e)},updateSetting:function(t,e,i,n,s){var a=Array.isArray(t[0])?t.map(function(t){return{tuple:t}}):{tuple:t};this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},lt=(i("irif"),Object(m.a)(ot,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"rate-limit-container",attrs:{"data-search":t.setting.key||t.setting.group}},[t.rateLimitAuthUsers?t._e():i("div",[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitAllUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","oneLimit",t.rateLimitAllUsers)}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitAllUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","oneLimit",t.rateLimitAllUsers)}}}),t._v(" "),i("div",{staticClass:"limit-button-container"},[i("el-button",{attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-plus",circle:""},on:{click:function(e){return t.toggleLimits([["",""],["",""]],t.setting.key)}}}),t._v(" "),i("p",{staticClass:"expl limit-expl"},[t._v("Set different limits for unauthenticated and authenticated users")])],1)],1),t._v(" "),t.rateLimitAuthUsers?i("div",[i("el-form-item",{staticClass:"rate-limit"},[i("div",{staticClass:"rate-limit-label-container"},[i("span",{staticClass:"rate-limit-label"},[t._v("\n Unauthenticated users:\n ")])]),t._v(" "),i("div",{staticClass:"rate-limit-content"},[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitUnauthUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","unauthUsersLimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitUnauthUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","unauthUsersLimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}})],1)]),t._v(" "),i("el-form-item",{staticClass:"rate-limit"},[i("div",{staticClass:"rate-limit-label-container"},[i("span",{staticClass:"rate-limit-label"},[t._v("\n Authenticated users:\n ")])]),t._v(" "),i("div",{staticClass:"rate-limit-content"},[i("el-input-number",{staticClass:"scale-input",attrs:{value:t.rateLimitAuthUsers[0],controls:!1,placeholder:"scale"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"scale","authUserslimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}}),t._v(" "),i("span",[t._v(":")]),t._v(" "),i("el-input-number",{staticClass:"limit-input",attrs:{value:t.rateLimitAuthUsers[1],controls:!1,placeholder:"limit"},on:{input:function(e){return t.parseRateLimiter(e,t.setting.key,"limit","authUserslimit",[t.rateLimitUnauthUsers,t.rateLimitAuthUsers])}}})],1)]),t._v(" "),i("div",{staticClass:"limit-button-container"},[i("el-button",{staticClass:"icon-minus-button",attrs:{size:t.isDesktop?"medium":"mini",icon:"el-icon-minus",circle:""},on:{click:function(e){return t.toggleLimits(["",""],t.setting.key)}}}),t._v(" "),i("p",{staticClass:"expl limit-expl"},[t._v("Set limit for all users")])],1)],1):t._e()])},[],!1,null,null,null));lt.options.__file="RateLimitInput.vue";var ut=lt.exports,ct={name:"RegInvitesInput",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},methods:{updateSetting:function(t,e,i,n,s){var a=this,r=this.$store.state.settings.settings[e][i][":registrations_open"],o=this.$store.state.settings.settings[e][i][":invites_enabled"];":registrations_open"===n&&t&&o?this.$confirm("Enabling this setting requires invites to be disabled. Are you sure you want to open registrations?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){a.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),a.$store.dispatch("UpdateSettings",{group:e,key:i,input:":invites_enabled",value:!1,type:s}),a.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}),a.$store.dispatch("UpdateState",{group:e,key:i,input:":invites_enabled",value:!1})}):":invites_enabled"===n&&t&&r?this.$confirm("Enabling this setting requires registrations to be disabled. Are you sure you want to enable invitations?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){a.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),a.$store.dispatch("UpdateSettings",{group:e,key:i,input:":registrations_open",value:!1,type:s}),a.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}),a.$store.dispatch("UpdateState",{group:e,key:i,input:":registrations_open",value:!1})}):(this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t}))}}},pt=(i("9Hof"),Object(m.a)(ct,function(){var t=this,e=t.$createElement;return(t._self._c||e)("el-switch",{staticClass:"switch-input",attrs:{value:t.data[t.setting.key],"data-search":t.setting.key},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}})},[],!1,null,null,null));pt.options.__file="RegInvitesInput.vue";var dt=pt.exports,gt={name:"SelectInputWithReducedLabels",props:{data:{type:[Array,Object],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{inputValue:function(){return"Pleroma.Web.Auth.Authenticator"===this.setting.key?this.data.value:":policies"===this.setting.key&&"string"==typeof this.data[this.setting.key]?[this.data[this.setting.key]]:this.data[this.setting.key]},isMobile:function(){return"mobile"===this.$store.state.app.device}},methods:{options:function(t){var e=this,i={":policies":"Pleroma.Web.ActivityPub.MRF.","Pleroma.Web.Auth.Authenticator":"Pleroma.Web.Auth.",":method":"Pleroma.Captcha.",":adapter":"Swoosh.Adapters.",":providers":"Pleroma.Web.Metadata.Providers.",":parsers":"Pleroma.Web.RichMedia.Parsers.",":ttl_setters":"Pleroma.Web.RichMedia.Parser.",":scrub_policy":"Pleroma.HTML.",":federation_publisher_modules":"Pleroma.Web.",":uploader":"Pleroma.Uploaders.",":filters":"Pleroma.Upload.Filter."};return t.map(function(t){return{value:t,label:t.split(i[e.setting.key])[1]?t.split(i[e.setting.key])[1]:t}})},renderMultipleSelect:function(t){return Array.isArray(t)&&":backends"!==this.setting.key&&":args"!==this.setting.key&&(t.includes("module")||t.includes("list")&&t.includes("string")||t.includes("list")&&t.includes("atom")||t.includes("regex")&&t.includes("string")||":args"===this.setting.key)},updateSetting:function(t,e,i,n,s){var a=Object(g.b)(t);this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:a})}}},bt=(i("3IoU"),Object(m.a)(gt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"input"},[t.renderMultipleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},t._l(t.options(t.setting.suggestions),function(t,e){return i("el-option",{key:e,attrs:{value:t.value,label:t.label}})}),1):t._e(),t._v(" "),"module"===t.setting.type||t.setting.type.includes("atom")&&t.setting.type.includes("dropdown")?i("el-select",{staticClass:"input",attrs:{value:!1===t.inputValue?"false":t.inputValue,"data-search":t.setting.key||t.setting.group,clearable:""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},t._l(t.options(t.setting.suggestions),function(t,e){return i("el-option",{key:e,attrs:{value:t.value,label:t.label}})}),1):t._e()],1)},[],!1,null,null,null));bt.options.__file="SelectInputWithReducedLabels.vue";var ht=bt.exports;function ft(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function mt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ft(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ft(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var vt={name:"SenderInput",props:{data:{type:[Object,Array],default:function(){return{}}},parents:{type:Array,default:function(){return[]},required:!1},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},sender:function(){return 0===Object.keys(this.data).length?{email:null,nickname:null}:this.data}},methods:{updateSender:function(t,e){var i;i=mt(mt({},this.sender),{},"email"===e?{email:t}:{nickname:t}),this.updateSetting(i,this.settingGroup.group,this.settingGroup.key,this.setting.key,this.setting.type)},updateSetting:function(t,e,i,n,s){var a=t.nickname?[t.nickname,t.email]:t.email;if(this.parents.length>0){var r=Object(g.e)(t,a,e,i,this.parents.reverse(),this.settings,this.updatedSettings),o=r.valueForState,l=r.valueForUpdatedSettings,u=r.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:u.key,value:l,type:u.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:u.key,value:o})}else this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:a,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},yt=(i("OQQp"),Object(m.a)(vt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"sender-input",attrs:{"data-search":t.setting.key||t.setting.group}},[i("el-input",{staticClass:"email-address-input",attrs:{value:t.sender.email,placeholder:"email address"},on:{input:function(e){return t.updateSender(e,"email")}}}),t._v(" "),i("el-input",{staticClass:"nickname-input",attrs:{value:t.sender.nickname,placeholder:"nickname"},on:{input:function(e){return t.updateSender(e,"nickname")}}})],1)},[],!1,null,null,null));yt.options.__file="SenderInput.vue";var _t=yt.exports,kt={name:"SpecificMultipleSelect",props:{data:{type:[Object,Array],default:function(){return{}}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}}},methods:{updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},Ot=(i("UqcT"),Object(m.a)(kt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"multiple-select-container"},[":backends"===t.setting.key?i("el-select",{staticClass:"input",attrs:{value:t.data.value,"data-search":t.setting.key||t.setting.group,multiple:""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},[i("el-option",{attrs:{value:":console",label:"console"}}),t._v(" "),i("el-option",{attrs:{value:":ex_syslogger",label:"ExSyslogger"}}),t._v(" "),i("el-option",{attrs:{value:"Quack.Logger",label:"Quack.Logger"}})],1):t._e(),t._v(" "),":args"===t.setting.key?i("el-select",{staticClass:"input",attrs:{value:t.data[t.setting.key],"data-search":t.setting.key||t.setting.group,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.updateSetting(e,t.settingGroup.group,t.settingGroup.key,t.setting.key,t.setting.type)}}},[i("el-option",{attrs:{value:"strip"}}),t._v(" "),i("el-option",{attrs:{value:"auto-orient"}}),t._v(" "),i("el-option",{attrs:{value:'{"implode", "1"}'}})],1):t._e()],1)},[],!1,null,null,null));Ot.options.__file="SpecificMultipleSelect.vue";var Pt=Ot.exports,wt=i("4MG8"),St=i.n(wt),jt={name:"Inputs",components:{EditableKeywordInput:y,IconsInput:x,ImageUploadInput:F,LinkFormatterInput:K,MascotsInput:X,ProxyUrlInput:nt,PruneInput:rt,RateLimitInput:ut,RegInvitesInput:dt,SelectInputWithReducedLabels:ht,SenderInput:_t,SpecificMultipleSelect:Pt},props:{customLabelWidth:{type:String,default:function(){return this.labelWidth},required:!1},data:{type:[Object,Array],default:function(){return{}}},labelClass:{type:String,default:function(){return"label"},required:!1},margin:{type:Number,default:function(){return 0},required:!1},nested:{type:Boolean,default:function(){return!1}},setting:{type:Object,default:function(){return{}}},settingGroup:{type:Object,default:function(){return{}}},settingParent:{type:Array,default:function(){return[]},required:!1}},computed:{booleanCombinedInput:function(){return Array.isArray(this.setting.type)&&this.setting.type.includes("boolean")},canBeDeleted:function(){var t=this.settingGroup,e=t.group,i=t.key;return U.a.get(this.$store.state.settings.db,[e,i])&&this.$store.state.settings.db[e][i].includes(this.setting.key)},iconsData:function(){return Array.isArray(this.data)?this.data:[]},inputValue:function(){return[":esshd",":cors_plug",":quack",":tesla",":swoosh"].includes(this.settingGroup.group)&&this.data[this.setting.key]?"atom"===this.setting.type&&":"===this.data[this.setting.key].value[0]?this.data[this.setting.key].value.substr(1):this.data[this.setting.key].value:":logger"===this.settingGroup.group&&":backends"===this.setting.key||"Pleroma.Web.Auth.Authenticator"===this.setting.key||":admin_token"===this.setting.key?this.data.value:":mime"===this.settingGroup.group&&":types"===this.settingParent[0].key?this.data.value?this.data.value[this.setting.key]:[]:"atom"===this.setting.type?this.data[this.setting.key]&&":"===this.data[this.setting.key][0]?this.data[this.setting.key].substr(1):this.data[this.setting.key]:Array.isArray(this.setting.type)&&this.setting.type.find(function(t){return Array.isArray(t)&&t.includes("list")})&&"string"==typeof this.data[this.setting.key]?[this.data[this.setting.key]]:this.data[this.setting.key]},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},keywordData:function(){return this.settingParent.length>0||Array.isArray(this.setting.type)&&this.setting.type.includes("tuple")&&this.setting.type.includes("list")?Array.isArray(this.data[this.setting.key])?this.data[this.setting.key]:[]:Array.isArray(this.data)?this.data:[]},reducedSelects:function(){return[":filters",":uploader",":federation_publisher_modules",":scrub_policy",":ttl_setters",":parsers",":providers",":method",":policies","Pleroma.Web.Auth.Authenticator"].includes(this.setting.key)||"Pleroma.Emails.Mailer"===this.settingGroup.key&&":adapter"===this.setting.key},settings:function(){return this.$store.state.settings.settings},updatedSettings:function(){return this.$store.state.settings.updatedSettings},isImageUrl:function(){return Array.isArray(this.setting.type)&&this.setting.type.includes("image")}},methods:{editableKeyword:function(t,e){return Array.isArray(e)&&(e.includes("map")&&e.includes("string")||e.includes("map")&&-1!==e.findIndex(function(t){return t.includes("list")&&t.includes("string")})||e.includes("keyword")&&e.includes("integer")||e.includes("keyword")&&e.includes("string")||e.includes("tuple")&&e.includes("list")||e.includes("keyword")&&-1!==e.findIndex(function(t){return t.includes("list")&&t.includes("string")}))},getFormattedDescription:function(t){return St()(t)},processNestedData:function(t,e,i,n){var s=Object(g.e)(t,t,e,i,n.reverse(),this.settings,this.updatedSettings),a=s.valueForState,r=s.valueForUpdatedSettings,o=s.setting;this.$store.dispatch("UpdateSettings",{group:e,key:i,input:o.key,value:r,type:o.type}),this.$store.dispatch("UpdateState",{group:e,key:i,input:o.key,value:a})},removeSetting:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t.$confirm(t.$t("settings.removeSettingConfirmation"),{confirmButtonText:t.$t("users.ok"),cancelButtonText:t.$t("users.cancel"),type:"warning"}).then(r()(s.a.mark(function e(){var i;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=t.settingGroup.key?[{group:t.settingGroup.group,key:t.settingGroup.key,delete:!0,subkeys:[t.setting.key]}]:[{group:t.settingGroup.group,key:t.setting.key,delete:!0}],e.prev=1,e.next=4,t.$store.dispatch("RemoveSetting",i);case 4:e.next=9;break;case 6:return e.prev=6,e.t0=e.catch(1),e.abrupt("return");case 9:t.$message({type:"success",message:o.a.t("settings.successfullyRemoved")});case 10:case"end":return e.stop()}},e,null,[[1,6]])}))).catch(function(){t.$message({type:"info",message:t.$t("users.canceled")})});case 1:case"end":return e.stop()}},e)}))()},renderMultipleSelect:function(t){return!this.reducedSelects&&Array.isArray(t)&&":backends"!==this.setting.key&&":args"!==this.setting.key&&(t.includes("module")||t.includes("list")&&t.includes("string")||t.includes("list")&&t.includes("atom")||!t.includes("keyword")&&t.includes("regex")&&t.includes("string"))},renderSingleSelect:function(t){return!this.reducedSelects&&("module"===t||Array.isArray(t)&&t.includes("atom")&&t.includes("dropdown"))},senderInput:function(t){var e=t.key,i=t.type;return Array.isArray(i)&&i.includes("string")&&i.includes("tuple")&&":sender"===e},update:function(t,e,i,n,s,a,r){var o=this.renderSingleSelect(a)?Object(g.b)(t):t;r?this.processNestedData(o,e,i,n):this.updateSetting(o,e,i,s,a)},updateSetting:function(t,e,i,n,s){this.$store.dispatch("UpdateSettings",{group:e,key:i,input:n,value:t,type:s}),this.$store.dispatch("UpdateState",{group:e,key:i,input:n,value:t})}}},Dt=(i("y7KD"),Object(m.a)(jt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"input-container"},["keyword"===t.setting.type?i("div",{staticClass:"keyword-container"},[i("el-form-item",{class:t.labelClass,style:"margin-left:"+t.margin+"px;margin-bottom:0",attrs:{"label-width":t.customLabelWidth,"data-search":t.setting.key||t.setting.group}},[i("span",{attrs:{slot:"label"},slot:"label"},[t._v("\n "+t._s(t.setting.label)+"\n "),t.canBeDeleted&&t.isDesktop?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1)]),t._v(" "),t._l(t.setting.children,function(e){return i("el-form-item",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,"setting-parent":t.settingParent.concat([e]),setting:e,data:t.data[t.setting.key],"custom-label-width":t.isMobile?"100px":"120px","label-class":"keyword"===e.type?"center-label":"",margin:t.isDesktop?t.margin+15:t.margin+8,nested:!0}})],1)})],2):t._e(),t._v(" "),"keyword"!==t.setting.type?i("el-form-item",{class:t.labelClass,style:t.isDesktop?"":"margin-left:"+t.margin+"px",attrs:{"label-width":t.customLabelWidth}},[i("span",{attrs:{slot:"label"},slot:"label"},[t._v("\n "+t._s(t.setting.label)+"\n "),t.canBeDeleted&&(t.isDesktop||t.isMobile)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1),t._v(" "),i("div",{staticClass:"input-row"},[t.isImageUrl?i("image-upload-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting,"input-value":t.inputValue},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):"string"===t.setting.type||Array.isArray(t.setting.type)&&t.setting.type.includes("string")&&t.setting.type.includes("atom")?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,placeholder:t.setting.suggestions?t.setting.suggestions[0]:null,"data-search":t.setting.key||t.setting.group},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),"boolean"!==t.setting.type||[":registrations_open",":invites_enabled"].includes(t.setting.key)?t._e():i("el-switch",{staticClass:"switch-input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}),t._v(" "),"integer"===t.setting.type?i("el-input-number",{attrs:{value:null===t.inputValue?void 0:t.inputValue,placeholder:t.setting.suggestions?t.setting.suggestions[0].toString():null,min:0,size:t.isDesktop?"large":"medium","data-search":t.setting.key||t.setting.group},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),t.renderSingleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:!1===t.inputValue?"false":t.inputValue,"data-search":t.setting.key||t.setting.group,clearable:""},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},t._l(t.setting.suggestions,function(t,e){return i("el-option",{key:e,attrs:{value:t}})}),1):t._e(),t._v(" "),t.renderMultipleSelect(t.setting.type)?i("el-select",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group,multiple:"",filterable:"","allow-create":""},on:{change:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},t._l(t.setting.suggestions,function(t,e){return i("el-option",{key:e,attrs:{value:t}})}),1):t._e(),t._v(" "),":ip"===t.setting.key?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,"data-search":t.setting.key||t.setting.group,placeholder:"xxx.xxx.xxx.xx"},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}}):t._e(),t._v(" "),"atom"===t.setting.type?i("el-input",{staticClass:"input",attrs:{value:t.inputValue,placeholder:t.setting.suggestions&&t.setting.suggestions[0]?t.setting.suggestions[0].substr(1):"","data-search":t.setting.key||t.setting.group},on:{input:function(e){return t.update(e,t.settingGroup.group,t.settingGroup.key,t.settingParent,t.setting.key,t.setting.type,t.nested)}}},[i("template",{slot:"prepend"},[t._v(":")])],2):t._e(),t._v(" "),t.editableKeyword(t.setting.key,t.setting.type)?i("editable-keyword-input",{attrs:{data:t.keywordData,"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),":icons"===t.setting.key?i("icons-input",{attrs:{data:t.iconsData,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.booleanCombinedInput?i("link-formatter-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":mascots"===t.setting.key?i("mascots-input",{attrs:{data:t.keywordData,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":proxy_url"===t.setting.key?i("proxy-url-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),":prune"===t.setting.key?i("prune-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":rate_limit"===t.settingGroup.key?i("rate-limit-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),[":registrations_open",":invites_enabled"].includes(t.setting.key)?i("reg-invites-input",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.reducedSelects?i("select-input-with-reduced-labels",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),":backends"===t.setting.key||":args"===t.setting.key?i("specific-multiple-select",{attrs:{data:t.data,"setting-group":t.settingGroup,setting:t.setting}}):t._e(),t._v(" "),t.senderInput(t.setting)?i("sender-input",{attrs:{data:t.data[t.setting.key],"setting-group":t.settingGroup,setting:t.setting,parents:t.settingParent}}):t._e(),t._v(" "),t.canBeDeleted&&t.isTablet?i("el-tooltip",{staticClass:"delete-setting-button-container",attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"delete-setting-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:t.removeSetting}})],1):t._e()],1),t._v(" "),t.setting.description&&"keyword"!==t.setting.type?i("div",{staticClass:"expl",domProps:{innerHTML:t._s(t.getFormattedDescription(t.setting.description))}}):t._e()]):t._e()],1)},[],!1,null,null,null));Dt.options.__file="Inputs.vue";var Ct={name:"Setting",components:{Inputs:Dt.exports},props:{settingGroup:{type:Object,default:function(){return{}}},data:{type:Object,default:function(){return{}}}},computed:{emailAdapterChildren:function(){var t=this.$store.state.settings.settings[":pleroma"]["Pleroma.Emails.Mailer"][":adapter"];return this.settingGroup.children.filter(function(e){return e.group&&e.group.includes(t)})},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isTablet:function(){return"tablet"===this.$store.state.app.device},loading:function(){return this.$store.state.settings.loading}},methods:{canBeDeleted:function(t){var e=this.settingGroup,i=e.group,n=e.key||t;return U.a.get(this.$store.state.settings.db,[i,n])&&this.$store.state.settings.db[i][n].includes(t)},compound:function(t){var e=t.type;t.key,t.children;return"keyword"===e||"map"===e||e.includes("keyword")||e.includes("map")},divideSetting:function(t){return[":sslopts",":tlsopts",":adapter",":poll_limits",":queues",":styling",":invalidation",":multi_factor_authentication"].includes(t)},getFormattedDescription:function(t){return St()(t)},notLastInGroup:function(t){return this.settingGroup.children.slice(-1)[0].key!==t},removeSetting:function(t){var e=this;return r()(s.a.mark(function i(){return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:e.$confirm(e.$t("settings.removeSettingConfirmation"),{confirmButtonText:e.$t("users.ok"),cancelButtonText:e.$t("users.cancel"),type:"warning"}).then(r()(s.a.mark(function i(){var n;return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=e.settingGroup.key?[{group:e.settingGroup.group,key:e.settingGroup.key,delete:!0,subkeys:[t]}]:[{group:e.settingGroup.group,key:t,delete:!0}],i.prev=1,i.next=4,e.$store.dispatch("RemoveSetting",n);case 4:i.next=9;break;case 6:return i.prev=6,i.t0=i.catch(1),i.abrupt("return");case 9:e.$message({type:"success",message:o.a.t("settings.successfullyRemoved")});case 10:case"end":return i.stop()}},i,null,[[1,6]])}))).catch(function(){e.$message({type:"info",message:e.$t("users.canceled")})});case 1:case"end":return i.stop()}},i)}))()},updateSetting:function(t,e,i){this.$store.dispatch("UpdateSettings",{tab:e,data:u()({},i,t)})}}},xt=(i("pnah"),Object(m.a)(Ct,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",[t.settingGroup.label||t.settingGroup.description?i("el-form-item",{staticClass:"description-container",attrs:{"data-search":t.settingGroup.key||t.settingGroup.group}},[t.settingGroup.label?i("span",{staticClass:"setting-label"},[t._v(t._s(t.settingGroup.label))]):t._e(),t._v(" "),t.settingGroup.description?i("span",{staticClass:"expl no-top-margin",domProps:{innerHTML:t._s(t.getFormattedDescription(t.settingGroup.description))}}):t._e()]):t._e(),t._v(" "),"Pleroma.Emails.Mailer"===t.settingGroup.key?i("div",[t._l(t.settingGroup.children.filter(function(t){return!t.group}),function(e){return i("div",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data}})],1)}),t._v(" "),t._l(t.emailAdapterChildren,function(e){return i("div",{key:e.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data}})],1)})],2):i("div",t._l(t.settingGroup.children,function(e){return i("div",{key:e.key},[t.compound(e)?t._e():i("div",[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data,nested:!1}})],1),t._v(" "),t.compound(e)?i("div",[t.divideSetting(e.key)?i("el-divider",{staticClass:"divider"}):t._e(),t._v(" "),e.children?i("div",[i("div",{staticClass:"input-container"},[i("el-form-item",{staticClass:"grouped-settings-header",attrs:{"data-search":e.key||e.group}},[i("span",{attrs:{slot:"label"},slot:"label"},[t.isDesktop&&t.canBeDeleted(e.key)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticStyle:{"margin-left":"5px"},attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:function(i){return t.removeSetting(e.key)}}})],1):t._e()],1),t._v(" "),i("span",{staticClass:"label-font"},[t._v(t._s(e.label))]),t._v(" "),t.canBeDeleted(e.key)&&(t.isMobile||t.isTablet)?i("el-tooltip",{attrs:{content:t.$t("settings.removeFromDB"),placement:"bottom-end"}},[i("el-button",{staticClass:"settings-delete-button",attrs:{icon:"el-icon-delete",circle:"",size:"mini"},on:{click:function(i){return t.removeSetting(e.key)}}})],1):t._e()],1)],1),t._v(" "),t._l(e.children,function(n){return i("div",{key:n.key},[i("inputs",{attrs:{"setting-group":t.settingGroup,"setting-parent":[e,n],setting:n,data:t.data[e.key],nested:!0}})],1)})],2):i("div",[i("inputs",{attrs:{"setting-group":t.settingGroup,setting:e,data:t.data[e.key],nested:!0}})],1),t._v(" "),t.notLastInGroup(e.key)?i("el-divider",{staticClass:"divider"}):t._e()],1):t._e()])}),0)],1)},[],!1,null,null,null));xt.options.__file="Setting.vue";var $t=xt.exports;function Ut(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Et(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ut(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ut(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var It={name:"ActivityPub",components:{Setting:$t},computed:Et(Et({},Object(c.b)(["settings"])),{},{activitypub:function(){return this.settings.description.find(function(t){return":activitypub"===t.key})},activitypubData:function(){return U.a.get(this.settings.settings,[":pleroma",":activitypub"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading},user:function(){return this.settings.description.find(function(t){return":user"===t.key})},userData:function(){return U.a.get(this.settings.settings,[":pleroma",":user"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Mt=(i("qEST"),Object(m.a)(It,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.activitypubData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":":activitypub"}},[i("setting",{attrs:{"setting-group":t.activitypub,data:t.activitypubData}})],1),t._v(" "),t.user?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.userData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":":user"}},[i("setting",{attrs:{"setting-group":t.user,data:t.userData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Mt.options.__file="ActivityPub.vue";var At=Mt.exports;function Tt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Wt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Tt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Tt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Gt={name:"Authentication",components:{Setting:$t},computed:Wt(Wt({},Object(c.b)(["settings"])),{},{auth:function(){return this.settings.description.find(function(t){return":auth"===t.key})},authData:function(){return U.a.get(this.settings.settings,[":pleroma",":auth"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},ldap:function(){return this.settings.description.find(function(t){return":ldap"===t.key})},ldapData:function(){return U.a.get(this.settings.settings,[":pleroma",":ldap"])||{}},loading:function(){return this.settings.loading},oauth2:function(){return this.settings.description.find(function(t){return":oauth2"===t.key})},oauth2Data:function(){return U.a.get(this.settings.settings,[":pleroma",":oauth2"])||{}},pleromaAuthenticator:function(){return this.settings.description.find(function(t){return t.children&&"Pleroma.Web.Auth.Authenticator"===t.children[0].key})},pleromaAuthenticatorData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Auth.Authenticator"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Lt=(i("4b9x"),Object(m.a)(Gt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.pleromaAuthenticatorData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.pleromaAuthenticator,data:t.pleromaAuthenticatorData}})],1),t._v(" "),t.pleromaAuthenticator?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.authData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.auth,data:t.authData}})],1),t._v(" "),t.auth?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.ldapData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.ldap,data:t.ldapData}})],1),t._v(" "),t.ldap?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.oauth2Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.oauth2,data:t.oauth2Data}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Lt.options.__file="Authentication.vue";var Ft=Lt.exports;function Rt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Vt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Rt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Rt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Kt={name:"Captcha",components:{Setting:$t},computed:Vt(Vt({},Object(c.b)(["settings"])),{},{captcha:function(){return this.settings.description.find(function(t){return"Pleroma.Captcha"===t.key})},captchaData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Captcha"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},kocaptcha:function(){return this.settings.description.find(function(t){return"Pleroma.Captcha.Kocaptcha"===t.key})},kocaptchaData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Captcha.Kocaptcha"])||{}},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},zt=(i("2q6O"),Object(m.a)(Kt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.captchaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.captcha,data:t.captchaData}})],1),t._v(" "),t.captcha?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.kocaptchaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.kocaptcha,data:t.kocaptchaData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));zt.options.__file="Captcha.vue";var qt=zt.exports;function Bt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Nt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Bt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Bt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Qt={name:"Esshd",components:{Setting:$t},computed:Nt(Nt({},Object(c.b)(["settings"])),{},{esshd:function(){return this.settings.description.find(function(t){return":esshd"===t.group})},esshdData:function(){return U.a.get(this.settings.settings,[":esshd"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{toggleEsshd:function(t){this.$store.dispatch("ToggleEsshd",t)},updateSetting:function(t,e,i){this.$store.dispatch("UpdateSettings",{tab:e,data:u()({},i,t)})},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Ht=(i("FCne"),Object(m.a)(Qt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.esshdData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.esshd,data:t.esshdData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Ht.options.__file="Esshd.vue";var Jt=Ht.exports;function Yt(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Xt(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Yt(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Yt(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Zt={name:"Frontend",components:{Setting:$t},computed:Xt(Xt({},Object(c.b)(["settings"])),{},{assets:function(){return this.settings.description.find(function(t){return":assets"===t.key})},assetsData:function(){return U.a.get(this.settings.settings,[":pleroma",":assets"])||{}},chat:function(){return this.settings.description.find(function(t){return":chat"===t.key})},chatData:function(){return U.a.get(this.settings.settings,[":pleroma",":chat"])||{}},emoji:function(){return this.settings.description.find(function(t){return":emoji"===t.key})},emojiData:function(){return U.a.get(this.settings.settings,[":pleroma",":emoji"])||{}},frontend:function(){return this.settings.description.find(function(t){return":frontend_configurations"===t.key})},frontendData:function(){return U.a.get(this.settings.settings,[":pleroma",":frontend_configurations"])||{}},frontends:function(){return this.settings.description.find(function(t){return":frontends"===t.key})},frontendsData:function(){return U.a.get(this.settings.settings,[":pleroma",":frontends"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},markup:function(){return this.settings.description.find(function(t){return":markup"===t.key})},markupData:function(){return U.a.get(this.settings.settings,[":pleroma",":markup"])||{}},preload:function(){return this.settings.description.find(function(t){return"Pleroma.Web.Preload"===t.key})},preloadData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Preload"])||{}},staticFe:function(){return this.settings.description.find(function(t){return":static_fe"===t.key})},staticFeData:function(){return U.a.get(this.settings.settings,[":pleroma",":static_fe"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},te=(i("hVXW"),Object(m.a)(Zt,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.frontendData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.frontend,data:t.frontendData}})],1),t._v(" "),t.frontend?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.staticFeData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.staticFe,data:t.staticFeData}})],1),t._v(" "),t.staticFe?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.frontendsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.frontends,data:t.frontendsData}})],1),t._v(" "),t.frontends?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.assetsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.assets,data:t.assetsData}})],1),t._v(" "),t.assets?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.emojiData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.emoji,data:t.emojiData}})],1),t._v(" "),t.emoji?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.chatData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.chat,data:t.chatData}})],1),t._v(" "),t.chat?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.markupData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.markup,data:t.markupData}})],1),t._v(" "),t.preload?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.preloadData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.preload,data:t.preloadData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));te.options.__file="Frontend.vue";var ee=te.exports;function ie(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ne(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ie(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ie(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var se={name:"Gopher",components:{Setting:$t},computed:ne(ne({},Object(c.b)(["settings"])),{},{gopher:function(){return this.settings.description.find(function(t){return":gopher"===t.key})},gopherData:function(){return U.a.get(this.settings.settings,[":pleroma",":gopher"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ae=(i("w5cJ"),Object(m.a)(se,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.gopherData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.gopher,data:t.gopherData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ae.options.__file="Gopher.vue";var re=ae.exports;function oe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function le(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?oe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):oe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ue={name:"HTTP",components:{Setting:$t},computed:le(le({},Object(c.b)(["settings"])),{},{corsPlug:function(){return this.settings.description.find(function(t){return":cors_plug"===t.group})},corsPlugData:function(){return U.a.get(this.settings.settings,[":cors_plug"])||{}},http:function(){return this.settings.description.find(function(t){return":http"===t.key})},httpData:function(){return U.a.get(this.settings.settings,[":pleroma",":http"])||{}},httpSecurity:function(){return this.settings.description.find(function(t){return":http_security"===t.key})},httpSecurityData:function(){return U.a.get(this.settings.settings,[":pleroma",":http_security"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},webCacheTtl:function(){return this.settings.description.find(function(t){return":web_cache_ttl"===t.key})},webCacheTtlData:function(){return U.a.get(this.settings.settings,[":pleroma",":web_cache_ttl"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ce=(i("KFE3"),Object(m.a)(ue,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.httpData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.http,data:t.httpData}})],1),t._v(" "),t.http?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.corsPlugData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.corsPlug,data:t.corsPlugData}})],1),t._v(" "),t.corsPlug?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.httpSecurityData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.httpSecurity,data:t.httpSecurityData}})],1),t._v(" "),t.httpSecurity?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.webCacheTtlData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.webCacheTtl,data:t.webCacheTtlData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ce.options.__file="Http.vue";var pe=ce.exports;function de(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ge(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?de(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):de(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var be={name:"Instance",components:{EditorInput:w,Setting:$t},data:function(){return{editorContent:""}},computed:ge(ge({},Object(c.b)(["settings"])),{},{adminToken:function(){return this.settings.description.find(function(t){return t.children&&":admin_token"===t.children[0].key})},adminTokenData:function(){return U.a.get(this.settings.settings,[":pleroma",":admin_token"])||{}},instancePanelContent:{get:function(){return this.$store.state.settings.instancePanel},set:function(t){this.editorContent=t}},favicons:function(){return this.settings.description.find(function(t){return":instances_favicons"===t.key})},faviconsData:function(){return U.a.get(this.settings.settings,[":pleroma",":instances_favicons"])||{}},feed:function(){return this.settings.description.find(function(t){return":feed"===t.key})},feedData:function(){return U.a.get(this.settings.settings,[":pleroma",":feed"])||{}},instance:function(){return this.settings.description.find(function(t){return":instance"===t.key})},instanceData:function(){return U.a.get(this.settings.settings,[":pleroma",":instance"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},manifest:function(){return this.settings.description.find(function(t){return":manifest"===t.key})},manifestData:function(){return U.a.get(this.settings.settings,[":pleroma",":manifest"])||{}},pleromaUser:function(){return this.settings.description.find(function(t){return"Pleroma.User"===t.key})},pleromaUserData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.User"])||{}},restrictUnauthenticated:function(){return this.settings.description.find(function(t){return":restrict_unauthenticated"===t.key})},restrictUnauthenticatedData:function(){return U.a.get(this.settings.settings,[":pleroma",":restrict_unauthenticated"])||{}},scheduledActivity:function(){return this.$store.state.settings.description.find(function(t){return"Pleroma.ScheduledActivity"===t.key})},scheduledActivityData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.ScheduledActivity"])||{}},streamer:function(){return this.$store.state.settings.description.find(function(t){return":streamer"===t.key})},streamerData:function(){return U.a.get(this.settings.settings,[":pleroma",":streamer"])||{}},uriSchemes:function(){return this.settings.description.find(function(t){return":uri_schemes"===t.key})},uriSchemesData:function(){return U.a.get(this.settings.settings,[":pleroma",":uri_schemes"])||{}},welcome:function(){return this.settings.description.find(function(t){return":welcome"===t.key})},welcomeData:function(){return U.a.get(this.settings.settings,[":pleroma",":welcome"])||{}}}),mounted:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("FetchInstanceDocument","instance-panel");case 2:case"end":return e.stop()}},e)}))()},methods:{handleEditorUpdate:function(t){this.editorContent=t},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:return e.next=5,t.$store.dispatch("UpdateInstanceDocs",{name:"instance-panel",content:t.editorContent});case 5:e.next=10;break;case 7:return e.prev=7,e.t0=e.catch(0),e.abrupt("return");case 10:t.$message({type:"success",message:o.a.t("settings.success")});case 11:case"end":return e.stop()}},e,null,[[0,7]])}))()}}},he=(i("e0P1"),Object(m.a)(be,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.instanceData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.instance,data:t.instanceData}})],1),t._v(" "),i("editor-input",{attrs:{name:"instance-panel"},on:{input:t.handleEditorUpdate},model:{value:t.instancePanelContent,callback:function(e){t.instancePanelContent=e},expression:"instancePanelContent"}}),t._v(" "),t.instance?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.restrictUnauthenticatedData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.restrictUnauthenticated,data:t.restrictUnauthenticatedData}})],1),t._v(" "),t.restrictUnauthenticated?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.adminTokenData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.adminToken,data:t.adminTokenData}})],1),t._v(" "),t.adminToken?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.welcomeData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.welcome,data:t.welcomeData}})],1),t._v(" "),t.welcome?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.scheduledActivityData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.scheduledActivity,data:t.scheduledActivityData}})],1),t._v(" "),t.scheduledActivity?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.manifestData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.manifest,data:t.manifestData}})],1),t._v(" "),t.manifest?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.pleromaUserData,"label-position":t.labelPosition,"label-width":t.labelWidth,"data-search":"Pleroma.User"}},[i("setting",{attrs:{"setting-group":t.pleromaUser,data:t.pleromaUserData}})],1),t._v(" "),t.pleromaUser?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.faviconsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.favicons,data:t.faviconsData}})],1),t._v(" "),t.favicons?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uriSchemesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uriSchemes,data:t.uriSchemesData}})],1),t._v(" "),t.uriSchemes?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.feedData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.feed,data:t.feedData}})],1),t._v(" "),t.feed?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.streamerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.streamer,data:t.streamerData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));he.options.__file="Instance.vue";var fe=he.exports;function me(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function ve(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?me(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):me(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ye={name:"JobQueue",components:{Setting:$t},computed:ve(ve({},Object(c.b)(["settings"])),{},{activityExpiration:function(){return this.settings.description.find(function(t){return"Pleroma.ActivityExpiration"===t.key})},activityExpirationData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.ActivityExpiration"])||{}},connectionsPools:function(){return this.settings.description.find(function(t){return":connections_pool"===t.key})},connectionsPoolsData:function(){return U.a.get(this.settings.settings,[":pleroma",":connections_pool"])||{}},hackneyPools:function(){return this.settings.description.find(function(t){return":hackney_pools"===t.key})},hackneyPoolsData:function(){return U.a.get(this.settings.settings,[":pleroma",":hackney_pools"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},obanQueues:function(){return this.settings.description.find(function(t){return"Oban"===t.key})},obanQueuesData:function(){return U.a.get(this.settings.settings,[":pleroma","Oban"])||{}},pools:function(){return this.settings.description.find(function(t){return":pools"===t.key})},poolsData:function(){return U.a.get(this.settings.settings,[":pleroma",":pools"])||{}},workers:function(){return this.settings.description.find(function(t){return":workers"===t.key})},workersData:function(){return U.a.get(this.settings.settings,[":pleroma",":workers"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},_e=(i("lNpP"),Object(m.a)(ye,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.obanQueuesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.obanQueues,data:t.obanQueuesData}})],1),t._v(" "),t.obanQueues?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.workersData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.workers,data:t.workersData}})],1),t._v(" "),t.workers?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.activityExpirationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.activityExpiration,data:t.activityExpirationData}})],1),t._v(" "),t.activityExpiration?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.connectionsPoolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.connectionsPools,data:t.connectionsPoolsData}})],1),t._v(" "),t.connectionsPools?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.poolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.pools,data:t.poolsData}})],1),t._v(" "),t.pools?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.hackneyPoolsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.hackneyPools,data:t.hackneyPoolsData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));_e.options.__file="JobQueue.vue";var ke=_e.exports;function Oe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Pe(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Oe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Oe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var we={name:"LinkFormatter",components:{Setting:$t},computed:Pe(Pe({},Object(c.b)(["settings"])),{},{linkFormatter:function(){return this.settings.description.find(function(t){return"Pleroma.Formatter"===t.key})},linkFormatterData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Formatter"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Se=(i("vnTa"),Object(m.a)(we,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.linkFormatterData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.linkFormatter,data:t.linkFormatterData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Se.options.__file="LinkFormatter.vue";var je=Se.exports;function De(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ce(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?De(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):De(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var xe={name:"Logger",components:{Setting:$t},computed:Ce(Ce({},Object(c.b)(["settings"])),{},{console:function(){return this.settings.description.find(function(t){return":console"===t.key})},consoleData:function(){return U.a.get(this.settings.settings,[":logger",":console"])||{}},exsyslogger:function(){return this.settings.description.find(function(t){return":ex_syslogger"===t.key})},exsysloggerData:function(){return U.a.get(this.settings.settings,[":logger",":ex_syslogger"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},logger:function(){return this.settings.description.find(function(t){return":logger"===t.group})},loggerData:function(){return U.a.get(this.settings.settings,[":logger",":backends"])||{}},quack:function(){return this.settings.description.find(function(t){return":quack"===t.group})},quackData:function(){return U.a.get(this.settings.settings,[":quack"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},$e=(i("mADP"),Object(m.a)(xe,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.loggerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.logger,data:t.loggerData}})],1),t._v(" "),t.logger?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.consoleData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.console,data:t.consoleData}})],1),t._v(" "),t.console?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.exsysloggerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.exsyslogger,data:t.exsysloggerData}})],1),t._v(" "),t.exsyslogger?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.quackData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.quack,data:t.quackData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));$e.options.__file="Logger.vue";var Ue=$e.exports;function Ee(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ie(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ee(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ee(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Me={name:"Mailer",components:{Setting:$t},computed:Ie(Ie({},Object(c.b)(["settings"])),{},{emailNotifications:function(){return this.settings.description.find(function(t){return":email_notifications"===t.key})},emailNotificationsData:function(){return U.a.get(this.settings.settings,[":pleroma",":email_notifications"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading},mailer:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.Mailer"===t.key})},mailerData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.Mailer"])||{}},newUsersDigestEmail:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.NewUsersDigestEmail"===t.key})},newUsersDigestEmailData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.NewUsersDigestEmail"])||{}},swoosh:function(){return this.settings.description.find(function(t){return":swoosh"===t.group})},swooshData:function(){return U.a.get(this.settings.settings,[":swoosh"])||{}},userEmail:function(){return this.settings.description.find(function(t){return"Pleroma.Emails.UserEmail"===t.key})},userEmailData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Emails.UserEmail"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Ae=(i("PygS"),Object(m.a)(Me,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.mailerData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mailer,data:t.mailerData}})],1),t._v(" "),t.mailer?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.swooshData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.swoosh,data:t.swooshData}})],1),t._v(" "),t.swoosh?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.emailNotificationsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.emailNotifications,data:t.emailNotificationsData}})],1),t._v(" "),t.emailNotifications?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.userEmailData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.userEmail,data:t.userEmailData}})],1),t._v(" "),t.userEmail?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.newUsersDigestEmailData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.newUsersDigestEmail,data:t.newUsersDigestEmailData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Ae.options.__file="Mailer.vue";var Te=Ae.exports;function We(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ge(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?We(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):We(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var Le={name:"MediaProxy",components:{Setting:$t},computed:Ge(Ge({},Object(c.b)(["settings"])),{},{httpInvalidation:function(){return this.settings.description.find(function(t){return"Pleroma.Web.MediaProxy.Invalidation.Http"===t.key})},httpInvalidationData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.MediaProxy.Invalidation.Http"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mediaProxy:function(){return this.settings.description.find(function(t){return":media_proxy"===t.key})},mediaProxyData:function(){return U.a.get(this.settings.settings,[":pleroma",":media_proxy"])||{}},scriptInvalidation:function(){return this.settings.description.find(function(t){return"Pleroma.Web.MediaProxy.Invalidation.Script"===t.key})},scriptInvalidationData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.MediaProxy.Invalidation.Script"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},Fe=(i("UdS4"),Object(m.a)(Le,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.mediaProxyData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mediaProxy,data:t.mediaProxyData}})],1),t._v(" "),t.mediaProxy?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.loading?t._e():i("el-form",{attrs:{model:t.httpInvalidationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.httpInvalidation,data:t.httpInvalidationData}})],1),t._v(" "),t.httpInvalidation?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.loading?t._e():i("el-form",{attrs:{model:t.scriptInvalidationData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.scriptInvalidation,data:t.scriptInvalidationData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));Fe.options.__file="MediaProxy.vue";var Re=Fe.exports;function Ve(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ke(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ve(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ve(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ze={name:"Metadata",components:{Setting:$t},computed:Ke(Ke({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},metadata:function(){return this.settings.description.find(function(t){return"Pleroma.Web.Metadata"===t.key})},metadataData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.Metadata"])||{}},richMedia:function(){return this.settings.description.find(function(t){return":rich_media"===t.key})},richMediaData:function(){return U.a.get(this.settings.settings,[":pleroma",":rich_media"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},qe=(i("apN7"),Object(m.a)(ze,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.metadataData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.metadata,data:t.metadataData}})],1),t._v(" "),t.metadata?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.richMediaData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.richMedia,data:t.richMediaData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));qe.options.__file="Metadata.vue";var Be=qe.exports;function Ne(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Qe(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Ne(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Ne(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var He={name:"MRF",components:{Setting:$t},computed:Qe(Qe({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mrfSettings:function(){return this.settings.description.filter(function(t){return"mrf"===t.tab})}}),methods:{getSettingData:function(t){return U.a.get(this.settings.settings,[t.group,t.key])||{}},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()},showMrfPolicy:function(t){var e=U.a.get(this.settings.settings,[":pleroma",":mrf",":policies"])||[],i=this.mrfSettings.reduce(function(t,e){var i=e.key,n=e.related_policy;return":mrf"!==i&&(t[i]=n),t},{});return!Object.keys(i).includes(t)||e.includes(i[t])}}},Je=(i("h9z7"),Object(m.a)(He,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t._l(t.mrfSettings,function(e){return i("div",{key:e.key},[t.showMrfPolicy(e.key)?i("el-form",{attrs:{model:t.getSettingData(e),"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":e,data:t.getSettingData(e)}}),t._v(" "),e?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e()],1)}),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],2)},[],!1,null,null,null));Je.options.__file="MRF.vue";var Ye=Je.exports;function Xe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function Ze(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?Xe(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):Xe(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ti={name:"Other",components:{EditorInput:w,Setting:$t},data:function(){return{termsOfServices:""}},computed:Ze(Ze({},Object(c.b)(["settings"])),{},{castAndValidate:function(){return this.settings.description.find(function(t){return"Pleroma.Web.ApiSpec.CastAndValidate"===t.key})},castAndValidateData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Web.ApiSpec.CastAndValidate"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},mimeTypes:function(){return this.settings.description.find(function(t){return":mime"===t.group})},mimeTypesData:function(){return U.a.get(this.settings.settings,[":mime"])||{}},modules:function(){return this.settings.description.find(function(t){return":modules"===t.key})},modulesData:function(){return U.a.get(this.settings.settings,[":pleroma",":modules"])||{}},remoteIp:function(){return this.settings.description.find(function(t){return"Pleroma.Plugs.RemoteIp"===t.key})},remoteIpData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Plugs.RemoteIp"])||{}},termsOfServicesContent:{get:function(){return this.$store.state.settings.termsOfServices},set:function(t){this.termsOfServices=t}}}),mounted:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("FetchInstanceDocument","terms-of-service");case 2:case"end":return e.stop()}},e)}))()},methods:{handleEditorUpdate:function(t){this.editorContent=t},onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:return e.next=5,t.$store.dispatch("UpdateInstanceDocs",{name:"terms-of-service",content:t.editorContent});case 5:e.next=10;break;case 7:return e.prev=7,e.t0=e.catch(0),e.abrupt("return");case 10:t.$message({type:"success",message:o.a.t("settings.success")});case 11:case"end":return e.stop()}},e,null,[[0,7]])}))()}}},ei=(i("gFOO"),Object(m.a)(ti,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("editor-input",{attrs:{name:"terms-of-service"},on:{input:t.handleEditorUpdate},model:{value:t.termsOfServicesContent,callback:function(e){t.termsOfServicesContent=e},expression:"termsOfServicesContent"}}),t._v(" "),i("el-divider",{staticClass:"divider thick-line"}),t._v(" "),i("el-form",{attrs:{model:t.mimeTypesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.mimeTypes,data:t.mimeTypesData}})],1),t._v(" "),t.mimeTypes?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.remoteIpData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.remoteIp,data:t.remoteIpData}})],1),t._v(" "),t.remoteIpData?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.modulesData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.modules,data:t.modulesData}})],1),t._v(" "),t.castAndValidate?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.castAndValidateData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.castAndValidate,data:t.castAndValidateData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ei.options.__file="Other.vue";var ii=ei.exports;function ni(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function si(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?ni(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):ni(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var ai={name:"RateLimiters",components:{Setting:$t},computed:si(si({},Object(c.b)(["settings"])),{},{rateLimiters:function(){return this.settings.description.find(function(t){return":rate_limit"===t.key})},rateLimitersData:function(){return U.a.get(this.settings.settings,[":pleroma",":rate_limit"])||{}},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.$store.state.settings.loading}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},ri=(i("WvM+"),Object(m.a)(ai,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.rateLimitersData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.rateLimiters,data:t.rateLimitersData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));ri.options.__file="RateLimiters.vue";var oi=ri.exports,li={name:"Relays",data:function(){return{newRelay:""}},computed:{getLabelWidth:function(){return this.isDesktop?"130px":"85px"},isDesktop:function(){return"desktop"===this.$store.state.app.device},loading:function(){return this.$store.state.relays.loading},relays:function(){return this.$store.state.relays.fetchedRelays}},mounted:function(){this.$store.dispatch("FetchRelays")},methods:{followRelay:function(){this.$store.dispatch("AddRelay",this.newRelay),this.newRelay=""},deleteRelay:function(t){this.$store.dispatch("DeleteRelay",t)}}},ui=(i("J7+w"),Object(m.a)(li,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"relays-container"},[i("div",{staticClass:"follow-relay-container"},[i("el-input",{staticClass:"follow-relay",attrs:{placeholder:t.$t("settings.followRelay")},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.followRelay(e)}},model:{value:t.newRelay,callback:function(e){t.newRelay=e},expression:"newRelay"}}),t._v(" "),i("el-button",{nativeOn:{click:function(e){return t.followRelay(e)}}},[t._v(t._s(t.$t("settings.follow")))])],1),t._v(" "),i("el-table",{attrs:{data:t.relays}},[i("el-table-column",{attrs:{label:t.$t("settings.instanceUrl"),prop:"actor"}}),t._v(" "),i("el-table-column",{attrs:{label:t.$t("settings.followedBack"),width:t.getLabelWidth,prop:"followed_back",align:"center"},scopedSlots:t._u([{key:"default",fn:function(t){return[i("i",{class:t.row.followed_back?"el-icon-check":"el-icon-minus"})]}}],null,!1,237257305)}),t._v(" "),i("el-table-column",{attrs:{label:t.$t("table.actions"),width:t.getLabelWidth,fixed:"right",align:"center"},scopedSlots:t._u([{key:"default",fn:function(e){return[i("el-button",{attrs:{type:"text",size:"small"},nativeOn:{click:function(i){return t.deleteRelay(e.row.actor)}}},[t._v("\n "+t._s(t.$t("table.unfollow"))+"\n ")])]}}],null,!1,877363589)})],1)],1)},[],!1,null,null,null));ui.options.__file="Relays.vue";var ci=ui.exports;function pi(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function di(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?pi(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):pi(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var gi={name:"Upload",components:{Setting:$t},computed:di(di({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},s3:function(){return this.settings.description.find(function(t){return":s3"===t.key})},s3Data:function(){return U.a.get(this.settings.settings,[":ex_aws",":s3"])||{}},showUploadersS3:function(){return"Pleroma.Uploaders.S3"===U.a.get(this.settings.settings,[":pleroma","Pleroma.Upload",":uploader"])},showUploadersLocal:function(){return"Pleroma.Uploaders.Local"===U.a.get(this.settings.settings,[":pleroma","Pleroma.Upload",":uploader"])},upload:function(){return this.settings.description.find(function(t){return"Pleroma.Upload"===t.key})},uploadData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Upload"])||{}},uploadersLocal:function(){return this.settings.description.find(function(t){return"Pleroma.Uploaders.Local"===t.key})},uploadersLocalData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Uploaders.Local"])||{}},uploadersS3:function(){return this.settings.description.find(function(t){return"Pleroma.Uploaders.S3"===t.key})},uploadersS3Data:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Uploaders.S3"])||{}},uploadFilterMogrify:function(){return this.settings.description.find(function(t){return"Pleroma.Upload.Filter.Mogrify"===t.key})},uploadFilterMogrifyData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Upload.Filter.Mogrify"])||{}},uploadAnonymizeFilename:function(){return this.settings.description.find(function(t){return"Pleroma.Upload.Filter.AnonymizeFilename"===t.key})},uploadAnonymizeFilenameData:function(){return U.a.get(this.settings.settings,[":pleroma","Pleroma.Upload.Filter.AnonymizeFilename"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},bi=(i("DPt0"),Object(m.a)(gi,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[i("el-form",{attrs:{model:t.uploadData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.upload,data:t.uploadData}})],1),t._v(" "),t.upload?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),t.showUploadersLocal?i("el-form",{attrs:{model:t.uploadersLocalData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadersLocal,data:t.uploadersLocalData}}),t._v(" "),t.uploadersLocal?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),t.showUploadersS3?i("el-form",{attrs:{model:t.s3Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.s3,data:t.s3Data}}),t._v(" "),t.s3?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),t.showUploadersS3?i("el-form",{attrs:{model:t.uploadersS3Data,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadersS3,data:t.uploadersS3Data}}),t._v(" "),t.uploadersS3?i("el-divider",{staticClass:"divider thick-line"}):t._e()],1):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uploadFilterMogrifyData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadFilterMogrify,data:t.uploadFilterMogrifyData}})],1),t._v(" "),t.uploadFilterMogrify?i("el-divider",{staticClass:"divider thick-line"}):t._e(),t._v(" "),i("el-form",{attrs:{model:t.uploadAnonymizeFilenameData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.uploadAnonymizeFilename,data:t.uploadAnonymizeFilenameData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));bi.options.__file="Upload.vue";var hi=bi.exports;function fi(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),i.push.apply(i,n)}return i}function mi(t){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?fi(Object(i),!0).forEach(function(e){u()(t,e,i[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):fi(Object(i)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(i,e))})}return t}var vi={name:"WebPush",components:{Setting:$t},computed:mi(mi({},Object(c.b)(["settings"])),{},{isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"sidebar-opened":"sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},labelPosition:function(){return this.isMobile?"top":"right"},labelWidth:function(){return this.isMobile?"120px":this.isTablet?"200px":"280px"},loading:function(){return this.settings.loading},vapidDetails:function(){return this.settings.description.find(function(t){return":vapid_details"===t.key})},vapidDetailsData:function(){return U.a.get(this.settings.settings,[":web_push_encryption",":vapid_details"])||{}}}),methods:{onSubmit:function(){var t=this;return r()(s.a.mark(function e(){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.$store.dispatch("SubmitChanges");case 3:e.next=8;break;case 5:return e.prev=5,e.t0=e.catch(0),e.abrupt("return");case 8:t.$message({type:"success",message:o.a.t("settings.success")});case 9:case"end":return e.stop()}},e,null,[[0,5]])}))()}}},yi=(i("+qaP"),Object(m.a)(vi,function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.loading?t._e():i("div",{staticClass:"form-container",class:t.isSidebarOpen},[t.loading?t._e():i("el-form",{attrs:{model:t.vapidDetailsData,"label-position":t.labelPosition,"label-width":t.labelWidth}},[i("setting",{attrs:{"setting-group":t.vapidDetails,data:t.vapidDetailsData}})],1),t._v(" "),i("div",{staticClass:"submit-button-container"},[i("el-button",{staticClass:"submit-button",attrs:{type:"primary"},on:{click:t.onSubmit}},[t._v("Submit")])],1)],1)},[],!1,null,null,null));yi.options.__file="WebPush.vue";var _i=yi.exports,ki={components:{ActivityPub:At,Authentication:Ft,Captcha:qt,Esshd:Jt,Frontend:ee,Gopher:re,Http:pe,Instance:fe,JobQueue:ke,LinkFormatter:je,Logger:Ue,Mailer:Te,MediaProxy:Re,Metadata:Be,Mrf:Ye,Other:ii,RateLimiters:oi,Relays:ci,RebootButton:i("rIUS").a,Upload:hi,WebPush:_i},data:function(){return{options:[{value:"activityPub",label:o.a.t("settings.activityPub")},{value:"auth",label:o.a.t("settings.auth")},{value:"linkFormatter",label:o.a.t("settings.linkFormatter")},{value:"esshd",label:o.a.t("settings.esshd")},{value:"captcha",label:o.a.t("settings.captcha")},{value:"frontend",label:o.a.t("settings.frontend")},{value:"gopher",label:o.a.t("settings.gopher")},{value:"http",label:o.a.t("settings.http")},{value:"instance",label:o.a.t("settings.instance")},{value:"jobQueue",label:o.a.t("settings.jobQueue")},{value:"logger",label:o.a.t("settings.logger")},{value:"mailer",label:o.a.t("settings.mailer")},{value:"mediaProxy",label:o.a.t("settings.mediaProxy")},{value:"metadata",label:o.a.t("settings.metadata")},{value:"mrf",label:o.a.t("settings.mrf")},{value:"rateLimiters",label:o.a.t("settings.rateLimiters")},{value:"relays",label:o.a.t("settings.relays")},{value:"webPush",label:o.a.t("settings.webPush")},{value:"upload",label:o.a.t("settings.upload")},{value:"other",label:o.a.t("settings.other")}],searchQuery:""}},computed:{activeTab:{get:function(){return this.$store.state.settings.activeTab},set:function(t){this.$store.dispatch("SetActiveTab",t)}},configDisabled:function(){return this.$store.state.settings.configDisabled},isDesktop:function(){return"desktop"===this.$store.state.app.device},isMobile:function(){return"mobile"===this.$store.state.app.device},isSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"header-sidebar-opened":"header-sidebar-closed"},isTablet:function(){return"tablet"===this.$store.state.app.device},rebootIsSidebarOpen:function(){return this.$store.state.app.sidebar.opened?"reboot-sidebar-opened":"reboot-sidebar-closed"},searchData:function(){return this.$store.state.settings.searchData},tabs:function(){return function(t){return{"activity-pub":{label:"settings.activityPub",settings:[":activitypub",":user"]},authentication:{label:"settings.auth",settings:[":auth",":ldap",":oauth2","Pleroma.Web.Auth.Authenticator"]},esshd:{label:"settings.esshd",settings:[":esshd"]},captcha:{label:"settings.captcha",settings:["Pleroma.Captcha","Pleroma.Captcha.Kocaptcha"]},frontend:{label:"settings.frontend",settings:[":assets",":chat",":frontends",":emoji",":frontend_configurations",":markup",":static_fe"]},gopher:{label:"settings.gopher",settings:[":gopher"]},http:{label:"settings.http",settings:[":cors_plug",":http",":http_security",":web_cache_ttl"]},instance:{label:"settings.instance",settings:[":admin_token",":instance",":instance_panel",":instances_favicons",":welcome",":manifest","Pleroma.User","Pleroma.ScheduledActivity",":uri_schemes",":feed",":streamer",":restrict_unauthenticated"]},"job-queue":{label:"settings.jobQueue",settings:["Pleroma.ActivityExpiration",":connections_pool",":hackney_pools","Oban",":pools",":workers"]},"link-formatter":{label:"settings.linkFormatter",settings:["Pleroma.Formatter"]},logger:{label:"settings.logger",settings:[":console",":ex_syslogger",":quack",":logger"]},mailer:{label:"settings.mailer",settings:[":email_notifications","Pleroma.Emails.Mailer","Pleroma.Emails.UserEmail",":swoosh","Pleroma.Emails.NewUsersDigestEmail"]},"media-proxy":{label:"settings.mediaProxy",settings:[":media_proxy","Pleroma.Web.MediaProxy.Invalidation.Http","Pleroma.Web.MediaProxy.Invalidation.Script"]},metadata:{label:"settings.metadata",settings:["Pleroma.Web.Metadata",":rich_media"]},mrf:{label:"settings.mrf",settings:t.filter(function(t){return"mrf"===t.tab}).map(function(t){return t.key})},"rate-limiters":{label:"settings.rateLimiters",settings:[":rate_limit"]},relays:{label:"settings.relays",settings:["relays"]},"web-push":{label:"settings.webPush",settings:[":vapid_details"]},upload:{label:"settings.upload",settings:["Pleroma.Upload.Filter.AnonymizeFilename","Pleroma.Upload.Filter.Mogrify","Pleroma.Uploaders.S3","Pleroma.Uploaders.Local","Pleroma.Upload",":s3"]},other:{label:"settings.other",settings:[":mime","Pleroma.Plugs.RemoteIp",":modules","Pleroma.Web.ApiSpec.CastAndValidate",":terms_of_services"]}}}(this.$store.state.settings.description)}},mounted:function(){this.$store.dispatch("GetNodeInfo"),this.$store.dispatch("NeedReboot"),this.$store.dispatch("FetchSettings")},methods:{handleSearchSelect:function(t){var e=this;return r()(s.a.mark(function i(){var n,a;return s.a.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return n=Object.keys(e.tabs).find(function(i){return e.tabs[i].settings.includes(":pleroma"===t.group?t.key:t.group)}),i.next=3,e.$store.dispatch("SetActiveTab",n);case 3:(a=document.querySelector('[data-search="'.concat(t.key,'"]')))&&a.scrollIntoView({block:"start",behavior:"smooth"});case 5:case"end":return i.stop()}},i)}))()},querySearch:function(t,e){e(this.searchData.filter(function(e){return e.search.find(function(e){return e.includes(t.toLowerCase())})}).map(function(t){return{value:"".concat(t.label," in ").concat(t.groupLabel),group:t.groupKey,key:t.key}}))},settingsCantBeChanged:function(t){var e=this;return 0===t.filter(function(t){return[":esshd",":cors_plug",":quack",":logger",":swoosh",":mime"].includes(t)?-1!==e.$store.state.settings.description.findIndex(function(e){return e.group===t}):"Pleroma.Web.Auth.Authenticator"===t||":admin_token"===t?-1!==e.$store.state.settings.description.findIndex(function(e){return e.children[0].key===t}):"relays"===t?[t]:-1!==e.$store.state.settings.description.findIndex(function(e){return e.key===t})}).length}}},Oi=(i("0FjT"),Object(m.a)(ki,function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"settings-container",class:t.rebootIsSidebarOpen},[i("div",{staticClass:"reboot-button-container"},[i("reboot-button")],1),t._v(" "),t.isDesktop?i("div",[i("div",{staticClass:"settings-header-container",class:t.isSidebarOpen},[i("h1",{staticClass:"settings-header"},[t._v(t._s(t.$t("settings.settings")))]),t._v(" "),i("div",{staticClass:"docs-search-container"},[i("el-link",{attrs:{underline:!1,href:"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/",target:"_blank"}},[i("el-button",{staticClass:"settings-docs-button"},[i("span",[i("i",{staticClass:"el-icon-document"}),t._v("\n "+t._s(t.$t("settings.seeDocs"))+"\n ")])])],1),t._v(" "),i("el-autocomplete",{staticClass:"settings-search-input",attrs:{"fetch-suggestions":t.querySearch,"trigger-on-focus":!1,clearable:"",placeholder:"Search","prefix-icon":"el-icon-search"},on:{select:t.handleSearchSelect},model:{value:t.searchQuery,callback:function(e){t.searchQuery=e},expression:"searchQuery"}})],1)]),t._v(" "),i("el-tabs",{attrs:{"tab-position":"left"},model:{value:t.activeTab,callback:function(e){t.activeTab=e},expression:"activeTab"}},t._l(t.tabs,function(e,n){return i("el-tab-pane",{key:n,attrs:{label:t.$t(e.label),disabled:t.configDisabled||t.settingsCantBeChanged(e.settings),name:n,lazy:""}},[i(n,{tag:"component"})],1)}),1)],1):t._e(),t._v(" "),t.isMobile||t.isTablet?i("div",[i("div",{staticClass:"settings-header-container",class:t.isSidebarOpen},[i("h1",{staticClass:"settings-header"},[t._v(t._s(t.$t("settings.settings")))])]),t._v(" "),i("div",{staticClass:"nav-container"},[i("el-select",{staticClass:"settings-menu",attrs:{placeholder:"Select"},model:{value:t.activeTab,callback:function(e){t.activeTab=e},expression:"activeTab"}},t._l(t.options,function(e){return i("el-option",{key:e.value,attrs:{label:e.label,value:e.value,disabled:t.configDisabled}})}),1),t._v(" "),i("el-link",{attrs:{underline:!1,href:"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/",target:"_blank"}},[i("el-button",{staticClass:"settings-docs-button"},[i("span",[i("i",{staticClass:"el-icon-document"}),t._v("\n "+t._s(t.$t("settings.seeDocs"))+"\n ")])])],1)],1),t._v(" "),i("div",{staticClass:"settings-search-input-container"}),t._v(" "),"activityPub"===t.activeTab?i("activity-pub"):t._e(),t._v(" "),"auth"===t.activeTab?i("authentication"):t._e(),t._v(" "),"linkFormatter"===t.activeTab?i("link-formatter"):t._e(),t._v(" "),"esshd"===t.activeTab?i("esshd"):t._e(),t._v(" "),"captcha"===t.activeTab?i("captcha"):t._e(),t._v(" "),"frontend"===t.activeTab?i("frontend"):t._e(),t._v(" "),"gopher"===t.activeTab?i("gopher"):t._e(),t._v(" "),"http"===t.activeTab?i("http"):t._e(),t._v(" "),"instance"===t.activeTab?i("instance"):t._e(),t._v(" "),"jobQueue"===t.activeTab?i("job-queue"):t._e(),t._v(" "),"logger"===t.activeTab?i("logger"):t._e(),t._v(" "),"mailer"===t.activeTab?i("mailer"):t._e(),t._v(" "),"mediaProxy"===t.activeTab?i("media-proxy"):t._e(),t._v(" "),"metadata"===t.activeTab?i("metadata"):t._e(),t._v(" "),"mrf"===t.activeTab?i("mrf"):t._e(),t._v(" "),"rateLimiters"===t.activeTab?i("rate-limiters"):t._e(),t._v(" "),"relays"===t.activeTab?i("relays"):t._e(),t._v(" "),"webPush"===t.activeTab?i("web-push"):t._e(),t._v(" "),"upload"===t.activeTab?i("upload"):t._e(),t._v(" "),"other"===t.activeTab?i("other"):t._e()],1):t._e()])},[],!1,null,"82f78b3e",null));Oi.options.__file="index.vue";e.default=Oi.exports},apN7:function(t,e,i){"use strict";var n=i("9p49");i.n(n).a},dnRK:function(t,e,i){},e0P1:function(t,e,i){"use strict";var n=i("TudB");i.n(n).a},fyIw:function(t,e,i){},gFOO:function(t,e,i){"use strict";var n=i("jqM2");i.n(n).a},h9z7:function(t,e,i){"use strict";var n=i("TOIk");i.n(n).a},hVXW:function(t,e,i){"use strict";var n=i("uswN");i.n(n).a},irif:function(t,e,i){"use strict";var n=i("UtFC");i.n(n).a},jqM2:function(t,e,i){},lNpP:function(t,e,i){"use strict";var n=i("UbP/");i.n(n).a},ld6V:function(t,e,i){},mADP:function(t,e,i){"use strict";var n=i("qLeA");i.n(n).a},mGnP:function(t,e,i){"use strict";var n=i("smg2");i.n(n).a},mSK5:function(t,e,i){},nKzF:function(t,e,i){"use strict";var n=i("77pt");i.n(n).a},"ncj/":function(t,e,i){},pPJ2:function(t,e,i){},pnah:function(t,e,i){"use strict";var n=i("JqY8");i.n(n).a},qEST:function(t,e,i){"use strict";var n=i("4NUT");i.n(n).a},qLeA:function(t,e,i){},rKzx:function(t,e,i){},rdar:function(t,e,i){"use strict";var n=i("NiUD");i.n(n).a},smg2:function(t,e,i){},uswN:function(t,e,i){},vnTa:function(t,e,i){"use strict";var n=i("3YZA");i.n(n).a},w5cJ:function(t,e,i){"use strict";var n=i("PYLh");i.n(n).a},wgcy:function(t,e,i){},x6RV:function(t,e,i){},y7KD:function(t,e,i){"use strict";var n=i("YKHE");i.n(n).a},zzeU:function(t,e,i){"use strict";var n=i("EXm2");i.n(n).a}}]); -//# sourceMappingURL=chunk-9d55.7af22f45.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-9d55.7af22f45.js.map b/priv/static/adminfe/static/js/chunk-9d55.7af22f45.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?c65c","webpack:///./src/views/settings/components/WebPush.vue?38e3","webpack:///./src/views/settings/index.vue?0437","webpack:///./src/views/settings/components/Captcha.vue?029c","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?ac92","webpack:///./src/views/settings/components/inputComponents/EditorInput.vue?5551","webpack:///./src/views/settings/components/Authentication.vue?4503","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?b469","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?c837","webpack:///./src/views/settings/components/Upload.vue?33cd","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?cf11","webpack:///./src/views/settings/components/Esshd.vue?eedf","webpack:///./src/views/settings/components/Relays.vue?3141","webpack:///./src/views/settings/components/Http.vue?56b1","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?c641","webpack:///./src/views/settings/components/Mailer.vue?cb92","webpack:///./src/views/settings/components/MediaProxy.vue?e0fb","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?6f06","webpack:///./src/views/settings/components/RateLimiters.vue?0aac","webpack:///./src/views/settings/index.vue?dcc9","webpack:///src/views/settings/components/inputComponents/EditableKeywordInput.vue","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?859c","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?058f","webpack:///./src/views/settings/components/inputComponents/EditorInput.vue?b6ff","webpack:///src/views/settings/components/inputComponents/EditorInput.vue","webpack:///./src/views/settings/components/inputComponents/EditorInput.vue","webpack:///./src/views/settings/components/inputComponents/EditorInput.vue?a130","webpack:///src/views/settings/components/inputComponents/IconsInput.vue","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?bdb0","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?a391","webpack:///./src/api/mediaUpload.js","webpack:///src/views/settings/components/inputComponents/ImageUploadInput.vue","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?f296","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?28da","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?ae71","webpack:///src/views/settings/components/inputComponents/LinkFormatterInput.vue","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue","webpack:///./src/views/settings/components/inputComponents/LinkFormatterInput.vue?acd6","webpack:///src/views/settings/components/inputComponents/MascotsInput.vue","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?9cfe","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue","webpack:///./src/views/settings/components/inputComponents/MascotsInput.vue?df45","webpack:///src/views/settings/components/inputComponents/ProxyUrlInput.vue","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?4183","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?b4d0","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?663f","webpack:///src/views/settings/components/inputComponents/PruneInput.vue","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue","webpack:///./src/views/settings/components/inputComponents/PruneInput.vue?2ccd","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?2905","webpack:///src/views/settings/components/inputComponents/RateLimitInput.vue","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?d732","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?4de6","webpack:///src/views/settings/components/inputComponents/RegInvitesInput.vue","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue","webpack:///./src/views/settings/components/inputComponents/RegInvitesInput.vue?ce9b","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?b3f6","webpack:///src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue","webpack:///./src/views/settings/components/inputComponents/SelectInputWithReducedLabels.vue?dbe1","webpack:///src/views/settings/components/inputComponents/SenderInput.vue","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?a1b5","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue","webpack:///./src/views/settings/components/inputComponents/SenderInput.vue?c9a0","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?8500","webpack:///src/views/settings/components/inputComponents/SpecificMultipleSelect.vue","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue","webpack:///./src/views/settings/components/inputComponents/SpecificMultipleSelect.vue?2f90","webpack:///./src/views/settings/components/Inputs.vue?5b3f","webpack:///src/views/settings/components/Inputs.vue","webpack:///./src/views/settings/components/Inputs.vue","webpack:///./src/views/settings/components/Inputs.vue?4087","webpack:///./src/views/settings/components/Setting.vue?39a1","webpack:///src/views/settings/components/Setting.vue","webpack:///./src/views/settings/components/Setting.vue","webpack:///./src/views/settings/components/Setting.vue?9ebb","webpack:///src/views/settings/components/ActivityPub.vue","webpack:///./src/views/settings/components/ActivityPub.vue?9ad8","webpack:///./src/views/settings/components/ActivityPub.vue","webpack:///./src/views/settings/components/ActivityPub.vue?1a9f","webpack:///src/views/settings/components/Authentication.vue","webpack:///./src/views/settings/components/Authentication.vue?1922","webpack:///./src/views/settings/components/Authentication.vue","webpack:///./src/views/settings/components/Authentication.vue?70f3","webpack:///src/views/settings/components/Captcha.vue","webpack:///./src/views/settings/components/Captcha.vue?b5df","webpack:///./src/views/settings/components/Captcha.vue","webpack:///./src/views/settings/components/Captcha.vue?dc1b","webpack:///src/views/settings/components/Esshd.vue","webpack:///./src/views/settings/components/Esshd.vue?b0ed","webpack:///./src/views/settings/components/Esshd.vue","webpack:///./src/views/settings/components/Esshd.vue?b8c9","webpack:///src/views/settings/components/Frontend.vue","webpack:///./src/views/settings/components/Frontend.vue?1622","webpack:///./src/views/settings/components/Frontend.vue","webpack:///./src/views/settings/components/Frontend.vue?6107","webpack:///src/views/settings/components/Gopher.vue","webpack:///./src/views/settings/components/Gopher.vue?cb09","webpack:///./src/views/settings/components/Gopher.vue","webpack:///./src/views/settings/components/Gopher.vue?9f1a","webpack:///src/views/settings/components/Http.vue","webpack:///./src/views/settings/components/Http.vue?0ecb","webpack:///./src/views/settings/components/Http.vue","webpack:///./src/views/settings/components/Http.vue?2698","webpack:///src/views/settings/components/Instance.vue","webpack:///./src/views/settings/components/Instance.vue?ea1e","webpack:///./src/views/settings/components/Instance.vue","webpack:///./src/views/settings/components/Instance.vue?c80e","webpack:///src/views/settings/components/JobQueue.vue","webpack:///./src/views/settings/components/JobQueue.vue?e650","webpack:///./src/views/settings/components/JobQueue.vue","webpack:///./src/views/settings/components/JobQueue.vue?2df5","webpack:///src/views/settings/components/LinkFormatter.vue","webpack:///./src/views/settings/components/LinkFormatter.vue?9773","webpack:///./src/views/settings/components/LinkFormatter.vue","webpack:///./src/views/settings/components/LinkFormatter.vue?2f8e","webpack:///src/views/settings/components/Logger.vue","webpack:///./src/views/settings/components/Logger.vue?aa5f","webpack:///./src/views/settings/components/Logger.vue","webpack:///./src/views/settings/components/Logger.vue?82f3","webpack:///src/views/settings/components/Mailer.vue","webpack:///./src/views/settings/components/Mailer.vue?48d6","webpack:///./src/views/settings/components/Mailer.vue","webpack:///./src/views/settings/components/Mailer.vue?7f76","webpack:///src/views/settings/components/MediaProxy.vue","webpack:///./src/views/settings/components/MediaProxy.vue?9571","webpack:///./src/views/settings/components/MediaProxy.vue","webpack:///./src/views/settings/components/MediaProxy.vue?a537","webpack:///src/views/settings/components/Metadata.vue","webpack:///./src/views/settings/components/Metadata.vue?7f4f","webpack:///./src/views/settings/components/Metadata.vue","webpack:///./src/views/settings/components/Metadata.vue?aa76","webpack:///src/views/settings/components/MRF.vue","webpack:///./src/views/settings/components/MRF.vue?274b","webpack:///./src/views/settings/components/MRF.vue","webpack:///./src/views/settings/components/MRF.vue?5119","webpack:///src/views/settings/components/Other.vue","webpack:///./src/views/settings/components/Other.vue?7bf4","webpack:///./src/views/settings/components/Other.vue","webpack:///./src/views/settings/components/Other.vue?2e79","webpack:///src/views/settings/components/RateLimiters.vue","webpack:///./src/views/settings/components/RateLimiters.vue?15d2","webpack:///./src/views/settings/components/RateLimiters.vue","webpack:///./src/views/settings/components/RateLimiters.vue?c030","webpack:///./src/views/settings/components/Relays.vue?72ba","webpack:///src/views/settings/components/Relays.vue","webpack:///./src/views/settings/components/Relays.vue","webpack:///./src/views/settings/components/Relays.vue?cc82","webpack:///src/views/settings/components/Upload.vue","webpack:///./src/views/settings/components/Upload.vue?304d","webpack:///./src/views/settings/components/Upload.vue","webpack:///./src/views/settings/components/Upload.vue?58f3","webpack:///src/views/settings/components/WebPush.vue","webpack:///./src/views/settings/components/WebPush.vue?5451","webpack:///./src/views/settings/components/WebPush.vue","webpack:///./src/views/settings/components/WebPush.vue?0772","webpack:///./src/views/settings/index.vue?3c3a","webpack:///src/views/settings/index.vue","webpack:///./src/views/settings/components/tabs.js","webpack:///./src/views/settings/index.vue","webpack:///./src/views/settings/components/Metadata.vue?0952","webpack:///./src/views/settings/components/Instance.vue?2668","webpack:///./src/views/settings/components/Other.vue?8e53","webpack:///./src/views/settings/components/MRF.vue?8c92","webpack:///./src/views/settings/components/Frontend.vue?f18f","webpack:///./src/views/settings/components/inputComponents/RateLimitInput.vue?f3ab","webpack:///./src/views/settings/components/JobQueue.vue?d797","webpack:///./src/views/settings/components/Logger.vue?a62e","webpack:///./src/views/settings/components/inputComponents/ProxyUrlInput.vue?e239","webpack:///./src/views/settings/components/inputComponents/EditableKeywordInput.vue?5f84","webpack:///./src/views/settings/components/Setting.vue?ebdb","webpack:///./src/views/settings/components/ActivityPub.vue?48d9","webpack:///./src/views/settings/components/inputComponents/IconsInput.vue?5a78","webpack:///./src/views/settings/components/LinkFormatter.vue?264c","webpack:///./src/views/settings/components/Gopher.vue?5fd9","webpack:///./src/views/settings/components/Inputs.vue?e1ce","webpack:///./src/views/settings/components/inputComponents/ImageUploadInput.vue?6459"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MascotsInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_WebPush_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_82f78b3e_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Captcha_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SelectInputWithReducedLabels_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_EditorInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Authentication_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RegInvitesInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LinkFormatterInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Upload_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_PruneInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Esshd_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Relays_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Http_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SenderInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Mailer_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MediaProxy_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_SpecificMultipleSelect_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RateLimiters_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","inputComponents_EditableKeywordInputvue_type_script_lang_js_","name","props","data","type","Array","default","parents","required","setting","Object","settingGroup","computed","editableKeywordWithInteger","this","includes","editableKeywordWithSelect","findIndex","el","editableKeywordWithString","key","isDesktop","$store","state","app","device","keyPlaceholder","settings","updatedSettings","valuePlaceholder","methods","addRowToEditableKeyword","updatedValue","concat","toConsumableArray_default","","value","id","generateID","updateSetting","group","deleteEditableKeywordRow","element","deletedId","getId","filteredValues","filter","values","Math","random","toString","getCrontabWorkerLabel","worker","workerKey","getKey","replace","keys","getSuggestion","_this","suggestions","find","suggestion","getValue","parseEditableKeyword","inputType","_this2","updatedId","map","index","defineProperty_default","_objectSpread","updateCrontab","_this3","updatedValueWithType","reduce","acc","dispatch","input","wrappedSettings","wrapUpdatedSettings","length","_processNested","normalizers","reverse","valueForState","valueForUpdatedSettings","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","attrs","data-search","_l","label","placeholder","on","$event","_v","min","size","change","icon","circle","click","multiple","filterable","allow-create","_e","options","__file","EditableKeywordInput","inputComponents_EditorInputvue_type_script_lang_js_","components","EditorContent","tiptap_esm","EditorMenuBar","String","editor","emitAfterOnUpdate","isMobile","labelPosition","labelWidth","isTablet","watch","val","setContent","beforeDestroy","destroy","mounted","extensions","extensions_esm","levels","content","onUpdate","_ref","getHTML","$emit","removeInstanceDoc","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","stop","EditorInput_component","label-position","label-width","slot","_s","$t","placement","scopedSlots","_u","fn","ref","commands","isActive","class","is-active","bold","icon-class","italic","underline","heading","level","bullet_list","ordered_list","blockquote","link","code_block","horizontal_rule","undo","redo","EditorInput","inputComponents_IconsInputvue_type_script_lang_js_","addIconToIcons","addValueToIcons","i","deleteIcondRow","parseIcons","IconsInputvue_type_script_lang_js_objectSpread","IconsInput_component","IconsInput","UPLOAD_URL","authHeaders","Authorization","getToken","inputComponents_ImageUploadInputvue_type_script_lang_js_","inputValue","loading","ImageUploadInputvue_type_script_lang_js_objectSpread","vuex_esm","fullSize","lodash_default","dimensions","width","height","isDefault","defaultImage","baseName","get","utils","authHost","imageUrl","url","isString","startsWith","handleFiles","event","file","target","files","reader","FileReader","onload","formData","FormData","append","fetch","body","method","headers","then","json","uploadMedia","response","readAsDataURL","removeFile","ImageUploadInput_component","style","aria-label","accept","directives","rawName","expression","src","fit","staticStyle","margin-left","ImageUploadInput","inputComponents_LinkFormatterInputvue_type_script_lang_js_","autoLinkerAtomValue","substr","autoLinkerBooleanValue","autoLinkerIntegerValue","autoLinkerStringValue","processTwoTypeValue","LinkFormatterInput_component","LinkFormatterInput","inputComponents_MascotsInputvue_type_script_lang_js_","addRowToMascots",":url",":mime_type","deleteMascotsRow","mascot","getName","getUrl","_Object$values","slicedToArray_default","getMimeType","_Object$values3","parseMascots","MascotsInputvue_type_script_lang_js_objectSpread","mascotsWithoutIDs","_Object$values$","mascotValue","objectWithoutProperties_default","MascotsInput_component","MascotsInput","inputComponents_ProxyUrlInputvue_type_script_lang_js_","proxyUrlData","socks5","host","port","updateProxyUrl","ProxyUrlInputvue_type_script_lang_js_objectSpread","assembledData","ProxyUrlInput_component","ProxyUrlInput","inputComponents_PruneInputvue_type_script_lang_js_","prune","set","updateRadioInput","updateIntInput","updatedSetting","processedValue","PruneInput_component","model","callback","$$v","PruneInput","inputComponents_RateLimitInputvue_type_script_lang_js_","rateLimitAllUsers","rateLimitAuthUsers","isArray","rateLimitUnauthUsers","parseRateLimiter","typeOfInput","typeOfLimit","currentValue","valueToSend","toggleLimits","tuple","RateLimitInput_component","controls","RateLimitInput","inputComponents_RegInvitesInputvue_type_script_lang_js_","registrationsOpen","invitesEnabled","$confirm","confirmButtonText","cancelButtonText","RegInvitesInput_component","RegInvitesInput","inputComponents_SelectInputWithReducedLabelsvue_type_script_lang_js_","prefixes",":policies","Pleroma.Web.Auth.Authenticator",":method",":adapter",":providers",":parsers",":ttl_setters",":scrub_policy",":federation_publisher_modules",":uploader",":filters","split","renderMultipleSelect","SelectInputWithReducedLabels_component","option","clearable","SelectInputWithReducedLabels","inputComponents_SenderInputvue_type_script_lang_js_","sender","email","nickname","updateSender","SenderInputvue_type_script_lang_js_objectSpread","SenderInput_component","SenderInput","inputComponents_SpecificMultipleSelectvue_type_script_lang_js_","SpecificMultipleSelect_component","SpecificMultipleSelect","components_Inputsvue_type_script_lang_js_","customLabelWidth","labelClass","margin","Number","nested","Boolean","settingParent","booleanCombinedInput","canBeDeleted","_this$settingGroup","db","iconsData","keywordData","reducedSelects","isImageUrl","editableKeyword","getFormattedDescription","desc","marked_default","processNestedData","parentKey","removeSetting","_callee2","_context2","config","delete","subkeys","t0","abrupt","$message","message","lang","t","catch","renderSingleSelect","senderInput","_ref2","update","Inputs_component","subSetting","setting-group","setting-parent","custom-label-width","label-class","input-value","undefined","description","domProps","innerHTML","components_Settingvue_type_script_lang_js_","Inputs","emailAdapterChildren","adapter","children","child","settingKey","existingKey","compound","divideSetting","notLastInGroup","slice","tab","Setting_component","Setting","components_ActivityPubvue_type_script_lang_js_","ActivityPubvue_type_script_lang_js_objectSpread","activitypub","activitypubData","isSidebarOpen","sidebar","opened","user","userData","onSubmit","ActivityPub_component","ActivityPub","components_Authenticationvue_type_script_lang_js_","Authenticationvue_type_script_lang_js_objectSpread","auth","authData","ldap","ldapData","oauth2","oauth2Data","pleromaAuthenticator","pleromaAuthenticatorData","Authentication_component","Authentication","components_Captchavue_type_script_lang_js_","Captchavue_type_script_lang_js_objectSpread","captcha","captchaData","kocaptcha","kocaptchaData","Captcha_component","Captcha","components_Esshdvue_type_script_lang_js_","Esshdvue_type_script_lang_js_objectSpread","esshd","esshdData","toggleEsshd","Esshd_component","Esshd","components_Frontendvue_type_script_lang_js_","Frontendvue_type_script_lang_js_objectSpread","assets","assetsData","chat","chatData","emoji","emojiData","frontend","frontendData","frontends","frontendsData","markup","markupData","preload","preloadData","staticFe","staticFeData","Frontend_component","Frontend","components_Gophervue_type_script_lang_js_","Gophervue_type_script_lang_js_objectSpread","gopher","gopherData","Gopher_component","Gopher","components_Httpvue_type_script_lang_js_","Httpvue_type_script_lang_js_objectSpread","corsPlug","corsPlugData","http","httpData","httpSecurity","httpSecurityData","webCacheTtl","webCacheTtlData","Http_component","Http","components_Instancevue_type_script_lang_js_","editorContent","Instancevue_type_script_lang_js_objectSpread","adminToken","adminTokenData","instancePanelContent","instancePanel","favicons","faviconsData","feed","feedData","instance","instanceData","manifest","manifestData","pleromaUser","pleromaUserData","restrictUnauthenticated","restrictUnauthenticatedData","scheduledActivity","scheduledActivityData","streamer","streamerData","uriSchemes","uriSchemesData","welcome","welcomeData","handleEditorUpdate","Instance_component","Instance","components_JobQueuevue_type_script_lang_js_","JobQueuevue_type_script_lang_js_objectSpread","activityExpiration","activityExpirationData","connectionsPools","connectionsPoolsData","hackneyPools","hackneyPoolsData","obanQueues","obanQueuesData","pools","poolsData","workers","workersData","JobQueue_component","JobQueue","components_LinkFormattervue_type_script_lang_js_","LinkFormattervue_type_script_lang_js_objectSpread","linkFormatter","linkFormatterData","LinkFormatter_component","LinkFormatter","components_Loggervue_type_script_lang_js_","Loggervue_type_script_lang_js_objectSpread","console","consoleData","exsyslogger","exsysloggerData","logger","loggerData","quack","quackData","Logger_component","Logger","components_Mailervue_type_script_lang_js_","Mailervue_type_script_lang_js_objectSpread","emailNotifications","emailNotificationsData","mailer","mailerData","newUsersDigestEmail","newUsersDigestEmailData","swoosh","swooshData","userEmail","userEmailData","Mailer_component","Mailer","components_MediaProxyvue_type_script_lang_js_","MediaProxyvue_type_script_lang_js_objectSpread","httpInvalidation","httpInvalidationData","mediaProxy","mediaProxyData","scriptInvalidation","scriptInvalidationData","MediaProxy_component","MediaProxy","components_Metadatavue_type_script_lang_js_","Metadatavue_type_script_lang_js_objectSpread","metadata","metadataData","richMedia","richMediaData","Metadata_component","Metadata","components_MRFvue_type_script_lang_js_","MRFvue_type_script_lang_js_objectSpread","mrfSettings","getSettingData","showMrfPolicy","selectedMrfPolicies","mappedPolicies","related_policy","MRF_component","MRF","components_Othervue_type_script_lang_js_","termsOfServices","Othervue_type_script_lang_js_objectSpread","castAndValidate","castAndValidateData","mimeTypes","mimeTypesData","modules","modulesData","remoteIp","remoteIpData","termsOfServicesContent","Other_component","Other","components_RateLimitersvue_type_script_lang_js_","RateLimitersvue_type_script_lang_js_objectSpread","rateLimiters","rateLimitersData","RateLimiters_component","RateLimiters","components_Relaysvue_type_script_lang_js_","newRelay","getLabelWidth","relays","fetchedRelays","followRelay","deleteRelay","relay","Relays_component","nativeOn","keyup","indexOf","_k","keyCode","prop","align","scope","row","followed_back","fixed","actor","Relays","components_Uploadvue_type_script_lang_js_","Uploadvue_type_script_lang_js_objectSpread","s3","s3Data","showUploadersS3","showUploadersLocal","upload","uploadData","uploadersLocal","uploadersLocalData","uploadersS3","uploadersS3Data","uploadFilterMogrify","uploadFilterMogrifyData","uploadAnonymizeFilename","uploadAnonymizeFilenameData","Upload_component","Upload","components_WebPushvue_type_script_lang_js_","WebPushvue_type_script_lang_js_objectSpread","vapidDetails","vapidDetailsData","WebPush_component","WebPush","views_settingsvue_type_script_lang_js_","Mrf","RebootButton","searchQuery","activeTab","configDisabled","rebootIsSidebarOpen","searchData","tabs","activity-pub","authentication","job-queue","link-formatter","media-proxy","mrf","rate-limiters","web-push","other","tabs_tabs","handleSearchSelect","selectedValue","selectedSetting","document","querySelector","scrollIntoView","block","behavior","querySearch","queryString","cb","searchObj","search","toLowerCase","groupLabel","groupKey","settingsCantBeChanged","settings_component","href","fetch-suggestions","trigger-on-focus","prefix-icon","select","tab-position","componentName","disabled","lazy","tag","item","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Metadata_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Instance_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Other_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MRF_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Frontend_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_RateLimitInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_JobQueue_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Logger_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ProxyUrlInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_EditableKeywordInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Setting_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ActivityPub_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_IconsInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_LinkFormatter_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Gopher_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Inputs_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ImageUploadInput_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-9d55.7af22f45.js","sourcesContent":["import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings-container\",class:_vm.rebootIsSidebarOpen},[_c('div',{staticClass:\"reboot-button-container\"},[_c('reboot-button')],1),_vm._v(\" \"),(_vm.isDesktop)?_c('div',[_c('div',{staticClass:\"settings-header-container\",class:_vm.isSidebarOpen},[_c('h1',{staticClass:\"settings-header\"},[_vm._v(_vm._s(_vm.$t('settings.settings')))]),_vm._v(\" \"),_c('div',{staticClass:\"docs-search-container\"},[_c('el-link',{attrs:{\"underline\":false,\"href\":\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"settings-docs-button\"},[_c('span',[_c('i',{staticClass:\"el-icon-document\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.seeDocs'))+\"\\n \")])])],1),_vm._v(\" \"),_c('el-autocomplete',{staticClass:\"settings-search-input\",attrs:{\"fetch-suggestions\":_vm.querySearch,\"trigger-on-focus\":false,\"clearable\":\"\",\"placeholder\":\"Search\",\"prefix-icon\":\"el-icon-search\"},on:{\"select\":_vm.handleSearchSelect},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)]),_vm._v(\" \"),_c('el-tabs',{attrs:{\"tab-position\":\"left\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},_vm._l((_vm.tabs),function(value,componentName){return _c('el-tab-pane',{key:componentName,attrs:{\"label\":_vm.$t(value.label),\"disabled\":_vm.configDisabled || _vm.settingsCantBeChanged(value.settings),\"name\":componentName,\"lazy\":\"\"}},[_c(componentName,{tag:\"component\"})],1)}),1)],1):_vm._e(),_vm._v(\" \"),(_vm.isMobile || _vm.isTablet)?_c('div',[_c('div',{staticClass:\"settings-header-container\",class:_vm.isSidebarOpen},[_c('h1',{staticClass:\"settings-header\"},[_vm._v(_vm._s(_vm.$t('settings.settings')))])]),_vm._v(\" \"),_c('div',{staticClass:\"nav-container\"},[_c('el-select',{staticClass:\"settings-menu\",attrs:{\"placeholder\":\"Select\"},model:{value:(_vm.activeTab),callback:function ($$v) {_vm.activeTab=$$v},expression:\"activeTab\"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value,\"disabled\":_vm.configDisabled}})}),1),_vm._v(\" \"),_c('el-link',{attrs:{\"underline\":false,\"href\":\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\",\"target\":\"_blank\"}},[_c('el-button',{staticClass:\"settings-docs-button\"},[_c('span',[_c('i',{staticClass:\"el-icon-document\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.seeDocs'))+\"\\n \")])])],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"settings-search-input-container\"}),_vm._v(\" \"),(_vm.activeTab === 'activityPub')?_c('activity-pub'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'auth')?_c('authentication'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'linkFormatter')?_c('link-formatter'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'esshd')?_c('esshd'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'captcha')?_c('captcha'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'frontend')?_c('frontend'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'gopher')?_c('gopher'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'http')?_c('http'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'instance')?_c('instance'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'jobQueue')?_c('job-queue'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'logger')?_c('logger'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mailer')?_c('mailer'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mediaProxy')?_c('media-proxy'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'metadata')?_c('metadata'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'mrf')?_c('mrf'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'rateLimiters')?_c('rate-limiters'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'relays')?_c('relays'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'webPush')?_c('web-push'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'upload')?_c('upload'):_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'other')?_c('other'):_vm._e()],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"editable-keyword-container\">\n <div v-if=\"setting.key === ':crontab'\" :data-search=\"setting.key\" class=\"crontab\">\n <el-form-item v-for=\"worker in data\" :key=\"getId(worker)\" :label=\"getCrontabWorkerLabel(worker)\" class=\"crontab-container\">\n <el-input\n :value=\"getValue(worker)\"\n :placeholder=\"getSuggestion(worker) || null\"\n class=\"input setting-input\"\n @input=\"updateCrontab($event, 'value', worker)\"/>\n </el-form-item>\n </div>\n <div v-else-if=\"editableKeywordWithInteger\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" placeholder=\"key\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-input-number :value=\"getValue(element)\" :min=\"0\" size=\"large\" class=\"value-input\" @change=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n <div v-else-if=\"editableKeywordWithString\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" :placeholder=\"keyPlaceholder\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-input :value=\"getValue(element)\" :placeholder=\"valuePlaceholder\" class=\"value-input\" @input=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n <div v-else-if=\"editableKeywordWithSelect\" :data-search=\"setting.key || setting.group\">\n <div v-for=\"element in data\" :key=\"getId(element)\" class=\"setting-input\">\n <el-input :value=\"getKey(element)\" placeholder=\"key\" class=\"name-input\" @input=\"parseEditableKeyword($event, 'key', element)\"/> :\n <el-select :value=\"getValue(element)\" multiple filterable allow-create class=\"value-input\" @change=\"parseEditableKeyword($event, 'value', element)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteEditableKeywordRow(element)\"/>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToEditableKeyword\"/>\n </div>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'EditableKeywordInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n editableKeywordWithInteger() {\n return this.setting.type.includes('keyword') && this.setting.type.includes('integer')\n },\n editableKeywordWithSelect() {\n return (this.setting.type.includes('map') && this.setting.type.findIndex(el => el.includes('list') && el.includes('string')) !== -1) ||\n (this.setting.type.includes('keyword') && this.setting.type.findIndex(el => el.includes('list') && el.includes('string')) !== -1)\n },\n editableKeywordWithString() {\n return this.setting.key !== ':crontab' && (\n (this.setting.type.includes('keyword') && this.setting.type.includes('string')) ||\n (this.setting.type.includes('tuple') && this.setting.type.includes('list')) ||\n (this.setting.type.includes('map') && this.setting.type.includes('string'))\n )\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n keyPlaceholder() {\n return this.setting.key === ':replace' ? 'pattern' : 'key'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n valuePlaceholder() {\n return this.setting.key === ':replace' ? 'replacement' : 'value'\n }\n },\n methods: {\n addRowToEditableKeyword() {\n const updatedValue = [...this.data, { '': { value: '', id: this.generateID() }}]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteEditableKeywordRow(element) {\n const deletedId = this.getId(element)\n const filteredValues = this.data.filter(element => Object.values(element)[0].id !== deletedId)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n getCrontabWorkerLabel(worker) {\n const workerKey = this.getKey(worker)\n return workerKey.includes('Pleroma.Workers.Cron.') ? workerKey.replace('Pleroma.Workers.Cron.', '') : workerKey\n },\n getKey(element) {\n return Object.keys(element)[0]\n },\n getId(element) {\n const { id } = Object.values(element)[0]\n return id\n },\n getSuggestion(worker) {\n return this.setting.suggestions.find(suggestion => suggestion[1] === this.getKey(worker))[0]\n },\n getValue(element) {\n const { value } = Object.values(element)[0]\n return value\n },\n parseEditableKeyword(value, inputType, element) {\n const updatedId = this.getId(element)\n const updatedValue = this.data.map((element, index) => {\n if (Object.values(element)[0].id === updatedId) {\n return inputType === 'key'\n ? { [value]: Object.values(this.data[index])[0] }\n : { [Object.keys(element)[0]]: { ...Object.values(this.data[index])[0], value }}\n }\n return element\n })\n\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateCrontab(value, inputType, worker) {\n const updatedId = this.getId(worker)\n const updatedValue = this.data.map((worker, index) => {\n if (Object.values(worker)[0].id === updatedId) {\n return { [Object.keys(worker)[0]]: { ...Object.values(this.data[index])[0], value }}\n }\n return worker\n })\n const updatedValueWithType = updatedValue.reduce((acc, worker) => {\n return { ...acc, [Object.keys(worker)[0]]: ['reversed_tuple', Object.values(worker)[0].value] }\n }, {})\n\n this.$store.dispatch('UpdateSettings',\n { group: this.settingGroup.group, key: this.settingGroup.key, input: this.setting.key, value: updatedValueWithType, type: this.setting.type }\n )\n this.$store.dispatch('UpdateState',\n { group: this.settingGroup.group, key: this.settingGroup.key, input: this.setting.key, value: updatedValue }\n )\n },\n updateSetting(value, group, key, input, type) {\n const wrappedSettings = this.wrapUpdatedSettings(value, input, type)\n\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, wrappedSettings, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: wrappedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n },\n wrapUpdatedSettings(value, input, type) {\n return type === 'map'\n ? value.reduce((acc, element) => {\n return { ...acc, [Object.keys(element)[0]]: Object.values(element)[0].value }\n }, {})\n : value.reduce((acc, element) => {\n return { ...acc, [Object.keys(element)[0]]: ['list', Object.values(element)[0].value] }\n }, {})\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditableKeywordInput.vue?vue&type=template&id=6670a702&\"\nimport script from \"./EditableKeywordInput.vue?vue&type=script&lang=js&\"\nexport * from \"./EditableKeywordInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"EditableKeywordInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"editable-keyword-container\"},[(_vm.setting.key === ':crontab')?_c('div',{staticClass:\"crontab\",attrs:{\"data-search\":_vm.setting.key}},_vm._l((_vm.data),function(worker){return _c('el-form-item',{key:_vm.getId(worker),staticClass:\"crontab-container\",attrs:{\"label\":_vm.getCrontabWorkerLabel(worker)}},[_c('el-input',{staticClass:\"input setting-input\",attrs:{\"value\":_vm.getValue(worker),\"placeholder\":_vm.getSuggestion(worker) || null},on:{\"input\":function($event){return _vm.updateCrontab($event, 'value', worker)}}})],1)}),1):(_vm.editableKeywordWithInteger)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-input-number',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"min\":0,\"size\":\"large\"},on:{\"change\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):(_vm.editableKeywordWithString)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":_vm.keyPlaceholder},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-input',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"placeholder\":_vm.valuePlaceholder},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):(_vm.editableKeywordWithSelect)?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(element){return _c('div',{key:_vm.getId(element),staticClass:\"setting-input\"},[_c('el-input',{staticClass:\"name-input\",attrs:{\"value\":_vm.getKey(element),\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseEditableKeyword($event, 'key', element)}}}),_vm._v(\" :\\n \"),_c('el-select',{staticClass:\"value-input\",attrs:{\"value\":_vm.getValue(element),\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.parseEditableKeyword($event, 'value', element)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteEditableKeywordRow(element)}}})],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToEditableKeyword}})],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditorInput.vue?vue&type=script&lang=js&\"","<template>\n <el-form :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <el-form-item :data-search=\"name === 'instance-panel' ? ':instance_panel' : ':terms_of_services'\" class=\"editor-form-item\">\n <span slot=\"label\">\n {{ name === 'instance-panel' ? $t('settings.instancePanel') : $t('settings.termsOfServices') }}\n <el-tooltip :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeInstanceDoc\"/>\n </el-tooltip>\n </span>\n <div class=\"editor\">\n <editor-menu-bar v-slot=\"{ commands, isActive }\" :editor=\"editor\">\n <div class=\"menubar\">\n <button\n :class=\"{ 'is-active': isActive.bold() }\"\n class=\"menubar__button\"\n @click=\"commands.bold\">\n <svg-icon icon-class=\"tiptap-bold\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.italic() }\"\n class=\"menubar__button\"\n @click=\"commands.italic\">\n <svg-icon icon-class=\"tiptap-italic\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.underline() }\"\n class=\"menubar__button\"\n @click=\"commands.underline\">\n <svg-icon icon-class=\"tiptap-underline\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.heading({ level: 1 }) }\"\n class=\"menubar__button\"\n @click=\"commands.heading({ level: 1 })\">\n H1\n </button>\n <button\n :class=\"{ 'is-active': isActive.heading({ level: 2 }) }\"\n class=\"menubar__button\"\n @click=\"commands.heading({ level: 2 })\">\n H2\n </button>\n <button\n :class=\"{ 'is-active': isActive.heading({ level: 3 }) }\"\n class=\"menubar__button\"\n @click=\"commands.heading({ level: 3 })\">\n H3\n </button>\n <button\n :class=\"{ 'is-active': isActive.bullet_list() }\"\n class=\"menubar__button\"\n @click=\"commands.bullet_list\">\n <svg-icon icon-class=\"tiptap-ul\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.ordered_list() }\"\n class=\"menubar__button\"\n @click=\"commands.ordered_list\">\n <svg-icon icon-class=\"tiptap-ol\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.blockquote() }\"\n class=\"menubar__button\"\n @click=\"commands.blockquote\">\n <svg-icon icon-class=\"tiptap-quote\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.link() }\"\n class=\"menubar__button\"\n @click=\"commands.link\">\n <svg-icon icon-class=\"tiptap-link\" />\n </button>\n <button\n :class=\"{ 'is-active': isActive.code_block() }\"\n class=\"menubar__button\"\n @click=\"commands.code_block\">\n <svg-icon icon-class=\"tiptap-code\" />\n </button>\n <button\n class=\"menubar__button\"\n @click=\"commands.horizontal_rule\">\n <svg-icon icon-class=\"tiptap-hr\" />\n </button>\n <button\n class=\"menubar__button\"\n @click=\"commands.undo\">\n <svg-icon icon-class=\"tiptap-undo\" />\n </button>\n <button\n class=\"menubar__button\"\n @click=\"commands.redo\">\n <svg-icon icon-class=\"tiptap-redo\" />\n </button>\n </div>\n </editor-menu-bar>\n <editor-content :editor=\"editor\" class=\"editor__content\" />\n </div>\n </el-form-item>\n </el-form>\n</template>\n\n<script>\nimport { Editor, EditorContent, EditorMenuBar } from 'tiptap'\nimport {\n Blockquote,\n CodeBlock,\n Heading,\n HorizontalRule,\n OrderedList,\n BulletList,\n ListItem,\n Bold,\n Italic,\n Link,\n Underline,\n History\n} from 'tiptap-extensions'\n\nexport default {\n name: 'EditorInput',\n components: {\n EditorContent,\n EditorMenuBar\n },\n props: {\n value: {\n type: String,\n default: ''\n },\n name: {\n type: String,\n default: ''\n }\n },\n data() {\n return {\n editor: null,\n emitAfterOnUpdate: false\n }\n },\n computed: {\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n }\n },\n watch: {\n value(val) {\n if (this.emitAfterOnUpdate) {\n this.emitAfterOnUpdate = false\n return\n }\n if (this.editor) this.editor.setContent(val)\n }\n },\n beforeDestroy() {\n if (this.editor) {\n this.editor.destroy()\n }\n },\n mounted() {\n this.editor = new Editor({\n extensions: [\n new Blockquote(),\n new Bold(),\n new BulletList(),\n new CodeBlock(),\n new Heading({ levels: [1, 2, 3] }),\n new History(),\n new HorizontalRule(),\n new Italic(),\n new Link(),\n new ListItem(),\n new OrderedList(),\n new Underline()\n ],\n content: this.value,\n onUpdate: ({ getHTML }) => {\n this.$emit('input', getHTML())\n }\n })\n this.editor.setContent(this.value)\n },\n methods: {\n async removeInstanceDoc() {\n await this.$store.dispatch('RemoveInstanceDocument', this.name)\n this.editor.setContent(this.value)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include tiptap\n</style>\n","import { render, staticRenderFns } from \"./EditorInput.vue?vue&type=template&id=5048b868&\"\nimport script from \"./EditorInput.vue?vue&type=script&lang=js&\"\nexport * from \"./EditorInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditorInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"EditorInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-form',{attrs:{\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('el-form-item',{staticClass:\"editor-form-item\",attrs:{\"data-search\":_vm.name === 'instance-panel' ? ':instance_panel' : ':terms_of_services'}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\"\\n \"+_vm._s(_vm.name === 'instance-panel' ? _vm.$t('settings.instancePanel') : _vm.$t('settings.termsOfServices'))+\"\\n \"),_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeInstanceDoc}})],1)],1),_vm._v(\" \"),_c('div',{staticClass:\"editor\"},[_c('editor-menu-bar',{attrs:{\"editor\":_vm.editor},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar commands = ref.commands;\nvar isActive = ref.isActive;\nreturn [_c('div',{staticClass:\"menubar\"},[_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.bold() },on:{\"click\":commands.bold}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-bold\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.italic() },on:{\"click\":commands.italic}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-italic\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.underline() },on:{\"click\":commands.underline}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-underline\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.heading({ level: 1 }) },on:{\"click\":function($event){return commands.heading({ level: 1 })}}},[_vm._v(\"\\n H1\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.heading({ level: 2 }) },on:{\"click\":function($event){return commands.heading({ level: 2 })}}},[_vm._v(\"\\n H2\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.heading({ level: 3 }) },on:{\"click\":function($event){return commands.heading({ level: 3 })}}},[_vm._v(\"\\n H3\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.bullet_list() },on:{\"click\":commands.bullet_list}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-ul\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.ordered_list() },on:{\"click\":commands.ordered_list}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-ol\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.blockquote() },on:{\"click\":commands.blockquote}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-quote\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.link() },on:{\"click\":commands.link}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-link\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",class:{ 'is-active': isActive.code_block() },on:{\"click\":commands.code_block}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-code\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",on:{\"click\":commands.horizontal_rule}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-hr\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",on:{\"click\":commands.undo}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-undo\"}})],1),_vm._v(\" \"),_c('button',{staticClass:\"menubar__button\",on:{\"click\":commands.redo}},[_c('svg-icon',{attrs:{\"icon-class\":\"tiptap-redo\"}})],1)])]}}])}),_vm._v(\" \"),_c('editor-content',{staticClass:\"editor__content\",attrs:{\"editor\":_vm.editor}})],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"mascot-container\">\n <div v-for=\"(icon, index) in data\" :key=\"index\" class=\"mascot\">\n <div class=\"icons-container\">\n <div class=\"icon-container\">\n <div v-for=\"{ key, value, id } in icon\" :key=\"id\" class=\"icon-values-container\">\n <el-input :value=\"key\" placeholder=\"key\" class=\"icon-key-input\" @input=\"parseIcons($event, 'key', index, id)\"/> :\n <el-input :value=\"value\" placeholder=\"value\" class=\"icon-value-input\" @input=\"parseIcons($event, 'value', index, id)\"/>\n </div>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-minus\" circle class=\"icon-minus-button\" @click=\"deleteIcondRow(index)\"/>\n </div>\n <div class=\"icons-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addValueToIcons(index)\"/>\n <span class=\"icons-button-desc\">Add another `key - value` pair to this icon</span>\n </div>\n <el-divider class=\"divider\"/>\n </div>\n <div class=\"icons-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addIconToIcons\"/>\n <span class=\"icons-button-desc\">Add another icon configuration</span>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'EditableKeywordInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n addIconToIcons() {\n const updatedValue = [...this.data, [{ key: '', value: '', id: this.generateID() }]]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n addValueToIcons(index) {\n const updatedValue = this.data.map((icon, i) => {\n if (i === index) {\n return [...icon, { key: '', value: '', id: this.generateID() }]\n }\n return icon\n })\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteIcondRow(index) {\n const filteredValues = this.data.filter((icon, i) => i !== index)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n parseIcons(value, inputType, index, id) {\n const updatedValue = this.data.map((icon, i) => {\n if (i === index) {\n return icon.map(setting => {\n if (setting.id === id) {\n return inputType === 'key'\n ? { ...setting, key: value }\n : { ...setting, value }\n }\n return setting\n })\n }\n return icon\n })\n\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSettings = value.map(icon => {\n return icon.reduce((acc, { key, value }) => {\n return { ...acc, [key]: value }\n }, {})\n }, {})\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IconsInput.vue?vue&type=template&id=0e981ae9&\"\nimport script from \"./IconsInput.vue?vue&type=script&lang=js&\"\nexport * from \"./IconsInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"IconsInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mascot-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(icon,index){return _c('div',{key:index,staticClass:\"mascot\"},[_c('div',{staticClass:\"icons-container\"},[_c('div',{staticClass:\"icon-container\"},_vm._l((icon),function(ref){\nvar key = ref.key;\nvar value = ref.value;\nvar id = ref.id;\nreturn _c('div',{key:id,staticClass:\"icon-values-container\"},[_c('el-input',{staticClass:\"icon-key-input\",attrs:{\"value\":key,\"placeholder\":\"key\"},on:{\"input\":function($event){return _vm.parseIcons($event, 'key', index, id)}}}),_vm._v(\" :\\n \"),_c('el-input',{staticClass:\"icon-value-input\",attrs:{\"value\":value,\"placeholder\":\"value\"},on:{\"input\":function($event){return _vm.parseIcons($event, 'value', index, id)}}})],1)}),0),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteIcondRow(index)}}})],1),_vm._v(\" \"),_c('div',{staticClass:\"icons-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.addValueToIcons(index)}}}),_vm._v(\" \"),_c('span',{staticClass:\"icons-button-desc\"},[_vm._v(\"Add another `key - value` pair to this icon\")])],1),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"})],1)}),_vm._v(\" \"),_c('div',{staticClass:\"icons-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addIconToIcons}}),_vm._v(\" \"),_c('span',{staticClass:\"icons-button-desc\"},[_vm._v(\"Add another icon configuration\")])],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getToken } from '@/utils/auth'\nimport { baseName } from './utils'\n\nconst UPLOAD_URL = '/api/v1/media'\n\nexport function uploadMedia({ formData, authHost }) {\n const url = baseName(authHost) + UPLOAD_URL\n\n return fetch(url, {\n body: formData,\n method: 'POST',\n headers: authHeaders()\n })\n .then((data) => data.json())\n}\n\nconst authHeaders = () => {\n return { 'Authorization': `Bearer ${getToken()}` }\n}\n","<template>\n <div class=\"image-upload-area\">\n <div class=\"input-row\">\n <div :style=\"dimensions\" class=\"image-upload-wrapper\">\n <div :style=\"dimensions\" class=\"image-upload-overlay\">\n <input\n :aria-label=\"$t('settings.changeImage')\"\n class=\"input-file\"\n type=\"file\"\n accept=\".jpg,.jpeg,.png\"\n @change=\"handleFiles\" >\n <div class=\"caption\">\n {{ $t('settings.changeImage') }}\n </div>\n <el-image\n v-loading=\"loading\"\n :src=\"imageUrl(inputValue)\"\n :style=\"dimensions\"\n class=\"uploaded-image\"\n fit=\"cover\" />\n </div>\n </div>\n </div>\n <div class=\"image-button-group\">\n <el-button class=\"upload-button\" size=\"small\">\n {{ $t('settings.uploadImage') }}\n <input\n :aria-label=\"$t('settings.changeImage')\"\n class=\"input-file\"\n type=\"file\"\n accept=\".jpg,.jpeg,.png\"\n @change=\"handleFiles\">\n </el-button>\n <el-button v-if=\"!isDefault\" type=\"danger\" size=\"small\" style=\"margin-left: 5px;\" @click=\"removeFile()\">\n {{ $t('settings.remove') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport _ from 'lodash'\nimport { baseName } from '../../../../api/utils'\nimport { uploadMedia } from '../../../../api/mediaUpload'\n\nexport default {\n name: 'ImageUploadInput',\n props: {\n inputValue: {\n type: [String, Object],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n data() {\n return {\n loading: false\n }\n },\n computed: {\n ...mapGetters([\n 'authHost'\n ]),\n fullSize() {\n if (_.includes([':background', ':nsfwCensorImage'], this.setting.key)) {\n return true\n }\n\n return false\n },\n dimensions() {\n return {\n width: this.fullSize ? '100%' : '100px',\n height: this.fullSize ? '250px' : '100px'\n }\n },\n isDefault() {\n return this.defaultImage === this.inputValue\n },\n defaultImage() {\n return this.baseName + _.get(this.setting, 'suggestions[0]')\n },\n baseName() {\n return baseName(this.authHost)\n }\n },\n methods: {\n imageUrl(url) {\n if (_.isString(url)) {\n const isUrl = url.startsWith('http') || url.startsWith('https')\n return isUrl ? url : this.baseName + url\n } else {\n return this.defaultImage\n }\n },\n handleFiles(event) {\n const file = event.target.files[0]\n if (!file) { return }\n const reader = new FileReader()\n reader.onload = ({ target }) => {\n const formData = new FormData()\n formData.append('file', file)\n this.loading = true\n uploadMedia({ formData, authHost: this.authHost }).then(response => {\n this.loading = false\n this.$emit('change', response.url)\n })\n }\n reader.readAsDataURL(file)\n },\n removeFile() {\n this.$emit('change', this.defaultImage)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings;\n\n.image-upload-area {\n .input-row {\n display: flex;\n align-items: center;\n }\n\n .input-file {\n z-index: 100;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 100%;\n height: 100%;\n opacity: 0;\n cursor: pointer;\n }\n\n .image-button-group {\n margin-top: 20px;\n\n .upload-button {\n position: relative;\n }\n }\n\n .image-upload-wrapper {\n position: relative;\n\n .image-upload-overlay {\n transition: box-shadow .1s;\n border-radius: 5px;\n\n .caption {\n visibility: hidden;\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n font-weight: 700;\n font-size: 10px;\n text-transform: uppercase;;\n color: #fff;\n z-index: 9;\n transition: box-shadow .1s;\n }\n\n .uploaded-image {\n border-radius: 5px;\n box-shadow: 0 2px 10px 0 rgba(0,0,0,.1);\n }\n\n &:hover {\n visibility: visible;\n cursor: pointer;\n border-radius: 5px;\n\n .el-image__error {\n visibility: hidden;\n }\n\n .caption {\n visibility: visible;\n box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1), inset 0 0 120px 25px rgba(0, 0, 0, 0.8);\n border-radius: 5px;\n }\n }\n }\n }\n}\n\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageUploadInput.vue?vue&type=template&id=dbef2262&\"\nimport script from \"./ImageUploadInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageUploadInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ImageUploadInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"image-upload-area\"},[_c('div',{staticClass:\"input-row\"},[_c('div',{staticClass:\"image-upload-wrapper\",style:(_vm.dimensions)},[_c('div',{staticClass:\"image-upload-overlay\",style:(_vm.dimensions)},[_c('input',{staticClass:\"input-file\",attrs:{\"aria-label\":_vm.$t('settings.changeImage'),\"type\":\"file\",\"accept\":\".jpg,.jpeg,.png\"},on:{\"change\":_vm.handleFiles}}),_vm._v(\" \"),_c('div',{staticClass:\"caption\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.changeImage'))+\"\\n \")]),_vm._v(\" \"),_c('el-image',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"uploaded-image\",style:(_vm.dimensions),attrs:{\"src\":_vm.imageUrl(_vm.inputValue),\"fit\":\"cover\"}})],1)])]),_vm._v(\" \"),_c('div',{staticClass:\"image-button-group\"},[_c('el-button',{staticClass:\"upload-button\",attrs:{\"size\":\"small\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.uploadImage'))+\"\\n \"),_c('input',{staticClass:\"input-file\",attrs:{\"aria-label\":_vm.$t('settings.changeImage'),\"type\":\"file\",\"accept\":\".jpg,.jpeg,.png\"},on:{\"change\":_vm.handleFiles}})]),_vm._v(\" \"),(!_vm.isDefault)?_c('el-button',{staticStyle:{\"margin-left\":\"5px\"},attrs:{\"type\":\"danger\",\"size\":\"small\"},on:{\"click\":function($event){return _vm.removeFile()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.remove'))+\"\\n \")]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatterInput.vue?vue&type=script&lang=js&\"","<template>\n <div>\n <div v-if=\"setting.type.includes('string')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerStringValue\"\n @input=\"processTwoTypeValue($event, setting.key)\"/>\n </div>\n <div v-if=\"setting.type.includes('integer')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input-number\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerIntegerValue\"\n @input=\"processTwoTypeValue($event, setting.key)\"/>\n </div>\n <div v-if=\"setting.type.includes('atom')\" :data-search=\"setting.key || setting.group\">\n <el-switch :value=\"autoLinkerBooleanValue\" @change=\"processTwoTypeValue($event, setting.key)\"/>\n <el-input\n v-if=\"autoLinkerBooleanValue\"\n :value=\"autoLinkerAtomValue\"\n @input=\"processTwoTypeValue($event, setting.key)\">\n <template slot=\"prepend\">:</template>\n </el-input>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'LinkFormatterInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n autoLinkerAtomValue() {\n return this.data[this.setting.key] &&\n this.data[this.setting.key][0] === ':' ? this.data[this.setting.key].substr(1) : this.data[this.setting.key]\n },\n autoLinkerBooleanValue() {\n const value = this.data[this.setting.key]\n return typeof value === 'string' || typeof value === 'number'\n },\n autoLinkerIntegerValue() {\n const value = this.data[this.setting.key]\n return value || 0\n },\n autoLinkerStringValue() {\n const value = this.data[this.setting.key]\n return value || ''\n }\n },\n methods: {\n processTwoTypeValue(value, input) {\n if (value === true) {\n const data = input === ':truncate' ? 0 : ''\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n } else {\n this.updateSetting(value, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n }\n },\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./LinkFormatterInput.vue?vue&type=template&id=3e31f4e9&\"\nimport script from \"./LinkFormatterInput.vue?vue&type=script&lang=js&\"\nexport * from \"./LinkFormatterInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LinkFormatterInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LinkFormatterInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.setting.type.includes('string'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input',{attrs:{\"value\":_vm.autoLinkerStringValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.setting.type.includes('integer'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input-number',{attrs:{\"value\":_vm.autoLinkerIntegerValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.setting.type.includes('atom'))?_c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-switch',{attrs:{\"value\":_vm.autoLinkerBooleanValue},on:{\"change\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}}),_vm._v(\" \"),(_vm.autoLinkerBooleanValue)?_c('el-input',{attrs:{\"value\":_vm.autoLinkerAtomValue},on:{\"input\":function($event){return _vm.processTwoTypeValue($event, _vm.setting.key)}}},[_c('template',{slot:\"prepend\"},[_vm._v(\":\")])],2):_vm._e()],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"mascot-container\">\n <div v-for=\"mascot in data\" :key=\"getId(mascot)\" class=\"mascot\">\n <el-form-item label=\"Name\" label-width=\"85px\" class=\"mascot-form-item\">\n <div class=\"mascot-name-container\">\n <el-input :value=\"getName(mascot)\" placeholder=\"Name\" class=\"mascot-name-input\" @input=\"parseMascots($event, 'name', mascot)\"/>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"deleteMascotsRow(mascot)\"/>\n </div>\n </el-form-item>\n <el-form-item label=\"URL\" label-width=\"85px\" class=\"mascot-form-item\">\n <el-input :value=\"getUrl(mascot)\" placeholder=\"URL\" class=\"mascot-input\" @input=\"parseMascots($event, 'url', mascot)\"/>\n </el-form-item>\n <el-form-item label=\"Mime type\" label-width=\"85px\" class=\"mascot-form-item\">\n <el-input :value=\"getMimeType(mascot)\" placeholder=\"Mime type\" class=\"mascot-input\" @input=\"parseMascots($event, 'mimeType', mascot)\"/>\n </el-form-item>\n </div>\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"addRowToMascots\"/>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'MascotsInput',\n props: {\n data: {\n type: Array,\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n }\n },\n methods: {\n addRowToMascots() {\n const updatedValue = [...this.data, { '': { ':url': '', ':mime_type': '', id: this.generateID() }}]\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n deleteMascotsRow(mascot) {\n const deletedId = this.getId(mascot)\n const filteredValues = this.data.filter(mascot => Object.values(mascot)[0].id !== deletedId)\n this.updateSetting(filteredValues, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n generateID() {\n return `f${(~~(Math.random() * 1e8)).toString(16)}`\n },\n getId(mascot) {\n const { id } = Object.values(mascot)[0]\n return id\n },\n getName(mascot) {\n return Object.keys(mascot)[0]\n },\n getUrl(mascot) {\n const [value] = Object.values(mascot)\n return value[':url']\n },\n getMimeType(mascot) {\n const [value] = Object.values(mascot)\n return value[':mime_type']\n },\n parseMascots(value, inputType, mascot) {\n const updatedId = this.getId(mascot)\n const updatedValue = this.data.map((mascot, index) => {\n if (Object.values(mascot)[0].id === updatedId) {\n if (inputType === 'name') {\n return { [value]: Object.values(this.data[index])[0] }\n } else if (inputType === 'url') {\n return { [Object.keys(mascot)[0]]: { ...Object.values(this.data[index])[0], ':url': value }}\n } else {\n return { [Object.keys(mascot)[0]]: { ...Object.values(this.data[index])[0], ':mime_type': value }}\n }\n }\n return mascot\n })\n this.updateSetting(updatedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const mascotsWithoutIDs = value.reduce((acc, mascot) => {\n const { id, ...mascotValue } = Object.values(mascot)[0]\n return { ...acc, [Object.keys(mascot)[0]]: ['', mascotValue] }\n }, {})\n this.$store.dispatch('UpdateSettings', { group, key, input, value: mascotsWithoutIDs, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MascotsInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MascotsInput.vue?vue&type=template&id=0015a0e3&\"\nimport script from \"./MascotsInput.vue?vue&type=script&lang=js&\"\nexport * from \"./MascotsInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MascotsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MascotsInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mascot-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_vm._l((_vm.data),function(mascot){return _c('div',{key:_vm.getId(mascot),staticClass:\"mascot\"},[_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"Name\",\"label-width\":\"85px\"}},[_c('div',{staticClass:\"mascot-name-container\"},[_c('el-input',{staticClass:\"mascot-name-input\",attrs:{\"value\":_vm.getName(mascot),\"placeholder\":\"Name\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'name', mascot)}}}),_vm._v(\" \"),_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.deleteMascotsRow(mascot)}}})],1)]),_vm._v(\" \"),_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"URL\",\"label-width\":\"85px\"}},[_c('el-input',{staticClass:\"mascot-input\",attrs:{\"value\":_vm.getUrl(mascot),\"placeholder\":\"URL\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'url', mascot)}}})],1),_vm._v(\" \"),_c('el-form-item',{staticClass:\"mascot-form-item\",attrs:{\"label\":\"Mime type\",\"label-width\":\"85px\"}},[_c('el-input',{staticClass:\"mascot-input\",attrs:{\"value\":_vm.getMimeType(mascot),\"placeholder\":\"Mime type\"},on:{\"input\":function($event){return _vm.parseMascots($event, 'mimeType', mascot)}}})],1)],1)}),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":_vm.addRowToMascots}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"proxy-url-input\">\n <el-input\n :value=\"proxyUrlData.host\"\n placeholder=\"host (e.g. localhost or 127.0.0.1)\"\n class=\"proxy-url-host-input\"\n @input=\"updateProxyUrl($event, 'host')\"/>\n <span v-if=\"isDesktop\">:</span>\n <el-input\n :value=\"proxyUrlData.port\"\n placeholder=\"port (e.g 9020 or 3090)\"\n class=\"proxy-url-value-input\"\n @input=\"updateProxyUrl($event, 'port')\"/>\n <div class=\"socks5-checkbox-container\">\n <el-checkbox :value=\"proxyUrlData.socks5\" @change=\"updateProxyUrl($event, 'socks5')\"/>\n <span class=\"socks5-checkbox\">Socks5</span>\n </div>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'ProxyUrlInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n proxyUrlData() {\n return Object.keys(this.data).length === 0 ? { socks5: false, host: null, port: null } : this.data\n }\n },\n methods: {\n updateProxyUrl(value, inputType) {\n let data\n if (inputType === 'socks5') {\n data = { ...this.proxyUrlData, socks5: value }\n } else if (inputType === 'host') {\n data = { ...this.proxyUrlData, host: value }\n } else {\n data = { ...this.proxyUrlData, port: value }\n }\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const assembledData = value.socks5\n ? [':socks5', value.host, value.port]\n : `${value.host}:${value.port}`\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, assembledData, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: assembledData, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProxyUrlInput.vue?vue&type=template&id=9a053e1c&\"\nimport script from \"./ProxyUrlInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ProxyUrlInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ProxyUrlInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"proxy-url-input\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-input',{staticClass:\"proxy-url-host-input\",attrs:{\"value\":_vm.proxyUrlData.host,\"placeholder\":\"host (e.g. localhost or 127.0.0.1)\"},on:{\"input\":function($event){return _vm.updateProxyUrl($event, 'host')}}}),_vm._v(\" \"),(_vm.isDesktop)?_c('span',[_vm._v(\":\")]):_vm._e(),_vm._v(\" \"),_c('el-input',{staticClass:\"proxy-url-value-input\",attrs:{\"value\":_vm.proxyUrlData.port,\"placeholder\":\"port (e.g 9020 or 3090)\"},on:{\"input\":function($event){return _vm.updateProxyUrl($event, 'port')}}}),_vm._v(\" \"),_c('div',{staticClass:\"socks5-checkbox-container\"},[_c('el-checkbox',{attrs:{\"value\":_vm.proxyUrlData.socks5},on:{\"change\":function($event){return _vm.updateProxyUrl($event, 'socks5')}}}),_vm._v(\" \"),_c('span',{staticClass:\"socks5-checkbox\"},[_vm._v(\"Socks5\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PruneInput.vue?vue&type=script&lang=js&\"","<template>\n <div :data-search=\"setting.key || setting.group\">\n <el-radio-group v-model=\"prune\" class=\"prune-options\">\n <el-radio label=\":disabled\">Disabled</el-radio>\n <el-radio label=\":maxlen\">Limit-based</el-radio>\n <el-radio label=\":maxage\">Time-based</el-radio>\n </el-radio-group>\n <el-form-item v-if=\"prune === ':maxlen'\" label=\"Max length\" label-width=\"100\" label-position=\"left\">\n <el-input-number\n :value=\"data[1]\"\n :min=\"0\"\n placeholder=\"1500\"\n size=\"large\"\n class=\"top-margin\"\n @change=\"updateIntInput($event, ':maxlen')\"/>\n </el-form-item>\n <el-form-item v-if=\"prune === ':maxage'\" label=\"Max age\" label-width=\"100\" label-position=\"left\">\n <el-input-number\n :value=\"data[1]\"\n :min=\"0\"\n placeholder=\"3600\"\n size=\"large\"\n class=\"top-margin\"\n @change=\"updateIntInput($event, ':maxage')\"/>\n </el-form-item>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'PruneInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n prune: {\n get: function() {\n return this.data[0]\n },\n set: function(value) {\n this.updateRadioInput(value)\n }\n }\n },\n methods: {\n updateIntInput(value, input) {\n this.updateSetting([input, value], this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSetting = value.includes(':disabled') ? ':disabled' : value\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSetting, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n },\n updateRadioInput(value) {\n const processedValue = value === ':disabled' ? [value] : [value, 0]\n this.updateSetting(processedValue, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./PruneInput.vue?vue&type=template&id=0da6d714&\"\nimport script from \"./PruneInput.vue?vue&type=script&lang=js&\"\nexport * from \"./PruneInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PruneInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"PruneInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-radio-group',{staticClass:\"prune-options\",model:{value:(_vm.prune),callback:function ($$v) {_vm.prune=$$v},expression:\"prune\"}},[_c('el-radio',{attrs:{\"label\":\":disabled\"}},[_vm._v(\"Disabled\")]),_vm._v(\" \"),_c('el-radio',{attrs:{\"label\":\":maxlen\"}},[_vm._v(\"Limit-based\")]),_vm._v(\" \"),_c('el-radio',{attrs:{\"label\":\":maxage\"}},[_vm._v(\"Time-based\")])],1),_vm._v(\" \"),(_vm.prune === ':maxlen')?_c('el-form-item',{attrs:{\"label\":\"Max length\",\"label-width\":\"100\",\"label-position\":\"left\"}},[_c('el-input-number',{staticClass:\"top-margin\",attrs:{\"value\":_vm.data[1],\"min\":0,\"placeholder\":\"1500\",\"size\":\"large\"},on:{\"change\":function($event){return _vm.updateIntInput($event, ':maxlen')}}})],1):_vm._e(),_vm._v(\" \"),(_vm.prune === ':maxage')?_c('el-form-item',{attrs:{\"label\":\"Max age\",\"label-width\":\"100\",\"label-position\":\"left\"}},[_c('el-input-number',{staticClass:\"top-margin\",attrs:{\"value\":_vm.data[1],\"min\":0,\"placeholder\":\"3600\",\"size\":\"large\"},on:{\"change\":function($event){return _vm.updateIntInput($event, ':maxage')}}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=script&lang=js&\"","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"rate-limit-container\">\n <div v-if=\"!rateLimitAuthUsers\">\n <el-input-number\n :value=\"rateLimitAllUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter($event, setting.key, 'scale', 'oneLimit', rateLimitAllUsers)\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitAllUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter($event, setting.key, 'limit', 'oneLimit', rateLimitAllUsers)\"/>\n <div class=\"limit-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" icon=\"el-icon-plus\" circle @click=\"toggleLimits([['', ''], ['', '']], setting.key)\"/>\n <p class=\"expl limit-expl\">Set different limits for unauthenticated and authenticated users</p>\n </div>\n </div>\n <div v-if=\"rateLimitAuthUsers\">\n <el-form-item class=\"rate-limit\">\n <div class=\"rate-limit-label-container\">\n <span class=\"rate-limit-label\">\n Unauthenticated users:\n </span>\n </div>\n <div class=\"rate-limit-content\">\n <el-input-number\n :value=\"rateLimitUnauthUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter(\n $event, setting.key, 'scale', 'unauthUsersLimit', [rateLimitUnauthUsers, rateLimitAuthUsers]\n )\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitUnauthUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter(\n $event, setting.key, 'limit', 'unauthUsersLimit', [rateLimitUnauthUsers, rateLimitAuthUsers]\n )\"/>\n </div>\n </el-form-item>\n <el-form-item class=\"rate-limit\">\n <div class=\"rate-limit-label-container\">\n <span class=\"rate-limit-label\">\n Authenticated users:\n </span>\n </div>\n <div class=\"rate-limit-content\">\n <el-input-number\n :value=\"rateLimitAuthUsers[0]\"\n :controls=\"false\"\n placeholder=\"scale\"\n class=\"scale-input\"\n @input=\"parseRateLimiter($event, setting.key, 'scale', 'authUserslimit', [rateLimitUnauthUsers, rateLimitAuthUsers])\"/>\n <span>:</span>\n <el-input-number\n :value=\"rateLimitAuthUsers[1]\"\n :controls=\"false\"\n placeholder=\"limit\"\n class=\"limit-input\"\n @input=\"parseRateLimiter($event, setting.key, 'limit', 'authUserslimit', [rateLimitUnauthUsers, rateLimitAuthUsers])\"/>\n </div>\n </el-form-item>\n <div class=\"limit-button-container\">\n <el-button :size=\"isDesktop ? 'medium' : 'mini'\" class=\"icon-minus-button\" icon=\"el-icon-minus\" circle @click=\"toggleLimits(['', ''], setting.key)\"/>\n <p class=\"expl limit-expl\">Set limit for all users</p>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'RateLimitInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n rateLimitAllUsers() {\n return this.data[this.setting.key] ? this.data[this.setting.key] : ['', '']\n },\n rateLimitAuthUsers() {\n return this.data[this.setting.key] && Array.isArray(this.data[this.setting.key][0])\n ? this.data[this.setting.key][1]\n : false\n },\n rateLimitUnauthUsers() {\n return this.data[this.setting.key] && Array.isArray(this.data[this.setting.key][1])\n ? this.data[this.setting.key][0]\n : false\n }\n },\n methods: {\n parseRateLimiter(value, input, typeOfInput, typeOfLimit, currentValue) {\n let valueToSend\n if (typeOfLimit === 'oneLimit') {\n valueToSend = typeOfInput === 'scale' ? [value, currentValue[1]] : [currentValue[0], value]\n } else if (typeOfLimit === 'unauthUsersLimit') {\n valueToSend = typeOfInput === 'scale'\n ? [[value, currentValue[0][1]], [currentValue[1][0], currentValue[1][1]]]\n : [[currentValue[0][0], value], [currentValue[1][0], currentValue[1][1]]]\n } else if (typeOfLimit === 'authUserslimit') {\n valueToSend = typeOfInput === 'scale'\n ? [[currentValue[0][0], currentValue[0][1]], [value, currentValue[1][1]]]\n : [[currentValue[0][0], currentValue[0][1]], [currentValue[1][0], value]]\n }\n this.updateSetting(valueToSend, this.settingGroup.group, this.settingGroup.key, input, this.setting.type)\n },\n toggleLimits(value, input) {\n this.updateSetting(value, this.settingGroup.group, this.settingGroup.key, input)\n },\n updateSetting(value, group, key, input, type) {\n const updatedSettings = Array.isArray(value[0])\n ? value.map(element => { return { 'tuple': element } })\n : { 'tuple': value }\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedSettings, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./RateLimitInput.vue?vue&type=template&id=6c808afe&\"\nimport script from \"./RateLimitInput.vue?vue&type=script&lang=js&\"\nexport * from \"./RateLimitInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RateLimitInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rate-limit-container\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[(!_vm.rateLimitAuthUsers)?_c('div',[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitAllUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'scale', 'oneLimit', _vm.rateLimitAllUsers)}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitAllUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'limit', 'oneLimit', _vm.rateLimitAllUsers)}}}),_vm._v(\" \"),_c('div',{staticClass:\"limit-button-container\"},[_c('el-button',{attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-plus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.toggleLimits([['', ''], ['', '']], _vm.setting.key)}}}),_vm._v(\" \"),_c('p',{staticClass:\"expl limit-expl\"},[_vm._v(\"Set different limits for unauthenticated and authenticated users\")])],1)],1):_vm._e(),_vm._v(\" \"),(_vm.rateLimitAuthUsers)?_c('div',[_c('el-form-item',{staticClass:\"rate-limit\"},[_c('div',{staticClass:\"rate-limit-label-container\"},[_c('span',{staticClass:\"rate-limit-label\"},[_vm._v(\"\\n Unauthenticated users:\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"rate-limit-content\"},[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitUnauthUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter(\n $event, _vm.setting.key, 'scale', 'unauthUsersLimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers]\n )}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitUnauthUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter(\n $event, _vm.setting.key, 'limit', 'unauthUsersLimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers]\n )}}})],1)]),_vm._v(\" \"),_c('el-form-item',{staticClass:\"rate-limit\"},[_c('div',{staticClass:\"rate-limit-label-container\"},[_c('span',{staticClass:\"rate-limit-label\"},[_vm._v(\"\\n Authenticated users:\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"rate-limit-content\"},[_c('el-input-number',{staticClass:\"scale-input\",attrs:{\"value\":_vm.rateLimitAuthUsers[0],\"controls\":false,\"placeholder\":\"scale\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'scale', 'authUserslimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers])}}}),_vm._v(\" \"),_c('span',[_vm._v(\":\")]),_vm._v(\" \"),_c('el-input-number',{staticClass:\"limit-input\",attrs:{\"value\":_vm.rateLimitAuthUsers[1],\"controls\":false,\"placeholder\":\"limit\"},on:{\"input\":function($event){return _vm.parseRateLimiter($event, _vm.setting.key, 'limit', 'authUserslimit', [_vm.rateLimitUnauthUsers, _vm.rateLimitAuthUsers])}}})],1)]),_vm._v(\" \"),_c('div',{staticClass:\"limit-button-container\"},[_c('el-button',{staticClass:\"icon-minus-button\",attrs:{\"size\":_vm.isDesktop ? 'medium' : 'mini',\"icon\":\"el-icon-minus\",\"circle\":\"\"},on:{\"click\":function($event){return _vm.toggleLimits(['', ''], _vm.setting.key)}}}),_vm._v(\" \"),_c('p',{staticClass:\"expl limit-expl\"},[_vm._v(\"Set limit for all users\")])],1)],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RegInvitesInput.vue?vue&type=script&lang=js&\"","<template>\n <el-switch\n :value=\"data[setting.key]\"\n :data-search=\"setting.key\"\n class=\"switch-input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\"/>\n</template>\n\n<script>\nexport default {\n name: 'RegInvitesInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n methods: {\n updateSetting(value, group, key, input, type) {\n const registrationsOpen = this.$store.state.settings.settings[group][key][':registrations_open']\n const invitesEnabled = this.$store.state.settings.settings[group][key][':invites_enabled']\n if (input === ':registrations_open' && value && invitesEnabled) {\n this.$confirm(\n 'Enabling this setting requires invites to be disabled. Are you sure you want to open registrations?',\n 'Warning',\n { confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateSettings', { group, key, input: ':invites_enabled', value: false, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n this.$store.dispatch('UpdateState', { group, key, input: ':invites_enabled', value: false })\n })\n } else if (input === ':invites_enabled' && value && registrationsOpen) {\n this.$confirm(\n 'Enabling this setting requires registrations to be disabled. Are you sure you want to enable invitations?',\n 'Warning',\n { confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateSettings', { group, key, input: ':registrations_open', value: false, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n this.$store.dispatch('UpdateState', { group, key, input: ':registrations_open', value: false })\n })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./RegInvitesInput.vue?vue&type=template&id=55c7fa7c&\"\nimport script from \"./RegInvitesInput.vue?vue&type=script&lang=js&\"\nexport * from \"./RegInvitesInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RegInvitesInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RegInvitesInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-switch',{staticClass:\"switch-input\",attrs:{\"value\":_vm.data[_vm.setting.key],\"data-search\":_vm.setting.key},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"input\">\n <el-select\n v-if=\"renderMultipleSelect(setting.type)\"\n :value=\"inputValue\"\n :data-search=\"setting.key\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option v-for=\"(option, index) in options(setting.suggestions)\" :key=\"index\" :value=\"option.value\" :label=\"option.label\" />\n </el-select>\n <el-select\n v-if=\"setting.type === 'module' || (setting.type.includes('atom') && setting.type.includes('dropdown'))\"\n :value=\"inputValue === false ? 'false' : inputValue\"\n :data-search=\"setting.key || setting.group\"\n clearable\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option\n v-for=\"(option, index) in options(setting.suggestions)\"\n :value=\"option.value\"\n :label=\"option.label\"\n :key=\"index\"/>\n </el-select>\n </div>\n</template>\n\n<script>\nimport { getBooleanValue } from '@/store/modules/normalizers'\n\nexport default {\n name: 'SelectInputWithReducedLabels',\n props: {\n data: {\n type: [Array, Object],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n inputValue() {\n if (this.setting.key === 'Pleroma.Web.Auth.Authenticator') {\n return this.data.value\n } else if (this.setting.key === ':policies') {\n return typeof this.data[this.setting.key] === 'string'\n ? [this.data[this.setting.key]]\n : this.data[this.setting.key]\n } else {\n return this.data[this.setting.key]\n }\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n }\n },\n methods: {\n options(suggestions) {\n const prefixes = {\n ':policies': 'Pleroma.Web.ActivityPub.MRF.',\n 'Pleroma.Web.Auth.Authenticator': 'Pleroma.Web.Auth.',\n ':method': 'Pleroma.Captcha.',\n ':adapter': 'Swoosh.Adapters.',\n ':providers': 'Pleroma.Web.Metadata.Providers.',\n ':parsers': 'Pleroma.Web.RichMedia.Parsers.',\n ':ttl_setters': 'Pleroma.Web.RichMedia.Parser.',\n ':scrub_policy': 'Pleroma.HTML.',\n ':federation_publisher_modules': 'Pleroma.Web.',\n ':uploader': 'Pleroma.Uploaders.',\n ':filters': 'Pleroma.Upload.Filter.'\n }\n\n return suggestions.map(element => {\n const label = element.split(prefixes[this.setting.key])[1]\n ? element.split(prefixes[this.setting.key])[1]\n : element\n return { value: element, label }\n })\n },\n renderMultipleSelect(type) {\n return Array.isArray(type) && this.setting.key !== ':backends' && this.setting.key !== ':args' && (\n type.includes('module') ||\n (type.includes('list') && type.includes('string')) ||\n (type.includes('list') && type.includes('atom')) ||\n (type.includes('regex') && type.includes('string')) ||\n this.setting.key === ':args'\n )\n },\n updateSetting(value, group, key, input, type) {\n const updatedValue = getBooleanValue(value)\n this.$store.dispatch('UpdateSettings', { group, key, input, value: updatedValue, type })\n this.$store.dispatch('UpdateState', { group, key, input, value: updatedValue })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./SelectInputWithReducedLabels.vue?vue&type=template&id=f003bd80&\"\nimport script from \"./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"\nexport * from \"./SelectInputWithReducedLabels.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SelectInputWithReducedLabels.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SelectInputWithReducedLabels.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input\"},[(_vm.renderMultipleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},_vm._l((_vm.options(_vm.setting.suggestions)),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option.value,\"label\":option.label}})}),1):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'module' || (_vm.setting.type.includes('atom') && _vm.setting.type.includes('dropdown')))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue === false ? 'false' : _vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"clearable\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},_vm._l((_vm.options(_vm.setting.suggestions)),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option.value,\"label\":option.label}})}),1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div :data-search=\"setting.key || setting.group\" class=\"sender-input\">\n <el-input\n :value=\"sender.email\"\n placeholder=\"email address\"\n class=\"email-address-input\"\n @input=\"updateSender($event, 'email')\"/>\n <el-input\n :value=\"sender.nickname\"\n placeholder=\"nickname\"\n class=\"nickname-input\"\n @input=\"updateSender($event, 'nickname')\"/>\n </div>\n</template>\n\n<script>\nimport { processNested } from '@/store/modules/normalizers'\n\nexport default {\n name: 'SenderInput',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n parents: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n sender() {\n return Object.keys(this.data).length === 0 ? { email: null, nickname: null } : this.data\n }\n },\n methods: {\n updateSender(value, inputType) {\n let data\n if (inputType === 'email') {\n data = { ...this.sender, email: value }\n } else {\n data = { ...this.sender, nickname: value }\n }\n this.updateSetting(data, this.settingGroup.group, this.settingGroup.key, this.setting.key, this.setting.type)\n },\n updateSetting(value, group, key, input, type) {\n const assembledData = value.nickname\n ? [value.nickname, value.email]\n : value.email\n\n if (this.parents.length > 0) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, assembledData, group, key, this.parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key, input: setting.key, value: valueForState })\n } else {\n this.$store.dispatch('UpdateSettings', { group, key, input, value: assembledData, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SenderInput.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SenderInput.vue?vue&type=template&id=01973d3a&\"\nimport script from \"./SenderInput.vue?vue&type=script&lang=js&\"\nexport * from \"./SenderInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SenderInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SenderInput.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"sender-input\",attrs:{\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('el-input',{staticClass:\"email-address-input\",attrs:{\"value\":_vm.sender.email,\"placeholder\":\"email address\"},on:{\"input\":function($event){return _vm.updateSender($event, 'email')}}}),_vm._v(\" \"),_c('el-input',{staticClass:\"nickname-input\",attrs:{\"value\":_vm.sender.nickname,\"placeholder\":\"nickname\"},on:{\"input\":function($event){return _vm.updateSender($event, 'nickname')}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"multiple-select-container\">\n <el-select\n v-if=\"setting.key === ':backends'\"\n :value=\"data.value\"\n :data-search=\"setting.key || setting.group\"\n multiple\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option value=\":console\" label=\"console\"/>\n <el-option value=\":ex_syslogger\" label=\"ExSyslogger\"/>\n <el-option value=\"Quack.Logger\" label=\"Quack.Logger\"/>\n </el-select>\n <el-select\n v-if=\"setting.key === ':args'\"\n :value=\"data[setting.key]\"\n :data-search=\"setting.key || setting.group\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"updateSetting($event, settingGroup.group, settingGroup.key, setting.key, setting.type)\">\n <el-option value=\"strip\"/>\n <el-option value=\"auto-orient\"/>\n <!-- eslint-disable -->\n <el-option value='{\"implode\", \"1\"}'/>\n <!-- eslint-enable -->\n </el-select>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'SpecificMultipleSelect',\n props: {\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n methods: {\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./SpecificMultipleSelect.vue?vue&type=template&id=755f759c&\"\nimport script from \"./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./SpecificMultipleSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SpecificMultipleSelect.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"SpecificMultipleSelect.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"multiple-select-container\"},[(_vm.setting.key === ':backends')?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.data.value,\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},[_c('el-option',{attrs:{\"value\":\":console\",\"label\":\"console\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\":ex_syslogger\",\"label\":\"ExSyslogger\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"Quack.Logger\",\"label\":\"Quack.Logger\"}})],1):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':args')?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.data[_vm.setting.key],\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.updateSetting($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.setting.key, _vm.setting.type)}}},[_c('el-option',{attrs:{\"value\":\"strip\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"auto-orient\"}}),_vm._v(\" \"),_c('el-option',{attrs:{\"value\":\"{\\\"implode\\\", \\\"1\\\"}\"}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"input-container\">\n <div v-if=\"setting.type === 'keyword'\" class=\"keyword-container\">\n <el-form-item\n :label-width=\"customLabelWidth\"\n :class=\"labelClass\"\n :style=\"`margin-left:${margin}px;margin-bottom:0`\"\n :data-search=\"setting.key || setting.group\">\n <span slot=\"label\">\n {{ setting.label }}\n <el-tooltip v-if=\"canBeDeleted && isDesktop\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </span>\n </el-form-item>\n <el-form-item v-for=\"subSetting in setting.children\" :key=\"subSetting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting-parent=\"[...settingParent, subSetting]\"\n :setting=\"subSetting\"\n :data=\"data[setting.key]\"\n :custom-label-width=\"isMobile ? '100px' : '120px'\"\n :label-class=\"subSetting.type === 'keyword' ? 'center-label' : ''\"\n :margin=\"isDesktop ? margin + 15 : margin + 8\"\n :nested=\"true\"/>\n </el-form-item>\n </div>\n <el-form-item v-if=\"setting.type !== 'keyword'\" :label-width=\"customLabelWidth\" :class=\"labelClass\" :style=\"isDesktop ? '' : `margin-left:${margin}px`\">\n <span slot=\"label\">\n {{ setting.label }}\n <el-tooltip v-if=\"canBeDeleted && (isDesktop || isMobile)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </span>\n <div class=\"input-row\">\n <image-upload-input\n v-if=\"isImageUrl\"\n :data=\"data\"\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :input-value=\"inputValue\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"\n />\n <el-input\n v-else-if=\"setting.type === 'string' ||\n (Array.isArray(setting.type) && setting.type.includes('string') && setting.type.includes('atom'))\"\n :value=\"inputValue\"\n :placeholder=\"setting.suggestions ? setting.suggestions[0] : null\"\n :data-search=\"setting.key || setting.group\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-switch\n v-if=\"setting.type === 'boolean' && ![':registrations_open', ':invites_enabled'].includes(setting.key)\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n class=\"switch-input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-input-number\n v-if=\"setting.type === 'integer'\"\n :value=\"inputValue === null ? undefined : inputValue\"\n :placeholder=\"setting.suggestions ? setting.suggestions[0].toString() : null\"\n :min=\"0\"\n :size=\"isDesktop ? 'large' : 'medium'\"\n :data-search=\"setting.key || setting.group\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-select\n v-if=\"renderSingleSelect(setting.type)\"\n :value=\"inputValue === false ? 'false' : inputValue\"\n :data-search=\"setting.key || setting.group\"\n clearable\n class=\"input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <el-option\n v-for=\"(option, index) in setting.suggestions\"\n :value=\"option\"\n :key=\"index\"/>\n </el-select>\n <el-select\n v-if=\"renderMultipleSelect(setting.type)\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n multiple\n filterable\n allow-create\n class=\"input\"\n @change=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <el-option v-for=\"(option, index) in setting.suggestions\" :key=\"index\" :value=\"option\"/>\n </el-select>\n <el-input\n v-if=\"setting.key === ':ip'\"\n :value=\"inputValue\"\n :data-search=\"setting.key || setting.group\"\n placeholder=\"xxx.xxx.xxx.xx\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\"/>\n <el-input\n v-if=\"setting.type === 'atom'\"\n :value=\"inputValue\"\n :placeholder=\"setting.suggestions && setting.suggestions[0] ? setting.suggestions[0].substr(1) : ''\"\n :data-search=\"setting.key || setting.group\"\n class=\"input\"\n @input=\"update($event, settingGroup.group, settingGroup.key, settingParent, setting.key, setting.type, nested)\">\n <template slot=\"prepend\">:</template>\n </el-input>\n <!-- special inputs -->\n <editable-keyword-input v-if=\"editableKeyword(setting.key, setting.type)\" :data=\"keywordData\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <icons-input v-if=\"setting.key === ':icons'\" :data=\"iconsData\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <link-formatter-input v-if=\"booleanCombinedInput\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <mascots-input v-if=\"setting.key === ':mascots'\" :data=\"keywordData\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <proxy-url-input v-if=\"setting.key === ':proxy_url'\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <prune-input v-if=\"setting.key === ':prune'\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <rate-limit-input v-if=\"settingGroup.key === ':rate_limit'\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <reg-invites-input v-if=\"[':registrations_open', ':invites_enabled'].includes(setting.key)\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <select-input-with-reduced-labels v-if=\"reducedSelects\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <specific-multiple-select v-if=\"setting.key === ':backends' || setting.key === ':args'\" :data=\"data\" :setting-group=\"settingGroup\" :setting=\"setting\"/>\n <sender-input v-if=\"senderInput(setting)\" :data=\"data[setting.key]\" :setting-group=\"settingGroup\" :setting=\"setting\" :parents=\"settingParent\"/>\n <!-------------------->\n <el-tooltip v-if=\"canBeDeleted && isTablet\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\" class=\"delete-setting-button-container\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"delete-setting-button\" @click=\"removeSetting\"/>\n </el-tooltip>\n </div>\n <div\n v-if=\"setting.description && setting.type !== 'keyword'\"\n class=\"expl\"\n v-html=\"getFormattedDescription(setting.description)\"/>\n </el-form-item>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport {\n EditableKeywordInput,\n IconsInput,\n ImageUploadInput,\n LinkFormatterInput,\n MascotsInput,\n ProxyUrlInput,\n PruneInput,\n RateLimitInput,\n RegInvitesInput,\n SelectInputWithReducedLabels,\n SenderInput,\n SpecificMultipleSelect } from './inputComponents'\nimport { getBooleanValue, processNested } from '@/store/modules/normalizers'\nimport _ from 'lodash'\nimport marked from 'marked'\n\nexport default {\n name: 'Inputs',\n components: {\n EditableKeywordInput,\n IconsInput,\n ImageUploadInput,\n LinkFormatterInput,\n MascotsInput,\n ProxyUrlInput,\n PruneInput,\n RateLimitInput,\n RegInvitesInput,\n SelectInputWithReducedLabels,\n SenderInput,\n SpecificMultipleSelect\n },\n props: {\n customLabelWidth: {\n type: String,\n default: function() {\n return this.labelWidth\n },\n required: false\n },\n data: {\n type: [Object, Array],\n default: function() {\n return {}\n }\n },\n labelClass: {\n type: String,\n default: function() {\n return 'label'\n },\n required: false\n },\n margin: {\n type: Number,\n default: function() {\n return 0\n },\n required: false\n },\n nested: {\n type: Boolean,\n default: function() {\n return false\n }\n },\n setting: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n settingParent: {\n type: Array,\n default: function() {\n return []\n },\n required: false\n }\n },\n computed: {\n booleanCombinedInput() {\n return Array.isArray(this.setting.type) && this.setting.type.includes('boolean')\n },\n canBeDeleted() {\n const { group, key } = this.settingGroup\n return _.get(this.$store.state.settings.db, [group, key]) &&\n this.$store.state.settings.db[group][key].includes(this.setting.key)\n },\n iconsData() {\n return Array.isArray(this.data) ? this.data : []\n },\n inputValue() {\n if ([':esshd', ':cors_plug', ':quack', ':tesla', ':swoosh'].includes(this.settingGroup.group) &&\n this.data[this.setting.key]) {\n return this.setting.type === 'atom' && this.data[this.setting.key].value[0] === ':'\n ? this.data[this.setting.key].value.substr(1)\n : this.data[this.setting.key].value\n } else if ((this.settingGroup.group === ':logger' && this.setting.key === ':backends') ||\n this.setting.key === 'Pleroma.Web.Auth.Authenticator' ||\n this.setting.key === ':admin_token') {\n return this.data.value\n } else if (this.settingGroup.group === ':mime' && this.settingParent[0].key === ':types') {\n return this.data.value ? this.data.value[this.setting.key] : []\n } else if (this.setting.type === 'atom') {\n return this.data[this.setting.key] && this.data[this.setting.key][0] === ':' ? this.data[this.setting.key].substr(1) : this.data[this.setting.key]\n } else if (Array.isArray(this.setting.type) &&\n this.setting.type.find(el => Array.isArray(el) && el.includes('list'))) {\n return typeof this.data[this.setting.key] === 'string' ? [this.data[this.setting.key]] : this.data[this.setting.key]\n } else {\n return this.data[this.setting.key]\n }\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n keywordData() {\n if (this.settingParent.length > 0 ||\n (Array.isArray(this.setting.type) && this.setting.type.includes('tuple') && this.setting.type.includes('list'))) {\n return Array.isArray(this.data[this.setting.key]) ? this.data[this.setting.key] : []\n }\n return Array.isArray(this.data) ? this.data : []\n },\n reducedSelects() {\n return [\n ':filters',\n ':uploader',\n ':federation_publisher_modules',\n ':scrub_policy',\n ':ttl_setters',\n ':parsers',\n ':providers',\n ':method',\n ':policies',\n 'Pleroma.Web.Auth.Authenticator'\n ].includes(this.setting.key) ||\n (this.settingGroup.key === 'Pleroma.Emails.Mailer' && this.setting.key === ':adapter')\n },\n settings() {\n return this.$store.state.settings.settings\n },\n updatedSettings() {\n return this.$store.state.settings.updatedSettings\n },\n isImageUrl() {\n return Array.isArray(this.setting.type) && this.setting.type.includes('image')\n }\n },\n methods: {\n editableKeyword(key, type) {\n return Array.isArray(type) && (\n (type.includes('map') && type.includes('string')) ||\n (type.includes('map') && type.findIndex(el => el.includes('list') && el.includes('string')) !== -1) ||\n (type.includes('keyword') && type.includes('integer')) ||\n (type.includes('keyword') && type.includes('string')) ||\n (type.includes('tuple') && type.includes('list')) ||\n (type.includes('keyword') && type.findIndex(el => el.includes('list') && el.includes('string')) !== -1)\n )\n },\n getFormattedDescription(desc) {\n return marked(desc)\n },\n processNestedData(value, group, parentKey, parents) {\n const { valueForState,\n valueForUpdatedSettings,\n setting } = processNested(value, value, group, parentKey, parents.reverse(), this.settings, this.updatedSettings)\n\n this.$store.dispatch('UpdateSettings',\n { group, key: parentKey, input: setting.key, value: valueForUpdatedSettings, type: setting.type })\n this.$store.dispatch('UpdateState',\n { group, key: parentKey, input: setting.key, value: valueForState })\n },\n async removeSetting() {\n this.$confirm(\n this.$t('settings.removeSettingConfirmation'),\n {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(async() => {\n const config = this.settingGroup.key\n ? [{ group: this.settingGroup.group, key: this.settingGroup.key, delete: true, subkeys: [this.setting.key] }]\n : [{ group: this.settingGroup.group, key: this.setting.key, delete: true }]\n try {\n await this.$store.dispatch('RemoveSetting', config)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.successfullyRemoved')\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n },\n renderMultipleSelect(type) {\n return !this.reducedSelects && Array.isArray(type) && this.setting.key !== ':backends' && this.setting.key !== ':args' && (\n type.includes('module') ||\n (type.includes('list') && type.includes('string')) ||\n (type.includes('list') && type.includes('atom')) ||\n (!type.includes('keyword') && type.includes('regex') && type.includes('string'))\n )\n },\n renderSingleSelect(type) {\n return !this.reducedSelects && (\n type === 'module' ||\n (Array.isArray(type) && type.includes('atom') && type.includes('dropdown'))\n )\n },\n senderInput({ key, type }) {\n return Array.isArray(type) && type.includes('string') && type.includes('tuple') && key === ':sender'\n },\n update(value, group, key, parents, input, type, nested) {\n const updatedValue = this.renderSingleSelect(type) ? getBooleanValue(value) : value\n nested\n ? this.processNestedData(updatedValue, group, key, parents)\n : this.updateSetting(updatedValue, group, key, input, type)\n },\n updateSetting(value, group, key, input, type) {\n this.$store.dispatch('UpdateSettings', { group, key, input, value, type })\n this.$store.dispatch('UpdateState', { group, key, input, value })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Inputs.vue?vue&type=template&id=7e59d6ab&\"\nimport script from \"./Inputs.vue?vue&type=script&lang=js&\"\nexport * from \"./Inputs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Inputs.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"input-container\"},[(_vm.setting.type === 'keyword')?_c('div',{staticClass:\"keyword-container\"},[_c('el-form-item',{class:_vm.labelClass,style:((\"margin-left:\" + _vm.margin + \"px;margin-bottom:0\")),attrs:{\"label-width\":_vm.customLabelWidth,\"data-search\":_vm.setting.key || _vm.setting.group}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\"\\n \"+_vm._s(_vm.setting.label)+\"\\n \"),(_vm.canBeDeleted && _vm.isDesktop)?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1)]),_vm._v(\" \"),_vm._l((_vm.setting.children),function(subSetting){return _c('el-form-item',{key:subSetting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting-parent\":_vm.settingParent.concat( [subSetting]),\"setting\":subSetting,\"data\":_vm.data[_vm.setting.key],\"custom-label-width\":_vm.isMobile ? '100px' : '120px',\"label-class\":subSetting.type === 'keyword' ? 'center-label' : '',\"margin\":_vm.isDesktop ? _vm.margin + 15 : _vm.margin + 8,\"nested\":true}})],1)})],2):_vm._e(),_vm._v(\" \"),(_vm.setting.type !== 'keyword')?_c('el-form-item',{class:_vm.labelClass,style:(_vm.isDesktop ? '' : (\"margin-left:\" + _vm.margin + \"px\")),attrs:{\"label-width\":_vm.customLabelWidth}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[_vm._v(\"\\n \"+_vm._s(_vm.setting.label)+\"\\n \"),(_vm.canBeDeleted && (_vm.isDesktop || _vm.isMobile))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"input-row\"},[(_vm.isImageUrl)?_c('image-upload-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"input-value\":_vm.inputValue},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):(_vm.setting.type === 'string' ||\n (Array.isArray(_vm.setting.type) && _vm.setting.type.includes('string') && _vm.setting.type.includes('atom')))?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"placeholder\":_vm.setting.suggestions ? _vm.setting.suggestions[0] : null,\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'boolean' && ![':registrations_open', ':invites_enabled'].includes(_vm.setting.key))?_c('el-switch',{staticClass:\"switch-input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'integer')?_c('el-input-number',{attrs:{\"value\":_vm.inputValue === null ? undefined : _vm.inputValue,\"placeholder\":_vm.setting.suggestions ? _vm.setting.suggestions[0].toString() : null,\"min\":0,\"size\":_vm.isDesktop ? 'large' : 'medium',\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.renderSingleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue === false ? 'false' : _vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"clearable\":\"\"},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},_vm._l((_vm.setting.suggestions),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option}})}),1):_vm._e(),_vm._v(\" \"),(_vm.renderMultipleSelect(_vm.setting.type))?_c('el-select',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"multiple\":\"\",\"filterable\":\"\",\"allow-create\":\"\"},on:{\"change\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},_vm._l((_vm.setting.suggestions),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option}})}),1):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':ip')?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"data-search\":_vm.setting.key || _vm.setting.group,\"placeholder\":\"xxx.xxx.xxx.xx\"},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}}):_vm._e(),_vm._v(\" \"),(_vm.setting.type === 'atom')?_c('el-input',{staticClass:\"input\",attrs:{\"value\":_vm.inputValue,\"placeholder\":_vm.setting.suggestions && _vm.setting.suggestions[0] ? _vm.setting.suggestions[0].substr(1) : '',\"data-search\":_vm.setting.key || _vm.setting.group},on:{\"input\":function($event){return _vm.update($event, _vm.settingGroup.group, _vm.settingGroup.key, _vm.settingParent, _vm.setting.key, _vm.setting.type, _vm.nested)}}},[_c('template',{slot:\"prepend\"},[_vm._v(\":\")])],2):_vm._e(),_vm._v(\" \"),(_vm.editableKeyword(_vm.setting.key, _vm.setting.type))?_c('editable-keyword-input',{attrs:{\"data\":_vm.keywordData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':icons')?_c('icons-input',{attrs:{\"data\":_vm.iconsData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.booleanCombinedInput)?_c('link-formatter-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':mascots')?_c('mascots-input',{attrs:{\"data\":_vm.keywordData,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':proxy_url')?_c('proxy-url-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':prune')?_c('prune-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.key === ':rate_limit')?_c('rate-limit-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),([':registrations_open', ':invites_enabled'].includes(_vm.setting.key))?_c('reg-invites-input',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.reducedSelects)?_c('select-input-with-reduced-labels',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.setting.key === ':backends' || _vm.setting.key === ':args')?_c('specific-multiple-select',{attrs:{\"data\":_vm.data,\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting}}):_vm._e(),_vm._v(\" \"),(_vm.senderInput(_vm.setting))?_c('sender-input',{attrs:{\"data\":_vm.data[_vm.setting.key],\"setting-group\":_vm.settingGroup,\"setting\":_vm.setting,\"parents\":_vm.settingParent}}):_vm._e(),_vm._v(\" \"),(_vm.canBeDeleted && _vm.isTablet)?_c('el-tooltip',{staticClass:\"delete-setting-button-container\",attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"delete-setting-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":_vm.removeSetting}})],1):_vm._e()],1),_vm._v(\" \"),(_vm.setting.description && _vm.setting.type !== 'keyword')?_c('div',{staticClass:\"expl\",domProps:{\"innerHTML\":_vm._s(_vm.getFormattedDescription(_vm.setting.description))}}):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\">\n <el-form-item v-if=\"settingGroup.label || settingGroup.description\" :data-search=\"settingGroup.key || settingGroup.group\" class=\"description-container\">\n <span v-if=\"settingGroup.label\" class=\"setting-label\">{{ settingGroup.label }}</span>\n <span v-if=\"settingGroup.description\" class=\"expl no-top-margin\" v-html=\"getFormattedDescription(settingGroup.description)\"/>\n </el-form-item>\n <div v-if=\"settingGroup.key === 'Pleroma.Emails.Mailer'\">\n <div v-for=\"setting in settingGroup.children.filter(setting => !setting.group)\" :key=\"setting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"/>\n </div>\n <div\n v-for=\"setting in emailAdapterChildren\"\n :key=\"setting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"/>\n </div>\n </div>\n <div v-else>\n <div v-for=\"setting in settingGroup.children\" :key=\"setting.key\">\n <div v-if=\"!compound(setting)\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data\"\n :nested=\"false\"/>\n </div>\n <div v-if=\"compound(setting)\">\n <el-divider v-if=\"divideSetting(setting.key)\" class=\"divider\"/>\n <div v-if=\"!setting.children\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting=\"setting\"\n :data=\"data[setting.key]\"\n :nested=\"true\"/>\n </div>\n <div v-else>\n <div class=\"input-container\">\n <el-form-item :data-search=\"setting.key || setting.group\" class=\"grouped-settings-header\">\n <span slot=\"label\">\n <el-tooltip v-if=\"isDesktop && canBeDeleted(setting.key)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" style=\"margin-left:5px\" @click=\"removeSetting(setting.key)\"/>\n </el-tooltip>\n </span>\n <span class=\"label-font\">{{ setting.label }}</span>\n <el-tooltip v-if=\"canBeDeleted(setting.key) && (isMobile || isTablet)\" :content=\"$t('settings.removeFromDB')\" placement=\"bottom-end\">\n <el-button icon=\"el-icon-delete\" circle size=\"mini\" class=\"settings-delete-button\" @click=\"removeSetting(setting.key)\"/>\n </el-tooltip>\n </el-form-item>\n </div>\n <div v-for=\"subSetting in setting.children\" :key=\"subSetting.key\">\n <inputs\n :setting-group=\"settingGroup\"\n :setting-parent=\"[setting, subSetting]\"\n :setting=\"subSetting\"\n :data=\"data[setting.key]\"\n :nested=\"true\"/>\n </div>\n </div>\n <el-divider v-if=\"notLastInGroup(setting.key)\" class=\"divider\"/>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Inputs from './Inputs'\nimport i18n from '@/lang'\nimport _ from 'lodash'\nimport marked from 'marked'\n\nexport default {\n name: 'Setting',\n components: {\n Inputs\n },\n props: {\n settingGroup: {\n type: Object,\n default: function() {\n return {}\n }\n },\n data: {\n type: Object,\n default: function() {\n return {}\n }\n }\n },\n computed: {\n emailAdapterChildren() {\n const adapter = this.$store.state.settings.settings[':pleroma']['Pleroma.Emails.Mailer'][':adapter']\n return this.settingGroup.children.filter(child => child.group && child.group.includes(adapter))\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n loading() {\n return this.$store.state.settings.loading\n }\n },\n methods: {\n canBeDeleted(settingKey) {\n const { group, key } = this.settingGroup\n const existingKey = key || settingKey\n return _.get(this.$store.state.settings.db, [group, existingKey]) &&\n this.$store.state.settings.db[group][existingKey].includes(settingKey)\n },\n compound({ type, key, children }) {\n return type === 'keyword' ||\n type === 'map' ||\n type.includes('keyword') ||\n type.includes('map')\n },\n divideSetting(key) {\n return [':sslopts', ':tlsopts', ':adapter', ':poll_limits', ':queues', ':styling', ':invalidation', ':multi_factor_authentication'].includes(key)\n },\n getFormattedDescription(desc) {\n return marked(desc)\n },\n notLastInGroup(key) {\n return this.settingGroup.children.slice(-1)[0].key !== key\n },\n async removeSetting(key) {\n this.$confirm(\n this.$t('settings.removeSettingConfirmation'),\n {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(async() => {\n const config = this.settingGroup.key\n ? [{ group: this.settingGroup.group, key: this.settingGroup.key, delete: true, subkeys: [key] }]\n : [{ group: this.settingGroup.group, key, delete: true }]\n try {\n await this.$store.dispatch('RemoveSetting', config)\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.successfullyRemoved')\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n },\n updateSetting(value, tab, input) {\n this.$store.dispatch('UpdateSettings', { tab, data: { [input]: value }})\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Setting.vue?vue&type=template&id=25e5eaa4&\"\nimport script from \"./Setting.vue?vue&type=script&lang=js&\"\nexport * from \"./Setting.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Setting.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',[(_vm.settingGroup.label || _vm.settingGroup.description)?_c('el-form-item',{staticClass:\"description-container\",attrs:{\"data-search\":_vm.settingGroup.key || _vm.settingGroup.group}},[(_vm.settingGroup.label)?_c('span',{staticClass:\"setting-label\"},[_vm._v(_vm._s(_vm.settingGroup.label))]):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.description)?_c('span',{staticClass:\"expl no-top-margin\",domProps:{\"innerHTML\":_vm._s(_vm.getFormattedDescription(_vm.settingGroup.description))}}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.settingGroup.key === 'Pleroma.Emails.Mailer')?_c('div',[_vm._l((_vm.settingGroup.children.filter(function (setting) { return !setting.group; })),function(setting){return _c('div',{key:setting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data}})],1)}),_vm._v(\" \"),_vm._l((_vm.emailAdapterChildren),function(setting){return _c('div',{key:setting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data}})],1)})],2):_c('div',_vm._l((_vm.settingGroup.children),function(setting){return _c('div',{key:setting.key},[(!_vm.compound(setting))?_c('div',[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data,\"nested\":false}})],1):_vm._e(),_vm._v(\" \"),(_vm.compound(setting))?_c('div',[(_vm.divideSetting(setting.key))?_c('el-divider',{staticClass:\"divider\"}):_vm._e(),_vm._v(\" \"),(!setting.children)?_c('div',[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting\":setting,\"data\":_vm.data[setting.key],\"nested\":true}})],1):_c('div',[_c('div',{staticClass:\"input-container\"},[_c('el-form-item',{staticClass:\"grouped-settings-header\",attrs:{\"data-search\":setting.key || setting.group}},[_c('span',{attrs:{\"slot\":\"label\"},slot:\"label\"},[(_vm.isDesktop && _vm.canBeDeleted(setting.key))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticStyle:{\"margin-left\":\"5px\"},attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSetting(setting.key)}}})],1):_vm._e()],1),_vm._v(\" \"),_c('span',{staticClass:\"label-font\"},[_vm._v(_vm._s(setting.label))]),_vm._v(\" \"),(_vm.canBeDeleted(setting.key) && (_vm.isMobile || _vm.isTablet))?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.removeFromDB'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"settings-delete-button\",attrs:{\"icon\":\"el-icon-delete\",\"circle\":\"\",\"size\":\"mini\"},on:{\"click\":function($event){return _vm.removeSetting(setting.key)}}})],1):_vm._e()],1)],1),_vm._v(\" \"),_vm._l((setting.children),function(subSetting){return _c('div',{key:subSetting.key},[_c('inputs',{attrs:{\"setting-group\":_vm.settingGroup,\"setting-parent\":[setting, subSetting],\"setting\":subSetting,\"data\":_vm.data[setting.key],\"nested\":true}})],1)})],2),_vm._v(\" \"),(_vm.notLastInGroup(setting.key))?_c('el-divider',{staticClass:\"divider\"}):_vm._e()],1):_vm._e()])}),0)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"activitypubData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\":activitypub\">\n <setting :setting-group=\"activitypub\" :data=\"activitypubData\"/>\n </el-form>\n <el-divider v-if=\"user\" class=\"divider thick-line\"/>\n <el-form :model=\"userData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\":user\">\n <setting :setting-group=\"user\" :data=\"userData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'ActivityPub',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n activitypub() {\n return this.settings.description.find(setting => setting.key === ':activitypub')\n },\n activitypubData() {\n return _.get(this.settings.settings, [':pleroma', ':activitypub']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n },\n user() {\n return this.settings.description.find(setting => setting.key === ':user')\n },\n userData() {\n return _.get(this.settings.settings, [':pleroma', ':user']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ActivityPub.vue?vue&type=template&id=54a49c6e&\"\nimport script from \"./ActivityPub.vue?vue&type=script&lang=js&\"\nexport * from \"./ActivityPub.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"ActivityPub.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.activitypubData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\":activitypub\"}},[_c('setting',{attrs:{\"setting-group\":_vm.activitypub,\"data\":_vm.activitypubData}})],1),_vm._v(\" \"),(_vm.user)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.userData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\":user\"}},[_c('setting',{attrs:{\"setting-group\":_vm.user,\"data\":_vm.userData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"pleromaAuthenticatorData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"pleromaAuthenticator\" :data=\"pleromaAuthenticatorData\"/>\n </el-form>\n <el-divider v-if=\"pleromaAuthenticator\" class=\"divider thick-line\"/>\n <el-form :model=\"authData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"auth\" :data=\"authData\"/>\n </el-form>\n <el-divider v-if=\"auth\" class=\"divider thick-line\"/>\n <el-form :model=\"ldapData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"ldap\" :data=\"ldapData\"/>\n </el-form>\n <el-divider v-if=\"ldap\" class=\"divider thick-line\"/>\n <el-form :model=\"oauth2Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"oauth2\" :data=\"oauth2Data\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Authentication',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n auth() {\n return this.settings.description.find(setting => setting.key === ':auth')\n },\n authData() {\n return _.get(this.settings.settings, [':pleroma', ':auth']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n ldap() {\n return this.settings.description.find(setting => setting.key === ':ldap')\n },\n ldapData() {\n return _.get(this.settings.settings, [':pleroma', ':ldap']) || {}\n },\n loading() {\n return this.settings.loading\n },\n oauth2() {\n return this.settings.description.find(setting => setting.key === ':oauth2')\n },\n oauth2Data() {\n return _.get(this.settings.settings, [':pleroma', ':oauth2']) || {}\n },\n pleromaAuthenticator() {\n return this.settings.description.find(setting => setting.children && setting.children[0].key === 'Pleroma.Web.Auth.Authenticator')\n },\n pleromaAuthenticatorData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Auth.Authenticator']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Authentication.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Authentication.vue?vue&type=template&id=5eb8e4a0&\"\nimport script from \"./Authentication.vue?vue&type=script&lang=js&\"\nexport * from \"./Authentication.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Authentication.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Authentication.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.pleromaAuthenticatorData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.pleromaAuthenticator,\"data\":_vm.pleromaAuthenticatorData}})],1),_vm._v(\" \"),(_vm.pleromaAuthenticator)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.authData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.auth,\"data\":_vm.authData}})],1),_vm._v(\" \"),(_vm.auth)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.ldapData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.ldap,\"data\":_vm.ldapData}})],1),_vm._v(\" \"),(_vm.ldap)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.oauth2Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.oauth2,\"data\":_vm.oauth2Data}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"captchaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"captcha\" :data=\"captchaData\"/>\n </el-form>\n <el-divider v-if=\"captcha\" class=\"divider thick-line\"/>\n <el-form :model=\"kocaptchaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"kocaptcha\" :data=\"kocaptchaData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Captcha',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n captcha() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Captcha')\n },\n captchaData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Captcha']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n kocaptcha() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Captcha.Kocaptcha')\n },\n kocaptchaData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Captcha.Kocaptcha']) || {}\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Captcha.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Captcha.vue?vue&type=template&id=66ab985a&\"\nimport script from \"./Captcha.vue?vue&type=script&lang=js&\"\nexport * from \"./Captcha.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Captcha.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Captcha.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.captchaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.captcha,\"data\":_vm.captchaData}})],1),_vm._v(\" \"),(_vm.captcha)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.kocaptchaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.kocaptcha,\"data\":_vm.kocaptchaData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"esshdData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"esshd\" :data=\"esshdData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport { mapGetters } from 'vuex'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Esshd',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n esshd() {\n return this.settings.description.find(setting => setting.group === ':esshd')\n },\n esshdData() {\n return _.get(this.settings.settings, [':esshd']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n toggleEsshd(value) {\n this.$store.dispatch('ToggleEsshd', value)\n },\n updateSetting(value, tab, input) {\n this.$store.dispatch('UpdateSettings', { tab, data: { [input]: value }})\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Esshd.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Esshd.vue?vue&type=template&id=5a9ec988&\"\nimport script from \"./Esshd.vue?vue&type=script&lang=js&\"\nexport * from \"./Esshd.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Esshd.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Esshd.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.esshdData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.esshd,\"data\":_vm.esshdData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"frontendData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"frontend\" :data=\"frontendData\"/>\n </el-form>\n <el-divider v-if=\"frontend\" class=\"divider thick-line\"/>\n <el-form :model=\"staticFeData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"staticFe\" :data=\"staticFeData\"/>\n </el-form>\n <el-divider v-if=\"staticFe\" class=\"divider thick-line\"/>\n <el-form :model=\"frontendsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"frontends\" :data=\"frontendsData\"/>\n </el-form>\n <el-divider v-if=\"frontends\" class=\"divider thick-line\"/>\n <el-form :model=\"assetsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"assets\" :data=\"assetsData\"/>\n </el-form>\n <el-divider v-if=\"assets\" class=\"divider thick-line\"/>\n <el-form :model=\"emojiData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"emoji\" :data=\"emojiData\"/>\n </el-form>\n <el-divider v-if=\"emoji\" class=\"divider thick-line\"/>\n <el-form :model=\"chatData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"chat\" :data=\"chatData\"/>\n </el-form>\n <el-divider v-if=\"chat\" class=\"divider thick-line\"/>\n <el-form :model=\"markupData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"markup\" :data=\"markupData\"/>\n </el-form>\n <el-divider v-if=\"preload\" class=\"divider thick-line\"/>\n <el-form :model=\"preloadData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"preload\" :data=\"preloadData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Frontend',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n assets() {\n return this.settings.description.find(setting => setting.key === ':assets')\n },\n assetsData() {\n return _.get(this.settings.settings, [':pleroma', ':assets']) || {}\n },\n chat() {\n return this.settings.description.find(setting => setting.key === ':chat')\n },\n chatData() {\n return _.get(this.settings.settings, [':pleroma', ':chat']) || {}\n },\n emoji() {\n return this.settings.description.find(setting => setting.key === ':emoji')\n },\n emojiData() {\n return _.get(this.settings.settings, [':pleroma', ':emoji']) || {}\n },\n frontend() {\n return this.settings.description.find(setting => setting.key === ':frontend_configurations')\n },\n frontendData() {\n return _.get(this.settings.settings, [':pleroma', ':frontend_configurations']) || {}\n },\n frontends() {\n return this.settings.description.find(setting => setting.key === ':frontends')\n },\n frontendsData() {\n return _.get(this.settings.settings, [':pleroma', ':frontends']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n markup() {\n return this.settings.description.find(setting => setting.key === ':markup')\n },\n markupData() {\n return _.get(this.settings.settings, [':pleroma', ':markup']) || {}\n },\n preload() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.Preload')\n },\n preloadData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Preload']) || {}\n },\n staticFe() {\n return this.settings.description.find(setting => setting.key === ':static_fe')\n },\n staticFeData() {\n return _.get(this.settings.settings, [':pleroma', ':static_fe']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Frontend.vue?vue&type=template&id=cca7df2a&\"\nimport script from \"./Frontend.vue?vue&type=script&lang=js&\"\nexport * from \"./Frontend.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Frontend.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.frontendData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.frontend,\"data\":_vm.frontendData}})],1),_vm._v(\" \"),(_vm.frontend)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.staticFeData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.staticFe,\"data\":_vm.staticFeData}})],1),_vm._v(\" \"),(_vm.staticFe)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.frontendsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.frontends,\"data\":_vm.frontendsData}})],1),_vm._v(\" \"),(_vm.frontends)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.assetsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.assets,\"data\":_vm.assetsData}})],1),_vm._v(\" \"),(_vm.assets)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.emojiData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.emoji,\"data\":_vm.emojiData}})],1),_vm._v(\" \"),(_vm.emoji)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.chatData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.chat,\"data\":_vm.chatData}})],1),_vm._v(\" \"),(_vm.chat)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.markupData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.markup,\"data\":_vm.markupData}})],1),_vm._v(\" \"),(_vm.preload)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.preloadData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.preload,\"data\":_vm.preloadData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"gopherData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"gopher\" :data=\"gopherData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Gopher',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n gopher() {\n return this.settings.description.find(setting => setting.key === ':gopher')\n },\n gopherData() {\n return _.get(this.settings.settings, [':pleroma', ':gopher']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Gopher.vue?vue&type=template&id=6ff77a41&\"\nimport script from \"./Gopher.vue?vue&type=script&lang=js&\"\nexport * from \"./Gopher.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Gopher.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.gopherData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.gopher,\"data\":_vm.gopherData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"httpData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"http\" :data=\"httpData\"/>\n </el-form>\n <el-divider v-if=\"http\" class=\"divider thick-line\"/>\n <el-form :model=\"corsPlugData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"corsPlug\" :data=\"corsPlugData\"/>\n </el-form>\n <el-divider v-if=\"corsPlug\" class=\"divider thick-line\"/>\n <el-form :model=\"httpSecurityData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"httpSecurity\" :data=\"httpSecurityData\"/>\n </el-form>\n <el-divider v-if=\"httpSecurity\" class=\"divider thick-line\"/>\n <el-form :model=\"webCacheTtlData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"webCacheTtl\" :data=\"webCacheTtlData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'HTTP',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n corsPlug() {\n return this.settings.description.find(setting => setting.group === ':cors_plug')\n },\n corsPlugData() {\n return _.get(this.settings.settings, [':cors_plug']) || {}\n },\n http() {\n return this.settings.description.find(setting => setting.key === ':http')\n },\n httpData() {\n return _.get(this.settings.settings, [':pleroma', ':http']) || {}\n },\n httpSecurity() {\n return this.settings.description.find(setting => setting.key === ':http_security')\n },\n httpSecurityData() {\n return _.get(this.settings.settings, [':pleroma', ':http_security']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n webCacheTtl() {\n return this.settings.description.find(setting => setting.key === ':web_cache_ttl')\n },\n webCacheTtlData() {\n return _.get(this.settings.settings, [':pleroma', ':web_cache_ttl']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Http.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Http.vue?vue&type=template&id=e1a70b9a&\"\nimport script from \"./Http.vue?vue&type=script&lang=js&\"\nexport * from \"./Http.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Http.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Http.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.httpData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.http,\"data\":_vm.httpData}})],1),_vm._v(\" \"),(_vm.http)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.corsPlugData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.corsPlug,\"data\":_vm.corsPlugData}})],1),_vm._v(\" \"),(_vm.corsPlug)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.httpSecurityData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.httpSecurity,\"data\":_vm.httpSecurityData}})],1),_vm._v(\" \"),(_vm.httpSecurity)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.webCacheTtlData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.webCacheTtl,\"data\":_vm.webCacheTtlData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"instanceData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"instance\" :data=\"instanceData\"/>\n </el-form>\n <editor-input v-model=\"instancePanelContent\" :name=\"'instance-panel'\" @input=\"handleEditorUpdate\"/>\n <el-divider v-if=\"instance\" class=\"divider thick-line\"/>\n <el-form :model=\"restrictUnauthenticatedData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"restrictUnauthenticated\" :data=\"restrictUnauthenticatedData\"/>\n </el-form>\n <el-divider v-if=\"restrictUnauthenticated\" class=\"divider thick-line\"/>\n <el-form :model=\"adminTokenData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"adminToken\" :data=\"adminTokenData\"/>\n </el-form>\n <el-divider v-if=\"adminToken\" class=\"divider thick-line\"/>\n <el-form :model=\"welcomeData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"welcome\" :data=\"welcomeData\"/>\n </el-form>\n <el-divider v-if=\"welcome\" class=\"divider thick-line\"/>\n <el-form :model=\"scheduledActivityData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"scheduledActivity\" :data=\"scheduledActivityData\"/>\n </el-form>\n <el-divider v-if=\"scheduledActivity\" class=\"divider thick-line\"/>\n <el-form :model=\"manifestData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"manifest\" :data=\"manifestData\"/>\n </el-form>\n <el-divider v-if=\"manifest\" class=\"divider thick-line\"/>\n <el-form :model=\"pleromaUserData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\" data-search=\"Pleroma.User\">\n <setting :setting-group=\"pleromaUser\" :data=\"pleromaUserData\"/>\n </el-form>\n <el-divider v-if=\"pleromaUser\" class=\"divider thick-line\"/>\n <el-form :model=\"faviconsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"favicons\" :data=\"faviconsData\"/>\n </el-form>\n <el-divider v-if=\"favicons\" class=\"divider thick-line\"/>\n <el-form :model=\"uriSchemesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uriSchemes\" :data=\"uriSchemesData\"/>\n </el-form>\n <el-divider v-if=\"uriSchemes\" class=\"divider thick-line\"/>\n <el-form :model=\"feedData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"feed\" :data=\"feedData\"/>\n </el-form>\n <el-divider v-if=\"feed\" class=\"divider thick-line\"/>\n <el-form :model=\"streamerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"streamer\" :data=\"streamerData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport { EditorInput } from './inputComponents'\nimport _ from 'lodash'\n\nexport default {\n name: 'Instance',\n components: {\n EditorInput,\n Setting\n },\n data() {\n return {\n editorContent: ''\n }\n },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n adminToken() {\n return this.settings.description.find(setting => setting.children && setting.children[0].key === ':admin_token')\n },\n adminTokenData() {\n return _.get(this.settings.settings, [':pleroma', ':admin_token']) || {}\n },\n instancePanelContent: {\n get() {\n return this.$store.state.settings.instancePanel\n },\n set(content) {\n this.editorContent = content\n }\n },\n favicons() {\n return this.settings.description.find(setting => setting.key === ':instances_favicons')\n },\n faviconsData() {\n return _.get(this.settings.settings, [':pleroma', ':instances_favicons']) || {}\n },\n feed() {\n return this.settings.description.find(setting => setting.key === ':feed')\n },\n feedData() {\n return _.get(this.settings.settings, [':pleroma', ':feed']) || {}\n },\n instance() {\n return this.settings.description.find(setting => setting.key === ':instance')\n },\n instanceData() {\n return _.get(this.settings.settings, [':pleroma', ':instance']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n manifest() {\n return this.settings.description.find(setting => setting.key === ':manifest')\n },\n manifestData() {\n return _.get(this.settings.settings, [':pleroma', ':manifest']) || {}\n },\n pleromaUser() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.User')\n },\n pleromaUserData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.User']) || {}\n },\n restrictUnauthenticated() {\n return this.settings.description.find(setting => setting.key === ':restrict_unauthenticated')\n },\n restrictUnauthenticatedData() {\n return _.get(this.settings.settings, [':pleroma', ':restrict_unauthenticated']) || {}\n },\n scheduledActivity() {\n return this.$store.state.settings.description.find(setting => setting.key === 'Pleroma.ScheduledActivity')\n },\n scheduledActivityData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.ScheduledActivity']) || {}\n },\n streamer() {\n return this.$store.state.settings.description.find(setting => setting.key === ':streamer')\n },\n streamerData() {\n return _.get(this.settings.settings, [':pleroma', ':streamer']) || {}\n },\n uriSchemes() {\n return this.settings.description.find(setting => setting.key === ':uri_schemes')\n },\n uriSchemesData() {\n return _.get(this.settings.settings, [':pleroma', ':uri_schemes']) || {}\n },\n welcome() {\n return this.settings.description.find(setting => setting.key === ':welcome')\n },\n welcomeData() {\n return _.get(this.settings.settings, [':pleroma', ':welcome']) || {}\n }\n },\n async mounted() {\n await this.$store.dispatch('FetchInstanceDocument', 'instance-panel')\n },\n methods: {\n handleEditorUpdate(content) {\n this.editorContent = content\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n await this.$store.dispatch('UpdateInstanceDocs', { name: 'instance-panel', content: this.editorContent })\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Instance.vue?vue&type=template&id=2125db0b&\"\nimport script from \"./Instance.vue?vue&type=script&lang=js&\"\nexport * from \"./Instance.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Instance.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.instanceData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.instance,\"data\":_vm.instanceData}})],1),_vm._v(\" \"),_c('editor-input',{attrs:{\"name\":'instance-panel'},on:{\"input\":_vm.handleEditorUpdate},model:{value:(_vm.instancePanelContent),callback:function ($$v) {_vm.instancePanelContent=$$v},expression:\"instancePanelContent\"}}),_vm._v(\" \"),(_vm.instance)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.restrictUnauthenticatedData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.restrictUnauthenticated,\"data\":_vm.restrictUnauthenticatedData}})],1),_vm._v(\" \"),(_vm.restrictUnauthenticated)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.adminTokenData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.adminToken,\"data\":_vm.adminTokenData}})],1),_vm._v(\" \"),(_vm.adminToken)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.welcomeData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.welcome,\"data\":_vm.welcomeData}})],1),_vm._v(\" \"),(_vm.welcome)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.scheduledActivityData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.scheduledActivity,\"data\":_vm.scheduledActivityData}})],1),_vm._v(\" \"),(_vm.scheduledActivity)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.manifestData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.manifest,\"data\":_vm.manifestData}})],1),_vm._v(\" \"),(_vm.manifest)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.pleromaUserData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth,\"data-search\":\"Pleroma.User\"}},[_c('setting',{attrs:{\"setting-group\":_vm.pleromaUser,\"data\":_vm.pleromaUserData}})],1),_vm._v(\" \"),(_vm.pleromaUser)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.faviconsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.favicons,\"data\":_vm.faviconsData}})],1),_vm._v(\" \"),(_vm.favicons)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uriSchemesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uriSchemes,\"data\":_vm.uriSchemesData}})],1),_vm._v(\" \"),(_vm.uriSchemes)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.feedData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.feed,\"data\":_vm.feedData}})],1),_vm._v(\" \"),(_vm.feed)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.streamerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.streamer,\"data\":_vm.streamerData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"obanQueuesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"obanQueues\" :data=\"obanQueuesData\"/>\n </el-form>\n <el-divider v-if=\"obanQueues\" class=\"divider thick-line\"/>\n <el-form :model=\"workersData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"workers\" :data=\"workersData\"/>\n </el-form>\n <el-divider v-if=\"workers\" class=\"divider thick-line\"/>\n <el-form :model=\"activityExpirationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"activityExpiration\" :data=\"activityExpirationData\"/>\n </el-form>\n <el-divider v-if=\"activityExpiration\" class=\"divider thick-line\"/>\n <el-form :model=\"connectionsPoolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"connectionsPools\" :data=\"connectionsPoolsData\"/>\n </el-form>\n <el-divider v-if=\"connectionsPools\" class=\"divider thick-line\"/>\n <el-form :model=\"poolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"pools\" :data=\"poolsData\"/>\n </el-form>\n <el-divider v-if=\"pools\" class=\"divider thick-line\"/>\n <el-form :model=\"hackneyPoolsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"hackneyPools\" :data=\"hackneyPoolsData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'JobQueue',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n activityExpiration() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.ActivityExpiration')\n },\n activityExpirationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.ActivityExpiration']) || {}\n },\n connectionsPools() {\n return this.settings.description.find(setting => setting.key === ':connections_pool')\n },\n connectionsPoolsData() {\n return _.get(this.settings.settings, [':pleroma', ':connections_pool']) || {}\n },\n hackneyPools() {\n return this.settings.description.find(setting => setting.key === ':hackney_pools')\n },\n hackneyPoolsData() {\n return _.get(this.settings.settings, [':pleroma', ':hackney_pools']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n obanQueues() {\n return this.settings.description.find(setting => setting.key === 'Oban')\n },\n obanQueuesData() {\n return _.get(this.settings.settings, [':pleroma', 'Oban']) || {}\n },\n pools() {\n return this.settings.description.find(setting => setting.key === ':pools')\n },\n poolsData() {\n return _.get(this.settings.settings, [':pleroma', ':pools']) || {}\n },\n workers() {\n return this.settings.description.find(setting => setting.key === ':workers')\n },\n workersData() {\n return _.get(this.settings.settings, [':pleroma', ':workers']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./JobQueue.vue?vue&type=template&id=75886b5e&\"\nimport script from \"./JobQueue.vue?vue&type=script&lang=js&\"\nexport * from \"./JobQueue.vue?vue&type=script&lang=js&\"\nimport style0 from \"./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"JobQueue.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.obanQueuesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.obanQueues,\"data\":_vm.obanQueuesData}})],1),_vm._v(\" \"),(_vm.obanQueues)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.workersData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.workers,\"data\":_vm.workersData}})],1),_vm._v(\" \"),(_vm.workers)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.activityExpirationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.activityExpiration,\"data\":_vm.activityExpirationData}})],1),_vm._v(\" \"),(_vm.activityExpiration)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.connectionsPoolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.connectionsPools,\"data\":_vm.connectionsPoolsData}})],1),_vm._v(\" \"),(_vm.connectionsPools)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.poolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.pools,\"data\":_vm.poolsData}})],1),_vm._v(\" \"),(_vm.pools)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.hackneyPoolsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.hackneyPools,\"data\":_vm.hackneyPoolsData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"linkFormatterData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"linkFormatter\" :data=\"linkFormatterData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'LinkFormatter',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n linkFormatter() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Formatter')\n },\n linkFormatterData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Formatter']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LinkFormatter.vue?vue&type=template&id=7fc32c68&\"\nimport script from \"./LinkFormatter.vue?vue&type=script&lang=js&\"\nexport * from \"./LinkFormatter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"LinkFormatter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.linkFormatterData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.linkFormatter,\"data\":_vm.linkFormatterData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"loggerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"logger\" :data=\"loggerData\"/>\n </el-form>\n <el-divider v-if=\"logger\" class=\"divider thick-line\"/>\n <el-form :model=\"consoleData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"console\" :data=\"consoleData\"/>\n </el-form>\n <el-divider v-if=\"console\" class=\"divider thick-line\"/>\n <el-form :model=\"exsysloggerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"exsyslogger\" :data=\"exsysloggerData\"/>\n </el-form>\n <el-divider v-if=\"exsyslogger\" class=\"divider thick-line\"/>\n <el-form :model=\"quackData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"quack\" :data=\"quackData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Logger',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n console() {\n return this.settings.description.find(setting => setting.key === ':console')\n },\n consoleData() {\n return _.get(this.settings.settings, [':logger', ':console']) || {}\n },\n exsyslogger() {\n return this.settings.description.find(setting => setting.key === ':ex_syslogger')\n },\n exsysloggerData() {\n return _.get(this.settings.settings, [':logger', ':ex_syslogger']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n logger() {\n return this.settings.description.find(setting => setting.group === ':logger')\n },\n loggerData() {\n return _.get(this.settings.settings, [':logger', ':backends']) || {}\n },\n quack() {\n return this.settings.description.find(setting => setting.group === ':quack')\n },\n quackData() {\n return _.get(this.settings.settings, [':quack']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Logger.vue?vue&type=template&id=17a20fb1&\"\nimport script from \"./Logger.vue?vue&type=script&lang=js&\"\nexport * from \"./Logger.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Logger.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.loggerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.logger,\"data\":_vm.loggerData}})],1),_vm._v(\" \"),(_vm.logger)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.consoleData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.console,\"data\":_vm.consoleData}})],1),_vm._v(\" \"),(_vm.console)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.exsysloggerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.exsyslogger,\"data\":_vm.exsysloggerData}})],1),_vm._v(\" \"),(_vm.exsyslogger)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.quackData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.quack,\"data\":_vm.quackData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"mailerData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mailer\" :data=\"mailerData\"/>\n </el-form>\n <el-divider v-if=\"mailer\" class=\"divider thick-line\"/>\n <el-form :model=\"swooshData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"swoosh\" :data=\"swooshData\"/>\n </el-form>\n <el-divider v-if=\"swoosh\" class=\"divider thick-line\"/>\n <el-form :model=\"emailNotificationsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"emailNotifications\" :data=\"emailNotificationsData\"/>\n </el-form>\n <el-divider v-if=\"emailNotifications\" class=\"divider thick-line\"/>\n <el-form :model=\"userEmailData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"userEmail\" :data=\"userEmailData\"/>\n </el-form>\n <el-divider v-if=\"userEmail\" class=\"divider thick-line\"/>\n <el-form :model=\"newUsersDigestEmailData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"newUsersDigestEmail\" :data=\"newUsersDigestEmailData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Mailer',\n components: {\n Setting\n },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n emailNotifications() {\n return this.settings.description.find(setting => setting.key === ':email_notifications')\n },\n emailNotificationsData() {\n return _.get(this.settings.settings, [':pleroma', ':email_notifications']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n },\n mailer() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.Mailer')\n },\n mailerData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.Mailer']) || {}\n },\n newUsersDigestEmail() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.NewUsersDigestEmail')\n },\n newUsersDigestEmailData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.NewUsersDigestEmail']) || {}\n },\n swoosh() {\n return this.settings.description.find(setting => setting.group === ':swoosh')\n },\n swooshData() {\n return _.get(this.settings.settings, [':swoosh']) || {}\n },\n userEmail() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Emails.UserEmail')\n },\n userEmailData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Emails.UserEmail']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Mailer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Mailer.vue?vue&type=template&id=2076a984&\"\nimport script from \"./Mailer.vue?vue&type=script&lang=js&\"\nexport * from \"./Mailer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Mailer.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Mailer.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.mailerData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mailer,\"data\":_vm.mailerData}})],1),_vm._v(\" \"),(_vm.mailer)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.swooshData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.swoosh,\"data\":_vm.swooshData}})],1),_vm._v(\" \"),(_vm.swoosh)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.emailNotificationsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.emailNotifications,\"data\":_vm.emailNotificationsData}})],1),_vm._v(\" \"),(_vm.emailNotifications)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.userEmailData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.userEmail,\"data\":_vm.userEmailData}})],1),_vm._v(\" \"),(_vm.userEmail)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.newUsersDigestEmailData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.newUsersDigestEmail,\"data\":_vm.newUsersDigestEmailData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"mediaProxyData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mediaProxy\" :data=\"mediaProxyData\"/>\n </el-form>\n <el-divider v-if=\"mediaProxy\" class=\"divider thick-line\"/>\n <el-form v-if=\"!loading\" :model=\"httpInvalidationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"httpInvalidation\" :data=\"httpInvalidationData\"/>\n </el-form>\n <el-divider v-if=\"httpInvalidation\" class=\"divider thick-line\"/>\n <el-form v-if=\"!loading\" :model=\"scriptInvalidationData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"scriptInvalidation\" :data=\"scriptInvalidationData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'MediaProxy',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n httpInvalidation() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.MediaProxy.Invalidation.Http')\n },\n httpInvalidationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.MediaProxy.Invalidation.Http']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mediaProxy() {\n return this.settings.description.find(setting => setting.key === ':media_proxy')\n },\n mediaProxyData() {\n return _.get(this.settings.settings, [':pleroma', ':media_proxy']) || {}\n },\n scriptInvalidation() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.MediaProxy.Invalidation.Script')\n },\n scriptInvalidationData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.MediaProxy.Invalidation.Script']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MediaProxy.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MediaProxy.vue?vue&type=template&id=2a6ebcaa&\"\nimport script from \"./MediaProxy.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaProxy.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaProxy.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MediaProxy.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.mediaProxyData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mediaProxy,\"data\":_vm.mediaProxyData}})],1):_vm._e(),_vm._v(\" \"),(_vm.mediaProxy)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.httpInvalidationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.httpInvalidation,\"data\":_vm.httpInvalidationData}})],1):_vm._e(),_vm._v(\" \"),(_vm.httpInvalidation)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.scriptInvalidationData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.scriptInvalidation,\"data\":_vm.scriptInvalidationData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"metadataData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"metadata\" :data=\"metadataData\"/>\n </el-form>\n <el-divider v-if=\"metadata\" class=\"divider thick-line\"/>\n <el-form :model=\"richMediaData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"richMedia\" :data=\"richMediaData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Metadata',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n metadata() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.Metadata')\n },\n metadataData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.Metadata']) || {}\n },\n richMedia() {\n return this.settings.description.find(setting => setting.key === ':rich_media')\n },\n richMediaData() {\n return _.get(this.settings.settings, [':pleroma', ':rich_media']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Metadata.vue?vue&type=template&id=20e3cd95&\"\nimport script from \"./Metadata.vue?vue&type=script&lang=js&\"\nexport * from \"./Metadata.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Metadata.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.metadataData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.metadata,\"data\":_vm.metadataData}})],1),_vm._v(\" \"),(_vm.metadata)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.richMediaData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.richMedia,\"data\":_vm.richMediaData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <div v-for=\"setting in mrfSettings\" :key=\"setting.key\">\n <el-form v-if=\"showMrfPolicy(setting.key)\" :model=\"getSettingData(setting)\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"setting\" :data=\"getSettingData(setting)\"/>\n <el-divider v-if=\"setting\" class=\"divider thick-line\"/>\n </el-form>\n </div>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'MRF',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mrfSettings() {\n return this.settings.description.filter(el => el.tab === 'mrf')\n }\n },\n methods: {\n getSettingData(setting) {\n return _.get(this.settings.settings, [setting.group, setting.key]) || {}\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n },\n showMrfPolicy(key) {\n const selectedMrfPolicies = _.get(this.settings.settings, [':pleroma', ':mrf', ':policies']) || []\n const mappedPolicies = this.mrfSettings.reduce((acc, { key, related_policy }) => {\n if (key !== ':mrf') {\n acc[key] = related_policy\n }\n return acc\n }, {})\n return !Object.keys(mappedPolicies).includes(key) || selectedMrfPolicies.includes(mappedPolicies[key])\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MRF.vue?vue&type=template&id=5f89373d&\"\nimport script from \"./MRF.vue?vue&type=script&lang=js&\"\nexport * from \"./MRF.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"MRF.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_vm._l((_vm.mrfSettings),function(setting){return _c('div',{key:setting.key},[(_vm.showMrfPolicy(setting.key))?_c('el-form',{attrs:{\"model\":_vm.getSettingData(setting),\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":setting,\"data\":_vm.getSettingData(setting)}}),_vm._v(\" \"),(setting)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e()],1)}),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <editor-input v-model=\"termsOfServicesContent\" :name=\"'terms-of-service'\" @input=\"handleEditorUpdate\"/>\n <el-divider class=\"divider thick-line\"/>\n <el-form :model=\"mimeTypesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"mimeTypes\" :data=\"mimeTypesData\"/>\n </el-form>\n <el-divider v-if=\"mimeTypes\" class=\"divider thick-line\"/>\n <el-form :model=\"remoteIpData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"remoteIp\" :data=\"remoteIpData\"/>\n </el-form>\n <el-divider v-if=\"remoteIpData\" class=\"divider thick-line\"/>\n <el-form :model=\"modulesData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"modules\" :data=\"modulesData\"/>\n </el-form>\n <el-divider v-if=\"castAndValidate\" class=\"divider thick-line\"/>\n <el-form :model=\"castAndValidateData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"castAndValidate\" :data=\"castAndValidateData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport { EditorInput } from './inputComponents'\nimport _ from 'lodash'\n\nexport default {\n name: 'Other',\n components: { EditorInput, Setting },\n data() {\n return {\n termsOfServices: ''\n }\n },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n castAndValidate() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Web.ApiSpec.CastAndValidate')\n },\n castAndValidateData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Web.ApiSpec.CastAndValidate']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n mimeTypes() {\n return this.settings.description.find(setting => setting.group === ':mime')\n },\n mimeTypesData() {\n return _.get(this.settings.settings, [':mime']) || {}\n },\n modules() {\n return this.settings.description.find(setting => setting.key === ':modules')\n },\n modulesData() {\n return _.get(this.settings.settings, [':pleroma', ':modules']) || {}\n },\n remoteIp() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Plugs.RemoteIp')\n },\n remoteIpData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Plugs.RemoteIp']) || {}\n },\n termsOfServicesContent: {\n get() {\n return this.$store.state.settings.termsOfServices\n },\n set(content) {\n this.termsOfServices = content\n }\n }\n },\n async mounted() {\n await this.$store.dispatch('FetchInstanceDocument', 'terms-of-service')\n },\n methods: {\n handleEditorUpdate(content) {\n this.editorContent = content\n },\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n await this.$store.dispatch('UpdateInstanceDocs', { name: 'terms-of-service', content: this.editorContent })\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Other.vue?vue&type=template&id=0adcbe4a&\"\nimport script from \"./Other.vue?vue&type=script&lang=js&\"\nexport * from \"./Other.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Other.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('editor-input',{attrs:{\"name\":'terms-of-service'},on:{\"input\":_vm.handleEditorUpdate},model:{value:(_vm.termsOfServicesContent),callback:function ($$v) {_vm.termsOfServicesContent=$$v},expression:\"termsOfServicesContent\"}}),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider thick-line\"}),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.mimeTypesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.mimeTypes,\"data\":_vm.mimeTypesData}})],1),_vm._v(\" \"),(_vm.mimeTypes)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.remoteIpData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.remoteIp,\"data\":_vm.remoteIpData}})],1),_vm._v(\" \"),(_vm.remoteIpData)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.modulesData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.modules,\"data\":_vm.modulesData}})],1),_vm._v(\" \"),(_vm.castAndValidate)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.castAndValidateData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.castAndValidate,\"data\":_vm.castAndValidateData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"rateLimitersData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"rateLimiters\" :data=\"rateLimitersData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'RateLimiters',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n rateLimiters() {\n return this.settings.description.find(setting => setting.key === ':rate_limit')\n },\n rateLimitersData() {\n return _.get(this.settings.settings, [':pleroma', ':rate_limit']) || {}\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.$store.state.settings.loading\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimiters.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RateLimiters.vue?vue&type=template&id=7dcebd79&\"\nimport script from \"./RateLimiters.vue?vue&type=script&lang=js&\"\nexport * from \"./RateLimiters.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RateLimiters.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"RateLimiters.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.rateLimitersData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.rateLimiters,\"data\":_vm.rateLimitersData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Relays.vue?vue&type=script&lang=js&\"","<template>\n <div v-if=\"!loading\" class=\"relays-container\">\n <div class=\"follow-relay-container\">\n <el-input v-model=\"newRelay\" :placeholder=\"$t('settings.followRelay')\" class=\"follow-relay\" @keyup.enter.native=\"followRelay\"/>\n <el-button @click.native=\"followRelay\">{{ $t('settings.follow') }}</el-button>\n </div>\n <el-table :data=\"relays\">\n <el-table-column\n :label=\"$t('settings.instanceUrl')\"\n prop=\"actor\"/>\n <el-table-column\n :label=\"$t('settings.followedBack')\"\n :width=\"getLabelWidth\"\n prop=\"followed_back\"\n align=\"center\">\n <template slot-scope=\"scope\">\n <i :class=\"scope.row.followed_back ? 'el-icon-check' : 'el-icon-minus'\"/>\n </template>\n </el-table-column>\n <el-table-column :label=\"$t('table.actions')\" :width=\"getLabelWidth\" fixed=\"right\" align=\"center\">\n <template slot-scope=\"scope\">\n <el-button\n type=\"text\"\n size=\"small\"\n @click.native=\"deleteRelay(scope.row.actor)\">\n {{ $t('table.unfollow') }}\n </el-button>\n </template>\n </el-table-column>\n </el-table>\n </div>\n</template>\n\n<script>\nexport default {\n name: 'Relays',\n data() {\n return {\n newRelay: ''\n }\n },\n computed: {\n getLabelWidth() {\n return this.isDesktop ? '130px' : '85px'\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n loading() {\n return this.$store.state.relays.loading\n },\n relays() {\n return this.$store.state.relays.fetchedRelays\n }\n },\n mounted() {\n this.$store.dispatch('FetchRelays')\n },\n methods: {\n followRelay() {\n this.$store.dispatch('AddRelay', this.newRelay)\n this.newRelay = ''\n },\n deleteRelay(relay) {\n this.$store.dispatch('DeleteRelay', relay)\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import { render, staticRenderFns } from \"./Relays.vue?vue&type=template&id=ea95544e&\"\nimport script from \"./Relays.vue?vue&type=script&lang=js&\"\nexport * from \"./Relays.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Relays.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Relays.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"relays-container\"},[_c('div',{staticClass:\"follow-relay-container\"},[_c('el-input',{staticClass:\"follow-relay\",attrs:{\"placeholder\":_vm.$t('settings.followRelay')},nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.followRelay($event)}},model:{value:(_vm.newRelay),callback:function ($$v) {_vm.newRelay=$$v},expression:\"newRelay\"}}),_vm._v(\" \"),_c('el-button',{nativeOn:{\"click\":function($event){return _vm.followRelay($event)}}},[_vm._v(_vm._s(_vm.$t('settings.follow')))])],1),_vm._v(\" \"),_c('el-table',{attrs:{\"data\":_vm.relays}},[_c('el-table-column',{attrs:{\"label\":_vm.$t('settings.instanceUrl'),\"prop\":\"actor\"}}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('settings.followedBack'),\"width\":_vm.getLabelWidth,\"prop\":\"followed_back\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('i',{class:scope.row.followed_back ? 'el-icon-check' : 'el-icon-minus'})]}}],null,false,237257305)}),_vm._v(\" \"),_c('el-table-column',{attrs:{\"label\":_vm.$t('table.actions'),\"width\":_vm.getLabelWidth,\"fixed\":\"right\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('el-button',{attrs:{\"type\":\"text\",\"size\":\"small\"},nativeOn:{\"click\":function($event){return _vm.deleteRelay(scope.row.actor)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('table.unfollow'))+\"\\n \")])]}}],null,false,877363589)})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form :model=\"uploadData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"upload\" :data=\"uploadData\"/>\n </el-form>\n <el-divider v-if=\"upload\" class=\"divider thick-line\"/>\n <el-form v-if=\"showUploadersLocal\" :model=\"uploadersLocalData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadersLocal\" :data=\"uploadersLocalData\"/>\n <el-divider v-if=\"uploadersLocal\" class=\"divider thick-line\"/>\n </el-form>\n <el-form v-if=\"showUploadersS3\" :model=\"s3Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"s3\" :data=\"s3Data\"/>\n <el-divider v-if=\"s3\" class=\"divider thick-line\"/>\n </el-form>\n <el-form v-if=\"showUploadersS3\" :model=\"uploadersS3Data\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadersS3\" :data=\"uploadersS3Data\"/>\n <el-divider v-if=\"uploadersS3\" class=\"divider thick-line\"/>\n </el-form>\n <el-form :model=\"uploadFilterMogrifyData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadFilterMogrify\" :data=\"uploadFilterMogrifyData\"/>\n </el-form>\n <el-divider v-if=\"uploadFilterMogrify\" class=\"divider thick-line\"/>\n <el-form :model=\"uploadAnonymizeFilenameData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"uploadAnonymizeFilename\" :data=\"uploadAnonymizeFilenameData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'Upload',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n s3() {\n return this.settings.description.find(setting => setting.key === ':s3')\n },\n s3Data() {\n return _.get(this.settings.settings, [':ex_aws', ':s3']) || {}\n },\n showUploadersS3() {\n const uploader = _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload', ':uploader'])\n return uploader === 'Pleroma.Uploaders.S3'\n },\n showUploadersLocal() {\n const uploader = _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload', ':uploader'])\n return uploader === 'Pleroma.Uploaders.Local'\n },\n upload() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload')\n },\n uploadData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload']) || {}\n },\n uploadersLocal() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Uploaders.Local')\n },\n uploadersLocalData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Uploaders.Local']) || {}\n },\n uploadersS3() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Uploaders.S3')\n },\n uploadersS3Data() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Uploaders.S3']) || {}\n },\n uploadFilterMogrify() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload.Filter.Mogrify')\n },\n uploadFilterMogrifyData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload.Filter.Mogrify']) || {}\n },\n uploadAnonymizeFilename() {\n return this.settings.description.find(setting => setting.key === 'Pleroma.Upload.Filter.AnonymizeFilename')\n },\n uploadAnonymizeFilenameData() {\n return _.get(this.settings.settings, [':pleroma', 'Pleroma.Upload.Filter.AnonymizeFilename']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=ae996124&\"\nimport script from \"./Upload.vue?vue&type=script&lang=js&\"\nexport * from \"./Upload.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Upload.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"Upload.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[_c('el-form',{attrs:{\"model\":_vm.uploadData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.upload,\"data\":_vm.uploadData}})],1),_vm._v(\" \"),(_vm.upload)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),(_vm.showUploadersLocal)?_c('el-form',{attrs:{\"model\":_vm.uploadersLocalData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadersLocal,\"data\":_vm.uploadersLocalData}}),_vm._v(\" \"),(_vm.uploadersLocal)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.showUploadersS3)?_c('el-form',{attrs:{\"model\":_vm.s3Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.s3,\"data\":_vm.s3Data}}),_vm._v(\" \"),(_vm.s3)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.showUploadersS3)?_c('el-form',{attrs:{\"model\":_vm.uploadersS3Data,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadersS3,\"data\":_vm.uploadersS3Data}}),_vm._v(\" \"),(_vm.uploadersS3)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uploadFilterMogrifyData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadFilterMogrify,\"data\":_vm.uploadFilterMogrifyData}})],1),_vm._v(\" \"),(_vm.uploadFilterMogrify)?_c('el-divider',{staticClass:\"divider thick-line\"}):_vm._e(),_vm._v(\" \"),_c('el-form',{attrs:{\"model\":_vm.uploadAnonymizeFilenameData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.uploadAnonymizeFilename,\"data\":_vm.uploadAnonymizeFilenameData}})],1),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"!loading\" :class=\"isSidebarOpen\" class=\"form-container\">\n <el-form v-if=\"!loading\" :model=\"vapidDetailsData\" :label-position=\"labelPosition\" :label-width=\"labelWidth\">\n <setting :setting-group=\"vapidDetails\" :data=\"vapidDetailsData\"/>\n </el-form>\n <div class=\"submit-button-container\">\n <el-button class=\"submit-button\" type=\"primary\" @click=\"onSubmit\">Submit</el-button>\n </div>\n </div>\n</template>\n\n<script>\nimport { mapGetters } from 'vuex'\nimport i18n from '@/lang'\nimport Setting from './Setting'\nimport _ from 'lodash'\n\nexport default {\n name: 'WebPush',\n components: { Setting },\n computed: {\n ...mapGetters([\n 'settings'\n ]),\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'sidebar-opened' : 'sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n labelPosition() {\n return this.isMobile ? 'top' : 'right'\n },\n labelWidth() {\n if (this.isMobile) {\n return '120px'\n } else if (this.isTablet) {\n return '200px'\n } else {\n return '280px'\n }\n },\n loading() {\n return this.settings.loading\n },\n vapidDetails() {\n return this.settings.description.find(setting => setting.key === ':vapid_details')\n },\n vapidDetailsData() {\n return _.get(this.settings.settings, [':web_push_encryption', ':vapid_details']) || {}\n }\n },\n methods: {\n async onSubmit() {\n try {\n await this.$store.dispatch('SubmitChanges')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.success')\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n@import '../styles/main';\n@include settings\n</style>\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WebPush.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WebPush.vue?vue&type=template&id=3ddc7c01&\"\nimport script from \"./WebPush.vue?vue&type=script&lang=js&\"\nexport * from \"./WebPush.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WebPush.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"WebPush.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.loading)?_c('div',{staticClass:\"form-container\",class:_vm.isSidebarOpen},[(!_vm.loading)?_c('el-form',{attrs:{\"model\":_vm.vapidDetailsData,\"label-position\":_vm.labelPosition,\"label-width\":_vm.labelWidth}},[_c('setting',{attrs:{\"setting-group\":_vm.vapidDetails,\"data\":_vm.vapidDetailsData}})],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"submit-button-container\"},[_c('el-button',{staticClass:\"submit-button\",attrs:{\"type\":\"primary\"},on:{\"click\":_vm.onSubmit}},[_vm._v(\"Submit\")])],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div :class=\"rebootIsSidebarOpen\" class=\"settings-container\">\n <div class=\"reboot-button-container\">\n <reboot-button/>\n </div>\n <div v-if=\"isDesktop\">\n <div :class=\"isSidebarOpen\" class=\"settings-header-container\">\n <h1 class=\"settings-header\">{{ $t('settings.settings') }}</h1>\n <div class=\"docs-search-container\">\n <el-link\n :underline=\"false\"\n href=\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\"\n target=\"_blank\">\n <el-button class=\"settings-docs-button\">\n <span>\n <i class=\"el-icon-document\"/>\n {{ $t('settings.seeDocs') }}\n </span>\n </el-button>\n </el-link>\n <el-autocomplete\n v-model=\"searchQuery\"\n :fetch-suggestions=\"querySearch\"\n :trigger-on-focus=\"false\"\n clearable\n placeholder=\"Search\"\n prefix-icon=\"el-icon-search\"\n class=\"settings-search-input\"\n @select=\"handleSearchSelect\"/>\n </div>\n </div>\n <el-tabs v-model=\"activeTab\" tab-position=\"left\">\n <el-tab-pane\n v-for=\"(value, componentName) in tabs\"\n :label=\"$t(value.label)\"\n :disabled=\"configDisabled || settingsCantBeChanged(value.settings)\"\n :key=\"componentName\"\n :name=\"componentName\"\n lazy>\n <component :is=\"componentName\"/>\n </el-tab-pane>\n </el-tabs>\n </div>\n <div v-if=\"isMobile || isTablet\">\n <div :class=\"isSidebarOpen\" class=\"settings-header-container\">\n <h1 class=\"settings-header\">{{ $t('settings.settings') }}</h1>\n </div>\n <div class=\"nav-container\">\n <el-select v-model=\"activeTab\" class=\"settings-menu\" placeholder=\"Select\">\n <el-option\n v-for=\"item in options\"\n :key=\"item.value\"\n :label=\"item.label\"\n :value=\"item.value\"\n :disabled=\"configDisabled\"/>\n </el-select>\n <el-link\n :underline=\"false\"\n href=\"https://docs-develop.pleroma.social/backend/administration/CLI_tasks/config/\"\n target=\"_blank\">\n <el-button class=\"settings-docs-button\">\n <span>\n <i class=\"el-icon-document\"/>\n {{ $t('settings.seeDocs') }}\n </span>\n </el-button>\n </el-link>\n </div>\n <div class=\"settings-search-input-container\"/>\n <activity-pub v-if=\"activeTab === 'activityPub'\"/>\n <authentication v-if=\"activeTab === 'auth'\"/>\n <link-formatter v-if=\"activeTab === 'linkFormatter'\"/>\n <esshd v-if=\"activeTab === 'esshd'\"/>\n <captcha v-if=\"activeTab === 'captcha'\"/>\n <frontend v-if=\"activeTab === 'frontend'\"/>\n <gopher v-if=\"activeTab === 'gopher'\"/>\n <http v-if=\"activeTab === 'http'\"/>\n <instance v-if=\"activeTab === 'instance'\"/>\n <job-queue v-if=\"activeTab === 'jobQueue'\"/>\n <logger v-if=\"activeTab === 'logger'\"/>\n <mailer v-if=\"activeTab === 'mailer'\"/>\n <media-proxy v-if=\"activeTab === 'mediaProxy'\"/>\n <metadata v-if=\"activeTab === 'metadata'\"/>\n <mrf v-if=\"activeTab === 'mrf'\"/>\n <rate-limiters v-if=\"activeTab === 'rateLimiters'\"/>\n <relays v-if=\"activeTab === 'relays'\"/>\n <web-push v-if=\"activeTab === 'webPush'\"/>\n <upload v-if=\"activeTab === 'upload'\"/>\n <other v-if=\"activeTab === 'other'\"/>\n </div>\n </div>\n</template>\n\n<script>\nimport i18n from '@/lang'\nimport { tabs } from './components/tabs'\nimport {\n ActivityPub,\n Authentication,\n Captcha,\n Esshd,\n Frontend,\n Gopher,\n Http,\n Instance,\n JobQueue,\n LinkFormatter,\n Logger,\n Mailer,\n MediaProxy,\n Metadata,\n Mrf,\n Other,\n RateLimiters,\n Relays,\n Upload,\n WebPush\n} from './components'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n components: {\n ActivityPub,\n Authentication,\n Captcha,\n Esshd,\n Frontend,\n Gopher,\n Http,\n Instance,\n JobQueue,\n LinkFormatter,\n Logger,\n Mailer,\n MediaProxy,\n Metadata,\n Mrf,\n Other,\n RateLimiters,\n Relays,\n RebootButton,\n Upload,\n WebPush\n },\n data() {\n return {\n options: [\n { value: 'activityPub', label: i18n.t('settings.activityPub') },\n { value: 'auth', label: i18n.t('settings.auth') },\n { value: 'linkFormatter', label: i18n.t('settings.linkFormatter') },\n { value: 'esshd', label: i18n.t('settings.esshd') },\n { value: 'captcha', label: i18n.t('settings.captcha') },\n { value: 'frontend', label: i18n.t('settings.frontend') },\n { value: 'gopher', label: i18n.t('settings.gopher') },\n { value: 'http', label: i18n.t('settings.http') },\n { value: 'instance', label: i18n.t('settings.instance') },\n { value: 'jobQueue', label: i18n.t('settings.jobQueue') },\n { value: 'logger', label: i18n.t('settings.logger') },\n { value: 'mailer', label: i18n.t('settings.mailer') },\n { value: 'mediaProxy', label: i18n.t('settings.mediaProxy') },\n { value: 'metadata', label: i18n.t('settings.metadata') },\n { value: 'mrf', label: i18n.t('settings.mrf') },\n { value: 'rateLimiters', label: i18n.t('settings.rateLimiters') },\n { value: 'relays', label: i18n.t('settings.relays') },\n { value: 'webPush', label: i18n.t('settings.webPush') },\n { value: 'upload', label: i18n.t('settings.upload') },\n { value: 'other', label: i18n.t('settings.other') }\n ],\n searchQuery: ''\n }\n },\n computed: {\n activeTab: {\n get() {\n return this.$store.state.settings.activeTab\n },\n set(tab) {\n this.$store.dispatch('SetActiveTab', tab)\n }\n },\n configDisabled() {\n return this.$store.state.settings.configDisabled\n },\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n isMobile() {\n return this.$store.state.app.device === 'mobile'\n },\n isSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'header-sidebar-opened' : 'header-sidebar-closed'\n },\n isTablet() {\n return this.$store.state.app.device === 'tablet'\n },\n rebootIsSidebarOpen() {\n return this.$store.state.app.sidebar.opened ? 'reboot-sidebar-opened' : 'reboot-sidebar-closed'\n },\n searchData() {\n return this.$store.state.settings.searchData\n },\n tabs() {\n return tabs(this.$store.state.settings.description)\n }\n },\n mounted: function() {\n this.$store.dispatch('GetNodeInfo')\n this.$store.dispatch('NeedReboot')\n this.$store.dispatch('FetchSettings')\n },\n methods: {\n async handleSearchSelect(selectedValue) {\n const tab = Object.keys(this.tabs).find(tab => {\n return this.tabs[tab].settings.includes(selectedValue.group === ':pleroma' ? selectedValue.key : selectedValue.group)\n })\n await this.$store.dispatch('SetActiveTab', tab)\n const selectedSetting = document.querySelector(`[data-search=\"${selectedValue.key}\"]`)\n if (selectedSetting) {\n selectedSetting.scrollIntoView({ block: 'start', behavior: 'smooth' })\n }\n },\n querySearch(queryString, cb) {\n const results = this.searchData.filter(searchObj => searchObj.search.find(el => el.includes(queryString.toLowerCase())))\n .map(searchObj => {\n return { value: `${searchObj.label} in ${searchObj.groupLabel}`, group: searchObj.groupKey, key: searchObj.key }\n })\n cb(results)\n },\n settingsCantBeChanged(settings) {\n const existingSettings = settings.filter(setting => {\n if ([':esshd', ':cors_plug', ':quack', ':logger', ':swoosh', ':mime'].includes(setting)) {\n return this.$store.state.settings.description.findIndex(el => el.group === setting) !== -1\n } else if (setting === 'Pleroma.Web.Auth.Authenticator' || setting === ':admin_token') {\n return this.$store.state.settings.description.findIndex(el => el.children[0].key === setting) !== -1\n } else if (setting === 'relays') {\n return [setting]\n } else {\n return this.$store.state.settings.description.findIndex(el => el.key === setting) !== -1\n }\n })\n return existingSettings.length === 0\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n@import './styles/main';\n@include settings\n</style>\n","export const tabs = description => {\n return {\n 'activity-pub': {\n label: 'settings.activityPub',\n settings: [':activitypub', ':user']\n },\n 'authentication': {\n label: 'settings.auth',\n settings: [':auth', ':ldap', ':oauth2', 'Pleroma.Web.Auth.Authenticator']\n },\n 'esshd': {\n label: 'settings.esshd',\n settings: [':esshd']\n },\n 'captcha': {\n label: 'settings.captcha',\n settings: ['Pleroma.Captcha', 'Pleroma.Captcha.Kocaptcha']\n },\n 'frontend': {\n label: 'settings.frontend',\n settings: [':assets', ':chat', ':frontends', ':emoji', ':frontend_configurations', ':markup', ':static_fe']\n },\n 'gopher': {\n label: 'settings.gopher',\n settings: [':gopher']\n },\n 'http': {\n label: 'settings.http',\n settings: [':cors_plug', ':http', ':http_security', ':web_cache_ttl']\n },\n 'instance': {\n label: 'settings.instance',\n settings: [':admin_token', ':instance', ':instance_panel', ':instances_favicons', ':welcome', ':manifest', 'Pleroma.User', 'Pleroma.ScheduledActivity', ':uri_schemes', ':feed', ':streamer', ':restrict_unauthenticated']\n },\n 'job-queue': {\n label: 'settings.jobQueue',\n settings: ['Pleroma.ActivityExpiration', ':connections_pool', ':hackney_pools', 'Oban', ':pools', ':workers']\n },\n 'link-formatter': {\n label: 'settings.linkFormatter',\n settings: ['Pleroma.Formatter']\n },\n 'logger': {\n label: 'settings.logger',\n settings: [':console', ':ex_syslogger', ':quack', ':logger']\n },\n 'mailer': {\n label: 'settings.mailer',\n settings: [':email_notifications', 'Pleroma.Emails.Mailer', 'Pleroma.Emails.UserEmail', ':swoosh', 'Pleroma.Emails.NewUsersDigestEmail']\n },\n 'media-proxy': {\n label: 'settings.mediaProxy',\n settings: [':media_proxy', 'Pleroma.Web.MediaProxy.Invalidation.Http', 'Pleroma.Web.MediaProxy.Invalidation.Script']\n },\n 'metadata': {\n label: 'settings.metadata',\n settings: ['Pleroma.Web.Metadata', ':rich_media']\n },\n 'mrf': {\n label: 'settings.mrf',\n settings: description.filter(el => el.tab === 'mrf').map(setting => setting.key)\n },\n 'rate-limiters': {\n label: 'settings.rateLimiters',\n settings: [':rate_limit']\n },\n 'relays': {\n label: 'settings.relays',\n settings: ['relays']\n },\n 'web-push': {\n label: 'settings.webPush',\n settings: [':vapid_details']\n },\n 'upload': {\n label: 'settings.upload',\n settings: ['Pleroma.Upload.Filter.AnonymizeFilename', 'Pleroma.Upload.Filter.Mogrify', 'Pleroma.Uploaders.S3', 'Pleroma.Uploaders.Local', 'Pleroma.Upload', ':s3']\n },\n 'other': {\n label: 'settings.other',\n settings: [':mime', 'Pleroma.Plugs.RemoteIp', ':modules', 'Pleroma.Web.ApiSpec.CastAndValidate', ':terms_of_services']\n }\n }\n}\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=82f78b3e&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=82f78b3e&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"82f78b3e\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Instance.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Other.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MRF.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Frontend.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RateLimitInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./JobQueue.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Logger.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProxyUrlInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditableKeywordInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Setting.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActivityPub.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IconsInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LinkFormatter.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gopher.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Inputs.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/index.js??ref--11-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageUploadInput.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\""],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-commons.7a41457e.js b/priv/static/adminfe/static/js/chunk-commons.7a41457e.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-commons"],{Kw8l:function(t,s,e){"use strict";var a=e("cRgN");e.n(a).a},cRgN:function(t,s,e){},ot3S:function(t,s,e){"use strict";var a=e("wd/R"),n=e.n(a),i={name:"Status",props:{account:{type:Object,required:!1,default:function(){return{}}},fetchStatusesByInstance:{type:Boolean,required:!1,default:!1},showCheckbox:{type:Boolean,required:!0,default:!1},status:{type:Object,required:!0},page:{type:Number,required:!1,default:0},userId:{type:String,required:!1,default:""},godmode:{type:Boolean,required:!1,default:!1}},data:function(){return{showHiddenStatus:!1}},methods:{capitalizeFirstLetter:function(t){return t.charAt(0).toUpperCase()+t.slice(1)},changeStatus:function(t,s,e){this.$store.dispatch("ChangeStatusScope",{statusId:t,isSensitive:s,visibility:e,reportCurrentPage:this.page,userId:this.userId,godmode:this.godmode,fetchStatusesByInstance:this.fetchStatusesByInstance})},deleteStatus:function(t){var s=this;this.$confirm("Are you sure you want to delete this status?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteStatus",{statusId:t,reportCurrentPage:s.page,userId:s.userId,godmode:s.godmode,fetchStatusesByInstance:s.fetchStatusesByInstance}),s.$message({type:"success",message:"Delete completed"})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},handleStatusSelection:function(t){this.$emit("status-selection",t)},handleRouteChange:function(){this.$router.push({name:"StatusShow",params:{id:this.status.id}})},optionPercent:function(t,s){var e=t.options.reduce(function(t,s){return t+s.votes_count},0);return 0===e?0:+(s.votes_count/e*100).toFixed(1)},parseTimestamp:function(t){return n()(t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,s,e){return e?t[s]&&t[e]:t[s]}}},o=(e("Kw8l"),e("KHd+")),r=Object(o.a)(i,function(){var t=this,s=t.$createElement,e=t._self._c||s;return t.status.deleted?e("el-card",{staticClass:"status-card"},[e("div",{attrs:{slot:"header"},slot:"header"},[e("div",{staticClass:"status-header"},[e("div",{staticClass:"status-account-container"},[e("div",{staticClass:"status-account"},[e("h4",{staticClass:"status-deleted"},[t._v(t._s(t.$t("reports.statusDeleted")))])])])])]),t._v(" "),e("div",{staticClass:"status-body"},[t.status.content?e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}):e("span",{staticClass:"status-without-content"},[t._v("no content")])]),t._v(" "),e("div",{staticClass:"status-footer"},[t.status.created_at?e("span",{staticClass:"status-created-at"},[t._v(t._s(t.parseTimestamp(t.status.created_at)))]):t._e(),t._v(" "),t.status.url?e("a",{staticClass:"account",attrs:{href:t.status.url,target:"_blank"},on:{click:function(t){t.stopPropagation()}}},[t._v("\n Open status in instance\n "),e("i",{staticClass:"el-icon-top-right"})]):t._e()])]):e("el-card",{staticClass:"status-card",nativeOn:{click:function(s){return t.handleRouteChange()}}},[e("div",{attrs:{slot:"header"},slot:"header"},[e("div",{staticClass:"status-header"},[e("div",{staticClass:"status-account-container"},[e("div",{staticClass:"status-account"},[t.showCheckbox?e("el-checkbox",{staticClass:"status-checkbox",on:{change:function(s){return t.handleStatusSelection(t.account)}}}):t._e(),t._v(" "),t.propertyExists(t.account,"id")?e("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.account.id}}},nativeOn:{click:function(t){t.stopPropagation()}}},[e("div",{staticClass:"status-card-header"},[t.propertyExists(t.account,"avatar")?e("img",{staticClass:"status-avatar-img",attrs:{src:t.account.avatar}}):t._e(),t._v(" "),t.propertyExists(t.account,"nickname")?e("span",{staticClass:"status-account-name"},[t._v(t._s(t.account.nickname))]):e("span",[t.propertyExists(t.account,"nickname")?e("span",{staticClass:"status-account-name"},[t._v("\n "+t._s(t.account.nickname)+"\n ")]):e("span",{staticClass:"status-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])])])]):t._e()],1)]),t._v(" "),e("div",{staticClass:"status-actions"},[e("div",{staticClass:"status-tags"},[t.status.sensitive?e("el-tag",{attrs:{type:"warning",size:"large"}},[t._v(t._s(t.$t("reports.sensitive")))]):t._e(),t._v(" "),e("el-tag",{attrs:{size:"large"}},[t._v(t._s(t.capitalizeFirstLetter(t.status.visibility)))])],1),t._v(" "),e("el-dropdown",{attrs:{trigger:"click"},nativeOn:{click:function(t){t.stopPropagation()}}},[e("el-button",{staticClass:"status-actions-button",attrs:{plain:"",size:"small",icon:"el-icon-edit"}},[t._v("\n "+t._s(t.$t("reports.changeScope"))),e("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),e("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t.status.sensitive?t._e():e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,!0,t.status.visibility)}}},[t._v("\n "+t._s(t.$t("reports.addSensitive"))+"\n ")]),t._v(" "),t.status.sensitive?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,!1,t.status.visibility)}}},[t._v("\n "+t._s(t.$t("reports.removeSensitive"))+"\n ")]):t._e(),t._v(" "),"public"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"public")}}},[t._v("\n "+t._s(t.$t("reports.public"))+"\n ")]):t._e(),t._v(" "),"private"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"private")}}},[t._v("\n "+t._s(t.$t("reports.private"))+"\n ")]):t._e(),t._v(" "),"unlisted"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"unlisted")}}},[t._v("\n "+t._s(t.$t("reports.unlisted"))+"\n ")]):t._e(),t._v(" "),e("el-dropdown-item",{nativeOn:{click:function(s){return t.deleteStatus(t.status.id)}}},[t._v("\n "+t._s(t.$t("reports.deleteStatus"))+"\n ")])],1)],1)],1)])]),t._v(" "),e("div",{staticClass:"status-body"},[t.status.spoiler_text?e("div",[e("strong",[t._v(t._s(t.status.spoiler_text))]),t._v(" "),t.showHiddenStatus?t._e():e("el-button",{staticClass:"show-more-button",attrs:{size:"mini"},on:{click:function(s){t.showHiddenStatus=!0}}},[t._v("Show more")]),t._v(" "),t.showHiddenStatus?e("el-button",{staticClass:"show-more-button",attrs:{size:"mini"},on:{click:function(s){t.showHiddenStatus=!1}}},[t._v("Show less")]):t._e(),t._v(" "),t.showHiddenStatus?e("div",[e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}),t._v(" "),t.status.poll?e("div",{staticClass:"poll"},[e("ul",t._l(t.status.poll.options,function(s,a){return e("li",{key:a},[t._v("\n "+t._s(s.title)+"\n "),e("el-progress",{attrs:{percentage:t.optionPercent(t.status.poll,s)}})],1)}),0)]):t._e(),t._v(" "),t._l(t.status.media_attachments,function(t,s){return e("div",{key:s,staticClass:"image"},[e("img",{attrs:{src:t.preview_url}})])})],2):t._e()],1):t._e(),t._v(" "),t.status.spoiler_text?t._e():e("div",[e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}),t._v(" "),t.status.poll?e("div",{staticClass:"poll"},[e("ul",t._l(t.status.poll.options,function(s,a){return e("li",{key:a},[t._v("\n "+t._s(s.title)+"\n "),e("el-progress",{attrs:{percentage:t.optionPercent(t.status.poll,s)}})],1)}),0)]):t._e(),t._v(" "),t._l(t.status.media_attachments,function(t,s){return e("div",{key:s,staticClass:"image"},[e("img",{attrs:{src:t.preview_url}})])})],2),t._v(" "),e("div",{staticClass:"status-footer"},[e("span",{staticClass:"status-created-at"},[t._v(t._s(t.parseTimestamp(t.status.created_at)))]),t._v(" "),t.status.url?e("a",{staticClass:"account",attrs:{href:t.status.url,target:"_blank"},on:{click:function(t){t.stopPropagation()}}},[t._v("\n "+t._s(t.$t("statuses.openStatusInInstance"))+"\n "),e("i",{staticClass:"el-icon-top-right"})]):t._e()])])])},[],!1,null,null,null);r.options.__file="index.vue";s.a=r.exports},rIUS:function(t,s,e){"use strict";var a=e("o0o1"),n=e.n(a),i=e("yXPU"),o=e.n(i),r=e("mSNy"),c={name:"RebootButton",computed:{needReboot:function(){return this.$store.state.app.needReboot}},methods:{restartApp:function(){var t=this;return o()(n.a.mark(function s(){return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.prev=0,s.next=3,t.$store.dispatch("RestartApplication");case 3:s.next=8;break;case 5:return s.prev=5,s.t0=s.catch(0),s.abrupt("return");case 8:t.$message({type:"success",message:r.a.t("settings.restartSuccess")});case 9:case"end":return s.stop()}},s,null,[[0,5]])}))()}}},u=e("KHd+"),l=Object(u.a)(c,function(){var t=this.$createElement,s=this._self._c||t;return this.needReboot?s("el-tooltip",{attrs:{content:this.$t("settings.restartApp"),placement:"bottom-end"}},[s("el-button",{staticClass:"reboot-button",attrs:{type:"warning"},on:{click:this.restartApp}},[s("span",[s("i",{staticClass:"el-icon-refresh"}),this._v("\n "+this._s(this.$t("settings.instanceReboot"))+"\n ")])])],1):this._e()},[],!1,null,null,null);l.options.__file="index.vue";s.a=l.exports}}]); +//# sourceMappingURL=chunk-commons.7a41457e.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-commons.7a41457e.js.map b/priv/static/adminfe/static/js/chunk-commons.7a41457e.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/components/Status/index.vue?aecc","webpack:///./src/components/Status/index.vue?b843","webpack:///./src/components/Status/index.vue?6071","webpack:///src/components/Status/index.vue","webpack:///./src/components/Status/index.vue","webpack:///./src/components/RebootButton/index.vue?8db4","webpack:///./src/components/RebootButton/index.vue?2f45","webpack:///src/components/RebootButton/index.vue","webpack:///./src/components/RebootButton/index.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_Statusvue_type_script_lang_js_","name","props","account","type","Object","required","default","fetchStatusesByInstance","Boolean","showCheckbox","status","page","Number","userId","String","godmode","data","showHiddenStatus","methods","capitalizeFirstLetter","str","charAt","toUpperCase","slice","changeStatus","statusId","isSensitive","visibility","this","$store","dispatch","reportCurrentPage","deleteStatus","_this","$confirm","confirmButtonText","cancelButtonText","then","$message","message","catch","handleStatusSelection","$emit","handleRouteChange","$router","push","params","id","optionPercent","poll","pollOption","allVotes","options","reduce","acc","option","votes_count","toFixed","parseTimestamp","timestamp","moment_default","format","propertyExists","property","_secondProperty","component","componentNormalizer","_vm","_h","$createElement","_c","_self","deleted","staticClass","attrs","slot","_v","_s","$t","domProps","innerHTML","content","created_at","_e","href","url","target","on","click","$event","stopPropagation","nativeOn","change","to","src","avatar","nickname","size","trigger","plain","icon","sensitive","spoiler_text","_l","index","key","title","percentage","attachment","preview_url","__file","__webpack_exports__","components_RebootButtonvue_type_script_lang_js_","computed","needReboot","state","app","restartApp","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","t0","abrupt","lang","t","stop","placement"],"mappings":"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","file":"static/js/chunk-commons.7a41457e.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.status.deleted)?_c('el-card',{staticClass:\"status-card\",nativeOn:{\"click\":function($event){return _vm.handleRouteChange()}}},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"status-header\"},[_c('div',{staticClass:\"status-account-container\"},[_c('div',{staticClass:\"status-account\"},[(_vm.showCheckbox)?_c('el-checkbox',{staticClass:\"status-checkbox\",on:{\"change\":function($event){return _vm.handleStatusSelection(_vm.account)}}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.account, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.account.id }}},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"status-card-header\"},[(_vm.propertyExists(_vm.account, 'avatar'))?_c('img',{staticClass:\"status-avatar-img\",attrs:{\"src\":_vm.account.avatar}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.account, 'nickname'))?_c('span',{staticClass:\"status-account-name\"},[_vm._v(_vm._s(_vm.account.nickname))]):_c('span',[(_vm.propertyExists(_vm.account, 'nickname'))?_c('span',{staticClass:\"status-account-name\"},[_vm._v(\"\\n \"+_vm._s(_vm.account.nickname)+\"\\n \")]):_c('span',{staticClass:\"status-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])])])]):_vm._e()],1)]),_vm._v(\" \"),_c('div',{staticClass:\"status-actions\"},[_c('div',{staticClass:\"status-tags\"},[(_vm.status.sensitive)?_c('el-tag',{attrs:{\"type\":\"warning\",\"size\":\"large\"}},[_vm._v(_vm._s(_vm.$t('reports.sensitive')))]):_vm._e(),_vm._v(\" \"),_c('el-tag',{attrs:{\"size\":\"large\"}},[_vm._v(_vm._s(_vm.capitalizeFirstLetter(_vm.status.visibility)))])],1),_vm._v(\" \"),_c('el-dropdown',{attrs:{\"trigger\":\"click\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('el-button',{staticClass:\"status-actions-button\",attrs:{\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-edit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.changeScope'))),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(!_vm.status.sensitive)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, true, _vm.status.visibility)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.addSensitive'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.sensitive)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, false, _vm.status.visibility)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.removeSensitive'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'public')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'public')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.public'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'private')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'private')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.private'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'unlisted')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.unlisted'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deleteStatus(_vm.status.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.deleteStatus'))+\"\\n \")])],1)],1)],1)])]),_vm._v(\" \"),_c('div',{staticClass:\"status-body\"},[(_vm.status.spoiler_text)?_c('div',[_c('strong',[_vm._v(_vm._s(_vm.status.spoiler_text))]),_vm._v(\" \"),(!_vm.showHiddenStatus)?_c('el-button',{staticClass:\"show-more-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){_vm.showHiddenStatus = true}}},[_vm._v(\"Show more\")]):_vm._e(),_vm._v(\" \"),(_vm.showHiddenStatus)?_c('el-button',{staticClass:\"show-more-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){_vm.showHiddenStatus = false}}},[_vm._v(\"Show less\")]):_vm._e(),_vm._v(\" \"),(_vm.showHiddenStatus)?_c('div',[_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}),_vm._v(\" \"),(_vm.status.poll)?_c('div',{staticClass:\"poll\"},[_c('ul',_vm._l((_vm.status.poll.options),function(option,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(option.title)+\"\\n \"),_c('el-progress',{attrs:{\"percentage\":_vm.optionPercent(_vm.status.poll, option)}})],1)}),0)]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.status.media_attachments),function(attachment,index){return _c('div',{key:index,staticClass:\"image\"},[_c('img',{attrs:{\"src\":attachment.preview_url}})])})],2):_vm._e()],1):_vm._e(),_vm._v(\" \"),(!_vm.status.spoiler_text)?_c('div',[_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}),_vm._v(\" \"),(_vm.status.poll)?_c('div',{staticClass:\"poll\"},[_c('ul',_vm._l((_vm.status.poll.options),function(option,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(option.title)+\"\\n \"),_c('el-progress',{attrs:{\"percentage\":_vm.optionPercent(_vm.status.poll, option)}})],1)}),0)]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.status.media_attachments),function(attachment,index){return _c('div',{key:index,staticClass:\"image\"},[_c('img',{attrs:{\"src\":attachment.preview_url}})])})],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"status-footer\"},[_c('span',{staticClass:\"status-created-at\"},[_vm._v(_vm._s(_vm.parseTimestamp(_vm.status.created_at)))]),_vm._v(\" \"),(_vm.status.url)?_c('a',{staticClass:\"account\",attrs:{\"href\":_vm.status.url,\"target\":\"_blank\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.openStatusInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()])])]):_c('el-card',{staticClass:\"status-card\"},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"status-header\"},[_c('div',{staticClass:\"status-account-container\"},[_c('div',{staticClass:\"status-account\"},[_c('h4',{staticClass:\"status-deleted\"},[_vm._v(_vm._s(_vm.$t('reports.statusDeleted')))])])])])]),_vm._v(\" \"),_c('div',{staticClass:\"status-body\"},[(_vm.status.content)?_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}):_c('span',{staticClass:\"status-without-content\"},[_vm._v(\"no content\")])]),_vm._v(\" \"),_c('div',{staticClass:\"status-footer\"},[(_vm.status.created_at)?_c('span',{staticClass:\"status-created-at\"},[_vm._v(_vm._s(_vm.parseTimestamp(_vm.status.created_at)))]):_vm._e(),_vm._v(\" \"),(_vm.status.url)?_c('a',{staticClass:\"account\",attrs:{\"href\":_vm.status.url,\"target\":\"_blank\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\"\\n Open status in instance\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-card v-if=\"!status.deleted\" class=\"status-card\" @click.native=\"handleRouteChange()\">\n <div slot=\"header\">\n <div class=\"status-header\">\n <div class=\"status-account-container\">\n <div class=\"status-account\">\n <el-checkbox v-if=\"showCheckbox\" class=\"status-checkbox\" @change=\"handleStatusSelection(account)\"/>\n <router-link\n v-if=\"propertyExists(account, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: account.id }}\"\n class=\"router-link\"\n @click.native.stop>\n <div class=\"status-card-header\">\n <img v-if=\"propertyExists(account, 'avatar')\" :src=\"account.avatar\" class=\"status-avatar-img\">\n <span v-if=\"propertyExists(account, 'nickname')\" class=\"status-account-name\">{{ account.nickname }}</span>\n <span v-else>\n <span v-if=\"propertyExists(account, 'nickname')\" class=\"status-account-name\">\n {{ account.nickname }}\n </span>\n <span v-else class=\"status-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </span>\n </div>\n </router-link>\n </div>\n </div>\n <div class=\"status-actions\">\n <div class=\"status-tags\">\n <el-tag v-if=\"status.sensitive\" type=\"warning\" size=\"large\">{{ $t('reports.sensitive') }}</el-tag>\n <el-tag size=\"large\">{{ capitalizeFirstLetter(status.visibility) }}</el-tag>\n </div>\n <el-dropdown trigger=\"click\" @click.native.stop>\n <el-button plain size=\"small\" icon=\"el-icon-edit\" class=\"status-actions-button\">\n {{ $t('reports.changeScope') }}<i class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n v-if=\"!status.sensitive\"\n @click.native=\"changeStatus(status.id, true, status.visibility)\">\n {{ $t('reports.addSensitive') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.sensitive\"\n @click.native=\"changeStatus(status.id, false, status.visibility)\">\n {{ $t('reports.removeSensitive') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'public'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'public')\">\n {{ $t('reports.public') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'private'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'private')\">\n {{ $t('reports.private') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'unlisted'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'unlisted')\">\n {{ $t('reports.unlisted') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deleteStatus(status.id)\">\n {{ $t('reports.deleteStatus') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n </div>\n </div>\n </div>\n <div class=\"status-body\">\n <div v-if=\"status.spoiler_text\">\n <strong>{{ status.spoiler_text }}</strong>\n <el-button v-if=\"!showHiddenStatus\" size=\"mini\" class=\"show-more-button\" @click=\"showHiddenStatus = true\">Show more</el-button>\n <el-button v-if=\"showHiddenStatus\" size=\"mini\" class=\"show-more-button\" @click=\"showHiddenStatus = false\">Show less</el-button>\n <div v-if=\"showHiddenStatus\">\n <span class=\"status-content\" v-html=\"status.content\"/>\n <div v-if=\"status.poll\" class=\"poll\">\n <ul>\n <li v-for=\"(option, index) in status.poll.options\" :key=\"index\">\n {{ option.title }}\n <el-progress :percentage=\"optionPercent(status.poll, option)\" />\n </li>\n </ul>\n </div>\n <div v-for=\"(attachment, index) in status.media_attachments\" :key=\"index\" class=\"image\">\n <img :src=\"attachment.preview_url\">\n </div>\n </div>\n </div>\n <div v-if=\"!status.spoiler_text\">\n <span class=\"status-content\" v-html=\"status.content\"/>\n <div v-if=\"status.poll\" class=\"poll\">\n <ul>\n <li v-for=\"(option, index) in status.poll.options\" :key=\"index\">\n {{ option.title }}\n <el-progress :percentage=\"optionPercent(status.poll, option)\" />\n </li>\n </ul>\n </div>\n <div v-for=\"(attachment, index) in status.media_attachments\" :key=\"index\" class=\"image\">\n <img :src=\"attachment.preview_url\">\n </div>\n </div>\n <div class=\"status-footer\">\n <span class=\"status-created-at\">{{ parseTimestamp(status.created_at) }}</span>\n <a v-if=\"status.url\" :href=\"status.url\" target=\"_blank\" class=\"account\" @click.stop>\n {{ $t('statuses.openStatusInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n </el-card>\n <el-card v-else class=\"status-card\">\n <div slot=\"header\">\n <div class=\"status-header\">\n <div class=\"status-account-container\">\n <div class=\"status-account\">\n <h4 class=\"status-deleted\">{{ $t('reports.statusDeleted') }}</h4>\n </div>\n </div>\n </div>\n </div>\n <div class=\"status-body\">\n <span v-if=\"status.content\" class=\"status-content\" v-html=\"status.content\"/>\n <span v-else class=\"status-without-content\">no content</span>\n </div>\n <div class=\"status-footer\">\n <span v-if=\"status.created_at\" class=\"status-created-at\">{{ parseTimestamp(status.created_at) }}</span>\n <a v-if=\"status.url\" :href=\"status.url\" target=\"_blank\" class=\"account\" @click.stop>\n Open status in instance\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </el-card>\n</template>\n\n<script>\nimport moment from 'moment'\n\nexport default {\n name: 'Status',\n props: {\n account: {\n type: Object,\n required: false,\n default: () => { return {} }\n },\n fetchStatusesByInstance: {\n type: Boolean,\n required: false,\n default: false\n },\n showCheckbox: {\n type: Boolean,\n required: true,\n default: false\n },\n status: {\n type: Object,\n required: true\n },\n page: {\n type: Number,\n required: false,\n default: 0\n },\n userId: {\n type: String,\n required: false,\n default: ''\n },\n godmode: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n data() {\n return {\n showHiddenStatus: false\n }\n },\n methods: {\n capitalizeFirstLetter(str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n changeStatus(statusId, isSensitive, visibility) {\n this.$store.dispatch('ChangeStatusScope', {\n statusId,\n isSensitive,\n visibility,\n reportCurrentPage: this.page,\n userId: this.userId,\n godmode: this.godmode,\n fetchStatusesByInstance: this.fetchStatusesByInstance\n })\n },\n deleteStatus(statusId) {\n this.$confirm('Are you sure you want to delete this status?', 'Warning', {\n confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteStatus', {\n statusId,\n reportCurrentPage: this.page,\n userId: this.userId,\n godmode: this.godmode,\n fetchStatusesByInstance: this.fetchStatusesByInstance\n })\n this.$message({\n type: 'success',\n message: 'Delete completed'\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleStatusSelection(account) {\n this.$emit('status-selection', account)\n },\n handleRouteChange() {\n this.$router.push({ name: 'StatusShow', params: { id: this.status.id }})\n },\n optionPercent(poll, pollOption) {\n const allVotes = poll.options.reduce((acc, option) => (acc + option.votes_count), 0)\n if (allVotes === 0) {\n return 0\n }\n return +(pollOption.votes_count / allVotes * 100).toFixed(1)\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property, _secondProperty) {\n if (_secondProperty) {\n return account[property] && account[_secondProperty]\n }\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.status-card {\n margin-bottom: 10px;\n cursor: pointer;\n .account {\n line-height: 26px;\n font-size: 13px;\n color: #606266;\n }\n .account:hover {\n text-decoration: underline;\n }\n .deactivated {\n color: gray;\n line-height: 28px;\n vertical-align: middle;\n }\n .image {\n width: 20%;\n img {\n width: 100%;\n }\n }\n .router-link {\n text-decoration: none;\n }\n .show-more-button {\n margin-left: 5px;\n }\n .status-account {\n display: flex;\n align-items: center;\n }\n .status-avatar-img {\n display: inline-block;\n width: 15px;\n height: 15px;\n margin-right: 5px;\n }\n .status-account-name {\n display: inline-block;\n margin: 0;\n font-size: 15px;\n font-weight: 500;\n }\n .status-body {\n display: flex;\n flex-direction: column;\n }\n .status-card-header {\n display: flex;\n align-items: center;\n }\n .status-checkbox {\n margin-right: 7px;\n }\n .status-content {\n font-size: 15px;\n line-height: 26px;\n }\n .status-created-at {\n font-size: 13px;\n color: #606266;\n }\n .status-deleted {\n font-style: italic;\n margin-top: 3px;\n }\n .status-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .status-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .status-tags {\n display: inline;\n }\n .status-without-content {\n font-style: italic;\n }\n}\n\n@media only screen and (max-width:480px) {\n .el-message {\n min-width: 80%;\n }\n .el-message-box {\n width: 80%;\n }\n .status-card {\n .el-card__header {\n padding: 10px 17px;\n }\n .el-tag {\n margin: 3px 0;\n }\n .status-account-container {\n margin-bottom: 5px;\n }\n .status-actions-button {\n margin: 3px 0 3px;\n }\n .status-actions {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n }\n .status-footer {\n flex-direction: column;\n align-items: flex-start;\n margin-top: 10px;\n }\n .status-header {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=69419e6d&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.needReboot)?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.restartApp'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"reboot-button\",attrs:{\"type\":\"warning\"},on:{\"click\":_vm.restartApp}},[_c('span',[_c('i',{staticClass:\"el-icon-refresh\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.instanceReboot'))+\"\\n \")])])],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-tooltip v-if=\"needReboot\" :content=\"$t('settings.restartApp')\" placement=\"bottom-end\">\n <el-button type=\"warning\" class=\"reboot-button\" @click=\"restartApp\">\n <span>\n <i class=\"el-icon-refresh\"/>\n {{ $t('settings.instanceReboot') }}\n </span>\n </el-button>\n </el-tooltip>\n</template>\n\n<script>\nimport i18n from '@/lang'\n\nexport default {\n name: 'RebootButton',\n computed: {\n needReboot() {\n return this.$store.state.app.needReboot\n }\n },\n methods: {\n async restartApp() {\n try {\n await this.$store.dispatch('RestartApplication')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.restartSuccess')\n })\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=53cfaf1d&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-commons.a6002038.js b/priv/static/adminfe/static/js/chunk-commons.a6002038.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-commons"],{Kw8l:function(t,s,e){"use strict";var a=e("cRgN");e.n(a).a},cRgN:function(t,s,e){},ot3S:function(t,s,e){"use strict";var a=e("wd/R"),n=e.n(a),i={name:"Status",props:{account:{type:Object,required:!1,default:function(){return{}}},fetchStatusesByInstance:{type:Boolean,required:!1,default:!1},showCheckbox:{type:Boolean,required:!0,default:!1},status:{type:Object,required:!0},page:{type:Number,required:!1,default:0},userId:{type:String,required:!1,default:""},godmode:{type:Boolean,required:!1,default:!1}},data:function(){return{showHiddenStatus:!1}},methods:{capitalizeFirstLetter:function(t){return t.charAt(0).toUpperCase()+t.slice(1)},changeStatus:function(t,s,e){this.$store.dispatch("ChangeStatusScope",{statusId:t,isSensitive:s,visibility:e,reportCurrentPage:this.page,userId:this.userId,godmode:this.godmode,fetchStatusesByInstance:this.fetchStatusesByInstance})},deleteStatus:function(t){var s=this;this.$confirm("Are you sure you want to delete this status?","Warning",{confirmButtonText:"OK",cancelButtonText:"Cancel",type:"warning"}).then(function(){s.$store.dispatch("DeleteStatus",{statusId:t,reportCurrentPage:s.page,userId:s.userId,godmode:s.godmode,fetchStatusesByInstance:s.fetchStatusesByInstance}),s.$message({type:"success",message:"Delete completed"})}).catch(function(){s.$message({type:"info",message:"Delete canceled"})})},handleStatusSelection:function(t){this.$emit("status-selection",t)},handleRouteChange:function(){this.$router.push({name:"StatusShow",params:{id:this.status.id}})},optionPercent:function(t,s){var e=t.options.reduce(function(t,s){return t+s.votes_count},0);return 0===e?0:+(s.votes_count/e*100).toFixed(1)},parseTimestamp:function(t){return n()(t).format("YYYY-MM-DD HH:mm")},propertyExists:function(t,s,e){return e?t[s]&&t[e]:t[s]}}},o=(e("Kw8l"),e("KHd+")),r=Object(o.a)(i,function(){var t=this,s=t.$createElement,e=t._self._c||s;return t.status.deleted?e("el-card",{staticClass:"status-card"},[e("div",{attrs:{slot:"header"},slot:"header"},[e("div",{staticClass:"status-header"},[e("div",{staticClass:"status-account-container"},[e("div",{staticClass:"status-account"},[e("h4",{staticClass:"status-deleted"},[t._v(t._s(t.$t("reports.statusDeleted")))])])])])]),t._v(" "),e("div",{staticClass:"status-body"},[t.status.content?e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}):e("span",{staticClass:"status-without-content"},[t._v("no content")])]),t._v(" "),e("div",{staticClass:"status-footer"},[t.status.created_at?e("span",{staticClass:"status-created-at"},[t._v(t._s(t.parseTimestamp(t.status.created_at)))]):t._e(),t._v(" "),t.status.url?e("a",{staticClass:"account",attrs:{href:t.status.url,target:"_blank"},on:{click:function(t){t.stopPropagation()}}},[t._v("\n Open status in instance\n "),e("i",{staticClass:"el-icon-top-right"})]):t._e()])]):e("el-card",{staticClass:"status-card",nativeOn:{click:function(s){return t.handleRouteChange()}}},[e("div",{attrs:{slot:"header"},slot:"header"},[e("div",{staticClass:"status-header"},[e("div",{staticClass:"status-account-container"},[e("div",{staticClass:"status-account"},[t.showCheckbox?e("el-checkbox",{staticClass:"status-checkbox",on:{change:function(s){return t.handleStatusSelection(t.account)}}}):t._e(),t._v(" "),t.propertyExists(t.account,"id")?e("router-link",{staticClass:"router-link",attrs:{to:{name:"UsersShow",params:{id:t.account.id}}},nativeOn:{click:function(t){t.stopPropagation()}}},[e("div",{staticClass:"status-card-header"},[t.propertyExists(t.account,"avatar")?e("img",{staticClass:"status-avatar-img",attrs:{src:t.account.avatar}}):t._e(),t._v(" "),t.propertyExists(t.account,"nickname")?e("span",{staticClass:"status-account-name"},[t._v(t._s(t.account.nickname))]):e("span",[t.propertyExists(t.account,"nickname")?e("span",{staticClass:"status-account-name"},[t._v("\n "+t._s(t.account.nickname)+"\n ")]):e("span",{staticClass:"status-account-name deactivated"},[t._v("("+t._s(t.$t("users.invalidNickname"))+")")])])])]):t._e()],1)]),t._v(" "),e("div",{staticClass:"status-actions"},[e("div",{staticClass:"status-tags"},[t.status.sensitive?e("el-tag",{attrs:{type:"warning",size:"large"}},[t._v(t._s(t.$t("reports.sensitive")))]):t._e(),t._v(" "),e("el-tag",{attrs:{size:"large"}},[t._v(t._s(t.capitalizeFirstLetter(t.status.visibility)))])],1),t._v(" "),e("el-dropdown",{attrs:{trigger:"click"},nativeOn:{click:function(t){t.stopPropagation()}}},[e("el-button",{staticClass:"status-actions-button",attrs:{plain:"",size:"small",icon:"el-icon-edit"}},[t._v("\n "+t._s(t.$t("reports.changeScope"))),e("i",{staticClass:"el-icon-arrow-down el-icon--right"})]),t._v(" "),e("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t.status.sensitive?t._e():e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,!0,t.status.visibility)}}},[t._v("\n "+t._s(t.$t("reports.addSensitive"))+"\n ")]),t._v(" "),t.status.sensitive?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,!1,t.status.visibility)}}},[t._v("\n "+t._s(t.$t("reports.removeSensitive"))+"\n ")]):t._e(),t._v(" "),"public"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"public")}}},[t._v("\n "+t._s(t.$t("reports.public"))+"\n ")]):t._e(),t._v(" "),"private"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"private")}}},[t._v("\n "+t._s(t.$t("reports.private"))+"\n ")]):t._e(),t._v(" "),"unlisted"!==t.status.visibility?e("el-dropdown-item",{nativeOn:{click:function(s){return t.changeStatus(t.status.id,t.status.sensitive,"unlisted")}}},[t._v("\n "+t._s(t.$t("reports.unlisted"))+"\n ")]):t._e(),t._v(" "),e("el-dropdown-item",{nativeOn:{click:function(s){return t.deleteStatus(t.status.id)}}},[t._v("\n "+t._s(t.$t("reports.deleteStatus"))+"\n ")])],1)],1)],1)])]),t._v(" "),e("div",{staticClass:"status-body"},[t.status.spoiler_text?e("div",[e("strong",[t._v(t._s(t.status.spoiler_text))]),t._v(" "),t.showHiddenStatus?t._e():e("el-button",{staticClass:"show-more-button",attrs:{size:"mini"},on:{click:function(s){t.showHiddenStatus=!0}}},[t._v("Show more")]),t._v(" "),t.showHiddenStatus?e("el-button",{staticClass:"show-more-button",attrs:{size:"mini"},on:{click:function(s){t.showHiddenStatus=!1}}},[t._v("Show less")]):t._e(),t._v(" "),t.showHiddenStatus?e("div",[e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}),t._v(" "),t.status.poll?e("div",{staticClass:"poll"},[e("ul",t._l(t.status.poll.options,function(s,a){return e("li",{key:a},[t._v("\n "+t._s(s.title)+"\n "),e("el-progress",{attrs:{percentage:t.optionPercent(t.status.poll,s)}})],1)}),0)]):t._e(),t._v(" "),t._l(t.status.media_attachments,function(t,s){return e("div",{key:s,staticClass:"image"},[e("img",{attrs:{src:t.preview_url}})])})],2):t._e()],1):t._e(),t._v(" "),t.status.spoiler_text?t._e():e("div",[e("span",{staticClass:"status-content",domProps:{innerHTML:t._s(t.status.content)}}),t._v(" "),t.status.poll?e("div",{staticClass:"poll"},[e("ul",t._l(t.status.poll.options,function(s,a){return e("li",{key:a},[t._v("\n "+t._s(s.title)+"\n "),e("el-progress",{attrs:{percentage:t.optionPercent(t.status.poll,s)}})],1)}),0)]):t._e(),t._v(" "),t._l(t.status.media_attachments,function(t,s){return e("div",{key:s,staticClass:"image"},[e("img",{attrs:{src:t.preview_url}})])})],2),t._v(" "),e("div",{staticClass:"status-footer"},[e("span",{staticClass:"status-created-at"},[t._v(t._s(t.parseTimestamp(t.status.created_at)))]),t._v(" "),t.status.url?e("a",{staticClass:"account",attrs:{href:t.status.url,target:"_blank"},on:{click:function(t){t.stopPropagation()}}},[t._v("\n "+t._s(t.$t("statuses.openStatusInInstance"))+"\n "),e("i",{staticClass:"el-icon-top-right"})]):t._e()])])])},[],!1,null,null,null);r.options.__file="index.vue";s.a=r.exports},rIUS:function(t,s,e){"use strict";var a=e("o0o1"),n=e.n(a),i=e("yXPU"),o=e.n(i),r=e("mSNy"),c={name:"RebootButton",computed:{needReboot:function(){return this.$store.state.app.needReboot}},methods:{restartApp:function(){var t=this;return o()(n.a.mark(function s(){return n.a.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:return s.prev=0,s.next=3,t.$store.dispatch("RestartApplication");case 3:s.next=8;break;case 5:return s.prev=5,s.t0=s.catch(0),s.abrupt("return");case 8:t.$message({type:"success",message:r.a.t("settings.restartSuccess")});case 9:case"end":return s.stop()}},s,null,[[0,5]])}))()}}},u=e("KHd+"),l=Object(u.a)(c,function(){var t=this.$createElement,s=this._self._c||t;return this.needReboot?s("el-tooltip",{attrs:{content:this.$t("settings.restartApp"),placement:"bottom-end"}},[s("el-button",{staticClass:"reboot-button",attrs:{type:"warning"},on:{click:this.restartApp}},[s("span",[s("i",{staticClass:"el-icon-refresh"}),this._v("\n "+this._s(this.$t("settings.instanceReboot"))+"\n ")])])],1):this._e()},[],!1,null,null,null);l.options.__file="index.vue";s.a=l.exports}}]); -//# sourceMappingURL=chunk-commons.a6002038.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-commons.a6002038.js.map b/priv/static/adminfe/static/js/chunk-commons.a6002038.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/components/Status/index.vue?aecc","webpack:///./src/components/Status/index.vue?b843","webpack:///./src/components/Status/index.vue?6071","webpack:///src/components/Status/index.vue","webpack:///./src/components/Status/index.vue","webpack:///./src/components/RebootButton/index.vue?8db4","webpack:///./src/components/RebootButton/index.vue?2f45","webpack:///src/components/RebootButton/index.vue","webpack:///./src/components/RebootButton/index.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_Statusvue_type_script_lang_js_","name","props","account","type","Object","required","default","fetchStatusesByInstance","Boolean","showCheckbox","status","page","Number","userId","String","godmode","data","showHiddenStatus","methods","capitalizeFirstLetter","str","charAt","toUpperCase","slice","changeStatus","statusId","isSensitive","visibility","this","$store","dispatch","reportCurrentPage","deleteStatus","_this","$confirm","confirmButtonText","cancelButtonText","then","$message","message","catch","handleStatusSelection","$emit","handleRouteChange","$router","push","params","id","optionPercent","poll","pollOption","allVotes","options","reduce","acc","option","votes_count","toFixed","parseTimestamp","timestamp","moment_default","format","propertyExists","property","_secondProperty","component","componentNormalizer","_vm","_h","$createElement","_c","_self","deleted","staticClass","attrs","slot","_v","_s","$t","domProps","innerHTML","content","created_at","_e","href","url","target","on","click","$event","stopPropagation","nativeOn","change","to","src","avatar","nickname","size","trigger","plain","icon","sensitive","spoiler_text","_l","index","key","title","percentage","attachment","preview_url","__file","__webpack_exports__","components_RebootButtonvue_type_script_lang_js_","computed","needReboot","state","app","restartApp","asyncToGenerator_default","regenerator_default","a","mark","_callee","wrap","_context","prev","next","t0","abrupt","lang","t","stop","placement"],"mappings":"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","file":"static/js/chunk-commons.a6002038.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.status.deleted)?_c('el-card',{staticClass:\"status-card\",nativeOn:{\"click\":function($event){return _vm.handleRouteChange()}}},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"status-header\"},[_c('div',{staticClass:\"status-account-container\"},[_c('div',{staticClass:\"status-account\"},[(_vm.showCheckbox)?_c('el-checkbox',{staticClass:\"status-checkbox\",on:{\"change\":function($event){return _vm.handleStatusSelection(_vm.account)}}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.account, 'id'))?_c('router-link',{staticClass:\"router-link\",attrs:{\"to\":{ name: 'UsersShow', params: { id: _vm.account.id }}},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"status-card-header\"},[(_vm.propertyExists(_vm.account, 'avatar'))?_c('img',{staticClass:\"status-avatar-img\",attrs:{\"src\":_vm.account.avatar}}):_vm._e(),_vm._v(\" \"),(_vm.propertyExists(_vm.account, 'nickname'))?_c('span',{staticClass:\"status-account-name\"},[_vm._v(_vm._s(_vm.account.nickname))]):_c('span',[(_vm.propertyExists(_vm.account, 'nickname'))?_c('span',{staticClass:\"status-account-name\"},[_vm._v(\"\\n \"+_vm._s(_vm.account.nickname)+\"\\n \")]):_c('span',{staticClass:\"status-account-name deactivated\"},[_vm._v(\"(\"+_vm._s(_vm.$t('users.invalidNickname'))+\")\")])])])]):_vm._e()],1)]),_vm._v(\" \"),_c('div',{staticClass:\"status-actions\"},[_c('div',{staticClass:\"status-tags\"},[(_vm.status.sensitive)?_c('el-tag',{attrs:{\"type\":\"warning\",\"size\":\"large\"}},[_vm._v(_vm._s(_vm.$t('reports.sensitive')))]):_vm._e(),_vm._v(\" \"),_c('el-tag',{attrs:{\"size\":\"large\"}},[_vm._v(_vm._s(_vm.capitalizeFirstLetter(_vm.status.visibility)))])],1),_vm._v(\" \"),_c('el-dropdown',{attrs:{\"trigger\":\"click\"},nativeOn:{\"click\":function($event){$event.stopPropagation();}}},[_c('el-button',{staticClass:\"status-actions-button\",attrs:{\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-edit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.changeScope'))),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(!_vm.status.sensitive)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, true, _vm.status.visibility)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.addSensitive'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.sensitive)?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, false, _vm.status.visibility)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.removeSensitive'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'public')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'public')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.public'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'private')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'private')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.private'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.status.visibility !== 'unlisted')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeStatus(_vm.status.id, _vm.status.sensitive, 'unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.unlisted'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deleteStatus(_vm.status.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('reports.deleteStatus'))+\"\\n \")])],1)],1)],1)])]),_vm._v(\" \"),_c('div',{staticClass:\"status-body\"},[(_vm.status.spoiler_text)?_c('div',[_c('strong',[_vm._v(_vm._s(_vm.status.spoiler_text))]),_vm._v(\" \"),(!_vm.showHiddenStatus)?_c('el-button',{staticClass:\"show-more-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){_vm.showHiddenStatus = true}}},[_vm._v(\"Show more\")]):_vm._e(),_vm._v(\" \"),(_vm.showHiddenStatus)?_c('el-button',{staticClass:\"show-more-button\",attrs:{\"size\":\"mini\"},on:{\"click\":function($event){_vm.showHiddenStatus = false}}},[_vm._v(\"Show less\")]):_vm._e(),_vm._v(\" \"),(_vm.showHiddenStatus)?_c('div',[_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}),_vm._v(\" \"),(_vm.status.poll)?_c('div',{staticClass:\"poll\"},[_c('ul',_vm._l((_vm.status.poll.options),function(option,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(option.title)+\"\\n \"),_c('el-progress',{attrs:{\"percentage\":_vm.optionPercent(_vm.status.poll, option)}})],1)}),0)]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.status.media_attachments),function(attachment,index){return _c('div',{key:index,staticClass:\"image\"},[_c('img',{attrs:{\"src\":attachment.preview_url}})])})],2):_vm._e()],1):_vm._e(),_vm._v(\" \"),(!_vm.status.spoiler_text)?_c('div',[_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}),_vm._v(\" \"),(_vm.status.poll)?_c('div',{staticClass:\"poll\"},[_c('ul',_vm._l((_vm.status.poll.options),function(option,index){return _c('li',{key:index},[_vm._v(\"\\n \"+_vm._s(option.title)+\"\\n \"),_c('el-progress',{attrs:{\"percentage\":_vm.optionPercent(_vm.status.poll, option)}})],1)}),0)]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.status.media_attachments),function(attachment,index){return _c('div',{key:index,staticClass:\"image\"},[_c('img',{attrs:{\"src\":attachment.preview_url}})])})],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"status-footer\"},[_c('span',{staticClass:\"status-created-at\"},[_vm._v(_vm._s(_vm.parseTimestamp(_vm.status.created_at)))]),_vm._v(\" \"),(_vm.status.url)?_c('a',{staticClass:\"account\",attrs:{\"href\":_vm.status.url,\"target\":\"_blank\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('statuses.openStatusInInstance'))+\"\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()])])]):_c('el-card',{staticClass:\"status-card\"},[_c('div',{attrs:{\"slot\":\"header\"},slot:\"header\"},[_c('div',{staticClass:\"status-header\"},[_c('div',{staticClass:\"status-account-container\"},[_c('div',{staticClass:\"status-account\"},[_c('h4',{staticClass:\"status-deleted\"},[_vm._v(_vm._s(_vm.$t('reports.statusDeleted')))])])])])]),_vm._v(\" \"),_c('div',{staticClass:\"status-body\"},[(_vm.status.content)?_c('span',{staticClass:\"status-content\",domProps:{\"innerHTML\":_vm._s(_vm.status.content)}}):_c('span',{staticClass:\"status-without-content\"},[_vm._v(\"no content\")])]),_vm._v(\" \"),_c('div',{staticClass:\"status-footer\"},[(_vm.status.created_at)?_c('span',{staticClass:\"status-created-at\"},[_vm._v(_vm._s(_vm.parseTimestamp(_vm.status.created_at)))]):_vm._e(),_vm._v(\" \"),(_vm.status.url)?_c('a',{staticClass:\"account\",attrs:{\"href\":_vm.status.url,\"target\":\"_blank\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_vm._v(\"\\n Open status in instance\\n \"),_c('i',{staticClass:\"el-icon-top-right\"})]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-card v-if=\"!status.deleted\" class=\"status-card\" @click.native=\"handleRouteChange()\">\n <div slot=\"header\">\n <div class=\"status-header\">\n <div class=\"status-account-container\">\n <div class=\"status-account\">\n <el-checkbox v-if=\"showCheckbox\" class=\"status-checkbox\" @change=\"handleStatusSelection(account)\"/>\n <router-link\n v-if=\"propertyExists(account, 'id')\"\n :to=\"{ name: 'UsersShow', params: { id: account.id }}\"\n class=\"router-link\"\n @click.native.stop>\n <div class=\"status-card-header\">\n <img v-if=\"propertyExists(account, 'avatar')\" :src=\"account.avatar\" class=\"status-avatar-img\">\n <span v-if=\"propertyExists(account, 'nickname')\" class=\"status-account-name\">{{ account.nickname }}</span>\n <span v-else>\n <span v-if=\"propertyExists(account, 'nickname')\" class=\"status-account-name\">\n {{ account.nickname }}\n </span>\n <span v-else class=\"status-account-name deactivated\">({{ $t('users.invalidNickname') }})</span>\n </span>\n </div>\n </router-link>\n </div>\n </div>\n <div class=\"status-actions\">\n <div class=\"status-tags\">\n <el-tag v-if=\"status.sensitive\" type=\"warning\" size=\"large\">{{ $t('reports.sensitive') }}</el-tag>\n <el-tag size=\"large\">{{ capitalizeFirstLetter(status.visibility) }}</el-tag>\n </div>\n <el-dropdown trigger=\"click\" @click.native.stop>\n <el-button plain size=\"small\" icon=\"el-icon-edit\" class=\"status-actions-button\">\n {{ $t('reports.changeScope') }}<i class=\"el-icon-arrow-down el-icon--right\"/>\n </el-button>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item\n v-if=\"!status.sensitive\"\n @click.native=\"changeStatus(status.id, true, status.visibility)\">\n {{ $t('reports.addSensitive') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.sensitive\"\n @click.native=\"changeStatus(status.id, false, status.visibility)\">\n {{ $t('reports.removeSensitive') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'public'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'public')\">\n {{ $t('reports.public') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'private'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'private')\">\n {{ $t('reports.private') }}\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"status.visibility !== 'unlisted'\"\n @click.native=\"changeStatus(status.id, status.sensitive, 'unlisted')\">\n {{ $t('reports.unlisted') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deleteStatus(status.id)\">\n {{ $t('reports.deleteStatus') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n </div>\n </div>\n </div>\n <div class=\"status-body\">\n <div v-if=\"status.spoiler_text\">\n <strong>{{ status.spoiler_text }}</strong>\n <el-button v-if=\"!showHiddenStatus\" size=\"mini\" class=\"show-more-button\" @click=\"showHiddenStatus = true\">Show more</el-button>\n <el-button v-if=\"showHiddenStatus\" size=\"mini\" class=\"show-more-button\" @click=\"showHiddenStatus = false\">Show less</el-button>\n <div v-if=\"showHiddenStatus\">\n <span class=\"status-content\" v-html=\"status.content\"/>\n <div v-if=\"status.poll\" class=\"poll\">\n <ul>\n <li v-for=\"(option, index) in status.poll.options\" :key=\"index\">\n {{ option.title }}\n <el-progress :percentage=\"optionPercent(status.poll, option)\" />\n </li>\n </ul>\n </div>\n <div v-for=\"(attachment, index) in status.media_attachments\" :key=\"index\" class=\"image\">\n <img :src=\"attachment.preview_url\">\n </div>\n </div>\n </div>\n <div v-if=\"!status.spoiler_text\">\n <span class=\"status-content\" v-html=\"status.content\"/>\n <div v-if=\"status.poll\" class=\"poll\">\n <ul>\n <li v-for=\"(option, index) in status.poll.options\" :key=\"index\">\n {{ option.title }}\n <el-progress :percentage=\"optionPercent(status.poll, option)\" />\n </li>\n </ul>\n </div>\n <div v-for=\"(attachment, index) in status.media_attachments\" :key=\"index\" class=\"image\">\n <img :src=\"attachment.preview_url\">\n </div>\n </div>\n <div class=\"status-footer\">\n <span class=\"status-created-at\">{{ parseTimestamp(status.created_at) }}</span>\n <a v-if=\"status.url\" :href=\"status.url\" target=\"_blank\" class=\"account\" @click.stop>\n {{ $t('statuses.openStatusInInstance') }}\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </div>\n </el-card>\n <el-card v-else class=\"status-card\">\n <div slot=\"header\">\n <div class=\"status-header\">\n <div class=\"status-account-container\">\n <div class=\"status-account\">\n <h4 class=\"status-deleted\">{{ $t('reports.statusDeleted') }}</h4>\n </div>\n </div>\n </div>\n </div>\n <div class=\"status-body\">\n <span v-if=\"status.content\" class=\"status-content\" v-html=\"status.content\"/>\n <span v-else class=\"status-without-content\">no content</span>\n </div>\n <div class=\"status-footer\">\n <span v-if=\"status.created_at\" class=\"status-created-at\">{{ parseTimestamp(status.created_at) }}</span>\n <a v-if=\"status.url\" :href=\"status.url\" target=\"_blank\" class=\"account\" @click.stop>\n Open status in instance\n <i class=\"el-icon-top-right\"/>\n </a>\n </div>\n </el-card>\n</template>\n\n<script>\nimport moment from 'moment'\n\nexport default {\n name: 'Status',\n props: {\n account: {\n type: Object,\n required: false,\n default: () => { return {} }\n },\n fetchStatusesByInstance: {\n type: Boolean,\n required: false,\n default: false\n },\n showCheckbox: {\n type: Boolean,\n required: true,\n default: false\n },\n status: {\n type: Object,\n required: true\n },\n page: {\n type: Number,\n required: false,\n default: 0\n },\n userId: {\n type: String,\n required: false,\n default: ''\n },\n godmode: {\n type: Boolean,\n required: false,\n default: false\n }\n },\n data() {\n return {\n showHiddenStatus: false\n }\n },\n methods: {\n capitalizeFirstLetter(str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n },\n changeStatus(statusId, isSensitive, visibility) {\n this.$store.dispatch('ChangeStatusScope', {\n statusId,\n isSensitive,\n visibility,\n reportCurrentPage: this.page,\n userId: this.userId,\n godmode: this.godmode,\n fetchStatusesByInstance: this.fetchStatusesByInstance\n })\n },\n deleteStatus(statusId) {\n this.$confirm('Are you sure you want to delete this status?', 'Warning', {\n confirmButtonText: 'OK',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('DeleteStatus', {\n statusId,\n reportCurrentPage: this.page,\n userId: this.userId,\n godmode: this.godmode,\n fetchStatusesByInstance: this.fetchStatusesByInstance\n })\n this.$message({\n type: 'success',\n message: 'Delete completed'\n })\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Delete canceled'\n })\n })\n },\n handleStatusSelection(account) {\n this.$emit('status-selection', account)\n },\n handleRouteChange() {\n this.$router.push({ name: 'StatusShow', params: { id: this.status.id }})\n },\n optionPercent(poll, pollOption) {\n const allVotes = poll.options.reduce((acc, option) => (acc + option.votes_count), 0)\n if (allVotes === 0) {\n return 0\n }\n return +(pollOption.votes_count / allVotes * 100).toFixed(1)\n },\n parseTimestamp(timestamp) {\n return moment(timestamp).format('YYYY-MM-DD HH:mm')\n },\n propertyExists(account, property, _secondProperty) {\n if (_secondProperty) {\n return account[property] && account[_secondProperty]\n }\n return account[property]\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n.status-card {\n margin-bottom: 10px;\n cursor: pointer;\n .account {\n line-height: 26px;\n font-size: 13px;\n color: #606266;\n }\n .account:hover {\n text-decoration: underline;\n }\n .deactivated {\n color: gray;\n line-height: 28px;\n vertical-align: middle;\n }\n .image {\n width: 20%;\n img {\n width: 100%;\n }\n }\n .router-link {\n text-decoration: none;\n }\n .show-more-button {\n margin-left: 5px;\n }\n .status-account {\n display: flex;\n align-items: center;\n }\n .status-avatar-img {\n display: inline-block;\n width: 15px;\n height: 15px;\n margin-right: 5px;\n }\n .status-account-name {\n display: inline-block;\n margin: 0;\n font-size: 15px;\n font-weight: 500;\n }\n .status-body {\n display: flex;\n flex-direction: column;\n }\n .status-card-header {\n display: flex;\n align-items: center;\n }\n .status-checkbox {\n margin-right: 7px;\n }\n .status-content {\n font-size: 15px;\n line-height: 26px;\n }\n .status-created-at {\n font-size: 13px;\n color: #606266;\n }\n .status-deleted {\n font-style: italic;\n margin-top: 3px;\n }\n .status-footer {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .status-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .status-tags {\n display: inline;\n }\n .status-without-content {\n font-style: italic;\n }\n}\n\n@media only screen and (max-width:480px) {\n .el-message {\n min-width: 80%;\n }\n .el-message-box {\n width: 80%;\n }\n .status-card {\n .el-card__header {\n padding: 10px 17px;\n }\n .el-tag {\n margin: 3px 0;\n }\n .status-account-container {\n margin-bottom: 5px;\n }\n .status-actions-button {\n margin: 3px 0 3px;\n }\n .status-actions {\n width: 100%;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n }\n .status-footer {\n flex-direction: column;\n align-items: flex-start;\n margin-top: 10px;\n }\n .status-header {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=69419e6d&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.needReboot)?_c('el-tooltip',{attrs:{\"content\":_vm.$t('settings.restartApp'),\"placement\":\"bottom-end\"}},[_c('el-button',{staticClass:\"reboot-button\",attrs:{\"type\":\"warning\"},on:{\"click\":_vm.restartApp}},[_c('span',[_c('i',{staticClass:\"el-icon-refresh\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.instanceReboot'))+\"\\n \")])])],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <el-tooltip v-if=\"needReboot\" :content=\"$t('settings.restartApp')\" placement=\"bottom-end\">\n <el-button type=\"warning\" class=\"reboot-button\" @click=\"restartApp\">\n <span>\n <i class=\"el-icon-refresh\"/>\n {{ $t('settings.instanceReboot') }}\n </span>\n </el-button>\n </el-tooltip>\n</template>\n\n<script>\nimport i18n from '@/lang'\n\nexport default {\n name: 'RebootButton',\n computed: {\n needReboot() {\n return this.$store.state.app.needReboot\n }\n },\n methods: {\n async restartApp() {\n try {\n await this.$store.dispatch('RestartApplication')\n } catch (e) {\n return\n }\n this.$message({\n type: 'success',\n message: i18n.t('settings.restartSuccess')\n })\n }\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=53cfaf1d&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-d34d.0f06fe76.js b/priv/static/adminfe/static/js/chunk-d34d.0f06fe76.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-d34d"],{GFxI:function(e,n,t){},aSQl:function(e,n,t){"use strict";t.d(n,"a",function(){return p});var o=t("o0o1"),a=t.n(o),r=t("yXPU"),s=t.n(r),i=t("oAJy"),l=t.n(i),c=t("LvDl"),u=t.n(c),p=function(){var e=s()(a.a.mark(function e(n){var t,o;return a.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.a.getItem("vuex-lz");case 2:if(t=e.sent,void 0!==(o=u.a.get(t,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:o});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},abDm:function(e,n,t){"use strict";var o=t("GFxI");t.n(o).a},c11S:function(e,n,t){"use strict";var o=t("gTgX");t.n(o).a},gTgX:function(e,n,t){},ntYl:function(e,n,t){"use strict";t.r(n);var o=t("J4zp"),a=t.n(o),r=t("o0o1"),s=t.n(r),i=t("yXPU"),l=t.n(i),c=t("zT9a"),u=t("oAJy"),p=t.n(u),d=t("LvDl"),m=t.n(d),g=t("mSNy"),v=t("aSQl"),h={name:"Login",components:{"svg-icon":c.a},data:function(){return{loginForm:{username:"",password:""},passwordType:"password",loading:!1,loadingPleromaFE:!1,showDialog:!1,redirect:void 0,pleromaFEToken:!1,pleromaFEStateKey:"vuex-lz",pleromaFEState:{}}},watch:{$route:{handler:function(e){this.redirect=e.query&&e.query.redirect},immediate:!0}},mounted:function(){var e=this;return l()(s.a.mark(function n(){var t;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,p.a.getItem(e.pleromaFEStateKey);case 2:if(t=n.sent,e.pleromaFEState=t,void 0!==m.a.get(t,"oauth.userToken")){n.next=6;break}return n.abrupt("return");case 6:e.pleromaFEToken=!0;case 7:case"end":return n.stop()}},n)}))()},methods:{showPwd:function(){"password"===this.passwordType?this.passwordType="":this.passwordType="password"},handleLogin:function(){var e=this;this.loading=!0;var n=this.getLoginData();this.$store.dispatch("LoginByUsername",n).then(function(){e.loading=!1,e.$router.push({path:e.redirect||"/users/index"})}).catch(function(){e.loading=!1})},handlePleromaFELogin:function(){var e=this;return l()(s.a.mark(function n(){return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.loadingPleromaFE=!0,n.prev=1,n.next=4,Object(v.a)(e.$store);case 4:n.next=10;break;case 6:n.prev=6,n.t0=n.catch(1),e.loadingPleromaFE=!1,e.$message.error(g.a.t("login.pleromaFELoginFailed"));case 10:e.loadingPleromaFE=!1,e.$message.success(g.a.t("login.pleromaFELoginSucceed")),e.$router.push({path:e.redirect||"/users/index"});case 13:case"end":return n.stop()}},n,null,[[1,6]])}))()},getLoginData:function(){var e=this.loginForm.username.split("@"),n=a()(e,2),t=n[0],o=n[1];return{username:t.trim(),authHost:o?o.trim():window.location.host,password:this.loginForm.password}}}},f=(t("c11S"),t("abDm"),t("KHd+")),w=Object(f.a)(h,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"login-container"},[t("el-form",{ref:"loginForm",staticClass:"login-form",attrs:{model:e.loginForm,"auto-complete":"on","label-position":"left"}},[t("div",{staticClass:"title-container"},[t("h3",{staticClass:"title"},[e._v("\n "+e._s(e.$t("login.title"))+"\n ")])]),e._v(" "),t("el-form-item",{attrs:{prop:"username"}},[t("span",{staticClass:"svg-container"},[t("svg-icon",{attrs:{"icon-class":"user"}})],1),e._v(" "),t("el-input",{attrs:{placeholder:e.$t("login.username"),name:"username",type:"text","auto-complete":"on"},model:{value:e.loginForm.username,callback:function(n){e.$set(e.loginForm,"username",n)},expression:"loginForm.username"}})],1),e._v(" "),t("div",{staticClass:"omit-host-note"},[e._v(e._s(e.$t("login.omitHostname")))]),e._v(" "),t("el-form-item",{attrs:{prop:"password"}},[t("span",{staticClass:"svg-container"},[t("svg-icon",{attrs:{"icon-class":"password"}})],1),e._v(" "),t("el-input",{attrs:{type:e.passwordType,placeholder:e.$t("login.password"),name:"password","auto-complete":"on"},nativeOn:{keyup:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.handleLogin(n)}},model:{value:e.loginForm.password,callback:function(n){e.$set(e.loginForm,"password",n)},expression:"loginForm.password"}}),e._v(" "),t("span",{staticClass:"show-pwd",on:{click:e.showPwd}},[t("svg-icon",{attrs:{"icon-class":"password"===e.passwordType?"eye":"eye-open"}})],1)],1),e._v(" "),t("el-button",{staticClass:"login-button",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handleLogin(n)}}},[e._v("\n "+e._s(e.$t("login.logIn"))+"\n ")]),e._v(" "),e.pleromaFEToken?t("el-button",{staticClass:"login-button",attrs:{loading:e.loadingPleromaFE,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handlePleromaFELogin(n)}}},[e._v("\n "+e._s(e.$t("login.logInViaPleromaFE"))+"\n ")]):e._e()],1)],1)},[],!1,null,"5bb13616",null);w.options.__file="index.vue";n.default=w.exports}}]); -//# sourceMappingURL=chunk-d34d.0f06fe76.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-d34d.0f06fe76.js.map b/priv/static/adminfe/static/js/chunk-d34d.0f06fe76.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/services/pleromaAuth.js","webpack:///./src/views/login/index.vue?4fb3","webpack:///./src/views/login/index.vue?0399","webpack:///./src/views/login/index.vue?7240","webpack:///./src/views/login/index.vue?95e4","webpack:///src/views/login/index.vue","webpack:///./src/views/login/index.vue"],"names":["authenticateWithPleromaFE","_ref","_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_1___default","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default","a","mark","_callee","store","pleromaFEState","token","wrap","_context","prev","next","localforage","getItem","sent","undefined","_","get","Error","dispatch","stop","_x","apply","this","arguments","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_1_id_5bb13616_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","views_loginvue_type_script_lang_js_","name","components","svg-icon","SvgIcon","data","loginForm","username","password","passwordType","loading","loadingPleromaFE","showDialog","redirect","pleromaFEToken","pleromaFEStateKey","watch","$route","handler","route","query","immediate","mounted","_this","asyncToGenerator_default","regenerator_default","localforage_default","lodash_default","abrupt","methods","showPwd","handleLogin","_this2","loginData","getLoginData","$store","then","$router","push","path","catch","handlePleromaFELogin","_this3","_callee2","_context2","Object","pleromaAuth","t0","$message","error","lang","t","success","_this$loginForm$usern","split","_this$loginForm$usern2","slicedToArray_default","authHost","trim","window","location","host","component","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","ref","attrs","model","auto-complete","label-position","_v","_s","$t","prop","icon-class","placeholder","type","value","callback","$$v","$set","expression","nativeOn","keyup","$event","indexOf","_k","keyCode","key","on","click","preventDefault","_e","options","__file","__webpack_exports__"],"mappings":"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","file":"static/js/chunk-d34d.0f06fe76.js","sourcesContent":["import localforage from 'localforage'\nimport _ from 'lodash'\n\nconst pleromaFEStateKey = 'vuex-lz'\n\nexport const authenticateWithPleromaFE = async(store) => {\n const pleromaFEState = await localforage.getItem(pleromaFEStateKey)\n const token = _.get(pleromaFEState, 'oauth.userToken')\n\n if (token === undefined) {\n throw new Error('PleromaFE token not found')\n }\n\n await store.dispatch('LoginByPleromaFE', { token })\n}\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login-container\"},[_c('el-form',{ref:\"loginForm\",staticClass:\"login-form\",attrs:{\"model\":_vm.loginForm,\"auto-complete\":\"on\",\"label-position\":\"left\"}},[_c('div',{staticClass:\"title-container\"},[_c('h3',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.title'))+\"\\n \")])]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"prop\":\"username\"}},[_c('span',{staticClass:\"svg-container\"},[_c('svg-icon',{attrs:{\"icon-class\":\"user\"}})],1),_vm._v(\" \"),_c('el-input',{attrs:{\"placeholder\":_vm.$t('login.username'),\"name\":\"username\",\"type\":\"text\",\"auto-complete\":\"on\"},model:{value:(_vm.loginForm.username),callback:function ($$v) {_vm.$set(_vm.loginForm, \"username\", $$v)},expression:\"loginForm.username\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"omit-host-note\"},[_vm._v(_vm._s(_vm.$t('login.omitHostname')))]),_vm._v(\" \"),_c('el-form-item',{attrs:{\"prop\":\"password\"}},[_c('span',{staticClass:\"svg-container\"},[_c('svg-icon',{attrs:{\"icon-class\":\"password\"}})],1),_vm._v(\" \"),_c('el-input',{attrs:{\"type\":_vm.passwordType,\"placeholder\":_vm.$t('login.password'),\"name\":\"password\",\"auto-complete\":\"on\"},nativeOn:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.handleLogin($event)}},model:{value:(_vm.loginForm.password),callback:function ($$v) {_vm.$set(_vm.loginForm, \"password\", $$v)},expression:\"loginForm.password\"}}),_vm._v(\" \"),_c('span',{staticClass:\"show-pwd\",on:{\"click\":_vm.showPwd}},[_c('svg-icon',{attrs:{\"icon-class\":_vm.passwordType === 'password' ? 'eye' : 'eye-open'}})],1)],1),_vm._v(\" \"),_c('el-button',{staticClass:\"login-button\",attrs:{\"loading\":_vm.loading,\"type\":\"primary\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.handleLogin($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.logIn'))+\"\\n \")]),_vm._v(\" \"),(_vm.pleromaFEToken)?_c('el-button',{staticClass:\"login-button\",attrs:{\"loading\":_vm.loadingPleromaFE,\"type\":\"primary\"},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.handlePleromaFELogin($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.logInViaPleromaFE'))+\"\\n \")]):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n <div class=\"login-container\">\n <el-form ref=\"loginForm\" :model=\"loginForm\" class=\"login-form\" auto-complete=\"on\" label-position=\"left\">\n <div class=\"title-container\">\n <h3 class=\"title\">\n {{ $t('login.title') }}\n </h3>\n </div>\n\n <el-form-item prop=\"username\">\n <span class=\"svg-container\">\n <svg-icon icon-class=\"user\" />\n </span>\n <el-input\n v-model=\"loginForm.username\"\n :placeholder=\"$t('login.username')\"\n name=\"username\"\n type=\"text\"\n auto-complete=\"on\"\n />\n </el-form-item>\n <div class=\"omit-host-note\">{{ $t('login.omitHostname') }}</div>\n\n <el-form-item prop=\"password\">\n <span class=\"svg-container\">\n <svg-icon icon-class=\"password\" />\n </span>\n <el-input\n v-model=\"loginForm.password\"\n :type=\"passwordType\"\n :placeholder=\"$t('login.password')\"\n name=\"password\"\n auto-complete=\"on\"\n @keyup.enter.native=\"handleLogin\"\n />\n <span class=\"show-pwd\" @click=\"showPwd\">\n <svg-icon :icon-class=\"passwordType === 'password' ? 'eye' : 'eye-open'\" />\n </span>\n </el-form-item>\n\n <el-button :loading=\"loading\" class=\"login-button\" type=\"primary\" @click.native.prevent=\"handleLogin\">\n {{ $t('login.logIn') }}\n </el-button>\n <!-- Note: PleromaFE login feature relies on admin scope presence in PleromaFE token (older versions of PleromaFE don't support it) -->\n <el-button v-if=\"pleromaFEToken\" :loading=\"loadingPleromaFE\" class=\"login-button\" type=\"primary\" @click.native.prevent=\"handlePleromaFELogin\">\n {{ $t('login.logInViaPleromaFE') }}\n </el-button>\n </el-form>\n </div>\n</template>\n\n<script>\nimport SvgIcon from '@/components/element-ui/SvgIcon'\nimport localforage from 'localforage'\nimport _ from 'lodash'\nimport i18n from '@/lang'\nimport { authenticateWithPleromaFE } from '@/services/pleromaAuth'\n\nexport default {\n name: 'Login',\n components: { 'svg-icon': SvgIcon },\n data: function() {\n return {\n loginForm: {\n username: '',\n password: ''\n },\n passwordType: 'password',\n loading: false,\n loadingPleromaFE: false,\n showDialog: false,\n redirect: undefined,\n pleromaFEToken: false,\n pleromaFEStateKey: 'vuex-lz',\n pleromaFEState: {}\n }\n },\n watch: {\n $route: {\n handler: function(route) {\n this.redirect = route.query && route.query.redirect\n },\n immediate: true\n }\n },\n async mounted() {\n const pleromaFEState = await localforage.getItem(this.pleromaFEStateKey)\n this.pleromaFEState = pleromaFEState\n\n if (_.get(pleromaFEState, 'oauth.userToken') === undefined) {\n return\n }\n\n this.pleromaFEToken = true\n },\n methods: {\n showPwd() {\n if (this.passwordType === 'password') {\n this.passwordType = ''\n } else {\n this.passwordType = 'password'\n }\n },\n handleLogin() {\n this.loading = true\n const loginData = this.getLoginData()\n this.$store.dispatch('LoginByUsername', loginData).then(() => {\n this.loading = false\n this.$router.push({ path: this.redirect || '/users/index' })\n }).catch(() => {\n this.loading = false\n })\n },\n async handlePleromaFELogin() {\n this.loadingPleromaFE = true\n try {\n await authenticateWithPleromaFE(this.$store)\n } catch (error) {\n this.loadingPleromaFE = false\n this.$message.error(i18n.t('login.pleromaFELoginFailed'))\n }\n\n this.loadingPleromaFE = false\n\n this.$message.success(i18n.t('login.pleromaFELoginSucceed'))\n this.$router.push({ path: this.redirect || '/users/index' })\n },\n getLoginData() {\n const [username, authHost] = this.loginForm.username.split('@')\n\n return {\n username: username.trim(),\n authHost: authHost ? authHost.trim() : window.location.host,\n password: this.loginForm.password\n }\n }\n }\n}\n</script>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\">\n $bg:#283443;\n $light_gray:#eee;\n $cursor: #fff;\n\n @supports (-webkit-mask: none) and (not (cater-color: $cursor)) {\n .login-container .el-input input{\n color: $cursor;\n &::first-line {\n color: $light_gray;\n }\n }\n }\n\n /* reset element-ui css */\n .login-container {\n .el-input {\n display: inline-block;\n height: 47px;\n width: 85%;\n input {\n background: transparent;\n border: 0px;\n -webkit-appearance: none;\n border-radius: 0px;\n padding: 12px 5px 12px 15px;\n color: $light_gray;\n height: 47px;\n caret-color: $cursor;\n &:-webkit-autofill {\n -webkit-box-shadow: 0 0 0px 1000px $bg inset !important;\n -webkit-text-fill-color: $cursor !important;\n }\n }\n }\n .el-form-item {\n border: 1px solid rgba(255, 255, 255, 0.1);\n background: rgba(0, 0, 0, 0.1);\n border-radius: 5px;\n color: #454545;\n }\n .login-button {\n width: 100%;\n margin: 0 0 10px 0;\n }\n .omit-host-note {\n color: #596f8c;\n font-size: 0.8em;\n font-style: italic;\n margin: -20px 0 15px 0;\n padding: 3px 0 0 15px;\n }\n }\n</style>\n\n<style rel=\"stylesheet/scss\" lang=\"scss\" scoped>\n$bg:#2d3a4b;\n$dark_gray:#889aa4;\n$light_gray:#eee;\n\n.login-container {\n min-height: 100%;\n width: 100%;\n background-color: $bg;\n overflow: hidden;\n .login-form {\n position: relative;\n width: 520px;\n max-width: 100%;\n padding: 160px 35px 0;\n margin: 0 auto;\n overflow: hidden;\n }\n .tips {\n font-size: 14px;\n color: #fff;\n margin-bottom: 10px;\n span {\n &:first-of-type {\n margin-right: 16px;\n }\n }\n }\n .svg-container {\n padding: 6px 5px 6px 15px;\n color: $dark_gray;\n vertical-align: middle;\n width: 30px;\n display: inline-block;\n }\n .title-container {\n position: relative;\n .title {\n font-size: 26px;\n color: $light_gray;\n margin: 0px auto 40px auto;\n text-align: center;\n font-weight: bold;\n }\n .set-language {\n color: #fff;\n position: absolute;\n top: 3px;\n font-size:18px;\n right: 0px;\n cursor: pointer;\n }\n }\n .show-pwd {\n position: absolute;\n right: 10px;\n top: 7px;\n font-size: 16px;\n color: $dark_gray;\n cursor: pointer;\n user-select: none;\n }\n .thirdparty-button {\n position: absolute;\n right: 0;\n bottom: 6px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5bb13616&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\nimport style1 from \"./index.vue?vue&type=style&index=1&id=5bb13616&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5bb13616\",\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-f625.29237434.js b/priv/static/adminfe/static/js/chunk-f625.29237434.js @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-f625"],{BHDI:function(t,e,r){},FeI2:function(t,e,r){"use strict";var n=r("BHDI");r.n(n).a},i7Kn:function(t,e,r){"use strict";var n=r("o0o1"),s=r.n(n),i=r("yXPU"),a=r.n(i),o={props:{selectedUsers:{type:Array,default:function(){return[]}}},computed:{isDesktop:function(){return"desktop"===this.$store.state.app.device},showDropdownForMultipleUsers:function(){return this.$props.selectedUsers.length>0},tagPolicyEnabled:function(){return this.$store.state.users.mrfPolicies.includes("Pleroma.Web.ActivityPub.MRF.TagPolicy")}},methods:{mappers:function(){var t=this,e=function(){var e=a()(s.a.mark(function e(r,n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n(r);case 2:t.$emit("apply-action");case 3:case"end":return e.stop()}},e)}));return function(t,r){return e.apply(this,arguments)}}();return{grantRight:function(r){return function(){var n=function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("AddRight",{users:n,right:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),i=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&!e.roles[r]&&t.$store.state.user.id!==e.id});e(i,n)}},revokeRight:function(r){return function(){var n=function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeleteRight",{users:n,right:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),i=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.roles[r]&&t.$store.state.user.id!==e.id});e(i,n)}},activate:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&e.deactivated&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ActivateUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},deactivate:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&!e.deactivated&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeactivateUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},remove:function(){var r=t.selectedUsers.filter(function(e){return e.nickname&&t.$store.state.user.id!==e.id});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("DeleteUsers",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},addTag:function(r){return function(){var n=t.selectedUsers.filter(function(e){return"mrf_tag:disable-remote-subscription"===r||"mrf_tag:disable-any-subscription"===r?t.isLocalUser(e)&&!e.tags.includes(r):e.nickname&&!e.tags.includes(r)});e(n,function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("AddTag",{users:n,tag:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())}},removeTag:function(r){return a()(s.a.mark(function n(){var i;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:i=t.selectedUsers.filter(function(e){return"mrf_tag:disable-remote-subscription"===r||"mrf_tag:disable-any-subscription"===r?t.isLocalUser(e)&&e.tags.includes(r):e.nickname&&e.tags.includes(r)}),e(i,function(){var e=a()(s.a.mark(function e(n){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("RemoveTag",{users:n,tag:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}());case 3:case"end":return n.stop()}},n)}))},requirePasswordReset:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("RequirePasswordReset",r);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},approveAccounts:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.approval_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ApproveUsersAccount",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},confirmAccounts:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.confirmation_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ConfirmUsersEmail",{users:r});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())},resendConfirmation:function(){var r=t.selectedUsers.filter(function(e){return t.isLocalUser(e)&&e.confirmation_pending});e(r,function(){var e=a()(s.a.mark(function e(r){return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.$store.dispatch("ResendConfirmationEmail",r);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}())}}},enableTagPolicy:function(){var t=this;this.$confirm(this.$t("users.confirmEnablingTagPolicy"),{confirmButtonText:"Yes",cancelButtonText:"Cancel",type:"warning"}).then(function(){t.$message({type:"success",message:t.$t("users.enableTagPolicySuccessMessage")}),t.$store.dispatch("EnableTagPolicy")}).catch(function(){t.$message({type:"info",message:"Canceled"})})},isLocalUser:function(t){return t.nickname&&t.local},grantRightToMultipleUsers:function(t){var e=this.mappers().grantRight;this.confirmMessage(this.$t("users.grantRightConfirmation",{right:t}),e(t))},revokeRightFromMultipleUsers:function(t){var e=this.mappers().revokeRight;this.confirmMessage(this.$t("users.revokeRightConfirmation",{right:t}),e(t))},activateMultipleUsers:function(){var t=this.mappers().activate;this.confirmMessage(this.$t("users.activateMultipleUsersConfirmation"),t)},deactivateMultipleUsers:function(){var t=this.mappers().deactivate;this.confirmMessage(this.$t("users.deactivateMultipleUsersConfirmation"),t)},deleteMultipleUsers:function(){var t=this.mappers().remove;this.confirmMessage(this.$t("users.deleteMultipleUsersConfirmation"),t)},requirePasswordReset:function(){if(this.$store.state.user.nodeInfo.metadata.mailerEnabled){var t=this.mappers().requirePasswordReset;this.confirmMessage(this.$t("users.requirePasswordResetConfirmation"),t)}else this.$alert(this.$t("users.mailerMustBeEnabled"),"Error",{type:"error"})},addTagForMultipleUsers:function(t){var e=this.mappers().addTag;this.confirmMessage(this.$t("users.addTagForMultipleUsersConfirmation"),e(t))},removeTagFromMultipleUsers:function(t){var e=this.mappers().removeTag;this.confirmMessage(this.$t("users.removeTagFromMultipleUsersConfirmation"),e(t))},approveAccountsForMultipleUsers:function(){var t=this.mappers().approveAccounts;this.confirmMessage(this.$t("users.approveAccountsConfirmation"),t)},rejectAccountsForMultipleUsers:function(){var t=this.mappers().remove;this.confirmMessage(this.$t("users.rejectAccountsConfirmation"),t)},confirmAccountsForMultipleUsers:function(){var t=this.mappers().confirmAccounts;this.confirmMessage(this.$t("users.confirmAccountsConfirmation"),t)},resendConfirmationForMultipleUsers:function(){var t=this.mappers().resendConfirmation;this.confirmMessage(this.$t("users.resendEmailConfirmation"),t)},confirmMessage:function(t,e){var r=this;this.$confirm(t,{confirmButtonText:this.$t("users.ok"),cancelButtonText:this.$t("users.cancel"),type:"warning"}).then(function(){e()}).catch(function(){r.$message({type:"info",message:r.$t("users.canceled")})})}}},u=(r("FeI2"),r("KHd+")),c=Object(u.a)(o,function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("el-dropdown",{attrs:{size:"small",trigger:"click",placement:"bottom-start"}},[t.isDesktop?r("el-button",{staticClass:"actions-button"},[r("span",{staticClass:"actions-button-container"},[r("span",[r("i",{staticClass:"el-icon-edit"}),t._v("\n "+t._s(t.$t("users.moderateUsers"))+"\n ")]),t._v(" "),r("i",{staticClass:"el-icon-arrow-down el-icon--right"})])]):t._e(),t._v(" "),t.showDropdownForMultipleUsers?r("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[r("el-dropdown-item",{nativeOn:{click:function(e){return t.grantRightToMultipleUsers("admin")}}},[t._v("\n "+t._s(t.$t("users.grantAdmin"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.revokeRightFromMultipleUsers("admin")}}},[t._v("\n "+t._s(t.$t("users.revokeAdmin"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.grantRightToMultipleUsers("moderator")}}},[t._v("\n "+t._s(t.$t("users.grantModerator"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.revokeRightFromMultipleUsers("moderator")}}},[t._v("\n "+t._s(t.$t("users.revokeModerator"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.approveAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.approveAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.rejectAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.rejectAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.confirmAccountsForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.confirmAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.resendConfirmationForMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.resendConfirmation"))+"\n ")]),t._v(" "),r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.activateMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.activateAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.deactivateMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.deactivateAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.deleteMultipleUsers(e)}}},[t._v("\n "+t._s(t.$t("users.deleteAccounts"))+"\n ")]),t._v(" "),r("el-dropdown-item",{nativeOn:{click:function(e){return t.requirePasswordReset(e)}}},[t._v("\n "+t._s(t.$t("users.requirePasswordReset"))+"\n ")]),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover",attrs:{divided:""}},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.forceNsfw")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:media-force-nsfw")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.stripMedia")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:media-strip")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.forceUnlisted")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:force-unlisted")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.sandbox")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:sandbox")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.disableRemoteSubscriptionForMultiple")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:disable-remote-subscription")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?r("el-dropdown-item",{staticClass:"no-hover"},[r("div",{staticClass:"tag-container"},[r("span",{staticClass:"tag-text"},[t._v(t._s(t.$t("users.disableAnySubscriptionForMultiple")))]),t._v(" "),r("el-button-group",{staticClass:"tag-button-group"},[r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.addTagForMultipleUsers("mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.apply"))+"\n ")]),t._v(" "),r("el-button",{attrs:{size:"mini"},nativeOn:{click:function(e){return t.removeTagFromMultipleUsers("mrf_tag:disable-any-subscription")}}},[t._v("\n "+t._s(t.$t("users.remove"))+"\n ")])],1)],1)]):t._e(),t._v(" "),t.tagPolicyEnabled?t._e():r("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(e){return t.enableTagPolicy(e)}}},[t._v("\n "+t._s(t.$t("users.enableTagPolicy"))+"\n ")])],1):r("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[r("el-dropdown-item",[t._v("\n "+t._s(t.$t("users.selectUsers"))+"\n ")])],1)],1)},[],!1,null,"794b0bb8",null);c.options.__file="MultipleUsersMenu.vue";e.a=c.exports}}]); -//# sourceMappingURL=chunk-f625.29237434.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/chunk-f625.29237434.js.map b/priv/static/adminfe/static/js/chunk-f625.29237434.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/views/users/components/MultipleUsersMenu.vue?ca4f","webpack:///./src/views/users/components/MultipleUsersMenu.vue?a020","webpack:///./src/views/users/components/MultipleUsersMenu.vue?56ef","webpack:///src/views/users/components/MultipleUsersMenu.vue","webpack:///./src/views/users/components/MultipleUsersMenu.vue"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_MultipleUsersMenu_vue_vue_type_style_index_0_id_794b0bb8_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","components_MultipleUsersMenuvue_type_script_lang_js_","props","selectedUsers","type","Array","default","computed","isDesktop","this","$store","state","app","device","showDropdownForMultipleUsers","$props","length","tagPolicyEnabled","users","mrfPolicies","includes","methods","mappers","_this","applyAction","_ref","asyncToGenerator_default","regenerator_default","a","mark","_callee","dispatchAction","wrap","_context","prev","next","$emit","stop","_x","_x2","apply","arguments","grantRight","right","addRightFn","_ref2","_callee2","_context2","dispatch","abrupt","sent","_x3","filtered","filter","user","isLocalUser","roles","id","revokeRight","deleteRightFn","_ref3","_callee3","_context3","_x4","activate","nickname","deactivated","_ref4","_callee4","_context4","_x5","deactivate","_ref5","_callee5","_context5","_x6","remove","_ref6","_callee6","_context6","_x7","addTag","tag","tags","_ref7","_callee7","_context7","_x8","removeTag","_callee9","_context9","_ref9","_callee8","_context8","_x9","requirePasswordReset","_ref10","_callee10","_context10","_x10","approveAccounts","approval_pending","_ref11","_callee11","_context11","_x11","confirmAccounts","confirmation_pending","_ref12","_callee12","_context12","_x12","resendConfirmation","_ref13","_callee13","_context13","_x13","enableTagPolicy","_this2","$confirm","$t","confirmButtonText","cancelButtonText","then","$message","message","catch","local","grantRightToMultipleUsers","confirmMessage","revokeRightFromMultipleUsers","activateMultipleUsers","deactivateMultipleUsers","deleteMultipleUsers","nodeInfo","metadata","mailerEnabled","$alert","addTagForMultipleUsers","removeTagFromMultipleUsers","approveAccountsForMultipleUsers","rejectAccountsForMultipleUsers","confirmAccountsForMultipleUsers","resendConfirmationForMultipleUsers","_this3","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","attrs","size","trigger","placement","staticClass","_v","_s","_e","slot","nativeOn","click","$event","divided","options","__file","__webpack_exports__"],"mappings":"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","file":"static/js/chunk-f625.29237434.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=style&index=0&id=794b0bb8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=style&index=0&id=794b0bb8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-dropdown',{attrs:{\"size\":\"small\",\"trigger\":\"click\",\"placement\":\"bottom-start\"}},[(_vm.isDesktop)?_c('el-button',{staticClass:\"actions-button\"},[_c('span',{staticClass:\"actions-button-container\"},[_c('span',[_c('i',{staticClass:\"el-icon-edit\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('users.moderateUsers'))+\"\\n \")]),_vm._v(\" \"),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})])]):_vm._e(),_vm._v(\" \"),(_vm.showDropdownForMultipleUsers)?_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.grantRightToMultipleUsers('admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.grantAdmin'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.revokeRightFromMultipleUsers('admin')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.revokeAdmin'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.grantRightToMultipleUsers('moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.grantModerator'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.revokeRightFromMultipleUsers('moderator')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.revokeModerator'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.approveAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.approveAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.rejectAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.rejectAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.confirmAccountsForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.confirmAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.resendConfirmationForMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.resendConfirmation'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.activateMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.activateAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deactivateMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deactivateAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.deleteMultipleUsers($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.deleteAccounts'))+\"\\n \")]),_vm._v(\" \"),_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.requirePasswordReset($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.requirePasswordReset'))+\"\\n \")]),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\",attrs:{\"divided\":\"\"}},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.forceNsfw')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:media-force-nsfw')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.stripMedia')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:media-strip')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.forceUnlisted')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:force-unlisted')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.sandbox')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:sandbox')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.disableRemoteSubscriptionForMultiple')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:disable-remote-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(_vm.tagPolicyEnabled)?_c('el-dropdown-item',{staticClass:\"no-hover\"},[_c('div',{staticClass:\"tag-container\"},[_c('span',{staticClass:\"tag-text\"},[_vm._v(_vm._s(_vm.$t('users.disableAnySubscriptionForMultiple')))]),_vm._v(\" \"),_c('el-button-group',{staticClass:\"tag-button-group\"},[_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.addTagForMultipleUsers('mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.apply'))+\"\\n \")]),_vm._v(\" \"),_c('el-button',{attrs:{\"size\":\"mini\"},nativeOn:{\"click\":function($event){return _vm.removeTagFromMultipleUsers('mrf_tag:disable-any-subscription')}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.remove'))+\"\\n \")])],1)],1)]):_vm._e(),_vm._v(\" \"),(!_vm.tagPolicyEnabled)?_c('el-dropdown-item',{attrs:{\"divided\":\"\"},nativeOn:{\"click\":function($event){return _vm.enableTagPolicy($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.enableTagPolicy'))+\"\\n \")]):_vm._e()],1):_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[_c('el-dropdown-item',[_vm._v(\"\\n \"+_vm._s(_vm.$t('users.selectUsers'))+\"\\n \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultipleUsersMenu.vue?vue&type=script&lang=js&\"","<template>\n <el-dropdown size=\"small\" trigger=\"click\" placement=\"bottom-start\">\n <el-button v-if=\"isDesktop\" class=\"actions-button\">\n <span class=\"actions-button-container\">\n <span>\n <i class=\"el-icon-edit\" />\n {{ $t('users.moderateUsers') }}\n </span>\n <i class=\"el-icon-arrow-down el-icon--right\"/>\n </span>\n </el-button>\n <el-dropdown-menu v-if=\"showDropdownForMultipleUsers\" slot=\"dropdown\">\n <el-dropdown-item\n @click.native=\"grantRightToMultipleUsers('admin')\">\n {{ $t('users.grantAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"revokeRightFromMultipleUsers('admin')\">\n {{ $t('users.revokeAdmin') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"grantRightToMultipleUsers('moderator')\">\n {{ $t('users.grantModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"revokeRightFromMultipleUsers('moderator')\">\n {{ $t('users.revokeModerator') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"approveAccountsForMultipleUsers\">\n {{ $t('users.approveAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"rejectAccountsForMultipleUsers\">\n {{ $t('users.rejectAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"confirmAccountsForMultipleUsers\">\n {{ $t('users.confirmAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"resendConfirmationForMultipleUsers\">\n {{ $t('users.resendConfirmation') }}\n </el-dropdown-item>\n <el-dropdown-item\n divided\n @click.native=\"activateMultipleUsers\">\n {{ $t('users.activateAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deactivateMultipleUsers\">\n {{ $t('users.deactivateAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"deleteMultipleUsers\">\n {{ $t('users.deleteAccounts') }}\n </el-dropdown-item>\n <el-dropdown-item\n @click.native=\"requirePasswordReset\">\n {{ $t('users.requirePasswordReset') }}\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" divided class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.forceNsfw') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:media-force-nsfw')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:media-force-nsfw')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.stripMedia') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:media-strip')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:media-strip')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.forceUnlisted') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:force-unlisted')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:force-unlisted')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.sandbox') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:sandbox')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:sandbox')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.disableRemoteSubscriptionForMultiple') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:disable-remote-subscription')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:disable-remote-subscription')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item v-if=\"tagPolicyEnabled\" class=\"no-hover\">\n <div class=\"tag-container\">\n <span class=\"tag-text\">{{ $t('users.disableAnySubscriptionForMultiple') }}</span>\n <el-button-group class=\"tag-button-group\">\n <el-button size=\"mini\" @click.native=\"addTagForMultipleUsers('mrf_tag:disable-any-subscription')\">\n {{ $t('users.apply') }}\n </el-button>\n <el-button size=\"mini\" @click.native=\"removeTagFromMultipleUsers('mrf_tag:disable-any-subscription')\">\n {{ $t('users.remove') }}\n </el-button>\n </el-button-group>\n </div>\n </el-dropdown-item>\n <el-dropdown-item\n v-if=\"!tagPolicyEnabled\"\n divided\n @click.native=\"enableTagPolicy\">\n {{ $t('users.enableTagPolicy') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n <el-dropdown-menu v-else slot=\"dropdown\">\n <el-dropdown-item>\n {{ $t('users.selectUsers') }}\n </el-dropdown-item>\n </el-dropdown-menu>\n </el-dropdown>\n</template>\n\n<script>\nexport default {\n props: {\n selectedUsers: {\n type: Array,\n default: function() {\n return []\n }\n }\n },\n computed: {\n isDesktop() {\n return this.$store.state.app.device === 'desktop'\n },\n showDropdownForMultipleUsers() {\n return this.$props.selectedUsers.length > 0\n },\n tagPolicyEnabled() {\n return this.$store.state.users.mrfPolicies.includes('Pleroma.Web.ActivityPub.MRF.TagPolicy')\n }\n },\n methods: {\n mappers() {\n const applyAction = async(users, dispatchAction) => {\n await dispatchAction(users)\n this.$emit('apply-action')\n }\n return {\n grantRight: (right) => () => {\n const filterUsersFn = user => this.isLocalUser(user) && !user.roles[right] && this.$store.state.user.id !== user.id\n const addRightFn = async(users) => await this.$store.dispatch('AddRight', { users, right })\n const filtered = this.selectedUsers.filter(filterUsersFn)\n\n applyAction(filtered, addRightFn)\n },\n revokeRight: (right) => () => {\n const filterUsersFn = user => this.isLocalUser(user) && user.roles[right] && this.$store.state.user.id !== user.id\n const deleteRightFn = async(users) => await this.$store.dispatch('DeleteRight', { users, right })\n const filtered = this.selectedUsers.filter(filterUsersFn)\n\n applyAction(filtered, deleteRightFn)\n },\n activate: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && user.deactivated && this.$store.state.user.id !== user.id)\n const activateUsersFn = async(users) => await this.$store.dispatch('ActivateUsers', { users })\n\n applyAction(filtered, activateUsersFn)\n },\n deactivate: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && !user.deactivated && this.$store.state.user.id !== user.id)\n const deactivateUsersFn = async(users) => await this.$store.dispatch('DeactivateUsers', { users })\n\n applyAction(filtered, deactivateUsersFn)\n },\n remove: () => {\n const filtered = this.selectedUsers.filter(user => user.nickname && this.$store.state.user.id !== user.id)\n const deleteAccountFn = async(users) => await this.$store.dispatch('DeleteUsers', { users })\n\n applyAction(filtered, deleteAccountFn)\n },\n addTag: (tag) => () => {\n const filtered = this.selectedUsers.filter(user =>\n tag === 'mrf_tag:disable-remote-subscription' || tag === 'mrf_tag:disable-any-subscription'\n ? this.isLocalUser(user) && !user.tags.includes(tag)\n : user.nickname && !user.tags.includes(tag))\n const addTagFn = async(users) => await this.$store.dispatch('AddTag', { users, tag })\n applyAction(filtered, addTagFn)\n },\n removeTag: (tag) => async() => {\n const filtered = this.selectedUsers.filter(user =>\n tag === 'mrf_tag:disable-remote-subscription' || tag === 'mrf_tag:disable-any-subscription'\n ? this.isLocalUser(user) && user.tags.includes(tag)\n : user.nickname && user.tags.includes(tag))\n const removeTagFn = async(users) => await this.$store.dispatch('RemoveTag', { users, tag })\n\n applyAction(filtered, removeTagFn)\n },\n requirePasswordReset: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user))\n const requirePasswordResetFn = async(users) => await this.$store.dispatch('RequirePasswordReset', users)\n\n applyAction(filtered, requirePasswordResetFn)\n },\n approveAccounts: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.approval_pending)\n const approveAccountFn = async(users) => await this.$store.dispatch('ApproveUsersAccount', { users })\n\n applyAction(filtered, approveAccountFn)\n },\n confirmAccounts: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.confirmation_pending)\n const confirmAccountFn = async(users) => await this.$store.dispatch('ConfirmUsersEmail', { users })\n\n applyAction(filtered, confirmAccountFn)\n },\n resendConfirmation: () => {\n const filtered = this.selectedUsers.filter(user => this.isLocalUser(user) && user.confirmation_pending)\n const resendConfirmationFn = async(users) => await this.$store.dispatch('ResendConfirmationEmail', users)\n\n applyAction(filtered, resendConfirmationFn)\n }\n }\n },\n enableTagPolicy() {\n this.$confirm(\n this.$t('users.confirmEnablingTagPolicy'),\n {\n confirmButtonText: 'Yes',\n cancelButtonText: 'Cancel',\n type: 'warning'\n }).then(() => {\n this.$message({\n type: 'success',\n message: this.$t('users.enableTagPolicySuccessMessage')\n })\n this.$store.dispatch('EnableTagPolicy')\n }).catch(() => {\n this.$message({\n type: 'info',\n message: 'Canceled'\n })\n })\n },\n isLocalUser(user) {\n return user.nickname && user.local\n },\n grantRightToMultipleUsers(right) {\n const { grantRight } = this.mappers()\n this.confirmMessage(\n this.$t('users.grantRightConfirmation', { right }),\n grantRight(right)\n )\n },\n revokeRightFromMultipleUsers(right) {\n const { revokeRight } = this.mappers()\n this.confirmMessage(\n this.$t('users.revokeRightConfirmation', { right }),\n revokeRight(right)\n )\n },\n activateMultipleUsers() {\n const { activate } = this.mappers()\n this.confirmMessage(\n this.$t('users.activateMultipleUsersConfirmation'),\n activate\n )\n },\n deactivateMultipleUsers() {\n const { deactivate } = this.mappers()\n this.confirmMessage(\n this.$t('users.deactivateMultipleUsersConfirmation'),\n deactivate\n )\n },\n deleteMultipleUsers() {\n const { remove } = this.mappers()\n this.confirmMessage(\n this.$t('users.deleteMultipleUsersConfirmation'),\n remove\n )\n },\n requirePasswordReset() {\n const mailerEnabled = this.$store.state.user.nodeInfo.metadata.mailerEnabled\n\n if (!mailerEnabled) {\n this.$alert(this.$t('users.mailerMustBeEnabled'), 'Error', { type: 'error' })\n\n return\n }\n\n const { requirePasswordReset } = this.mappers()\n this.confirmMessage(\n this.$t('users.requirePasswordResetConfirmation'),\n requirePasswordReset\n )\n },\n addTagForMultipleUsers(tag) {\n const { addTag } = this.mappers()\n this.confirmMessage(\n this.$t('users.addTagForMultipleUsersConfirmation'),\n addTag(tag)\n )\n },\n removeTagFromMultipleUsers(tag) {\n const { removeTag } = this.mappers()\n this.confirmMessage(\n this.$t('users.removeTagFromMultipleUsersConfirmation'),\n removeTag(tag)\n )\n },\n approveAccountsForMultipleUsers() {\n const { approveAccounts } = this.mappers()\n this.confirmMessage(\n this.$t('users.approveAccountsConfirmation'),\n approveAccounts\n )\n },\n rejectAccountsForMultipleUsers() {\n const { remove } = this.mappers()\n this.confirmMessage(\n this.$t('users.rejectAccountsConfirmation'),\n remove\n )\n },\n confirmAccountsForMultipleUsers() {\n const { confirmAccounts } = this.mappers()\n this.confirmMessage(\n this.$t('users.confirmAccountsConfirmation'),\n confirmAccounts\n )\n },\n resendConfirmationForMultipleUsers() {\n const { resendConfirmation } = this.mappers()\n this.confirmMessage(\n this.$t('users.resendEmailConfirmation'),\n resendConfirmation\n )\n },\n confirmMessage(message, applyAction) {\n this.$confirm(message, {\n confirmButtonText: this.$t('users.ok'),\n cancelButtonText: this.$t('users.cancel'),\n type: 'warning'\n }).then(() => {\n applyAction()\n }).catch(() => {\n this.$message({\n type: 'info',\n message: this.$t('users.canceled')\n })\n })\n }\n }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n .actions-button {\n text-align: left;\n width: 350px;\n padding: 10px;\n }\n .actions-button-container {\n display: flex;\n justify-content: space-between;\n }\n .el-dropdown {\n float: right;\n }\n .el-icon-edit {\n margin-right: 5px;\n }\n .tag-container {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n .tag-text {\n padding-right: 20px;\n }\n .no-hover:hover {\n color: #606266;\n background-color: white;\n cursor: auto;\n }\n</style>\n","import { render, staticRenderFns } from \"./MultipleUsersMenu.vue?vue&type=template&id=794b0bb8&scoped=true&\"\nimport script from \"./MultipleUsersMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./MultipleUsersMenu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MultipleUsersMenu.vue?vue&type=style&index=0&id=794b0bb8&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"794b0bb8\",\n null\n \n)\n\ncomponent.options.__file = \"MultipleUsersMenu.vue\"\nexport default component.exports"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/runtime.8f631d12.js b/priv/static/adminfe/static/js/runtime.8f631d12.js @@ -1,2 +0,0 @@ -!function(e){function n(n){for(var c,r,a=n[0],h=n[1],f=n[2],d=0,s=[];d<a.length;d++)r=a[d],Object.prototype.hasOwnProperty.call(u,r)&&u[r]&&s.push(u[r][0]),u[r]=0;for(c in h)Object.prototype.hasOwnProperty.call(h,c)&&(e[c]=h[c]);for(i&&i(n);s.length;)s.shift()();return o.push.apply(o,f||[]),t()}function t(){for(var e,n=0;n<o.length;n++){for(var t=o[n],c=!0,r=1;r<t.length;r++){var h=t[r];0!==u[h]&&(c=!1)}c&&(o.splice(n--,1),e=a(a.s=t[0]))}return e}var c={},r={runtime:0},u={runtime:0},o=[];function a(n){if(c[n])return c[n].exports;var t=c[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.e=function(e){var n=[];r[e]?n.push(r[e]):0!==r[e]&&{"chunk-68ea9":1,"chunk-6e81":1,"chunk-commons":1,"chunk-03c5":1,"chunk-546f":1,"chunk-9d55":1,"chunk-7c6b":1,"chunk-3365":1,"chunk-521f":1,"chunk-654d":1,"chunk-850d":1,"chunk-f625":1,"chunk-176e":1,"chunk-342d":1,"chunk-d34d":1}[e]&&n.push(r[e]=new Promise(function(n,t){for(var c=({"chunk-commons":"chunk-commons"}[e]||e)+"."+{"7zzA":"31d6cfe0",JEtC:"31d6cfe0","chunk-68ea9":"dac85813","chunk-6e81":"1c0f2da2","chunk-commons":"c0eb3eb7","chunk-03c5":"f59788cf","chunk-546f":"692d1ab2","chunk-68ea":"31d6cfe0","chunk-9d55":"e2cb1409","chunk-7c6b":"365cbeda","chunk-d55e":"31d6cfe0","chunk-3365":"201aa8e6","chunk-521f":"b745ee5d","chunk-654d":"94689c39","chunk-850d":"cc4f0ac6","chunk-f625":"25a6a4ae","chunk-176e":"a3c8376d","chunk-342d":"e342722b",oAJy:"31d6cfe0","chunk-16d0":"31d6cfe0","chunk-d34d":"b0dd6fb4"}[e]+".css",r=a.p+c,u=document.getElementsByTagName("link"),o=0;o<u.length;o++){var h=(d=u[o]).getAttribute("data-href")||d.getAttribute("href");if("stylesheet"===d.rel&&(h===c||h===r))return n()}var f=document.getElementsByTagName("style");for(o=0;o<f.length;o++){var d;if((h=(d=f[o]).getAttribute("data-href"))===c||h===r)return n()}var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",i.onload=n,i.onerror=function(n){var c=n&&n.target&&n.target.src||r,u=new Error("Loading CSS chunk "+e+" failed.\n("+c+")");u.request=c,t(u)},i.href=r,document.getElementsByTagName("head")[0].appendChild(i)}).then(function(){r[e]=0}));var t=u[e];if(0!==t)if(t)n.push(t[2]);else{var c=new Promise(function(n,c){t=u[e]=[n,c]});n.push(t[2]=c);var o,h=document.createElement("script");h.charset="utf-8",h.timeout=120,a.nc&&h.setAttribute("nonce",a.nc),h.src=function(e){return a.p+"static/js/"+({"chunk-commons":"chunk-commons"}[e]||e)+"."+{"7zzA":"e1ae1c94",JEtC:"f9ba4594","chunk-68ea9":"9821cd6a","chunk-6e81":"ebe9039f","chunk-commons":"a6002038","chunk-03c5":"1c694c49","chunk-546f":"81668ba7","chunk-68ea":"6d56674a","chunk-9d55":"7af22f45","chunk-7c6b":"56a14571","chunk-d55e":"f9bab96d","chunk-3365":"b73c30a8","chunk-521f":"748b331d","chunk-654d":"653b067f","chunk-850d":"3e6102c2","chunk-f625":"29237434","chunk-176e":"be050aba","chunk-342d":"479e01dd",oAJy:"2d5429b2","chunk-16d0":"fef0ce65","chunk-d34d":"0f06fe76"}[e]+".js"}(e);var f=new Error;o=function(n){h.onerror=h.onload=null,clearTimeout(d);var t=u[e];if(0!==t){if(t){var c=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;f.message="Loading chunk "+e+" failed.\n("+c+": "+r+")",f.name="ChunkLoadError",f.type=c,f.request=r,t[1](f)}u[e]=void 0}};var d=setTimeout(function(){o({type:"timeout",target:h})},12e4);h.onerror=h.onload=o,document.head.appendChild(h)}return Promise.all(n)},a.m=e,a.c=c,a.d=function(e,n,t){a.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,n){if(1&n&&(e=a(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var c in e)a.d(t,c,function(n){return e[n]}.bind(null,c));return t},a.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(n,"a",n),n},a.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},a.p="",a.oe=function(e){throw console.error(e),e};var h=window.webpackJsonp=window.webpackJsonp||[],f=h.push.bind(h);h.push=n,h=h.slice();for(var d=0;d<h.length;d++)n(h[d]);var i=f;t()}([]); -//# sourceMappingURL=runtime.8f631d12.js.map -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/runtime.8f631d12.js.map b/priv/static/adminfe/static/js/runtime.8f631d12.js.map @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","runtime","exports","module","l","e","promises","chunk-68ea9","chunk-6e81","chunk-commons","chunk-03c5","chunk-546f","chunk-9d55","chunk-7c6b","chunk-3365","chunk-521f","chunk-654d","chunk-850d","chunk-f625","chunk-176e","chunk-342d","chunk-d34d","Promise","resolve","reject","href","7zzA","JEtC","chunk-68ea","chunk-d55e","oAJy","chunk-16d0","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","head","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime.8f631d12.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"runtime\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"chunk-commons\":\"chunk-commons\"}[chunkId]||chunkId) + \".\" + {\"7zzA\":\"e1ae1c94\",\"JEtC\":\"f9ba4594\",\"chunk-68ea9\":\"9821cd6a\",\"chunk-6e81\":\"ebe9039f\",\"chunk-commons\":\"a6002038\",\"chunk-03c5\":\"1c694c49\",\"chunk-546f\":\"81668ba7\",\"chunk-68ea\":\"6d56674a\",\"chunk-9d55\":\"7af22f45\",\"chunk-7c6b\":\"56a14571\",\"chunk-d55e\":\"f9bab96d\",\"chunk-3365\":\"b73c30a8\",\"chunk-521f\":\"748b331d\",\"chunk-654d\":\"653b067f\",\"chunk-850d\":\"3e6102c2\",\"chunk-f625\":\"29237434\",\"chunk-176e\":\"be050aba\",\"chunk-342d\":\"479e01dd\",\"oAJy\":\"2d5429b2\",\"chunk-16d0\":\"fef0ce65\",\"chunk-d34d\":\"0f06fe76\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-68ea9\":1,\"chunk-6e81\":1,\"chunk-commons\":1,\"chunk-03c5\":1,\"chunk-546f\":1,\"chunk-9d55\":1,\"chunk-7c6b\":1,\"chunk-3365\":1,\"chunk-521f\":1,\"chunk-654d\":1,\"chunk-850d\":1,\"chunk-f625\":1,\"chunk-176e\":1,\"chunk-342d\":1,\"chunk-d34d\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"chunk-commons\":\"chunk-commons\"}[chunkId]||chunkId) + \".\" + {\"7zzA\":\"31d6cfe0\",\"JEtC\":\"31d6cfe0\",\"chunk-68ea9\":\"dac85813\",\"chunk-6e81\":\"1c0f2da2\",\"chunk-commons\":\"c0eb3eb7\",\"chunk-03c5\":\"f59788cf\",\"chunk-546f\":\"692d1ab2\",\"chunk-68ea\":\"31d6cfe0\",\"chunk-9d55\":\"e2cb1409\",\"chunk-7c6b\":\"365cbeda\",\"chunk-d55e\":\"31d6cfe0\",\"chunk-3365\":\"201aa8e6\",\"chunk-521f\":\"b745ee5d\",\"chunk-654d\":\"94689c39\",\"chunk-850d\":\"cc4f0ac6\",\"chunk-f625\":\"25a6a4ae\",\"chunk-176e\":\"a3c8376d\",\"chunk-342d\":\"e342722b\",\"oAJy\":\"31d6cfe0\",\"chunk-16d0\":\"31d6cfe0\",\"chunk-d34d\":\"b0dd6fb4\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.request = request;\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} -\ No newline at end of file diff --git a/priv/static/adminfe/static/js/runtime.f7228ae8.js b/priv/static/adminfe/static/js/runtime.f7228ae8.js @@ -0,0 +1,2 @@ +!function(e){function n(n){for(var c,r,a=n[0],h=n[1],f=n[2],i=0,s=[];i<a.length;i++)r=a[i],Object.prototype.hasOwnProperty.call(u,r)&&u[r]&&s.push(u[r][0]),u[r]=0;for(c in h)Object.prototype.hasOwnProperty.call(h,c)&&(e[c]=h[c]);for(d&&d(n);s.length;)s.shift()();return o.push.apply(o,f||[]),t()}function t(){for(var e,n=0;n<o.length;n++){for(var t=o[n],c=!0,r=1;r<t.length;r++){var h=t[r];0!==u[h]&&(c=!1)}c&&(o.splice(n--,1),e=a(a.s=t[0]))}return e}var c={},r={runtime:0},u={runtime:0},o=[];function a(n){if(c[n])return c[n].exports;var t=c[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,a),t.l=!0,t.exports}a.e=function(e){var n=[];r[e]?n.push(r[e]):0!==r[e]&&{"chunk-68ea":1,"chunk-6e81":1,"chunk-commons":1,"chunk-2d97":1,"chunk-0171":1,"chunk-565e":1,"chunk-60a9":1,"chunk-7c6b":1,"chunk-97e2":1,"chunk-176e":1,"chunk-40a4":1,"chunk-654e":1,"chunk-6e8c":1,"chunk-7503":1,"chunk-9a72":1}[e]&&n.push(r[e]=new Promise(function(n,t){for(var c=({"chunk-commons":"chunk-commons"}[e]||e)+"."+{"7zzA":"31d6cfe0",JEtC:"31d6cfe0","chunk-68ea":"be16aa5f","chunk-6e81":"7f126ac7","chunk-commons":"67f053f7","chunk-2d97":"7053ff89","chunk-0171":"82f5a48b","chunk-5118":"31d6cfe0","chunk-565e":"aed36fe0","chunk-60a9":"a80ec218","chunk-7c6b":"4c8fa90a","chunk-97e2":"b21a8915","chunk-d55e":"31d6cfe0","chunk-176e":"4d21033f","chunk-40a4":"2fe71f6c","chunk-654e":"e105ec9c","chunk-6e8c":"5832dc0a","chunk-7503":"37b33ad8",oAJy:"31d6cfe0","chunk-16d0":"31d6cfe0","chunk-9a72":"3e577534"}[e]+".css",r=a.p+c,u=document.getElementsByTagName("link"),o=0;o<u.length;o++){var h=(i=u[o]).getAttribute("data-href")||i.getAttribute("href");if("stylesheet"===i.rel&&(h===c||h===r))return n()}var f=document.getElementsByTagName("style");for(o=0;o<f.length;o++){var i;if((h=(i=f[o]).getAttribute("data-href"))===c||h===r)return n()}var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onload=n,d.onerror=function(n){var c=n&&n.target&&n.target.src||r,u=new Error("Loading CSS chunk "+e+" failed.\n("+c+")");u.request=c,t(u)},d.href=r,document.getElementsByTagName("head")[0].appendChild(d)}).then(function(){r[e]=0}));var t=u[e];if(0!==t)if(t)n.push(t[2]);else{var c=new Promise(function(n,c){t=u[e]=[n,c]});n.push(t[2]=c);var o,h=document.createElement("script");h.charset="utf-8",h.timeout=120,a.nc&&h.setAttribute("nonce",a.nc),h.src=function(e){return a.p+"static/js/"+({"chunk-commons":"chunk-commons"}[e]||e)+"."+{"7zzA":"e1ae1c94",JEtC:"f9ba4594","chunk-68ea":"a283cad8","chunk-6e81":"b4ee7cf5","chunk-commons":"7a41457e","chunk-2d97":"1979e1ba","chunk-0171":"2384d81d","chunk-5118":"db359fdf","chunk-565e":"6b50e750","chunk-60a9":"15f68a0f","chunk-7c6b":"48819f73","chunk-97e2":"8936d9a7","chunk-d55e":"f9bab96d","chunk-176e":"5334cbff","chunk-40a4":"762ab622","chunk-654e":"b5d6579d","chunk-6e8c":"bb92565e","chunk-7503":"e78266ed",oAJy:"2d5429b2","chunk-16d0":"fef0ce65","chunk-9a72":"3826fd71"}[e]+".js"}(e);var f=new Error;o=function(n){h.onerror=h.onload=null,clearTimeout(i);var t=u[e];if(0!==t){if(t){var c=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;f.message="Loading chunk "+e+" failed.\n("+c+": "+r+")",f.name="ChunkLoadError",f.type=c,f.request=r,t[1](f)}u[e]=void 0}};var i=setTimeout(function(){o({type:"timeout",target:h})},12e4);h.onerror=h.onload=o,document.head.appendChild(h)}return Promise.all(n)},a.m=e,a.c=c,a.d=function(e,n,t){a.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,n){if(1&n&&(e=a(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(a.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var c in e)a.d(t,c,function(n){return e[n]}.bind(null,c));return t},a.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(n,"a",n),n},a.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},a.p="",a.oe=function(e){throw console.error(e),e};var h=window.webpackJsonp=window.webpackJsonp||[],f=h.push.bind(h);h.push=n,h=h.slice();for(var i=0;i<h.length;i++)n(h[i]);var d=f;t()}([]); +//# sourceMappingURL=runtime.f7228ae8.js.map +\ No newline at end of file diff --git a/priv/static/adminfe/static/js/runtime.f7228ae8.js.map b/priv/static/adminfe/static/js/runtime.f7228ae8.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","runtime","exports","module","l","e","promises","chunk-68ea","chunk-6e81","chunk-commons","chunk-2d97","chunk-0171","chunk-565e","chunk-60a9","chunk-7c6b","chunk-97e2","chunk-176e","chunk-40a4","chunk-654e","chunk-6e8c","chunk-7503","chunk-9a72","Promise","resolve","reject","href","7zzA","JEtC","chunk-5118","chunk-d55e","oAJy","chunk-16d0","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","head","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime.f7228ae8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"runtime\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({\"chunk-commons\":\"chunk-commons\"}[chunkId]||chunkId) + \".\" + {\"7zzA\":\"e1ae1c94\",\"JEtC\":\"f9ba4594\",\"chunk-68ea\":\"a283cad8\",\"chunk-6e81\":\"b4ee7cf5\",\"chunk-commons\":\"7a41457e\",\"chunk-2d97\":\"1979e1ba\",\"chunk-0171\":\"2384d81d\",\"chunk-5118\":\"db359fdf\",\"chunk-565e\":\"6b50e750\",\"chunk-60a9\":\"15f68a0f\",\"chunk-7c6b\":\"48819f73\",\"chunk-97e2\":\"8936d9a7\",\"chunk-d55e\":\"f9bab96d\",\"chunk-176e\":\"5334cbff\",\"chunk-40a4\":\"762ab622\",\"chunk-654e\":\"b5d6579d\",\"chunk-6e8c\":\"bb92565e\",\"chunk-7503\":\"e78266ed\",\"oAJy\":\"2d5429b2\",\"chunk-16d0\":\"fef0ce65\",\"chunk-9a72\":\"3826fd71\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-68ea\":1,\"chunk-6e81\":1,\"chunk-commons\":1,\"chunk-2d97\":1,\"chunk-0171\":1,\"chunk-565e\":1,\"chunk-60a9\":1,\"chunk-7c6b\":1,\"chunk-97e2\":1,\"chunk-176e\":1,\"chunk-40a4\":1,\"chunk-654e\":1,\"chunk-6e8c\":1,\"chunk-7503\":1,\"chunk-9a72\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"chunk-commons\":\"chunk-commons\"}[chunkId]||chunkId) + \".\" + {\"7zzA\":\"31d6cfe0\",\"JEtC\":\"31d6cfe0\",\"chunk-68ea\":\"be16aa5f\",\"chunk-6e81\":\"7f126ac7\",\"chunk-commons\":\"67f053f7\",\"chunk-2d97\":\"7053ff89\",\"chunk-0171\":\"82f5a48b\",\"chunk-5118\":\"31d6cfe0\",\"chunk-565e\":\"aed36fe0\",\"chunk-60a9\":\"a80ec218\",\"chunk-7c6b\":\"4c8fa90a\",\"chunk-97e2\":\"b21a8915\",\"chunk-d55e\":\"31d6cfe0\",\"chunk-176e\":\"4d21033f\",\"chunk-40a4\":\"2fe71f6c\",\"chunk-654e\":\"e105ec9c\",\"chunk-6e8c\":\"5832dc0a\",\"chunk-7503\":\"37b33ad8\",\"oAJy\":\"31d6cfe0\",\"chunk-16d0\":\"31d6cfe0\",\"chunk-9a72\":\"3e577534\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.request = request;\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""} +\ No newline at end of file