UNPKG

@konnec/vue-middleware-plugin

Version:
3 lines (2 loc) 1.64 kB
(function(n,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],s):(n=typeof globalThis<"u"?globalThis:n||self,s(n.VueMiddlewarePlugin={},n.Vue))})(this,function(n,s){"use strict";let a=s.reactive({}),l=s.reactive({}),d=s.reactive({});const m=()=>({request:a,model:l,params:d}),f=()=>l,w=async e=>{var t,o;if(a=e.to.query,!((t=e.to.meta)!=null&&t.controller))throw new Error("Controller not defined");if(!((o=e.to.meta)!=null&&o.controller.length))throw new Error("Controller/Method not defined");e.to.params,d=p(e.to.params),l=new e.to.meta.controller[0];const r=e.to.meta.controller[1];await l[r](d.id),console.log(l.model.comments)};function p(e){return Object.keys(e).forEach(r=>{e[r]?e[r]=Number(e[r]):e[r]===""&&(e[r]=null)}),e}const c=(e,r,t)=>{const o=r[t];return o?(...i)=>{c(e,r,t+1),o({...e})}:e.next},y=(e,r,t)=>{var o;if((o=r.meta)!=null&&o.middleware){const i=Array.isArray(r.meta.middleware)?r.meta.middleware:[r.meta.middleware],u={from:e,to:r,router:t},I=c(u,i,1);return i[0]({...u,next:I})}},q={install:(e,r)=>{r.beforeEach((t,o)=>{y(o,t,r)})}};function h(){return e=>{var r;return(r=e.params)!=null&&r.id&&(e.params.id=parseInt(e.params.id)),e.params}}const M=e=>r=>{for(const t in e.params)r.params[t]=parseInt(r.params[t]);for(const t in e.query)r.query[t]=parseInt(r.query[t]);return{...r.params,query:r.query}};n.MiddlewarePlugin=q,n.castId=h,n.castRoute=M,n.requestsInjection=w,n.useController=m,n.useModel=f,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})}); //# sourceMappingURL=vue-middleware-plugin.umd.cjs.map