bnomei/kirby3-doctor

View on GitHub
index.js

Summary

Maintainability
A
0 mins
Test Coverage
(function(){"use strict";var _=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("k-button",{staticClass:"doctor",class:e.status,attrs:{job:this.job},on:{click:function(o){return e.doctor()}}},[e._v(e._s(e.label))]),e._l(e.results,function(o,a){return e.results!==void 0?i("k-info-field",{key:a,attrs:{text:o.message,theme:e.theme(o.result)}}):e._e()})],2)},h=[],$="";function v(e,t,i,o,a,u,c,k){var s=typeof e=="function"?e.options:e;t&&(s.render=t,s.staticRenderFns=i,s._compiled=!0),o&&(s.functional=!0),u&&(s._scopeId="data-v-"+u);var r;if(c?(r=function(n){n=n||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!n&&typeof __VUE_SSR_CONTEXT__!="undefined"&&(n=__VUE_SSR_CONTEXT__),a&&a.call(this,n),n&&n._registeredComponents&&n._registeredComponents.add(c)},s._ssrRegister=r):a&&(r=k?function(){a.call(this,(s.functional?this.parent:this).$root.$options.shadowRoot)}:a),r)if(s.functional){s._injectStyles=r;var C=s.render;s.render=function(w,f){return r.call(f),C(w,f)}}else{var d=s.beforeCreate;s.beforeCreate=d?[].concat(d,r):[r]}return{exports:e,options:s}}const b={name:"Doctor",props:{label:String,job:String,progress:String,cooldown:Number,status:String,results:Array},methods:{theme(e){e=e.toLowerCase();let t="info";return e=="warning"||e=="failure"?t="negative":e=="success"&&(t="positive"),t},doctor(){this.getRequest(this.job)},getRequest(e){let t=this,i=this.label;this.label=this.progress.length>0?this.progress:this.label+"...",this.status="doing-job",this.$api.get(e).then(o=>{o.label!==void 0&&(t.label=o.label),o.data!==void 0&&(t.results=o.data),o.status!==void 0?t.status=o.status==200?"is-success":"has-error":t.status="has-response",setTimeout(function(){t.label=i,t.status=""},t.cooldown)})}}},l={};var p=v(b,_,h,!1,g,null,null,null);function g(e){for(let t in l)this[t]=l[t]}var m=function(){return p.exports}();panel.plugin("bnomei/doctor",{fields:{doctor:m},components:{"doctor-view":{template:`
          <k-inside class="doctor-panel-view">
            <k-view>
            <k-header>
                Kirby Doctor
            </k-header>
            <k-doctor-field label="Perform checks" progress="Performing checks..." job="plugin-doctor/check" />
            </k-view>
          </k-inside>
        `}}})})();