Comparing version 0.4.1 to 0.4.2
@@ -1,1 +0,1 @@ | ||
import{merge as t,trimUndefined as e,encodeParams as r,XiorTimeoutError as n,anySignal as i,isAbsoluteURL as s,joinPath as o,XiorError as a}from"xior/utils";export*from"xior/utils";function u(t,e,r,n,i,s,o){try{var a=t[s](o),u=a.value}catch(t){r(t);return}a.done?e(u):Promise.resolve(u).then(n,i)}function l(){return(l=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}let c="application/",h=`${c}x-www-form-urlencoded`,f=`${c}json`;function p(){var n;return n=function*(n){let i=n.paramsSerializer||r,s=!1!==n.encodeURI,o=n.method?n.method.toUpperCase():"GET",a=n.url||"",u=a,c=n.data,p=c,d=(null==n?void 0:n.headers)||{},y=n.params||{},m=function(t="GET"){return["HEAD","GET","OPTIONS"].includes(t)}(o);if(c&&!(c instanceof FormData)){let r="";if(null==n?void 0:n.headers){let t=Object.keys(n.headers).find(t=>"content-type"===t.toLowerCase());t&&(r=n.headers[t],n.headers["Content-Type"]=r,"Content-Type"!==t&&delete n.headers[t])}r||(r=m?h:f,d["Content-Type"]=r),m&&n.params&&(y=t({},c||{},y)),r===f?p=JSON.stringify(e(c)):!m&&r===h&&c&&"object"==typeof c&&(p=i(c))}if(Object.keys(y).length>0){let t=i(y,s);a+=a.includes("?")?`&${t}`:`?${t}`}return l({},n,{_data:p,_url:a,data:c,url:u,method:o,headers:d,isGet:m})},(p=function(){var t=this,e=arguments;return new Promise(function(r,i){var s=n.apply(t,e);function o(t){u(s,r,i,o,a,"next",t)}function a(t){u(s,r,i,o,a,"throw",t)}o(void 0)})}).apply(this,arguments)}function d(t,e,r,n,i,s,o){try{var a=t[s](o),u=a.value}catch(t){r(t);return}a.done?e(u):Promise.resolve(u).then(n,i)}function y(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var s=t.apply(e,r);function o(t){d(s,n,i,o,a,"next",t)}function a(t){d(s,n,i,o,a,"throw",t)}o(void 0)})}}function m(){return(m=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}let v=void 0,E=typeof AbortController!=`${v}`;function b(){return(b=y(function*(t,e){let r;if(!e||!t.ok||["text","json"].includes(e)){if((r=yield t.text())&&"text"!==e)try{r=JSON.parse(r)}catch(t){}}else if("blob"===e)return t.blob();else if("arraybuffer"===e)return t.arrayBuffer();return r})).apply(this,arguments)}class O{static create(t){return new O(t)}get interceptors(){return{request:{use:(t,e,r)=>(this.REQI.push(t),t),eject:t=>{this.REQI=this.REQI.filter(e=>e!==t)},clear:()=>{this.REQI=[]}},response:{use:(t,e)=>(this.RESI.push({fn:t,onRejected:e}),t),eject:t=>{this.RESI=this.RESI.filter(e=>e.fn!==t)},clear:()=>{this.RESI=[]}}}}get plugins(){return{use:t=>(this.P.push(t),t),eject:t=>{this.P=this.P.filter(e=>e!==t)},clear:()=>{this.P=[]}}}request(e){var n=this;return y(function*(){let i=t({},n.config||{},n.defaults||{},"string"==typeof e?{url:e}:e||{},{headers:{},params:{}});for(let t of(i.paramsSerializer||(i.paramsSerializer=r),n.REQI))i=yield t(i);let s=n.fetch.bind(n);return n.P.forEach(t=>{s=t(s,n)}),s(i)})()}fetch(t){var e=this;return y(function*(){let r;let u=yield function(t){return p.apply(this,arguments)}(t),{url:l,method:c,headers:h,timeout:f,signal:d,data:O,_data:P,_url:g,isGet:R}=u,I=function(t,e){if(null==t)return{};var r,n,i={},s=Object.keys(t);for(n=0;n<s.length;n++)e.indexOf(r=s[n])>=0||(i[r]=t[r]);return i}(u,["url","method","headers","timeout","signal","data","_data","_url","isGet"]);t._url=g;let T=[],j=v;if(f&&E){let e=new AbortController;j=setTimeout(()=>{e.abort(new n(`timeout of ${f}ms exceeded`,t))},f),T.push(e.signal)}d&&T.push(d),r=T[0],T.length>1&&(r=i(T,()=>{clearTimeout(j)}));let S=g||l||"";t.baseURL&&!s(S)&&(S=o(t.baseURL,S));let w=0,x=fetch(S,m({body:R?v:P},I,{signal:r,method:c,headers:h})).then(y(function*(e){let{responseType:r}=t,n={data:yield function(t,e){return b.apply(this,arguments)}(e,r),response:e,config:t,request:t,status:e.status,statusText:e.statusText,headers:e.headers};return e.ok?n:Promise.reject(new a(e.status?`Request failed with status code ${e.status}`:"Network error",t,n))})).finally(()=>{var t;j&&clearTimeout(j),null==r||null==(t=r.clear)||t.call(r)}),G=[];for(e.RESI.forEach(function(t){G.push(t.fn,t.onRejected)});G.length>w;)x=x.then(G[w++],G[w++]);return x})()}cG(t){return(e,r)=>this.request(r?m({},r,{method:t,url:e}):{method:t,url:e})}cP(t){return(e,r,n)=>this.request(n?m({},n,{method:t,url:e,data:r}):{method:t,url:e,data:r})}get(t,e){return this.cG("GET")(t,e)}head(t,e){return this.cG("HEAD")(t,e)}post(t,e,r){return this.cP("POST")(t,e,r)}put(t,e,r){return this.cP("PUT")(t,e,r)}patch(t,e,r){return this.cP("PATCH")(t,e,r)}delete(t,e){return this.cG("DELETE")(t,e)}options(t,e){return this.cG("OPTIONS")(t,e)}constructor(t){this.REQI=[],this.RESI=[],this.P=[],this.config=t,this.defaults={params:{},headers:{}}}}O.VERSION="0.4.1";let P=Object.assign(O.create(),{create:O.create,VERSION:O.VERSION});export{P as default,O as xior}; | ||
import{keys as t,merge as e,trimUndefined as r,isObj as n,encodeParams as i,XiorTimeoutError as s,anySignal as a,isAbsoluteURL as o,joinPath as u,XiorError as l}from"xior/utils";export*from"xior/utils";function c(t,e,r,n,i,s,a){try{var o=t[s](a),u=o.value}catch(t){r(t);return}o.done?e(u):Promise.resolve(u).then(n,i)}function h(){return(h=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}let f="application/",p=`${f}x-www-form-urlencoded`,d=`${f}json`;function y(){var s;return s=function*(s){let a=s.paramsSerializer||i,o=!1!==s.encodeURI,u=s.method?s.method.toUpperCase():"GET",l=s.url||"",c=l,f=s.data,y=f,m=(null==s?void 0:s.headers)||{},v=s.params||{},E=function(t="GET"){return["HEAD","GET","OPTIONS"].includes(t)}(u);if(f&&!(f instanceof FormData)){let i="";if(null==s?void 0:s.headers){let e=t(s.headers).find(t=>"content-type"===t.toLowerCase());e&&(i=s.headers[e],s.headers["Content-Type"]=i,"Content-Type"!==e&&delete s.headers[e])}i||(i=E?p:d,m["Content-Type"]=i),E&&s.params&&(v=e({},f||{},v)),i===d?y=JSON.stringify(r(f)):!E&&i===p&&f&&n(f)&&(y=a(f))}if(t(v).length>0){let t=a(v,o);l+=l.includes("?")?`&${t}`:`?${t}`}return h({},s,{_data:y,_url:l,data:f,url:c,method:u,headers:m,isGet:E})},(y=function(){var t=this,e=arguments;return new Promise(function(r,n){var i=s.apply(t,e);function a(t){c(i,r,n,a,o,"next",t)}function o(t){c(i,r,n,a,o,"throw",t)}a(void 0)})}).apply(this,arguments)}function m(t,e,r,n,i,s,a){try{var o=t[s](a),u=o.value}catch(t){r(t);return}o.done?e(u):Promise.resolve(u).then(n,i)}function v(t){return function(){var e=this,r=arguments;return new Promise(function(n,i){var s=t.apply(e,r);function a(t){m(s,n,i,a,o,"next",t)}function o(t){m(s,n,i,a,o,"throw",t)}a(void 0)})}}function E(){return(E=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}let P=void 0,g=typeof AbortController!=`${P}`;function O(){return(O=v(function*(t,e){let r;if(!e||!t.ok||["text","json"].includes(e)){if((r=yield t.text())&&"text"!==e)try{r=JSON.parse(r)}catch(t){}}else if("blob"===e)return t.blob();else if("arraybuffer"===e)return t.arrayBuffer();return r})).apply(this,arguments)}class R{static create(t){return new R(t)}get interceptors(){return{request:{use:(t,e,r)=>(this.REQI.push(t),t),eject:t=>{this.REQI=this.REQI.filter(e=>e!==t)},clear:()=>{this.REQI=[]}},response:{use:(t,e)=>(this.RESI.push({fn:t,onRejected:e}),t),eject:t=>{this.RESI=this.RESI.filter(e=>e.fn!==t)},clear:()=>{this.RESI=[]}}}}get plugins(){return{use:t=>(this.P.push(t),t),eject:t=>{this.P=this.P.filter(e=>e!==t)},clear:()=>{this.P=[]}}}request(t){var r=this;return v(function*(){let n=e({},r.config||{},r.defaults||{},"string"==typeof t?{url:t}:t||{},{headers:{},params:{}});for(let t of(n.paramsSerializer||(n.paramsSerializer=i),r.REQI))n=yield t(n);let s=r.fetch.bind(r);return r.P.forEach(t=>{s=t(s,r)}),s(n)})()}fetch(t){var e=this;return v(function*(){let r;let n=yield function(t){return y.apply(this,arguments)}(t),{url:i,method:c,headers:h,timeout:f,signal:p,data:d,_data:m,_url:R,isGet:b}=n,I=function(t,e){if(null==t)return{};var r,n,i={},s=Object.keys(t);for(n=0;n<s.length;n++)e.indexOf(r=s[n])>=0||(i[r]=t[r]);return i}(n,["url","method","headers","timeout","signal","data","_data","_url","isGet"]);t._url=R;let T=[],S=P;if(f&&g){let e=new AbortController;S=setTimeout(()=>{e.abort(new s(`timeout of ${f}ms exceeded`,t))},f),T.push(e.signal)}p&&T.push(p),r=T[0],T.length>1&&(r=a(T,()=>{clearTimeout(S)}));let w=R||i||"";t.baseURL&&!o(w)&&(w=u(t.baseURL,w));let x=0,j=fetch(w,E({body:b?P:m},I,{signal:r,method:c,headers:h})).then(v(function*(e){let{responseType:r}=t,n={data:yield function(t,e){return O.apply(this,arguments)}(e,r),response:e,config:t,request:t,status:e.status,statusText:e.statusText,headers:e.headers};return e.ok?n:Promise.reject(new l(e.status?`Request failed with status code ${e.status}`:"Network error",t,n))})).finally(()=>{var t;S&&clearTimeout(S),null==r||null==(t=r.clear)||t.call(r)}),G=[];for(e.RESI.forEach(function(t){G.push(t.fn,t.onRejected)});G.length>x;)j=j.then(G[x++],G[x++]);return j})()}cG(t){return(e,r)=>this.request(r?E({},r,{method:t,url:e}):{method:t,url:e})}cP(t){return(e,r,n)=>this.request(n?E({},n,{method:t,url:e,data:r}):{method:t,url:e,data:r})}get(t,e){return this.cG("GET")(t,e)}head(t,e){return this.cG("HEAD")(t,e)}post(t,e,r){return this.cP("POST")(t,e,r)}put(t,e,r){return this.cP("PUT")(t,e,r)}patch(t,e,r){return this.cP("PATCH")(t,e,r)}delete(t,e){return this.cG("DELETE")(t,e)}options(t,e){return this.cG("OPTIONS")(t,e)}constructor(t){this.REQI=[],this.RESI=[],this.P=[],this.config=t,this.defaults={params:{},headers:{}}}}R.VERSION="0.4.2";let b=Object.assign(R.create(),{create:R.create,VERSION:R.VERSION});export{b as default,R as xior}; |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xior=t():e.xior=t()}(this,(()=>{return e={699:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anySignal=void 0,t.anySignal=function(e,t){const r=new globalThis.AbortController;function o(e){r.abort(e),i()}const n=[];for(const t of e){if(!0===(null==t?void 0:t.aborted)){o(t.reason);break}if(null!=(null==t?void 0:t.addEventListener)){const e=()=>{o(t.reason)};n.push((()=>{null!=(null==t?void 0:t.removeEventListener)&&t.removeEventListener("abort",e)})),t.addEventListener("abort",e)}}function i(){n.forEach((e=>{e()})),null==t||t()}const s=r.signal;return s.clear=i,s}},509:function(e,t,r){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0});const i=r(895);n(r(895),t),n(r(340),t),n(r(121),t);const s=Object.assign(i.xior.create(),{create:i.xior.create,VERSION:i.xior.VERSION});t.default=s},393:function(e,t,r){"use strict";var o=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function s(e){try{a(o.next(e))}catch(e){i(e)}}function u(e){try{a(o.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}a((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.likeGET=void 0;const n=r(121),i=r(976),s="application/",u=`${s}x-www-form-urlencoded`,a=`${s}json`;function c(e="GET"){return["HEAD","GET","OPTIONS"].includes(e)}t.likeGET=c,t.default=function(e){return o(this,void 0,void 0,(function*(){const t=e.paramsSerializer||n.encodeParams,r=!1!==e.encodeURI,o=e.method?e.method.toUpperCase():"GET";let s=e.url||"";const l=s,d=e.data;let f=d;const h=(null==e?void 0:e.headers)||{};let p=e.params||{};const y=c(o);if(d&&!(d instanceof FormData)){let r="";if(null==e?void 0:e.headers){const t=Object.keys(e.headers).find((e=>"content-type"===e.toLowerCase()));t&&(r=e.headers[t],e.headers["Content-Type"]=r,"Content-Type"!==t&&delete e.headers[t])}r||(r=y?u:a,h["Content-Type"]=r),y&&e.params&&(p=(0,n.merge)({},d||{},p)),r===a?f=JSON.stringify((0,i.trimUndefined)(d)):!y&&r===u&&d&&"object"==typeof d&&(f=t(d))}if(Object.keys(p).length>0){const e=t(p,r);s+=s.includes("?")?`&${e}`:`?${e}`}return Object.assign(Object.assign({},e),{_data:f,_url:s,data:d,url:l,method:o,headers:h,isGet:y})}))}},729:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const o=r(602);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return o.merge}})},629:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){let o=t?r(t):"";o&&(o=e+(e.includes("?")?"&":"?")+o);const[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e}},99:function(e,t,r){"use strict";var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.delay=t.buildSortedURL=void 0;const n=o(r(629));t.buildSortedURL=n.default,t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))}},340:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},976:function(e,t,r){"use strict";var o=this&&this.__createBinding||(Object.create?function(e,t,r,o){void 0===o&&(o=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,o,n)}:function(e,t,r,o){void 0===o&&(o=r),e[o]=t[r]}),n=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||o(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.isXiorError=t.XiorTimeoutError=t.XiorError=t.joinPath=t.isAbsoluteURL=t.trimUndefined=t.encodeParams=void 0,n(r(699),t),n(r(729),t),n(r(99),t);const i=void 0;t.encodeParams=function e(t,r=!0,o=null){if(t===i||null===t)return"";const n=[],s=r?encodeURIComponent:e=>e;for(const u in t)if(Object.prototype.hasOwnProperty.call(t,u)){const a=t[u];if(a!==i){const t=o?`${o}[${s(u)}]`:s(u);if("object"==typeof a){const o=e(a,r,t);""!==o&&n.push(o)}else Array.isArray(a)?a.forEach(((e,r)=>{const o=`${t}[${r}]`;n.push(`${s(o)}=${s(e)}`)})):n.push(`${s(t)}=${s(a)}`)}}return n.join("&")},t.trimUndefined=function e(t){return Array.isArray(t)?t.map(e):(t&&"object"==typeof t&&Object.keys(t).forEach((r=>{const o=t[r];if(o!==i)return e(o);delete t[r]})),t)},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e};class s extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}t.XiorError=s,t.XiorTimeoutError=class extends s{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name}},895:function(e,t,r){"use strict";var o=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function s(e){try{a(o.next(e))}catch(e){i(e)}}function u(e){try{a(o.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}a((o=o.apply(e,t||[])).next())}))},n=this&&this.__rest||function(e,t){var r={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)t.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(r[o[n]]=e[o[n]])}return r},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.xior=void 0;const s=r(121),u=i(r(393)),a=void 0,c="undefined"!=typeof AbortController;class l{static create(e){return new l(e)}constructor(e){this.REQI=[],this.RESI=[],this.P=[],this.config=e,this.defaults={params:{},headers:{}}}get interceptors(){return{request:{use:(e,t,r)=>(this.REQI.push(e),e),eject:e=>{this.REQI=this.REQI.filter((t=>t!==e))},clear:()=>{this.REQI=[]}},response:{use:(e,t)=>(this.RESI.push({fn:e,onRejected:t}),e),eject:e=>{this.RESI=this.RESI.filter((t=>t.fn!==e))},clear:()=>{this.RESI=[]}}}}get plugins(){return{use:e=>(this.P.push(e),e),eject:e=>{this.P=this.P.filter((t=>t!==e))},clear:()=>{this.P=[]}}}request(e){return o(this,void 0,void 0,(function*(){let t=(0,s.merge)({},this.config||{},this.defaults||{},"string"==typeof e?{url:e}:e||{},{headers:{},params:{}});t.paramsSerializer||(t.paramsSerializer=s.encodeParams);for(const e of this.REQI)t=yield e(t);let r=this.fetch.bind(this);return this.P.forEach((e=>{r=e(r,this)})),r(t)}))}fetch(e){return o(this,void 0,void 0,(function*(){const t=yield(0,u.default)(e),{url:r,method:i,headers:l,timeout:d,signal:f,data:h,_data:p,_url:y,isGet:b}=t,m=n(t,["url","method","headers","timeout","signal","data","_data","_url","isGet"]);let v;e._url=y;const g=[];let j=a;if(d&&c){const t=new AbortController;j=setTimeout((()=>{t.abort(new s.XiorTimeoutError(`timeout of ${d}ms exceeded`,e))}),d),g.push(t.signal)}f&&g.push(f),v=g[0],g.length>1&&(v=(0,s.anySignal)(g,(()=>{clearTimeout(j)})));let O=y||r||"";e.baseURL&&!(0,s.isAbsoluteURL)(O)&&(O=(0,s.joinPath)(e.baseURL,O));let E=0,_=fetch(O,Object.assign(Object.assign({body:b?a:p},m),{signal:v,method:i,headers:l})).then((t=>o(this,void 0,void 0,(function*(){const{responseType:r}=e,n=yield function(e,t){return o(this,void 0,void 0,(function*(){let r;if(t&&e.ok&&!["text","json"].includes(t)){if("blob"===t)return e.blob();if("arraybuffer"===t)return e.arrayBuffer()}else if(r=yield e.text(),r&&"text"!==t)try{r=JSON.parse(r)}catch(e){}return r}))}(t,r),i={data:n,response:t,config:e,request:e,status:t.status,statusText:t.statusText,headers:t.headers};if(!t.ok){const r=new s.XiorError(t.status?`Request failed with status code ${t.status}`:"Network error",e,i);return Promise.reject(r)}return i})))).finally((()=>{var e;j&&clearTimeout(j),null===(e=null==v?void 0:v.clear)||void 0===e||e.call(v)}));const P=[];for(this.RESI.forEach((function(e){P.push(e.fn,e.onRejected)}));P.length>E;)_=_.then(P[E++],P[E++]);return _}))}cG(e){return(t,r)=>this.request(r?Object.assign(Object.assign({},r),{method:e,url:t}):{method:e,url:t})}cP(e){return(t,r,o)=>this.request(o?Object.assign(Object.assign({},o),{method:e,url:t,data:r}):{method:e,url:t,data:r})}get(e,t){return this.cG("GET")(e,t)}head(e,t){return this.cG("HEAD")(e,t)}post(e,t,r){return this.cP("POST")(e,t,r)}put(e,t,r){return this.cP("PUT")(e,t,r)}patch(e,t,r){return this.cP("PATCH")(e,t,r)}delete(e,t){return this.cG("DELETE")(e,t)}options(e,t){return this.cG("OPTIONS")(e,t)}}t.xior=l,l.VERSION="0.4.1"},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:r(e[n])&&r(o[n])?e[n]=(0,t.merge)(e[n],o[n]):e[n]=void 0===o[n]?t.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=o,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},o),e);const n=(0,t.merge)(...r);return t.merge.options=o,n}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var o=r(602);const n=void 0;class i extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return o.merge}}),t.XiorError=i,t.XiorTimeoutError=class extends i{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new globalThis.AbortController;function o(e){r.abort(e),i()}let n=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){o(t.reason);break}if(null!=(null==t?void 0:t.addEventListener)){let e=()=>{o(t.reason)};n.push((()=>{null!=(null==t?void 0:t.removeEventListener)&&t.removeEventListener("abort",e)})),t.addEventListener("abort",e)}}function i(){n.forEach((e=>{e()})),null==t||t()}let s=r.signal;return s.clear=i,s},t.buildSortedURL=function(e,t,r){let o=t?r(t):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,o=null){if(t===n||null===t)return"";let i=[],s=r?encodeURIComponent:e=>e;for(let u in t)if(Object.prototype.hasOwnProperty.call(t,u)){let a=t[u];if(a!==n){let t=o?`${o}[${s(u)}]`:s(u);if("object"==typeof a){let o=e(a,r,t);""!==o&&i.push(o)}else Array.isArray(a)?a.forEach(((e,r)=>{let o=`${t}[${r}]`;i.push(`${s(o)}=${s(e)}`)})):i.push(`${s(t)}=${s(a)}`)}}return i.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.trimUndefined=function e(t){return Array.isArray(t)?t.map(e):(t&&"object"==typeof t&&Object.keys(t).forEach((r=>{let o=t[r];if(o!==n)return e(o);delete t[r]})),t)}}},t={},function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,r),i.exports}(509).default;var e,t})); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xior=t():e.xior=t()}(this,(()=>{return e={699:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anySignal=void 0;const r="addEventListener",n="removeEventListener";t.anySignal=function(e,t){const o=new AbortController;function i(e){o.abort(e),u()}const s=[];for(const t of e){if(!0===(null==t?void 0:t.aborted)){i(t.reason);break}if(null!=(null==t?void 0:t[r])){const e=()=>{i(t.reason)};s.push((()=>{null!=(null==t?void 0:t[n])&&t[n]("abort",e)})),t[r]("abort",e)}}function u(){s.forEach((e=>{e()})),null==t||t()}const a=o.signal;return a.clear=u,a}},509:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0});const i=r(895);o(r(895),t),o(r(340),t),o(r(121),t);const s=Object.assign(i.xior.create(),{create:i.xior.create,VERSION:i.xior.VERSION});t.default=s},393:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.likeGET=void 0;const o=r(121),i=r(976),s="application/",u=`${s}x-www-form-urlencoded`,a=`${s}json`;function c(e="GET"){return["HEAD","GET","OPTIONS"].includes(e)}t.likeGET=c,t.default=function(e){return n(this,void 0,void 0,(function*(){const t=e.paramsSerializer||o.encodeParams,r=!1!==e.encodeURI,n=e.method?e.method.toUpperCase():"GET";let s=e.url||"";const l=s,d=e.data;let f=d;const h=(null==e?void 0:e.headers)||{};let p=e.params||{};const y=c(n);if(d&&!(d instanceof FormData)){let r="";if(null==e?void 0:e.headers){const t=(0,i.keys)(e.headers).find((e=>"content-type"===e.toLowerCase()));t&&(r=e.headers[t],e.headers["Content-Type"]=r,"Content-Type"!==t&&delete e.headers[t])}r||(r=y?u:a,h["Content-Type"]=r),y&&e.params&&(p=(0,o.merge)({},d||{},p)),r===a?f=JSON.stringify((0,i.trimUndefined)(d)):!y&&r===u&&d&&(0,i.isObj)(d)&&(f=t(d))}if((0,i.keys)(p).length>0){const e=t(p,r);s+=s.includes("?")?`&${e}`:`?${e}`}return Object.assign(Object.assign({},e),{_data:f,_url:s,data:d,url:l,method:n,headers:h,isGet:y})}))}},729:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const n=r(602);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return n.merge}})},629:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r){let n=t?r(t):"";n&&(n=e+(e.includes("?")?"&":"?")+n);const[o,i]=n.split("?");return i?`${o}?${i.split("&").sort().join("&")}`:n||e}},99:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.delay=t.buildSortedURL=void 0;const o=n(r(629));t.buildSortedURL=o.default,t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))}},340:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},976:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.isArray=t.isObj=t.keys=t.isXiorError=t.XiorTimeoutError=t.XiorError=t.joinPath=t.isAbsoluteURL=t.trimUndefined=t.encodeParams=void 0,o(r(699),t),o(r(729),t),o(r(99),t);const i=void 0;t.encodeParams=function e(r,n=!0,o=null){if(r===i||null===r)return"";const s=[],u=n?encodeURIComponent:e=>e;for(const a in r)if(Object.prototype.hasOwnProperty.call(r,a)){const c=r[a];if(c!==i){const r=o?`${o}[${u(a)}]`:u(a);if((0,t.isObj)(c)){const t=e(c,n,r);""!==t&&s.push(t)}else(0,t.isArray)(c)?c.forEach(((e,t)=>{const n=`${r}[${t}]`;s.push(`${u(n)}=${u(e)}`)})):s.push(`${u(r)}=${u(c)}`)}}return s.join("&")},t.trimUndefined=function e(r){return(0,t.isArray)(r)?r.map(e):(r&&(0,t.isObj)(r)&&(0,t.keys)(r).forEach((t=>{const n=r[t];if(n!==i)return e(n);delete r[t]})),r)},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e};class s extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}t.XiorError=s,t.XiorTimeoutError=class extends s{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.keys=e=>Object.keys(e),t.isObj=e=>"object"==typeof e,t.isArray=e=>Array.isArray(e)},895:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}a((n=n.apply(e,t||[])).next())}))},o=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.xior=void 0;const s=r(121),u=i(r(393)),a=void 0,c="undefined"!=typeof AbortController;class l{static create(e){return new l(e)}constructor(e){this.REQI=[],this.RESI=[],this.P=[],this.config=e,this.defaults={params:{},headers:{}}}get interceptors(){return{request:{use:(e,t,r)=>(this.REQI.push(e),e),eject:e=>{this.REQI=this.REQI.filter((t=>t!==e))},clear:()=>{this.REQI=[]}},response:{use:(e,t)=>(this.RESI.push({fn:e,onRejected:t}),e),eject:e=>{this.RESI=this.RESI.filter((t=>t.fn!==e))},clear:()=>{this.RESI=[]}}}}get plugins(){return{use:e=>(this.P.push(e),e),eject:e=>{this.P=this.P.filter((t=>t!==e))},clear:()=>{this.P=[]}}}request(e){return n(this,void 0,void 0,(function*(){let t=(0,s.merge)({},this.config||{},this.defaults||{},"string"==typeof e?{url:e}:e||{},{headers:{},params:{}});t.paramsSerializer||(t.paramsSerializer=s.encodeParams);for(const e of this.REQI)t=yield e(t);let r=this.fetch.bind(this);return this.P.forEach((e=>{r=e(r,this)})),r(t)}))}fetch(e){return n(this,void 0,void 0,(function*(){const t=yield(0,u.default)(e),{url:r,method:i,headers:l,timeout:d,signal:f,data:h,_data:p,_url:y,isGet:b}=t,m=o(t,["url","method","headers","timeout","signal","data","_data","_url","isGet"]);let v;e._url=y;const O=[];let g=a;if(d&&c){const t=new AbortController;g=setTimeout((()=>{t.abort(new s.XiorTimeoutError(`timeout of ${d}ms exceeded`,e))}),d),O.push(t.signal)}f&&O.push(f),v=O[0],O.length>1&&(v=(0,s.anySignal)(O,(()=>{clearTimeout(g)})));let j=y||r||"";e.baseURL&&!(0,s.isAbsoluteURL)(j)&&(j=(0,s.joinPath)(e.baseURL,j));let E=0,_=fetch(j,Object.assign(Object.assign({body:b?a:p},m),{signal:v,method:i,headers:l})).then((t=>n(this,void 0,void 0,(function*(){const{responseType:r}=e,o=yield function(e,t){return n(this,void 0,void 0,(function*(){let r;if(t&&e.ok&&!["text","json"].includes(t)){if("blob"===t)return e.blob();if("arraybuffer"===t)return e.arrayBuffer()}else if(r=yield e.text(),r&&"text"!==t)try{r=JSON.parse(r)}catch(e){}return r}))}(t,r),i={data:o,response:t,config:e,request:e,status:t.status,statusText:t.statusText,headers:t.headers};if(!t.ok){const r=new s.XiorError(t.status?`Request failed with status code ${t.status}`:"Network error",e,i);return Promise.reject(r)}return i})))).finally((()=>{var e;g&&clearTimeout(g),null===(e=null==v?void 0:v.clear)||void 0===e||e.call(v)}));const P=[];for(this.RESI.forEach((function(e){P.push(e.fn,e.onRejected)}));P.length>E;)_=_.then(P[E++],P[E++]);return _}))}cG(e){return(t,r)=>this.request(r?Object.assign(Object.assign({},r),{method:e,url:t}):{method:e,url:t})}cP(e){return(t,r,n)=>this.request(n?Object.assign(Object.assign({},n),{method:e,url:t,data:r}):{method:e,url:t,data:r})}get(e,t){return this.cG("GET")(e,t)}head(e,t){return this.cG("HEAD")(e,t)}post(e,t,r){return this.cP("POST")(e,t,r)}put(e,t,r){return this.cP("PUT")(e,t,r)}patch(e,t,r){return this.cP("PATCH")(e,t,r)}delete(e,t){return this.cG("DELETE")(e,t)}options(e,t){return this.cG("OPTIONS")(e,t)}}t.xior=l,l.VERSION="0.4.2"},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,n)=>{if(Array.isArray(n))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(n).forEach((o=>{["__proto__","constructor","prototype"].includes(o)||(Array.isArray(e[o])&&Array.isArray(n[o])?e[o]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[o].concat(n[o]))):[...e[o],...n[o]]:n[o]:r(e[o])&&r(n[o])?e[o]=(0,t.merge)(e[o],n[o]):e[o]=void 0===n[o]?t.merge.options.allowUndefinedOverrides?n[o]:e[o]:n[o])})),e}),{});const n={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=n,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},n),e);const o=(0,t.merge)(...r);return t.merge.options=n,o}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n=r(602);const o="addEventListener",i="removeEventListener",s=void 0;class u extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}const a=e=>Object.keys(e),c=e=>"object"==typeof e,l=e=>Array.isArray(e);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return n.merge}}),t.XiorError=u,t.XiorTimeoutError=class extends u{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new AbortController;function n(e){r.abort(e),u()}let s=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){n(t.reason);break}if(null!=(null==t?void 0:t[o])){let e=()=>{n(t.reason)};s.push((()=>{null!=(null==t?void 0:t[i])&&t[i]("abort",e)})),t[o]("abort",e)}}function u(){s.forEach((e=>{e()})),null==t||t()}let a=r.signal;return a.clear=u,a},t.buildSortedURL=function(e,t,r){let n=t?r(t):"";n&&(n=e+(e.includes("?")?"&":"?")+n);let[o,i]=n.split("?");return i?`${o}?${i.split("&").sort().join("&")}`:n||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,n=null){if(t===s||null===t)return"";let o=[],i=r?encodeURIComponent:e=>e;for(let u in t)if(Object.prototype.hasOwnProperty.call(t,u)){let a=t[u];if(a!==s){let t=n?`${n}[${i(u)}]`:i(u);if(c(a)){let n=e(a,r,t);""!==n&&o.push(n)}else l(a)?a.forEach(((e,r)=>{let n=`${t}[${r}]`;o.push(`${i(n)}=${i(e)}`)})):o.push(`${i(t)}=${i(a)}`)}}return o.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isArray=l,t.isObj=c,t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.keys=a,t.trimUndefined=function e(t){return l(t)?t.map(e):(t&&c(t)&&a(t).forEach((r=>{let n=t[r];if(n!==s)return e(n);delete t[r]})),t)}}},t={},function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(509).default;var e,t})); |
@@ -64,4 +64,4 @@ [Go back](./README.md) | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/mock.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/mock.umd.js"></script> | ||
@@ -83,4 +83,4 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/mock.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/mock.umd.js"></script> | ||
@@ -87,0 +87,0 @@ <!-- Usage --> |
{ | ||
"name": "xior", | ||
"version": "0.4.1", | ||
"version": "0.4.2", | ||
"description": "A lite request lib based on fetch with plugin support and similar API to axios.", | ||
@@ -65,2 +65,8 @@ "repository": "suhaotian/xior", | ||
"module": "./plugins/error-cache/index.esm.js" | ||
}, | ||
"./plugins/token-refresh": { | ||
"types": "./plugins/token-refresh/index.d.ts", | ||
"require": "./plugins/token-refresh/index.cjs", | ||
"import": "./plugins/token-refresh/index.mjs", | ||
"module": "./plugins/token-refresh/index.esm.js" | ||
} | ||
@@ -80,2 +86,3 @@ }, | ||
"fetch", | ||
"fetch wrapper", | ||
"axios", | ||
@@ -82,0 +89,0 @@ "axios fetch", |
/*! For license information please see cache.umd.js.LICENSE.txt */ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.xiorCache=e():t.xiorCache=e()}(this,(()=>{return t={523:function(t,e,r){"use strict";var i=this&&this.__awaiter||function(t,e,r,i){return new(r||(r=Promise))((function(s,n){function o(t){try{u(i.next(t))}catch(t){n(t)}}function l(t){try{u(i.throw(t))}catch(t){n(t)}}function u(t){var e;t.done?s(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,l)}u((i=i.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0});const s=r(455),n=r(121);e.default=function(t={}){const{enableCache:e,defaultCache:r=(0,s.lru)(t.cacheItems||100,t.cacheTime||3e5)}=t;return function(t){return s=>i(this,void 0,void 0,(function*(){const{enableCache:o=e,forceUpdate:l,defaultCache:u=r,paramsSerializer:a}=s,c="GET"===s.method||s.isGet,h=typeof o;let f;if("function"===h&&(f=o(s)),void 0===f&&(f="undefined"===h?c:Boolean(o)),f){const e=u,r=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},a);let o=e.get(r);return!o||l?(o=(()=>i(this,void 0,void 0,(function*(){try{return yield t(s)}catch(t){throw"delete"in e?e.delete(r):e.del(r),t}})))(),e.set(r,o),o):o.then((t=>(t.fromCache=!0,t.cacheTime=Date.now(),t)))}return t(s)}))}}},455:(t,e)=>{"use strict";class r{constructor(t=0,e=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=t,this.resetTtl=r,this.size=0,this.ttl=e}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(t){if(this.has(t)){const e=this.items[t];delete this.items[t],this.size--,null!==e.prev&&(e.prev.next=e.next),null!==e.next&&(e.next.prev=e.prev),this.first===e&&(this.first=e.next),this.last===e&&(this.last=e.prev)}return this}entries(t=this.keys()){return t.map((t=>[t,this.get(t)]))}evict(t=!1){if(t||this.size>0){const t=this.first;delete this.items[t.key],0==--this.size?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}return this}expiresAt(t){let e;return this.has(t)&&(e=this.items[t].expiry),e}get(t){let e;if(this.has(t)){const r=this.items[t];this.ttl>0&&r.expiry<=Date.now()?this.delete(t):(e=r.value,this.set(t,e,!0))}return e}has(t){return t in this.items}keys(){const t=[];let e=this.first;for(;null!==e;)t.push(e.key),e=e.next;return t}set(t,e,r=!1,i=this.resetTtl){let s;if(r||this.has(t)){if(s=this.items[t],s.value=e,!1===r&&i&&(s.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==s){const t=this.last,e=s.next,r=s.prev;this.first===s&&(this.first=s.next),s.next=null,s.prev=this.last,t.next=s,null!==r&&(r.next=e),null!==e&&(e.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),s=this.items[t]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:e},1==++this.size?this.first=s:this.last.next=s;return this.last=s,this}values(t=this.keys()){return t.map((t=>this.get(t)))}}e.LRU=r,e.lru=function(t=1e3,e=0,i=!1){if(isNaN(t)||t<0)throw new TypeError("Invalid max value");if(isNaN(e)||e<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof i)throw new TypeError("Invalid resetTtl value");return new r(t,e,i)}},602:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;const r=t=>{if("object"==typeof t&&null!==t){if("function"==typeof Object.getPrototypeOf){const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1};e.merge=(...t)=>t.reduce(((t,i)=>{if(Array.isArray(i))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(i).forEach((s=>{["__proto__","constructor","prototype"].includes(s)||(Array.isArray(t[s])&&Array.isArray(i[s])?t[s]=e.merge.options.mergeArrays?e.merge.options.uniqueArrayItems?Array.from(new Set(t[s].concat(i[s]))):[...t[s],...i[s]]:i[s]:r(t[s])&&r(i[s])?t[s]=(0,e.merge)(t[s],i[s]):t[s]=void 0===i[s]?e.merge.options.allowUndefinedOverrides?i[s]:t[s]:i[s])})),t}),{});const i={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};e.merge.options=i,e.merge.withOptions=(t,...r)=>{e.merge.options=Object.assign(Object.assign({},i),t);const s=(0,e.merge)(...r);return e.merge.options=i,s}},121:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0});var i=r(602);const s=void 0;class n extends Error{constructor(t,e,r){super(t),this.name="XiorError",this.request=e,this.config=e,this.response=r}}Object.defineProperty(e,"merge",{enumerable:!0,get:function(){return i.merge}}),e.XiorError=n,e.XiorTimeoutError=class extends n{constructor(t,e,r){super(t),this.name="XiorTimeoutError",this.request=e,this.config=e,this.response=r}},e.anySignal=function(t,e){let r=new globalThis.AbortController;function i(t){r.abort(t),n()}let s=[];for(let e of t){if(!0===(null==e?void 0:e.aborted)){i(e.reason);break}if(null!=(null==e?void 0:e.addEventListener)){let t=()=>{i(e.reason)};s.push((()=>{null!=(null==e?void 0:e.removeEventListener)&&e.removeEventListener("abort",t)})),e.addEventListener("abort",t)}}function n(){s.forEach((t=>{t()})),null==e||e()}let o=r.signal;return o.clear=n,o},e.buildSortedURL=function(t,e,r){let i=e?r(e):"";i&&(i=t+(t.includes("?")?"&":"?")+i);let[s,n]=i.split("?");return n?`${s}?${n.split("&").sort().join("&")}`:i||t},e.delay=function(t){return new Promise((e=>{setTimeout((()=>{e("ok")}),t)}))},e.encodeParams=function t(e,r=!0,i=null){if(e===s||null===e)return"";let n=[],o=r?encodeURIComponent:t=>t;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==s){let e=i?`${i}[${o(l)}]`:o(l);if("object"==typeof u){let i=t(u,r,e);""!==i&&n.push(i)}else Array.isArray(u)?u.forEach(((t,r)=>{let i=`${e}[${r}]`;n.push(`${o(i)}=${o(t)}`)})):n.push(`${o(e)}=${o(u)}`)}}return n.join("&")},e.isAbsoluteURL=function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)},e.isXiorError=function(t){return"XiorError"===t.name||"XiorTimeoutError"===t.name},e.joinPath=function(t,e){return e?(t.endsWith("/")?t:t+"/")+("/"===e[0]?e.slice(1):e):t},e.trimUndefined=function t(e){return Array.isArray(e)?e.map(t):(e&&"object"==typeof e&&Object.keys(e).forEach((r=>{let i=e[r];if(i!==s)return t(i);delete e[r]})),e)}}},e={},function r(i){var s=e[i];if(void 0!==s)return s.exports;var n=e[i]={exports:{}};return t[i].call(n.exports,n,n.exports,r),n.exports}(523).default;var t,e})); | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.xiorCache=e():t.xiorCache=e()}(this,(()=>{return t={523:function(t,e,r){"use strict";var i=this&&this.__awaiter||function(t,e,r,i){return new(r||(r=Promise))((function(s,n){function o(t){try{u(i.next(t))}catch(t){n(t)}}function l(t){try{u(i.throw(t))}catch(t){n(t)}}function u(t){var e;t.done?s(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,l)}u((i=i.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0});const s=r(455),n=r(121);e.default=function(t={}){const{enableCache:e,defaultCache:r=(0,s.lru)(t.cacheItems||100,t.cacheTime||3e5)}=t;return function(t){return s=>i(this,void 0,void 0,(function*(){const{enableCache:o=e,forceUpdate:l,defaultCache:u=r,paramsSerializer:a}=s,c="GET"===s.method||s.isGet,h=typeof o;let f;if("function"===h&&(f=o(s)),void 0===f&&(f="undefined"===h?c:Boolean(o)),f){const e=u,r=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},a);let o=e.get(r);return!o||l?(o=(()=>i(this,void 0,void 0,(function*(){try{return yield t(s)}catch(t){throw"delete"in e?e.delete(r):e.del(r),t}})))(),e.set(r,o),o):o.then((t=>(t.fromCache=!0,t.cacheTime=Date.now(),t)))}return t(s)}))}}},455:(t,e)=>{"use strict";class r{constructor(t=0,e=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=t,this.resetTtl=r,this.size=0,this.ttl=e}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(t){if(this.has(t)){const e=this.items[t];delete this.items[t],this.size--,null!==e.prev&&(e.prev.next=e.next),null!==e.next&&(e.next.prev=e.prev),this.first===e&&(this.first=e.next),this.last===e&&(this.last=e.prev)}return this}entries(t=this.keys()){return t.map((t=>[t,this.get(t)]))}evict(t=!1){if(t||this.size>0){const t=this.first;delete this.items[t.key],0==--this.size?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}return this}expiresAt(t){let e;return this.has(t)&&(e=this.items[t].expiry),e}get(t){let e;if(this.has(t)){const r=this.items[t];this.ttl>0&&r.expiry<=Date.now()?this.delete(t):(e=r.value,this.set(t,e,!0))}return e}has(t){return t in this.items}keys(){const t=[];let e=this.first;for(;null!==e;)t.push(e.key),e=e.next;return t}set(t,e,r=!1,i=this.resetTtl){let s;if(r||this.has(t)){if(s=this.items[t],s.value=e,!1===r&&i&&(s.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==s){const t=this.last,e=s.next,r=s.prev;this.first===s&&(this.first=s.next),s.next=null,s.prev=this.last,t.next=s,null!==r&&(r.next=e),null!==e&&(e.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),s=this.items[t]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:e},1==++this.size?this.first=s:this.last.next=s;return this.last=s,this}values(t=this.keys()){return t.map((t=>this.get(t)))}}e.LRU=r,e.lru=function(t=1e3,e=0,i=!1){if(isNaN(t)||t<0)throw new TypeError("Invalid max value");if(isNaN(e)||e<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof i)throw new TypeError("Invalid resetTtl value");return new r(t,e,i)}},602:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;const r=t=>{if("object"==typeof t&&null!==t){if("function"==typeof Object.getPrototypeOf){const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1};e.merge=(...t)=>t.reduce(((t,i)=>{if(Array.isArray(i))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(i).forEach((s=>{["__proto__","constructor","prototype"].includes(s)||(Array.isArray(t[s])&&Array.isArray(i[s])?t[s]=e.merge.options.mergeArrays?e.merge.options.uniqueArrayItems?Array.from(new Set(t[s].concat(i[s]))):[...t[s],...i[s]]:i[s]:r(t[s])&&r(i[s])?t[s]=(0,e.merge)(t[s],i[s]):t[s]=void 0===i[s]?e.merge.options.allowUndefinedOverrides?i[s]:t[s]:i[s])})),t}),{});const i={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};e.merge.options=i,e.merge.withOptions=(t,...r)=>{e.merge.options=Object.assign(Object.assign({},i),t);const s=(0,e.merge)(...r);return e.merge.options=i,s}},121:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0});var i=r(602);const s="addEventListener",n="removeEventListener",o=void 0;class l extends Error{constructor(t,e,r){super(t),this.name="XiorError",this.request=e,this.config=e,this.response=r}}const u=t=>Object.keys(t),a=t=>"object"==typeof t,c=t=>Array.isArray(t);Object.defineProperty(e,"merge",{enumerable:!0,get:function(){return i.merge}}),e.XiorError=l,e.XiorTimeoutError=class extends l{constructor(t,e,r){super(t),this.name="XiorTimeoutError",this.request=e,this.config=e,this.response=r}},e.anySignal=function(t,e){let r=new AbortController;function i(t){r.abort(t),l()}let o=[];for(let e of t){if(!0===(null==e?void 0:e.aborted)){i(e.reason);break}if(null!=(null==e?void 0:e[s])){let t=()=>{i(e.reason)};o.push((()=>{null!=(null==e?void 0:e[n])&&e[n]("abort",t)})),e[s]("abort",t)}}function l(){o.forEach((t=>{t()})),null==e||e()}let u=r.signal;return u.clear=l,u},e.buildSortedURL=function(t,e,r){let i=e?r(e):"";i&&(i=t+(t.includes("?")?"&":"?")+i);let[s,n]=i.split("?");return n?`${s}?${n.split("&").sort().join("&")}`:i||t},e.delay=function(t){return new Promise((e=>{setTimeout((()=>{e("ok")}),t)}))},e.encodeParams=function t(e,r=!0,i=null){if(e===o||null===e)return"";let s=[],n=r?encodeURIComponent:t=>t;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==o){let e=i?`${i}[${n(l)}]`:n(l);if(a(u)){let i=t(u,r,e);""!==i&&s.push(i)}else c(u)?u.forEach(((t,r)=>{let i=`${e}[${r}]`;s.push(`${n(i)}=${n(t)}`)})):s.push(`${n(e)}=${n(u)}`)}}return s.join("&")},e.isAbsoluteURL=function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)},e.isArray=c,e.isObj=a,e.isXiorError=function(t){return"XiorError"===t.name||"XiorTimeoutError"===t.name},e.joinPath=function(t,e){return e?(t.endsWith("/")?t:t+"/")+("/"===e[0]?e.slice(1):e):t},e.keys=u,e.trimUndefined=function t(e){return c(e)?e.map(t):(e&&a(e)&&u(e).forEach((r=>{let i=e[r];if(i!==o)return t(i);delete e[r]})),e)}}},e={},function r(i){var s=e[i];if(void 0!==s)return s.exports;var n=e[i]={exports:{}};return t[i].call(n.exports,n,n.exports,r),n.exports}(523).default;var t,e})); |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorDedupe=t():e.xiorDedupe=t()}(this,(()=>{return e={91:function(e,t,r){"use strict";var o=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function s(e){try{l(o.next(e))}catch(e){i(e)}}function u(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}l((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.inflight=void 0;const n=r(121);t.inflight=new Map,t.default=function(e={}){const{enableDedupe:r,onDedupe:i}=e;return function(e){return s=>o(this,void 0,void 0,(function*(){var o,u;const{paramsSerializer:l,enableDedupe:a=r,onDedupe:c=i}=s,f="GET"===s.method||s.isGet,d=typeof a;let p;if("function"===d&&(p=a(s)),void 0===p&&(p="undefined"===d?f:Boolean(a)),!p)return e(s);const h=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},l);if(t.inflight.has(h))return c&&c(s),new Promise(((e,r)=>{var o;null===(o=t.inflight.get(h))||void 0===o||o.push([e,r])}));t.inflight.set(h,[]);try{const r=yield e(s);return null===(o=t.inflight.get(h))||void 0===o||o.forEach((([e])=>e(r))),t.inflight.delete(h),r}catch(e){throw null===(u=t.inflight.get(h))||void 0===u||u.forEach((([,t])=>t(e))),t.inflight.delete(h),e}}))}}},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:r(e[n])&&r(o[n])?e[n]=(0,t.merge)(e[n],o[n]):e[n]=void 0===o[n]?t.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=o,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},o),e);const n=(0,t.merge)(...r);return t.merge.options=o,n}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var o=r(602);const n=void 0;class i extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return o.merge}}),t.XiorError=i,t.XiorTimeoutError=class extends i{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new globalThis.AbortController;function o(e){r.abort(e),i()}let n=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){o(t.reason);break}if(null!=(null==t?void 0:t.addEventListener)){let e=()=>{o(t.reason)};n.push((()=>{null!=(null==t?void 0:t.removeEventListener)&&t.removeEventListener("abort",e)})),t.addEventListener("abort",e)}}function i(){n.forEach((e=>{e()})),null==t||t()}let s=r.signal;return s.clear=i,s},t.buildSortedURL=function(e,t,r){let o=t?r(t):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,o=null){if(t===n||null===t)return"";let i=[],s=r?encodeURIComponent:e=>e;for(let u in t)if(Object.prototype.hasOwnProperty.call(t,u)){let l=t[u];if(l!==n){let t=o?`${o}[${s(u)}]`:s(u);if("object"==typeof l){let o=e(l,r,t);""!==o&&i.push(o)}else Array.isArray(l)?l.forEach(((e,r)=>{let o=`${t}[${r}]`;i.push(`${s(o)}=${s(e)}`)})):i.push(`${s(t)}=${s(l)}`)}}return i.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.trimUndefined=function e(t){return Array.isArray(t)?t.map(e):(t&&"object"==typeof t&&Object.keys(t).forEach((r=>{let o=t[r];if(o!==n)return e(o);delete t[r]})),t)}}},t={},function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,r),i.exports}(91).default;var e,t})); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorDedupe=t():e.xiorDedupe=t()}(this,(()=>{return e={91:function(e,t,r){"use strict";var o=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(n,i){function s(e){try{l(o.next(e))}catch(e){i(e)}}function u(e){try{l(o.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,u)}l((o=o.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.inflight=void 0;const n=r(121);t.inflight=new Map,t.default=function(e={}){const{enableDedupe:r,onDedupe:i}=e;return function(e){return s=>o(this,void 0,void 0,(function*(){var o,u;const{paramsSerializer:l,enableDedupe:a=r,onDedupe:c=i}=s,f="GET"===s.method||s.isGet,d=typeof a;let p;if("function"===d&&(p=a(s)),void 0===p&&(p="undefined"===d?f:Boolean(a)),!p)return e(s);const h=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},l);if(t.inflight.has(h))return c&&c(s),new Promise(((e,r)=>{var o;null===(o=t.inflight.get(h))||void 0===o||o.push([e,r])}));t.inflight.set(h,[]);try{const r=yield e(s);return null===(o=t.inflight.get(h))||void 0===o||o.forEach((([e])=>e(r))),t.inflight.delete(h),r}catch(e){throw null===(u=t.inflight.get(h))||void 0===u||u.forEach((([,t])=>t(e))),t.inflight.delete(h),e}}))}}},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:r(e[n])&&r(o[n])?e[n]=(0,t.merge)(e[n],o[n]):e[n]=void 0===o[n]?t.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=o,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},o),e);const n=(0,t.merge)(...r);return t.merge.options=o,n}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var o=r(602);const n="addEventListener",i="removeEventListener",s=void 0;class u extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}const l=e=>Object.keys(e),a=e=>"object"==typeof e,c=e=>Array.isArray(e);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return o.merge}}),t.XiorError=u,t.XiorTimeoutError=class extends u{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new AbortController;function o(e){r.abort(e),u()}let s=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){o(t.reason);break}if(null!=(null==t?void 0:t[n])){let e=()=>{o(t.reason)};s.push((()=>{null!=(null==t?void 0:t[i])&&t[i]("abort",e)})),t[n]("abort",e)}}function u(){s.forEach((e=>{e()})),null==t||t()}let l=r.signal;return l.clear=u,l},t.buildSortedURL=function(e,t,r){let o=t?r(t):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,o=null){if(t===s||null===t)return"";let n=[],i=r?encodeURIComponent:e=>e;for(let u in t)if(Object.prototype.hasOwnProperty.call(t,u)){let l=t[u];if(l!==s){let t=o?`${o}[${i(u)}]`:i(u);if(a(l)){let o=e(l,r,t);""!==o&&n.push(o)}else c(l)?l.forEach(((e,r)=>{let o=`${t}[${r}]`;n.push(`${i(o)}=${i(e)}`)})):n.push(`${i(t)}=${i(l)}`)}}return n.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isArray=c,t.isObj=a,t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.keys=l,t.trimUndefined=function e(t){return c(t)?t.map(e):(t&&a(t)&&l(t).forEach((r=>{let o=t[r];if(o!==s)return e(o);delete t[r]})),t)}}},t={},function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,r),i.exports}(91).default;var e,t})); |
/*! For license information please see error-cache.umd.js.LICENSE.txt */ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorErrorCache=t():e.xiorErrorCache=t()}(this,(()=>{return e={431:function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(s,n){function o(e){try{a(i.next(e))}catch(e){n(e)}}function l(e){try{a(i.throw(e))}catch(e){n(e)}}function a(e){var t;e.done?s(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}a((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const s=r(455),n=r(121);t.default=function(e={}){const{enableCache:t,defaultCache:r=(0,s.lru)(e.cacheItems||100),useCacheFirst:o,onCacheRequest:l}=e;return function(e){return s=>i(this,void 0,void 0,(function*(){const{enableCache:a=t,defaultCache:u=r,useCacheFirst:c=o,onCacheRequest:h=l,paramsSerializer:f}=s,d="GET"===s.method||s.isGet,p=typeof a;let m;if("function"===p&&(m=a(s)),void 0===m&&(m="undefined"===p?d:Boolean(a)),!m)return e(s);const v=u,y=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},f);try{if(c){const t=v.get(y);if(v.set(y,{loading:!0,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime}),null==t?void 0:t.res)return(null==t?void 0:t.loading)||(null==h||h(s),(()=>{i(this,void 0,void 0,(function*(){try{const t=yield e(s);v.set(y,{loading:!1,res:t,cacheTime:Date.now()})}catch(e){const t=v.get(y);c&&v.set(y,{loading:!1,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime})}}))})()),t.res.fromCache=!0,t.res.cacheTime=null==t?void 0:t.cacheTime,null==t?void 0:t.res}const t=yield e(s);return v.set(y,{loading:!1,res:t,cacheTime:Date.now()}),t}catch(e){const t=v.get(y);if(c&&v.set(y,{loading:!1,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime}),null==t?void 0:t.res)return t.res.fromCache=!0,t.res.error=e,t.res.cacheTime=null==t?void 0:t.cacheTime,t.res;throw e}}))}}},455:(e,t)=>{"use strict";class r{constructor(e=0,t=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=e,this.resetTtl=r,this.size=0,this.ttl=t}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(e){if(this.has(e)){const t=this.items[e];delete this.items[e],this.size--,null!==t.prev&&(t.prev.next=t.next),null!==t.next&&(t.next.prev=t.prev),this.first===t&&(this.first=t.next),this.last===t&&(this.last=t.prev)}return this}entries(e=this.keys()){return e.map((e=>[e,this.get(e)]))}evict(e=!1){if(e||this.size>0){const e=this.first;delete this.items[e.key],0==--this.size?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}return this}expiresAt(e){let t;return this.has(e)&&(t=this.items[e].expiry),t}get(e){let t;if(this.has(e)){const r=this.items[e];this.ttl>0&&r.expiry<=Date.now()?this.delete(e):(t=r.value,this.set(e,t,!0))}return t}has(e){return e in this.items}keys(){const e=[];let t=this.first;for(;null!==t;)e.push(t.key),t=t.next;return e}set(e,t,r=!1,i=this.resetTtl){let s;if(r||this.has(e)){if(s=this.items[e],s.value=t,!1===r&&i&&(s.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==s){const e=this.last,t=s.next,r=s.prev;this.first===s&&(this.first=s.next),s.next=null,s.prev=this.last,e.next=s,null!==r&&(r.next=t),null!==t&&(t.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),s=this.items[e]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:t},1==++this.size?this.first=s:this.last.next=s;return this.last=s,this}values(e=this.keys()){return e.map((e=>this.get(e)))}}t.LRU=r,t.lru=function(e=1e3,t=0,i=!1){if(isNaN(e)||e<0)throw new TypeError("Invalid max value");if(isNaN(t)||t<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof i)throw new TypeError("Invalid resetTtl value");return new r(e,t,i)}},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,i)=>{if(Array.isArray(i))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(i).forEach((s=>{["__proto__","constructor","prototype"].includes(s)||(Array.isArray(e[s])&&Array.isArray(i[s])?e[s]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[s].concat(i[s]))):[...e[s],...i[s]]:i[s]:r(e[s])&&r(i[s])?e[s]=(0,t.merge)(e[s],i[s]):e[s]=void 0===i[s]?t.merge.options.allowUndefinedOverrides?i[s]:e[s]:i[s])})),e}),{});const i={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=i,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},i),e);const s=(0,t.merge)(...r);return t.merge.options=i,s}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var i=r(602);const s=void 0;class n extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return i.merge}}),t.XiorError=n,t.XiorTimeoutError=class extends n{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new globalThis.AbortController;function i(e){r.abort(e),n()}let s=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){i(t.reason);break}if(null!=(null==t?void 0:t.addEventListener)){let e=()=>{i(t.reason)};s.push((()=>{null!=(null==t?void 0:t.removeEventListener)&&t.removeEventListener("abort",e)})),t.addEventListener("abort",e)}}function n(){s.forEach((e=>{e()})),null==t||t()}let o=r.signal;return o.clear=n,o},t.buildSortedURL=function(e,t,r){let i=t?r(t):"";i&&(i=e+(e.includes("?")?"&":"?")+i);let[s,n]=i.split("?");return n?`${s}?${n.split("&").sort().join("&")}`:i||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,i=null){if(t===s||null===t)return"";let n=[],o=r?encodeURIComponent:e=>e;for(let l in t)if(Object.prototype.hasOwnProperty.call(t,l)){let a=t[l];if(a!==s){let t=i?`${i}[${o(l)}]`:o(l);if("object"==typeof a){let i=e(a,r,t);""!==i&&n.push(i)}else Array.isArray(a)?a.forEach(((e,r)=>{let i=`${t}[${r}]`;n.push(`${o(i)}=${o(e)}`)})):n.push(`${o(t)}=${o(a)}`)}}return n.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.trimUndefined=function e(t){return Array.isArray(t)?t.map(e):(t&&"object"==typeof t&&Object.keys(t).forEach((r=>{let i=t[r];if(i!==s)return e(i);delete t[r]})),t)}}},t={},function r(i){var s=t[i];if(void 0!==s)return s.exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(431).default;var e,t})); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorErrorCache=t():e.xiorErrorCache=t()}(this,(()=>{return e={431:function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))((function(s,n){function o(e){try{u(i.next(e))}catch(e){n(e)}}function l(e){try{u(i.throw(e))}catch(e){n(e)}}function u(e){var t;e.done?s(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const s=r(455),n=r(121);t.default=function(e={}){const{enableCache:t,defaultCache:r=(0,s.lru)(e.cacheItems||100),useCacheFirst:o,onCacheRequest:l}=e;return function(e){return s=>i(this,void 0,void 0,(function*(){const{enableCache:u=t,defaultCache:a=r,useCacheFirst:c=o,onCacheRequest:h=l,paramsSerializer:f}=s,d="GET"===s.method||s.isGet,p=typeof u;let m;if("function"===p&&(m=u(s)),void 0===m&&(m="undefined"===p?d:Boolean(u)),!m)return e(s);const v=a,y=(0,n.buildSortedURL)(s.url&&(0,n.isAbsoluteURL)(s.url)?s.url:(0,n.joinPath)(s.baseURL||"",s.url||""),{a:s.data,b:s.params},f);try{if(c){const t=v.get(y);if(v.set(y,{loading:!0,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime}),null==t?void 0:t.res)return(null==t?void 0:t.loading)||(null==h||h(s),(()=>{i(this,void 0,void 0,(function*(){try{const t=yield e(s);v.set(y,{loading:!1,res:t,cacheTime:Date.now()})}catch(e){const t=v.get(y);c&&v.set(y,{loading:!1,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime})}}))})()),t.res.fromCache=!0,t.res.cacheTime=null==t?void 0:t.cacheTime,null==t?void 0:t.res}const t=yield e(s);return v.set(y,{loading:!1,res:t,cacheTime:Date.now()}),t}catch(e){const t=v.get(y);if(c&&v.set(y,{loading:!1,res:null==t?void 0:t.res,cacheTime:null==t?void 0:t.cacheTime}),null==t?void 0:t.res)return t.res.fromCache=!0,t.res.error=e,t.res.cacheTime=null==t?void 0:t.cacheTime,t.res;throw e}}))}}},455:(e,t)=>{"use strict";class r{constructor(e=0,t=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=e,this.resetTtl=r,this.size=0,this.ttl=t}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(e){if(this.has(e)){const t=this.items[e];delete this.items[e],this.size--,null!==t.prev&&(t.prev.next=t.next),null!==t.next&&(t.next.prev=t.prev),this.first===t&&(this.first=t.next),this.last===t&&(this.last=t.prev)}return this}entries(e=this.keys()){return e.map((e=>[e,this.get(e)]))}evict(e=!1){if(e||this.size>0){const e=this.first;delete this.items[e.key],0==--this.size?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}return this}expiresAt(e){let t;return this.has(e)&&(t=this.items[e].expiry),t}get(e){let t;if(this.has(e)){const r=this.items[e];this.ttl>0&&r.expiry<=Date.now()?this.delete(e):(t=r.value,this.set(e,t,!0))}return t}has(e){return e in this.items}keys(){const e=[];let t=this.first;for(;null!==t;)e.push(t.key),t=t.next;return e}set(e,t,r=!1,i=this.resetTtl){let s;if(r||this.has(e)){if(s=this.items[e],s.value=t,!1===r&&i&&(s.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==s){const e=this.last,t=s.next,r=s.prev;this.first===s&&(this.first=s.next),s.next=null,s.prev=this.last,e.next=s,null!==r&&(r.next=t),null!==t&&(t.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),s=this.items[e]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:t},1==++this.size?this.first=s:this.last.next=s;return this.last=s,this}values(e=this.keys()){return e.map((e=>this.get(e)))}}t.LRU=r,t.lru=function(e=1e3,t=0,i=!1){if(isNaN(e)||e<0)throw new TypeError("Invalid max value");if(isNaN(t)||t<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof i)throw new TypeError("Invalid resetTtl value");return new r(e,t,i)}},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,i)=>{if(Array.isArray(i))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(i).forEach((s=>{["__proto__","constructor","prototype"].includes(s)||(Array.isArray(e[s])&&Array.isArray(i[s])?e[s]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[s].concat(i[s]))):[...e[s],...i[s]]:i[s]:r(e[s])&&r(i[s])?e[s]=(0,t.merge)(e[s],i[s]):e[s]=void 0===i[s]?t.merge.options.allowUndefinedOverrides?i[s]:e[s]:i[s])})),e}),{});const i={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=i,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},i),e);const s=(0,t.merge)(...r);return t.merge.options=i,s}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var i=r(602);const s="addEventListener",n="removeEventListener",o=void 0;class l extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}const u=e=>Object.keys(e),a=e=>"object"==typeof e,c=e=>Array.isArray(e);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return i.merge}}),t.XiorError=l,t.XiorTimeoutError=class extends l{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new AbortController;function i(e){r.abort(e),l()}let o=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){i(t.reason);break}if(null!=(null==t?void 0:t[s])){let e=()=>{i(t.reason)};o.push((()=>{null!=(null==t?void 0:t[n])&&t[n]("abort",e)})),t[s]("abort",e)}}function l(){o.forEach((e=>{e()})),null==t||t()}let u=r.signal;return u.clear=l,u},t.buildSortedURL=function(e,t,r){let i=t?r(t):"";i&&(i=e+(e.includes("?")?"&":"?")+i);let[s,n]=i.split("?");return n?`${s}?${n.split("&").sort().join("&")}`:i||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,i=null){if(t===o||null===t)return"";let s=[],n=r?encodeURIComponent:e=>e;for(let l in t)if(Object.prototype.hasOwnProperty.call(t,l)){let u=t[l];if(u!==o){let t=i?`${i}[${n(l)}]`:n(l);if(a(u)){let i=e(u,r,t);""!==i&&s.push(i)}else c(u)?u.forEach(((e,r)=>{let i=`${t}[${r}]`;s.push(`${n(i)}=${n(e)}`)})):s.push(`${n(t)}=${n(u)}`)}}return s.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isArray=c,t.isObj=a,t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.keys=u,t.trimUndefined=function e(t){return c(t)?t.map(e):(t&&a(t)&&u(t).forEach((r=>{let i=t[r];if(i!==o)return e(i);delete t[r]})),t)}}},t={},function r(i){var s=t[i];if(void 0!==s)return s.exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(431).default;var e,t})); |
@@ -1,1 +0,1 @@ | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.xiorErrorRetry=r():e.xiorErrorRetry=r()}(this,(()=>{return e={351:function(e,r,t){"use strict";var o=this&&this.__awaiter||function(e,r,t,o){return new(t||(t=Promise))((function(n,i){function s(e){try{c(o.next(e))}catch(e){i(e)}}function u(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(s,u)}c((o=o.apply(e,r||[])).next())}))};Object.defineProperty(r,"__esModule",{value:!0});const n=t(121);r.default=function(e={}){const{retryTimes:r,retryInterval:t,enableRetry:i,onRetry:s}=Object.assign({retryTimes:2,retryInterval:3e3},e||{});return function(e,u){return c=>o(this,void 0,void 0,(function*(){const{retryTimes:l=r,retryInterval:a=t,enableRetry:f=i,onRetry:d=s}=c;let y=!1,p=0;return function r(t=!1){return o(this,void 0,void 0,(function*(){if(t&&(null==u?void 0:u.REQI))for(const e of u.REQI)c=yield e(c);try{return yield e(c)}catch(e){const t="GET"===c.method||Boolean(c.isGet),o=typeof f;let i;if("function"===o&&(i=f(c,e)),void 0===i&&(i="undefined"===o?t:Boolean(f)),y=l===p,y||!i)throw e;const s="function"==typeof a?a(p,c,e):a;return s&&s>0&&p>0&&(yield(0,n.delay)(s)),p++,d&&d(c,e,p),r(!0)}}))}()}))}}},602:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const t=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const r=Object.getPrototypeOf(e);return r===Object.prototype||null===r}return"[object Object]"===Object.prototype.toString.call(e)}return!1};r.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=r.merge.options.mergeArrays?r.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:t(e[n])&&t(o[n])?e[n]=(0,r.merge)(e[n],o[n]):e[n]=void 0===o[n]?r.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};r.merge.options=o,r.merge.withOptions=(e,...t)=>{r.merge.options=Object.assign(Object.assign({},o),e);const n=(0,r.merge)(...t);return r.merge.options=o,n}},121:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var o=t(602);const n=void 0;class i extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return o.merge}}),r.XiorError=i,r.XiorTimeoutError=class extends i{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}},r.anySignal=function(e,r){let t=new globalThis.AbortController;function o(e){t.abort(e),i()}let n=[];for(let r of e){if(!0===(null==r?void 0:r.aborted)){o(r.reason);break}if(null!=(null==r?void 0:r.addEventListener)){let e=()=>{o(r.reason)};n.push((()=>{null!=(null==r?void 0:r.removeEventListener)&&r.removeEventListener("abort",e)})),r.addEventListener("abort",e)}}function i(){n.forEach((e=>{e()})),null==r||r()}let s=t.signal;return s.clear=i,s},r.buildSortedURL=function(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e},r.delay=function(e){return new Promise((r=>{setTimeout((()=>{r("ok")}),e)}))},r.encodeParams=function e(r,t=!0,o=null){if(r===n||null===r)return"";let i=[],s=t?encodeURIComponent:e=>e;for(let u in r)if(Object.prototype.hasOwnProperty.call(r,u)){let c=r[u];if(c!==n){let r=o?`${o}[${s(u)}]`:s(u);if("object"==typeof c){let o=e(c,t,r);""!==o&&i.push(o)}else Array.isArray(c)?c.forEach(((e,t)=>{let o=`${r}[${t}]`;i.push(`${s(o)}=${s(e)}`)})):i.push(`${s(r)}=${s(c)}`)}}return i.join("&")},r.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},r.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},r.joinPath=function(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e},r.trimUndefined=function e(r){return Array.isArray(r)?r.map(e):(r&&"object"==typeof r&&Object.keys(r).forEach((t=>{let o=r[t];if(o!==n)return e(o);delete r[t]})),r)}}},r={},function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o].call(i.exports,i,i.exports,t),i.exports}(351).default;var e,r})); | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.xiorErrorRetry=r():e.xiorErrorRetry=r()}(this,(()=>{return e={351:function(e,r,t){"use strict";var o=this&&this.__awaiter||function(e,r,t,o){return new(t||(t=Promise))((function(n,i){function s(e){try{c(o.next(e))}catch(e){i(e)}}function u(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(s,u)}c((o=o.apply(e,r||[])).next())}))};Object.defineProperty(r,"__esModule",{value:!0});const n=t(121);r.default=function(e={}){const{retryTimes:r,retryInterval:t,enableRetry:i,onRetry:s}=Object.assign({retryTimes:2,retryInterval:3e3},e||{});return function(e,u){return c=>o(this,void 0,void 0,(function*(){const{retryTimes:l=r,retryInterval:a=t,enableRetry:f=i,onRetry:d=s}=c;let y=!1,p=0;return function r(t=!1){return o(this,void 0,void 0,(function*(){if(t&&(null==u?void 0:u.REQI))for(const e of u.REQI)c=yield e(c);try{return yield e(c)}catch(e){const t="GET"===c.method||Boolean(c.isGet),o=typeof f;let i;if("function"===o&&(i=f(c,e)),void 0===i&&(i="undefined"===o?t:Boolean(f)),y=l===p,y||!i)throw e;const s="function"==typeof a?a(p,c,e):a;return s&&s>0&&p>0&&(yield(0,n.delay)(s)),p++,d&&d(c,e,p),r(!0)}}))}()}))}}},602:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const t=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const r=Object.getPrototypeOf(e);return r===Object.prototype||null===r}return"[object Object]"===Object.prototype.toString.call(e)}return!1};r.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=r.merge.options.mergeArrays?r.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:t(e[n])&&t(o[n])?e[n]=(0,r.merge)(e[n],o[n]):e[n]=void 0===o[n]?r.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};r.merge.options=o,r.merge.withOptions=(e,...t)=>{r.merge.options=Object.assign(Object.assign({},o),e);const n=(0,r.merge)(...t);return r.merge.options=o,n}},121:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0});var o=t(602);const n="addEventListener",i="removeEventListener",s=void 0;class u extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}const c=e=>Object.keys(e),l=e=>"object"==typeof e,a=e=>Array.isArray(e);Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return o.merge}}),r.XiorError=u,r.XiorTimeoutError=class extends u{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}},r.anySignal=function(e,r){let t=new AbortController;function o(e){t.abort(e),u()}let s=[];for(let r of e){if(!0===(null==r?void 0:r.aborted)){o(r.reason);break}if(null!=(null==r?void 0:r[n])){let e=()=>{o(r.reason)};s.push((()=>{null!=(null==r?void 0:r[i])&&r[i]("abort",e)})),r[n]("abort",e)}}function u(){s.forEach((e=>{e()})),null==r||r()}let c=t.signal;return c.clear=u,c},r.buildSortedURL=function(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e},r.delay=function(e){return new Promise((r=>{setTimeout((()=>{r("ok")}),e)}))},r.encodeParams=function e(r,t=!0,o=null){if(r===s||null===r)return"";let n=[],i=t?encodeURIComponent:e=>e;for(let u in r)if(Object.prototype.hasOwnProperty.call(r,u)){let c=r[u];if(c!==s){let r=o?`${o}[${i(u)}]`:i(u);if(l(c)){let o=e(c,t,r);""!==o&&n.push(o)}else a(c)?c.forEach(((e,t)=>{let o=`${r}[${t}]`;n.push(`${i(o)}=${i(e)}`)})):n.push(`${i(r)}=${i(c)}`)}}return n.join("&")},r.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},r.isArray=a,r.isObj=l,r.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},r.joinPath=function(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e},r.keys=c,r.trimUndefined=function e(r){return a(r)?r.map(e):(r&&l(r)&&c(r).forEach((t=>{let o=r[t];if(o!==s)return e(o);delete r[t]})),r)}}},r={},function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o].call(i.exports,i,i.exports,t),i.exports}(351).default;var e,r})); |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorMock=t():e.xiorMock=t()}(this,(()=>{return e={437:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{d(n.next(e))}catch(e){i(e)}}function a(e){try{d(n.throw(e))}catch(e){i(e)}}function d(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}d((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.MockError=void 0;const o=r(121),i=r(732),s="undefined"!=typeof AbortController;class a extends Error{constructor(e,t){super(e),this.request=t,this.config=t}}function d(e){const t=e.filter((e=>{const[,t]=e;return"function"==typeof(null==t?void 0:t.asymmetricMatch)})),r=t.filter((e=>{const[t,r]=e;return r.asymmetricMatch(t)}));return r.length>0&&r.length===t.length}function u(e){e||(e={});const t={},r="undefined"==typeof Headers?{append(e,r){t[e]=r+""},get:e=>t[e]||null}:new Headers;return Object.keys(e).forEach((t=>{r.append(t,e[t])})),r}function l(e,t){if(e.status>=300)throw new o.XiorError(`Request failed with status code ${e.status}`,t,e);return e}t.MockError=a,t.default=class{constructor(e,t){this.handlers={},this.history={},this.options=t,this.instance=e,this.plugin=this._mockPlugin.bind(this),e.plugins.use(this.plugin)}_mockPlugin(e){return t=>n(this,void 0,void 0,(function*(){var r,n,i,d,c;const h=(null===(r=t.method)||void 0===r?void 0:r.toLowerCase())||"get";this.history[h]||(this.history[h]=[]),this.handlers[h]||(this.handlers[h]=[]),null===(n=this.history[h])||void 0===n||n.push(t);const f=this.findHandler(t);if(f){const r=f[6]||(null===(i=this.options)||void 0===i?void 0:i.delayResponse);6===f.length&&Object.keys(this.handlers).forEach((e=>{var t,r;let n=null===(t=this.handlers[e])||void 0===t?void 0:t.indexOf(f);n=void 0===n?-1:n,n>-1&&(null===(r=this.handlers[e])||void 0===r||r.splice(n,1))}));const n=[];let a;if(2!==f.length){let e,r;if(t.timeout&&s){const e=new AbortController;r=setTimeout((()=>{e.abort(new o.XiorTimeoutError(`timeout of ${t.timeout}ms exceeded`,t))}),t.timeout),n.push(e.signal)}t.signal&&n.push(t.signal),e=n[0],n.length>1&&(e=(0,o.anySignal)(n,(()=>{r&&clearTimeout(r)}))),a=()=>{var t;r&&clearTimeout(r),null===(t=null==e?void 0:e.clear)||void 0===t||t.call(e)}}r&&r>0&&(yield(0,o.delay)(r));const d=n.find((e=>e.aborted));if(d)return null==a||a(),Promise.reject(d.reason);if(2===f.length)return e(t);if("function"!=typeof f[2]){const e=f.slice(2),r=l({data:e[1],status:e[0],statusText:"ok",headers:e[2],request:t,config:t},t);return null==a||a(),r}const c=f[2](t);if("function"!=typeof(null==c?void 0:c.then)){const e=l({data:c[1],status:c[0],statusText:"ok",headers:u(c[2]),request:t,config:t},t);return null==a||a(),e}{const e=yield c;return null==a||a(),e.config&&e.status?e:l({data:e[1],status:e[0],statusText:"ok",headers:u(e[2]),request:t,config:t},t)}}if("passthrough"===(null===(d=this.options)||void 0===d?void 0:d.onNoMatch))return e(t);if("throwException"===(null===(c=this.options)||void 0===c?void 0:c.onNoMatch)){const e="Could not find mock for: \n"+JSON.stringify(t,["method","url"],2);throw new a(e,t)}{const e="Request failed with status code 404";throw new o.XiorError(e,t,{status:404,statusText:e,config:t})}}))}resetHandlers(){this.handlers={}}resetHistory(){this.history={}}reset(){this.resetHandlers(),this.resetHistory()}restore(){var e;this.reset(),null===(e=this.instance)||void 0===e||e.plugins.eject(this.plugin)}onGet(e,t){return this.createHandler("get").bind(this)(e,t)}onDelete(e,t){return this.createHandler("delete").bind(this)(e,t)}onHead(e,t){return this.createHandler("head").bind(this)(e,t)}onAny(e,t){return this.createHandler("any").bind(this)(e,t)}onPost(e,t,r){return this.createHandler("post").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onPut(e,t,r){return this.createHandler("put").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onPatch(e,t,r){return this.createHandler("patch").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onOptions(e,t){return this.createHandler("options").bind(this)(e,t)}createHandler(e){return(t,r)=>{var n,i,s,a,d,u;r=r?(0,o.merge)({},{headers:null===(i=null===(n=this.instance)||void 0===n?void 0:n.config)||void 0===i?void 0:i.headers,params:null===(a=null===(s=this.instance)||void 0===s?void 0:s.config)||void 0===a?void 0:a.params,data:null===(u=null===(d=this.instance)||void 0===d?void 0:d.config)||void 0===u?void 0:u.data},r||{}):{},t=void 0===t?/.*/:t;const l=(n,o,i)=>{const s=[t,r,n,o,i];return this.addHandler(e,s),this},c=(n,o,i)=>{const s=[t,r,n,o,i,!0];return this.addHandler(e,s),this},h=(n,o,i,s)=>{const a=[t,r,o,i,s,!1,n];return this.addHandler(e,a),this};return{reply:l,replyOnce:c,withDelayInMs:function(e){return function(t,r,n){return h(e,t,r,n)}},passThrough:()=>{const n=[t,r];return this.addHandler(e,n),this},abortRequest:()=>l((e=>Promise.reject(new o.XiorError("Request aborted",e)))),abortRequestOnce:()=>c((e=>Promise.reject(new o.XiorError("Request aborted",e,{})))),networkError:()=>l((e=>Promise.reject(new o.XiorError("Network Error",e,{})))),networkErrorOnce:()=>c((e=>Promise.reject(new o.XiorError("Network Error",e,{})))),timeout:()=>l((e=>Promise.reject(new o.XiorTimeoutError("timeout of 0ms exceeded",e)))),timeoutOnce:()=>c((e=>Promise.reject(new o.XiorTimeoutError("timeout of 0ms exceeded",e))))}}}addHandler(e,t){var r,n,s;const a=[...t];if(a[3])try{a[3]=JSON.parse(JSON.stringify(a[3]))}catch(e){}if(a[4]){const e="undefined"==typeof Headers?(()=>{const e={};return{append(t,r){e[t]=r+""},get:t=>e[t]||null}})():new Headers;Object.keys(a[4]).forEach((t=>{e.append(t,a[4][t])})),a[4]=e}if("any"===e)i.VERBS.forEach((e=>{var t;this.handlers[e]||(this.handlers[e]=[]),null===(t=this.handlers[e])||void 0===t||t.push(a)}));else{this.handlers[e]||(this.handlers[e]=[]);let t=null===(r=this.handlers[e])||void 0===r?void 0:r.findIndex((e=>6!==e.length&&(0,o.buildSortedURL)(String(e[0]),e[1],o.encodeParams)===(0,o.buildSortedURL)(String(a[0]),a[1],o.encodeParams)));t=void 0===t?-1:t,t>-1&&a.length<6?null===(n=this.handlers[e])||void 0===n||n.splice(t,1,a):null===(s=this.handlers[e])||void 0===s||s.push(a)}}findHandler(e){var t;const{method:r,url:n,headers:i,params:s,data:a={},baseURL:u}=e,l=null==r?void 0:r.toLowerCase();return null===(t=this.handlers[l])||void 0===t?void 0:t.find((t=>{var r;const c=Object.assign({},t[1].headers||{});if((null===(r=e.headers)||void 0===r?void 0:r["Content-Type"])&&(Object.keys(c).find((e=>"content-type"===e.toLowerCase()))||(c["Content-Type"]=e.headers["Content-Type"])),"string"==typeof t[0]){const e=u&&t[0].startsWith(u),r=(0,o.buildSortedURL)(e?(0,o.joinPath)(u,n):(0,o.joinPath)("/",n),{b:s,c:a,a:i},o.encodeParams),l=(0,o.buildSortedURL)(e?t[0]:(0,o.joinPath)("/",t[0]),{b:t[1].params||{},c:t[1].data||{},a:c},o.encodeParams);return r===l||r.startsWith(l)||d([[s,t[1].params],[a,t[1].data],[i,c]])}if(t[0]instanceof RegExp)return(t[0].test(n)||t[0].test((0,o.joinPath)(u||"",n)))&&((0,o.buildSortedURL)(l,{b:s,c:a,a:i},o.encodeParams)===(0,o.buildSortedURL)(l,{b:t[1].params||{},c:t[1].data||{},a:c},o.encodeParams)||d([[s,t[1].params],[a,t[1].data],[i,c]]))}))}}},732:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VERBS=void 0,t.VERBS=["get","post","head","delete","patch","put","options"]},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,n)=>{if(Array.isArray(n))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(n).forEach((o=>{["__proto__","constructor","prototype"].includes(o)||(Array.isArray(e[o])&&Array.isArray(n[o])?e[o]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[o].concat(n[o]))):[...e[o],...n[o]]:n[o]:r(e[o])&&r(n[o])?e[o]=(0,t.merge)(e[o],n[o]):e[o]=void 0===n[o]?t.merge.options.allowUndefinedOverrides?n[o]:e[o]:n[o])})),e}),{});const n={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=n,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},n),e);const o=(0,t.merge)(...r);return t.merge.options=n,o}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n=r(602);const o=void 0;class i extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return n.merge}}),t.XiorError=i,t.XiorTimeoutError=class extends i{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new globalThis.AbortController;function n(e){r.abort(e),i()}let o=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){n(t.reason);break}if(null!=(null==t?void 0:t.addEventListener)){let e=()=>{n(t.reason)};o.push((()=>{null!=(null==t?void 0:t.removeEventListener)&&t.removeEventListener("abort",e)})),t.addEventListener("abort",e)}}function i(){o.forEach((e=>{e()})),null==t||t()}let s=r.signal;return s.clear=i,s},t.buildSortedURL=function(e,t,r){let n=t?r(t):"";n&&(n=e+(e.includes("?")?"&":"?")+n);let[o,i]=n.split("?");return i?`${o}?${i.split("&").sort().join("&")}`:n||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,n=null){if(t===o||null===t)return"";let i=[],s=r?encodeURIComponent:e=>e;for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){let d=t[a];if(d!==o){let t=n?`${n}[${s(a)}]`:s(a);if("object"==typeof d){let n=e(d,r,t);""!==n&&i.push(n)}else Array.isArray(d)?d.forEach(((e,r)=>{let n=`${t}[${r}]`;i.push(`${s(n)}=${s(e)}`)})):i.push(`${s(t)}=${s(d)}`)}}return i.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.trimUndefined=function e(t){return Array.isArray(t)?t.map(e):(t&&"object"==typeof t&&Object.keys(t).forEach((r=>{let n=t[r];if(n!==o)return e(n);delete t[r]})),t)}}},t={},function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(437).default;var e,t})); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.xiorMock=t():e.xiorMock=t()}(this,(()=>{return e={437:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{d(n.next(e))}catch(e){i(e)}}function a(e){try{d(n.throw(e))}catch(e){i(e)}}function d(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}d((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.MockError=void 0;const o=r(121),i=r(732),s="undefined"!=typeof AbortController;class a extends Error{constructor(e,t){super(e),this.request=t,this.config=t}}function d(e){const t=e.filter((e=>{const[,t]=e;return"function"==typeof(null==t?void 0:t.asymmetricMatch)})),r=t.filter((e=>{const[t,r]=e;return r.asymmetricMatch(t)}));return r.length>0&&r.length===t.length}function u(e){e||(e={});const t={},r="undefined"==typeof Headers?{append(e,r){t[e]=r+""},get:e=>t[e]||null}:new Headers;return Object.keys(e).forEach((t=>{r.append(t,e[t])})),r}function l(e,t){if(e.status>=300)throw new o.XiorError(`Request failed with status code ${e.status}`,t,e);return e}t.MockError=a,t.default=class{constructor(e,t){this.handlers={},this.history={},this.options=t,this.instance=e,this.plugin=this._mockPlugin.bind(this),e.plugins.use(this.plugin)}_mockPlugin(e){return t=>n(this,void 0,void 0,(function*(){var r,n,i,d,c;const h=(null===(r=t.method)||void 0===r?void 0:r.toLowerCase())||"get";this.history[h]||(this.history[h]=[]),this.handlers[h]||(this.handlers[h]=[]),null===(n=this.history[h])||void 0===n||n.push(t);const f=this.findHandler(t);if(f){const r=f[6]||(null===(i=this.options)||void 0===i?void 0:i.delayResponse);6===f.length&&Object.keys(this.handlers).forEach((e=>{var t,r;let n=null===(t=this.handlers[e])||void 0===t?void 0:t.indexOf(f);n=void 0===n?-1:n,n>-1&&(null===(r=this.handlers[e])||void 0===r||r.splice(n,1))}));const n=[];let a;if(2!==f.length){let e,r;if(t.timeout&&s){const e=new AbortController;r=setTimeout((()=>{e.abort(new o.XiorTimeoutError(`timeout of ${t.timeout}ms exceeded`,t))}),t.timeout),n.push(e.signal)}t.signal&&n.push(t.signal),e=n[0],n.length>1&&(e=(0,o.anySignal)(n,(()=>{r&&clearTimeout(r)}))),a=()=>{var t;r&&clearTimeout(r),null===(t=null==e?void 0:e.clear)||void 0===t||t.call(e)}}r&&r>0&&(yield(0,o.delay)(r));const d=n.find((e=>e.aborted));if(d)return null==a||a(),Promise.reject(d.reason);if(2===f.length)return e(t);if("function"!=typeof f[2]){const e=f.slice(2),r=l({data:e[1],status:e[0],statusText:"ok",headers:e[2],request:t,config:t},t);return null==a||a(),r}const c=f[2](t);if("function"!=typeof(null==c?void 0:c.then)){const e=l({data:c[1],status:c[0],statusText:"ok",headers:u(c[2]),request:t,config:t},t);return null==a||a(),e}{const e=yield c;return null==a||a(),e.config&&e.status?e:l({data:e[1],status:e[0],statusText:"ok",headers:u(e[2]),request:t,config:t},t)}}if("passthrough"===(null===(d=this.options)||void 0===d?void 0:d.onNoMatch))return e(t);if("throwException"===(null===(c=this.options)||void 0===c?void 0:c.onNoMatch)){const e="Could not find mock for: \n"+JSON.stringify(t,["method","url"],2);throw new a(e,t)}{const e="Request failed with status code 404";throw new o.XiorError(e,t,{status:404,statusText:e,config:t})}}))}resetHandlers(){this.handlers={}}resetHistory(){this.history={}}reset(){this.resetHandlers(),this.resetHistory()}restore(){var e;this.reset(),null===(e=this.instance)||void 0===e||e.plugins.eject(this.plugin)}onGet(e,t){return this.createHandler("get").bind(this)(e,t)}onDelete(e,t){return this.createHandler("delete").bind(this)(e,t)}onHead(e,t){return this.createHandler("head").bind(this)(e,t)}onAny(e,t){return this.createHandler("any").bind(this)(e,t)}onPost(e,t,r){return this.createHandler("post").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onPut(e,t,r){return this.createHandler("put").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onPatch(e,t,r){return this.createHandler("patch").bind(this)(e,(0,o.merge)({},r||{},{data:t||{}}))}onOptions(e,t){return this.createHandler("options").bind(this)(e,t)}createHandler(e){return(t,r)=>{var n,i,s,a,d,u;r=r?(0,o.merge)({},{headers:null===(i=null===(n=this.instance)||void 0===n?void 0:n.config)||void 0===i?void 0:i.headers,params:null===(a=null===(s=this.instance)||void 0===s?void 0:s.config)||void 0===a?void 0:a.params,data:null===(u=null===(d=this.instance)||void 0===d?void 0:d.config)||void 0===u?void 0:u.data},r||{}):{},t=void 0===t?/.*/:t;const l=(n,o,i)=>{const s=[t,r,n,o,i];return this.addHandler(e,s),this},c=(n,o,i)=>{const s=[t,r,n,o,i,!0];return this.addHandler(e,s),this},h=(n,o,i,s)=>{const a=[t,r,o,i,s,!1,n];return this.addHandler(e,a),this};return{reply:l,replyOnce:c,withDelayInMs:function(e){return function(t,r,n){return h(e,t,r,n)}},passThrough:()=>{const n=[t,r];return this.addHandler(e,n),this},abortRequest:()=>l((e=>Promise.reject(new o.XiorError("Request aborted",e)))),abortRequestOnce:()=>c((e=>Promise.reject(new o.XiorError("Request aborted",e,{})))),networkError:()=>l((e=>Promise.reject(new o.XiorError("Network Error",e,{})))),networkErrorOnce:()=>c((e=>Promise.reject(new o.XiorError("Network Error",e,{})))),timeout:()=>l((e=>Promise.reject(new o.XiorTimeoutError("timeout of 0ms exceeded",e)))),timeoutOnce:()=>c((e=>Promise.reject(new o.XiorTimeoutError("timeout of 0ms exceeded",e))))}}}addHandler(e,t){var r,n,s;const a=[...t];if(a[3])try{a[3]=JSON.parse(JSON.stringify(a[3]))}catch(e){}if(a[4]){const e="undefined"==typeof Headers?(()=>{const e={};return{append(t,r){e[t]=r+""},get:t=>e[t]||null}})():new Headers;Object.keys(a[4]).forEach((t=>{e.append(t,a[4][t])})),a[4]=e}if("any"===e)i.VERBS.forEach((e=>{var t;this.handlers[e]||(this.handlers[e]=[]),null===(t=this.handlers[e])||void 0===t||t.push(a)}));else{this.handlers[e]||(this.handlers[e]=[]);let t=null===(r=this.handlers[e])||void 0===r?void 0:r.findIndex((e=>6!==e.length&&(0,o.buildSortedURL)(String(e[0]),e[1],o.encodeParams)===(0,o.buildSortedURL)(String(a[0]),a[1],o.encodeParams)));t=void 0===t?-1:t,t>-1&&a.length<6?null===(n=this.handlers[e])||void 0===n||n.splice(t,1,a):null===(s=this.handlers[e])||void 0===s||s.push(a)}}findHandler(e){var t;const{method:r,url:n,headers:i,params:s,data:a={},baseURL:u}=e,l=null==r?void 0:r.toLowerCase();return null===(t=this.handlers[l])||void 0===t?void 0:t.find((t=>{var r;const c=Object.assign({},t[1].headers||{});if((null===(r=e.headers)||void 0===r?void 0:r["Content-Type"])&&(Object.keys(c).find((e=>"content-type"===e.toLowerCase()))||(c["Content-Type"]=e.headers["Content-Type"])),"string"==typeof t[0]){const e=u&&t[0].startsWith(u),r=(0,o.buildSortedURL)(e?(0,o.joinPath)(u,n):(0,o.joinPath)("/",n),{b:s,c:a,a:i},o.encodeParams),l=(0,o.buildSortedURL)(e?t[0]:(0,o.joinPath)("/",t[0]),{b:t[1].params||{},c:t[1].data||{},a:c},o.encodeParams);return r===l||r.startsWith(l)||d([[s,t[1].params],[a,t[1].data],[i,c]])}if(t[0]instanceof RegExp)return(t[0].test(n)||t[0].test((0,o.joinPath)(u||"",n)))&&((0,o.buildSortedURL)(l,{b:s,c:a,a:i},o.encodeParams)===(0,o.buildSortedURL)(l,{b:t[1].params||{},c:t[1].data||{},a:c},o.encodeParams)||d([[s,t[1].params],[a,t[1].data],[i,c]]))}))}}},732:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VERBS=void 0,t.VERBS=["get","post","head","delete","patch","put","options"]},602:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=void 0;const r=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}return"[object Object]"===Object.prototype.toString.call(e)}return!1};t.merge=(...e)=>e.reduce(((e,n)=>{if(Array.isArray(n))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(n).forEach((o=>{["__proto__","constructor","prototype"].includes(o)||(Array.isArray(e[o])&&Array.isArray(n[o])?e[o]=t.merge.options.mergeArrays?t.merge.options.uniqueArrayItems?Array.from(new Set(e[o].concat(n[o]))):[...e[o],...n[o]]:n[o]:r(e[o])&&r(n[o])?e[o]=(0,t.merge)(e[o],n[o]):e[o]=void 0===n[o]?t.merge.options.allowUndefinedOverrides?n[o]:e[o]:n[o])})),e}),{});const n={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};t.merge.options=n,t.merge.withOptions=(e,...r)=>{t.merge.options=Object.assign(Object.assign({},n),e);const o=(0,t.merge)(...r);return t.merge.options=n,o}},121:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0});var n=r(602);const o="addEventListener",i="removeEventListener",s=void 0;class a extends Error{constructor(e,t,r){super(e),this.name="XiorError",this.request=t,this.config=t,this.response=r}}const d=e=>Object.keys(e),u=e=>"object"==typeof e,l=e=>Array.isArray(e);Object.defineProperty(t,"merge",{enumerable:!0,get:function(){return n.merge}}),t.XiorError=a,t.XiorTimeoutError=class extends a{constructor(e,t,r){super(e),this.name="XiorTimeoutError",this.request=t,this.config=t,this.response=r}},t.anySignal=function(e,t){let r=new AbortController;function n(e){r.abort(e),a()}let s=[];for(let t of e){if(!0===(null==t?void 0:t.aborted)){n(t.reason);break}if(null!=(null==t?void 0:t[o])){let e=()=>{n(t.reason)};s.push((()=>{null!=(null==t?void 0:t[i])&&t[i]("abort",e)})),t[o]("abort",e)}}function a(){s.forEach((e=>{e()})),null==t||t()}let d=r.signal;return d.clear=a,d},t.buildSortedURL=function(e,t,r){let n=t?r(t):"";n&&(n=e+(e.includes("?")?"&":"?")+n);let[o,i]=n.split("?");return i?`${o}?${i.split("&").sort().join("&")}`:n||e},t.delay=function(e){return new Promise((t=>{setTimeout((()=>{t("ok")}),e)}))},t.encodeParams=function e(t,r=!0,n=null){if(t===s||null===t)return"";let o=[],i=r?encodeURIComponent:e=>e;for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){let d=t[a];if(d!==s){let t=n?`${n}[${i(a)}]`:i(a);if(u(d)){let n=e(d,r,t);""!==n&&o.push(n)}else l(d)?d.forEach(((e,r)=>{let n=`${t}[${r}]`;o.push(`${i(n)}=${i(e)}`)})):o.push(`${i(t)}=${i(d)}`)}}return o.join("&")},t.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},t.isArray=l,t.isObj=u,t.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},t.joinPath=function(e,t){return t?(e.endsWith("/")?e:e+"/")+("/"===t[0]?t.slice(1):t):e},t.keys=d,t.trimUndefined=function e(t){return l(t)?t.map(e):(t&&u(t)&&d(t).forEach((r=>{let n=t[r];if(n!==s)return e(n);delete t[r]})),t)}}},t={},function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(437).default;var e,t})); |
/*! For license information please see throttle.umd.js.LICENSE.txt */ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.xiorThrottle=e():t.xiorThrottle=e()}(this,(()=>{return t={272:function(t,e,r){"use strict";var i=this&&this.__awaiter||function(t,e,r,i){return new(r||(r=Promise))((function(s,n){function o(t){try{u(i.next(t))}catch(t){n(t)}}function l(t){try{u(i.throw(t))}catch(t){n(t)}}function u(t){var e;t.done?s(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,l)}u((i=i.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0});const s=r(455),n=r(121);e.default=function(t={}){const{enableThrottle:e,threshold:r=1e3,throttleCache:o=(0,s.lru)(t.throttleItems||100),onThrottle:l}=t,u=o;return function(t){const s=(e,r)=>{const s=(()=>i(this,void 0,void 0,(function*(){try{const i=yield t(r);return u.set(e,{timestamp:Date.now(),value:Promise.resolve(i)}),i}catch(t){throw"delete"in u?u.delete(e):u.del(e),t}})))();return u.set(e,{timestamp:Date.now(),value:s}),s};return o=>i(this,void 0,void 0,(function*(){const{paramsSerializer:i,threshold:a=r,enableThrottle:h=e,onThrottle:c=l}=o,f="GET"===o.method||o.isGet,p=typeof h;let d;if("function"===p&&(d=h(o)),void 0===d&&(d="undefined"===p?f:Boolean(h)),d){const t=(0,n.buildSortedURL)(o.url&&(0,n.isAbsoluteURL)(o.url)?o.url:(0,n.joinPath)(o.baseURL||"",o.url||""),{a:o.data,b:o.params},i),e=Date.now(),r=u.get(t)||{timestamp:e},l=r.value;return l&&e-r.timestamp<=a?(null==c||c(o),l):s(t,o)}return t(o)}))}}},455:(t,e)=>{"use strict";class r{constructor(t=0,e=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=t,this.resetTtl=r,this.size=0,this.ttl=e}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(t){if(this.has(t)){const e=this.items[t];delete this.items[t],this.size--,null!==e.prev&&(e.prev.next=e.next),null!==e.next&&(e.next.prev=e.prev),this.first===e&&(this.first=e.next),this.last===e&&(this.last=e.prev)}return this}entries(t=this.keys()){return t.map((t=>[t,this.get(t)]))}evict(t=!1){if(t||this.size>0){const t=this.first;delete this.items[t.key],0==--this.size?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}return this}expiresAt(t){let e;return this.has(t)&&(e=this.items[t].expiry),e}get(t){let e;if(this.has(t)){const r=this.items[t];this.ttl>0&&r.expiry<=Date.now()?this.delete(t):(e=r.value,this.set(t,e,!0))}return e}has(t){return t in this.items}keys(){const t=[];let e=this.first;for(;null!==e;)t.push(e.key),e=e.next;return t}set(t,e,r=!1,i=this.resetTtl){let s;if(r||this.has(t)){if(s=this.items[t],s.value=e,!1===r&&i&&(s.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==s){const t=this.last,e=s.next,r=s.prev;this.first===s&&(this.first=s.next),s.next=null,s.prev=this.last,t.next=s,null!==r&&(r.next=e),null!==e&&(e.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),s=this.items[t]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:e},1==++this.size?this.first=s:this.last.next=s;return this.last=s,this}values(t=this.keys()){return t.map((t=>this.get(t)))}}e.LRU=r,e.lru=function(t=1e3,e=0,i=!1){if(isNaN(t)||t<0)throw new TypeError("Invalid max value");if(isNaN(e)||e<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof i)throw new TypeError("Invalid resetTtl value");return new r(t,e,i)}},602:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;const r=t=>{if("object"==typeof t&&null!==t){if("function"==typeof Object.getPrototypeOf){const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1};e.merge=(...t)=>t.reduce(((t,i)=>{if(Array.isArray(i))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(i).forEach((s=>{["__proto__","constructor","prototype"].includes(s)||(Array.isArray(t[s])&&Array.isArray(i[s])?t[s]=e.merge.options.mergeArrays?e.merge.options.uniqueArrayItems?Array.from(new Set(t[s].concat(i[s]))):[...t[s],...i[s]]:i[s]:r(t[s])&&r(i[s])?t[s]=(0,e.merge)(t[s],i[s]):t[s]=void 0===i[s]?e.merge.options.allowUndefinedOverrides?i[s]:t[s]:i[s])})),t}),{});const i={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};e.merge.options=i,e.merge.withOptions=(t,...r)=>{e.merge.options=Object.assign(Object.assign({},i),t);const s=(0,e.merge)(...r);return e.merge.options=i,s}},121:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0});var i=r(602);const s=void 0;class n extends Error{constructor(t,e,r){super(t),this.name="XiorError",this.request=e,this.config=e,this.response=r}}Object.defineProperty(e,"merge",{enumerable:!0,get:function(){return i.merge}}),e.XiorError=n,e.XiorTimeoutError=class extends n{constructor(t,e,r){super(t),this.name="XiorTimeoutError",this.request=e,this.config=e,this.response=r}},e.anySignal=function(t,e){let r=new globalThis.AbortController;function i(t){r.abort(t),n()}let s=[];for(let e of t){if(!0===(null==e?void 0:e.aborted)){i(e.reason);break}if(null!=(null==e?void 0:e.addEventListener)){let t=()=>{i(e.reason)};s.push((()=>{null!=(null==e?void 0:e.removeEventListener)&&e.removeEventListener("abort",t)})),e.addEventListener("abort",t)}}function n(){s.forEach((t=>{t()})),null==e||e()}let o=r.signal;return o.clear=n,o},e.buildSortedURL=function(t,e,r){let i=e?r(e):"";i&&(i=t+(t.includes("?")?"&":"?")+i);let[s,n]=i.split("?");return n?`${s}?${n.split("&").sort().join("&")}`:i||t},e.delay=function(t){return new Promise((e=>{setTimeout((()=>{e("ok")}),t)}))},e.encodeParams=function t(e,r=!0,i=null){if(e===s||null===e)return"";let n=[],o=r?encodeURIComponent:t=>t;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==s){let e=i?`${i}[${o(l)}]`:o(l);if("object"==typeof u){let i=t(u,r,e);""!==i&&n.push(i)}else Array.isArray(u)?u.forEach(((t,r)=>{let i=`${e}[${r}]`;n.push(`${o(i)}=${o(t)}`)})):n.push(`${o(e)}=${o(u)}`)}}return n.join("&")},e.isAbsoluteURL=function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)},e.isXiorError=function(t){return"XiorError"===t.name||"XiorTimeoutError"===t.name},e.joinPath=function(t,e){return e?(t.endsWith("/")?t:t+"/")+("/"===e[0]?e.slice(1):e):t},e.trimUndefined=function t(e){return Array.isArray(e)?e.map(t):(e&&"object"==typeof e&&Object.keys(e).forEach((r=>{let i=e[r];if(i!==s)return t(i);delete e[r]})),e)}}},e={},function r(i){var s=e[i];if(void 0!==s)return s.exports;var n=e[i]={exports:{}};return t[i].call(n.exports,n,n.exports,r),n.exports}(272).default;var t,e})); | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.xiorThrottle=e():t.xiorThrottle=e()}(this,(()=>{return t={272:function(t,e,r){"use strict";var s=this&&this.__awaiter||function(t,e,r,s){return new(r||(r=Promise))((function(i,n){function o(t){try{u(s.next(t))}catch(t){n(t)}}function l(t){try{u(s.throw(t))}catch(t){n(t)}}function u(t){var e;t.done?i(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,l)}u((s=s.apply(t,e||[])).next())}))};Object.defineProperty(e,"__esModule",{value:!0});const i=r(455),n=r(121);e.default=function(t={}){const{enableThrottle:e,threshold:r=1e3,throttleCache:o=(0,i.lru)(t.throttleItems||100),onThrottle:l}=t,u=o;return function(t){const i=(e,r)=>{const i=(()=>s(this,void 0,void 0,(function*(){try{const s=yield t(r);return u.set(e,{timestamp:Date.now(),value:Promise.resolve(s)}),s}catch(t){throw"delete"in u?u.delete(e):u.del(e),t}})))();return u.set(e,{timestamp:Date.now(),value:i}),i};return o=>s(this,void 0,void 0,(function*(){const{paramsSerializer:s,threshold:a=r,enableThrottle:h=e,onThrottle:c=l}=o,f="GET"===o.method||o.isGet,p=typeof h;let d;if("function"===p&&(d=h(o)),void 0===d&&(d="undefined"===p?f:Boolean(h)),d){const t=(0,n.buildSortedURL)(o.url&&(0,n.isAbsoluteURL)(o.url)?o.url:(0,n.joinPath)(o.baseURL||"",o.url||""),{a:o.data,b:o.params},s),e=Date.now(),r=u.get(t)||{timestamp:e},l=r.value;return l&&e-r.timestamp<=a?(null==c||c(o),l):i(t,o)}return t(o)}))}}},455:(t,e)=>{"use strict";class r{constructor(t=0,e=0,r=!1){this.first=null,this.items=Object.create(null),this.last=null,this.max=t,this.resetTtl=r,this.size=0,this.ttl=e}clear(){return this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this}delete(t){if(this.has(t)){const e=this.items[t];delete this.items[t],this.size--,null!==e.prev&&(e.prev.next=e.next),null!==e.next&&(e.next.prev=e.prev),this.first===e&&(this.first=e.next),this.last===e&&(this.last=e.prev)}return this}entries(t=this.keys()){return t.map((t=>[t,this.get(t)]))}evict(t=!1){if(t||this.size>0){const t=this.first;delete this.items[t.key],0==--this.size?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}return this}expiresAt(t){let e;return this.has(t)&&(e=this.items[t].expiry),e}get(t){let e;if(this.has(t)){const r=this.items[t];this.ttl>0&&r.expiry<=Date.now()?this.delete(t):(e=r.value,this.set(t,e,!0))}return e}has(t){return t in this.items}keys(){const t=[];let e=this.first;for(;null!==e;)t.push(e.key),e=e.next;return t}set(t,e,r=!1,s=this.resetTtl){let i;if(r||this.has(t)){if(i=this.items[t],i.value=e,!1===r&&s&&(i.expiry=this.ttl>0?Date.now()+this.ttl:this.ttl),this.last!==i){const t=this.last,e=i.next,r=i.prev;this.first===i&&(this.first=i.next),i.next=null,i.prev=this.last,t.next=i,null!==r&&(r.next=e),null!==e&&(e.prev=r)}}else this.max>0&&this.size===this.max&&this.evict(!0),i=this.items[t]={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:e},1==++this.size?this.first=i:this.last.next=i;return this.last=i,this}values(t=this.keys()){return t.map((t=>this.get(t)))}}e.LRU=r,e.lru=function(t=1e3,e=0,s=!1){if(isNaN(t)||t<0)throw new TypeError("Invalid max value");if(isNaN(e)||e<0)throw new TypeError("Invalid ttl value");if("boolean"!=typeof s)throw new TypeError("Invalid resetTtl value");return new r(t,e,s)}},602:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;const r=t=>{if("object"==typeof t&&null!==t){if("function"==typeof Object.getPrototypeOf){const e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1};e.merge=(...t)=>t.reduce(((t,s)=>{if(Array.isArray(s))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(s).forEach((i=>{["__proto__","constructor","prototype"].includes(i)||(Array.isArray(t[i])&&Array.isArray(s[i])?t[i]=e.merge.options.mergeArrays?e.merge.options.uniqueArrayItems?Array.from(new Set(t[i].concat(s[i]))):[...t[i],...s[i]]:s[i]:r(t[i])&&r(s[i])?t[i]=(0,e.merge)(t[i],s[i]):t[i]=void 0===s[i]?e.merge.options.allowUndefinedOverrides?s[i]:t[i]:s[i])})),t}),{});const s={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};e.merge.options=s,e.merge.withOptions=(t,...r)=>{e.merge.options=Object.assign(Object.assign({},s),t);const i=(0,e.merge)(...r);return e.merge.options=s,i}},121:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0});var s=r(602);const i="addEventListener",n="removeEventListener",o=void 0;class l extends Error{constructor(t,e,r){super(t),this.name="XiorError",this.request=e,this.config=e,this.response=r}}const u=t=>Object.keys(t),a=t=>"object"==typeof t,h=t=>Array.isArray(t);Object.defineProperty(e,"merge",{enumerable:!0,get:function(){return s.merge}}),e.XiorError=l,e.XiorTimeoutError=class extends l{constructor(t,e,r){super(t),this.name="XiorTimeoutError",this.request=e,this.config=e,this.response=r}},e.anySignal=function(t,e){let r=new AbortController;function s(t){r.abort(t),l()}let o=[];for(let e of t){if(!0===(null==e?void 0:e.aborted)){s(e.reason);break}if(null!=(null==e?void 0:e[i])){let t=()=>{s(e.reason)};o.push((()=>{null!=(null==e?void 0:e[n])&&e[n]("abort",t)})),e[i]("abort",t)}}function l(){o.forEach((t=>{t()})),null==e||e()}let u=r.signal;return u.clear=l,u},e.buildSortedURL=function(t,e,r){let s=e?r(e):"";s&&(s=t+(t.includes("?")?"&":"?")+s);let[i,n]=s.split("?");return n?`${i}?${n.split("&").sort().join("&")}`:s||t},e.delay=function(t){return new Promise((e=>{setTimeout((()=>{e("ok")}),t)}))},e.encodeParams=function t(e,r=!0,s=null){if(e===o||null===e)return"";let i=[],n=r?encodeURIComponent:t=>t;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==o){let e=s?`${s}[${n(l)}]`:n(l);if(a(u)){let s=t(u,r,e);""!==s&&i.push(s)}else h(u)?u.forEach(((t,r)=>{let s=`${e}[${r}]`;i.push(`${n(s)}=${n(t)}`)})):i.push(`${n(e)}=${n(u)}`)}}return i.join("&")},e.isAbsoluteURL=function(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)},e.isArray=h,e.isObj=a,e.isXiorError=function(t){return"XiorError"===t.name||"XiorTimeoutError"===t.name},e.joinPath=function(t,e){return e?(t.endsWith("/")?t:t+"/")+("/"===e[0]?e.slice(1):e):t},e.keys=u,e.trimUndefined=function t(e){return h(e)?e.map(t):(e&&a(e)&&u(e).forEach((r=>{let s=e[r];if(s!==o)return t(s);delete e[r]})),e)}}},e={},function r(s){var i=e[s];if(void 0!==i)return i.exports;var n=e[s]={exports:{}};return t[s].call(n.exports,n,n.exports,r),n.exports}(272).default;var t,e})); |
@@ -1,1 +0,1 @@ | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.xiorUtils=r():e.xiorUtils=r()}(this,(()=>(()=>{"use strict";var e={699:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.anySignal=void 0,r.anySignal=function(e,r){const t=new globalThis.AbortController;function o(e){t.abort(e),i()}const n=[];for(const r of e){if(!0===(null==r?void 0:r.aborted)){o(r.reason);break}if(null!=(null==r?void 0:r.addEventListener)){const e=()=>{o(r.reason)};n.push((()=>{null!=(null==r?void 0:r.removeEventListener)&&r.removeEventListener("abort",e)})),r.addEventListener("abort",e)}}function i(){n.forEach((e=>{e()})),null==r||r()}const s=t.signal;return s.clear=i,s}},729:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const o=t(602);Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return o.merge}})},629:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);const[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e}},99:function(e,r,t){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.delay=r.buildSortedURL=void 0;const n=o(t(629));r.buildSortedURL=n.default,r.delay=function(e){return new Promise((r=>{setTimeout((()=>{r("ok")}),e)}))}},976:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),r.isXiorError=r.XiorTimeoutError=r.XiorError=r.joinPath=r.isAbsoluteURL=r.trimUndefined=r.encodeParams=void 0,n(t(699),r),n(t(729),r),n(t(99),r);const i=void 0;r.encodeParams=function e(r,t=!0,o=null){if(r===i||null===r)return"";const n=[],s=t?encodeURIComponent:e=>e;for(const u in r)if(Object.prototype.hasOwnProperty.call(r,u)){const c=r[u];if(c!==i){const r=o?`${o}[${s(u)}]`:s(u);if("object"==typeof c){const o=e(c,t,r);""!==o&&n.push(o)}else Array.isArray(c)?c.forEach(((e,t)=>{const o=`${r}[${t}]`;n.push(`${s(o)}=${s(e)}`)})):n.push(`${s(r)}=${s(c)}`)}}return n.join("&")},r.trimUndefined=function e(r){return Array.isArray(r)?r.map(e):(r&&"object"==typeof r&&Object.keys(r).forEach((t=>{const o=r[t];if(o!==i)return e(o);delete r[t]})),r)},r.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},r.joinPath=function(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e};class s extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}r.XiorError=s,r.XiorTimeoutError=class extends s{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}},r.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name}},602:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const t=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const r=Object.getPrototypeOf(e);return r===Object.prototype||null===r}return"[object Object]"===Object.prototype.toString.call(e)}return!1};r.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=r.merge.options.mergeArrays?r.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:t(e[n])&&t(o[n])?e[n]=(0,r.merge)(e[n],o[n]):e[n]=void 0===o[n]?r.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};r.merge.options=o,r.merge.withOptions=(e,...t)=>{r.merge.options=Object.assign(Object.assign({},o),e);const n=(0,r.merge)(...t);return r.merge.options=o,n}}},r={},t=function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o].call(i.exports,i,i.exports,t),i.exports}(976);return t.default})())); | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.xiorUtils=r():e.xiorUtils=r()}(this,(()=>(()=>{"use strict";var e={699:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.anySignal=void 0;const t="addEventListener",o="removeEventListener";r.anySignal=function(e,r){const n=new AbortController;function i(e){n.abort(e),u()}const s=[];for(const r of e){if(!0===(null==r?void 0:r.aborted)){i(r.reason);break}if(null!=(null==r?void 0:r[t])){const e=()=>{i(r.reason)};s.push((()=>{null!=(null==r?void 0:r[o])&&r[o]("abort",e)})),r[t]("abort",e)}}function u(){s.forEach((e=>{e()})),null==r||r()}const c=n.signal;return c.clear=u,c}},729:(e,r,t)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const o=t(602);Object.defineProperty(r,"merge",{enumerable:!0,get:function(){return o.merge}})},629:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);const[n,i]=o.split("?");return i?`${n}?${i.split("&").sort().join("&")}`:o||e}},99:function(e,r,t){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.delay=r.buildSortedURL=void 0;const n=o(t(629));r.buildSortedURL=n.default,r.delay=function(e){return new Promise((r=>{setTimeout((()=>{r("ok")}),e)}))}},976:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),r.isArray=r.isObj=r.keys=r.isXiorError=r.XiorTimeoutError=r.XiorError=r.joinPath=r.isAbsoluteURL=r.trimUndefined=r.encodeParams=void 0,n(t(699),r),n(t(729),r),n(t(99),r);const i=void 0;r.encodeParams=function e(t,o=!0,n=null){if(t===i||null===t)return"";const s=[],u=o?encodeURIComponent:e=>e;for(const c in t)if(Object.prototype.hasOwnProperty.call(t,c)){const a=t[c];if(a!==i){const t=n?`${n}[${u(c)}]`:u(c);if((0,r.isObj)(a)){const r=e(a,o,t);""!==r&&s.push(r)}else(0,r.isArray)(a)?a.forEach(((e,r)=>{const o=`${t}[${r}]`;s.push(`${u(o)}=${u(e)}`)})):s.push(`${u(t)}=${u(a)}`)}}return s.join("&")},r.trimUndefined=function e(t){return(0,r.isArray)(t)?t.map(e):(t&&(0,r.isObj)(t)&&(0,r.keys)(t).forEach((r=>{const o=t[r];if(o!==i)return e(o);delete t[r]})),t)},r.isAbsoluteURL=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)},r.joinPath=function(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e};class s extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}r.XiorError=s,r.XiorTimeoutError=class extends s{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}},r.isXiorError=function(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name},r.keys=e=>Object.keys(e),r.isObj=e=>"object"==typeof e,r.isArray=e=>Array.isArray(e)},602:(e,r)=>{Object.defineProperty(r,"__esModule",{value:!0}),r.merge=void 0;const t=e=>{if("object"==typeof e&&null!==e){if("function"==typeof Object.getPrototypeOf){const r=Object.getPrototypeOf(e);return r===Object.prototype||null===r}return"[object Object]"===Object.prototype.toString.call(e)}return!1};r.merge=(...e)=>e.reduce(((e,o)=>{if(Array.isArray(o))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(o).forEach((n=>{["__proto__","constructor","prototype"].includes(n)||(Array.isArray(e[n])&&Array.isArray(o[n])?e[n]=r.merge.options.mergeArrays?r.merge.options.uniqueArrayItems?Array.from(new Set(e[n].concat(o[n]))):[...e[n],...o[n]]:o[n]:t(e[n])&&t(o[n])?e[n]=(0,r.merge)(e[n],o[n]):e[n]=void 0===o[n]?r.merge.options.allowUndefinedOverrides?o[n]:e[n]:o[n])})),e}),{});const o={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};r.merge.options=o,r.merge.withOptions=(e,...t)=>{r.merge.options=Object.assign(Object.assign({},o),e);const n=(0,r.merge)(...t);return r.merge.options=o,n}}},r={},t=function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o].call(i.exports,i,i.exports,t),i.exports}(976);return t.default})())); |
227
README.md
@@ -25,5 +25,2 @@ [![Build](https://github.com/suhaotian/xior/actions/workflows/check.yml/badge.svg)](https://github.com/suhaotian/xior/actions/workflows/check.yml) | ||
- [Table of Contents](#table-of-contents) | ||
- [Why Choose **xior**?](#why-choose-xior) | ||
- [Why not just use `axios`?](#why-not-just-use-axios) | ||
- [Why choose **xior** over Custom Fetch Wrappers?](#why-choose-xior-over-custom-fetch-wrappers) | ||
- [Getting Started](#getting-started) | ||
@@ -41,3 +38,2 @@ - [Installing](#installing) | ||
- [Encrypt and Decrypt Example](#encrypt-and-decrypt-example) | ||
- [Automatically refreshing access token](#automatically-refreshing-access-token) | ||
- [Tips: Make your SSR(Server-side Rendering) app more stable and faster](#tips-make-your-ssrserver-side-rendering-app-more-stable-and-faster) | ||
@@ -52,3 +48,4 @@ - [Plugins](#plugins) | ||
- [Mock plugin](#mock-plugin) | ||
- [Auth refresh token plugin](#auth-refresh-token-plugin) | ||
- [Auth refresh token plugin(from community)](#auth-refresh-token-pluginfrom-community) | ||
- [Auth refresh token plugin(built-in)](#auth-refresh-token-pluginbuilt-in) | ||
- [Create your own custom plugin](#create-your-own-custom-plugin) | ||
@@ -81,21 +78,2 @@ - [Helper functions](#helper-functions) | ||
## Why Choose **xior**? | ||
**xior** use the native **fetch API**, offering several advantages: | ||
- **Web Standard:** Fetch is a widely supported web standard, ensuring compatibility across different environments. | ||
- **Built-in Availability:** Both Node.js and browsers have built-in fetch implementations, eliminating the need for external dependencies. | ||
- **Edge Compatibility:** Unlike Axios, xior works seamlessly in edge runtimes, making it suitable for serverless functions and Next.js middleware. | ||
- **Convenient API and Plugin Support:** xior provides a familiar API similar to Axios, while also offering plugin support for customization and extending functionalities. | ||
### Why not just use `axios`? | ||
> If you want proxy support, use `axios`, because `xior` doesn't support proxy feature yet | ||
While popular and convenient, Axios currently lacks native edge runtime support (see: [https://github.com/axios/axios/issues/5523](https://github.com/axios/axios/issues/5523)). This can be an issue for specific use cases like Next.js serverless functions and middleware files, where fetch offers built-in caching and revalidation mechanisms (see: [https://nextjs.org/docs/app/api-reference/functions/fetch](https://nextjs.org/docs/app/api-reference/functions/fetch)). | ||
### Why choose **xior** over Custom Fetch Wrappers? | ||
While you can certainly create your own wrapper library around fetch, **xior** offers a pre-built solution with a familiar API, plugin support for extensibility, and potentially a more streamlined development experience. | ||
## Getting Started | ||
@@ -128,3 +106,3 @@ | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
@@ -144,3 +122,3 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
@@ -205,5 +183,3 @@ <!-- Usage --> | ||
params: { id: 1 }, | ||
headers: { | ||
'content-type': 'application/json', | ||
}, | ||
headers: {}, | ||
} | ||
@@ -425,78 +401,2 @@ ); | ||
### Automatically refreshing access token | ||
We can use some plugins and interceptors to achieve this. The flow would be: | ||
1. In response interceptors, check if status code is session expired, we set the new access token from API | ||
2. Then throw error, the error will occur the error retry plugin to retry request with the new access token | ||
> The error retry plugin will not retry with `POST` method request in default. | ||
Example code: | ||
```ts | ||
import axios, { XiorError as AxiosError } from 'xior'; | ||
import errorRetryPlugin from 'xior/plugins/error-retry'; | ||
import dedupePlugin from 'xior/plugins/dedupe'; | ||
import throttlePlugin from 'xior/plugins/throttle'; | ||
const http = axios.create({ | ||
baseURL: 'http://localhost:3000', | ||
}); | ||
http.plugins.use(errorRetryPlugin()); | ||
http.plugins.use(dedupePlugin()); // Prevent same `GET` requests from occurring simultaneously. | ||
http.plugins.use(throttlePlugin()); // Throttle same `GET` request in 1000ms | ||
const TOKEN_EXPIRED_STATUS = 403; | ||
const TOKEN_STORAGE_KEY = 'AUTH_TOKEN'; | ||
http.interceptors.request.use((config) => { | ||
// Get token from localStorage | ||
const token = localStorage.getItem(TOKEN_STORAGE_KEY); | ||
if (token) { | ||
config.headers['Authorization'] = 'Bearer ' + token; | ||
} | ||
return config; | ||
}); | ||
let refreshingToken = false; | ||
const queue: (() => void)[] = []; | ||
http.interceptors.response.use( | ||
async (response) => { | ||
return response; | ||
}, | ||
async (error: AxiosError) => { | ||
const token = localStorage.getItem(TOKEN_STORAGE_KEY); | ||
if (error.response?.status === TOKEN_EXPIRED_STATUS && token) { | ||
if (refreshingToken) { | ||
await new Promise<void>((resolve, reject) => { | ||
queue.push(resolve); | ||
}); | ||
} else { | ||
refreshingToken = true; | ||
try { | ||
const { data } = await http.post('/api/new_token', { | ||
enableDedupe: true, // Use `enableDedupe: true` to enable dedupe request, if is GET method, can ignore | ||
enableThrottle: true, // Use `enableThrottle: true` to enable throttle request, if is GET method, can ignore | ||
}); | ||
// Save token | ||
localStorage.setItem(TOKEN_STORAGE_KEY, data.token); | ||
} catch (e) { | ||
// refresh token wrong, remove the old token? | ||
localStorage.removeItem(TOKEN_STORAGE_KEY); | ||
throw e; | ||
} finally { | ||
refreshingToken = false; | ||
queue.forEach((r) => r()); | ||
} | ||
return Promise.reject(new Error('Token expired, new token refreshed, try again!')); | ||
} | ||
} | ||
// If error, will retry on GET method | ||
return Promise.reject(error); | ||
} | ||
); | ||
``` | ||
Or You can use the plugin from community: [Auth refresh token plugin](#auth-refresh-token-plugin). | ||
### Tips: Make your SSR(Server-side Rendering) app more stable and faster | ||
@@ -671,5 +571,5 @@ | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/error-retry.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/error-retry.umd.js"></script> | ||
@@ -687,6 +587,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/error-retry.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/error-retry.umd.js"></script> | ||
@@ -784,5 +684,5 @@ <!-- Usage --> | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/throttle.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/throttle.umd.js"></script> | ||
@@ -800,6 +700,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/throttle.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/throttle.umd.js"></script> | ||
@@ -859,5 +759,5 @@ <!-- Usage --> | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/dedupe.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/dedupe.umd.js"></script> | ||
@@ -875,6 +775,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/dedupe.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/dedupe.umd.js"></script> | ||
@@ -941,5 +841,5 @@ <!-- Usage --> | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/error-cache.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/error-cache.umd.js"></script> | ||
@@ -957,6 +857,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/error-cache.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/error-cache.umd.js"></script> | ||
@@ -1106,5 +1006,5 @@ <!-- Usage --> | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/progress.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/progress.umd.js"></script> | ||
@@ -1122,6 +1022,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/progress.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/progress.umd.js"></script> | ||
@@ -1233,5 +1133,5 @@ <!-- Usage --> | ||
```html | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.1/plugins/mock.umd.js"></script> | ||
<script src="https://cdn.jsdelivr.net/npm/xior@0.4.2/plugins/mock.umd.js"></script> | ||
@@ -1249,6 +1149,6 @@ <!-- Usage --> | ||
```html | ||
<script src="https://unpkg.com/xior@0.4.1/dist/xior.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/dist/xior.umd.js"></script> | ||
<!-- Load plugin --> | ||
<script src="https://unpkg.com/xior@0.4.1/plugins/mock.umd.js"></script> | ||
<script src="https://unpkg.com/xior@0.4.2/plugins/mock.umd.js"></script> | ||
@@ -1263,3 +1163,3 @@ <!-- Usage --> | ||
### Auth refresh token plugin | ||
### Auth refresh token plugin(from community) | ||
@@ -1303,2 +1203,65 @@ We will use `xior-auth-refresh` plugin from the community: https://github.com/Audiu/xior-auth-refresh | ||
### Auth refresh token plugin(built-in) | ||
Usage: | ||
```ts | ||
import xior, { XiorResponse } from 'xior'; | ||
import errorRetry from 'xior/plugins/error-retry'; | ||
import setupTokenRefresh from 'xior/plugins/token-refresh'; | ||
const instance = xior.create(); | ||
const TOKEN_KEY = 'TOKEN'; | ||
function getToken() { | ||
return localStorage.getItem(TOKEN_KEY); | ||
} | ||
function setToken(token: string) { | ||
return localStorage.setItem(TOKEN_KEY, token); | ||
} | ||
function deleteToken() { | ||
return localStorage.getItem(TOKEN_KEY); | ||
} | ||
instance.interceptors.request.use((config) => { | ||
const token = getToken(); | ||
if (token) { | ||
config.headers['Authorization'] = `Bearer ${token}`; | ||
} | ||
return config; | ||
}); | ||
function shouldRefresh(response: XiorResponse) { | ||
const token = getToken(); | ||
return Boolean(token && response?.status && [401, 403].includes(response.status)); | ||
} | ||
instance.plugins.use( | ||
errorRetry({ | ||
enableRetry: (config, error) => { | ||
if (error?.response && shouldRefresh(error.response)) { | ||
return true; | ||
} | ||
// return false | ||
}, | ||
}) | ||
); | ||
setupTokenRefresh(http, { | ||
shouldRefresh, | ||
async refreshToken(error) { | ||
try { | ||
const { data } = await http.post('/token/new'); | ||
if (data.token) { | ||
setToken(data.token); | ||
} else { | ||
throw error; | ||
} | ||
} catch (e) { | ||
// something wrong, delete old token | ||
deleteToken(); | ||
return Promise.reject(error); | ||
} | ||
}, | ||
}); | ||
``` | ||
### Create your own custom plugin | ||
@@ -1820,3 +1783,3 @@ | ||
headers: { | ||
'Content-Type': 'application/json', | ||
// 'Content-Type': 'application/json', | ||
// 'Content-Type': 'application/x-www-form-urlencoded', | ||
@@ -1854,3 +1817,3 @@ }, | ||
headers: { | ||
'Content-Type': 'application/json', | ||
// 'Content-Type': 'application/json', | ||
// 'Content-Type': 'application/x-www-form-urlencoded', | ||
@@ -1857,0 +1820,0 @@ }, |
@@ -92,3 +92,6 @@ export { merge } from 'ts-deepmerge'; | ||
declare function isXiorError(error: any): boolean; | ||
declare const keys: typeof Object.keys; | ||
declare const isObj: (obj: any) => boolean; | ||
declare const isArray: (arg: any) => arg is any[]; | ||
export { type ClearableSignal, type ICacheLike, XiorError, XiorTimeoutError, anySignal, buildSortedURL, delay, encodeParams, isAbsoluteURL, isXiorError, joinPath, trimUndefined }; | ||
export { type ClearableSignal, type ICacheLike, XiorError, XiorTimeoutError, anySignal, buildSortedURL, delay, encodeParams, isAbsoluteURL, isArray, isObj, isXiorError, joinPath, keys, trimUndefined }; |
@@ -1,1 +0,1 @@ | ||
export{merge}from"ts-deepmerge";function e(e,r){let t=new globalThis.AbortController;function o(e){t.abort(e),i()}let n=[];for(let r of e){if((null==r?void 0:r.aborted)===!0){o(r.reason);break}if((null==r?void 0:r.addEventListener)!=null){let e=()=>{o(r.reason)};n.push(()=>{(null==r?void 0:r.removeEventListener)!=null&&r.removeEventListener("abort",e)}),r.addEventListener("abort",e)}}function i(){n.forEach(e=>{e()}),null==r||r()}let s=t.signal;return s.clear=i,s}function r(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");if(i){let e=i.split("&");return`${n}?${e.sort().join("&")}`}return o||e}function t(e){return new Promise(r=>{setTimeout(()=>{r("ok")},e)})}let o=void 0;function n(e,r=!0,t=null){if(e===o||null===e)return"";let i=[],s=r?encodeURIComponent:e=>e;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==o){let e=t?`${t}[${s(l)}]`:s(l);if("object"==typeof u){let t=n(u,r,e);""!==t&&i.push(t)}else Array.isArray(u)?u.forEach((r,t)=>{let o=`${e}[${t}]`;i.push(`${s(o)}=${s(r)}`)}):i.push(`${s(e)}=${s(u)}`)}}return i.join("&")}function i(e){return Array.isArray(e)?e.map(i):(e&&"object"==typeof e&&Object.keys(e).forEach(r=>{let t=e[r];if(t!==o)return i(t);delete e[r]}),e)}function s(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function l(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e}class u extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}class a extends u{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}}function c(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name}export{u as XiorError,a as XiorTimeoutError,e as anySignal,r as buildSortedURL,t as delay,n as encodeParams,s as isAbsoluteURL,c as isXiorError,l as joinPath,i as trimUndefined}; | ||
export{merge}from"ts-deepmerge";let e="addEventListener",r="removeEventListener";function t(t,o){let n=new AbortController;function i(e){n.abort(e),l()}let s=[];for(let o of t){if((null==o?void 0:o.aborted)===!0){i(o.reason);break}if((null==o?void 0:o[e])!=null){let t=()=>{i(o.reason)};s.push(()=>{(null==o?void 0:o[r])!=null&&o[r]("abort",t)}),o[e]("abort",t)}}function l(){s.forEach(e=>{e()}),null==o||o()}let u=n.signal;return u.clear=l,u}function o(e,r,t){let o=r?t(r):"";o&&(o=e+(e.includes("?")?"&":"?")+o);let[n,i]=o.split("?");if(i){let e=i.split("&");return`${n}?${e.sort().join("&")}`}return o||e}function n(e){return new Promise(r=>{setTimeout(()=>{r("ok")},e)})}let i=void 0;function s(e,r=!0,t=null){if(e===i||null===e)return"";let o=[],n=r?encodeURIComponent:e=>e;for(let l in e)if(Object.prototype.hasOwnProperty.call(e,l)){let u=e[l];if(u!==i){let e=t?`${t}[${n(l)}]`:n(l);if(h(u)){let t=s(u,r,e);""!==t&&o.push(t)}else m(u)?u.forEach((r,t)=>{let i=`${e}[${t}]`;o.push(`${n(i)}=${n(r)}`)}):o.push(`${n(e)}=${n(u)}`)}}return o.join("&")}function l(e){return m(e)?e.map(l):(e&&h(e)&&p(e).forEach(r=>{let t=e[r];if(t!==i)return l(t);delete e[r]}),e)}function u(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function a(e,r){return r?(e.endsWith("/")?e:e+"/")+("/"===r[0]?r.slice(1):r):e}class c extends Error{constructor(e,r,t){super(e),this.name="XiorError",this.request=r,this.config=r,this.response=t}}class f extends c{constructor(e,r,t){super(e),this.name="XiorTimeoutError",this.request=r,this.config=r,this.response=t}}function d(e){return"XiorError"===e.name||"XiorTimeoutError"===e.name}let p=e=>Object.keys(e),h=e=>"object"==typeof e,m=e=>Array.isArray(e);export{c as XiorError,f as XiorTimeoutError,t as anySignal,o as buildSortedURL,n as delay,s as encodeParams,u as isAbsoluteURL,m as isArray,h as isObj,d as isXiorError,a as joinPath,p as keys,l as trimUndefined}; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
250831
57
1518
2047