@vueuse/integrations 9.11.1 → 9.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs CHANGED
@@ -34,6 +34,7 @@ var __spreadValues$5 = (a, b) => {
34
34
  return a;
35
35
  };
36
36
  var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
37
+ const AsyncValidatorSchema = Schema || Schema.default;
37
38
  function useAsyncValidator(value, rules, options = {}) {
38
39
  const errorInfo = vueDemi.ref();
39
40
  const isFinished = vueDemi.ref(false);
@@ -50,7 +51,7 @@ function useAsyncValidator(value, rules, options = {}) {
50
51
  vueDemi.watchEffect(async () => {
51
52
  isFinished.value = false;
52
53
  pass.value = false;
53
- const validator = new Schema(shared.resolveUnref(rules));
54
+ const validator = new AsyncValidatorSchema(shared.resolveUnref(rules));
54
55
  try {
55
56
  await validator.validate(shared.resolveUnref(value), validateOption);
56
57
  pass.value = true;
@@ -124,11 +125,13 @@ function useAxios(...args) {
124
125
  const isLoading = vueDemi.ref(false);
125
126
  const isAborted = vueDemi.ref(false);
126
127
  const error = vueDemi.shallowRef();
127
- const cancelToken = axios.CancelToken.source();
128
+ const cancelTokenSource = axios.CancelToken.source;
129
+ let cancelToken = cancelTokenSource();
128
130
  const abort = (message) => {
129
131
  if (isFinished.value || !isLoading.value)
130
132
  return;
131
133
  cancelToken.cancel(message);
134
+ cancelToken = cancelTokenSource();
132
135
  isAborted.value = true;
133
136
  isLoading.value = false;
134
137
  isFinished.value = false;
@@ -149,12 +152,18 @@ function useAxios(...args) {
149
152
  isFinished.value = true;
150
153
  return { then };
151
154
  }
155
+ abort();
152
156
  loading(true);
153
157
  instance(_url, __spreadProps$1(__spreadValues$4(__spreadValues$4({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
158
+ var _a;
154
159
  response.value = r;
155
- data.value = r.data;
160
+ const result2 = r.data;
161
+ data.value = result2;
162
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
156
163
  }).catch((e) => {
164
+ var _a;
157
165
  error.value = e;
166
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
158
167
  }).finally(() => loading(false));
159
168
  return { then };
160
169
  };
package/index.d.ts CHANGED
@@ -110,7 +110,7 @@ interface EasyUseAxiosReturn<T, R, D> extends UseAxiosReturn<T, R, D> {
110
110
  */
111
111
  execute: (url: string, config?: RawAxiosRequestConfig<D>) => PromiseLike<EasyUseAxiosReturn<T, R, D>>;
112
112
  }
113
- interface UseAxiosOptions {
113
+ interface UseAxiosOptions<T = any> {
114
114
  /**
115
115
  * Will automatically run axios request when `useAxios` is used
116
116
  *
@@ -122,10 +122,18 @@ interface UseAxiosOptions {
122
122
  * @default true
123
123
  */
124
124
  shallow?: boolean;
125
+ /**
126
+ * Callback when error is caught.
127
+ */
128
+ onError?: (e: unknown) => void;
129
+ /**
130
+ * Callback when success is caught.
131
+ */
132
+ onSuccess?: (data: T) => void;
125
133
  }
126
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config?: RawAxiosRequestConfig<D>, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
127
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, instance?: AxiosInstance, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
128
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config: RawAxiosRequestConfig<D>, instance: AxiosInstance, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
134
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config?: RawAxiosRequestConfig<D>, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
135
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, instance?: AxiosInstance, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
136
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config: RawAxiosRequestConfig<D>, instance: AxiosInstance, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
129
137
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(config?: RawAxiosRequestConfig<D>): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
130
138
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(instance?: AxiosInstance): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
131
139
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(config?: RawAxiosRequestConfig<D>, instance?: AxiosInstance): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
package/index.iife.js CHANGED
@@ -134,6 +134,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
134
134
  return a;
135
135
  };
136
136
  var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
137
+ const AsyncValidatorSchema = Schema || Schema.default;
137
138
  function useAsyncValidator(value, rules, options = {}) {
138
139
  const errorInfo = vueDemi.ref();
139
140
  const isFinished = vueDemi.ref(false);
@@ -150,7 +151,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
150
151
  vueDemi.watchEffect(async () => {
151
152
  isFinished.value = false;
152
153
  pass.value = false;
153
- const validator = new Schema(shared.resolveUnref(rules));
154
+ const validator = new AsyncValidatorSchema(shared.resolveUnref(rules));
154
155
  try {
155
156
  await validator.validate(shared.resolveUnref(value), validateOption);
156
157
  pass.value = true;
@@ -224,11 +225,13 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
224
225
  const isLoading = vueDemi.ref(false);
225
226
  const isAborted = vueDemi.ref(false);
226
227
  const error = vueDemi.shallowRef();
227
- const cancelToken = axios.CancelToken.source();
228
+ const cancelTokenSource = axios.CancelToken.source;
229
+ let cancelToken = cancelTokenSource();
228
230
  const abort = (message) => {
229
231
  if (isFinished.value || !isLoading.value)
230
232
  return;
231
233
  cancelToken.cancel(message);
234
+ cancelToken = cancelTokenSource();
232
235
  isAborted.value = true;
233
236
  isLoading.value = false;
234
237
  isFinished.value = false;
@@ -249,12 +252,18 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
249
252
  isFinished.value = true;
250
253
  return { then };
251
254
  }
255
+ abort();
252
256
  loading(true);
253
257
  instance(_url, __spreadProps$1(__spreadValues$4(__spreadValues$4({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
258
+ var _a;
254
259
  response.value = r;
255
- data.value = r.data;
260
+ const result2 = r.data;
261
+ data.value = result2;
262
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
256
263
  }).catch((e) => {
264
+ var _a;
257
265
  error.value = e;
266
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
258
267
  }).finally(() => loading(false));
259
268
  return { then };
260
269
  };
package/index.iife.min.js CHANGED
@@ -1 +1 @@
1
- var VueDemi=function(s,o,S){if(s.install)return s;if(!o)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),s;if(o.version.slice(0,4)==="2.7."){let p=function(C,$){var P,U={},R={config:o.config,use:o.use.bind(o),mixin:o.mixin.bind(o),component:o.component.bind(o),provide:function(y,A){return U[y]=A,this},directive:function(y,A){return A?(o.directive(y,A),R):o.directive(y)},mount:function(y,A){return P||(P=new o(Object.assign({propsData:$},C,{provide:Object.assign(U,C.provide)})),P.$mount(y,A),P)},unmount:function(){P&&(P.$destroy(),P=void 0)}};return R};var I=p;for(var a in o)s[a]=o[a];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=o,s.Vue2=o,s.version=o.version,s.warn=o.util.warn,s.createApp=p}else if(o.version.slice(0,2)==="2.")if(S){for(var a in S)s[a]=S[a];s.isVue2=!0,s.isVue3=!1,s.install=function(){},s.Vue=o,s.Vue2=o,s.version=o.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(o.version.slice(0,2)==="3."){for(var a in o)s[a]=o[a];s.isVue2=!1,s.isVue3=!0,s.install=function(){},s.Vue=o,s.Vue2=void 0,s.version=o.version,s.set=function(p,C,$){return Array.isArray(p)?(p.length=Math.max(p.length,C),p.splice(C,1,$),$):(p[C]=$,$)},s.del=function(p,C){if(Array.isArray(p)){p.splice(C,1);return}delete p[C]}}else console.error("[vue-demi] Vue version "+o.version+" is unsupported.");return s}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(s,o,S,a,I,p,C,$,P,U,R,y,A,g,ne){"use strict";var oe=Object.defineProperty,ae=Object.defineProperties,se=Object.getOwnPropertyDescriptors,J=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,ue=Object.prototype.propertyIsEnumerable,Q=(t,r,e)=>r in t?oe(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,ce=(t,r)=>{for(var e in r||(r={}))le.call(r,e)&&Q(t,e,r[e]);if(J)for(var e of J(r))ue.call(r,e)&&Q(t,e,r[e]);return t},ie=(t,r)=>ae(t,se(r));function fe(t,r,e={}){const n=a.ref(),l=a.ref(!1),d=a.ref(!1),c=a.computed(()=>{var f;return((f=n.value)==null?void 0:f.errors)||[]}),i=a.computed(()=>{var f;return((f=n.value)==null?void 0:f.fields)||{}}),{validateOption:u={}}=e;a.watchEffect(async()=>{l.value=!1,d.value=!1;const f=new S(o.resolveUnref(r));try{await f.validate(o.resolveUnref(t),u),d.value=!0,n.value=null}catch(w){n.value=w}finally{l.value=!0}});const _={pass:d,isFinished:l,errorInfo:n,errors:c,errorFields:i};function h(){return new Promise((f,w)=>{o.until(l).toBe(!0).then(()=>f(_)).catch(m=>w(m))})}return ie(ce({},_),{then(f,w){return h().then(f,w)}})}var ve=Object.defineProperty,de=Object.defineProperties,pe=Object.getOwnPropertyDescriptors,z=Object.getOwnPropertySymbols,_e=Object.prototype.hasOwnProperty,we=Object.prototype.propertyIsEnumerable,W=(t,r,e)=>r in t?ve(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,B=(t,r)=>{for(var e in r||(r={}))_e.call(r,e)&&W(t,e,r[e]);if(z)for(var e of z(r))we.call(r,e)&&W(t,e,r[e]);return t},M=(t,r)=>de(t,pe(r));function Oe(...t){const r=typeof t[0]=="string"?t[0]:void 0,e=o.isString(r)?1:0;let n={},l=I,d={immediate:!!e,shallow:!0};const c=O=>!!(O==null?void 0:O.request);t.length>0+e&&(c(t[0+e])?l=t[0+e]:n=t[0+e]),t.length>1+e&&c(t[1+e])&&(l=t[1+e]),(t.length===2+e&&!c(t[1+e])||t.length===3+e)&&(d=t[t.length-1]);const i=a.shallowRef(),u=d.shallow?a.shallowRef():a.ref(),_=a.ref(!1),h=a.ref(!1),f=a.ref(!1),w=a.shallowRef(),m=I.CancelToken.source(),N=O=>{_.value||!h.value||(m.cancel(O),f.value=!0,h.value=!1,_.value=!1)},L=O=>{h.value=O,_.value=!O},G=()=>new Promise((O,b)=>{o.until(_).toBe(!0).then(()=>O(T)).catch(b)}),j=(O,b)=>G().then(O,b),H=(O=r,b={})=>{w.value=void 0;const v=typeof O=="string"?O:r??b.url;return v===void 0?(w.value=new I.AxiosError(I.AxiosError.ERR_INVALID_URL),_.value=!0,{then:j}):(L(!0),l(v,M(B(B({},n),typeof O=="object"?O:b),{cancelToken:m.token})).then(E=>{i.value=E,u.value=E.data}).catch(E=>{w.value=E}).finally(()=>L(!1)),{then:j})};d.immediate&&r&&H();const T={response:i,data:u,error:w,finished:_,loading:h,isFinished:_,isLoading:h,cancel:N,isAborted:f,canceled:f,aborted:f,isCanceled:f,abort:N,execute:H};return M(B({},T),{then:j})}var q=Object.freeze({__proto__:null,camelCase:p.camelCase,capitalCase:p.capitalCase,constantCase:p.constantCase,dotCase:p.dotCase,headerCase:p.headerCase,noCase:p.noCase,paramCase:p.paramCase,pascalCase:p.pascalCase,pathCase:p.pathCase,sentenceCase:p.sentenceCase,snakeCase:p.snakeCase});function Pe(t,r,e){if(o.isFunction(t))return a.computed(()=>q[r](o.resolveUnref(t),e));const n=a.ref(t);return a.computed({get(){return q[r](n.value,e)},set(l){n.value=l}})}var he=Object.defineProperty,X=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,Ce=Object.prototype.propertyIsEnumerable,Y=(t,r,e)=>r in t?he(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Z=(t,r)=>{for(var e in r||(r={}))ye.call(r,e)&&Y(t,e,r[e]);if(X)for(var e of X(r))Ce.call(r,e)&&Y(t,e,r[e]);return t};function ge(t){const r=new C(t?t.headers.cookie:null);return(e,{doNotParse:n=!1,autoUpdateDependencies:l=!1}={})=>k(e,{doNotParse:n,autoUpdateDependencies:l},r)}function k(t,{doNotParse:r=!1,autoUpdateDependencies:e=!1}={},n=new C){const l=e?[...t||[]]:t;let d=n.getAll({doNotParse:!0});const c=a.ref(0),i=()=>{const u=n.getAll({doNotParse:!0});me(l||null,u,d)&&c.value++,d=u};return n.addChangeListener(i),o.tryOnScopeDispose(()=>{n.removeChangeListener(i)}),{get:(...u)=>(e&&l&&!l.includes(u[0])&&l.push(u[0]),c.value,n.get(u[0],Z({doNotParse:r},u[1]))),getAll:(...u)=>(c.value,n.getAll(Z({doNotParse:r},u[0]))),set:(...u)=>n.set(...u),remove:(...u)=>n.remove(...u),addChangeListener:(...u)=>n.addChangeListener(...u),removeChangeListener:(...u)=>n.removeChangeListener(...u)}}function me(t,r,e){if(!t)return!0;for(const n of t)if(r[n]!==e[n])return!0;return!1}var be=Object.defineProperty,K=Object.getOwnPropertySymbols,Ee=Object.prototype.hasOwnProperty,$e=Object.prototype.propertyIsEnumerable,x=(t,r,e)=>r in t?be(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Ae=(t,r)=>{for(var e in r||(r={}))Ee.call(r,e)&&x(t,e,r[e]);if(K)for(var e of K(r))$e.call(r,e)&&x(t,e,r[e]);return t};function Se(t,r){const e=a.ref();let n=[];const l=P.createEventHook(),d=P.createEventHook(),c=P.createEventHook(),i=P.createEventHook(),u=P.createEventHook(),_=a.ref(!1),h=a.ref(!1),f=a.ref(!1),w=a.ref(!1),m=a.ref({color:"black",size:3,arrowEnd:!1,cornerRadius:0,dasharray:void 0,fill:"transparent",mode:"draw"});a.watch(m,()=>{const v=e.value;v&&(v.brush=m.value,v.mode=m.value.mode)},{deep:!0});const N=()=>{var v;return(v=e.value)==null?void 0:v.undo()},L=()=>{var v;return(v=e.value)==null?void 0:v.redo()},G=()=>{var v;return(v=e.value)==null?void 0:v.clear()},j=()=>{var v;return(v=e.value)==null?void 0:v.cancel()},H=v=>{var E;return(E=e.value)==null?void 0:E.load(v)},T=()=>{var v;return(v=e.value)==null?void 0:v.dump()},O=()=>{var v;n.forEach(E=>E()),(v=e.value)==null||v.unmount()},b=()=>{e.value&&(_.value=e.value.canUndo(),h.value=e.value.canRedo(),f.value=e.value.altPressed,w.value=e.value.shiftPressed)};return a.watch(()=>P.unrefElement(t),v=>{!v||typeof SVGSVGElement=="undefined"||!(v instanceof SVGSVGElement)||(e.value&&O(),e.value=$.createDrauu(Ae({el:v},r)),b(),n=[e.value.on("canceled",()=>d.trigger()),e.value.on("committed",()=>c.trigger()),e.value.on("start",()=>i.trigger()),e.value.on("end",()=>u.trigger()),e.value.on("changed",()=>{b(),l.trigger()})])},{flush:"post"}),o.tryOnScopeDispose(()=>O()),{drauuInstance:e,load:H,dump:T,clear:G,cancel:j,undo:N,redo:L,canUndo:_,canRedo:h,brush:m,onChanged:l.on,onCommitted:c.on,onStart:i.on,onEnd:u.on,onCanceled:d.on}}var je=Object.defineProperty,Ie=Object.defineProperties,Ue=Object.getOwnPropertyDescriptors,F=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,D=Object.prototype.propertyIsEnumerable,ee=(t,r,e)=>r in t?je(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Re=(t,r)=>{for(var e in r||(r={}))V.call(r,e)&&ee(t,e,r[e]);if(F)for(var e of F(r))D.call(r,e)&&ee(t,e,r[e]);return t},Fe=(t,r)=>Ie(t,Ue(r)),Ne=(t,r)=>{var e={};for(var n in t)V.call(t,n)&&r.indexOf(n)<0&&(e[n]=t[n]);if(t!=null&&F)for(var n of F(t))r.indexOf(n)<0&&D.call(t,n)&&(e[n]=t[n]);return e};function Le(t,r={}){let e;const n=r,{immediate:l}=n,d=Ne(n,["immediate"]),c=a.ref(!1),i=a.ref(!1),u=w=>e&&e.activate(w),_=w=>e&&e.deactivate(w),h=()=>{e&&(e.pause(),i.value=!0)},f=()=>{e&&(e.unpause(),i.value=!1)};return a.watch(()=>P.unrefElement(t),w=>{!w||(e=U.createFocusTrap(w,Fe(Re({},d),{onActivate(){c.value=!0,r.onActivate&&r.onActivate()},onDeactivate(){c.value=!1,r.onDeactivate&&r.onDeactivate()}})),l&&u())},{flush:"post"}),P.tryOnScopeDispose(()=>_()),{hasFocus:c,isPaused:i,activate:u,deactivate:_,pause:h,unpause:f}}function He(t,r,e){const n=()=>{var c,i;return new R((c=o.resolveUnref(r))!=null?c:[],(i=o.resolveUnref(e))==null?void 0:i.fuseOptions)},l=a.ref(n());a.watch(()=>{var c;return(c=o.resolveUnref(e))==null?void 0:c.fuseOptions},()=>{l.value=n()},{deep:!0}),a.watch(()=>o.resolveUnref(r),c=>{l.value.setCollection(c)},{deep:!0});const d=a.computed(()=>{const c=o.resolveUnref(e);if((c==null?void 0:c.matchAllWhenSearchEmpty)&&!a.unref(t))return o.resolveUnref(r).map((u,_)=>({item:u,refIndex:_}));const i=c==null?void 0:c.resultLimit;return l.value.search(o.resolveUnref(t),i?{limit:i}:void 0)});return{fuse:l,results:d}}var Te=Object.defineProperty,re=Object.getOwnPropertySymbols,Be=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable,te=(t,r,e)=>r in t?Te(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Je=(t,r)=>{for(var e in r||(r={}))Be.call(r,e)&&te(t,e,r[e]);if(re)for(var e of re(r))Ge.call(r,e)&&te(t,e,r[e]);return t};function Qe(t,r,e={}){const{flush:n="pre",deep:l=!0,shallow:d,onError:c=f=>{console.error(f)}}=e,i=(d?a.shallowRef:a.ref)(r),u=o.resolveUnref(r);async function _(){try{const f=await y.get(t);f===void 0?u!=null&&await y.set(t,u):i.value=f}catch(f){c(f)}}_();async function h(){try{i.value==null?await y.del(t):Array.isArray(i.value)?await y.update(t,()=>JSON.parse(JSON.stringify(i.value))):typeof i.value=="object"?await y.update(t,()=>Je({},i.value)):await y.update(t,()=>i.value)}catch(f){c(f)}}return a.watch(i,()=>h(),{flush:n,deep:l}),i}function ze(t,r={}){const{onError:e,fallbackValue:n=null}=r,l=(i,u)=>{try{return A(i,u)}catch(_){return e==null||e(_),n}},d=a.computed(()=>l(o.resolveUnref(t),{header:!0})),c=a.computed(()=>l(o.resolveUnref(t)));return{header:d,payload:c}}function We(t=null,r){const e=a.ref(t),n=a.computed({set:d=>d?g.start():g.done(),get:()=>o.isNumber(e.value)&&e.value<1});r&&g.configure(r);const l=g.set;return g.set=d=>(e.value=d,l.call(g,d)),a.watchEffect(()=>{o.isNumber(e.value)&&o.isClient&&l.call(g,e.value)}),o.tryOnScopeDispose(g.remove),{isLoading:n,progress:e,start:g.start,done:g.done,remove:()=>{e.value=null,g.remove()}}}function Me(t,r){const e=o.resolveRef(t),n=a.ref("");return a.watch(e,async l=>{e.value&&o.isClient&&(n.value=await ne.toDataURL(l,r))},{immediate:!0}),n}s.createCookies=ge,s.useAsyncValidator=fe,s.useAxios=Oe,s.useChangeCase=Pe,s.useCookies=k,s.useDrauu=Se,s.useFocusTrap=Le,s.useFuse=He,s.useIDBKeyval=Qe,s.useJwt=ze,s.useNProgress=We,s.useQRCode=Me})(this.VueUse=this.VueUse||{},VueUse,AsyncValidator,VueDemi,axios,changeCase,UniversalCookie,Drauu,VueUse,focusTrap,Fuse,idbKeyval,jwt_decode,nprogress,QRCode);
1
+ var VueDemi=function(l,o,A){if(l.install)return l;if(!o)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),l;if(o.version.slice(0,4)==="2.7."){let p=function(C,b){var P,L={},H={config:o.config,use:o.use.bind(o),mixin:o.mixin.bind(o),component:o.component.bind(o),provide:function(y,E){return L[y]=E,this},directive:function(y,E){return E?(o.directive(y,E),H):o.directive(y)},mount:function(y,E){return P||(P=new o(Object.assign({propsData:b},C,{provide:Object.assign(L,C.provide)})),P.$mount(y,E),P)},unmount:function(){P&&(P.$destroy(),P=void 0)}};return H};var N=p;for(var a in o)l[a]=o[a];l.isVue2=!0,l.isVue3=!1,l.install=function(){},l.Vue=o,l.Vue2=o,l.version=o.version,l.warn=o.util.warn,l.createApp=p}else if(o.version.slice(0,2)==="2.")if(A){for(var a in A)l[a]=A[a];l.isVue2=!0,l.isVue3=!1,l.install=function(){},l.Vue=o,l.Vue2=o,l.version=o.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(o.version.slice(0,2)==="3."){for(var a in o)l[a]=o[a];l.isVue2=!1,l.isVue3=!0,l.install=function(){},l.Vue=o,l.Vue2=void 0,l.version=o.version,l.set=function(p,C,b){return Array.isArray(p)?(p.length=Math.max(p.length,C),p.splice(C,1,b),b):(p[C]=b,b)},l.del=function(p,C){if(Array.isArray(p)){p.splice(C,1);return}delete p[C]}}else console.error("[vue-demi] Vue version "+o.version+" is unsupported.");return l}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(l,o,A,a,N,p,C,b,P,L,H,y,E,g,le){"use strict";var se=Object.defineProperty,ue=Object.defineProperties,ce=Object.getOwnPropertyDescriptors,z=Object.getOwnPropertySymbols,ie=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,W=(t,r,e)=>r in t?se(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,ve=(t,r)=>{for(var e in r||(r={}))ie.call(r,e)&&W(t,e,r[e]);if(z)for(var e of z(r))fe.call(r,e)&&W(t,e,r[e]);return t},de=(t,r)=>ue(t,ce(r));const pe=A||A.default;function _e(t,r,e={}){const n=a.ref(),s=a.ref(!1),v=a.ref(!1),c=a.computed(()=>{var d;return((d=n.value)==null?void 0:d.errors)||[]}),f=a.computed(()=>{var d;return((d=n.value)==null?void 0:d.fields)||{}}),{validateOption:u={}}=e;a.watchEffect(async()=>{s.value=!1,v.value=!1;const d=new pe(o.resolveUnref(r));try{await d.validate(o.resolveUnref(t),u),v.value=!0,n.value=null}catch(w){n.value=w}finally{s.value=!0}});const _={pass:v,isFinished:s,errorInfo:n,errors:c,errorFields:f};function h(){return new Promise((d,w)=>{o.until(s).toBe(!0).then(()=>d(_)).catch(m=>w(m))})}return de(ve({},_),{then(d,w){return h().then(d,w)}})}var we=Object.defineProperty,Oe=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,M=Object.getOwnPropertySymbols,he=Object.prototype.hasOwnProperty,ye=Object.prototype.propertyIsEnumerable,k=(t,r,e)=>r in t?we(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,J=(t,r)=>{for(var e in r||(r={}))he.call(r,e)&&k(t,e,r[e]);if(M)for(var e of M(r))ye.call(r,e)&&k(t,e,r[e]);return t},q=(t,r)=>Oe(t,Pe(r));function Ce(...t){const r=typeof t[0]=="string"?t[0]:void 0,e=o.isString(r)?1:0;let n={},s=N,v={immediate:!!e,shallow:!0};const c=O=>!!(O==null?void 0:O.request);t.length>0+e&&(c(t[0+e])?s=t[0+e]:n=t[0+e]),t.length>1+e&&c(t[1+e])&&(s=t[1+e]),(t.length===2+e&&!c(t[1+e])||t.length===3+e)&&(v=t[t.length-1]);const f=a.shallowRef(),u=v.shallow?a.shallowRef():a.ref(),_=a.ref(!1),h=a.ref(!1),d=a.ref(!1),w=a.shallowRef(),m=N.CancelToken.source;let $=m();const j=O=>{_.value||!h.value||($.cancel(O),$=m(),d.value=!0,h.value=!1,_.value=!1)},B=O=>{h.value=O,_.value=!O},Q=()=>new Promise((O,i)=>{o.until(_).toBe(!0).then(()=>O(U)).catch(i)}),I=(O,i)=>Q().then(O,i),G=(O=r,i={})=>{w.value=void 0;const S=typeof O=="string"?O:r??i.url;return S===void 0?(w.value=new N.AxiosError(N.AxiosError.ERR_INVALID_URL),_.value=!0,{then:I}):(j(),B(!0),s(S,q(J(J({},n),typeof O=="object"?O:i),{cancelToken:$.token})).then(R=>{var F;f.value=R;const ae=R.data;u.value=ae,(F=v.onSuccess)==null||F.call(v,ae)}).catch(R=>{var F;w.value=R,(F=v.onError)==null||F.call(v,R)}).finally(()=>B(!1)),{then:I})};v.immediate&&r&&G();const U={response:f,data:u,error:w,finished:_,loading:h,isFinished:_,isLoading:h,cancel:j,isAborted:d,canceled:d,aborted:d,isCanceled:d,abort:j,execute:G};return q(J({},U),{then:I})}var X=Object.freeze({__proto__:null,camelCase:p.camelCase,capitalCase:p.capitalCase,constantCase:p.constantCase,dotCase:p.dotCase,headerCase:p.headerCase,noCase:p.noCase,paramCase:p.paramCase,pascalCase:p.pascalCase,pathCase:p.pathCase,sentenceCase:p.sentenceCase,snakeCase:p.snakeCase});function ge(t,r,e){if(o.isFunction(t))return a.computed(()=>X[r](o.resolveUnref(t),e));const n=a.ref(t);return a.computed({get(){return X[r](n.value,e)},set(s){n.value=s}})}var me=Object.defineProperty,Y=Object.getOwnPropertySymbols,be=Object.prototype.hasOwnProperty,Ee=Object.prototype.propertyIsEnumerable,Z=(t,r,e)=>r in t?me(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,K=(t,r)=>{for(var e in r||(r={}))be.call(r,e)&&Z(t,e,r[e]);if(Y)for(var e of Y(r))Ee.call(r,e)&&Z(t,e,r[e]);return t};function Se(t){const r=new C(t?t.headers.cookie:null);return(e,{doNotParse:n=!1,autoUpdateDependencies:s=!1}={})=>x(e,{doNotParse:n,autoUpdateDependencies:s},r)}function x(t,{doNotParse:r=!1,autoUpdateDependencies:e=!1}={},n=new C){const s=e?[...t||[]]:t;let v=n.getAll({doNotParse:!0});const c=a.ref(0),f=()=>{const u=n.getAll({doNotParse:!0});Ae(s||null,u,v)&&c.value++,v=u};return n.addChangeListener(f),o.tryOnScopeDispose(()=>{n.removeChangeListener(f)}),{get:(...u)=>(e&&s&&!s.includes(u[0])&&s.push(u[0]),c.value,n.get(u[0],K({doNotParse:r},u[1]))),getAll:(...u)=>(c.value,n.getAll(K({doNotParse:r},u[0]))),set:(...u)=>n.set(...u),remove:(...u)=>n.remove(...u),addChangeListener:(...u)=>n.addChangeListener(...u),removeChangeListener:(...u)=>n.removeChangeListener(...u)}}function Ae(t,r,e){if(!t)return!0;for(const n of t)if(r[n]!==e[n])return!0;return!1}var $e=Object.defineProperty,V=Object.getOwnPropertySymbols,je=Object.prototype.hasOwnProperty,Ie=Object.prototype.propertyIsEnumerable,D=(t,r,e)=>r in t?$e(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Ue=(t,r)=>{for(var e in r||(r={}))je.call(r,e)&&D(t,e,r[e]);if(V)for(var e of V(r))Ie.call(r,e)&&D(t,e,r[e]);return t};function Re(t,r){const e=a.ref();let n=[];const s=P.createEventHook(),v=P.createEventHook(),c=P.createEventHook(),f=P.createEventHook(),u=P.createEventHook(),_=a.ref(!1),h=a.ref(!1),d=a.ref(!1),w=a.ref(!1),m=a.ref({color:"black",size:3,arrowEnd:!1,cornerRadius:0,dasharray:void 0,fill:"transparent",mode:"draw"});a.watch(m,()=>{const i=e.value;i&&(i.brush=m.value,i.mode=m.value.mode)},{deep:!0});const $=()=>{var i;return(i=e.value)==null?void 0:i.undo()},j=()=>{var i;return(i=e.value)==null?void 0:i.redo()},B=()=>{var i;return(i=e.value)==null?void 0:i.clear()},Q=()=>{var i;return(i=e.value)==null?void 0:i.cancel()},I=i=>{var S;return(S=e.value)==null?void 0:S.load(i)},G=()=>{var i;return(i=e.value)==null?void 0:i.dump()},U=()=>{var i;n.forEach(S=>S()),(i=e.value)==null||i.unmount()},O=()=>{e.value&&(_.value=e.value.canUndo(),h.value=e.value.canRedo(),d.value=e.value.altPressed,w.value=e.value.shiftPressed)};return a.watch(()=>P.unrefElement(t),i=>{!i||typeof SVGSVGElement=="undefined"||!(i instanceof SVGSVGElement)||(e.value&&U(),e.value=b.createDrauu(Ue({el:i},r)),O(),n=[e.value.on("canceled",()=>v.trigger()),e.value.on("committed",()=>c.trigger()),e.value.on("start",()=>f.trigger()),e.value.on("end",()=>u.trigger()),e.value.on("changed",()=>{O(),s.trigger()})])},{flush:"post"}),o.tryOnScopeDispose(()=>U()),{drauuInstance:e,load:I,dump:G,clear:B,cancel:Q,undo:$,redo:j,canUndo:_,canRedo:h,brush:m,onChanged:s.on,onCommitted:c.on,onStart:f.on,onEnd:u.on,onCanceled:v.on}}var Fe=Object.defineProperty,Ne=Object.defineProperties,Le=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,ee=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable,te=(t,r,e)=>r in t?Fe(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,He=(t,r)=>{for(var e in r||(r={}))ee.call(r,e)&&te(t,e,r[e]);if(T)for(var e of T(r))re.call(r,e)&&te(t,e,r[e]);return t},Te=(t,r)=>Ne(t,Le(r)),Be=(t,r)=>{var e={};for(var n in t)ee.call(t,n)&&r.indexOf(n)<0&&(e[n]=t[n]);if(t!=null&&T)for(var n of T(t))r.indexOf(n)<0&&re.call(t,n)&&(e[n]=t[n]);return e};function Ge(t,r={}){let e;const n=r,{immediate:s}=n,v=Be(n,["immediate"]),c=a.ref(!1),f=a.ref(!1),u=w=>e&&e.activate(w),_=w=>e&&e.deactivate(w),h=()=>{e&&(e.pause(),f.value=!0)},d=()=>{e&&(e.unpause(),f.value=!1)};return a.watch(()=>P.unrefElement(t),w=>{!w||(e=L.createFocusTrap(w,Te(He({},v),{onActivate(){c.value=!0,r.onActivate&&r.onActivate()},onDeactivate(){c.value=!1,r.onDeactivate&&r.onDeactivate()}})),s&&u())},{flush:"post"}),P.tryOnScopeDispose(()=>_()),{hasFocus:c,isPaused:f,activate:u,deactivate:_,pause:h,unpause:d}}function Je(t,r,e){const n=()=>{var c,f;return new H((c=o.resolveUnref(r))!=null?c:[],(f=o.resolveUnref(e))==null?void 0:f.fuseOptions)},s=a.ref(n());a.watch(()=>{var c;return(c=o.resolveUnref(e))==null?void 0:c.fuseOptions},()=>{s.value=n()},{deep:!0}),a.watch(()=>o.resolveUnref(r),c=>{s.value.setCollection(c)},{deep:!0});const v=a.computed(()=>{const c=o.resolveUnref(e);if((c==null?void 0:c.matchAllWhenSearchEmpty)&&!a.unref(t))return o.resolveUnref(r).map((u,_)=>({item:u,refIndex:_}));const f=c==null?void 0:c.resultLimit;return s.value.search(o.resolveUnref(t),f?{limit:f}:void 0)});return{fuse:s,results:v}}var Qe=Object.defineProperty,ne=Object.getOwnPropertySymbols,ze=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable,oe=(t,r,e)=>r in t?Qe(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,Me=(t,r)=>{for(var e in r||(r={}))ze.call(r,e)&&oe(t,e,r[e]);if(ne)for(var e of ne(r))We.call(r,e)&&oe(t,e,r[e]);return t};function ke(t,r,e={}){const{flush:n="pre",deep:s=!0,shallow:v,onError:c=d=>{console.error(d)}}=e,f=(v?a.shallowRef:a.ref)(r),u=o.resolveUnref(r);async function _(){try{const d=await y.get(t);d===void 0?u!=null&&await y.set(t,u):f.value=d}catch(d){c(d)}}_();async function h(){try{f.value==null?await y.del(t):Array.isArray(f.value)?await y.update(t,()=>JSON.parse(JSON.stringify(f.value))):typeof f.value=="object"?await y.update(t,()=>Me({},f.value)):await y.update(t,()=>f.value)}catch(d){c(d)}}return a.watch(f,()=>h(),{flush:n,deep:s}),f}function qe(t,r={}){const{onError:e,fallbackValue:n=null}=r,s=(f,u)=>{try{return E(f,u)}catch(_){return e==null||e(_),n}},v=a.computed(()=>s(o.resolveUnref(t),{header:!0})),c=a.computed(()=>s(o.resolveUnref(t)));return{header:v,payload:c}}function Xe(t=null,r){const e=a.ref(t),n=a.computed({set:v=>v?g.start():g.done(),get:()=>o.isNumber(e.value)&&e.value<1});r&&g.configure(r);const s=g.set;return g.set=v=>(e.value=v,s.call(g,v)),a.watchEffect(()=>{o.isNumber(e.value)&&o.isClient&&s.call(g,e.value)}),o.tryOnScopeDispose(g.remove),{isLoading:n,progress:e,start:g.start,done:g.done,remove:()=>{e.value=null,g.remove()}}}function Ye(t,r){const e=o.resolveRef(t),n=a.ref("");return a.watch(e,async s=>{e.value&&o.isClient&&(n.value=await le.toDataURL(s,r))},{immediate:!0}),n}l.createCookies=Se,l.useAsyncValidator=_e,l.useAxios=Ce,l.useChangeCase=ge,l.useCookies=x,l.useDrauu=Re,l.useFocusTrap=Ge,l.useFuse=Je,l.useIDBKeyval=ke,l.useJwt=qe,l.useNProgress=Xe,l.useQRCode=Ye})(this.VueUse=this.VueUse||{},VueUse,AsyncValidator,VueDemi,axios,changeCase,UniversalCookie,Drauu,VueUse,focusTrap,Fuse,idbKeyval,jwt_decode,nprogress,QRCode);
package/index.mjs CHANGED
@@ -32,6 +32,7 @@ var __spreadValues$5 = (a, b) => {
32
32
  return a;
33
33
  };
34
34
  var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b));
35
+ const AsyncValidatorSchema = Schema || Schema.default;
35
36
  function useAsyncValidator(value, rules, options = {}) {
36
37
  const errorInfo = ref();
37
38
  const isFinished = ref(false);
@@ -48,7 +49,7 @@ function useAsyncValidator(value, rules, options = {}) {
48
49
  watchEffect(async () => {
49
50
  isFinished.value = false;
50
51
  pass.value = false;
51
- const validator = new Schema(resolveUnref(rules));
52
+ const validator = new AsyncValidatorSchema(resolveUnref(rules));
52
53
  try {
53
54
  await validator.validate(resolveUnref(value), validateOption);
54
55
  pass.value = true;
@@ -122,11 +123,13 @@ function useAxios(...args) {
122
123
  const isLoading = ref(false);
123
124
  const isAborted = ref(false);
124
125
  const error = shallowRef();
125
- const cancelToken = axios.CancelToken.source();
126
+ const cancelTokenSource = axios.CancelToken.source;
127
+ let cancelToken = cancelTokenSource();
126
128
  const abort = (message) => {
127
129
  if (isFinished.value || !isLoading.value)
128
130
  return;
129
131
  cancelToken.cancel(message);
132
+ cancelToken = cancelTokenSource();
130
133
  isAborted.value = true;
131
134
  isLoading.value = false;
132
135
  isFinished.value = false;
@@ -147,12 +150,18 @@ function useAxios(...args) {
147
150
  isFinished.value = true;
148
151
  return { then };
149
152
  }
153
+ abort();
150
154
  loading(true);
151
155
  instance(_url, __spreadProps$1(__spreadValues$4(__spreadValues$4({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
156
+ var _a;
152
157
  response.value = r;
153
- data.value = r.data;
158
+ const result2 = r.data;
159
+ data.value = result2;
160
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
154
161
  }).catch((e) => {
162
+ var _a;
155
163
  error.value = e;
164
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
156
165
  }).finally(() => loading(false));
157
166
  return { then };
158
167
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vueuse/integrations",
3
- "version": "9.11.1",
3
+ "version": "9.13.0",
4
4
  "description": "Integration wrappers for utility libraries",
5
5
  "author": "Anthony Fu <https://github.com/antfu>",
6
6
  "license": "MIT",
@@ -147,15 +147,15 @@
147
147
  }
148
148
  },
149
149
  "dependencies": {
150
- "@vueuse/core": "9.11.1",
151
- "@vueuse/shared": "9.11.1",
150
+ "@vueuse/core": "9.13.0",
151
+ "@vueuse/shared": "9.13.0",
152
152
  "vue-demi": "*"
153
153
  },
154
154
  "devDependencies": {
155
155
  "@types/nprogress": "^0.2.0",
156
156
  "@types/qrcode": "^1.5.0",
157
157
  "async-validator": "^4.2.5",
158
- "axios": "^1.2.3",
158
+ "axios": "^1.3.3",
159
159
  "change-case": "^4.1.2",
160
160
  "drauu": "^0.3.2",
161
161
  "focus-trap": "^7.2.0",
@@ -23,6 +23,7 @@ var __spreadValues = (a, b) => {
23
23
  return a;
24
24
  };
25
25
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
26
+ const AsyncValidatorSchema = Schema || Schema.default;
26
27
  function useAsyncValidator(value, rules, options = {}) {
27
28
  const errorInfo = vueDemi.ref();
28
29
  const isFinished = vueDemi.ref(false);
@@ -39,7 +40,7 @@ function useAsyncValidator(value, rules, options = {}) {
39
40
  vueDemi.watchEffect(async () => {
40
41
  isFinished.value = false;
41
42
  pass.value = false;
42
- const validator = new Schema(shared.resolveUnref(rules));
43
+ const validator = new AsyncValidatorSchema(shared.resolveUnref(rules));
43
44
  try {
44
45
  await validator.validate(shared.resolveUnref(value), validateOption);
45
46
  pass.value = true;
@@ -69,7 +70,7 @@ function useAsyncValidator(value, rules, options = {}) {
69
70
  });
70
71
  }
71
72
 
72
- const UseAsyncValidator = /* @__PURE__ */ vueDemi.defineComponent({
73
+ const UseAsyncValidator = /* @__PURE__ */ /* #__PURE__ */ vueDemi.defineComponent({
73
74
  name: "UseAsyncValidator",
74
75
  props: {
75
76
  form: {
@@ -21,6 +21,7 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ const AsyncValidatorSchema = Schema || Schema.default;
24
25
  function useAsyncValidator(value, rules, options = {}) {
25
26
  const errorInfo = ref();
26
27
  const isFinished = ref(false);
@@ -37,7 +38,7 @@ function useAsyncValidator(value, rules, options = {}) {
37
38
  watchEffect(async () => {
38
39
  isFinished.value = false;
39
40
  pass.value = false;
40
- const validator = new Schema(resolveUnref(rules));
41
+ const validator = new AsyncValidatorSchema(resolveUnref(rules));
41
42
  try {
42
43
  await validator.validate(resolveUnref(value), validateOption);
43
44
  pass.value = true;
@@ -67,7 +68,7 @@ function useAsyncValidator(value, rules, options = {}) {
67
68
  });
68
69
  }
69
70
 
70
- const UseAsyncValidator = /* @__PURE__ */ defineComponent({
71
+ const UseAsyncValidator = /* @__PURE__ */ /* #__PURE__ */ defineComponent({
71
72
  name: "UseAsyncValidator",
72
73
  props: {
73
74
  form: {
@@ -23,6 +23,7 @@ var __spreadValues = (a, b) => {
23
23
  return a;
24
24
  };
25
25
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
26
+ const AsyncValidatorSchema = Schema || Schema.default;
26
27
  function useAsyncValidator(value, rules, options = {}) {
27
28
  const errorInfo = vueDemi.ref();
28
29
  const isFinished = vueDemi.ref(false);
@@ -39,7 +40,7 @@ function useAsyncValidator(value, rules, options = {}) {
39
40
  vueDemi.watchEffect(async () => {
40
41
  isFinished.value = false;
41
42
  pass.value = false;
42
- const validator = new Schema(shared.resolveUnref(rules));
43
+ const validator = new AsyncValidatorSchema(shared.resolveUnref(rules));
43
44
  try {
44
45
  await validator.validate(shared.resolveUnref(value), validateOption);
45
46
  pass.value = true;
@@ -134,6 +134,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
134
134
  return a;
135
135
  };
136
136
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
137
+ const AsyncValidatorSchema = Schema || Schema.default;
137
138
  function useAsyncValidator(value, rules, options = {}) {
138
139
  const errorInfo = vueDemi.ref();
139
140
  const isFinished = vueDemi.ref(false);
@@ -150,7 +151,7 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
150
151
  vueDemi.watchEffect(async () => {
151
152
  isFinished.value = false;
152
153
  pass.value = false;
153
- const validator = new Schema(shared.resolveUnref(rules));
154
+ const validator = new AsyncValidatorSchema(shared.resolveUnref(rules));
154
155
  try {
155
156
  await validator.validate(shared.resolveUnref(value), validateOption);
156
157
  pass.value = true;
@@ -1 +1 @@
1
- var VueDemi=function(n,r,v){if(n.install)return n;if(!r)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),n;if(r.version.slice(0,4)==="2.7."){let o=function(i,c){var f,y={},p={config:r.config,use:r.use.bind(r),mixin:r.mixin.bind(r),component:r.component.bind(r),provide:function(u,d){return y[u]=d,this},directive:function(u,d){return d?(r.directive(u,d),p):r.directive(u)},mount:function(u,d){return f||(f=new r(Object.assign({propsData:c},i,{provide:Object.assign(y,i.provide)})),f.$mount(u,d),f)},unmount:function(){f&&(f.$destroy(),f=void 0)}};return p};var b=o;for(var e in r)n[e]=r[e];n.isVue2=!0,n.isVue3=!1,n.install=function(){},n.Vue=r,n.Vue2=r,n.version=r.version,n.warn=r.util.warn,n.createApp=o}else if(r.version.slice(0,2)==="2.")if(v){for(var e in v)n[e]=v[e];n.isVue2=!0,n.isVue3=!1,n.install=function(){},n.Vue=r,n.Vue2=r,n.version=r.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(r.version.slice(0,2)==="3."){for(var e in r)n[e]=r[e];n.isVue2=!1,n.isVue3=!0,n.install=function(){},n.Vue=r,n.Vue2=void 0,n.version=r.version,n.set=function(o,i,c){return Array.isArray(o)?(o.length=Math.max(o.length,i),o.splice(i,1,c),c):(o[i]=c,c)},n.del=function(o,i){if(Array.isArray(o)){o.splice(i,1);return}delete o[i]}}else console.error("[vue-demi] Vue version "+r.version+" is unsupported.");return n}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(n,r,v,e){"use strict";var b=Object.defineProperty,o=Object.defineProperties,i=Object.getOwnPropertyDescriptors,c=Object.getOwnPropertySymbols,f=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable,p=(a,t,s)=>t in a?b(a,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):a[t]=s,u=(a,t)=>{for(var s in t||(t={}))f.call(t,s)&&p(a,s,t[s]);if(c)for(var s of c(t))y.call(t,s)&&p(a,s,t[s]);return a},d=(a,t)=>o(a,i(t));function A(a,t,s={}){const _=e.ref(),w=e.ref(!1),O=e.ref(!1),j=e.computed(()=>{var l;return((l=_.value)==null?void 0:l.errors)||[]}),U=e.computed(()=>{var l;return((l=_.value)==null?void 0:l.fields)||{}}),{validateOption:g={}}=s;e.watchEffect(async()=>{w.value=!1,O.value=!1;const l=new v(r.resolveUnref(t));try{await l.validate(r.resolveUnref(a),g),O.value=!0,_.value=null}catch(h){_.value=h}finally{w.value=!0}});const P={pass:O,isFinished:w,errorInfo:_,errors:j,errorFields:U};function I(){return new Promise((l,h)=>{r.until(w).toBe(!0).then(()=>l(P)).catch(x=>h(x))})}return d(u({},P),{then(l,h){return I().then(l,h)}})}n.useAsyncValidator=A})(this.VueUse=this.VueUse||{},VueUse,AsyncValidator,VueDemi);
1
+ var VueDemi=function(n,r,v){if(n.install)return n;if(!r)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),n;if(r.version.slice(0,4)==="2.7."){let o=function(i,c){var f,h={},p={config:r.config,use:r.use.bind(r),mixin:r.mixin.bind(r),component:r.component.bind(r),provide:function(d,u){return h[d]=u,this},directive:function(d,u){return u?(r.directive(d,u),p):r.directive(d)},mount:function(d,u){return f||(f=new r(Object.assign({propsData:c},i,{provide:Object.assign(h,i.provide)})),f.$mount(d,u),f)},unmount:function(){f&&(f.$destroy(),f=void 0)}};return p};var b=o;for(var e in r)n[e]=r[e];n.isVue2=!0,n.isVue3=!1,n.install=function(){},n.Vue=r,n.Vue2=r,n.version=r.version,n.warn=r.util.warn,n.createApp=o}else if(r.version.slice(0,2)==="2.")if(v){for(var e in v)n[e]=v[e];n.isVue2=!0,n.isVue3=!1,n.install=function(){},n.Vue=r,n.Vue2=r,n.version=r.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(r.version.slice(0,2)==="3."){for(var e in r)n[e]=r[e];n.isVue2=!1,n.isVue3=!0,n.install=function(){},n.Vue=r,n.Vue2=void 0,n.version=r.version,n.set=function(o,i,c){return Array.isArray(o)?(o.length=Math.max(o.length,i),o.splice(i,1,c),c):(o[i]=c,c)},n.del=function(o,i){if(Array.isArray(o)){o.splice(i,1);return}delete o[i]}}else console.error("[vue-demi] Vue version "+r.version+" is unsupported.");return n}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(n,r,v,e){"use strict";var b=Object.defineProperty,o=Object.defineProperties,i=Object.getOwnPropertyDescriptors,c=Object.getOwnPropertySymbols,f=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable,p=(a,t,s)=>t in a?b(a,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):a[t]=s,d=(a,t)=>{for(var s in t||(t={}))f.call(t,s)&&p(a,s,t[s]);if(c)for(var s of c(t))h.call(t,s)&&p(a,s,t[s]);return a},u=(a,t)=>o(a,i(t));const A=v||v.default;function j(a,t,s={}){const y=e.ref(),w=e.ref(!1),O=e.ref(!1),U=e.computed(()=>{var l;return((l=y.value)==null?void 0:l.errors)||[]}),g=e.computed(()=>{var l;return((l=y.value)==null?void 0:l.fields)||{}}),{validateOption:I={}}=s;e.watchEffect(async()=>{w.value=!1,O.value=!1;const l=new A(r.resolveUnref(t));try{await l.validate(r.resolveUnref(a),I),O.value=!0,y.value=null}catch(_){y.value=_}finally{w.value=!0}});const P={pass:O,isFinished:w,errorInfo:y,errors:U,errorFields:g};function x(){return new Promise((l,_)=>{r.until(w).toBe(!0).then(()=>l(P)).catch(E=>_(E))})}return u(d({},P),{then(l,_){return x().then(l,_)}})}n.useAsyncValidator=j})(this.VueUse=this.VueUse||{},VueUse,AsyncValidator,VueDemi);
@@ -21,6 +21,7 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ const AsyncValidatorSchema = Schema || Schema.default;
24
25
  function useAsyncValidator(value, rules, options = {}) {
25
26
  const errorInfo = ref();
26
27
  const isFinished = ref(false);
@@ -37,7 +38,7 @@ function useAsyncValidator(value, rules, options = {}) {
37
38
  watchEffect(async () => {
38
39
  isFinished.value = false;
39
40
  pass.value = false;
40
- const validator = new Schema(resolveUnref(rules));
41
+ const validator = new AsyncValidatorSchema(resolveUnref(rules));
41
42
  try {
42
43
  await validator.validate(resolveUnref(value), validateOption);
43
44
  pass.value = true;
package/useAxios.cjs CHANGED
@@ -48,11 +48,13 @@ function useAxios(...args) {
48
48
  const isLoading = vueDemi.ref(false);
49
49
  const isAborted = vueDemi.ref(false);
50
50
  const error = vueDemi.shallowRef();
51
- const cancelToken = axios.CancelToken.source();
51
+ const cancelTokenSource = axios.CancelToken.source;
52
+ let cancelToken = cancelTokenSource();
52
53
  const abort = (message) => {
53
54
  if (isFinished.value || !isLoading.value)
54
55
  return;
55
56
  cancelToken.cancel(message);
57
+ cancelToken = cancelTokenSource();
56
58
  isAborted.value = true;
57
59
  isLoading.value = false;
58
60
  isFinished.value = false;
@@ -73,12 +75,18 @@ function useAxios(...args) {
73
75
  isFinished.value = true;
74
76
  return { then };
75
77
  }
78
+ abort();
76
79
  loading(true);
77
80
  instance(_url, __spreadProps(__spreadValues(__spreadValues({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
81
+ var _a;
78
82
  response.value = r;
79
- data.value = r.data;
83
+ const result2 = r.data;
84
+ data.value = result2;
85
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
80
86
  }).catch((e) => {
87
+ var _a;
81
88
  error.value = e;
89
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
82
90
  }).finally(() => loading(false));
83
91
  return { then };
84
92
  };
package/useAxios.d.ts CHANGED
@@ -71,7 +71,7 @@ interface EasyUseAxiosReturn<T, R, D> extends UseAxiosReturn<T, R, D> {
71
71
  */
72
72
  execute: (url: string, config?: RawAxiosRequestConfig<D>) => PromiseLike<EasyUseAxiosReturn<T, R, D>>;
73
73
  }
74
- interface UseAxiosOptions {
74
+ interface UseAxiosOptions<T = any> {
75
75
  /**
76
76
  * Will automatically run axios request when `useAxios` is used
77
77
  *
@@ -83,10 +83,18 @@ interface UseAxiosOptions {
83
83
  * @default true
84
84
  */
85
85
  shallow?: boolean;
86
+ /**
87
+ * Callback when error is caught.
88
+ */
89
+ onError?: (e: unknown) => void;
90
+ /**
91
+ * Callback when success is caught.
92
+ */
93
+ onSuccess?: (data: T) => void;
86
94
  }
87
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config?: RawAxiosRequestConfig<D>, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
88
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, instance?: AxiosInstance, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
89
- declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config: RawAxiosRequestConfig<D>, instance: AxiosInstance, options?: UseAxiosOptions): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
95
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config?: RawAxiosRequestConfig<D>, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
96
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, instance?: AxiosInstance, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
97
+ declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(url: string, config: RawAxiosRequestConfig<D>, instance: AxiosInstance, options?: UseAxiosOptions<T>): StrictUseAxiosReturn<T, R, D> & PromiseLike<StrictUseAxiosReturn<T, R, D>>;
90
98
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(config?: RawAxiosRequestConfig<D>): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
91
99
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(instance?: AxiosInstance): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
92
100
  declare function useAxios<T = any, R = AxiosResponse<T>, D = any>(config?: RawAxiosRequestConfig<D>, instance?: AxiosInstance): EasyUseAxiosReturn<T, R, D> & PromiseLike<EasyUseAxiosReturn<T, R, D>>;
package/useAxios.iife.js CHANGED
@@ -159,11 +159,13 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
159
159
  const isLoading = vueDemi.ref(false);
160
160
  const isAborted = vueDemi.ref(false);
161
161
  const error = vueDemi.shallowRef();
162
- const cancelToken = axios.CancelToken.source();
162
+ const cancelTokenSource = axios.CancelToken.source;
163
+ let cancelToken = cancelTokenSource();
163
164
  const abort = (message) => {
164
165
  if (isFinished.value || !isLoading.value)
165
166
  return;
166
167
  cancelToken.cancel(message);
168
+ cancelToken = cancelTokenSource();
167
169
  isAborted.value = true;
168
170
  isLoading.value = false;
169
171
  isFinished.value = false;
@@ -184,12 +186,18 @@ var VueDemi = (function (VueDemi, Vue, VueCompositionAPI) {
184
186
  isFinished.value = true;
185
187
  return { then };
186
188
  }
189
+ abort();
187
190
  loading(true);
188
191
  instance(_url, __spreadProps(__spreadValues(__spreadValues({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
192
+ var _a;
189
193
  response.value = r;
190
- data.value = r.data;
194
+ const result2 = r.data;
195
+ data.value = result2;
196
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
191
197
  }).catch((e) => {
198
+ var _a;
192
199
  error.value = e;
200
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
193
201
  }).finally(() => loading(false));
194
202
  return { then };
195
203
  };
@@ -1 +1 @@
1
- var VueDemi=function(e,n,v){if(e.install)return e;if(!n)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),e;if(n.version.slice(0,4)==="2.7."){let s=function(f,u){var c,y={},_={config:n.config,use:n.use.bind(n),mixin:n.mixin.bind(n),component:n.component.bind(n),provide:function(a,d){return y[a]=d,this},directive:function(a,d){return d?(n.directive(a,d),_):n.directive(a)},mount:function(a,d){return c||(c=new n(Object.assign({propsData:u},f,{provide:Object.assign(y,f.provide)})),c.$mount(a,d),c)},unmount:function(){c&&(c.$destroy(),c=void 0)}};return _};var U=s;for(var l in n)e[l]=n[l];e.isVue2=!0,e.isVue3=!1,e.install=function(){},e.Vue=n,e.Vue2=n,e.version=n.version,e.warn=n.util.warn,e.createApp=s}else if(n.version.slice(0,2)==="2.")if(v){for(var l in v)e[l]=v[l];e.isVue2=!0,e.isVue3=!1,e.install=function(){},e.Vue=n,e.Vue2=n,e.version=n.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(n.version.slice(0,2)==="3."){for(var l in n)e[l]=n[l];e.isVue2=!1,e.isVue3=!0,e.install=function(){},e.Vue=n,e.Vue2=void 0,e.version=n.version,e.set=function(s,f,u){return Array.isArray(s)?(s.length=Math.max(s.length,f),s.splice(f,1,u),u):(s[f]=u,u)},e.del=function(s,f){if(Array.isArray(s)){s.splice(f,1);return}delete s[f]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");return e}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(e,n,v,l){"use strict";var U=Object.defineProperty,s=Object.defineProperties,f=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,c=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable,_=(r,o,t)=>o in r?U(r,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[o]=t,a=(r,o)=>{for(var t in o||(o={}))c.call(o,t)&&_(r,t,o[t]);if(u)for(var t of u(o))y.call(o,t)&&_(r,t,o[t]);return r},d=(r,o)=>s(r,f(o));function $(...r){const o=typeof r[0]=="string"?r[0]:void 0,t=v.isString(o)?1:0;let E={},O=l,j={immediate:!!t,shallow:!0};const I=i=>!!(i==null?void 0:i.request);r.length>0+t&&(I(r[0+t])?O=r[0+t]:E=r[0+t]),r.length>1+t&&I(r[1+t])&&(O=r[1+t]),(r.length===2+t&&!I(r[1+t])||r.length===3+t)&&(j=r[r.length-1]);const x=n.shallowRef(),C=j.shallow?n.shallowRef():n.ref(),p=n.ref(!1),w=n.ref(!1),b=n.ref(!1),P=n.shallowRef(),g=l.CancelToken.source(),L=i=>{p.value||!w.value||(g.cancel(i),b.value=!0,w.value=!1,p.value=!1)},S=i=>{w.value=i,p.value=!i},q=()=>new Promise((i,h)=>{v.until(p).toBe(!0).then(()=>i(F)).catch(h)}),R=(i,h)=>q().then(i,h),T=(i=o,h={})=>{P.value=void 0;const N=typeof i=="string"?i:o??h.url;return N===void 0?(P.value=new l.AxiosError(l.AxiosError.ERR_INVALID_URL),p.value=!0,{then:R}):(S(!0),O(N,d(a(a({},E),typeof i=="object"?i:h),{cancelToken:g.token})).then(A=>{x.value=A,C.value=A.data}).catch(A=>{P.value=A}).finally(()=>S(!1)),{then:R})};j.immediate&&o&&T();const F={response:x,data:C,error:P,finished:p,loading:w,isFinished:p,isLoading:w,cancel:L,isAborted:b,canceled:b,aborted:b,isCanceled:b,abort:L,execute:T};return d(a({},F),{then:R})}e.useAxios=$})(this.VueUse=this.VueUse||{},VueDemi,VueUse,axios);
1
+ var VueDemi=function(e,n,h){if(e.install)return e;if(!n)return console.error("[vue-demi] no Vue instance found, please be sure to import `vue` before `vue-demi`."),e;if(n.version.slice(0,4)==="2.7."){let s=function(c,u){var f,O={},w={config:n.config,use:n.use.bind(n),mixin:n.mixin.bind(n),component:n.component.bind(n),provide:function(a,d){return O[a]=d,this},directive:function(a,d){return d?(n.directive(a,d),w):n.directive(a)},mount:function(a,d){return f||(f=new n(Object.assign({propsData:u},c,{provide:Object.assign(O,c.provide)})),f.$mount(a,d),f)},unmount:function(){f&&(f.$destroy(),f=void 0)}};return w};var q=s;for(var l in n)e[l]=n[l];e.isVue2=!0,e.isVue3=!1,e.install=function(){},e.Vue=n,e.Vue2=n,e.version=n.version,e.warn=n.util.warn,e.createApp=s}else if(n.version.slice(0,2)==="2.")if(h){for(var l in h)e[l]=h[l];e.isVue2=!0,e.isVue3=!1,e.install=function(){},e.Vue=n,e.Vue2=n,e.version=n.version}else console.error("[vue-demi] no VueCompositionAPI instance found, please be sure to import `@vue/composition-api` before `vue-demi`.");else if(n.version.slice(0,2)==="3."){for(var l in n)e[l]=n[l];e.isVue2=!1,e.isVue3=!0,e.install=function(){},e.Vue=n,e.Vue2=void 0,e.version=n.version,e.set=function(s,c,u){return Array.isArray(s)?(s.length=Math.max(s.length,c),s.splice(c,1,u),u):(s[c]=u,u)},e.del=function(s,c){if(Array.isArray(s)){s.splice(c,1);return}delete s[c]}}else console.error("[vue-demi] Vue version "+n.version+" is unsupported.");return e}(this.VueDemi=this.VueDemi||(typeof VueDemi!="undefined"?VueDemi:{}),this.Vue||(typeof Vue!="undefined"?Vue:void 0),this.VueCompositionAPI||(typeof VueCompositionAPI!="undefined"?VueCompositionAPI:void 0));(function(e,n,h,l){"use strict";var q=Object.defineProperty,s=Object.defineProperties,c=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,f=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable,w=(r,t,o)=>t in r?q(r,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):r[t]=o,a=(r,t)=>{for(var o in t||(t={}))f.call(t,o)&&w(r,o,t[o]);if(u)for(var o of u(t))O.call(t,o)&&w(r,o,t[o]);return r},d=(r,t)=>s(r,c(t));function B(...r){const t=typeof r[0]=="string"?r[0]:void 0,o=h.isString(t)?1:0;let C={},I=l,v={immediate:!!o,shallow:!0};const E=i=>!!(i==null?void 0:i.request);r.length>0+o&&(E(r[0+o])?I=r[0+o]:C=r[0+o]),r.length>1+o&&E(r[1+o])&&(I=r[1+o]),(r.length===2+o&&!E(r[1+o])||r.length===3+o)&&(v=r[r.length-1]);const T=n.shallowRef(),g=v.shallow?n.shallowRef():n.ref(),p=n.ref(!1),b=n.ref(!1),y=n.ref(!1),j=n.shallowRef(),L=l.CancelToken.source;let R=L();const S=i=>{p.value||!b.value||(R.cancel(i),R=L(),y.value=!0,b.value=!1,p.value=!1)},F=i=>{b.value=i,p.value=!i},M=()=>new Promise((i,_)=>{h.until(p).toBe(!0).then(()=>i(U)).catch(_)}),x=(i,_)=>M().then(i,_),N=(i=t,_={})=>{j.value=void 0;const $=typeof i=="string"?i:t??_.url;return $===void 0?(j.value=new l.AxiosError(l.AxiosError.ERR_INVALID_URL),p.value=!0,{then:x}):(S(),F(!0),I($,d(a(a({},C),typeof i=="object"?i:_),{cancelToken:R.token})).then(P=>{var A;T.value=P;const k=P.data;g.value=k,(A=v.onSuccess)==null||A.call(v,k)}).catch(P=>{var A;j.value=P,(A=v.onError)==null||A.call(v,P)}).finally(()=>F(!1)),{then:x})};v.immediate&&t&&N();const U={response:T,data:g,error:j,finished:p,loading:b,isFinished:p,isLoading:b,cancel:S,isAborted:y,canceled:y,aborted:y,isCanceled:y,abort:S,execute:N};return d(a({},U),{then:x})}e.useAxios=B})(this.VueUse=this.VueUse||{},VueDemi,VueUse,axios);
package/useAxios.mjs CHANGED
@@ -46,11 +46,13 @@ function useAxios(...args) {
46
46
  const isLoading = ref(false);
47
47
  const isAborted = ref(false);
48
48
  const error = shallowRef();
49
- const cancelToken = axios.CancelToken.source();
49
+ const cancelTokenSource = axios.CancelToken.source;
50
+ let cancelToken = cancelTokenSource();
50
51
  const abort = (message) => {
51
52
  if (isFinished.value || !isLoading.value)
52
53
  return;
53
54
  cancelToken.cancel(message);
55
+ cancelToken = cancelTokenSource();
54
56
  isAborted.value = true;
55
57
  isLoading.value = false;
56
58
  isFinished.value = false;
@@ -71,12 +73,18 @@ function useAxios(...args) {
71
73
  isFinished.value = true;
72
74
  return { then };
73
75
  }
76
+ abort();
74
77
  loading(true);
75
78
  instance(_url, __spreadProps(__spreadValues(__spreadValues({}, defaultConfig), typeof executeUrl === "object" ? executeUrl : config), { cancelToken: cancelToken.token })).then((r) => {
79
+ var _a;
76
80
  response.value = r;
77
- data.value = r.data;
81
+ const result2 = r.data;
82
+ data.value = result2;
83
+ (_a = options.onSuccess) == null ? void 0 : _a.call(options, result2);
78
84
  }).catch((e) => {
85
+ var _a;
79
86
  error.value = e;
87
+ (_a = options.onError) == null ? void 0 : _a.call(options, e);
80
88
  }).finally(() => loading(false));
81
89
  return { then };
82
90
  };
@@ -4,7 +4,7 @@ var vueDemi = require('vue-demi');
4
4
  var focusTrap = require('focus-trap');
5
5
  var core = require('@vueuse/core');
6
6
 
7
- const UseFocusTrap = /* @__PURE__ */ vueDemi.defineComponent({
7
+ const UseFocusTrap = /* @__PURE__ */ /* #__PURE__ */ vueDemi.defineComponent({
8
8
  name: "UseFocusTrap",
9
9
  props: ["as", "options"],
10
10
  setup(props, { slots }) {
@@ -2,7 +2,7 @@ import { defineComponent, ref, watch, onScopeDispose, h } from 'vue-demi';
2
2
  import { createFocusTrap } from 'focus-trap';
3
3
  import { unrefElement } from '@vueuse/core';
4
4
 
5
- const UseFocusTrap = /* @__PURE__ */ defineComponent({
5
+ const UseFocusTrap = /* @__PURE__ */ /* #__PURE__ */ defineComponent({
6
6
  name: "UseFocusTrap",
7
7
  props: ["as", "options"],
8
8
  setup(props, { slots }) {