diff --git a/packages/contract-console/package.json b/packages/contract-console/package.json
index c681446148baad25762b57bef59e180428f28309..1b5fa0b49819755463b2d8741460f599a26876cc 100644
--- a/packages/contract-console/package.json
+++ b/packages/contract-console/package.json
@@ -29,7 +29,7 @@
"@vue/cli-service": "^3.9.3",
"@vue/test-utils": "1.0.0-beta.29",
"chai": "^4.2.0",
- "jsonql-client": "^1.2.2",
+ "jsonql-client": "^1.2.3",
"jsonql-koa": "^1.3.3",
"lint-staged": "^9.2.0",
"server-io-core": "^1.2.0-beta.2",
diff --git a/packages/contract-console/public/index.html b/packages/contract-console/public/index.html
index 5893a7cd47b1d720b1ba2540e685313ee46fe3e2..3780d6eeeaec6ad9240f2ac88a807a9205c3d607 100644
--- a/packages/contract-console/public/index.html
+++ b/packages/contract-console/public/index.html
@@ -7,7 +7,7 @@
-
+
contract-console development
diff --git a/packages/contract-console/src/client.ts b/packages/contract-console/src/client.ts
index 18ab37f6d91ed7305a53e448722281d77cdfd308..73fbc57db730a3abf02ec0f139d4d02737d5a95a 100644
--- a/packages/contract-console/src/client.ts
+++ b/packages/contract-console/src/client.ts
@@ -1,5 +1,5 @@
-import flyio from 'flyio/dist/npm/fly'
+import flyio from 'flyio'
import jsonqlClient from 'jsonql-client'
const createClient = async () => await jsonqlClient({
diff --git a/packages/http-client/dist/jsonql-client.umd.js b/packages/http-client/dist/jsonql-client.umd.js
index bb99c88bcb5b69e39554f131bcdd2d9b5107220a..d8acb0e91c1992b73e994befd6f997796a2f64f4 100644
--- a/packages/http-client/dist/jsonql-client.umd.js
+++ b/packages/http-client/dist/jsonql-client.umd.js
@@ -1,2 +1,2 @@
-!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("flyio")):"function"==typeof define&&define.amd?define(["flyio"],e):(t=t||self).jsonqlClient=e(t.Fly)}(this,function(t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};var r=Object.assign?Object.assign:function(t,e,r,n){for(var o=arguments,a=1;a=0;e--){var r=O().key(e);t(k(r),r)}},remove:function(t){return O().removeItem(t)},clearAll:function(){return O().clear()}};function O(){return j.localStorage}function k(t){return O().getItem(t)}var A=i.trim,E={name:"cookieStorage",read:function(t){if(!t||!C(t))return null;var e="(?:^|.*;\\s*)"+escape(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*";return unescape(T.cookie.replace(new RegExp(e),"$1"))},write:function(t,e){if(!t)return;T.cookie=escape(t)+"="+escape(e)+"; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/"},each:x,remove:P,clearAll:function(){x(function(t,e){P(e)})}},T=i.Global.document;function x(t){for(var e=T.cookie.split(/; ?/g),r=e.length-1;r>=0;r--)if(A(e[r])){var n=e[r].split("="),o=unescape(n[0]);t(unescape(n[1]),o)}}function P(t){t&&C(t)&&(T.cookie=escape(t)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/")}function C(t){return new RegExp("(?:^|;\\s*)"+escape(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(T.cookie)}var q=function(){var t={};return{defaults:function(e,r){t=r},get:function(e,r){var n=e();return void 0!==n?n:t[r]}}};var z="expire_mixin",N=function(){var t=this.createStore(this.storage,null,this._namespacePrefix+z);return{set:function(e,r,n,o){this.hasNamespace(z)||t.set(r,o);return e()},get:function(t,r){this.hasNamespace(z)||e.call(this,r);return t()},remove:function(e,r){this.hasNamespace(z)||t.remove(r);return e()},getExpiration:function(e,r){return t.get(r)},removeExpiredKeys:function(t){var r=[];this.each(function(t,e){r.push(e)});for(var n=0;n>>8,r[2*n+1]=i%256}return r},decompressFromUint8Array:function(e){if(null==e)return a.decompress(e);for(var r=new Array(e.length/2),n=0,o=r.length;n>=1}else{for(o=1,n=0;n>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[f]}else for(o=i[f],n=0;n>=1;0==--l&&(l=Math.pow(2,h),h++),i[s]=p++,f=String(c)}if(""!==f){if(Object.prototype.hasOwnProperty.call(u,f)){if(f.charCodeAt(0)<256){for(n=0;n>=1}else{for(o=1,n=0;n>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[f]}else for(o=i[f],n=0;n>=1;0==--l&&(l=Math.pow(2,h),h++)}for(o=2,n=0;n>=1;for(;;){if(v<<=1,g==e-1){d.push(r(v));break}g++}return d.join("")},decompress:function(t){return null==t?"":""==t?null:a._decompress(t.length,32768,function(e){return t.charCodeAt(e)})},_decompress:function(e,r,n){var o,a,i,u,c,s,f,l=[],p=4,h=4,d=3,v="",g=[],y={val:n(0),position:r,index:1};for(o=0;o<3;o+=1)l[o]=o;for(i=0,c=Math.pow(2,2),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;switch(i){case 0:for(i=0,c=Math.pow(2,8),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;f=t(i);break;case 1:for(i=0,c=Math.pow(2,16),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;f=t(i);break;case 2:return""}for(l[3]=f,a=f,g.push(f);;){if(y.index>e)return"";for(i=0,c=Math.pow(2,d),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;switch(f=i){case 0:for(i=0,c=Math.pow(2,8),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;l[h++]=t(i),f=h-1,p--;break;case 1:for(i=0,c=Math.pow(2,16),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;l[h++]=t(i),f=h-1,p--;break;case 2:return g.join("")}if(0==p&&(p=Math.pow(2,d),d++),l[f])v=l[f];else{if(f!==h)return null;v=a+a.charAt(0)}g.push(v),l[h++]=a+v.charAt(0),a=v,0==--p&&(p=Math.pow(2,d),d++)}}};return a}();null!=t&&(t.exports=e)});var D=[S,E],H=[q,N,M,function(){return{get:function(t,e){var r=t(e);if(!r)return r;var n=U.decompress(r);return null==n?r:this._deserialize(n)},set:function(t,e,r){var n=U.compress(this._serialize(r));t(e,n)}}}],L=m.createStore(D,H),K=i.Global;function B(){return K.sessionStorage}function W(t){return B().getItem(t)}var V=[{name:"sessionStorage",read:W,write:function(t,e){return B().setItem(t,e)},each:function(t){for(var e=B().length-1;e>=0;e--){var r=B().key(e);t(W(r),r)}},remove:function(t){return B().removeItem(t)},clearAll:function(){return B().clear()}},E],G=[q,N],Y=m.createStore(V,G),Q=L,X=Y,Z="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},tt="object"==typeof Z&&Z&&Z.Object===Object&&Z,et="object"==typeof self&&self&&self.Object===Object&&self,rt=tt||et||Function("return this")(),nt=rt.Symbol,ot=Object.prototype,at=ot.hasOwnProperty,it=ot.toString,ut=nt?nt.toStringTag:void 0;var ct=Object.prototype.toString;var st="[object Null]",ft="[object Undefined]",lt=nt?nt.toStringTag:void 0;function pt(t){return null==t?void 0===t?ft:st:lt&< in Object(t)?function(t){var e=at.call(t,ut),r=t[ut];try{t[ut]=void 0;var n=!0}catch(t){}var o=it.call(t);return n&&(e?t[ut]=r:delete t[ut]),o}(t):function(t){return ct.call(t)}(t)}function ht(t){return null!=t&&"object"==typeof t}var dt="[object Symbol]";function vt(t){return"symbol"==typeof t||ht(t)&&pt(t)==dt}function gt(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r0){if(++Yt>=Bt)return arguments[0]}else Yt=0;return Gt.apply(void 0,arguments)});function te(t){return t!=t}function ee(t,e,r){return e==e?function(t,e,r){for(var n=r-1,o=t.length;++n-1&&t%1==0&&t-1&&t%1==0&&t<=le}function he(t){return null!=t&&pe(t.length)&&!Tt(t)}var de=Object.prototype;function ve(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||de)}var ge="[object Arguments]";function ye(t){return ht(t)&&pt(t)==ge}var be=Object.prototype,me=be.hasOwnProperty,_e=be.propertyIsEnumerable,we=ye(function(){return arguments}())?ye:function(t){return ht(t)&&me.call(t,"callee")&&!_e.call(t,"callee")};var je="object"==typeof exports&&exports&&!exports.nodeType&&exports,Se=je&&"object"==typeof module&&module&&!module.nodeType&&module,Oe=Se&&Se.exports===je?rt.Buffer:void 0,ke=(Oe?Oe.isBuffer:void 0)||function(){return!1},Ae={};Ae["[object Float32Array]"]=Ae["[object Float64Array]"]=Ae["[object Int8Array]"]=Ae["[object Int16Array]"]=Ae["[object Int32Array]"]=Ae["[object Uint8Array]"]=Ae["[object Uint8ClampedArray]"]=Ae["[object Uint16Array]"]=Ae["[object Uint32Array]"]=!0,Ae["[object Arguments]"]=Ae["[object Array]"]=Ae["[object ArrayBuffer]"]=Ae["[object Boolean]"]=Ae["[object DataView]"]=Ae["[object Date]"]=Ae["[object Error]"]=Ae["[object Function]"]=Ae["[object Map]"]=Ae["[object Number]"]=Ae["[object Object]"]=Ae["[object RegExp]"]=Ae["[object Set]"]=Ae["[object String]"]=Ae["[object WeakMap]"]=!1;var Ee="object"==typeof exports&&exports&&!exports.nodeType&&exports,Te=Ee&&"object"==typeof module&&module&&!module.nodeType&&module,xe=Te&&Te.exports===Ee&&tt.process,Pe=function(){try{var t=Te&&Te.require&&Te.require("util").types;return t||xe&&xe.binding&&xe.binding("util")}catch(t){}}(),Ce=Pe&&Pe.isTypedArray,qe=Ce?function(t){return function(e){return t(e)}}(Ce):function(t){return ht(t)&&pe(t.length)&&!!Ae[pt(t)]},ze=Object.prototype.hasOwnProperty;function Ne(t,e){var r=yt(t),n=!r&&we(t),o=!r&&!n&&ke(t),a=!r&&!n&&!o&&qe(t),i=r||n||o||a,u=i?function(t,e){for(var r=-1,n=Array(t);++r-1},Ze.prototype.set=function(t,e){var r=this.__data__,n=Qe(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var tr=Ut(rt,"Map");function er(t,e){var r,n,o=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof e?"string":"hash"]:o.map}function rr(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e=n?t:function(t,e,r){var n=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(o);++nu))return!1;var s=a.get(t);if(s&&a.get(e))return s==e;var f=-1,l=!0,p=r&pn?new sn:void 0;for(a.set(t,e),a.set(e,t);++f1?e[n-1]:void 0,a=n>2?e[2]:void 0;for(o=ho.length>3&&"function"==typeof o?(n--,o):void 0,a&&function(t,e,r){if(!jt(r))return!1;var n=typeof e;return!!("number"==n?he(r)&&oe(e,r.length):"string"==n&&e in r)&&ie(r[e],t)}(e[0],e[1],a)&&(o=n<3?void 0:o,n=1),t=Object(t);++r-1;);return r}(n,o),function(t,e){for(var r=t.length;r--&&ee(e,t[r],0)>-1;);return r}(n,o)+1).join("")}function jo(t){return!!yt(t)||null!=t&&""!==wo(t)}var So=function(t){return!uo(t)&&!fo(parseFloat(t))},Oo=function(t){return""!==wo(t)&&uo(t)},ko=function(t){return function(t){return!0===t||!1===t||ht(t)&&pt(t)==co}(t)},Ao=function(t,e){return void 0===e&&(e=!0),!lo(t)&&""!==t&&""!==wo(t)&&(!1===e||!0===e&&!function(t){return null===t}(t))},Eo="application/vnd.api+json",To={Accept:Eo,"Content-Type":[Eo,"charset=utf-8"].join(";")},xo="payload",Po="condition",Co="args",qo=["POST","PUT"],zo="type",No="optional",Io="enumv",$o="args",Fo="checker",Jo="alias",Mo={desc:"y"},Ro="No message",Uo=zo,Do=No,Ho=Io,Lo=$o,Ko=Fo,Bo=Jo,Wo="continue",Vo=function(t){switch(t){case"number":return So;case"string":return Oo;case"boolean":return ko;default:return Ao}},Go=function(t,e){return void 0===e&&(e=""),!!yt(t)&&(""===e||""===wo(e)||!(t.filter(function(t){return!Vo(e)(t)}).length>0))},Yo=function(t){if(t.indexOf("array.<")>-1&&t.indexOf(">")>-1){var e=t.replace("array.<","").replace(">","");return e.indexOf("|")?e.split("|"):[e]}return!1},Qo=function(t,e){var r=t.arg;return e.length>1?!r.filter(function(t){return!(e.length>e.filter(function(e){return!Vo(e)(t)}).length)}).length:e.length>e.filter(function(t){return!Go(r,t)}).length},Xo=function(t,e){if(void 0===e&&(e=null),jr(t)){if(!e)return!0;if(Go(e))return!e.filter(function(e){var r=t[e.name];return!(e.type.length>e.type.filter(function(t){var e;return!!lo(r)||(!1!==(e=Yo(t))?!Qo({arg:r},e):!Vo(t)(r))}).length)}).length}return!1},Zo=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 406},r.name.get=function(){return"Jsonql406Error"},Object.defineProperties(e,r),e}(Error),ta=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 500},r.name.get=function(){return"Jsonql500Error"},Object.defineProperties(e,r),e}(Error),ea=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 401},r.name.get=function(){return"JsonqlAuthorisationError"},Object.defineProperties(e,r),e}(Error),ra=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 401},r.name.get=function(){return"JsonqlContractAuthError"},Object.defineProperties(e,r),e}(Error),na=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 500},r.name.get=function(){return"JsonqlResolverAppError"},Object.defineProperties(e,r),e}(Error),oa=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 404},r.name.get=function(){return"JsonqlResolverNotFoundError"},Object.defineProperties(e,r),e}(Error),aa=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlEnumError"},Object.defineProperties(e,r),e}(Error),ia=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlTypeError"},Object.defineProperties(e,r),e}(Error),ua=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlCheckerError"},Object.defineProperties(e,r),e}(Error),ca=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlValidationError"},Object.defineProperties(e,r),e}(Error),sa=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0},statusCode:{configurable:!0}};return r.name.get=function(){return"JsonqlError"},r.statusCode.get=function(){return-1},Object.defineProperties(e,r),e}(Error),fa=function(t){function e(r,n){t.call(this,n),this.statusCode=r,this.className=e.name}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlServerError"},Object.defineProperties(e,r),e}(Error),la=Object.freeze({Jsonql406Error:Zo,Jsonql500Error:ta,JsonqlAuthorisationError:ea,JsonqlContractAuthError:ra,JsonqlResolverAppError:na,JsonqlResolverNotFoundError:oa,JsonqlEnumError:aa,JsonqlTypeError:ia,JsonqlCheckerError:ua,JsonqlValidationError:ca,JsonqlError:sa,JsonqlServerError:fa}),pa=sa,ha=function(t,e){return!!Object.keys(t).filter(function(t){return e===t}).length};function da(t){if(ha(t,"error")){var e=t.error,r=e.className,n=e.name,o=r||n,a=e.message||Ro,i=e.detail||e;if(o&&la[o])throw new la[r](a,i);throw new pa(a,i)}return t}function va(t){if(Array.isArray(t))throw new ca("",t);var e=t.message||Ro,r=t.detail||t;switch(!0){case t instanceof Zo:throw new Zo(e,r);case t instanceof ta:throw new ta(e,r);case t instanceof ea:throw new ea(e,r);case t instanceof ra:throw new ra(e,r);case t instanceof na:throw new na(e,r);case t instanceof oa:throw new oa(e,r);case t instanceof aa:throw new aa(e,r);case t instanceof ia:throw new ia(e,r);case t instanceof ua:throw new ua(e,r);case t instanceof ca:throw new ca(e,r);case t instanceof fa:throw new fa(e,r);default:throw new sa(e,r)}}var ga=function(t,e){var r,n,o,a,i;switch(!0){case"object"===t:return o=(n=e).arg,a=n.param,i=[o],Array.isArray(a.keys)&&a.keys.length&&i.push(a.keys),!Xo.apply(null,i);case"array"===t:return!Go(e.arg);case!1!==(r=Yo(t)):return!Qo(e,r);default:return!Vo(t)(e.arg)}},ya=function(t,e){return lo(t)?!0!==e.optional||lo(e.defaultvalue)?null:e.defaultvalue:t},ba=function(t,e,r){var n;void 0===r&&(r=!1);var o=function(t,e){if(!Go(e))throw new sa("params is not an array! Did something gone wrong when you generate the contract.json?");if(0===e.length)return[];if(!Go(t))throw new sa("args is not an array! You might want to do: ES6 Array.from(arguments) or ES5 Array.prototype.slice.call(arguments)");switch(!0){case t.length==e.length:return t.map(function(t,r){return{arg:t,index:r,param:e[r]}});case!0===e[0].variable:var r=e[0].type;return t.map(function(t,n){return{arg:t,index:n,param:e[n]||{type:r,name:"_"}}});case t.lengthe.length&&1===e.length:var n,o=["any"];return!1!==(n=Yo(e[0].type[0]))&&(o=n),t.map(function(t,r){return{arg:t,index:r,param:e[r]||{type:o,name:"_"}}});default:throw new sa("Could not understand your arguments and parameter structure!",{args:t,params:e})}}(t,e),a=o.filter(function(t){return!0===t.param.optional?function(t){var e=t.arg,r=t.param;return!(!jo(e)||r.type.length>r.type.filter(function(e){return ga(e,t)}).length)}(t):!(t.param.type.length>t.param.type.filter(function(e){return ga(e,t)}).length)});return r?((n={}).error=a,n.data=o.map(function(t){return t.arg}),n):a},ma=function(t,e){return!!t.filter(function(t){return t===e}).length},_a=function(t,e){var r=Object.keys(t);return ma(r,e)},wa=function(t){return!jo(t)};function ja(t,e){var r=mo(e,function(t,e){return!t[Bo]});return Mn(r,{})?t:function(t,e){var r={};return e=Qn(e),to(t,function(t,n,o){ae(r,e(t,n,o),t)}),r}(t,function(t,e){return function(t,e,r){var n;return r(t,function(t,r,o){if(e(t,r,o))return n=r,!1}),n}(r,Qn(function(t){return t.alias===e}),to)||e})}function Sa(t,e){return po(e,function(e,r){var n,o;return lo(t[r])||!0===e[Do]&&wa(t[r])?vo({},e,((n={})[Wo]=!0,n)):((o={})[Lo]=t[r],o[Uo]=e[Uo],o[Do]=e[Do]||!1,o[Ho]=e[Ho]||!1,o[Ko]=e[Ko]||!1,o)})}function Oa(t,e){var r=function(t,e){var r=ja(t,e);return{pristineValues:po(mo(e,function(t,e){return _a(r,e)}),function(t){return t.args}),checkAgainstAppProps:mo(e,function(t,e){return!_a(r,e)}),config:r}}(t,e),n=r.config,o=r.pristineValues;return[Sa(n,r.checkAgainstAppProps),o]}var ka=function(t){return Go(t)?t:[t]};var Aa=function(t,e){return!Go(e)||function(t,e){return!!t.filter(function(t){return t===e}).length}(e,t)},Ea=function(t,e){try{return!!Tt(e)&&e.apply(null,[t])}catch(t){return!1}};function Ta(t){return function(e,r){if(e[Wo])return e[Lo];var n=function(t,e){var r,n=[[t[Lo]],[(r={},r[Uo]=ka(t[Uo]),r[Do]=t[Do],r)]];return Reflect.apply(e,null,n)}(e,t);if(n.length)throw new ia(r,n);if(!1!==e[Ho]&&!Aa(e[Lo],e[Ho]))throw new aa(r);if(!1!==e[Ko]&&!Ea(e[Lo],e[Ko]))throw new ua(r);return e[Lo]}}var xa=function(t,e){return Promise.resolve(Oa(t,e))};function Pa(t,e,r,n){return void 0===t&&(t={}),xa(t,e).then(function(t){return function(t,e){var r=t[0],n=t[1],o=po(r,Ta(e));return vo(o,n)}(t,n)}).then(function(t){return vo({},t,r)})}var Ca=Xo,qa=Oo,za=Go,Na=function(t,e,r){return void 0===r&&(r=!1),new Promise(function(n,o){var a=ba(t,e,r);return r?a.error.length?o(a.error):n(a.data):a.length?o(a):n([])})},Ia=function(t,e,r){void 0===r&&(r={});var n=r[No],o=r[Io],a=r[Fo],i=r[Jo];return function(t,e,r,n,o,a){void 0===r&&(r=!1),void 0===n&&(n=!1),void 0===o&&(o=!1),void 0===a&&(a=!1);var i={};return i[$o]=t,i[zo]=e,!0===r&&(i[No]=!0),Go(n)&&(i[Io]=n),Tt(o)&&(i[Fo]=o),uo(a)&&(i[Jo]=a),i}.apply(null,[t,e,n,o,a,i])},$a=function(t){return function(e,r,n){return void 0===n&&(n={}),Pa(e,r,n,t)}}(ba),Fa=ma,Ja=_a,Ma=function(t,e,r){var n;if(void 0===e&&(e=[]),void 0===r&&(r=!1),Oo(t)&&Go(e)){var o={};return o[Co]=e,!0===r?o:((n={})[t]=o,n)}throw new ca("[createQuery] expect resolverName to be string and args to be array!",{resolverName:t,args:e})},Ra=function(t,e,r,n){var o;void 0===r&&(r={}),void 0===n&&(n=!1);var a={};if(a[xo]=e,a[Po]=r,!0===n)return a;if(Oo(t))return(o={})[t]=a,o;throw new ca("[createMutation] expect resolverName to be string!",{resolverName:t,payload:e,condition:r})},Ua=function(t){return Object.keys(t)[0]},Da=function(){return Math.floor(Date.now()/1e3)},Ha=function(t,e){return void 0===e&&(e={}),Ka(e)?Promise.resolve(e):t.getContract()},La=function(t){return Ja(t,"data")&&!Ja(t,"error")?t.data:t},Ka=function(t){return t&&Ca(t)&&(Ja(t,"query")||Ja(t,"mutation"))},Ba="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Wa(t){this.message=t}Wa.prototype=new Error,Wa.prototype.name="InvalidCharacterError";var Va="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(t){var e=String(t).replace(/=+$/,"");if(e.length%4==1)throw new Wa("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,o=0,a=0,i="";n=e.charAt(a++);~n&&(r=o%4?64*r+n:n,o++%4)?i+=String.fromCharCode(255&r>>(-2*o&6)):0)n=Ba.indexOf(n);return i};var Ga=function(t){var e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw"Illegal base64url string!"}try{return function(t){return decodeURIComponent(Va(t).replace(/(.)/g,function(t,e){var r=e.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r}))}(e)}catch(t){return Va(e)}};function Ya(t){this.message=t}Ya.prototype=new Error,Ya.prototype.name="InvalidTokenError";var Qa,Xa,Za,ti,ei,ri,ni,oi,ai,ii=function(t,e){if("string"!=typeof t)throw new Ya("Invalid token specified");var r=!0===(e=e||{}).header?0:1;try{return JSON.parse(Ga(t.split(".")[r]))}catch(t){throw new Ya("Invalid token specified: "+t.message)}},ui=Ya;function ci(t){if(qa(t))return function(t){var e=t.iat||Math.floor(Date.now()/1e3);if(t.exp&&e>=t.exp){var r=new Date(t.exp).toISOString();throw new sa("Token has expired on "+r,t)}return t}(ii(t));throw new sa("Token must be a string!")}ii.InvalidTokenError=ui;Ia("HS256",["string"]),Ia(!1,["boolean","number","string"],((Qa={})[Jo]="exp",Qa[No]=!0,Qa)),Ia(!1,["boolean","number","string"],((Xa={})[Jo]="nbf",Xa[No]=!0,Xa)),Ia(!1,["boolean","string"],((Za={})[Jo]="iss",Za[No]=!0,Za)),Ia(!1,["boolean","string"],((ti={})[Jo]="sub",ti[No]=!0,ti)),Ia(!1,["boolean","string"],((ei={})[Jo]="iss",ei[No]=!0,ei)),Ia(!1,["boolean"],((ri={})[No]=!0,ri)),Ia(!1,["boolean","string"],((ni={})[No]=!0,ni)),Ia(!1,["boolean","string"],((oi={})[No]=!0,oi)),Ia(!1,["boolean"],((ai={})[No]=!0,ai));!function(){switch(!0){case"undefined"!=typeof WebSocket:return WebSocket;case"undefined"!=typeof MozWebSocket:return MozWebSocket;case"undefined"!=typeof window:return window.WebSocket||window.MozWebSocket;default:throw new ca("WebSocket is NOT SUPPORTED!")}}();var si=qo[0],fi=qo[1],li=function(e){try{this.fly=new t}catch(t){throw console.error("Init fly error!",t),t}this.opts=e,this.extraHeader={},this.extraParams={},this.reqInterceptor(),this.resInterceptor()},pi={headers:{configurable:!0}};pi.headers.set=function(t){this.extraHeader=t},li.prototype.request=function(t,e,r){var n;void 0===e&&(e={}),void 0===r&&(r={}),this.headers=r;var o=vo({},{_cb:Da()},this.extraParams);if(this.opts.enableJsonp){var a=Ua(t);o=vo({},o,((n={}).jsonqlJsonpCallback=a,n)),t=t[a]}return this.fly.request(this.jsonqlEndpoint,t,vo({},{method:si,params:o},e))},li.prototype.reqInterceptor=function(){var t=this;this.fly.interceptors.request.use(function(e){console.info("request interceptor call");var r=t.getHeaders();for(var n in r)e.headers[n]=r[n];return e})},li.prototype.processJsonp=function(t){return La(t)},li.prototype.resInterceptor=function(){var t=this,e=t.opts.enableJsonp;this.fly.interceptors.response.use(function(r){console.info("response interceptor call"),t.cleanUp();var n=qa(r.data)?JSON.parse(r.data):r.data;return e?t.processJsonp(n):La(n)},function(e){throw t.cleanUp(),console.error(e),new fa("Server side error",e)})},li.prototype.getHeaders=function(){return this.opts.enableAuth?vo({},To,this.getAuthHeader(),this.extraHeader):vo({},To,this.extraHeader)},li.prototype.cleanUp=function(){this.extraHeader={},this.extraParams={}},li.prototype.get=function(){return this.opts.showContractDesc&&(this.extraParams=vo({},this.extraParams,Mo)),this.request({},{method:"GET"},this.contractHeader).then(da).then(function(t){return console.info("144 get contract result",t),t.cache&&t.contract?t.contract:t})},li.prototype.query=function(t,e){return void 0===e&&(e=[]),this.request(Ma(t,e)).then(da)},li.prototype.mutation=function(t,e,r){return void 0===e&&(e={}),void 0===r&&(r={}),this.request(Ra(t,e,r),{method:fi}).then(da)},Object.defineProperties(li.prototype,pi);var hi=function(t){function e(e){t.call(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={storeIt:{configurable:!0},jsonqlEndpoint:{configurable:!0},jsonqlContract:{configurable:!0},jsonqlToken:{configurable:!0},jsonqlUserdata:{configurable:!0}};return r.storeIt.set=function(t){throw console.info("storeIt",t),za(t)&&t.length>=2&&Reflect.apply(Q.set,Q,t),new ca("Expect argument to be array and least 2 items!")},r.jsonqlEndpoint.set=function(t){var e=Q.get("endpoint")||[];Fa(e,t)||(e.push(t),this.storeId=["endpoint",e],this.endpointIndex=e.length-1)},r.jsonqlContract.set=function(t){var e=this.opts.storageKey,r=[e],n=t[0],o=t[1],a=Q.get(e)||[];a[this.endpointIndex||0]=n,r.push(a),o&&r.push(o),this.opts.keepContract&&(this.storeIt=r)},r.jsonqlToken.set=function(t){var e="credential",r=localStorage.get(e)||[];if(!Fa(r,t)){var n=r.length-1;r[n]=t,this[e+"Index"]=n;var o=[e,r];if(this.opts.tokenExpired){var a=parseFloat(this.opts.tokenExpired);if(!isNaN(a)&&a>0){var i=Da();o.push(i+parseFloat(a))}}return this.storeIt=o,this.jsonqlUserdata=this.decoder(t),t}return!1},r.jsonqlUserdata.set=function(t){var e=["userdata",t];return t.exp&&e.push(t.exp),Reflect.apply(Q.set,Q,e)},r.jsonqlEndpoint.get=function(){var t=Q.get("endpoint");if(!t){var e=this.opts,r=[e.hostname,e.jsonqlPath].join("/");return this.jsonqlEndpoint=r,r}return t[this.endpointIndex]},r.jsonqlContract.get=function(){var t=this.opts.storageKey;return(Q.get(t)||[])[this.endpointIndex]||!1},r.jsonqlToken.get=function(){var t="credential",e=localStorage.get(t);return!!e&&e[this[t+"Index"]]},r.jsonqlUserdata.get=function(){return X.get("userdata")},Object.defineProperties(e.prototype,r),e}(function(t){function e(e){t.call(this,e),e.enableAuth&&e.useJwt&&(this.setDecoder=ci)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={userdata:{configurable:!0},rawAuthToken:{configurable:!0},setDecoder:{configurable:!0}};return r.userdata.get=function(){return this.jsonqlUserdata},r.rawAuthToken.get=function(){return this.jsonqlToken},r.setDecoder.set=function(t){"function"==typeof t&&(this.decoder=t)},e.prototype.storeToken=function(t){return this.jsonqlToken=t},e.prototype.decoder=function(t){return t},e.prototype.getAuthHeader=function(){var t,e=this.rawAuthToken;return e?((t={})[this.opts.AUTH_HEADER]="Bearer "+e,t):{}},Object.defineProperties(e.prototype,r),e}(function(t){function e(e){t.call(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={contractHeader:{configurable:!0}};return e.prototype.getContract=function(){var t=this.readContract();if(console.info("getContract first call",t),t&&Array.isArray(t)){var e=t[this.endpointIndex||0];if(e)return Promise.resolve(e)}return this.get().then(this.storeContract.bind(this))},r.contractHeader.get=function(){var t={};return!1!==this.opts.contractKey&&(t[this.opts.contractKeyName]=this.opts.contractKey),t},e.prototype.storeContract=function(t){if(!Ka(t))throw new ca("Contract is malformed!");var e=[t];if(this.opts.contractExpired){var r=parseFloat(this.opts.contractExpired);!isNaN(r)&&r>0&&e.push(r)}return this.jsonqlContract=e,console.info("storeContract return result",t),t},e.prototype.readContract=function(){return Ka(this.opts.contract)?this.opts.contract:Q.get(this.opts.storageKey)},Object.defineProperties(e.prototype,r),e}(li))),di=new WeakMap,vi=new WeakMap;var gi=function(t){void 0===t&&(t={}),t.logger&&"function"==typeof t.logger&&(this.logger=t.logger),this.keep=t.keep,this.result=t.keep?[]:null,this.normalStore=new Map,this.lazyStore=new Map},yi={$done:{configurable:!0},normalStore:{configurable:!0},lazyStore:{configurable:!0}};gi.prototype.logger=function(){},gi.prototype.$on=function(t,e,r){var n=this;void 0===r&&(r=null);this.validate(t,e);var o=this.takeFromStore(t);if(!1===o)return this.logger("$on",t+" callback is not in lazy store"),this.addToNormalStore(t,"on",e,r);this.logger("$on",t+" found in lazy store");var a=0;return o.forEach(function(o){var i=o[0],u=o[1],c=o[2];if(c&&"on"!==c)throw new Error("You are trying to register an event already been taken by other type: "+c);n.run(e,i,r||u),a+=n.addToNormalStore(t,"on",e,r||u)}),a},gi.prototype.$once=function(t,e,r){void 0===r&&(r=null),this.validate(t,e);var n=this.takeFromStore(t);this.normalStore;if(!1===n)return this.logger("$once",t+" not in the lazy store"),this.addToNormalStore(t,"once",e,r);this.logger("$once",n);var o=Array.from(n)[0],a=o[0],i=o[1],u=o[2];if(u&&"once"!==u)throw new Error("You are trying to register an event already been taken by other type: "+u);this.run(e,a,r||i),this.$off(t)},gi.prototype.$only=function(t,e,r){var n=this;void 0===r&&(r=null),this.validate(t,e);var o=!1,a=this.takeFromStore(t);(this.normalStore.has(t)||(this.logger("$only",t+" add to store"),o=this.addToNormalStore(t,"only",e,r)),!1!==a)&&(this.logger("$only",t+" found data in lazy store to execute"),Array.from(a).forEach(function(t){var o=t[0],a=t[1],i=t[2];if(i&&"only"!==i)throw new Error("You are trying to register an event already been taken by other type: "+i);n.run(e,o,r||a)}));return o},gi.prototype.$onlyOnce=function(t,e,r){void 0===r&&(r=null),this.validate(t,e);var n=!1,o=this.takeFromStore(t);if(this.normalStore.has(t)||(this.logger("$onlyOnce",t+" add to store"),n=this.addToNormalStore(t,"onlyOnce",e,r)),!1!==o){this.logger("$onlyOnce",o);var a=Array.from(o)[0],i=a[0],u=a[1],c=a[2];if(c&&"onlyOnce"!==c)throw new Error("You are trying to register an event already been taken by other type: "+c);this.run(e,i,r||u),this.$off(t)}return n},gi.prototype.$replace=function(t,e,r,n){if(void 0===r&&(r=null),void 0===n&&(n="on"),this.validateType(n)){this.$off(t);var o=this["$"+n];return Reflect.apply(o,this,[t,e,r])}throw new Error(n+" is not supported!")},gi.prototype.$trigger=function(t,e,r,n){void 0===e&&(e=[]),void 0===r&&(r=null),void 0===n&&(n=!1),this.validateEvt(t);var o=0,a=this.normalStore;if(this.logger("$trigger",a),a.has(t)){this.logger("$trigger",t,"found");for(var i=Array.from(a.get(t)),u=i.length,c=!1,s=0;s0;)n[o]=arguments[o+2];if(t.has(e)?(this.logger("addToStore",e+" existed"),r=t.get(e)):(this.logger("addToStore","create new Set for "+e),r=new Set),n.length>2)if(Array.isArray(n[0])){var a=n[2];this.checkTypeInLazyStore(e,a)||r.add(n)}else this.checkContentExist(n,r)||(this.logger("addToStore","insert new",n),r.add(n));else r.add(n);return t.set(e,r),[t,r.size]},gi.prototype.checkContentExist=function(t,e){return!!Array.from(e).filter(function(e){return e[0]===t[0]}).length},gi.prototype.checkTypeInStore=function(t,e){this.validateEvt(t),this.validateEvt(e);var r=this.$get(t,!0);return!1===r||!r.filter(function(t){var r=t[3];return e!==r}).length},gi.prototype.checkTypeInLazyStore=function(t,e){this.validateEvt(t),this.validateEvt(e);var r=this.lazyStore.get(t);return this.logger("checkTypeInLazyStore",r),!!r&&!!Array.from(r).filter(function(t){return t[2]!==e}).length},gi.prototype.addToNormalStore=function(t,e,r,n){if(void 0===n&&(n=null),this.logger("addToNormalStore",t,e,"add to normal store"),this.checkTypeInStore(t,e)){this.logger(e+" can add to "+t+" store");var o=this.hashFnToKey(r),a=[this.normalStore,t,o,r,n,e],i=Reflect.apply(this.addToStore,this,a),u=i[0],c=i[1];return this.normalStore=u,c}return!1},gi.prototype.addToLazyStore=function(t,e,r,n){void 0===e&&(e=[]),void 0===r&&(r=null),void 0===n&&(n=!1);var o=[this.lazyStore,t,this.toArray(e),r];n&&o.push(n);var a=Reflect.apply(this.addToStore,this,o),i=a[0],u=a[1];return this.lazyStore=i,u},gi.prototype.toArray=function(t){return Array.isArray(t)?t:[t]},yi.normalStore.set=function(t){di.set(this,t)},yi.normalStore.get=function(){return di.get(this)},yi.lazyStore.set=function(t){vi.set(this,t)},yi.lazyStore.get=function(){return vi.get(this)},gi.prototype.hashFnToKey=function(t){return t.toString().split("").reduce(function(t,e){return(t=(t<<5)-t+e.charCodeAt(0))&t},0)+""},Object.defineProperties(gi.prototype,yi);var bi=new gi,mi=function(t,e,r,n){return function(){for(var r=[],o=arguments.length;o--;)r[o]=arguments[o];var a=n.auth[e].params,i=a.map(function(t,e){return r[e]}),u=r[a.length]||{};return Na(r,a).then(function(){return t.query.apply(t,[e,i,u])}).catch(va)}},_i=function(t,e,r){var n={query:{},mutation:{},auth:{}},o=function(e){n.query[e]=function(){for(var n=[],o=arguments.length;o--;)n[o]=arguments[o];var a=r.query[e].params,i=a.map(function(t,e){return n[e]}),u=n[a.length]||{};return Na(i,a).then(function(){return t.query.apply(t,[e,i,u])}).catch(va)}};for(var a in r.query)o(a);var i=function(e){n.mutation[e]=function(n,o,a){void 0===a&&(a={});var i=[n,o],u=r.mutation[e].params;return Na(i,u).then(function(){return t.mutation.apply(t,[e,n,o,a])}).catch(va)}};for(var u in r.mutation)i(u);if(e.enableAuth&&r.auth){var c=e.loginHandlerName,s=e.logoutHandlerName;r.auth[c]&&(n[c]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var o=mi(t,c,0,r);return o.apply(null,e).then(t.postLoginAction).then(function(t){return bi.$trigger("login",t),t})}),r.auth[s]?n[s]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var o=mi(t,s,0,r);return o.apply(null,e).then(t.postLogoutAction).then(function(t){return bi.$trigger("logout",t),t})}:n[s]=function(){t.postLogoutAction("continue"),bi.$trigger("logout","continue")},n.userdata=function(){return t.userdata}}return n.returnInstance&&(n.jsonqlClientInstance=t),n.getToken=function(){return t.rawAuthToken},n.eventEmitter=bi,n},wi={contract:!1,MUTATION_ARGS:["name","payload","conditions"],CONTENT_TYPE:Eo,BEARER:"Bearer",AUTH_HEADER:"Authorization"},ji={hostname:Ia([window.location.protocol,window.location.host].join("//"),["string"]),jsonqlPath:Ia("jsonql",["string"]),loginHandlerName:Ia("login",["string"]),logoutHandlerName:Ia("logout",["string"]),enableJsonp:Ia(!1,["boolean"]),enableAuth:Ia(!1,["boolean"]),useJwt:Ia(!0,["boolean"]),useLocalstorage:Ia(!0,["boolean"]),storageKey:Ia("storageKey",["string"]),authKey:Ia("authKey",["string"]),contractExpired:Ia(0,["number"]),keepContract:Ia(!0,["boolean"]),showContractDesc:Ia(!1,["boolean"]),contractKey:Ia(!1,["boolean"]),contractKeyName:Ia("X-JSONQL-CV-KEY",["string"]),enableTimeout:Ia(!1,["boolean"]),timeout:Ia(5e3,["number"]),returnInstance:Ia(!1,["boolean"]),allowReturnRawToken:Ia(!1,["boolean"]),debugOn:Ia(!1,["boolean"])};return function(t){return void 0===t&&(t={}),function(t){var e=t.contract;return $a(t,ji,wi).then(function(t){return t.contract=e,t})}(t).then(function(t){return{baseClient:new hi(t),opts:t}}).then(function(t){var e=t.baseClient,r=t.opts;return Ha(e,r.contract).then(function(t){return _i(e,r,t)})})}});
+!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).jsonqlClient=e()}(this,function(){"use strict";var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};var e=Object.assign?Object.assign:function(t,e,r,n){for(var o=arguments,a=1;a=0;e--){var r=S().key(e);t(O(r),r)}},remove:function(t){return S().removeItem(t)},clearAll:function(){return S().clear()}};function S(){return w.localStorage}function O(t){return S().getItem(t)}var k=a.trim,A={name:"cookieStorage",read:function(t){if(!t||!P(t))return null;var e="(?:^|.*;\\s*)"+escape(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*";return unescape(E.cookie.replace(new RegExp(e),"$1"))},write:function(t,e){if(!t)return;E.cookie=escape(t)+"="+escape(e)+"; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/"},each:T,remove:x,clearAll:function(){T(function(t,e){x(e)})}},E=a.Global.document;function T(t){for(var e=E.cookie.split(/; ?/g),r=e.length-1;r>=0;r--)if(k(e[r])){var n=e[r].split("="),o=unescape(n[0]);t(unescape(n[1]),o)}}function x(t){t&&P(t)&&(E.cookie=escape(t)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/")}function P(t){return new RegExp("(?:^|;\\s*)"+escape(t).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(E.cookie)}var C=function(){var t={};return{defaults:function(e,r){t=r},get:function(e,r){var n=e();return void 0!==n?n:t[r]}}};var q="expire_mixin",z=function(){var t=this.createStore(this.storage,null,this._namespacePrefix+q);return{set:function(e,r,n,o){this.hasNamespace(q)||t.set(r,o);return e()},get:function(t,r){this.hasNamespace(q)||e.call(this,r);return t()},remove:function(e,r){this.hasNamespace(q)||t.remove(r);return e()},getExpiration:function(e,r){return t.get(r)},removeExpiredKeys:function(t){var r=[];this.each(function(t,e){r.push(e)});for(var n=0;n>>8,r[2*n+1]=i%256}return r},decompressFromUint8Array:function(e){if(null==e)return a.decompress(e);for(var r=new Array(e.length/2),n=0,o=r.length;n>=1}else{for(o=1,n=0;n>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[f]}else for(o=i[f],n=0;n>=1;0==--l&&(l=Math.pow(2,h),h++),i[s]=p++,f=String(c)}if(""!==f){if(Object.prototype.hasOwnProperty.call(u,f)){if(f.charCodeAt(0)<256){for(n=0;n>=1}else{for(o=1,n=0;n>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[f]}else for(o=i[f],n=0;n>=1;0==--l&&(l=Math.pow(2,h),h++)}for(o=2,n=0;n>=1;for(;;){if(v<<=1,g==e-1){d.push(r(v));break}g++}return d.join("")},decompress:function(t){return null==t?"":""==t?null:a._decompress(t.length,32768,function(e){return t.charCodeAt(e)})},_decompress:function(e,r,n){var o,a,i,u,c,s,f,l=[],p=4,h=4,d=3,v="",g=[],y={val:n(0),position:r,index:1};for(o=0;o<3;o+=1)l[o]=o;for(i=0,c=Math.pow(2,2),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;switch(i){case 0:for(i=0,c=Math.pow(2,8),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;f=t(i);break;case 1:for(i=0,c=Math.pow(2,16),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;f=t(i);break;case 2:return""}for(l[3]=f,a=f,g.push(f);;){if(y.index>e)return"";for(i=0,c=Math.pow(2,d),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;switch(f=i){case 0:for(i=0,c=Math.pow(2,8),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;l[h++]=t(i),f=h-1,p--;break;case 1:for(i=0,c=Math.pow(2,16),s=1;s!=c;)u=y.val&y.position,y.position>>=1,0==y.position&&(y.position=r,y.val=n(y.index++)),i|=(u>0?1:0)*s,s<<=1;l[h++]=t(i),f=h-1,p--;break;case 2:return g.join("")}if(0==p&&(p=Math.pow(2,d),d++),l[f])v=l[f];else{if(f!==h)return null;v=a+a.charAt(0)}g.push(v),l[h++]=a+v.charAt(0),a=v,0==--p&&(p=Math.pow(2,d),d++)}}};return a}();null!=t&&(t.exports=e)});var U=[j,A],D=[C,z,J,function(){return{get:function(t,e){var r=t(e);if(!r)return r;var n=R.decompress(r);return null==n?r:this._deserialize(n)},set:function(t,e,r){var n=R.compress(this._serialize(r));t(e,n)}}}],H=b.createStore(U,D),L=a.Global;function K(){return L.sessionStorage}function B(t){return K().getItem(t)}var W=[{name:"sessionStorage",read:B,write:function(t,e){return K().setItem(t,e)},each:function(t){for(var e=K().length-1;e>=0;e--){var r=K().key(e);t(B(r),r)}},remove:function(t){return K().removeItem(t)},clearAll:function(){return K().clear()}},A],V=[C,z],G=b.createStore(W,V),Y=H,Q=G,X="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},Z="object"==typeof X&&X&&X.Object===Object&&X,tt="object"==typeof self&&self&&self.Object===Object&&self,et=Z||tt||Function("return this")(),rt=et.Symbol,nt=Object.prototype,ot=nt.hasOwnProperty,at=nt.toString,it=rt?rt.toStringTag:void 0;var ut=Object.prototype.toString;var ct="[object Null]",st="[object Undefined]",ft=rt?rt.toStringTag:void 0;function lt(t){return null==t?void 0===t?st:ct:ft&&ft in Object(t)?function(t){var e=ot.call(t,it),r=t[it];try{t[it]=void 0;var n=!0}catch(t){}var o=at.call(t);return n&&(e?t[it]=r:delete t[it]),o}(t):function(t){return ut.call(t)}(t)}function pt(t){return null!=t&&"object"==typeof t}var ht="[object Symbol]";function dt(t){return"symbol"==typeof t||pt(t)&<(t)==ht}function vt(t,e){for(var r=-1,n=null==t?0:t.length,o=Array(n);++r0){if(++Gt>=Kt)return arguments[0]}else Gt=0;return Vt.apply(void 0,arguments)});function Zt(t){return t!=t}function te(t,e,r){return e==e?function(t,e,r){for(var n=r-1,o=t.length;++n-1&&t%1==0&&t-1&&t%1==0&&t<=fe}function pe(t){return null!=t&&le(t.length)&&!Et(t)}var he=Object.prototype;function de(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||he)}var ve="[object Arguments]";function ge(t){return pt(t)&<(t)==ve}var ye=Object.prototype,be=ye.hasOwnProperty,me=ye.propertyIsEnumerable,_e=ge(function(){return arguments}())?ge:function(t){return pt(t)&&be.call(t,"callee")&&!me.call(t,"callee")};var we="object"==typeof exports&&exports&&!exports.nodeType&&exports,je=we&&"object"==typeof module&&module&&!module.nodeType&&module,Se=je&&je.exports===we?et.Buffer:void 0,Oe=(Se?Se.isBuffer:void 0)||function(){return!1},ke={};ke["[object Float32Array]"]=ke["[object Float64Array]"]=ke["[object Int8Array]"]=ke["[object Int16Array]"]=ke["[object Int32Array]"]=ke["[object Uint8Array]"]=ke["[object Uint8ClampedArray]"]=ke["[object Uint16Array]"]=ke["[object Uint32Array]"]=!0,ke["[object Arguments]"]=ke["[object Array]"]=ke["[object ArrayBuffer]"]=ke["[object Boolean]"]=ke["[object DataView]"]=ke["[object Date]"]=ke["[object Error]"]=ke["[object Function]"]=ke["[object Map]"]=ke["[object Number]"]=ke["[object Object]"]=ke["[object RegExp]"]=ke["[object Set]"]=ke["[object String]"]=ke["[object WeakMap]"]=!1;var Ae="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ee=Ae&&"object"==typeof module&&module&&!module.nodeType&&module,Te=Ee&&Ee.exports===Ae&&Z.process,xe=function(){try{var t=Ee&&Ee.require&&Ee.require("util").types;return t||Te&&Te.binding&&Te.binding("util")}catch(t){}}(),Pe=xe&&xe.isTypedArray,Ce=Pe?function(t){return function(e){return t(e)}}(Pe):function(t){return pt(t)&&le(t.length)&&!!ke[lt(t)]},qe=Object.prototype.hasOwnProperty;function ze(t,e){var r=gt(t),n=!r&&_e(t),o=!r&&!n&&Oe(t),a=!r&&!n&&!o&&Ce(t),i=r||n||o||a,u=i?function(t,e){for(var r=-1,n=Array(t);++r-1},Xe.prototype.set=function(t,e){var r=this.__data__,n=Ye(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this};var Ze=Rt(et,"Map");function tr(t,e){var r,n,o=t.__data__;return("string"==(n=typeof(r=e))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof e?"string":"hash"]:o.map}function er(t){var e=-1,r=null==t?0:t.length;for(this.clear();++e=n?t:function(t,e,r){var n=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var a=Array(o);++nu))return!1;var s=a.get(t);if(s&&a.get(e))return s==e;var f=-1,l=!0,p=r&ln?new cn:void 0;for(a.set(t,e),a.set(e,t);++f1?e[n-1]:void 0,a=n>2?e[2]:void 0;for(o=po.length>3&&"function"==typeof o?(n--,o):void 0,a&&function(t,e,r){if(!wt(r))return!1;var n=typeof e;return!!("number"==n?pe(r)&&ne(e,r.length):"string"==n&&e in r)&&ae(r[e],t)}(e[0],e[1],a)&&(o=n<3?void 0:o,n=1),t=Object(t);++r-1;);return r}(n,o),function(t,e){for(var r=t.length;r--&&te(e,t[r],0)>-1;);return r}(n,o)+1).join("")}function wo(t){return!!gt(t)||null!=t&&""!==_o(t)}var jo=function(t){return!io(t)&&!so(parseFloat(t))},So=function(t){return""!==_o(t)&&io(t)},Oo=function(t){return function(t){return!0===t||!1===t||pt(t)&<(t)==uo}(t)},ko=function(t,e){return void 0===e&&(e=!0),!fo(t)&&""!==t&&""!==_o(t)&&(!1===e||!0===e&&!function(t){return null===t}(t))},Ao="application/vnd.api+json",Eo={Accept:Ao,"Content-Type":[Ao,"charset=utf-8"].join(";")},To="payload",xo="condition",Po="args",Co=["POST","PUT"],qo="type",zo="optional",No="enumv",Io="args",$o="checker",Fo="alias",Jo={desc:"y"},Mo="No message",Ro=qo,Uo=zo,Do=No,Ho=Io,Lo=$o,Ko=Fo,Bo="continue",Wo=function(t){switch(t){case"number":return jo;case"string":return So;case"boolean":return Oo;default:return ko}},Vo=function(t,e){return void 0===e&&(e=""),!!gt(t)&&(""===e||""===_o(e)||!(t.filter(function(t){return!Wo(e)(t)}).length>0))},Go=function(t){if(t.indexOf("array.<")>-1&&t.indexOf(">")>-1){var e=t.replace("array.<","").replace(">","");return e.indexOf("|")?e.split("|"):[e]}return!1},Yo=function(t,e){var r=t.arg;return e.length>1?!r.filter(function(t){return!(e.length>e.filter(function(e){return!Wo(e)(t)}).length)}).length:e.length>e.filter(function(t){return!Vo(r,t)}).length},Qo=function(t,e){if(void 0===e&&(e=null),wr(t)){if(!e)return!0;if(Vo(e))return!e.filter(function(e){var r=t[e.name];return!(e.type.length>e.type.filter(function(t){var e;return!!fo(r)||(!1!==(e=Go(t))?!Yo({arg:r},e):!Wo(t)(r))}).length)}).length}return!1},Xo=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 406},r.name.get=function(){return"Jsonql406Error"},Object.defineProperties(e,r),e}(Error),Zo=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 500},r.name.get=function(){return"Jsonql500Error"},Object.defineProperties(e,r),e}(Error),ta=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 401},r.name.get=function(){return"JsonqlAuthorisationError"},Object.defineProperties(e,r),e}(Error),ea=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 401},r.name.get=function(){return"JsonqlContractAuthError"},Object.defineProperties(e,r),e}(Error),ra=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 500},r.name.get=function(){return"JsonqlResolverAppError"},Object.defineProperties(e,r),e}(Error),na=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={statusCode:{configurable:!0},name:{configurable:!0}};return r.statusCode.get=function(){return 404},r.name.get=function(){return"JsonqlResolverNotFoundError"},Object.defineProperties(e,r),e}(Error),oa=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlEnumError"},Object.defineProperties(e,r),e}(Error),aa=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlTypeError"},Object.defineProperties(e,r),e}(Error),ia=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlCheckerError"},Object.defineProperties(e,r),e}(Error),ua=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlValidationError"},Object.defineProperties(e,r),e}(Error),ca=function(t){function e(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];t.apply(this,r),this.message=r[0],this.detail=r[1],this.className=e.name,t.captureStackTrace&&t.captureStackTrace(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0},statusCode:{configurable:!0}};return r.name.get=function(){return"JsonqlError"},r.statusCode.get=function(){return-1},Object.defineProperties(e,r),e}(Error),sa=function(t){function e(r,n){t.call(this,n),this.statusCode=r,this.className=e.name}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={name:{configurable:!0}};return r.name.get=function(){return"JsonqlServerError"},Object.defineProperties(e,r),e}(Error),fa=Object.freeze({Jsonql406Error:Xo,Jsonql500Error:Zo,JsonqlAuthorisationError:ta,JsonqlContractAuthError:ea,JsonqlResolverAppError:ra,JsonqlResolverNotFoundError:na,JsonqlEnumError:oa,JsonqlTypeError:aa,JsonqlCheckerError:ia,JsonqlValidationError:ua,JsonqlError:ca,JsonqlServerError:sa}),la=ca,pa=function(t,e){return!!Object.keys(t).filter(function(t){return e===t}).length};function ha(t){if(pa(t,"error")){var e=t.error,r=e.className,n=e.name,o=r||n,a=e.message||Mo,i=e.detail||e;if(o&&fa[o])throw new fa[r](a,i);throw new la(a,i)}return t}function da(t){if(Array.isArray(t))throw new ua("",t);var e=t.message||Mo,r=t.detail||t;switch(!0){case t instanceof Xo:throw new Xo(e,r);case t instanceof Zo:throw new Zo(e,r);case t instanceof ta:throw new ta(e,r);case t instanceof ea:throw new ea(e,r);case t instanceof ra:throw new ra(e,r);case t instanceof na:throw new na(e,r);case t instanceof oa:throw new oa(e,r);case t instanceof aa:throw new aa(e,r);case t instanceof ia:throw new ia(e,r);case t instanceof ua:throw new ua(e,r);case t instanceof sa:throw new sa(e,r);default:throw new ca(e,r)}}var va=function(t,e){var r,n,o,a,i;switch(!0){case"object"===t:return o=(n=e).arg,a=n.param,i=[o],Array.isArray(a.keys)&&a.keys.length&&i.push(a.keys),!Qo.apply(null,i);case"array"===t:return!Vo(e.arg);case!1!==(r=Go(t)):return!Yo(e,r);default:return!Wo(t)(e.arg)}},ga=function(t,e){return fo(t)?!0!==e.optional||fo(e.defaultvalue)?null:e.defaultvalue:t},ya=function(t,e,r){var n;void 0===r&&(r=!1);var o=function(t,e){if(!Vo(e))throw new ca("params is not an array! Did something gone wrong when you generate the contract.json?");if(0===e.length)return[];if(!Vo(t))throw new ca("args is not an array! You might want to do: ES6 Array.from(arguments) or ES5 Array.prototype.slice.call(arguments)");switch(!0){case t.length==e.length:return t.map(function(t,r){return{arg:t,index:r,param:e[r]}});case!0===e[0].variable:var r=e[0].type;return t.map(function(t,n){return{arg:t,index:n,param:e[n]||{type:r,name:"_"}}});case t.lengthe.length&&1===e.length:var n,o=["any"];return!1!==(n=Go(e[0].type[0]))&&(o=n),t.map(function(t,r){return{arg:t,index:r,param:e[r]||{type:o,name:"_"}}});default:throw new ca("Could not understand your arguments and parameter structure!",{args:t,params:e})}}(t,e),a=o.filter(function(t){return!0===t.param.optional?function(t){var e=t.arg,r=t.param;return!(!wo(e)||r.type.length>r.type.filter(function(e){return va(e,t)}).length)}(t):!(t.param.type.length>t.param.type.filter(function(e){return va(e,t)}).length)});return r?((n={}).error=a,n.data=o.map(function(t){return t.arg}),n):a},ba=function(t,e){return!!t.filter(function(t){return t===e}).length},ma=function(t,e){var r=Object.keys(t);return ba(r,e)},_a=function(t){return!wo(t)};function wa(t,e){var r=bo(e,function(t,e){return!t[Ko]});return Jn(r,{})?t:function(t,e){var r={};return e=Yn(e),Zn(t,function(t,n,o){oe(r,e(t,n,o),t)}),r}(t,function(t,e){return function(t,e,r){var n;return r(t,function(t,r,o){if(e(t,r,o))return n=r,!1}),n}(r,Yn(function(t){return t.alias===e}),Zn)||e})}function ja(t,e){return lo(e,function(e,r){var n,o;return fo(t[r])||!0===e[Uo]&&_a(t[r])?ho({},e,((n={})[Bo]=!0,n)):((o={})[Ho]=t[r],o[Ro]=e[Ro],o[Uo]=e[Uo]||!1,o[Do]=e[Do]||!1,o[Lo]=e[Lo]||!1,o)})}function Sa(t,e){var r=function(t,e){var r=wa(t,e);return{pristineValues:lo(bo(e,function(t,e){return ma(r,e)}),function(t){return t.args}),checkAgainstAppProps:bo(e,function(t,e){return!ma(r,e)}),config:r}}(t,e),n=r.config,o=r.pristineValues;return[ja(n,r.checkAgainstAppProps),o]}var Oa=function(t){return Vo(t)?t:[t]};var ka=function(t,e){return!Vo(e)||function(t,e){return!!t.filter(function(t){return t===e}).length}(e,t)},Aa=function(t,e){try{return!!Et(e)&&e.apply(null,[t])}catch(t){return!1}};function Ea(t){return function(e,r){if(e[Bo])return e[Ho];var n=function(t,e){var r,n=[[t[Ho]],[(r={},r[Ro]=Oa(t[Ro]),r[Uo]=t[Uo],r)]];return Reflect.apply(e,null,n)}(e,t);if(n.length)throw new aa(r,n);if(!1!==e[Do]&&!ka(e[Ho],e[Do]))throw new oa(r);if(!1!==e[Lo]&&!Aa(e[Ho],e[Lo]))throw new ia(r);return e[Ho]}}var Ta=function(t,e){return Promise.resolve(Sa(t,e))};function xa(t,e,r,n){return void 0===t&&(t={}),Ta(t,e).then(function(t){return function(t,e){var r=t[0],n=t[1],o=lo(r,Ea(e));return ho(o,n)}(t,n)}).then(function(t){return ho({},t,r)})}var Pa=Qo,Ca=So,qa=Vo,za=function(t,e,r){return void 0===r&&(r=!1),new Promise(function(n,o){var a=ya(t,e,r);return r?a.error.length?o(a.error):n(a.data):a.length?o(a):n([])})},Na=function(t,e,r){void 0===r&&(r={});var n=r[zo],o=r[No],a=r[$o],i=r[Fo];return function(t,e,r,n,o,a){void 0===r&&(r=!1),void 0===n&&(n=!1),void 0===o&&(o=!1),void 0===a&&(a=!1);var i={};return i[Io]=t,i[qo]=e,!0===r&&(i[zo]=!0),Vo(n)&&(i[No]=n),Et(o)&&(i[$o]=o),io(a)&&(i[Fo]=a),i}.apply(null,[t,e,n,o,a,i])},Ia=function(t){return function(e,r,n){return void 0===n&&(n={}),xa(e,r,n,t)}}(ya),$a=ba,Fa=ma,Ja=function(t,e,r){var n;if(void 0===e&&(e=[]),void 0===r&&(r=!1),So(t)&&Vo(e)){var o={};return o[Po]=e,!0===r?o:((n={})[t]=o,n)}throw new ua("[createQuery] expect resolverName to be string and args to be array!",{resolverName:t,args:e})},Ma=function(t,e,r,n){var o;void 0===r&&(r={}),void 0===n&&(n=!1);var a={};if(a[To]=e,a[xo]=r,!0===n)return a;if(So(t))return(o={})[t]=a,o;throw new ua("[createMutation] expect resolverName to be string!",{resolverName:t,payload:e,condition:r})},Ra=function(t){return Object.keys(t)[0]},Ua=function(){return Math.floor(Date.now()/1e3)},Da=function(t,e){return void 0===e&&(e={}),La(e)?Promise.resolve(e):t.getContract()},Ha=function(t){return Fa(t,"data")&&!Fa(t,"error")?t.data:t},La=function(t){return t&&Pa(t)&&(Fa(t,"query")||Fa(t,"mutation"))},Ka="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Ba(t){this.message=t}Ba.prototype=new Error,Ba.prototype.name="InvalidCharacterError";var Wa="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(t){var e=String(t).replace(/=+$/,"");if(e.length%4==1)throw new Ba("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,o=0,a=0,i="";n=e.charAt(a++);~n&&(r=o%4?64*r+n:n,o++%4)?i+=String.fromCharCode(255&r>>(-2*o&6)):0)n=Ka.indexOf(n);return i};var Va=function(t){var e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw"Illegal base64url string!"}try{return function(t){return decodeURIComponent(Wa(t).replace(/(.)/g,function(t,e){var r=e.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r}))}(e)}catch(t){return Wa(e)}};function Ga(t){this.message=t}Ga.prototype=new Error,Ga.prototype.name="InvalidTokenError";var Ya,Qa,Xa,Za,ti,ei,ri,ni,oi,ai=function(t,e){if("string"!=typeof t)throw new Ga("Invalid token specified");var r=!0===(e=e||{}).header?0:1;try{return JSON.parse(Va(t.split(".")[r]))}catch(t){throw new Ga("Invalid token specified: "+t.message)}},ii=Ga;function ui(t){if(Ca(t))return function(t){var e=t.iat||Math.floor(Date.now()/1e3);if(t.exp&&e>=t.exp){var r=new Date(t.exp).toISOString();throw new ca("Token has expired on "+r,t)}return t}(ai(t));throw new ca("Token must be a string!")}ai.InvalidTokenError=ii;Na("HS256",["string"]),Na(!1,["boolean","number","string"],((Ya={})[Fo]="exp",Ya[zo]=!0,Ya)),Na(!1,["boolean","number","string"],((Qa={})[Fo]="nbf",Qa[zo]=!0,Qa)),Na(!1,["boolean","string"],((Xa={})[Fo]="iss",Xa[zo]=!0,Xa)),Na(!1,["boolean","string"],((Za={})[Fo]="sub",Za[zo]=!0,Za)),Na(!1,["boolean","string"],((ti={})[Fo]="iss",ti[zo]=!0,ti)),Na(!1,["boolean"],((ei={})[zo]=!0,ei)),Na(!1,["boolean","string"],((ri={})[zo]=!0,ri)),Na(!1,["boolean","string"],((ni={})[zo]=!0,ni)),Na(!1,["boolean"],((oi={})[zo]=!0,oi));!function(){switch(!0){case"undefined"!=typeof WebSocket:return WebSocket;case"undefined"!=typeof MozWebSocket:return MozWebSocket;case"undefined"!=typeof window:return window.WebSocket||window.MozWebSocket;default:throw new ua("WebSocket is NOT SUPPORTED!")}}();var ci=Co[0],si=Co[1],fi=function(t){try{this.fly=new Fly}catch(t){throw console.error("Init fly error!",t),t}this.opts=t,this.extraHeader={},this.extraParams={},this.reqInterceptor(),this.resInterceptor()},li={headers:{configurable:!0}};li.headers.set=function(t){this.extraHeader=t},fi.prototype.request=function(t,e,r){var n;void 0===e&&(e={}),void 0===r&&(r={}),this.headers=r;var o=ho({},{_cb:Ua()},this.extraParams);if(this.opts.enableJsonp){var a=Ra(t);o=ho({},o,((n={}).jsonqlJsonpCallback=a,n)),t=t[a]}return this.fly.request(this.jsonqlEndpoint,t,ho({},{method:ci,params:o},e))},fi.prototype.reqInterceptor=function(){var t=this;this.fly.interceptors.request.use(function(e){console.info("request interceptor call");var r=t.getHeaders();for(var n in r)e.headers[n]=r[n];return e})},fi.prototype.processJsonp=function(t){return Ha(t)},fi.prototype.resInterceptor=function(){var t=this,e=t.opts.enableJsonp;this.fly.interceptors.response.use(function(r){console.info("response interceptor call"),t.cleanUp();var n=Ca(r.data)?JSON.parse(r.data):r.data;return e?t.processJsonp(n):Ha(n)},function(e){throw t.cleanUp(),console.error(e),new sa("Server side error",e)})},fi.prototype.getHeaders=function(){return this.opts.enableAuth?ho({},Eo,this.getAuthHeader(),this.extraHeader):ho({},Eo,this.extraHeader)},fi.prototype.cleanUp=function(){this.extraHeader={},this.extraParams={}},fi.prototype.get=function(){return this.opts.showContractDesc&&(this.extraParams=ho({},this.extraParams,Jo)),this.request({},{method:"GET"},this.contractHeader).then(ha).then(function(t){return console.info("144 get contract result",t),t.cache&&t.contract?t.contract:t})},fi.prototype.query=function(t,e){return void 0===e&&(e=[]),this.request(Ja(t,e)).then(ha)},fi.prototype.mutation=function(t,e,r){return void 0===e&&(e={}),void 0===r&&(r={}),this.request(Ma(t,e,r),{method:si}).then(ha)},Object.defineProperties(fi.prototype,li);var pi=function(t){function e(e){t.call(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={storeIt:{configurable:!0},jsonqlEndpoint:{configurable:!0},jsonqlContract:{configurable:!0},jsonqlToken:{configurable:!0},jsonqlUserdata:{configurable:!0}};return r.storeIt.set=function(t){throw console.info("storeIt",t),qa(t)&&t.length>=2&&Reflect.apply(Y.set,Y,t),new ua("Expect argument to be array and least 2 items!")},r.jsonqlEndpoint.set=function(t){var e=Y.get("endpoint")||[];$a(e,t)||(e.push(t),this.storeId=["endpoint",e],this.endpointIndex=e.length-1)},r.jsonqlContract.set=function(t){var e=this.opts.storageKey,r=[e],n=t[0],o=t[1],a=Y.get(e)||[];a[this.endpointIndex||0]=n,r.push(a),o&&r.push(o),this.opts.keepContract&&(this.storeIt=r)},r.jsonqlToken.set=function(t){var e="credential",r=localStorage.get(e)||[];if(!$a(r,t)){var n=r.length-1;r[n]=t,this[e+"Index"]=n;var o=[e,r];if(this.opts.tokenExpired){var a=parseFloat(this.opts.tokenExpired);if(!isNaN(a)&&a>0){var i=Ua();o.push(i+parseFloat(a))}}return this.storeIt=o,this.jsonqlUserdata=this.decoder(t),t}return!1},r.jsonqlUserdata.set=function(t){var e=["userdata",t];return t.exp&&e.push(t.exp),Reflect.apply(Y.set,Y,e)},r.jsonqlEndpoint.get=function(){var t=Y.get("endpoint");if(!t){var e=this.opts,r=[e.hostname,e.jsonqlPath].join("/");return this.jsonqlEndpoint=r,r}return t[this.endpointIndex]},r.jsonqlContract.get=function(){var t=this.opts.storageKey;return(Y.get(t)||[])[this.endpointIndex]||!1},r.jsonqlToken.get=function(){var t="credential",e=localStorage.get(t);return!!e&&e[this[t+"Index"]]},r.jsonqlUserdata.get=function(){return Q.get("userdata")},Object.defineProperties(e.prototype,r),e}(function(t){function e(e){t.call(this,e),e.enableAuth&&e.useJwt&&(this.setDecoder=ui)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={userdata:{configurable:!0},rawAuthToken:{configurable:!0},setDecoder:{configurable:!0}};return r.userdata.get=function(){return this.jsonqlUserdata},r.rawAuthToken.get=function(){return this.jsonqlToken},r.setDecoder.set=function(t){"function"==typeof t&&(this.decoder=t)},e.prototype.storeToken=function(t){return this.jsonqlToken=t},e.prototype.decoder=function(t){return t},e.prototype.getAuthHeader=function(){var t,e=this.rawAuthToken;return e?((t={})[this.opts.AUTH_HEADER]="Bearer "+e,t):{}},Object.defineProperties(e.prototype,r),e}(function(t){function e(e){t.call(this,e)}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var r={contractHeader:{configurable:!0}};return e.prototype.getContract=function(){var t=this.readContract();if(console.info("getContract first call",t),t&&Array.isArray(t)){var e=t[this.endpointIndex||0];if(e)return Promise.resolve(e)}return this.get().then(this.storeContract.bind(this))},r.contractHeader.get=function(){var t={};return!1!==this.opts.contractKey&&(t[this.opts.contractKeyName]=this.opts.contractKey),t},e.prototype.storeContract=function(t){if(!La(t))throw new ua("Contract is malformed!");var e=[t];if(this.opts.contractExpired){var r=parseFloat(this.opts.contractExpired);!isNaN(r)&&r>0&&e.push(r)}return this.jsonqlContract=e,console.info("storeContract return result",t),t},e.prototype.readContract=function(){return La(this.opts.contract)?this.opts.contract:Y.get(this.opts.storageKey)},Object.defineProperties(e.prototype,r),e}(fi))),hi=new WeakMap,di=new WeakMap;var vi=function(t){void 0===t&&(t={}),t.logger&&"function"==typeof t.logger&&(this.logger=t.logger),this.keep=t.keep,this.result=t.keep?[]:null,this.normalStore=new Map,this.lazyStore=new Map},gi={$done:{configurable:!0},normalStore:{configurable:!0},lazyStore:{configurable:!0}};vi.prototype.logger=function(){},vi.prototype.$on=function(t,e,r){var n=this;void 0===r&&(r=null);this.validate(t,e);var o=this.takeFromStore(t);if(!1===o)return this.logger("$on",t+" callback is not in lazy store"),this.addToNormalStore(t,"on",e,r);this.logger("$on",t+" found in lazy store");var a=0;return o.forEach(function(o){var i=o[0],u=o[1],c=o[2];if(c&&"on"!==c)throw new Error("You are trying to register an event already been taken by other type: "+c);n.run(e,i,r||u),a+=n.addToNormalStore(t,"on",e,r||u)}),a},vi.prototype.$once=function(t,e,r){void 0===r&&(r=null),this.validate(t,e);var n=this.takeFromStore(t);this.normalStore;if(!1===n)return this.logger("$once",t+" not in the lazy store"),this.addToNormalStore(t,"once",e,r);this.logger("$once",n);var o=Array.from(n)[0],a=o[0],i=o[1],u=o[2];if(u&&"once"!==u)throw new Error("You are trying to register an event already been taken by other type: "+u);this.run(e,a,r||i),this.$off(t)},vi.prototype.$only=function(t,e,r){var n=this;void 0===r&&(r=null),this.validate(t,e);var o=!1,a=this.takeFromStore(t);(this.normalStore.has(t)||(this.logger("$only",t+" add to store"),o=this.addToNormalStore(t,"only",e,r)),!1!==a)&&(this.logger("$only",t+" found data in lazy store to execute"),Array.from(a).forEach(function(t){var o=t[0],a=t[1],i=t[2];if(i&&"only"!==i)throw new Error("You are trying to register an event already been taken by other type: "+i);n.run(e,o,r||a)}));return o},vi.prototype.$onlyOnce=function(t,e,r){void 0===r&&(r=null),this.validate(t,e);var n=!1,o=this.takeFromStore(t);if(this.normalStore.has(t)||(this.logger("$onlyOnce",t+" add to store"),n=this.addToNormalStore(t,"onlyOnce",e,r)),!1!==o){this.logger("$onlyOnce",o);var a=Array.from(o)[0],i=a[0],u=a[1],c=a[2];if(c&&"onlyOnce"!==c)throw new Error("You are trying to register an event already been taken by other type: "+c);this.run(e,i,r||u),this.$off(t)}return n},vi.prototype.$replace=function(t,e,r,n){if(void 0===r&&(r=null),void 0===n&&(n="on"),this.validateType(n)){this.$off(t);var o=this["$"+n];return Reflect.apply(o,this,[t,e,r])}throw new Error(n+" is not supported!")},vi.prototype.$trigger=function(t,e,r,n){void 0===e&&(e=[]),void 0===r&&(r=null),void 0===n&&(n=!1),this.validateEvt(t);var o=0,a=this.normalStore;if(this.logger("$trigger",a),a.has(t)){this.logger("$trigger",t,"found");for(var i=Array.from(a.get(t)),u=i.length,c=!1,s=0;s0;)n[o]=arguments[o+2];if(t.has(e)?(this.logger("addToStore",e+" existed"),r=t.get(e)):(this.logger("addToStore","create new Set for "+e),r=new Set),n.length>2)if(Array.isArray(n[0])){var a=n[2];this.checkTypeInLazyStore(e,a)||r.add(n)}else this.checkContentExist(n,r)||(this.logger("addToStore","insert new",n),r.add(n));else r.add(n);return t.set(e,r),[t,r.size]},vi.prototype.checkContentExist=function(t,e){return!!Array.from(e).filter(function(e){return e[0]===t[0]}).length},vi.prototype.checkTypeInStore=function(t,e){this.validateEvt(t),this.validateEvt(e);var r=this.$get(t,!0);return!1===r||!r.filter(function(t){var r=t[3];return e!==r}).length},vi.prototype.checkTypeInLazyStore=function(t,e){this.validateEvt(t),this.validateEvt(e);var r=this.lazyStore.get(t);return this.logger("checkTypeInLazyStore",r),!!r&&!!Array.from(r).filter(function(t){return t[2]!==e}).length},vi.prototype.addToNormalStore=function(t,e,r,n){if(void 0===n&&(n=null),this.logger("addToNormalStore",t,e,"add to normal store"),this.checkTypeInStore(t,e)){this.logger(e+" can add to "+t+" store");var o=this.hashFnToKey(r),a=[this.normalStore,t,o,r,n,e],i=Reflect.apply(this.addToStore,this,a),u=i[0],c=i[1];return this.normalStore=u,c}return!1},vi.prototype.addToLazyStore=function(t,e,r,n){void 0===e&&(e=[]),void 0===r&&(r=null),void 0===n&&(n=!1);var o=[this.lazyStore,t,this.toArray(e),r];n&&o.push(n);var a=Reflect.apply(this.addToStore,this,o),i=a[0],u=a[1];return this.lazyStore=i,u},vi.prototype.toArray=function(t){return Array.isArray(t)?t:[t]},gi.normalStore.set=function(t){hi.set(this,t)},gi.normalStore.get=function(){return hi.get(this)},gi.lazyStore.set=function(t){di.set(this,t)},gi.lazyStore.get=function(){return di.get(this)},vi.prototype.hashFnToKey=function(t){return t.toString().split("").reduce(function(t,e){return(t=(t<<5)-t+e.charCodeAt(0))&t},0)+""},Object.defineProperties(vi.prototype,gi);var yi=new vi,bi=function(t,e,r,n){return function(){for(var r=[],o=arguments.length;o--;)r[o]=arguments[o];var a=n.auth[e].params,i=a.map(function(t,e){return r[e]}),u=r[a.length]||{};return za(r,a).then(function(){return t.query.apply(t,[e,i,u])}).catch(da)}},mi=function(t,e,r){var n={query:{},mutation:{},auth:{}},o=function(e){n.query[e]=function(){for(var n=[],o=arguments.length;o--;)n[o]=arguments[o];var a=r.query[e].params,i=a.map(function(t,e){return n[e]}),u=n[a.length]||{};return za(i,a).then(function(){return t.query.apply(t,[e,i,u])}).catch(da)}};for(var a in r.query)o(a);var i=function(e){n.mutation[e]=function(n,o,a){void 0===a&&(a={});var i=[n,o],u=r.mutation[e].params;return za(i,u).then(function(){return t.mutation.apply(t,[e,n,o,a])}).catch(da)}};for(var u in r.mutation)i(u);if(e.enableAuth&&r.auth){var c=e.loginHandlerName,s=e.logoutHandlerName;r.auth[c]&&(n[c]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var o=bi(t,c,0,r);return o.apply(null,e).then(t.postLoginAction).then(function(t){return yi.$trigger("login",t),t})}),r.auth[s]?n[s]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var o=bi(t,s,0,r);return o.apply(null,e).then(t.postLogoutAction).then(function(t){return yi.$trigger("logout",t),t})}:n[s]=function(){t.postLogoutAction("continue"),yi.$trigger("logout","continue")},n.userdata=function(){return t.userdata}}return n.returnInstance&&(n.jsonqlClientInstance=t),n.getToken=function(){return t.rawAuthToken},n.eventEmitter=yi,n},_i={contract:!1,MUTATION_ARGS:["name","payload","conditions"],CONTENT_TYPE:Ao,BEARER:"Bearer",AUTH_HEADER:"Authorization"},wi={hostname:Na([window.location.protocol,window.location.host].join("//"),["string"]),jsonqlPath:Na("jsonql",["string"]),loginHandlerName:Na("login",["string"]),logoutHandlerName:Na("logout",["string"]),enableJsonp:Na(!1,["boolean"]),enableAuth:Na(!1,["boolean"]),useJwt:Na(!0,["boolean"]),useLocalstorage:Na(!0,["boolean"]),storageKey:Na("storageKey",["string"]),authKey:Na("authKey",["string"]),contractExpired:Na(0,["number"]),keepContract:Na(!0,["boolean"]),showContractDesc:Na(!1,["boolean"]),contractKey:Na(!1,["boolean"]),contractKeyName:Na("X-JSONQL-CV-KEY",["string"]),enableTimeout:Na(!1,["boolean"]),timeout:Na(5e3,["number"]),returnInstance:Na(!1,["boolean"]),allowReturnRawToken:Na(!1,["boolean"]),debugOn:Na(!1,["boolean"])};return function(t){return void 0===t&&(t={}),function(t){var e=t.contract;return Ia(t,wi,_i).then(function(t){return t.contract=e,t})}(t).then(function(t){return{baseClient:new pi(t),opts:t}}).then(function(t){var e=t.baseClient,r=t.opts;return Da(e,r.contract).then(function(t){return mi(e,r,t)})})}});
//# sourceMappingURL=jsonql-client.umd.js.map
diff --git a/packages/http-client/dist/jsonql-client.umd.js.map b/packages/http-client/dist/jsonql-client.umd.js.map
index 900b7c836061522785dbec86413d6152b61be6fb..d2673b6bde7cbe447b6a9adb6cd5b2fb056ef1bd 100644
--- a/packages/http-client/dist/jsonql-client.umd.js.map
+++ b/packages/http-client/dist/jsonql-client.umd.js.map
@@ -1 +1 @@
-{"version":3,"file":"jsonql-client.umd.js","sources":["../node_modules/store/plugins/defaults.js","../node_modules/store/plugins/expire.js"],"sourcesContent":["module.exports = defaultsPlugin\n\nfunction defaultsPlugin() {\n\tvar defaultValues = {}\n\t\n\treturn {\n\t\tdefaults: defaults,\n\t\tget: get\n\t}\n\t\n\tfunction defaults(_, values) {\n\t\tdefaultValues = values\n\t}\n\t\n\tfunction get(super_fn, key) {\n\t\tvar val = super_fn()\n\t\treturn (val !== undefined ? val : defaultValues[key])\n\t}\n}\n","var namespace = 'expire_mixin'\n\nmodule.exports = expirePlugin\n\nfunction expirePlugin() {\n\tvar expirations = this.createStore(this.storage, null, this._namespacePrefix+namespace)\n\t\n\treturn {\n\t\tset: expire_set,\n\t\tget: expire_get,\n\t\tremove: expire_remove,\n\t\tgetExpiration: getExpiration,\n\t\tremoveExpiredKeys: removeExpiredKeys\n\t}\n\t\n\tfunction expire_set(super_fn, key, val, expiration) {\n\t\tif (!this.hasNamespace(namespace)) {\n\t\t\texpirations.set(key, expiration)\n\t\t}\n\t\treturn super_fn()\n\t}\n\t\n\tfunction expire_get(super_fn, key) {\n\t\tif (!this.hasNamespace(namespace)) {\n\t\t\t_checkExpiration.call(this, key)\n\t\t}\n\t\treturn super_fn()\n\t}\n\t\n\tfunction expire_remove(super_fn, key) {\n\t\tif (!this.hasNamespace(namespace)) {\n\t\t\texpirations.remove(key)\n\t\t}\n\t\treturn super_fn()\n\t}\n\t\n\tfunction getExpiration(_, key) {\n\t\treturn expirations.get(key)\n\t}\n\t\n\tfunction removeExpiredKeys(_) {\n\t\tvar keys = []\n\t\tthis.each(function(val, key) {\n\t\t\tkeys.push(key)\n\t\t})\n\t\tfor (var i=0; i {
- const baseDir = resolve(join(config.baseDir, 'qunit', 'files'))
+ const baseDir = join(config.baseDir, 'qunit', 'tests')
+ console.info('baseDir', baseDir, config.testFilePattern)
return new Promise((resolver, rejecter) => {
glob(join(baseDir, config.testFilePattern), function(err, files) {
+
+ console.info('files found', files)
+
if (err || !files.length) {
console.error('FAILED TO FETCH ANY TEST FILES!')
return rejecter(err)
diff --git a/packages/http-client/tests/qunit/run-qunit.js b/packages/http-client/tests/qunit/run-qunit.js
index 864d92ece68295f52e0b5d27bd0e30111b3825c3..f2bfbac76781ba706f340f759b7a37ef75797809 100644
--- a/packages/http-client/tests/qunit/run-qunit.js
+++ b/packages/http-client/tests/qunit/run-qunit.js
@@ -4,14 +4,14 @@ const config = {
"port": 8081,
"webroot": [
"./tests/qunit/webroot",
- "./tests/qunit/files",
+ "./tests/qunit/tests",
"./dist",
"./node_modules"
],
"open": true,
"reload": true,
"testFilePattern": "*-test.js",
- "baseDir": "/home/joel/projects/open-source/jsonqltools/packages/client/tests"
+ "baseDir": "tests"
}
runQunitSetup(config)
diff --git a/packages/http-client/tests/qunit/files/base-test.js b/packages/http-client/tests/qunit/tests/base-test.js
similarity index 100%
rename from packages/http-client/tests/qunit/files/base-test.js
rename to packages/http-client/tests/qunit/tests/base-test.js
diff --git a/packages/http-client/tests/qunit/webroot/index.html b/packages/http-client/tests/qunit/webroot/index.html
index 39d1bddccef19529544ae5a969db5beeb7743da2..ba45ff5fc02f848aba33f24bac3abae25cc051c6 100644
--- a/packages/http-client/tests/qunit/webroot/index.html
+++ b/packages/http-client/tests/qunit/webroot/index.html
@@ -13,10 +13,9 @@
-
-
+