UNPKG

ant-design-x-vue

Version:

Craft AI-driven interfaces effortlessly

2 lines (1 loc) 1.01 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("../x-request/x-request.js"),a=require("vue");let l=0;class c{constructor(u){this.requestingMap=a.ref({}),this.request=(i,s,g)=>{const{request:n}=this.config,{onUpdate:q,onSuccess:h,onError:d,onStream:r}=s,e=l;l+=1,this.requestingMap.value[e]=!0,n==null||n(i,{onStream:t=>{this.requestingMap.value[e]&&(r==null||r(t))},onUpdate:t=>{this.requestingMap.value[e]&&q(t)},onSuccess:t=>{this.requestingMap.value[e]&&(h(t),this.finishRequest(e))},onError:t=>{this.requestingMap.value[e]&&(d(t),this.finishRequest(e))}},g)},this.config=u}finishRequest(u){delete this.requestingMap.value[u]}isRequesting(){return Object.keys(this.requestingMap.value).length>0}}function p(o){return[a.computed(()=>{const{request:i,...s}=a.toValue(o);return new c({request:i||f.default({baseURL:s.baseURL,model:s.model,dangerouslyApiKey:s.dangerouslyApiKey}).value.create,...s})})]}exports.XAgent=c;exports.default=p;