!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.ES6Promise=e()}(this,function(){"use strict";function t(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}function e(t){return"function"==typeof t}function n(t){I=t}function r(t){J=t}function o(){return function(){return process.nextTick(a)}}function i(){return"undefined"!=typeof H?function(){H(a)}:c()}function s(){var t=0,e=new V(a),n=document.createTextNode("");return e.observe(n,{characterData:!0}),function(){n.data=t=++t%2}}function u(){var t=new MessageChannel;return t.port1.onmessage=a,function(){return t.port2.postMessage(0)}}function c(){var t=setTimeout;return function(){return t(a,1)}}function a(){for(var t=0;t0?r=t:e.is.element(t)?r.push(t):e.is.string(t)?r=t.split(" "):e.is.object(t)&&(t=Array.prototype.slice.call(t),e.is.array(t)&&t.length>0&&(r=t)),s?e.array.unique(r):r},unique:function(t){return!!e.is.array(t)&&t.filter(function(e,t,n){return n.indexOf(e)===t})}},e.exists=function(e){return!(void 0===e||null===e||!1===e)},e.has={spaces:function(e){return/\s/.test(e)},class:function(e,t){return(" "+e.className+" ").indexOf(" "+t+" ")>-1},extension:function(t,n){return(e.is.array(n)?n:e.defaults.extensions.all).indexOf(t.split(".").pop().toLowerCase())>-1}},e.is={array:function(e){return"object"===(void 0===e?"undefined":_typeof(e))&&e instanceof Array},boolean:function(e){return"boolean"==typeof e},browser:function(){return!("undefined"==typeof window||"undefined"==typeof navigator||!window.document)},color:function(t){return e.is.colour(t)},colour:function(t){return e.defaults.regexp.colour.test(t)},date:function(t,n){return(n instanceof RegExp?n:e.defaults.regexp.date).test(t)},element:function(t){return!!e.exists(t)&&(t.nodeType&&1===t.nodeType)},email:function(t,n){return(n instanceof RegExp?n:e.defaults.regexp.email).test(t)},function:function(e){return"function"==typeof e},image:function(t,n){return(e.is.array(n)?n:e.defaults.extensions.images).indexOf(t.split(".").pop().toLowerCase())>-1},integer:function(e){return(0^e)===e},json:function(e){if("object"!==(void 0===e?"undefined":_typeof(e)))try{JSON.parse(e)}catch(e){return!1}return!0},number:function(e){return"number"==typeof e&&!isNaN(e)},object:function(e){return"object"===(void 0===e?"undefined":_typeof(e))},password:function(t,n){return(n instanceof RegExp?n:e.defaults.regexp.password).test(t)},string:function(e){return"string"==typeof e},time:function(t,n){return(n instanceof RegExp?n:e.defaults.regexp.time).test(t)},touch:function(){return!!(e.is.browser()&&window&&window.console)&&("ontouchstart"in window||"onmsgesturechange"in window)},url:function(t,n){return(n instanceof RegExp?n:e.defaults.regexp.url).test(t)}},e.classes={add:function(t,n){var r=e.is.string(t)?e.dom.select(t):t;e.classes.executeClasses(r,n,!1)},clear:function(t){var n=e.is.string(t)?e.dom.select(t):[t];if(n.length>0)for(var r=0,s=n.length;r0,l=o.length>0,u=0,c=s.length;u-1){for(var a,o=void 0,i=void 0,l=void 0,u=void 0,c=n.split(" "),d=0,f=c.length;d0)return t[0]}},head:"undefined"!=typeof document&&document.getElementsByTagName("head")[0],html:"undefined"!=typeof document&&document.getElementsByTagName("html")[0],ratio:function(e,t){var n=document.querySelectorAll(e);void 0===t&&(t=1);for(var r=n.length-1;r>=0;r--)n[r].style.height=Math.floor(n[r].offsetWidth*t)+"px"},remove:function(t){if(e.exists(t))if(e.is.element(t)&&e.is.element(t.parentNode))t.parentNode.removeChild(t);else if(e.is.string(t))for(var n=e.dom.select(t),r=0,s=n.length;r0&&(n=n.concat(e.dom.selectByString(r)))}else e.is.object(t)?t===window||t===document?n=[t]:(t=Array.prototype.slice.call(t),e.is.array(t)&&t.length>0&&(n=t)):t!==window&&t!==document||(n=[t]);return e.array.clean(e.array.unique(n))},selectByString:function(t){var n=[],r=t.split(",").map(e.string.trim).filter(function(e){return e.length>0});if(r.length>0)for(var s=0,a=r.length;s-1||e.has.spaces(t)||e.defaults.regexp.selector.attribute.test(t)?n="qsa":t.indexOf("#")>-1?n="gebi":e.defaults.regexp.selector.tag.test(t)&&(n="gebtn"),n}}},e.helper={parse:{json:function(t){return e.is.json(t)?JSON.parse(t):t}},setDefault:function(e,t){return(void 0!==e||void 0!==t)&&(void 0!==e&&void 0===t?e:(void 0===e?"undefined":_typeof(e))===(void 0===t?"undefined":_typeof(t))?e:t)}},e.id={add:function(t,n){e.exists(t)&&t.setAttribute("id",n)},remove:function(t){e.exists(t)&&t.removeAttribute("id")}},e.input={disable:function(t){for(var n=e.dom.select(t),r=0,s=n.length;r=200&&this.status<300?n({response:e.helper.parse.json(this.responseText),status:this.status,headers:a.getAllResponseHeaders()}):r({error:e.helper.parse.json(this.responseText),status:this.status,headers:a.getAllResponseHeaders()})}},a.onerror=function(){r({error:"Network Error",status:a.status,headers:a.getAllResponseHeaders()})},s.data&&"body"!==s.dataForce&&("GET"===s.type||"DELETE"===s.type||"queryString"===s.dataForce)){var o="";for(var i in s.data)s.data.hasOwnProperty(i)&&(o+="&"+encodeURIComponent(i)+"="+encodeURIComponent(s.data[i]));s.url=s.url+"?"+e.string.remove.first(o)}if(a.open(s.type,s.url,s.async),s.headers)for(var i in s.headers)s.headers.hasOwnProperty(i)&&a.setRequestHeader(i,s.headers[i]);if(!s.data||"queryString"===s.dataForce||"POST"!==s.type&&"PUT"!==s.type&&"PATCH"!==s.type&&"body"!==s.dataForce)a.send();else if(e.is.json(s.data)){var l;switch(e.string.lowercase.all(s.dataType)){case"form":a.setRequestHeader("Content-type","application/x-www-form-urlencoded");var u="";for(var i in s.data)s.data.hasOwnProperty(i)&&(u+="&"+i+"="+s.data[i]);l=e.string.remove.first(u);break;case"formdata":l=new FormData;for(var i in s.data)s.data.hasOwnProperty(i)&&l.append(i,s.data[i]);break;default:a.setRequestHeader("Content-type","application/json;charset=UTF-8"),l=JSON.stringify(s.data)}a.send(l)}else a.send(s.data)})},delete:function(t){return t.type="DELETE",e.request.run(t)},get:function(t){return t.type="GET",e.request.run(t)},patch:function(t){return t.type="PATCH",e.request.run(t)},post:function(t){return t.type="POST",e.request.run(t)},put:function(t){return t.type="PUT",e.request.run(t)}},function(){if(!e.is.browser()||!window||!window.console)return!1;e.is.touch()||e.has.class(e.dom.html,"rocket-no-touch")||e.classes.add(e.dom.html,"rocket-no-touch"),e.overlay.add()}(),e.state={add:function(n,r){if(!e.exists(n)||t.state.list.indexOf(""+t.prefix.state+r)<0)return!1;e.classes.replace(n,t.state.list,""+t.prefix.state+r)},clear:function(n){if(!e.exists(n))return!1;e.classes.remove(n,t.state.list)},toggle:function(n,r){var s=e.array.make(n),a=""+t.prefix.state+r;if(!e.exists(s)||t.state.list.indexOf(a)<0)return!1;for(var o=t.state.alts[r],i=0,l=s.length;i0&&e.storage.add(s)}else n()},get:function(t){if(!e.is.string(t))return!1;var n=e.storage.getStorageEngine();return!!e.exists(n[t])&&n[t]},getStorageEngine:function(){if(!e.defaults.storage.name)return e.log("ROCKET: You have not set the storage name. Provide a name for [Rocket].defaults.storage.name.",!0),!1;var t;switch(e.defaults.storage.type){case"local":t=localStorage.getItem(e.defaults.storage.name);break;case"session":t=sessionStorage.getItem(e.defaults.storage.name)}return t?e.helper.parse.json(t):{}},remove:function(t){if(!e.is.string(t))return!1;var n=e.storage.getStorageEngine();if(!e.exists(n[t]))return!1;switch(delete n[t],e.defaults.storage.type){case"local":localStorage.setItem(e.defaults.storage.name,JSON.stringify(n));break;case"session":sessionStorage.setItem(e.defaults.storage.name,JSON.stringify(n))}}},e.string={format:{bytes:function(e,t){if("number"!=typeof e||0==e)return"0 Byte";var n=t+1||3,r=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],s=Math.floor(Math.log(e)/Math.log(1e3));return parseFloat((e/Math.pow(1e3,s)).toFixed(n))+" "+r[s]}},lowercase:{all:function(t){return e.is.string(t)?t.toLowerCase():t},first:function(t){return e.is.string(t)?t.charAt(0).toLowerCase()+t.slice(1):t},last:function(t){return e.is.string(t)?t.slice(0,t.length-1)+t.charAt(t.length-1).toLowerCase():t}},remove:{first:function(t){return e.is.string(t)?t.substring(1):t},firstAndLast:function(t){return e.is.string(t)?t.substring(1,t.length-1):t},last:function(t){return e.is.string(t)?t.substring(0,t.length-1):t},spaces:function(t){return e.is.string(t)?t.replace(/ /g,""):t}},trim:function(t){return e.is.string(t)?t.replace(/^ /,"").replace(/ +$/,""):t},uppercase:{all:function(t){return e.is.string(t)?t.toUpperCase():t},first:function(t){return e.is.string(t)?t.charAt(0).toUpperCase()+t.slice(1):t},last:function(t){return e.is.string(t)?t.slice(0,t.length-1)+t.charAt(t.length-1).toUpperCase():t}}},e.time={basic:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getHours())+":"+e.time.leadingZero(n.getMinutes())},exact:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getHours())+":"+e.time.leadingZero(n.getMinutes())+":"+e.time.leadingZero(n.getSeconds())+":"+e.time.leadingZero(n.getMilliseconds())},full:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getHours())+":"+e.time.leadingZero(n.getMinutes())+":"+e.time.leadingZero(n.getSeconds())},hours:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getHours())},minutes:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getMinutes())},seconds:function(t){var n=e.date.transform(t);return!!n&&e.time.leadingZero(n.getSeconds())},leadingZero:function(e){return(e<10?"0":"")+e}},e.url={all:function(){var e=window.location,t=e.href,n=t.split("#")[0],r=e.hash.substring(1),s=e.host,a=e.protocol+"//",o="";o=document.getElementsByTagName("base").length>0?document.getElementsByTagName("base")[0].href:a+s;for(var i=e.pathname,l=[],u=i.split("/"),c=0,d=u.length;c