-
Notifications
You must be signed in to change notification settings - Fork 0
/
client.min.js
1 lines (1 loc) · 3.43 KB
/
client.min.js
1
var decouter=function(n){"use strict";function r(n){return function(r){return r==n}}var t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},e="undefined"!=typeof window,o=r;r.fn=function(n){return"function"==typeof n},r.str=function(n){return"string"==typeof n},r.num=function(n){return"number"==typeof n},r.obj=function(n){return"object"==typeof n},r.lit=function(n){return"object"==typeof n&&!(n instanceof Array)},r.bol=function(n){return"boolean"==typeof n},r.truthy=function(n){return 1==!!n},r.falsy=function(n){return 0==!!n},r.arr=function(n){return n instanceof Array},r.null=function(n){return null===n},r.def=function(n){return void 0!==n},r.in=function(n){return function(r){return!!n&&(n.indexOf?~n.indexOf(r):r in n)}},r.promise=function(n){return n instanceof Promise},r.stream=function(n){return!(!n||!n.next)};var i={arr:function(n){return Array.prototype.slice.call(n,0)},obj:function(n){function r(n,r,e){return 0===e&&(n={}),n[o.fn(t)?t(r,e):r[t]]=r,n}var t="id";return 1==arguments.length?(t=n,r):r.apply(this,arguments)}},u=e?window:t,f=function(n,r){return r={exports:{}},n(r,r.exports),r.exports}(function(n){var r=function(n){return function(r){if(!u.console||!console.log.apply)return r;o.arr(arguments[2])&&(arguments[2]=arguments[2].length);var t=i.arr(arguments),e="[log]["+(new Date).toISOString()+"]"+n;return t.unshift(e.grey?e.grey:e),console.log.apply(console,t),r}}("[router]"),t=function(n){return window.event&&window.event.preventDefault(),history.pushState({},"",n),window.dispatchEvent(new CustomEvent("change")),n},f=function(n){function i(i,u,f){var c=i.url,s=a(n)(i),l=function(n){var o=n.url,i=n.params;return c!==o&&r("router redirecting",c,o),e&&(location.params=i),e&&c!==o?(t(o),{url:o,params:i}):e||c===o?e?{url:o,params:i}:f():u.redirect(o)};return o.promise(s)?s.then(l):l(s)}return e?i({url:location.pathname}):i},a=function(n){return function(r,t){void 0===t&&(t=r.url);var e={},i=c(r,e,t,n),u=function(o){return"../"==o||".."==o?a(n)(r,"/"+t.split("/").filter(Boolean).slice(0,-1).join("/")):!!o&&(!0!==o?a(n)(r,o):{url:t,params:e})};return o.promise(i)?i.then(u):u(i)}},c=function(n,r,t,e,i){void 0===r&&(r={});var u=function(n){var r=n.split("/").filter(Boolean);return{cur:r.shift(),remainder:"/"+r.join("/")}}(t),f=u.cur,a=u.remainder;return o.promise(e)?e.then(function(e){return c(n,r,t,e,i)}):o.str(e)||o.bol(e)?e:o.fn(e)&&!o.def(i)?c(n,r,t,e(n)):o.fn(e)?c(n,r,t,e(i,n)):f in e?c(n,r,a,e[f]):!f&&e[":"]?c(n,r,a,e[":"]):s(r,function(t){return c(n,r,a,e[t.key],f||!1)},function(n,t){return!0===t&&n.name&&(r[n.name]=f)},function(n){return Object.keys(o.obj(n)||o.fn(n)?n:{})}(e).filter(function(n){return":"==n[0]}).map(function(n){return{key:n,name:n.slice(1)}}))},s=function(n,r,t,e,o){return void 0===o&&(o=e.shift()),!!o&&Promise.resolve(r(o)).then(function(i){return i?(t(o,i),i):s(n,r,t,e)})};e&&(window.go=t,window.router=f,window.router.resolve=a,window.addEventListener("popstate",function(){return window.dispatchEvent(new CustomEvent("change"))}),window.addEventListener("change",function(n){n.target==window&&window.app&&app.render()}),document.addEventListener("click",function(n){var r=n.path?n.path.shift():n.target;r.matches("a[href]:not([href^=javascript]):not([bypass])")&&!r.matches("[bypass] *")&&(o.def(r.origin)&&r.origin!=location.origin||(n.preventDefault(),t(r.href)))})),n.exports={router:f,resolve:a}}),a=f.router,c=f.resolve;return n.default=f,n.router=a,n.resolve=c,n}({});