braintrust 0.0.41 → 0.0.43
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/README.md +2 -2
- package/dist/browser.js +4 -4
- package/dist/cli.js +36 -92
- package/dist/index.d.ts +2 -2
- package/dist/index.js +32 -88
- package/dist/logger.d.ts +17 -23
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
An isomorphic JS library for logging data to
|
|
1
|
+
An isomorphic JS library for logging data to Braintrust.
|
|
2
2
|
|
|
3
3
|
### Quickstart
|
|
4
4
|
|
|
@@ -9,7 +9,7 @@ npm install braintrust
|
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
Then, run a simple experiment with the following code (replace `YOUR_API_KEY` with
|
|
12
|
-
your
|
|
12
|
+
your Braintrust API key):
|
|
13
13
|
|
|
14
14
|
```javascript
|
|
15
15
|
import * as braintrust from "braintrust";
|
package/dist/browser.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function z(e,t){return function(){return e.apply(t,arguments)}}var{toString:Dt}=Object.prototype,{getPrototypeOf:be}=Object,Z=(e=>t=>{let r=Dt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),A=e=>(e=e.toLowerCase(),t=>Z(t)===e),ee=e=>t=>typeof t===e,{isArray:j}=Array,H=ee("undefined");function Ut(e){return e!==null&&!H(e)&&e.constructor!==null&&!H(e.constructor)&&_(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var $e=A("ArrayBuffer");function jt(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&$e(e.buffer),t}var kt=ee("string"),_=ee("function"),Ke=ee("number"),te=e=>e!==null&&typeof e=="object",Lt=e=>e===!0||e===!1,Y=e=>{if(Z(e)!=="object")return!1;let t=be(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Ft=A("Date"),It=A("File"),Bt=A("Blob"),vt=A("FileList"),zt=e=>te(e)&&_(e.pipe),Ht=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||_(e.append)&&((t=Z(e))==="formdata"||t==="object"&&_(e.toString)&&e.toString()==="[object FormData]"))},qt=A("URLSearchParams"),Mt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function q(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),j(e))for(n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else{let i=r?Object.getOwnPropertyNames(e):Object.keys(e),s=i.length,u;for(n=0;n<s;n++)u=i[n],t.call(null,e[u],u,e)}}function We(e,t){t=t.toLowerCase();let r=Object.keys(e),n=r.length,o;for(;n-- >0;)if(o=r[n],t===o.toLowerCase())return o;return null}var Ge=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Xe=e=>!H(e)&&e!==Ge;function we(){let{caseless:e}=Xe(this)&&this||{},t={},r=(n,o)=>{let i=e&&We(t,o)||o;Y(t[i])&&Y(n)?t[i]=we(t[i],n):Y(n)?t[i]=we({},n):j(n)?t[i]=n.slice():t[i]=n};for(let n=0,o=arguments.length;n<o;n++)arguments[n]&&q(arguments[n],r);return t}var Jt=(e,t,r,{allOwnKeys:n}={})=>(q(t,(o,i)=>{r&&_(o)?e[i]=z(o,r):e[i]=o},{allOwnKeys:n}),e),Vt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),$t=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},Kt=(e,t,r,n)=>{let o,i,s,u={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)s=o[i],(!n||n(s,e,t))&&!u[s]&&(t[s]=e[s],u[s]=!0);e=r!==!1&&be(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Wt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},Gt=e=>{if(!e)return null;if(j(e))return e;let t=e.length;if(!Ke(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},Xt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&be(Uint8Array)),Qt=(e,t)=>{let n=(e&&e[Symbol.iterator]).call(e),o;for(;(o=n.next())&&!o.done;){let i=o.value;t.call(e,i[0],i[1])}},Yt=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},Zt=A("HTMLFormElement"),er=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),Je=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),tr=A("RegExp"),Qe=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};q(r,(o,i)=>{t(o,i,e)!==!1&&(n[i]=o)}),Object.defineProperties(e,n)},rr=e=>{Qe(e,(t,r)=>{if(_(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(_(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},nr=(e,t)=>{let r={},n=o=>{o.forEach(i=>{r[i]=!0})};return j(e)?n(e):n(String(e).split(t)),r},or=()=>{},ir=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ye="abcdefghijklmnopqrstuvwxyz",Ve="0123456789",Ye={DIGIT:Ve,ALPHA:ye,ALPHA_DIGIT:ye+ye.toUpperCase()+Ve},sr=(e=16,t=Ye.ALPHA_DIGIT)=>{let r="",{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};function ar(e){return!!(e&&_(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var ur=e=>{let t=new Array(10),r=(n,o)=>{if(te(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[o]=n;let i=j(n)?[]:{};return q(n,(s,u)=>{let d=r(s,o+1);!H(d)&&(i[u]=d)}),t[o]=void 0,i}}return n};return r(e,0)},cr=A("AsyncFunction"),lr=e=>e&&(te(e)||_(e))&&_(e.then)&&_(e.catch),a={isArray:j,isArrayBuffer:$e,isBuffer:Ut,isFormData:Ht,isArrayBufferView:jt,isString:kt,isNumber:Ke,isBoolean:Lt,isObject:te,isPlainObject:Y,isUndefined:H,isDate:Ft,isFile:It,isBlob:Bt,isRegExp:tr,isFunction:_,isStream:zt,isURLSearchParams:qt,isTypedArray:Xt,isFileList:vt,forEach:q,merge:we,extend:Jt,trim:Mt,stripBOM:Vt,inherits:$t,toFlatObject:Kt,kindOf:Z,kindOfTest:A,endsWith:Wt,toArray:Gt,forEachEntry:Qt,matchAll:Yt,isHTMLForm:Zt,hasOwnProperty:Je,hasOwnProp:Je,reduceDescriptors:Qe,freezeMethods:rr,toObjectSet:nr,toCamelCase:er,noop:or,toFiniteNumber:ir,findKey:We,global:Ge,isContextDefined:Xe,ALPHABET:Ye,generateString:sr,isSpecCompliantForm:ar,toJSONObject:ur,isAsyncFn:cr,isThenable:lr};function k(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o)}a.inherits(k,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var Ze=k.prototype,et={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{et[e]={value:e}});Object.defineProperties(k,et);Object.defineProperty(Ze,"isAxiosError",{value:!0});k.from=(e,t,r,n,o,i)=>{let s=Object.create(Ze);return a.toFlatObject(e,s,function(d){return d!==Error.prototype},u=>u!=="isAxiosError"),k.call(s,e.message,t,r,n,o),s.cause=e,s.name=e.name,i&&Object.assign(s,i),s};var m=k;var re=null;function xe(e){return a.isPlainObject(e)||a.isArray(e)}function rt(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function tt(e,t,r){return e?e.concat(t).map(function(o,i){return o=rt(o),!r&&i?"["+o+"]":o}).join(r?".":""):t}function dr(e){return a.isArray(e)&&!e.some(xe)}var fr=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function pr(e,t,r){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new(re||FormData),r=a.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,O){return!a.isUndefined(O[h])});let n=r.metaTokens,o=r.visitor||l,i=r.dots,s=r.indexes,d=(r.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(o))throw new TypeError("visitor must be a function");function c(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(!d&&a.isBlob(f))throw new m("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function l(f,h,O){let S=f;if(f&&!O&&typeof f=="object"){if(a.endsWith(h,"{}"))h=n?h:h.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&dr(f)||(a.isFileList(f)||a.endsWith(h,"[]"))&&(S=a.toArray(f)))return h=rt(h),S.forEach(function(Q,Ct){!(a.isUndefined(Q)||Q===null)&&t.append(s===!0?tt([h],Ct,i):s===null?h:h+"[]",c(Q))}),!1}return xe(f)?!0:(t.append(tt(O,h,i),c(f)),!1)}let p=[],y=Object.assign(fr,{defaultVisitor:l,convertValue:c,isVisitable:xe});function g(f,h){if(!a.isUndefined(f)){if(p.indexOf(f)!==-1)throw Error("Circular reference detected in "+h.join("."));p.push(f),a.forEach(f,function(S,U){(!(a.isUndefined(S)||S===null)&&o.call(t,S,a.isString(U)?U.trim():U,h,y))===!0&&g(S,h?h.concat(U):[U])}),p.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return g(e),t}var P=pr;function nt(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function ot(e,t){this._pairs=[],e&&P(e,this,t)}var it=ot.prototype;it.append=function(t,r){this._pairs.push([t,r])};it.toString=function(t){let r=t?function(n){return t.call(this,n,nt)}:nt;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};var ne=ot;function mr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function M(e,t,r){if(!t)return e;let n=r&&r.encode||mr,o=r&&r.serialize,i;if(o?i=o(t,r):i=a.isURLSearchParams(t)?t.toString():new ne(t,r).toString(n),i){let s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}var Ee=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(n){n!==null&&t(n)})}},_e=Ee;var oe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var st=typeof URLSearchParams<"u"?URLSearchParams:ne;var at=typeof FormData<"u"?FormData:null;var ut=typeof Blob<"u"?Blob:null;var hr=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),gr=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),x={isBrowser:!0,classes:{URLSearchParams:st,FormData:at,Blob:ut},isStandardBrowserEnv:hr,isStandardBrowserWebWorkerEnv:gr,protocols:["http","https","file","blob","url","data"]};function Se(e,t){return P(e,new x.classes.URLSearchParams,Object.assign({visitor:function(r,n,o,i){return x.isNode&&a.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function yr(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function wr(e){let t={},r=Object.keys(e),n,o=r.length,i;for(n=0;n<o;n++)i=r[n],t[i]=e[i];return t}function br(e){function t(r,n,o,i){let s=r[i++],u=Number.isFinite(+s),d=i>=r.length;return s=!s&&a.isArray(o)?o.length:s,d?(a.hasOwnProp(o,s)?o[s]=[o[s],n]:o[s]=n,!u):((!o[s]||!a.isObject(o[s]))&&(o[s]=[]),t(r,n,o[s],i)&&a.isArray(o[s])&&(o[s]=wr(o[s])),!u)}if(a.isFormData(e)&&a.isFunction(e.entries)){let r={};return a.forEachEntry(e,(n,o)=>{t(yr(n),o,r,0)}),r}return null}var ie=br;var xr={"Content-Type":void 0};function Er(e,t,r){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var se={transitional:oe,adapter:["xhr","http"],transformRequest:[function(t,r){let n=r.getContentType()||"",o=n.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return o&&o?JSON.stringify(ie(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let u;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Se(t,this.formSerializer).toString();if((u=a.isFileList(t))||n.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return P(u?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||o?(r.setContentType("application/json",!1),Er(t)):t}],transformResponse:[function(t){let r=this.transitional||se.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(t&&a.isString(t)&&(n&&!this.responseType||o)){let s=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(u){if(s)throw u.name==="SyntaxError"?m.from(u,m.ERR_BAD_RESPONSE,this,null,this.response):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:x.classes.FormData,Blob:x.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};a.forEach(["delete","get","head"],function(t){se.headers[t]={}});a.forEach(["post","put","patch"],function(t){se.headers[t]=a.merge(xr)});var L=se;var _r=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ct=e=>{let t={},r,n,o;return e&&e.split(`
|
|
2
|
-
`).forEach(function(s){o=s.indexOf(":"),r=s.substring(0,o).trim().toLowerCase(),n=s.substring(o+1).trim(),!(!r||t[r]&&
|
|
3
|
-
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){let n=(this[lt]=this[lt]={accessors:{}}).accessors,o=this.prototype;function i(s){let u=J(s);n[u]||(Or(o,s),n[u]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}};F.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);a.freezeMethods(F.prototype);a.freezeMethods(F);var E=F;function V(e,t){let r=this||L,n=t||r,o=E.from(n.headers),i=n.data;return a.forEach(e,function(u){i=u.call(r,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function $(e){return!!(e&&e.__CANCEL__)}function dt(e,t,r){m.call(this,e??"canceled",m.ERR_CANCELED,t,r),this.name="CanceledError"}a.inherits(dt,m,{__CANCEL__:!0});var T=dt;function Ae(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new m("Request failed with status code "+r.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var ft=x.isStandardBrowserEnv?function(){return{write:function(r,n,o,i,s,u){let d=[];d.push(r+"="+encodeURIComponent(n)),a.isNumber(o)&&d.push("expires="+new Date(o).toGMTString()),a.isString(i)&&d.push("path="+i),a.isString(s)&&d.push("domain="+s),u===!0&&d.push("secure"),document.cookie=d.join("; ")},read:function(r){let n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function Oe(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Ne(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function K(e,t){return e&&!Oe(t)?Ne(e,t):t}var pt=x.isStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function o(i){let s=i;return t&&(r.setAttribute("href",s),s=r.href),r.setAttribute("href",s),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=o(window.location.href),function(s){let u=a.isString(s)?o(s):s;return u.protocol===n.protocol&&u.host===n.host}}():function(){return function(){return!0}}();function Pe(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Nr(e,t){e=e||10;let r=new Array(e),n=new Array(e),o=0,i=0,s;return t=t!==void 0?t:1e3,function(d){let c=Date.now(),l=n[i];s||(s=c),r[o]=d,n[o]=c;let p=i,y=0;for(;p!==o;)y+=r[p++],p=p%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),c-s<t)return;let g=l&&c-l;return g?Math.round(y*1e3/g):void 0}}var mt=Nr;function ht(e,t){let r=0,n=mt(50,250);return o=>{let i=o.loaded,s=o.lengthComputable?o.total:void 0,u=i-r,d=n(u),c=i<=s;r=i;let l={loaded:i,total:s,progress:s?i/s:void 0,bytes:u,rate:d||void 0,estimated:d&&s&&c?(s-i)/d:void 0,event:o};l[t?"download":"upload"]=!0,e(l)}}var Pr=typeof XMLHttpRequest<"u",gt=Pr&&function(e){return new Promise(function(r,n){let o=e.data,i=E.from(e.headers).normalize(),s=e.responseType,u;function d(){e.cancelToken&&e.cancelToken.unsubscribe(u),e.signal&&e.signal.removeEventListener("abort",u)}a.isFormData(o)&&(x.isStandardBrowserEnv||x.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let c=new XMLHttpRequest;if(e.auth){let g=e.auth.username||"",f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(g+":"+f))}let l=K(e.baseURL,e.url);c.open(e.method.toUpperCase(),M(l,e.params,e.paramsSerializer),!0),c.timeout=e.timeout;function p(){if(!c)return;let g=E.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders()),h={data:!s||s==="text"||s==="json"?c.responseText:c.response,status:c.status,statusText:c.statusText,headers:g,config:e,request:c};Ae(function(S){r(S),d()},function(S){n(S),d()},h),c=null}if("onloadend"in c?c.onloadend=p:c.onreadystatechange=function(){!c||c.readyState!==4||c.status===0&&!(c.responseURL&&c.responseURL.indexOf("file:")===0)||setTimeout(p)},c.onabort=function(){c&&(n(new m("Request aborted",m.ECONNABORTED,e,c)),c=null)},c.onerror=function(){n(new m("Network Error",m.ERR_NETWORK,e,c)),c=null},c.ontimeout=function(){let f=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",h=e.transitional||oe;e.timeoutErrorMessage&&(f=e.timeoutErrorMessage),n(new m(f,h.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,c)),c=null},x.isStandardBrowserEnv){let g=(e.withCredentials||pt(l))&&e.xsrfCookieName&&ft.read(e.xsrfCookieName);g&&i.set(e.xsrfHeaderName,g)}o===void 0&&i.setContentType(null),"setRequestHeader"in c&&a.forEach(i.toJSON(),function(f,h){c.setRequestHeader(h,f)}),a.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),s&&s!=="json"&&(c.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&c.addEventListener("progress",ht(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&c.upload&&c.upload.addEventListener("progress",ht(e.onUploadProgress)),(e.cancelToken||e.signal)&&(u=g=>{c&&(n(!g||g.type?new T(null,e,c):g),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(u),e.signal&&(e.signal.aborted?u():e.signal.addEventListener("abort",u)));let y=Pe(l);if(y&&x.protocols.indexOf(y)===-1){n(new m("Unsupported protocol "+y+":",m.ERR_BAD_REQUEST,e));return}c.send(o||null)})};var ue={http:re,xhr:gt};a.forEach(ue,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var yt={getAdapter:e=>{e=a.isArray(e)?e:[e];let{length:t}=e,r,n;for(let o=0;o<t&&(r=e[o],!(n=a.isString(r)?ue[r.toLowerCase()]:r));o++);if(!n)throw n===!1?new m(`Adapter ${r} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(a.hasOwnProp(ue,r)?`Adapter '${r}' is not available in the build`:`Unknown adapter '${r}'`);if(!a.isFunction(n))throw new TypeError("adapter is not a function");return n},adapters:ue};function Te(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new T(null,e)}function ce(e){return Te(e),e.headers=E.from(e.headers),e.data=V.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),yt.getAdapter(e.adapter||L.adapter)(e).then(function(n){return Te(e),n.data=V.call(e,e.transformResponse,n),n.headers=E.from(n.headers),n},function(n){return $(n)||(Te(e),n&&n.response&&(n.response.data=V.call(e,e.transformResponse,n.response),n.response.headers=E.from(n.response.headers))),Promise.reject(n)})}var wt=e=>e instanceof E?e.toJSON():e;function N(e,t){t=t||{};let r={};function n(c,l,p){return a.isPlainObject(c)&&a.isPlainObject(l)?a.merge.call({caseless:p},c,l):a.isPlainObject(l)?a.merge({},l):a.isArray(l)?l.slice():l}function o(c,l,p){if(a.isUndefined(l)){if(!a.isUndefined(c))return n(void 0,c,p)}else return n(c,l,p)}function i(c,l){if(!a.isUndefined(l))return n(void 0,l)}function s(c,l){if(a.isUndefined(l)){if(!a.isUndefined(c))return n(void 0,c)}else return n(void 0,l)}function u(c,l,p){if(p in t)return n(c,l);if(p in e)return n(void 0,c)}let d={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:u,headers:(c,l)=>o(wt(c),wt(l),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(l){let p=d[l]||o,y=p(e[l],t[l],l);a.isUndefined(y)&&p!==u||(r[l]=y)}),r}var le="1.4.0";var Ce={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ce[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var bt={};Ce.transitional=function(t,r,n){function o(i,s){return"[Axios v"+le+"] Transitional option '"+i+"'"+s+(n?". "+n:"")}return(i,s,u)=>{if(t===!1)throw new m(o(s," has been removed"+(r?" in "+r:"")),m.ERR_DEPRECATED);return r&&!bt[s]&&(bt[s]=!0,console.warn(o(s," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,s,u):!0}};function Tr(e,t,r){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);let n=Object.keys(e),o=n.length;for(;o-- >0;){let i=n[o],s=t[i];if(s){let u=e[i],d=u===void 0||s(u,i,e);if(d!==!0)throw new m("option "+i+" must be "+d,m.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new m("Unknown option "+i,m.ERR_BAD_OPTION)}}var de={assertOptions:Tr,validators:Ce};var C=de.validators,I=class{constructor(t){this.defaults=t,this.interceptors={request:new _e,response:new _e}}request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=N(this.defaults,r);let{transitional:n,paramsSerializer:o,headers:i}=r;n!==void 0&&de.assertOptions(n,{silentJSONParsing:C.transitional(C.boolean),forcedJSONParsing:C.transitional(C.boolean),clarifyTimeoutError:C.transitional(C.boolean)},!1),o!=null&&(a.isFunction(o)?r.paramsSerializer={serialize:o}:de.assertOptions(o,{encode:C.function,serialize:C.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let s;s=i&&a.merge(i.common,i[r.method]),s&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),r.headers=E.concat(s,i);let u=[],d=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(d=d&&h.synchronous,u.unshift(h.fulfilled,h.rejected))});let c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let l,p=0,y;if(!d){let f=[ce.bind(this),void 0];for(f.unshift.apply(f,u),f.push.apply(f,c),y=f.length,l=Promise.resolve(r);p<y;)l=l.then(f[p++],f[p++]);return l}y=u.length;let g=r;for(p=0;p<y;){let f=u[p++],h=u[p++];try{g=f(g)}catch(O){h.call(this,O);break}}try{l=ce.call(this,g)}catch(f){return Promise.reject(f)}for(p=0,y=c.length;p<y;)l=l.then(c[p++],c[p++]);return l}getUri(t){t=N(this.defaults,t);let r=K(t.baseURL,t.url);return M(r,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(r,n){return this.request(N(n||{},{method:t,url:r,data:(n||{}).data}))}});a.forEach(["post","put","patch"],function(t){function r(n){return function(i,s,u){return this.request(N(u||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:s}))}}I.prototype[t]=r(),I.prototype[t+"Form"]=r(!0)});var W=I;var De=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});let n=this;this.promise.then(o=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](o);n._listeners=null}),this.promise.then=o=>{let i,s=new Promise(u=>{n.subscribe(u),i=u}).then(o);return s.cancel=function(){n.unsubscribe(i)},s},t(function(i,s,u){n.reason||(n.reason=new T(i,s,u),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new e(function(o){t=o}),cancel:t}}},xt=De;function Ue(e){return function(r){return e.apply(null,r)}}function je(e){return a.isObject(e)&&e.isAxiosError===!0}var ke={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ke).forEach(([e,t])=>{ke[t]=e});var Et=ke;function _t(e){let t=new W(e),r=z(W.prototype.request,t);return a.extend(r,W.prototype,t,{allOwnKeys:!0}),a.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return _t(N(e,o))},r}var w=_t(L);w.Axios=W;w.CanceledError=T;w.CancelToken=xt;w.isCancel=$;w.VERSION=le;w.toFormData=P;w.AxiosError=m;w.Cancel=w.CanceledError;w.all=function(t){return Promise.all(t)};w.spread=Ue;w.isAxiosError=je;w.mergeConfig=N;w.AxiosHeaders=E;w.formToJSON=e=>ie(a.isHTMLForm(e)?new FormData(e):e);w.HttpStatusCode=Et;w.default=w;var B=w;var{Axios:hi,AxiosError:gi,CanceledError:yi,isCancel:wi,CancelToken:bi,VERSION:xi,all:Ei,Cancel:_i,isAxiosError:Si,spread:Ri,toFormData:Ai,AxiosHeaders:Oi,HttpStatusCode:Ni,formToJSON:Pi,mergeConfig:Ti}=B;var fe,Cr=new Uint8Array(16);function Le(){if(!fe&&(fe=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!fe))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return fe(Cr)}var b=[];for(let e=0;e<256;++e)b.push((e+256).toString(16).slice(1));function St(e,t=0){return(b[e[t+0]]+b[e[t+1]]+b[e[t+2]]+b[e[t+3]]+"-"+b[e[t+4]]+b[e[t+5]]+"-"+b[e[t+6]]+b[e[t+7]]+"-"+b[e[t+8]]+b[e[t+9]]+"-"+b[e[t+10]]+b[e[t+11]]+b[e[t+12]]+b[e[t+13]]+b[e[t+14]]+b[e[t+15]]).toLowerCase()}var Dr=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Fe={randomUUID:Dr};function Ur(e,t,r){if(Fe.randomUUID&&!t&&!e)return Fe.randomUUID();e=e||{};let n=e.random||(e.rng||Le)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let o=0;o<16;++o)t[r+o]=n[o];return t}return St(n)}var pe=Ur;var jr={makeAxios:e=>B.create({...e}),getRepoStatus:async()=>{},getPastNAncestors:async()=>[],getEnv:e=>{}},v=jr;var D={current_project:null,current_experiment:null},X=null,me=null,Me=null,Ot=null,Rt=!1,kr="_xact_id",he=class{constructor(t){this.base_url=t,this.token=null,this.session=null,this._reset()}async ping(){try{let t=await this.get("ping");return G===null&&(G=t.data),t.status===200}catch{return!1}}make_long_lived(){this._reset()}set_token(t){t=t.trim(),this.token=t,this._reset()}_reset(){let t={};this.token&&(t.Authorization=`Bearer ${this.token}`),this.session=v.makeAxios({headers:t})}async get(t,r=void 0){return await this.session.get(ze(this.base_url,t),{params:r})}async post(t,r=void 0){return await this.session.post(ze(this.base_url,t),r)}async get_json(t,r=void 0,n=0){let o=n+1;for(let i=0;i<o;i++)try{return(await this.get(`${t}`,r)).data}catch(s){if(i<o-1){console.log(`Retrying API request ${t} ${r} ${s.status} ${s.text}`);continue}throw s}}async post_json(t,r=void 0){return(await this.post(`${t}`,r)).data}},Ie=null;function Nt(){return Ie||(Ie=new he(X)),Ie}var Be=null;function R(){return Be||(Be=new he(Ot)),Be}var G=null;async function Pt(){return G===null&&(G=await R().get_json("ping")),G}var At=class{constructor(t,r,n){this.name=t,this.id=r,this.org_id=n}},ve="projects";async function Lr(e){let t={name:e,org_id:me},r=[];for(let n=0;n<2&&(r=await R().get_json(ve,t),!(r.length>0));n++)try{r=await R().post_json(ve,t)}catch{continue}if(r)return r[0];throw new Error(`Unable to find record in ${ve}`)}var ge=class{constructor(){this.items=[];this.active_flush=Promise.resolve([]);this.active_flush_resolved=!0}log(t){this.items.push(...t),this.active_flush_resolved&&(this.active_flush_resolved=!1,this.active_flush=this.flush_once())}async flush_once(){this.active_flush_resolved=!1;let t=this.items;this.items=[];let r=[];return t.length>0&&(r=(await R().post_json("logs",t)).data),this.items.length>0?this.active_flush=this.flush_once():this.active_flush_resolved=!0,r}async flush(){for(;await this.active_flush,!this.active_flush_resolved;);}};async function Wi(e,t={}){let{experiment:r,description:n,dataset:o,baseExperiment:i,update:s,apiUrl:u,apiKey:d,orgName:c,disableCache:l}=t||{};return await Tt({orgName:c,disableCache:l,apiKey:d,apiUrl:u}),D.current_project=await Lr(e),D.current_experiment=await Ir(D.current_project,{name:r,description:n,dataset:o,update:s,baseExperiment:i}),D.current_experiment}async function Gi(e,t={}){let{dataset:r,description:n,version:o,apiUrl:i,apiKey:s,orgName:u,disableCache:d}=t||{};return await Tt({orgName:u,disableCache:d,apiKey:s,apiUrl:i}),await Br(e,{name:r,description:n,version:o})}async function Tt(e={}){let{apiUrl:t=v.getEnv("BRAINTRUST_API_URL")||"https://www.braintrustdata.com",apiKey:r=v.getEnv("BRAINTRUST_API_KEY"),orgName:n=void 0,disableCache:o=!1,forceLogin:i=!1}=e||{};if(Rt&&!i)return;X=t;let s=null,u=!1,d=null;if(r!==void 0){let l=(await B.post(ze(X,"/api/apikey/login"),{token:r})).data;Fr(l.org_info,n),d=R(),d.set_token(r),u=await d.ping()}else throw new Error("Please specify an api key. Token based login is not yet implemented in the JS client.");if(!d)throw new Error("Conn should be set at this point (a bug)");u||await d.get("ping"),d.make_long_lived(),Nt().set_token(r),Rt=!0}function Xi(e){if(!D.current_experiment)throw new Error("Not initialized. Please call init() first");return D.current_experiment.log(e)}async function Qi(e={}){if(!D.current_experiment)throw new Error("Not initialized. Please call init() first");return await D.current_experiment.summarize(e)}function Fr(e,t){if(e.length===0)throw new Error("This user is not part of any organizations.");for(let r of e)if(t===void 0||r.name===t){me=r.id,Me=r.name,Ot=r.api_url;break}if(me===void 0)throw new Error(`Organization ${t} not found. Must be one of ${e.map(r=>r.name).join(", ")}`)}function ze(...e){return e.map(t=>t.replace(/^\//,"")).join("/")}async function Ir(e,{name:t,description:r,dataset:n,update:o,baseExperiment:i}={name:void 0,description:void 0,baseExperiment:void 0}){let s={project_id:e.id};t&&(s.name=t),r&&(s.description=r),o&&(s.update=o);let u=await v.getRepoStatus();u&&(s.repo_info=u);let d=R(),c;if(i!==void 0){let g=(await d.get("experiments",{project_id:e.id,name:i})).data;if(g.length>0)c=g[0].id;else throw new Error(`Base experiment ${i} not found`)}c===void 0&&(c=(await d.post("experiments-by-commits",{project_id:e.id,commits:await v.getPastNAncestors()})).data.experiment_id),c!==void 0&&(s.base_exp_id=c),n!==void 0&&(s.dataset_id=n.id,s.dataset_version=await n.version());let l=(await R().post_json("register-experiment",s))[0],p=(await Pt()).id;return new He(e,l.id,l.name,p,n)}var He=class{constructor(t,r,n,o,i){this.project=t,this.id=r,this.name=n,this.user_id=o,this.dataset=i,this.logger=new ge}log({input:t,output:r,expected:n,scores:o,metadata:i,id:s,datasetRecordId:u,allowLarge:d=!1,inputs:c}){if(t===void 0&&c===void 0)throw new Error("Either input or inputs (deprecated) must be specified. Prefer input.");if(t!==void 0&&c!==void 0)throw new Error("Only one of input or inputs (deprecated) can be specified. Prefer input.");for(let[p,y]of Object.entries(o)){if(typeof p!="string")throw new Error("score names must be strings");if(typeof y!="number")throw new Error("score values must be numbers");if(y<0||y>1)throw new Error("score values must be between 0 and 1")}if(i!==void 0){for(let p of Object.keys(i))if(typeof p!="string")throw new Error("metadata keys must be strings")}if(this.dataset&&u===void 0)throw new Error("datasetRecordId must be specified when using a dataset");if(!this.dataset&&u!==void 0)throw new Error("datasetRecordId cannot be specified when not using a dataset");let l={id:s||pe(),inputs:t??c,output:r,expected:n,scores:o,project_id:this.project.id,experiment_id:this.id,user_id:this.user_id,created:new Date().toISOString(),dataset_record_id:u,metadata:i};if(!d)for(let[p,y]of Object.entries(l)){let g=JSON.stringify(y);if(g&&g.length>65535)throw new Error(`Events must be less than 64KB in size. Please reduce the size of your ${p}.`)}return this.logger.log([l]),l.id}async summarize(t={}){let{summarizeScores:r=!0,comparisonExperimentId:n=void 0}=t||{};await this.logger.flush();let o=`${X}/app/${encodeURIComponent(Me)}/p/${encodeURIComponent(this.project.name)}`,i=`${o}/${encodeURIComponent(this.name)}`,s,u;if(r){if(n===void 0){let l=(await R().get("/crud/base_experiments",{id:this.id})).data;l.length>0&&(n=l[0].base_exp_id,u=l[0].base_exp_name)}n!==void 0&&(s=await R().get_json("/experiment-comparison",{experiment_id:this.id,base_experiment_id:n},3))}return{projectName:this.project.name,experimentName:this.name,projectUrl:o,experimentUrl:i,comparisonExperimentName:u,scores:s}}};async function Br(e,{name:t,description:r,version:n}={}){let o={org_id:me,project_name:e,dataset_name:t,description:r},i=await Nt().post_json("api/dataset/register",o),s=i.project,u=i.dataset,d=(await Pt()).id;return new qe(s,u.id,u.name,d,n)}var qe=class{constructor(t,r,n,o,i){this._fetchedData=void 0;this.project=t,this.id=r,this.name=n,this.user_id=o,this.pinnedVersion=i,this.logger=new ge}insert({input:t,output:r,metadata:n,id:o,allowLarge:i=!1}){if(n!==void 0){for(let u of Object.keys(n))if(typeof u!="string")throw new Error("metadata keys must be strings")}let s={id:o||pe(),inputs:t,output:r,project_id:this.project.id,dataset_id:this.id,user_id:this.user_id,created:new Date().toISOString(),metadata:n};if(!i)for(let[u,d]of Object.entries(s)){let c=JSON.stringify(d);if(c&&c.length>65535)throw new Error(`Records must be less than 64KB in size. Please reduce the size of your ${u}.`)}return this.logger.log([s]),s.id}delete(t){let r=this.user_id,n={id:t,project_id:this.project.id,dataset_id:this.id,user_id:r,created:new Date().toISOString(),_object_delete:!0};return this.logger.log([n]),n.id}async summarize(t={}){let{summarizeData:r=!0}=t||{};await this.logger.flush();let n=`${X}/app/${encodeURIComponent(Me)}/p/${encodeURIComponent(this.project.name)}`,o=`${n}/d/${encodeURIComponent(this.name)}`,i;return r&&(i=await R().get_json("dataset-summary",{dataset_id:this.id},3)),{projectName:this.project.name,datasetName:this.name,projectUrl:n,datasetUrl:o,dataSummary:i}}async*fetch(){let t=await this.fetchedData();for(let r of t)yield{id:r.id,input:r.input&&JSON.parse(r.input),output:r.input&&JSON.parse(r.output),metadata:r.metadata&&JSON.parse(r.metadata)};this.clearCache()}[Symbol.asyncIterator](){return this.fetch()}async fetchedData(){if(this._fetchedData===void 0){let r=await(await R().get("object/dataset",{id:this.id,fmt:"json",version:this.pinnedVersion})).data;this._fetchedData=r.split(`
|
|
4
|
-
`).filter(n=>n.trim()!=="").map(n=>JSON.parse(n))}return this._fetchedData||[]}clearCache(){this._fetchedData=void 0}async version(){if(this.pinnedVersion!==void 0)return this.pinnedVersion;{let t=await this.fetchedData(),r;for(let n of t){let o=n[
|
|
1
|
+
function v(e,t){return function(){return e.apply(t,arguments)}}var{toString:Ct}=Object.prototype,{getPrototypeOf:xe}=Object,Z=(e=>t=>{let r=Ct.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),R=e=>(e=e.toLowerCase(),t=>Z(t)===e),ee=e=>t=>typeof t===e,{isArray:U}=Array,H=ee("undefined");function Dt(e){return e!==null&&!H(e)&&e.constructor!==null&&!H(e.constructor)&&_(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var $e=R("ArrayBuffer");function Ut(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&$e(e.buffer),t}var jt=ee("string"),_=ee("function"),Ke=ee("number"),te=e=>e!==null&&typeof e=="object",kt=e=>e===!0||e===!1,Y=e=>{if(Z(e)!=="object")return!1;let t=xe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Lt=R("Date"),Ft=R("File"),It=R("Blob"),Bt=R("FileList"),vt=e=>te(e)&&_(e.pipe),Ht=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||_(e.append)&&((t=Z(e))==="formdata"||t==="object"&&_(e.toString)&&e.toString()==="[object FormData]"))},zt=R("URLSearchParams"),qt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function z(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,o;if(typeof e!="object"&&(e=[e]),U(e))for(n=0,o=e.length;n<o;n++)t.call(null,e[n],n,e);else{let i=r?Object.getOwnPropertyNames(e):Object.keys(e),s=i.length,u;for(n=0;n<s;n++)u=i[n],t.call(null,e[u],u,e)}}function We(e,t){t=t.toLowerCase();let r=Object.keys(e),n=r.length,o;for(;n-- >0;)if(o=r[n],t===o.toLowerCase())return o;return null}var Ge=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Xe=e=>!H(e)&&e!==Ge;function we(){let{caseless:e}=Xe(this)&&this||{},t={},r=(n,o)=>{let i=e&&We(t,o)||o;Y(t[i])&&Y(n)?t[i]=we(t[i],n):Y(n)?t[i]=we({},n):U(n)?t[i]=n.slice():t[i]=n};for(let n=0,o=arguments.length;n<o;n++)arguments[n]&&z(arguments[n],r);return t}var Mt=(e,t,r,{allOwnKeys:n}={})=>(z(t,(o,i)=>{r&&_(o)?e[i]=v(o,r):e[i]=o},{allOwnKeys:n}),e),Jt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Vt=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},$t=(e,t,r,n)=>{let o,i,s,u={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)s=o[i],(!n||n(s,e,t))&&!u[s]&&(t[s]=e[s],u[s]=!0);e=r!==!1&&xe(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Kt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},Wt=e=>{if(!e)return null;if(U(e))return e;let t=e.length;if(!Ke(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},Gt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&xe(Uint8Array)),Xt=(e,t)=>{let n=(e&&e[Symbol.iterator]).call(e),o;for(;(o=n.next())&&!o.done;){let i=o.value;t.call(e,i[0],i[1])}},Qt=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},Yt=R("HTMLFormElement"),Zt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,o){return n.toUpperCase()+o}),Je=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),er=R("RegExp"),Qe=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};z(r,(o,i)=>{t(o,i,e)!==!1&&(n[i]=o)}),Object.defineProperties(e,n)},tr=e=>{Qe(e,(t,r)=>{if(_(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(_(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},rr=(e,t)=>{let r={},n=o=>{o.forEach(i=>{r[i]=!0})};return U(e)?n(e):n(String(e).split(t)),r},nr=()=>{},or=(e,t)=>(e=+e,Number.isFinite(e)?e:t),ye="abcdefghijklmnopqrstuvwxyz",Ve="0123456789",Ye={DIGIT:Ve,ALPHA:ye,ALPHA_DIGIT:ye+ye.toUpperCase()+Ve},ir=(e=16,t=Ye.ALPHA_DIGIT)=>{let r="",{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};function sr(e){return!!(e&&_(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}var ar=e=>{let t=new Array(10),r=(n,o)=>{if(te(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[o]=n;let i=U(n)?[]:{};return z(n,(s,u)=>{let d=r(s,o+1);!H(d)&&(i[u]=d)}),t[o]=void 0,i}}return n};return r(e,0)},ur=R("AsyncFunction"),cr=e=>e&&(te(e)||_(e))&&_(e.then)&&_(e.catch),a={isArray:U,isArrayBuffer:$e,isBuffer:Dt,isFormData:Ht,isArrayBufferView:Ut,isString:jt,isNumber:Ke,isBoolean:kt,isObject:te,isPlainObject:Y,isUndefined:H,isDate:Lt,isFile:Ft,isBlob:It,isRegExp:er,isFunction:_,isStream:vt,isURLSearchParams:zt,isTypedArray:Gt,isFileList:Bt,forEach:z,merge:we,extend:Mt,trim:qt,stripBOM:Jt,inherits:Vt,toFlatObject:$t,kindOf:Z,kindOfTest:R,endsWith:Kt,toArray:Wt,forEachEntry:Xt,matchAll:Qt,isHTMLForm:Yt,hasOwnProperty:Je,hasOwnProp:Je,reduceDescriptors:Qe,freezeMethods:tr,toObjectSet:rr,toCamelCase:Zt,noop:nr,toFiniteNumber:or,findKey:We,global:Ge,isContextDefined:Xe,ALPHABET:Ye,generateString:ir,isSpecCompliantForm:sr,toJSONObject:ar,isAsyncFn:ur,isThenable:cr};function j(e,t,r,n,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o)}a.inherits(j,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var Ze=j.prototype,et={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{et[e]={value:e}});Object.defineProperties(j,et);Object.defineProperty(Ze,"isAxiosError",{value:!0});j.from=(e,t,r,n,o,i)=>{let s=Object.create(Ze);return a.toFlatObject(e,s,function(d){return d!==Error.prototype},u=>u!=="isAxiosError"),j.call(s,e.message,t,r,n,o),s.cause=e,s.name=e.name,i&&Object.assign(s,i),s};var m=j;var re=null;function Ee(e){return a.isPlainObject(e)||a.isArray(e)}function rt(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function tt(e,t,r){return e?e.concat(t).map(function(o,i){return o=rt(o),!r&&i?"["+o+"]":o}).join(r?".":""):t}function lr(e){return a.isArray(e)&&!e.some(Ee)}var dr=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function fr(e,t,r){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new(re||FormData),r=a.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,A){return!a.isUndefined(A[h])});let n=r.metaTokens,o=r.visitor||l,i=r.dots,s=r.indexes,d=(r.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(o))throw new TypeError("visitor must be a function");function c(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(!d&&a.isBlob(f))throw new m("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function l(f,h,A){let S=f;if(f&&!A&&typeof f=="object"){if(a.endsWith(h,"{}"))h=n?h:h.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&lr(f)||(a.isFileList(f)||a.endsWith(h,"[]"))&&(S=a.toArray(f)))return h=rt(h),S.forEach(function(Q,Tt){!(a.isUndefined(Q)||Q===null)&&t.append(s===!0?tt([h],Tt,i):s===null?h:h+"[]",c(Q))}),!1}return Ee(f)?!0:(t.append(tt(A,h,i),c(f)),!1)}let p=[],w=Object.assign(dr,{defaultVisitor:l,convertValue:c,isVisitable:Ee});function g(f,h){if(!a.isUndefined(f)){if(p.indexOf(f)!==-1)throw Error("Circular reference detected in "+h.join("."));p.push(f),a.forEach(f,function(S,D){(!(a.isUndefined(S)||S===null)&&o.call(t,S,a.isString(D)?D.trim():D,h,w))===!0&&g(S,h?h.concat(D):[D])}),p.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return g(e),t}var N=fr;function nt(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function ot(e,t){this._pairs=[],e&&N(e,this,t)}var it=ot.prototype;it.append=function(t,r){this._pairs.push([t,r])};it.toString=function(t){let r=t?function(n){return t.call(this,n,nt)}:nt;return this._pairs.map(function(o){return r(o[0])+"="+r(o[1])},"").join("&")};var ne=ot;function pr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function q(e,t,r){if(!t)return e;let n=r&&r.encode||pr,o=r&&r.serialize,i;if(o?i=o(t,r):i=a.isURLSearchParams(t)?t.toString():new ne(t,r).toString(n),i){let s=e.indexOf("#");s!==-1&&(e=e.slice(0,s)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}var be=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(n){n!==null&&t(n)})}},_e=be;var oe={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var st=typeof URLSearchParams<"u"?URLSearchParams:ne;var at=typeof FormData<"u"?FormData:null;var ut=typeof Blob<"u"?Blob:null;var mr=(()=>{let e;return typeof navigator<"u"&&((e=navigator.product)==="ReactNative"||e==="NativeScript"||e==="NS")?!1:typeof window<"u"&&typeof document<"u"})(),hr=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),E={isBrowser:!0,classes:{URLSearchParams:st,FormData:at,Blob:ut},isStandardBrowserEnv:mr,isStandardBrowserWebWorkerEnv:hr,protocols:["http","https","file","blob","url","data"]};function Se(e,t){return N(e,new E.classes.URLSearchParams,Object.assign({visitor:function(r,n,o,i){return E.isNode&&a.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}function gr(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function yr(e){let t={},r=Object.keys(e),n,o=r.length,i;for(n=0;n<o;n++)i=r[n],t[i]=e[i];return t}function wr(e){function t(r,n,o,i){let s=r[i++],u=Number.isFinite(+s),d=i>=r.length;return s=!s&&a.isArray(o)?o.length:s,d?(a.hasOwnProp(o,s)?o[s]=[o[s],n]:o[s]=n,!u):((!o[s]||!a.isObject(o[s]))&&(o[s]=[]),t(r,n,o[s],i)&&a.isArray(o[s])&&(o[s]=yr(o[s])),!u)}if(a.isFormData(e)&&a.isFunction(e.entries)){let r={};return a.forEachEntry(e,(n,o)=>{t(gr(n),o,r,0)}),r}return null}var ie=wr;var xr={"Content-Type":void 0};function Er(e,t,r){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var se={transitional:oe,adapter:["xhr","http"],transformRequest:[function(t,r){let n=r.getContentType()||"",o=n.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return o&&o?JSON.stringify(ie(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let u;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Se(t,this.formSerializer).toString();if((u=a.isFileList(t))||n.indexOf("multipart/form-data")>-1){let d=this.env&&this.env.FormData;return N(u?{"files[]":t}:t,d&&new d,this.formSerializer)}}return i||o?(r.setContentType("application/json",!1),Er(t)):t}],transformResponse:[function(t){let r=this.transitional||se.transitional,n=r&&r.forcedJSONParsing,o=this.responseType==="json";if(t&&a.isString(t)&&(n&&!this.responseType||o)){let s=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t)}catch(u){if(s)throw u.name==="SyntaxError"?m.from(u,m.ERR_BAD_RESPONSE,this,null,this.response):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:E.classes.FormData,Blob:E.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};a.forEach(["delete","get","head"],function(t){se.headers[t]={}});a.forEach(["post","put","patch"],function(t){se.headers[t]=a.merge(xr)});var k=se;var br=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ct=e=>{let t={},r,n,o;return e&&e.split(`
|
|
2
|
+
`).forEach(function(s){o=s.indexOf(":"),r=s.substring(0,o).trim().toLowerCase(),n=s.substring(o+1).trim(),!(!r||t[r]&&br[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t};var lt=Symbol("internals");function M(e){return e&&String(e).trim().toLowerCase()}function ae(e){return e===!1||e==null?e:a.isArray(e)?e.map(ae):String(e)}function _r(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}var Sr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Re(e,t,r,n,o){if(a.isFunction(n))return n.call(this,t,r);if(o&&(t=r),!!a.isString(t)){if(a.isString(n))return t.indexOf(n)!==-1;if(a.isRegExp(n))return n.test(t)}}function Rr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Ar(e,t){let r=a.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(o,i,s){return this[n].call(this,t,o,i,s)},configurable:!0})})}var L=class{constructor(t){t&&this.set(t)}set(t,r,n){let o=this;function i(u,d,c){let l=M(d);if(!l)throw new Error("header name must be a non-empty string");let p=a.findKey(o,l);(!p||o[p]===void 0||c===!0||c===void 0&&o[p]!==!1)&&(o[p||d]=ae(u))}let s=(u,d)=>a.forEach(u,(c,l)=>i(c,l,d));return a.isPlainObject(t)||t instanceof this.constructor?s(t,r):a.isString(t)&&(t=t.trim())&&!Sr(t)?s(ct(t),r):t!=null&&i(r,t,n),this}get(t,r){if(t=M(t),t){let n=a.findKey(this,t);if(n){let o=this[n];if(!r)return o;if(r===!0)return _r(o);if(a.isFunction(r))return r.call(this,o,n);if(a.isRegExp(r))return r.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=M(t),t){let n=a.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Re(this,this[n],n,r)))}return!1}delete(t,r){let n=this,o=!1;function i(s){if(s=M(s),s){let u=a.findKey(n,s);u&&(!r||Re(n,n[u],u,r))&&(delete n[u],o=!0)}}return a.isArray(t)?t.forEach(i):i(t),o}clear(t){let r=Object.keys(this),n=r.length,o=!1;for(;n--;){let i=r[n];(!t||Re(this,this[i],i,t,!0))&&(delete this[i],o=!0)}return o}normalize(t){let r=this,n={};return a.forEach(this,(o,i)=>{let s=a.findKey(n,i);if(s){r[s]=ae(o),delete r[i];return}let u=t?Rr(i):String(i).trim();u!==i&&delete r[i],r[u]=ae(o),n[u]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return a.forEach(this,(n,o)=>{n!=null&&n!==!1&&(r[o]=t&&a.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
|
|
3
|
+
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(o=>n.set(o)),n}static accessor(t){let n=(this[lt]=this[lt]={accessors:{}}).accessors,o=this.prototype;function i(s){let u=M(s);n[u]||(Ar(o,s),n[u]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}};L.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);a.freezeMethods(L.prototype);a.freezeMethods(L);var b=L;function J(e,t){let r=this||k,n=t||r,o=b.from(n.headers),i=n.data;return a.forEach(e,function(u){i=u.call(r,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function V(e){return!!(e&&e.__CANCEL__)}function dt(e,t,r){m.call(this,e??"canceled",m.ERR_CANCELED,t,r),this.name="CanceledError"}a.inherits(dt,m,{__CANCEL__:!0});var P=dt;function Ae(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new m("Request failed with status code "+r.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var ft=E.isStandardBrowserEnv?function(){return{write:function(r,n,o,i,s,u){let d=[];d.push(r+"="+encodeURIComponent(n)),a.isNumber(o)&&d.push("expires="+new Date(o).toGMTString()),a.isString(i)&&d.push("path="+i),a.isString(s)&&d.push("domain="+s),u===!0&&d.push("secure"),document.cookie=d.join("; ")},read:function(r){let n=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}();function Oe(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Ne(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}function $(e,t){return e&&!Oe(t)?Ne(e,t):t}var pt=E.isStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function o(i){let s=i;return t&&(r.setAttribute("href",s),s=r.href),r.setAttribute("href",s),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=o(window.location.href),function(s){let u=a.isString(s)?o(s):s;return u.protocol===n.protocol&&u.host===n.host}}():function(){return function(){return!0}}();function Pe(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Or(e,t){e=e||10;let r=new Array(e),n=new Array(e),o=0,i=0,s;return t=t!==void 0?t:1e3,function(d){let c=Date.now(),l=n[i];s||(s=c),r[o]=d,n[o]=c;let p=i,w=0;for(;p!==o;)w+=r[p++],p=p%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),c-s<t)return;let g=l&&c-l;return g?Math.round(w*1e3/g):void 0}}var mt=Or;function ht(e,t){let r=0,n=mt(50,250);return o=>{let i=o.loaded,s=o.lengthComputable?o.total:void 0,u=i-r,d=n(u),c=i<=s;r=i;let l={loaded:i,total:s,progress:s?i/s:void 0,bytes:u,rate:d||void 0,estimated:d&&s&&c?(s-i)/d:void 0,event:o};l[t?"download":"upload"]=!0,e(l)}}var Nr=typeof XMLHttpRequest<"u",gt=Nr&&function(e){return new Promise(function(r,n){let o=e.data,i=b.from(e.headers).normalize(),s=e.responseType,u;function d(){e.cancelToken&&e.cancelToken.unsubscribe(u),e.signal&&e.signal.removeEventListener("abort",u)}a.isFormData(o)&&(E.isStandardBrowserEnv||E.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.setContentType("multipart/form-data;",!1));let c=new XMLHttpRequest;if(e.auth){let g=e.auth.username||"",f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(g+":"+f))}let l=$(e.baseURL,e.url);c.open(e.method.toUpperCase(),q(l,e.params,e.paramsSerializer),!0),c.timeout=e.timeout;function p(){if(!c)return;let g=b.from("getAllResponseHeaders"in c&&c.getAllResponseHeaders()),h={data:!s||s==="text"||s==="json"?c.responseText:c.response,status:c.status,statusText:c.statusText,headers:g,config:e,request:c};Ae(function(S){r(S),d()},function(S){n(S),d()},h),c=null}if("onloadend"in c?c.onloadend=p:c.onreadystatechange=function(){!c||c.readyState!==4||c.status===0&&!(c.responseURL&&c.responseURL.indexOf("file:")===0)||setTimeout(p)},c.onabort=function(){c&&(n(new m("Request aborted",m.ECONNABORTED,e,c)),c=null)},c.onerror=function(){n(new m("Network Error",m.ERR_NETWORK,e,c)),c=null},c.ontimeout=function(){let f=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",h=e.transitional||oe;e.timeoutErrorMessage&&(f=e.timeoutErrorMessage),n(new m(f,h.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,c)),c=null},E.isStandardBrowserEnv){let g=(e.withCredentials||pt(l))&&e.xsrfCookieName&&ft.read(e.xsrfCookieName);g&&i.set(e.xsrfHeaderName,g)}o===void 0&&i.setContentType(null),"setRequestHeader"in c&&a.forEach(i.toJSON(),function(f,h){c.setRequestHeader(h,f)}),a.isUndefined(e.withCredentials)||(c.withCredentials=!!e.withCredentials),s&&s!=="json"&&(c.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&c.addEventListener("progress",ht(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&c.upload&&c.upload.addEventListener("progress",ht(e.onUploadProgress)),(e.cancelToken||e.signal)&&(u=g=>{c&&(n(!g||g.type?new P(null,e,c):g),c.abort(),c=null)},e.cancelToken&&e.cancelToken.subscribe(u),e.signal&&(e.signal.aborted?u():e.signal.addEventListener("abort",u)));let w=Pe(l);if(w&&E.protocols.indexOf(w)===-1){n(new m("Unsupported protocol "+w+":",m.ERR_BAD_REQUEST,e));return}c.send(o||null)})};var ue={http:re,xhr:gt};a.forEach(ue,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});var yt={getAdapter:e=>{e=a.isArray(e)?e:[e];let{length:t}=e,r,n;for(let o=0;o<t&&(r=e[o],!(n=a.isString(r)?ue[r.toLowerCase()]:r));o++);if(!n)throw n===!1?new m(`Adapter ${r} is not supported by the environment`,"ERR_NOT_SUPPORT"):new Error(a.hasOwnProp(ue,r)?`Adapter '${r}' is not available in the build`:`Unknown adapter '${r}'`);if(!a.isFunction(n))throw new TypeError("adapter is not a function");return n},adapters:ue};function Te(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new P(null,e)}function ce(e){return Te(e),e.headers=b.from(e.headers),e.data=J.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),yt.getAdapter(e.adapter||k.adapter)(e).then(function(n){return Te(e),n.data=J.call(e,e.transformResponse,n),n.headers=b.from(n.headers),n},function(n){return V(n)||(Te(e),n&&n.response&&(n.response.data=J.call(e,e.transformResponse,n.response),n.response.headers=b.from(n.response.headers))),Promise.reject(n)})}var wt=e=>e instanceof b?e.toJSON():e;function O(e,t){t=t||{};let r={};function n(c,l,p){return a.isPlainObject(c)&&a.isPlainObject(l)?a.merge.call({caseless:p},c,l):a.isPlainObject(l)?a.merge({},l):a.isArray(l)?l.slice():l}function o(c,l,p){if(a.isUndefined(l)){if(!a.isUndefined(c))return n(void 0,c,p)}else return n(c,l,p)}function i(c,l){if(!a.isUndefined(l))return n(void 0,l)}function s(c,l){if(a.isUndefined(l)){if(!a.isUndefined(c))return n(void 0,c)}else return n(void 0,l)}function u(c,l,p){if(p in t)return n(c,l);if(p in e)return n(void 0,c)}let d={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:u,headers:(c,l)=>o(wt(c),wt(l),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(l){let p=d[l]||o,w=p(e[l],t[l],l);a.isUndefined(w)&&p!==u||(r[l]=w)}),r}var le="1.4.0";var Ce={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ce[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});var xt={};Ce.transitional=function(t,r,n){function o(i,s){return"[Axios v"+le+"] Transitional option '"+i+"'"+s+(n?". "+n:"")}return(i,s,u)=>{if(t===!1)throw new m(o(s," has been removed"+(r?" in "+r:"")),m.ERR_DEPRECATED);return r&&!xt[s]&&(xt[s]=!0,console.warn(o(s," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,s,u):!0}};function Pr(e,t,r){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);let n=Object.keys(e),o=n.length;for(;o-- >0;){let i=n[o],s=t[i];if(s){let u=e[i],d=u===void 0||s(u,i,e);if(d!==!0)throw new m("option "+i+" must be "+d,m.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new m("Unknown option "+i,m.ERR_BAD_OPTION)}}var de={assertOptions:Pr,validators:Ce};var T=de.validators,F=class{constructor(t){this.defaults=t,this.interceptors={request:new _e,response:new _e}}request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=O(this.defaults,r);let{transitional:n,paramsSerializer:o,headers:i}=r;n!==void 0&&de.assertOptions(n,{silentJSONParsing:T.transitional(T.boolean),forcedJSONParsing:T.transitional(T.boolean),clarifyTimeoutError:T.transitional(T.boolean)},!1),o!=null&&(a.isFunction(o)?r.paramsSerializer={serialize:o}:de.assertOptions(o,{encode:T.function,serialize:T.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let s;s=i&&a.merge(i.common,i[r.method]),s&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),r.headers=b.concat(s,i);let u=[],d=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(d=d&&h.synchronous,u.unshift(h.fulfilled,h.rejected))});let c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let l,p=0,w;if(!d){let f=[ce.bind(this),void 0];for(f.unshift.apply(f,u),f.push.apply(f,c),w=f.length,l=Promise.resolve(r);p<w;)l=l.then(f[p++],f[p++]);return l}w=u.length;let g=r;for(p=0;p<w;){let f=u[p++],h=u[p++];try{g=f(g)}catch(A){h.call(this,A);break}}try{l=ce.call(this,g)}catch(f){return Promise.reject(f)}for(p=0,w=c.length;p<w;)l=l.then(c[p++],c[p++]);return l}getUri(t){t=O(this.defaults,t);let r=$(t.baseURL,t.url);return q(r,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){F.prototype[t]=function(r,n){return this.request(O(n||{},{method:t,url:r,data:(n||{}).data}))}});a.forEach(["post","put","patch"],function(t){function r(n){return function(i,s,u){return this.request(O(u||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:s}))}}F.prototype[t]=r(),F.prototype[t+"Form"]=r(!0)});var K=F;var De=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});let n=this;this.promise.then(o=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](o);n._listeners=null}),this.promise.then=o=>{let i,s=new Promise(u=>{n.subscribe(u),i=u}).then(o);return s.cancel=function(){n.unsubscribe(i)},s},t(function(i,s,u){n.reason||(n.reason=new P(i,s,u),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new e(function(o){t=o}),cancel:t}}},Et=De;function Ue(e){return function(r){return e.apply(null,r)}}function je(e){return a.isObject(e)&&e.isAxiosError===!0}var ke={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ke).forEach(([e,t])=>{ke[t]=e});var bt=ke;function _t(e){let t=new K(e),r=v(K.prototype.request,t);return a.extend(r,K.prototype,t,{allOwnKeys:!0}),a.extend(r,t,null,{allOwnKeys:!0}),r.create=function(o){return _t(O(e,o))},r}var y=_t(k);y.Axios=K;y.CanceledError=P;y.CancelToken=Et;y.isCancel=V;y.VERSION=le;y.toFormData=N;y.AxiosError=m;y.Cancel=y.CanceledError;y.all=function(t){return Promise.all(t)};y.spread=Ue;y.isAxiosError=je;y.mergeConfig=O;y.AxiosHeaders=b;y.formToJSON=e=>ie(a.isHTMLForm(e)?new FormData(e):e);y.HttpStatusCode=bt;y.default=y;var I=y;var{Axios:pi,AxiosError:mi,CanceledError:hi,isCancel:gi,CancelToken:yi,VERSION:wi,all:xi,Cancel:Ei,isAxiosError:bi,spread:_i,toFormData:Si,AxiosHeaders:Ri,HttpStatusCode:Ai,formToJSON:Oi,mergeConfig:Ni}=I;var fe,Tr=new Uint8Array(16);function Le(){if(!fe&&(fe=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!fe))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return fe(Tr)}var x=[];for(let e=0;e<256;++e)x.push((e+256).toString(16).slice(1));function St(e,t=0){return(x[e[t+0]]+x[e[t+1]]+x[e[t+2]]+x[e[t+3]]+"-"+x[e[t+4]]+x[e[t+5]]+"-"+x[e[t+6]]+x[e[t+7]]+"-"+x[e[t+8]]+x[e[t+9]]+"-"+x[e[t+10]]+x[e[t+11]]+x[e[t+12]]+x[e[t+13]]+x[e[t+14]]+x[e[t+15]]).toLowerCase()}var Cr=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Fe={randomUUID:Cr};function Dr(e,t,r){if(Fe.randomUUID&&!t&&!e)return Fe.randomUUID();e=e||{};let n=e.random||(e.rng||Le)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let o=0;o<16;++o)t[r+o]=n[o];return t}return St(n)}var pe=Dr;var Ur={makeAxios:e=>I.create({...e}),getRepoStatus:async()=>{},getPastNAncestors:async()=>[],getEnv:e=>{}},B=Ur;var G={current_project:null,current_experiment:null},X=null,me=null,qe=null,Ot=null,Rt=!1,jr="_xact_id",he=class{constructor(t){this.base_url=t,this.token=null,this.session=null,this._reset()}async ping(){try{let t=await this.get("ping");return W===null&&(W=t.data),t.status===200}catch{return!1}}make_long_lived(){this._reset()}set_token(t){t=t.trim(),this.token=t,this._reset()}_reset(){let t={};this.token&&(t.Authorization=`Bearer ${this.token}`),this.session=B.makeAxios({headers:t})}async get(t,r=void 0){return await this.session.get(ve(this.base_url,t),{params:r})}async post(t,r=void 0){return await this.session.post(ve(this.base_url,t),r)}async get_json(t,r=void 0,n=0){let o=n+1;for(let i=0;i<o;i++)try{return(await this.get(`${t}`,r)).data}catch(s){if(i<o-1){console.log(`Retrying API request ${t} ${r} ${s.status} ${s.text}`);continue}throw s}}async post_json(t,r=void 0){return(await this.post(`${t}`,r)).data}},Ie=null;function Me(){return Ie||(Ie=new he(X)),Ie}var Be=null;function C(){return Be||(Be=new he(Ot)),Be}var W=null;async function Nt(){return W===null&&(W=await C().get_json("ping")),W}var At=class{constructor(t,r,n){this.name=t,this.id=r,this.org_id=n}};var ge=class{constructor(){this.items=[];this.active_flush=Promise.resolve([]);this.active_flush_resolved=!0}log(t){this.items.push(...t),this.active_flush_resolved&&(this.active_flush_resolved=!1,this.active_flush=this.flush_once())}async flush_once(){this.active_flush_resolved=!1;let t=this.items;this.items=[];let r=[];return t.length>0&&(r=(await C().post_json("logs",t)).data),this.items.length>0?this.active_flush=this.flush_once():this.active_flush_resolved=!0,r}async flush(){for(;await this.active_flush,!this.active_flush_resolved;);}};async function $i(e,t={}){let{experiment:r,description:n,dataset:o,baseExperiment:i,update:s,apiUrl:u,apiKey:d,orgName:c,disableCache:l}=t||{};await Pt({orgName:c,disableCache:l,apiKey:d,apiUrl:u});let p=await Lr(e,{experimentName:r,description:n,dataset:o,update:s,baseExperiment:i});return G.current_experiment=p,p}async function Ki(e,t={}){let{dataset:r,description:n,version:o,apiUrl:i,apiKey:s,orgName:u,disableCache:d}=t||{};return await Pt({orgName:u,disableCache:d,apiKey:s,apiUrl:i}),await Fr(e,{name:r,description:n,version:o})}async function Pt(e={}){let{apiUrl:t=B.getEnv("BRAINTRUST_API_URL")||"https://www.braintrustdata.com",apiKey:r=B.getEnv("BRAINTRUST_API_KEY"),orgName:n=void 0,disableCache:o=!1,forceLogin:i=!1}=e||{};if(Rt&&!i)return;X=t;let s=null,u=!1,d=null;if(r!==void 0){let l=(await I.post(ve(X,"/api/apikey/login"),{token:r})).data;kr(l.org_info,n),d=C(),d.set_token(r),u=await d.ping()}else throw new Error("Please specify an api key. Token based login is not yet implemented in the JS client.");if(!d)throw new Error("Conn should be set at this point (a bug)");u||await d.get("ping"),d.make_long_lived(),Me().set_token(r),Rt=!0}function Wi(e){if(!G.current_experiment)throw new Error("Not initialized. Please call init() first");return G.current_experiment.log(e)}async function Gi(e={}){if(!G.current_experiment)throw new Error("Not initialized. Please call init() first");return await G.current_experiment.summarize(e)}function kr(e,t){if(e.length===0)throw new Error("This user is not part of any organizations.");for(let r of e)if(t===void 0||r.name===t){me=r.id,qe=r.name,Ot=r.api_url;break}if(me===void 0)throw new Error(`Organization ${t} not found. Must be one of ${e.map(r=>r.name).join(", ")}`)}function ve(...e){return e.map(t=>t.replace(/^\//,"")).join("/")}async function Lr(e,{experimentName:t,description:r,dataset:n,update:o,baseExperiment:i}={experimentName:void 0,description:void 0,baseExperiment:void 0}){let s={project_name:e,org_id:me};t&&(s.experiment_name=t),r&&(s.description=r),o&&(s.update=o);let u=await B.getRepoStatus();u&&(s.repo_info=u),i?s.base_experiment=i:s.ancestor_commits=await B.getPastNAncestors(),n!==void 0&&(s.dataset_id=n.id,s.dataset_version=await n.version());let d=await Me().post_json("api/experiment/register",s),c=d.project,l=d.experiment,p=(await Nt()).id;return new He(c,l.id,l.name,p,n)}var He=class{constructor(t,r,n,o,i){this.project=t,this.id=r,this.name=n,this.user_id=o,this.dataset=i,this.logger=new ge}log({input:t,output:r,expected:n,scores:o,metadata:i,id:s,datasetRecordId:u,inputs:d}){if(t===void 0&&d===void 0)throw new Error("Either input or inputs (deprecated) must be specified. Prefer input.");if(t!==void 0&&d!==void 0)throw new Error("Only one of input or inputs (deprecated) can be specified. Prefer input.");for(let[l,p]of Object.entries(o)){if(typeof l!="string")throw new Error("score names must be strings");if(typeof p!="number")throw new Error("score values must be numbers");if(p<0||p>1)throw new Error("score values must be between 0 and 1")}if(i!==void 0){for(let l of Object.keys(i))if(typeof l!="string")throw new Error("metadata keys must be strings")}if(this.dataset&&u===void 0)throw new Error("datasetRecordId must be specified when using a dataset");if(!this.dataset&&u!==void 0)throw new Error("datasetRecordId cannot be specified when not using a dataset");let c={id:s||pe(),inputs:t??d,output:r,expected:n,scores:o,project_id:this.project.id,experiment_id:this.id,user_id:this.user_id,created:new Date().toISOString(),dataset_record_id:u,metadata:i};return this.logger.log([c]),c.id}async summarize(t={}){let{summarizeScores:r=!0,comparisonExperimentId:n=void 0}=t||{};await this.logger.flush();let o=`${X}/app/${encodeURIComponent(qe)}/p/${encodeURIComponent(this.project.name)}`,i=`${o}/${encodeURIComponent(this.name)}`,s,u;if(r){if(n===void 0){let l=(await C().get("/crud/base_experiments",{id:this.id})).data;l.length>0&&(n=l[0].base_exp_id,u=l[0].base_exp_name)}n!==void 0&&(s=await C().get_json("/experiment-comparison",{experiment_id:this.id,base_experiment_id:n},3))}return{projectName:this.project.name,experimentName:this.name,projectUrl:o,experimentUrl:i,comparisonExperimentName:u,scores:s}}};async function Fr(e,{name:t,description:r,version:n}={}){let o={org_id:me,project_name:e,dataset_name:t,description:r},i=await Me().post_json("api/dataset/register",o),s=i.project,u=i.dataset,d=(await Nt()).id;return new ze(s,u.id,u.name,d,n)}var ze=class{constructor(t,r,n,o,i){this._fetchedData=void 0;this.project=t,this.id=r,this.name=n,this.user_id=o,this.pinnedVersion=i,this.logger=new ge}insert({input:t,output:r,metadata:n,id:o}){if(n!==void 0){for(let s of Object.keys(n))if(typeof s!="string")throw new Error("metadata keys must be strings")}let i={id:o||pe(),inputs:t,output:r,project_id:this.project.id,dataset_id:this.id,user_id:this.user_id,created:new Date().toISOString(),metadata:n};return this.logger.log([i]),i.id}delete(t){let r=this.user_id,n={id:t,project_id:this.project.id,dataset_id:this.id,user_id:r,created:new Date().toISOString(),_object_delete:!0};return this.logger.log([n]),n.id}async summarize(t={}){let{summarizeData:r=!0}=t||{};await this.logger.flush();let n=`${X}/app/${encodeURIComponent(qe)}/p/${encodeURIComponent(this.project.name)}`,o=`${n}/d/${encodeURIComponent(this.name)}`,i;return r&&(i=await C().get_json("dataset-summary",{dataset_id:this.id},3)),{projectName:this.project.name,datasetName:this.name,projectUrl:n,datasetUrl:o,dataSummary:i}}async*fetch(){let t=await this.fetchedData();for(let r of t)yield{id:r.id,input:r.input&&JSON.parse(r.input),output:r.input&&JSON.parse(r.output),metadata:r.metadata&&JSON.parse(r.metadata)};this.clearCache()}[Symbol.asyncIterator](){return this.fetch()}async fetchedData(){if(this._fetchedData===void 0){let r=await(await C().get("object/dataset",{id:this.id,fmt:"json",version:this.pinnedVersion})).data;this._fetchedData=r.split(`
|
|
4
|
+
`).filter(n=>n.trim()!=="").map(n=>JSON.parse(n))}return this._fetchedData||[]}clearCache(){this._fetchedData=void 0}async version(){if(this.pinnedVersion!==void 0)return this.pinnedVersion;{let t=await this.fetchedData(),r;for(let n of t){let o=n[jr];(r===void 0||(o??o>r))&&(r=o)}return r}}};export{ze as Dataset,He as Experiment,At as Project,$i as init,Ki as initDataset,Wi as log,Pt as login,Gi as summarize};
|
package/dist/cli.js
CHANGED
|
@@ -18915,8 +18915,8 @@ var require_package = __commonJS({
|
|
|
18915
18915
|
"package.json"(exports2, module2) {
|
|
18916
18916
|
module2.exports = {
|
|
18917
18917
|
name: "braintrust",
|
|
18918
|
-
version: "0.0.
|
|
18919
|
-
description: "SDK for integrating
|
|
18918
|
+
version: "0.0.43",
|
|
18919
|
+
description: "SDK for integrating Braintrust",
|
|
18920
18920
|
main: "./dist/index.js",
|
|
18921
18921
|
browser: {
|
|
18922
18922
|
"./dist/index.js": "./dist/browser.js",
|
|
@@ -23400,28 +23400,6 @@ async function _user_info() {
|
|
|
23400
23400
|
}
|
|
23401
23401
|
return _var_user_info;
|
|
23402
23402
|
}
|
|
23403
|
-
var _PROJECTS_ENDPOINT = "projects";
|
|
23404
|
-
async function _initProject(name) {
|
|
23405
|
-
const unique_key = { name, org_id: ORG_ID };
|
|
23406
|
-
let existing = [];
|
|
23407
|
-
for (let i = 0; i < 2; i++) {
|
|
23408
|
-
existing = await log_conn().get_json(_PROJECTS_ENDPOINT, unique_key);
|
|
23409
|
-
if (existing.length > 0) {
|
|
23410
|
-
break;
|
|
23411
|
-
} else {
|
|
23412
|
-
try {
|
|
23413
|
-
existing = await log_conn().post_json(_PROJECTS_ENDPOINT, unique_key);
|
|
23414
|
-
} catch (e) {
|
|
23415
|
-
continue;
|
|
23416
|
-
}
|
|
23417
|
-
}
|
|
23418
|
-
}
|
|
23419
|
-
if (existing) {
|
|
23420
|
-
return existing[0];
|
|
23421
|
-
} else {
|
|
23422
|
-
throw new Error(`Unable to find record in ${_PROJECTS_ENDPOINT}`);
|
|
23423
|
-
}
|
|
23424
|
-
}
|
|
23425
23403
|
var LogThread = class {
|
|
23426
23404
|
constructor() {
|
|
23427
23405
|
this.items = [];
|
|
@@ -23478,15 +23456,15 @@ async function init(project, options = {}) {
|
|
|
23478
23456
|
apiKey,
|
|
23479
23457
|
apiUrl
|
|
23480
23458
|
});
|
|
23481
|
-
|
|
23482
|
-
|
|
23483
|
-
name: experiment,
|
|
23459
|
+
const ret = await _initExperiment(project, {
|
|
23460
|
+
experimentName: experiment,
|
|
23484
23461
|
description,
|
|
23485
23462
|
dataset,
|
|
23486
23463
|
update,
|
|
23487
23464
|
baseExperiment
|
|
23488
23465
|
});
|
|
23489
|
-
|
|
23466
|
+
_state.current_experiment = ret;
|
|
23467
|
+
return ret;
|
|
23490
23468
|
}
|
|
23491
23469
|
async function login(options = {}) {
|
|
23492
23470
|
const {
|
|
@@ -23548,20 +23526,23 @@ function _check_org_info(org_info, org_name) {
|
|
|
23548
23526
|
function _urljoin(...parts) {
|
|
23549
23527
|
return parts.map((x) => x.replace(/^\//, "")).join("/");
|
|
23550
23528
|
}
|
|
23551
|
-
async function _initExperiment(
|
|
23552
|
-
|
|
23529
|
+
async function _initExperiment(projectName, {
|
|
23530
|
+
experimentName,
|
|
23553
23531
|
description,
|
|
23554
23532
|
dataset,
|
|
23555
23533
|
update,
|
|
23556
23534
|
baseExperiment
|
|
23557
23535
|
} = {
|
|
23558
|
-
|
|
23536
|
+
experimentName: void 0,
|
|
23559
23537
|
description: void 0,
|
|
23560
23538
|
baseExperiment: void 0
|
|
23561
23539
|
}) {
|
|
23562
|
-
const args = {
|
|
23563
|
-
|
|
23564
|
-
|
|
23540
|
+
const args = {
|
|
23541
|
+
project_name: projectName,
|
|
23542
|
+
org_id: ORG_ID
|
|
23543
|
+
};
|
|
23544
|
+
if (experimentName) {
|
|
23545
|
+
args["experiment_name"] = experimentName;
|
|
23565
23546
|
}
|
|
23566
23547
|
if (description) {
|
|
23567
23548
|
args["description"] = description;
|
|
@@ -23573,37 +23554,26 @@ async function _initExperiment(project, {
|
|
|
23573
23554
|
if (repoStatus) {
|
|
23574
23555
|
args["repo_info"] = repoStatus;
|
|
23575
23556
|
}
|
|
23576
|
-
|
|
23577
|
-
|
|
23578
|
-
|
|
23579
|
-
|
|
23580
|
-
project_id: project.id,
|
|
23581
|
-
name: baseExperiment
|
|
23582
|
-
});
|
|
23583
|
-
const experiments = resp.data;
|
|
23584
|
-
if (experiments.length > 0) {
|
|
23585
|
-
base_exp_id = experiments[0]["id"];
|
|
23586
|
-
} else {
|
|
23587
|
-
throw new Error(`Base experiment ${baseExperiment} not found`);
|
|
23588
|
-
}
|
|
23589
|
-
}
|
|
23590
|
-
if (base_exp_id === void 0) {
|
|
23591
|
-
const resp = await conn.post("experiments-by-commits", {
|
|
23592
|
-
project_id: project.id,
|
|
23593
|
-
commits: await isomorph_default.getPastNAncestors()
|
|
23594
|
-
});
|
|
23595
|
-
base_exp_id = resp.data["experiment_id"];
|
|
23596
|
-
}
|
|
23597
|
-
if (base_exp_id !== void 0) {
|
|
23598
|
-
args["base_exp_id"] = base_exp_id;
|
|
23557
|
+
if (baseExperiment) {
|
|
23558
|
+
args["base_experiment"] = baseExperiment;
|
|
23559
|
+
} else {
|
|
23560
|
+
args["ancestor_commits"] = await isomorph_default.getPastNAncestors();
|
|
23599
23561
|
}
|
|
23600
23562
|
if (dataset !== void 0) {
|
|
23601
23563
|
args["dataset_id"] = dataset.id;
|
|
23602
23564
|
args["dataset_version"] = await dataset.version();
|
|
23603
23565
|
}
|
|
23604
|
-
const
|
|
23566
|
+
const response = await api_conn().post_json("api/experiment/register", args);
|
|
23567
|
+
const project = response.project;
|
|
23568
|
+
const experiment = response.experiment;
|
|
23605
23569
|
const user_id = (await _user_info())["id"];
|
|
23606
|
-
return new Experiment(
|
|
23570
|
+
return new Experiment(
|
|
23571
|
+
project,
|
|
23572
|
+
experiment.id,
|
|
23573
|
+
experiment.name,
|
|
23574
|
+
user_id,
|
|
23575
|
+
dataset
|
|
23576
|
+
);
|
|
23607
23577
|
}
|
|
23608
23578
|
var Experiment = class {
|
|
23609
23579
|
constructor(project, id, name, user_id, dataset) {
|
|
@@ -23619,7 +23589,7 @@ var Experiment = class {
|
|
|
23619
23589
|
*
|
|
23620
23590
|
* @param event The event to log.
|
|
23621
23591
|
* @param event.input The arguments that uniquely define a test case (an arbitrary, JSON serializable object). Later on,
|
|
23622
|
-
*
|
|
23592
|
+
* Braintrust will use the `input` to know whether two test cases are the same between experiments, so they should
|
|
23623
23593
|
* not contain experiment-specific state. A simple rule of thumb is that if you run the same experiment twice, the
|
|
23624
23594
|
* `input` should be identical.
|
|
23625
23595
|
* @param event.output The output of your application, including post-processing (an arbitrary, JSON serializable object),
|
|
@@ -23627,7 +23597,7 @@ var Experiment = class {
|
|
|
23627
23597
|
* the `output` should be the _result_ of the SQL query generated by the model, not the query itself, because there may
|
|
23628
23598
|
* be multiple valid queries that answer a single question.
|
|
23629
23599
|
* @param event.expected The ground truth value (an arbitrary, JSON serializable object) that you'd compare to `output` to
|
|
23630
|
-
* determine if your `output` value is correct or not.
|
|
23600
|
+
* determine if your `output` value is correct or not. Braintrust currently does not compare `output` to `expected` for
|
|
23631
23601
|
* you, since there are so many different ways to do that correctly. Instead, these values are just used to help you
|
|
23632
23602
|
* navigate your experiments while digging into analyses. However, we may later use these values to re-score outputs or
|
|
23633
23603
|
* fine-tune your models.
|
|
@@ -23640,9 +23610,7 @@ var Experiment = class {
|
|
|
23640
23610
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
23641
23611
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
23642
23612
|
* JSON-serializable type, but its keys must be strings.
|
|
23643
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
23644
|
-
* @param event.allowLarge: (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
23645
|
-
* upload pipeline or be truncated.
|
|
23613
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
23646
23614
|
* @param event.inputs (Deprecated) the same as `input` (will be removed in a future version)
|
|
23647
23615
|
* @returns The `id` of the logged event.
|
|
23648
23616
|
*/
|
|
@@ -23654,7 +23622,6 @@ var Experiment = class {
|
|
|
23654
23622
|
metadata,
|
|
23655
23623
|
id,
|
|
23656
23624
|
datasetRecordId,
|
|
23657
|
-
allowLarge = false,
|
|
23658
23625
|
inputs
|
|
23659
23626
|
}) {
|
|
23660
23627
|
if (input === void 0 && inputs === void 0) {
|
|
@@ -23704,16 +23671,6 @@ var Experiment = class {
|
|
|
23704
23671
|
dataset_record_id: datasetRecordId,
|
|
23705
23672
|
metadata
|
|
23706
23673
|
};
|
|
23707
|
-
if (!allowLarge) {
|
|
23708
|
-
for (const [key, value] of Object.entries(args)) {
|
|
23709
|
-
const serialized = JSON.stringify(value);
|
|
23710
|
-
if (serialized && serialized.length > 65535) {
|
|
23711
|
-
throw new Error(
|
|
23712
|
-
`Events must be less than 64KB in size. Please reduce the size of your ${key}.`
|
|
23713
|
-
);
|
|
23714
|
-
}
|
|
23715
|
-
}
|
|
23716
|
-
}
|
|
23717
23674
|
this.logger.log([args]);
|
|
23718
23675
|
return args.id;
|
|
23719
23676
|
}
|
|
@@ -23788,17 +23745,14 @@ var Dataset = class {
|
|
|
23788
23745
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
23789
23746
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
23790
23747
|
* JSON-serializable type, but its keys must be strings.
|
|
23791
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
23792
|
-
* @param event.allowLarge (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
23793
|
-
* upload pipeline or be truncated.
|
|
23748
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
23794
23749
|
* @returns The `id` of the logged record.
|
|
23795
23750
|
*/
|
|
23796
23751
|
insert({
|
|
23797
23752
|
input,
|
|
23798
23753
|
output,
|
|
23799
23754
|
metadata,
|
|
23800
|
-
id
|
|
23801
|
-
allowLarge = false
|
|
23755
|
+
id
|
|
23802
23756
|
}) {
|
|
23803
23757
|
if (metadata !== void 0) {
|
|
23804
23758
|
for (const key of Object.keys(metadata)) {
|
|
@@ -23817,16 +23771,6 @@ var Dataset = class {
|
|
|
23817
23771
|
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
23818
23772
|
metadata
|
|
23819
23773
|
};
|
|
23820
|
-
if (!allowLarge) {
|
|
23821
|
-
for (const [key, value] of Object.entries(args)) {
|
|
23822
|
-
const serialized = JSON.stringify(value);
|
|
23823
|
-
if (serialized && serialized.length > 65535) {
|
|
23824
|
-
throw new Error(
|
|
23825
|
-
`Records must be less than 64KB in size. Please reduce the size of your ${key}.`
|
|
23826
|
-
);
|
|
23827
|
-
}
|
|
23828
|
-
}
|
|
23829
|
-
}
|
|
23830
23774
|
this.logger.log([args]);
|
|
23831
23775
|
return args.id;
|
|
23832
23776
|
}
|
|
@@ -28637,7 +28581,7 @@ async function main() {
|
|
|
28637
28581
|
help: "The name of a specific organization to connect to. This is useful if you belong to multiple."
|
|
28638
28582
|
});
|
|
28639
28583
|
parser_run.add_argument("--api-url", {
|
|
28640
|
-
help: "Specify a custom braintrust api url. Defaults to https://www.braintrustdata.com. This is only necessary if you are using an experimental version of
|
|
28584
|
+
help: "Specify a custom braintrust api url. Defaults to https://www.braintrustdata.com. This is only necessary if you are using an experimental version of Braintrust"
|
|
28641
28585
|
});
|
|
28642
28586
|
parser_run.add_argument("--watch", {
|
|
28643
28587
|
action: "store_true",
|
|
@@ -28652,7 +28596,7 @@ async function main() {
|
|
|
28652
28596
|
});
|
|
28653
28597
|
parser_run.add_argument("--no-send-logs", {
|
|
28654
28598
|
action: "store_true",
|
|
28655
|
-
help: "Do not send logs to
|
|
28599
|
+
help: "Do not send logs to Braintrust. Useful for testing evaluators without uploading results."
|
|
28656
28600
|
});
|
|
28657
28601
|
parser_run.add_argument("--no-progress-bars", {
|
|
28658
28602
|
action: "store_true",
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* An isomorphic JS library for logging data to
|
|
2
|
+
* An isomorphic JS library for logging data to Braintrust.
|
|
3
3
|
*
|
|
4
4
|
* ### Quickstart
|
|
5
5
|
*
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ```
|
|
11
11
|
*
|
|
12
12
|
* Then, run a simple experiment with the following code (replace `YOUR_API_KEY` with
|
|
13
|
-
* your
|
|
13
|
+
* your Braintrust API key):
|
|
14
14
|
*
|
|
15
15
|
* ```javascript
|
|
16
16
|
* import * as braintrust from "braintrust";
|
package/dist/index.js
CHANGED
|
@@ -17988,28 +17988,6 @@ var Project = class {
|
|
|
17988
17988
|
this.org_id = org_id;
|
|
17989
17989
|
}
|
|
17990
17990
|
};
|
|
17991
|
-
var _PROJECTS_ENDPOINT = "projects";
|
|
17992
|
-
async function _initProject(name) {
|
|
17993
|
-
const unique_key = { name, org_id: ORG_ID };
|
|
17994
|
-
let existing = [];
|
|
17995
|
-
for (let i = 0; i < 2; i++) {
|
|
17996
|
-
existing = await log_conn().get_json(_PROJECTS_ENDPOINT, unique_key);
|
|
17997
|
-
if (existing.length > 0) {
|
|
17998
|
-
break;
|
|
17999
|
-
} else {
|
|
18000
|
-
try {
|
|
18001
|
-
existing = await log_conn().post_json(_PROJECTS_ENDPOINT, unique_key);
|
|
18002
|
-
} catch (e) {
|
|
18003
|
-
continue;
|
|
18004
|
-
}
|
|
18005
|
-
}
|
|
18006
|
-
}
|
|
18007
|
-
if (existing) {
|
|
18008
|
-
return existing[0];
|
|
18009
|
-
} else {
|
|
18010
|
-
throw new Error(`Unable to find record in ${_PROJECTS_ENDPOINT}`);
|
|
18011
|
-
}
|
|
18012
|
-
}
|
|
18013
17991
|
var LogThread = class {
|
|
18014
17992
|
constructor() {
|
|
18015
17993
|
this.items = [];
|
|
@@ -18066,15 +18044,15 @@ async function init(project, options = {}) {
|
|
|
18066
18044
|
apiKey,
|
|
18067
18045
|
apiUrl
|
|
18068
18046
|
});
|
|
18069
|
-
|
|
18070
|
-
|
|
18071
|
-
name: experiment,
|
|
18047
|
+
const ret = await _initExperiment(project, {
|
|
18048
|
+
experimentName: experiment,
|
|
18072
18049
|
description,
|
|
18073
18050
|
dataset,
|
|
18074
18051
|
update,
|
|
18075
18052
|
baseExperiment
|
|
18076
18053
|
});
|
|
18077
|
-
|
|
18054
|
+
_state.current_experiment = ret;
|
|
18055
|
+
return ret;
|
|
18078
18056
|
}
|
|
18079
18057
|
async function initDataset(project, options = {}) {
|
|
18080
18058
|
const {
|
|
@@ -18170,20 +18148,23 @@ function _check_org_info(org_info, org_name) {
|
|
|
18170
18148
|
function _urljoin(...parts) {
|
|
18171
18149
|
return parts.map((x) => x.replace(/^\//, "")).join("/");
|
|
18172
18150
|
}
|
|
18173
|
-
async function _initExperiment(
|
|
18174
|
-
|
|
18151
|
+
async function _initExperiment(projectName, {
|
|
18152
|
+
experimentName,
|
|
18175
18153
|
description,
|
|
18176
18154
|
dataset,
|
|
18177
18155
|
update,
|
|
18178
18156
|
baseExperiment
|
|
18179
18157
|
} = {
|
|
18180
|
-
|
|
18158
|
+
experimentName: void 0,
|
|
18181
18159
|
description: void 0,
|
|
18182
18160
|
baseExperiment: void 0
|
|
18183
18161
|
}) {
|
|
18184
|
-
const args = {
|
|
18185
|
-
|
|
18186
|
-
|
|
18162
|
+
const args = {
|
|
18163
|
+
project_name: projectName,
|
|
18164
|
+
org_id: ORG_ID
|
|
18165
|
+
};
|
|
18166
|
+
if (experimentName) {
|
|
18167
|
+
args["experiment_name"] = experimentName;
|
|
18187
18168
|
}
|
|
18188
18169
|
if (description) {
|
|
18189
18170
|
args["description"] = description;
|
|
@@ -18195,37 +18176,26 @@ async function _initExperiment(project, {
|
|
|
18195
18176
|
if (repoStatus) {
|
|
18196
18177
|
args["repo_info"] = repoStatus;
|
|
18197
18178
|
}
|
|
18198
|
-
|
|
18199
|
-
|
|
18200
|
-
|
|
18201
|
-
|
|
18202
|
-
project_id: project.id,
|
|
18203
|
-
name: baseExperiment
|
|
18204
|
-
});
|
|
18205
|
-
const experiments = resp.data;
|
|
18206
|
-
if (experiments.length > 0) {
|
|
18207
|
-
base_exp_id = experiments[0]["id"];
|
|
18208
|
-
} else {
|
|
18209
|
-
throw new Error(`Base experiment ${baseExperiment} not found`);
|
|
18210
|
-
}
|
|
18211
|
-
}
|
|
18212
|
-
if (base_exp_id === void 0) {
|
|
18213
|
-
const resp = await conn.post("experiments-by-commits", {
|
|
18214
|
-
project_id: project.id,
|
|
18215
|
-
commits: await isomorph_default.getPastNAncestors()
|
|
18216
|
-
});
|
|
18217
|
-
base_exp_id = resp.data["experiment_id"];
|
|
18218
|
-
}
|
|
18219
|
-
if (base_exp_id !== void 0) {
|
|
18220
|
-
args["base_exp_id"] = base_exp_id;
|
|
18179
|
+
if (baseExperiment) {
|
|
18180
|
+
args["base_experiment"] = baseExperiment;
|
|
18181
|
+
} else {
|
|
18182
|
+
args["ancestor_commits"] = await isomorph_default.getPastNAncestors();
|
|
18221
18183
|
}
|
|
18222
18184
|
if (dataset !== void 0) {
|
|
18223
18185
|
args["dataset_id"] = dataset.id;
|
|
18224
18186
|
args["dataset_version"] = await dataset.version();
|
|
18225
18187
|
}
|
|
18226
|
-
const
|
|
18188
|
+
const response = await api_conn().post_json("api/experiment/register", args);
|
|
18189
|
+
const project = response.project;
|
|
18190
|
+
const experiment = response.experiment;
|
|
18227
18191
|
const user_id = (await _user_info())["id"];
|
|
18228
|
-
return new Experiment(
|
|
18192
|
+
return new Experiment(
|
|
18193
|
+
project,
|
|
18194
|
+
experiment.id,
|
|
18195
|
+
experiment.name,
|
|
18196
|
+
user_id,
|
|
18197
|
+
dataset
|
|
18198
|
+
);
|
|
18229
18199
|
}
|
|
18230
18200
|
var Experiment = class {
|
|
18231
18201
|
constructor(project, id, name, user_id, dataset) {
|
|
@@ -18241,7 +18211,7 @@ var Experiment = class {
|
|
|
18241
18211
|
*
|
|
18242
18212
|
* @param event The event to log.
|
|
18243
18213
|
* @param event.input The arguments that uniquely define a test case (an arbitrary, JSON serializable object). Later on,
|
|
18244
|
-
*
|
|
18214
|
+
* Braintrust will use the `input` to know whether two test cases are the same between experiments, so they should
|
|
18245
18215
|
* not contain experiment-specific state. A simple rule of thumb is that if you run the same experiment twice, the
|
|
18246
18216
|
* `input` should be identical.
|
|
18247
18217
|
* @param event.output The output of your application, including post-processing (an arbitrary, JSON serializable object),
|
|
@@ -18249,7 +18219,7 @@ var Experiment = class {
|
|
|
18249
18219
|
* the `output` should be the _result_ of the SQL query generated by the model, not the query itself, because there may
|
|
18250
18220
|
* be multiple valid queries that answer a single question.
|
|
18251
18221
|
* @param event.expected The ground truth value (an arbitrary, JSON serializable object) that you'd compare to `output` to
|
|
18252
|
-
* determine if your `output` value is correct or not.
|
|
18222
|
+
* determine if your `output` value is correct or not. Braintrust currently does not compare `output` to `expected` for
|
|
18253
18223
|
* you, since there are so many different ways to do that correctly. Instead, these values are just used to help you
|
|
18254
18224
|
* navigate your experiments while digging into analyses. However, we may later use these values to re-score outputs or
|
|
18255
18225
|
* fine-tune your models.
|
|
@@ -18262,9 +18232,7 @@ var Experiment = class {
|
|
|
18262
18232
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
18263
18233
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
18264
18234
|
* JSON-serializable type, but its keys must be strings.
|
|
18265
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
18266
|
-
* @param event.allowLarge: (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
18267
|
-
* upload pipeline or be truncated.
|
|
18235
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
18268
18236
|
* @param event.inputs (Deprecated) the same as `input` (will be removed in a future version)
|
|
18269
18237
|
* @returns The `id` of the logged event.
|
|
18270
18238
|
*/
|
|
@@ -18276,7 +18244,6 @@ var Experiment = class {
|
|
|
18276
18244
|
metadata,
|
|
18277
18245
|
id,
|
|
18278
18246
|
datasetRecordId,
|
|
18279
|
-
allowLarge = false,
|
|
18280
18247
|
inputs
|
|
18281
18248
|
}) {
|
|
18282
18249
|
if (input === void 0 && inputs === void 0) {
|
|
@@ -18326,16 +18293,6 @@ var Experiment = class {
|
|
|
18326
18293
|
dataset_record_id: datasetRecordId,
|
|
18327
18294
|
metadata
|
|
18328
18295
|
};
|
|
18329
|
-
if (!allowLarge) {
|
|
18330
|
-
for (const [key, value] of Object.entries(args)) {
|
|
18331
|
-
const serialized = JSON.stringify(value);
|
|
18332
|
-
if (serialized && serialized.length > 65535) {
|
|
18333
|
-
throw new Error(
|
|
18334
|
-
`Events must be less than 64KB in size. Please reduce the size of your ${key}.`
|
|
18335
|
-
);
|
|
18336
|
-
}
|
|
18337
|
-
}
|
|
18338
|
-
}
|
|
18339
18296
|
this.logger.log([args]);
|
|
18340
18297
|
return args.id;
|
|
18341
18298
|
}
|
|
@@ -18427,17 +18384,14 @@ var Dataset = class {
|
|
|
18427
18384
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
18428
18385
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
18429
18386
|
* JSON-serializable type, but its keys must be strings.
|
|
18430
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
18431
|
-
* @param event.allowLarge (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
18432
|
-
* upload pipeline or be truncated.
|
|
18387
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
18433
18388
|
* @returns The `id` of the logged record.
|
|
18434
18389
|
*/
|
|
18435
18390
|
insert({
|
|
18436
18391
|
input,
|
|
18437
18392
|
output,
|
|
18438
18393
|
metadata,
|
|
18439
|
-
id
|
|
18440
|
-
allowLarge = false
|
|
18394
|
+
id
|
|
18441
18395
|
}) {
|
|
18442
18396
|
if (metadata !== void 0) {
|
|
18443
18397
|
for (const key of Object.keys(metadata)) {
|
|
@@ -18456,16 +18410,6 @@ var Dataset = class {
|
|
|
18456
18410
|
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
18457
18411
|
metadata
|
|
18458
18412
|
};
|
|
18459
|
-
if (!allowLarge) {
|
|
18460
|
-
for (const [key, value] of Object.entries(args)) {
|
|
18461
|
-
const serialized = JSON.stringify(value);
|
|
18462
|
-
if (serialized && serialized.length > 65535) {
|
|
18463
|
-
throw new Error(
|
|
18464
|
-
`Records must be less than 64KB in size. Please reduce the size of your ${key}.`
|
|
18465
|
-
);
|
|
18466
|
-
}
|
|
18467
|
-
}
|
|
18468
|
-
}
|
|
18469
18413
|
this.logger.log([args]);
|
|
18470
18414
|
return args.id;
|
|
18471
18415
|
}
|
package/dist/logger.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export interface DatasetRecord {
|
|
|
22
22
|
* @param options.update If the experiment already exists, continue logging to it.
|
|
23
23
|
* @param options.baseExperiment An optional experiment name to use as a base. If specified, the new experiment will be summarized and compared to this
|
|
24
24
|
* experiment. Otherwise, it will pick an experiment by finding the closest ancestor on the default (e.g. main) branch.
|
|
25
|
-
* @param options.apiUrl The URL of the
|
|
25
|
+
* @param options.apiUrl The URL of the Braintrust API. Defaults to https://www.braintrustdata.com.
|
|
26
26
|
* @param options.apiKey The API key to use. If the parameter is not specified, will try to use the `BRAINTRUST_API_KEY` environment variable. If no API
|
|
27
27
|
* key is specified, will prompt the user to login.
|
|
28
28
|
* @param options.orgName (Optional) The name of a specific organization to connect to. This is useful if you belong to multiple.
|
|
@@ -47,7 +47,7 @@ export declare function init(project: string, options?: {
|
|
|
47
47
|
* @param options Additional options for configuring init().
|
|
48
48
|
* @param options.dataset The name of the dataset to create. If not specified, a name will be generated automatically.
|
|
49
49
|
* @param options.description An optional description of the dataset.
|
|
50
|
-
* @param options.apiUrl The URL of the
|
|
50
|
+
* @param options.apiUrl The URL of the Braintrust API. Defaults to https://www.braintrustdata.com.
|
|
51
51
|
* @param options.apiKey The API key to use. If the parameter is not specified, will try to use the `BRAINTRUST_API_KEY` environment variable. If no API
|
|
52
52
|
* key is specified, will prompt the user to login.
|
|
53
53
|
* @param options.orgName (Optional) The name of a specific organization to connect to. This is useful if you belong to multiple.
|
|
@@ -64,11 +64,11 @@ export declare function initDataset(project: string, options?: {
|
|
|
64
64
|
readonly disableCache?: boolean;
|
|
65
65
|
}): Promise<Dataset>;
|
|
66
66
|
/**
|
|
67
|
-
* Log into
|
|
67
|
+
* Log into Braintrust. This will prompt you for your API token, which you can find at
|
|
68
68
|
* https://www.braintrustdata.com/app/token. This method is called automatically by `init()`.
|
|
69
69
|
*
|
|
70
70
|
* @param options Options for configuring login().
|
|
71
|
-
* @param options.apiUrl The URL of the
|
|
71
|
+
* @param options.apiUrl The URL of the Braintrust API. Defaults to https://www.braintrustdata.com.
|
|
72
72
|
* @param options.apiKey The API key to use. If the parameter is not specified, will try to use the `BRAINTRUST_API_KEY` environment variable. If no API
|
|
73
73
|
* key is specified, will prompt the user to login.
|
|
74
74
|
* @param options.orgName (Optional) The name of a specific organization to connect to. This is useful if you belong to multiple.
|
|
@@ -87,7 +87,7 @@ export declare function login(options?: {
|
|
|
87
87
|
*
|
|
88
88
|
* @param event The event to log.
|
|
89
89
|
* @param event.input The arguments that uniquely define a test case (an arbitrary, JSON serializable object). Later on,
|
|
90
|
-
*
|
|
90
|
+
* Braintrust will use the `input` to know whether two test cases are the same between experiments, so they should
|
|
91
91
|
* not contain experiment-specific state. A simple rule of thumb is that if you run the same experiment twice, the
|
|
92
92
|
* `input` should be identical.
|
|
93
93
|
* @param event.output The output of your application, including post-processing (an arbitrary, JSON serializable object),
|
|
@@ -95,7 +95,7 @@ export declare function login(options?: {
|
|
|
95
95
|
* the `output` should be the _result_ of the SQL query generated by the model, not the query itself, because there may
|
|
96
96
|
* be multiple valid queries that answer a single question.
|
|
97
97
|
* @param event.expected The ground truth value (an arbitrary, JSON serializable object) that you'd compare to `output` to
|
|
98
|
-
* determine if your `output` value is correct or not.
|
|
98
|
+
* determine if your `output` value is correct or not. Braintrust currently does not compare `output` to `expected` for
|
|
99
99
|
* you, since there are so many different ways to do that correctly. Instead, these values are just used to help you
|
|
100
100
|
* navigate your experiments while digging into analyses. However, we may later use these values to re-score outputs or
|
|
101
101
|
* fine-tune your models.
|
|
@@ -108,7 +108,7 @@ export declare function login(options?: {
|
|
|
108
108
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
109
109
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
110
110
|
* JSON-serializable type, but its keys must be strings.
|
|
111
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
111
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
112
112
|
* @param event.inputs (Deprecated) the same as `input` (will be removed in a future version)
|
|
113
113
|
* @returns The `id` of the logged event.
|
|
114
114
|
*/
|
|
@@ -158,7 +158,7 @@ export declare class Experiment {
|
|
|
158
158
|
*
|
|
159
159
|
* @param event The event to log.
|
|
160
160
|
* @param event.input The arguments that uniquely define a test case (an arbitrary, JSON serializable object). Later on,
|
|
161
|
-
*
|
|
161
|
+
* Braintrust will use the `input` to know whether two test cases are the same between experiments, so they should
|
|
162
162
|
* not contain experiment-specific state. A simple rule of thumb is that if you run the same experiment twice, the
|
|
163
163
|
* `input` should be identical.
|
|
164
164
|
* @param event.output The output of your application, including post-processing (an arbitrary, JSON serializable object),
|
|
@@ -166,7 +166,7 @@ export declare class Experiment {
|
|
|
166
166
|
* the `output` should be the _result_ of the SQL query generated by the model, not the query itself, because there may
|
|
167
167
|
* be multiple valid queries that answer a single question.
|
|
168
168
|
* @param event.expected The ground truth value (an arbitrary, JSON serializable object) that you'd compare to `output` to
|
|
169
|
-
* determine if your `output` value is correct or not.
|
|
169
|
+
* determine if your `output` value is correct or not. Braintrust currently does not compare `output` to `expected` for
|
|
170
170
|
* you, since there are so many different ways to do that correctly. Instead, these values are just used to help you
|
|
171
171
|
* navigate your experiments while digging into analyses. However, we may later use these values to re-score outputs or
|
|
172
172
|
* fine-tune your models.
|
|
@@ -179,13 +179,11 @@ export declare class Experiment {
|
|
|
179
179
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
180
180
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
181
181
|
* JSON-serializable type, but its keys must be strings.
|
|
182
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
183
|
-
* @param event.allowLarge: (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
184
|
-
* upload pipeline or be truncated.
|
|
182
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
185
183
|
* @param event.inputs (Deprecated) the same as `input` (will be removed in a future version)
|
|
186
184
|
* @returns The `id` of the logged event.
|
|
187
185
|
*/
|
|
188
|
-
log({ input, output, expected, scores, metadata, id, datasetRecordId,
|
|
186
|
+
log({ input, output, expected, scores, metadata, id, datasetRecordId, inputs, }: {
|
|
189
187
|
readonly input?: unknown;
|
|
190
188
|
readonly output: unknown;
|
|
191
189
|
readonly expected?: unknown;
|
|
@@ -193,7 +191,6 @@ export declare class Experiment {
|
|
|
193
191
|
readonly metadata?: Record<string, unknown>;
|
|
194
192
|
readonly id?: string;
|
|
195
193
|
readonly datasetRecordId?: string;
|
|
196
|
-
readonly allowLarge?: boolean;
|
|
197
194
|
readonly inputs?: unknown;
|
|
198
195
|
}): string;
|
|
199
196
|
/**
|
|
@@ -236,17 +233,14 @@ export declare class Dataset {
|
|
|
236
233
|
* about anything else that's relevant, that you can use to help find and analyze examples later. For example, you could log the
|
|
237
234
|
* `prompt`, example's `id`, or anything else that would be useful to slice/dice later. The values in `metadata` can be any
|
|
238
235
|
* JSON-serializable type, but its keys must be strings.
|
|
239
|
-
* @param event.id (Optional) a unique identifier for the event. If you don't provide one,
|
|
240
|
-
* @param event.allowLarge (Optional) Allow large objects (greater than 64KB) to be uploaded. Proceed with caution, as they may cause issues with the
|
|
241
|
-
* upload pipeline or be truncated.
|
|
236
|
+
* @param event.id (Optional) a unique identifier for the event. If you don't provide one, Braintrust will generate one for you.
|
|
242
237
|
* @returns The `id` of the logged record.
|
|
243
238
|
*/
|
|
244
|
-
insert({ input, output, metadata, id,
|
|
239
|
+
insert({ input, output, metadata, id, }: {
|
|
245
240
|
readonly input?: unknown;
|
|
246
241
|
readonly output: unknown;
|
|
247
242
|
readonly metadata?: Record<string, unknown>;
|
|
248
243
|
readonly id?: string;
|
|
249
|
-
readonly allowLarge?: boolean;
|
|
250
244
|
}): string;
|
|
251
245
|
delete(id: string): string;
|
|
252
246
|
/**
|
|
@@ -312,8 +306,8 @@ export interface ScoreSummary {
|
|
|
312
306
|
* Summary of an experiment's scores and metadata.
|
|
313
307
|
* @property projectName Name of the project that the experiment belongs to.
|
|
314
308
|
* @property experimentName Name of the experiment.
|
|
315
|
-
* @property projectUrl URL to the project's page in the
|
|
316
|
-
* @property experimentUrl URL to the experiment's page in the
|
|
309
|
+
* @property projectUrl URL to the project's page in the Braintrust app.
|
|
310
|
+
* @property experimentUrl URL to the experiment's page in the Braintrust app.
|
|
317
311
|
* @property comparisonExperimentName The experiment scores are baselined against.
|
|
318
312
|
* @property scores Summary of the experiment's scores.
|
|
319
313
|
*/
|
|
@@ -340,8 +334,8 @@ export interface DataSummary {
|
|
|
340
334
|
*
|
|
341
335
|
* @property projectName Name of the project that the dataset belongs to.
|
|
342
336
|
* @property datasetName Name of the dataset.
|
|
343
|
-
* @property projectUrl URL to the project's page in the
|
|
344
|
-
* @property datasetUrl URL to the experiment's page in the
|
|
337
|
+
* @property projectUrl URL to the project's page in the Braintrust app.
|
|
338
|
+
* @property datasetUrl URL to the experiment's page in the Braintrust app.
|
|
345
339
|
* @property dataSummary Summary of the dataset's data.
|
|
346
340
|
*/
|
|
347
341
|
export interface DatasetSummary {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/axios/index.d.ts","../node_modules/@types/uuid/index.d.ts","../src/isomorph.ts","../src/logger.ts","../src/browser.ts","../src/cache.ts","../node_modules/esbuild/lib/main.d.ts","../node_modules/chalk/index.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@nodelib/fs.stat/out/types/index.d.ts","../node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts","../node_modules/@nodelib/fs.stat/out/settings.d.ts","../node_modules/@nodelib/fs.stat/out/providers/async.d.ts","../node_modules/@nodelib/fs.stat/out/index.d.ts","../node_modules/@nodelib/fs.scandir/out/types/index.d.ts","../node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts","../node_modules/@nodelib/fs.scandir/out/settings.d.ts","../node_modules/@nodelib/fs.scandir/out/providers/async.d.ts","../node_modules/@nodelib/fs.scandir/out/index.d.ts","../node_modules/@nodelib/fs.walk/out/types/index.d.ts","../node_modules/@nodelib/fs.walk/out/settings.d.ts","../node_modules/@nodelib/fs.walk/out/readers/reader.d.ts","../node_modules/@nodelib/fs.walk/out/readers/async.d.ts","../node_modules/@nodelib/fs.walk/out/providers/async.d.ts","../node_modules/@nodelib/fs.walk/out/index.d.ts","../node_modules/minimatch/dist/cjs/ast.d.ts","../node_modules/minimatch/dist/cjs/escape.d.ts","../node_modules/minimatch/dist/cjs/unescape.d.ts","../node_modules/minimatch/dist/cjs/index.d.ts","../node_modules/@types/argparse/index.d.ts","../node_modules/@types/pluralize/index.d.ts","../node_modules/@types/cli-progress/index.d.ts","../src/progress.ts","../node_modules/@types/graceful-fs/index.d.ts","../src/jest/tryrealpath.ts","../src/jest/nodemodulespaths.ts","../../autoevals/jsdist/base.d.ts","../../autoevals/node_modules/openai/dist/configuration.d.ts","../../autoevals/node_modules/axios/index.d.ts","../../autoevals/node_modules/openai/dist/base.d.ts","../../autoevals/node_modules/openai/dist/api.d.ts","../../autoevals/node_modules/openai/dist/index.d.ts","../../autoevals/jsdist/oai.d.ts","../../autoevals/jsdist/templates.d.ts","../../autoevals/jsdist/llm.d.ts","../../autoevals/jsdist/string.d.ts","../../autoevals/jsdist/index.d.ts","../src/framework.ts","../node_modules/simple-git/dist/src/lib/tasks/task.d.ts","../node_modules/simple-git/dist/src/lib/types/tasks.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-error.d.ts","../node_modules/simple-git/dist/src/lib/types/handlers.d.ts","../node_modules/simple-git/dist/src/lib/types/index.d.ts","../node_modules/simple-git/dist/src/lib/tasks/log.d.ts","../node_modules/simple-git/dist/typings/response.d.ts","../node_modules/simple-git/dist/src/lib/responses/getremotesummary.d.ts","../node_modules/simple-git/dist/src/lib/args/pathspec.d.ts","../node_modules/simple-git/dist/src/lib/tasks/apply-patch.d.ts","../node_modules/simple-git/dist/src/lib/tasks/check-is-repo.d.ts","../node_modules/simple-git/dist/src/lib/tasks/clean.d.ts","../node_modules/simple-git/dist/src/lib/tasks/clone.d.ts","../node_modules/simple-git/dist/src/lib/tasks/config.d.ts","../node_modules/simple-git/dist/src/lib/tasks/grep.d.ts","../node_modules/simple-git/dist/src/lib/tasks/reset.d.ts","../node_modules/simple-git/dist/src/lib/tasks/version.d.ts","../node_modules/simple-git/dist/typings/types.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-construct-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-plugin-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-response-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/task-configuration-error.d.ts","../node_modules/simple-git/dist/typings/errors.d.ts","../node_modules/simple-git/dist/typings/simple-git.d.ts","../node_modules/simple-git/dist/typings/index.d.ts","../src/gitutil.ts","../src/node.ts","../src/cli.ts","../src/index.ts","../node_modules/openai/dist/index.d.ts","../src/oai.ts","../../../node_modules/@types/segment-analytics/index.d.ts"],"fileInfos":[{"version":"f59215c5f1d886b05395ee7aca73e0ac69ddfad2843aa88530e797879d511bad","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"9d9885c728913c1d16e0d2831b40341d6ad9a0ceecaabc55209b306ad9c736a5","affectsGlobalScope":true},{"version":"17bea081b9c0541f39dd1ae9bc8c78bdd561879a682e60e2f25f688c0ecab248","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"f06948deb2a51aae25184561c9640fb66afeddb34531a9212d011792b1d19e0a","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"1d729ea435a93e1a70519d06a6f13fa418c4c39a52b69e6db86750ebfcdf5554","95c617b16c4765ff6de307629b6918181908bee82a59fca0b2c95f170a4be7ea",{"version":"33afbdba3f5e7dfbb721775f324d64675074704c2d1a83ada260600b4063295a","signature":"d7df1bf79ee700e9017d4e2d4f431aa6f5b052c5b1876dcf455d43e2abc0891f"},{"version":"3aa59e997945d7173a994c1fd407a784bf6989d7f5c4e03c26571072773830fb","signature":"d5af8055c3a5f3913dbc37c8d5226b14e1c59843c38470ec86ceb5be4f3c1270"},"c967d7ca4d2ecc37d4a12833fad823f02e935542f6be307214ea7d2a9af02995",{"version":"43361e6b831db1ef828f60d9219c09bfc43acb1b75ce86ead48f557a0935c0d2","signature":"b4324240466cc26262b0a4876ba6e405a8ad714cd15d4e309b765a3b41d90fb9"},"850040826cfa77593d44f44487133af21917f4f21507258bd4269501b80d32f0","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","587f13f1e8157bd8cec0adda0de4ef558bb8573daa9d518d1e2af38e87ecc91f","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"bce910d9164785c9f0d4dcea4be359f5f92130c7c7833dea6138ab1db310a1f9","affectsGlobalScope":true},"7a435e0c814f58f23e9a0979045ec0ef5909aac95a70986e8bcce30c27dff228",{"version":"c81c51f43e343b6d89114b17341fb9d381c4ccbb25e0ee77532376052c801ba7","affectsGlobalScope":true},"db71be322f07f769200108aa19b79a75dd19a187c9dca2a30c4537b233aa2863","57135ce61976a8b1dadd01bb412406d1805b90db6e8ecb726d0d78e0b5f76050",{"version":"49479e21a040c0177d1b1bc05a124c0383df7a08a0726ad4d9457619642e875a","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","f302f3a47d7758f67f2afc753b9375d6504dde05d2e6ecdb1df50abbb131fc89","3690133deae19c8127c5505fcb67b04bdc9eb053796008538a9b9abbb70d85aa","5b1c0a23f464f894e7c2b2b6c56df7b9afa60ed48c5345f8618d389a636b2108","be2b092f2765222757c6441b86c53a5ea8dfed47bbc43eab4c5fe37942c866b3","8e6b05abc98adba15e1ac78e137c64576c74002e301d682e66feb77a23907ab8","1ca735bb3d407b2af4fbee7665f3a0a83be52168c728cc209755060ba7ed67bd",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"8d74c73e21579ffe9f77ce969bc0317470c63797bd4719c8895a60ce6ae6a263","affectsGlobalScope":true},"7a2ba0c9af860ac3e77b35ed01fd96d15986f17aa22fe40f188ae556fb1070df","765f9f91293be0c057d5bf2b59494e1eac70efae55ff1c27c6e47c359bc889d2","55709608060f77965c270ac10ac646286589f1bd1cb174fff1778a2dd9a7ef31","3122a3f1136508a27a229e0e4e2848299028300ffa11d0cdfe99df90c492fe20","42b40e40f2a358cda332456214fad311e1806a6abf3cebaaac72496e07556642","354612fe1d49ecc9551ea3a27d94eef2887b64ef4a71f72ca444efe0f2f0ba80",{"version":"ac0c77cd7db52b3c278bdd1452ce754014835493d05b84535f46854fdc2063b2","affectsGlobalScope":true},"b9f36877501f2ce0e276e993c93cd2cf325e78d0409ec4612b1eb9d6a537e60b","5e2b91328a540a0933ab5c2203f4358918e6f0fe7505d22840a891a6117735f1","3abc3512fa04aa0230f59ea1019311fd8667bd935d28306311dccc8b17e79d5d",{"version":"5810080a0da989a944d3b691b7b479a4a13c75947fb538abb8070710baa5ccee","affectsGlobalScope":true},{"version":"19da7150ca062323b1db6311a6ef058c9b0a39cc64d836b5e9b75d301869653b","affectsGlobalScope":true},"1349077576abb41f0e9c78ec30762ff75b710208aff77f5fdcc6a8c8ce6289dd","e2ce82603102b5c0563f59fb40314cc1ff95a4d521a66ad14146e130ea80d89c","a3e0395220255a350aa9c6d56f882bfcb5b85c19fddf5419ec822cf22246a26d","c27b01e8ddff5cd280711af5e13aecd9a3228d1c256ea797dd64f8fdec5f7df5","898840e876dfd21843db9f2aa6ae38ba2eab550eb780ff62b894b9fbfebfae6b","c58642af30c06a8e250d248a747ceb045af9a92d8cab22478d80c3bef276bfd5","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","785e5be57d4f20f290a20e7b0c6263f6c57fd6e51283050756cef07d6d651c68","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","164deb2409ac5f4da3cd139dbcee7f7d66753d90363a4d7e2db8d8874f272270",{"version":"13a50542a358c093fee2d204915241f85ca4f571262ea159960610c21a644f8a","affectsGlobalScope":true},{"version":"ab294c4b7279318ee2a8fdf681305457ecc05970c94108d304933f18823eeac1","affectsGlobalScope":true},"ad08154d9602429522cac965a715fde27d421d69b24756c5d291877dda75353e","5bc85813bfcb6907cc3a960fec8734a29d7884e0e372515147720c5991b8bc22","812b25f798033c202baedf386a1ccc41f9191b122f089bffd10fdccce99fba11","993325544790073f77e945bee046d53988c0bc3ac5695c9cf8098166feb82661",{"version":"4d06f3abc2a6aae86f1be39e397372f74fb6e7964f594d645926b4a3419cc15d","affectsGlobalScope":true},{"version":"0e08c360c9b5961ecb0537b703e253842b3ded53151ee07024148219b61a8baf","affectsGlobalScope":true},"2ce2210032ccaff7710e2abf6a722e62c54960458e73e356b6a365c93ab6ca66","92db194ef7d208d5e4b6242a3434573fd142a621ff996d84cc9dbba3553277d0","16a3080e885ed52d4017c902227a8d0d8daf723d062bec9e45627c6fdcd6699b",{"version":"0bd9543cd8fc0959c76fb8f4f5a26626c2ed62ef4be98fd857bce268066db0a2","affectsGlobalScope":true},"1ca6858a0cbcd74d7db72d7b14c5360a928d1d16748a55ecfa6bfaff8b83071b",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"562e1951bb48e89df7b821d998bfcd9458d93b0afd06cf6db8286606da5f21fd","46324183533e34fad2461b51174132e8e0e4b3ac1ceb5032e4952992739d1eab","d3fa0530dfb1df408f0abd76486de39def69ca47683d4a3529b2d22fce27c693","d9be977c415df16e4defe4995caeca96e637eeef9d216d0d90cdba6fc617e97e","98e0c2b48d855a844099123e8ec20fe383ecd1c5877f3895b048656befe268d0","ff53802a97b7d11ab3c4395aa052baa14cd12d2b1ed236b520a833fdd2a15003","fce9262f840a74118112caf685b725e1cc86cd2b0927311511113d90d87cc61e","d7a7cac49af2a3bfc208fe68831fbfa569864f74a7f31cc3a607f641e6c583fd","9a80e3322d08274f0e41b77923c91fe67b2c8a5134a5278c2cb60a330441554e","2460af41191009298d931c592fb6d4151beea320f1f25b73605e2211e53e4e88","2f87ea988d84d1c617afdeba9d151435473ab24cd5fc456510c8db26d8bd1581","b7336c1c536e3deaedbda956739c6250ac2d0dd171730c42cb57b10368f38a14","6fb67d664aaab2f1d1ad4613b58548aecb4b4703b9e4c5dba6b865b31bd14722","4414644199b1a047b4234965e07d189781a92b578707c79c3933918d67cd9d85","04a4b38c6a1682059eac00e7d0948d99c46642b57003d61d0fe9ccc9df442887","f12ea658b060da1752c65ae4f1e4c248587f6cd4cb4acabbf79a110b6b02ff75","011b2857871a878d5eae463bedc4b3dd14755dc3a67d5d10f8fbb7823d119294","c56ef8201a294d65d1132160ebc76ed0c0a98dcf983d20775c8c8c0912210572","de0199a112f75809a7f80ec071495159dcf3e434bc021347e0175627398264c3","1a2bed55cfa62b4649485df27c0e560b04d4da4911e3a9f0475468721495563f","854045924626ba585f454b53531c42aed4365f02301aa8eca596423f4675b71f","dac69319e7c96790211dd55fbb25831b7bf6e63f7645297a2c8f46247d44d889","5adf3c3c7204b3614dbc585681a33ef598c68df387298859f9a2521cfb449437","6d8c708a5237a8508ee8553f22143a6d2fb60807de0574b41622c1e281b04c6d",{"version":"d096d550acd00bd6d66825d9a4e572121bd854b28edc5ae2c1d4e80d51a147a9","signature":"46966a0da8f681c479166dd3060b63d3cafc3d5e9e218157490f3697122a3e57"},"bf88ef4208a770ca39a844b182b3695df536326ea566893fdc5b8418702a331e",{"version":"c0b4084226d4ad0a3c78580c50f85985f4a3e808eb59a15c9fb389c8349f9056","signature":"f155bcfea5ae8b647b26fef54caf159a514950ac9cb3c192dcfab787d4588eec"},{"version":"0f3a9fccbf341d90a4be583161e6415c8c0543f5dd180419ea13e3db991ccca0","signature":"d4cb0878684926011f20ef763f982c78e1b0b699c0faefee31d2a7bdcf44a7bb"},"26ed2b3579b00785d7b8028002d5e638444e32e1fad135100a2419e48e5fb458","3ac893bb831cf929af812392e1568467766536d79abd4e29d6ae653695c18cdd","2808645b990069e5f8b5ff14c9f1e6077eb642583c3f7854012d60757f23c70e","98cd87f84eb134151b0b760d49e09f0ae3ca01d9f86e6b64f6bb933cc4a40b29","db750d991d0c6e773c114cfe170c5ee4fc1bea43364e0efa5cecb03d198be80a","c5dde9dd9e1bf7168d8a2480a31f9799158f84e3aa1bb061fd09a0cf5a1fcb14","a26f77c3dade8bbe508a51031e61e7491f9ab2c18c0335a5734d6f7dfdc26c1e","e725e4e013e946cccba3ec0fb642af7b5b9bd7872357b435ffe551dd80d552bc","ff42d458265136652db682ce4526b1e6f4944c5576b74ba85e815a91f5b27ed3","209dc81a1af545c80808f08403929d4a28791b0c059f3a4dd5b0724bf142fe03","481a8d651aaa424759d97f855331a662f2ce35e7cdc27104d6f2ba0e2626a66e",{"version":"0dde1ac5920174af2f69518b6f6024c197e2502f9599b70439c6526aff05777b","signature":"10c534cce6e500ef3c51a17ce91acc66165556bd048481062ea74d14eee57e9e","affectsGlobalScope":true},"82c661f1f20d29212d2e0408bee2e0f54bf8930cdcdd88f23ef8e03e4618afb4","d53d8a71b9525be3fb65c331f20db99b826edfa922703578af284736dc780db5","6256cf36c8ae7e82bff606595af8fe08a06f8478140fcf304ee2f10c7716ddc8","2ba0457b958954b9b2041077df992fad015e85c615dc1ccebeddb561d4ab89cf","81c4fd49117bc25b8aac796a345db4315cc31861f61772da6bd405989ede0f79","1f8d4c8257ba50385865ce887940c8fdc745bcf3cea2dc09173bc8d3320b6efe","8459a11cb29556837148a3f82ccff6f3d9745070c3ed77264e279e7fe35ed0b7","7c774169686976056434799723bd7a48348df9d2204b928a0b77920505585214","5e95379e81e2d373e5235cedc4579938e39db274a32cfa32f8906e7ff6698763","d3c8a891b0554f4319651b5c89c2d91a442a792bf84afcbc399be033b96b4abd","8758b438b12ea50fb8b678d29ab0ef42d77abfb801cec481596ce6002b537a6f","88074e936d33e224b83f81eebbaf835467e1c0a6ba1239b950e6476dd7f73356","c895675912a8b2d0dcb13d24433757d233de16a3bb5c60f7d903099d96d61ea8","f73cf81342d2a25b65179c262ca7c38df023969129094607d0eb52510a56f10f","e7d7e67bd66b30f2216e4678b97bb09629a2b31766a79119acaa30e3005ef5fb","4a7b9005bef99460ba60da67219f0aff852cfd44038f17626bf59a6b5c6960b5","e137f087bda0256410b28743ef9a1bf57a4cafd43ffa6b62d5c17a8f5a08b3b5","fa8d9c5ea6ad2a5d3d6ee7703cfe1ddd962f1e4da08a370c6db642b1a1a091b8","af504042a6db047c40cc0aeb14550bbc954f194f2b8c5ad8944f2da502f45bf5","5b25b6ab5ad6c17f90b592162b2e9978ad8d81edf24cd3957306eb6e5edb89a9","24693bd77ac3be0b16e564d0ab498a397feb758ce7f4ed9f13478d566e3aafde","208dad548b895c7d02465de6ba79064b7c67bc4d94e5227b09f21d58790e634c","048c0ced65fa41fbf4bcc3d5e8e5b6f6c7f27335ceb54d401be654e821adbc08","f1c7ab18a927d1a9e3a452ef9b5d2d636dc7f39a116add1a48b0b78a323f19eb","9a57d654b0a0e4bf56a8eb0aa3ede1c7d349cec6220e36b5288c26626c8688ed",{"version":"58110fc19e964fec56d787ad4288b6a47d054676983d798a883c19772be222a0","signature":"68212fb8e2c0dae39c22959cf18904f22a1315a856c20173484371cbb74addbf"},{"version":"72b1a4a18fcd279fb98314251e5703c88059da79e90809d6ff8e3e18369b6b38","signature":"1518a19a9cb02ce4439e1bd5d07e5dd4f496d4598142ff82264b40785ba28789"},{"version":"bf03c79a2681219865f7350b4117b7d5bd60e2362061c0420f46c38b8e2bab45","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"6429ebdfc3defffc0b9714ddb7d0facb35000bacb36f7a017e39201c35361389","signature":"1a602ba41329f6a79d2534ac8ad4bec506f4daa0dcb7a2ab1d79c8226ca79c43"},"c5dde9dd9e1bf7168d8a2480a31f9799158f84e3aa1bb061fd09a0cf5a1fcb14",{"version":"e9ffdbc59d4b3dbbfce1f2a1dbb757d88c54f77af3de24be8839aa3f03492b44","signature":"4ce870ab24a6630dd481ccb3c2b5929e9e5d9090ff003514f1dd1613e6053ee8"},{"version":"24dad5a88886a80321c27482f3a1faf91b8db7c9688e592eaa558203a14e4a19","affectsGlobalScope":true}],"root":[[46,49],129,131,132,144,[170,173],175],"options":{"declaration":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":1,"outDir":"./","skipLibCheck":true,"strict":true,"target":2},"fileIdsList":[[98],[98,133,140,141,142],[98,133,138,139,140],[98,138],[98,133],[98,134,135,136],[98,134,135],[98,134,137],[98,110,111],[98,111,112,113,114],[98,105,111,113],[98,110,112],[69,98,105],[69,98,105,106],[98,106,107,108,109],[98,106,108],[98,107],[86,98,105,115,116,117,120],[98,116,117,119],[68,98,105,115,116,117,118],[98,117],[98,115,116],[98,105,115],[68,98,105],[52,98],[55,98],[56,61,89,98],[57,68,69,76,86,97,98],[57,58,68,76,98],[59,98],[60,61,69,77,98],[61,86,94,98],[62,64,68,76,98],[63,98],[64,65,98],[68,98],[66,68,98],[68,69,70,86,97,98],[68,69,70,83,86,89,98],[98,102],[64,68,71,76,86,97,98],[68,69,71,72,76,86,94,97,98],[71,73,86,94,97,98],[52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],[68,74,98],[75,97,98],[64,68,76,86,98],[77,98],[78,98],[55,79,98],[80,96,98,102],[81,98],[82,98],[68,83,84,98],[83,85,98,100],[56,68,86,87,88,89,98],[56,86,88,98],[86,87,98],[89,98],[90,98],[55,86,98],[68,92,93,98],[92,93,98],[61,76,86,94,98],[95,98],[76,96,98],[56,71,82,97,98],[61,98],[86,98,99],[98,100],[98,101],[56,61,68,70,79,86,97,98,100,102],[86,98,103],[98,125],[98,122,123,124],[98,147,149],[98,149],[98,147],[98,145,149,169],[98,145,149],[98,169],[98,149,169],[57,98,105,146,148],[98,105,145,149],[98,147,163,164,165,166],[98,151,162,167,168],[98,150],[98,151,162,167],[98,149,150,152,153,154,155,156,157,158,159,160,161],[47,98],[77,78,98],[45,47,50,51,69,77,78,98,121,125,126,127,129,132,144,171],[47,98,129,143],[47,98,144,171],[44,98],[78,98,131],[98,130],[44,45,46,98],[44,46,71,73,98,170],[98,128],[47,129,143],[169],[47,144],[44],[138]],"referencedMap":[[176,1],[133,1],[143,2],[141,3],[139,4],[142,5],[140,1],[135,1],[137,6],[136,7],[134,1],[138,8],[112,9],[115,10],[114,11],[113,12],[111,13],[107,14],[110,15],[109,16],[108,17],[106,13],[121,18],[120,19],[119,20],[118,21],[117,22],[116,23],[126,1],[128,24],[130,13],[52,25],[53,25],[55,26],[56,27],[57,28],[58,29],[59,30],[60,31],[61,32],[62,33],[63,34],[64,35],[65,35],[67,36],[66,37],[68,36],[69,38],[70,39],[54,40],[104,1],[71,41],[72,42],[73,43],[105,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,53],[83,54],[84,54],[85,55],[86,56],[88,57],[87,58],[89,59],[90,60],[91,61],[92,62],[93,63],[94,64],[95,65],[96,66],[97,67],[98,68],[99,69],[100,70],[101,71],[102,72],[103,73],[127,1],[45,1],[44,1],[51,1],[50,1],[122,74],[123,74],[125,75],[124,74],[174,8],[153,1],[163,76],[147,77],[164,76],[165,78],[166,78],[152,1],[154,77],[155,77],[156,79],[157,80],[158,81],[159,81],[150,82],[160,77],[145,77],[161,81],[148,78],[149,83],[146,84],[167,85],[169,86],[151,87],[168,88],[162,89],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[48,90],[49,91],[172,92],[144,93],[170,81],[173,94],[46,95],[132,96],[131,97],[47,98],[171,99],[175,4],[129,100]],"exportedModulesMap":[[176,1],[133,1],[143,2],[141,3],[139,4],[142,5],[140,1],[135,1],[137,6],[136,7],[134,1],[138,8],[112,9],[115,10],[114,11],[113,12],[111,13],[107,14],[110,15],[109,16],[108,17],[106,13],[121,18],[120,19],[119,20],[118,21],[117,22],[116,23],[126,1],[128,24],[130,13],[52,25],[53,25],[55,26],[56,27],[57,28],[58,29],[59,30],[60,31],[61,32],[62,33],[63,34],[64,35],[65,35],[67,36],[66,37],[68,36],[69,38],[70,39],[54,40],[104,1],[71,41],[72,42],[73,43],[105,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,53],[83,54],[84,54],[85,55],[86,56],[88,57],[87,58],[89,59],[90,60],[91,61],[92,62],[93,63],[94,64],[95,65],[96,66],[97,67],[98,68],[99,69],[100,70],[101,71],[102,72],[103,73],[127,1],[45,1],[44,1],[51,1],[50,1],[122,74],[123,74],[125,75],[124,74],[174,8],[153,1],[163,76],[147,77],[164,76],[165,78],[166,78],[152,1],[154,77],[155,77],[156,79],[157,80],[158,81],[159,81],[150,82],[160,77],[145,77],[161,81],[148,78],[149,83],[146,84],[167,85],[169,86],[151,87],[168,88],[162,89],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[48,90],[144,101],[170,102],[173,103],[46,104],[175,105]],"semanticDiagnosticsPerFile":[176,133,143,141,139,142,140,135,137,136,134,138,112,115,114,113,111,107,110,109,108,106,121,120,119,118,117,116,126,128,130,52,53,55,56,57,58,59,60,61,62,63,64,65,67,66,68,69,70,54,104,71,72,73,105,74,75,76,77,78,79,80,81,82,83,84,85,86,88,87,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,127,45,44,51,50,122,123,125,124,174,153,163,147,164,165,166,152,154,155,156,157,158,159,150,160,145,161,148,149,146,167,169,151,168,162,42,43,9,8,2,10,11,12,13,14,15,16,17,3,4,21,18,19,20,22,23,24,5,25,26,27,28,6,32,29,30,31,33,7,34,39,40,35,36,37,38,1,41,48,49,172,144,170,173,46,132,131,47,171,175,129]},"version":"5.1.6"}
|
|
1
|
+
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/axios/index.d.ts","../node_modules/@types/uuid/index.d.ts","../src/isomorph.ts","../src/logger.ts","../src/browser.ts","../src/cache.ts","../node_modules/esbuild/lib/main.d.ts","../node_modules/chalk/index.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/@nodelib/fs.stat/out/types/index.d.ts","../node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts","../node_modules/@nodelib/fs.stat/out/settings.d.ts","../node_modules/@nodelib/fs.stat/out/providers/async.d.ts","../node_modules/@nodelib/fs.stat/out/index.d.ts","../node_modules/@nodelib/fs.scandir/out/types/index.d.ts","../node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts","../node_modules/@nodelib/fs.scandir/out/settings.d.ts","../node_modules/@nodelib/fs.scandir/out/providers/async.d.ts","../node_modules/@nodelib/fs.scandir/out/index.d.ts","../node_modules/@nodelib/fs.walk/out/types/index.d.ts","../node_modules/@nodelib/fs.walk/out/settings.d.ts","../node_modules/@nodelib/fs.walk/out/readers/reader.d.ts","../node_modules/@nodelib/fs.walk/out/readers/async.d.ts","../node_modules/@nodelib/fs.walk/out/providers/async.d.ts","../node_modules/@nodelib/fs.walk/out/index.d.ts","../node_modules/minimatch/dist/cjs/ast.d.ts","../node_modules/minimatch/dist/cjs/escape.d.ts","../node_modules/minimatch/dist/cjs/unescape.d.ts","../node_modules/minimatch/dist/cjs/index.d.ts","../node_modules/@types/argparse/index.d.ts","../node_modules/@types/pluralize/index.d.ts","../node_modules/@types/cli-progress/index.d.ts","../src/progress.ts","../node_modules/@types/graceful-fs/index.d.ts","../src/jest/tryrealpath.ts","../src/jest/nodemodulespaths.ts","../../autoevals/jsdist/base.d.ts","../../autoevals/node_modules/openai/dist/configuration.d.ts","../../autoevals/node_modules/axios/index.d.ts","../../autoevals/node_modules/openai/dist/base.d.ts","../../autoevals/node_modules/openai/dist/api.d.ts","../../autoevals/node_modules/openai/dist/index.d.ts","../../autoevals/jsdist/oai.d.ts","../../autoevals/jsdist/templates.d.ts","../../autoevals/jsdist/llm.d.ts","../../autoevals/jsdist/string.d.ts","../../autoevals/jsdist/index.d.ts","../src/framework.ts","../node_modules/simple-git/dist/src/lib/tasks/task.d.ts","../node_modules/simple-git/dist/src/lib/types/tasks.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-error.d.ts","../node_modules/simple-git/dist/src/lib/types/handlers.d.ts","../node_modules/simple-git/dist/src/lib/types/index.d.ts","../node_modules/simple-git/dist/src/lib/tasks/log.d.ts","../node_modules/simple-git/dist/typings/response.d.ts","../node_modules/simple-git/dist/src/lib/responses/getremotesummary.d.ts","../node_modules/simple-git/dist/src/lib/args/pathspec.d.ts","../node_modules/simple-git/dist/src/lib/tasks/apply-patch.d.ts","../node_modules/simple-git/dist/src/lib/tasks/check-is-repo.d.ts","../node_modules/simple-git/dist/src/lib/tasks/clean.d.ts","../node_modules/simple-git/dist/src/lib/tasks/clone.d.ts","../node_modules/simple-git/dist/src/lib/tasks/config.d.ts","../node_modules/simple-git/dist/src/lib/tasks/grep.d.ts","../node_modules/simple-git/dist/src/lib/tasks/reset.d.ts","../node_modules/simple-git/dist/src/lib/tasks/version.d.ts","../node_modules/simple-git/dist/typings/types.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-construct-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-plugin-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/git-response-error.d.ts","../node_modules/simple-git/dist/src/lib/errors/task-configuration-error.d.ts","../node_modules/simple-git/dist/typings/errors.d.ts","../node_modules/simple-git/dist/typings/simple-git.d.ts","../node_modules/simple-git/dist/typings/index.d.ts","../src/gitutil.ts","../src/node.ts","../src/cli.ts","../src/index.ts","../node_modules/openai/dist/index.d.ts","../src/oai.ts"],"fileInfos":[{"version":"f59215c5f1d886b05395ee7aca73e0ac69ddfad2843aa88530e797879d511bad","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"9d9885c728913c1d16e0d2831b40341d6ad9a0ceecaabc55209b306ad9c736a5","affectsGlobalScope":true},{"version":"17bea081b9c0541f39dd1ae9bc8c78bdd561879a682e60e2f25f688c0ecab248","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"f06948deb2a51aae25184561c9640fb66afeddb34531a9212d011792b1d19e0a","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"1d729ea435a93e1a70519d06a6f13fa418c4c39a52b69e6db86750ebfcdf5554","95c617b16c4765ff6de307629b6918181908bee82a59fca0b2c95f170a4be7ea",{"version":"33afbdba3f5e7dfbb721775f324d64675074704c2d1a83ada260600b4063295a","signature":"d7df1bf79ee700e9017d4e2d4f431aa6f5b052c5b1876dcf455d43e2abc0891f"},{"version":"bb259855bb7f110010b8d78482ee980d431f6f9dba4e9706b41d3c43300305c0","signature":"28d3cf0aebcea1250004af755a26b6cc5956aee1b5bd1c924e3bc651e1fa488b"},"c967d7ca4d2ecc37d4a12833fad823f02e935542f6be307214ea7d2a9af02995",{"version":"43361e6b831db1ef828f60d9219c09bfc43acb1b75ce86ead48f557a0935c0d2","signature":"b4324240466cc26262b0a4876ba6e405a8ad714cd15d4e309b765a3b41d90fb9"},"850040826cfa77593d44f44487133af21917f4f21507258bd4269501b80d32f0","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","587f13f1e8157bd8cec0adda0de4ef558bb8573daa9d518d1e2af38e87ecc91f","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"bce910d9164785c9f0d4dcea4be359f5f92130c7c7833dea6138ab1db310a1f9","affectsGlobalScope":true},"7a435e0c814f58f23e9a0979045ec0ef5909aac95a70986e8bcce30c27dff228",{"version":"c81c51f43e343b6d89114b17341fb9d381c4ccbb25e0ee77532376052c801ba7","affectsGlobalScope":true},"db71be322f07f769200108aa19b79a75dd19a187c9dca2a30c4537b233aa2863","57135ce61976a8b1dadd01bb412406d1805b90db6e8ecb726d0d78e0b5f76050",{"version":"49479e21a040c0177d1b1bc05a124c0383df7a08a0726ad4d9457619642e875a","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","f302f3a47d7758f67f2afc753b9375d6504dde05d2e6ecdb1df50abbb131fc89","3690133deae19c8127c5505fcb67b04bdc9eb053796008538a9b9abbb70d85aa","5b1c0a23f464f894e7c2b2b6c56df7b9afa60ed48c5345f8618d389a636b2108","be2b092f2765222757c6441b86c53a5ea8dfed47bbc43eab4c5fe37942c866b3","8e6b05abc98adba15e1ac78e137c64576c74002e301d682e66feb77a23907ab8","1ca735bb3d407b2af4fbee7665f3a0a83be52168c728cc209755060ba7ed67bd",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"8d74c73e21579ffe9f77ce969bc0317470c63797bd4719c8895a60ce6ae6a263","affectsGlobalScope":true},"7a2ba0c9af860ac3e77b35ed01fd96d15986f17aa22fe40f188ae556fb1070df","765f9f91293be0c057d5bf2b59494e1eac70efae55ff1c27c6e47c359bc889d2","55709608060f77965c270ac10ac646286589f1bd1cb174fff1778a2dd9a7ef31","3122a3f1136508a27a229e0e4e2848299028300ffa11d0cdfe99df90c492fe20","42b40e40f2a358cda332456214fad311e1806a6abf3cebaaac72496e07556642","354612fe1d49ecc9551ea3a27d94eef2887b64ef4a71f72ca444efe0f2f0ba80",{"version":"ac0c77cd7db52b3c278bdd1452ce754014835493d05b84535f46854fdc2063b2","affectsGlobalScope":true},"b9f36877501f2ce0e276e993c93cd2cf325e78d0409ec4612b1eb9d6a537e60b","5e2b91328a540a0933ab5c2203f4358918e6f0fe7505d22840a891a6117735f1","3abc3512fa04aa0230f59ea1019311fd8667bd935d28306311dccc8b17e79d5d",{"version":"5810080a0da989a944d3b691b7b479a4a13c75947fb538abb8070710baa5ccee","affectsGlobalScope":true},{"version":"19da7150ca062323b1db6311a6ef058c9b0a39cc64d836b5e9b75d301869653b","affectsGlobalScope":true},"1349077576abb41f0e9c78ec30762ff75b710208aff77f5fdcc6a8c8ce6289dd","e2ce82603102b5c0563f59fb40314cc1ff95a4d521a66ad14146e130ea80d89c","a3e0395220255a350aa9c6d56f882bfcb5b85c19fddf5419ec822cf22246a26d","c27b01e8ddff5cd280711af5e13aecd9a3228d1c256ea797dd64f8fdec5f7df5","898840e876dfd21843db9f2aa6ae38ba2eab550eb780ff62b894b9fbfebfae6b","c58642af30c06a8e250d248a747ceb045af9a92d8cab22478d80c3bef276bfd5","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","785e5be57d4f20f290a20e7b0c6263f6c57fd6e51283050756cef07d6d651c68","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","164deb2409ac5f4da3cd139dbcee7f7d66753d90363a4d7e2db8d8874f272270",{"version":"13a50542a358c093fee2d204915241f85ca4f571262ea159960610c21a644f8a","affectsGlobalScope":true},{"version":"ab294c4b7279318ee2a8fdf681305457ecc05970c94108d304933f18823eeac1","affectsGlobalScope":true},"ad08154d9602429522cac965a715fde27d421d69b24756c5d291877dda75353e","5bc85813bfcb6907cc3a960fec8734a29d7884e0e372515147720c5991b8bc22","812b25f798033c202baedf386a1ccc41f9191b122f089bffd10fdccce99fba11","993325544790073f77e945bee046d53988c0bc3ac5695c9cf8098166feb82661",{"version":"4d06f3abc2a6aae86f1be39e397372f74fb6e7964f594d645926b4a3419cc15d","affectsGlobalScope":true},{"version":"0e08c360c9b5961ecb0537b703e253842b3ded53151ee07024148219b61a8baf","affectsGlobalScope":true},"2ce2210032ccaff7710e2abf6a722e62c54960458e73e356b6a365c93ab6ca66","92db194ef7d208d5e4b6242a3434573fd142a621ff996d84cc9dbba3553277d0","16a3080e885ed52d4017c902227a8d0d8daf723d062bec9e45627c6fdcd6699b",{"version":"0bd9543cd8fc0959c76fb8f4f5a26626c2ed62ef4be98fd857bce268066db0a2","affectsGlobalScope":true},"1ca6858a0cbcd74d7db72d7b14c5360a928d1d16748a55ecfa6bfaff8b83071b",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"562e1951bb48e89df7b821d998bfcd9458d93b0afd06cf6db8286606da5f21fd","46324183533e34fad2461b51174132e8e0e4b3ac1ceb5032e4952992739d1eab","d3fa0530dfb1df408f0abd76486de39def69ca47683d4a3529b2d22fce27c693","d9be977c415df16e4defe4995caeca96e637eeef9d216d0d90cdba6fc617e97e","98e0c2b48d855a844099123e8ec20fe383ecd1c5877f3895b048656befe268d0","ff53802a97b7d11ab3c4395aa052baa14cd12d2b1ed236b520a833fdd2a15003","fce9262f840a74118112caf685b725e1cc86cd2b0927311511113d90d87cc61e","d7a7cac49af2a3bfc208fe68831fbfa569864f74a7f31cc3a607f641e6c583fd","9a80e3322d08274f0e41b77923c91fe67b2c8a5134a5278c2cb60a330441554e","2460af41191009298d931c592fb6d4151beea320f1f25b73605e2211e53e4e88","2f87ea988d84d1c617afdeba9d151435473ab24cd5fc456510c8db26d8bd1581","b7336c1c536e3deaedbda956739c6250ac2d0dd171730c42cb57b10368f38a14","6fb67d664aaab2f1d1ad4613b58548aecb4b4703b9e4c5dba6b865b31bd14722","4414644199b1a047b4234965e07d189781a92b578707c79c3933918d67cd9d85","04a4b38c6a1682059eac00e7d0948d99c46642b57003d61d0fe9ccc9df442887","f12ea658b060da1752c65ae4f1e4c248587f6cd4cb4acabbf79a110b6b02ff75","011b2857871a878d5eae463bedc4b3dd14755dc3a67d5d10f8fbb7823d119294","c56ef8201a294d65d1132160ebc76ed0c0a98dcf983d20775c8c8c0912210572","de0199a112f75809a7f80ec071495159dcf3e434bc021347e0175627398264c3","1a2bed55cfa62b4649485df27c0e560b04d4da4911e3a9f0475468721495563f","854045924626ba585f454b53531c42aed4365f02301aa8eca596423f4675b71f","dac69319e7c96790211dd55fbb25831b7bf6e63f7645297a2c8f46247d44d889","5adf3c3c7204b3614dbc585681a33ef598c68df387298859f9a2521cfb449437","6d8c708a5237a8508ee8553f22143a6d2fb60807de0574b41622c1e281b04c6d",{"version":"d096d550acd00bd6d66825d9a4e572121bd854b28edc5ae2c1d4e80d51a147a9","signature":"46966a0da8f681c479166dd3060b63d3cafc3d5e9e218157490f3697122a3e57"},"bf88ef4208a770ca39a844b182b3695df536326ea566893fdc5b8418702a331e",{"version":"c0b4084226d4ad0a3c78580c50f85985f4a3e808eb59a15c9fb389c8349f9056","signature":"f155bcfea5ae8b647b26fef54caf159a514950ac9cb3c192dcfab787d4588eec"},{"version":"0f3a9fccbf341d90a4be583161e6415c8c0543f5dd180419ea13e3db991ccca0","signature":"d4cb0878684926011f20ef763f982c78e1b0b699c0faefee31d2a7bdcf44a7bb"},"26ed2b3579b00785d7b8028002d5e638444e32e1fad135100a2419e48e5fb458","3ac893bb831cf929af812392e1568467766536d79abd4e29d6ae653695c18cdd","2808645b990069e5f8b5ff14c9f1e6077eb642583c3f7854012d60757f23c70e","98cd87f84eb134151b0b760d49e09f0ae3ca01d9f86e6b64f6bb933cc4a40b29","db750d991d0c6e773c114cfe170c5ee4fc1bea43364e0efa5cecb03d198be80a","c5dde9dd9e1bf7168d8a2480a31f9799158f84e3aa1bb061fd09a0cf5a1fcb14","a26f77c3dade8bbe508a51031e61e7491f9ab2c18c0335a5734d6f7dfdc26c1e","e725e4e013e946cccba3ec0fb642af7b5b9bd7872357b435ffe551dd80d552bc","ff42d458265136652db682ce4526b1e6f4944c5576b74ba85e815a91f5b27ed3","209dc81a1af545c80808f08403929d4a28791b0c059f3a4dd5b0724bf142fe03","481a8d651aaa424759d97f855331a662f2ce35e7cdc27104d6f2ba0e2626a66e",{"version":"0dde1ac5920174af2f69518b6f6024c197e2502f9599b70439c6526aff05777b","signature":"10c534cce6e500ef3c51a17ce91acc66165556bd048481062ea74d14eee57e9e","affectsGlobalScope":true},"82c661f1f20d29212d2e0408bee2e0f54bf8930cdcdd88f23ef8e03e4618afb4","d53d8a71b9525be3fb65c331f20db99b826edfa922703578af284736dc780db5","6256cf36c8ae7e82bff606595af8fe08a06f8478140fcf304ee2f10c7716ddc8","2ba0457b958954b9b2041077df992fad015e85c615dc1ccebeddb561d4ab89cf","81c4fd49117bc25b8aac796a345db4315cc31861f61772da6bd405989ede0f79","1f8d4c8257ba50385865ce887940c8fdc745bcf3cea2dc09173bc8d3320b6efe","8459a11cb29556837148a3f82ccff6f3d9745070c3ed77264e279e7fe35ed0b7","7c774169686976056434799723bd7a48348df9d2204b928a0b77920505585214","5e95379e81e2d373e5235cedc4579938e39db274a32cfa32f8906e7ff6698763","d3c8a891b0554f4319651b5c89c2d91a442a792bf84afcbc399be033b96b4abd","8758b438b12ea50fb8b678d29ab0ef42d77abfb801cec481596ce6002b537a6f","88074e936d33e224b83f81eebbaf835467e1c0a6ba1239b950e6476dd7f73356","c895675912a8b2d0dcb13d24433757d233de16a3bb5c60f7d903099d96d61ea8","f73cf81342d2a25b65179c262ca7c38df023969129094607d0eb52510a56f10f","e7d7e67bd66b30f2216e4678b97bb09629a2b31766a79119acaa30e3005ef5fb","4a7b9005bef99460ba60da67219f0aff852cfd44038f17626bf59a6b5c6960b5","e137f087bda0256410b28743ef9a1bf57a4cafd43ffa6b62d5c17a8f5a08b3b5","fa8d9c5ea6ad2a5d3d6ee7703cfe1ddd962f1e4da08a370c6db642b1a1a091b8","af504042a6db047c40cc0aeb14550bbc954f194f2b8c5ad8944f2da502f45bf5","5b25b6ab5ad6c17f90b592162b2e9978ad8d81edf24cd3957306eb6e5edb89a9","24693bd77ac3be0b16e564d0ab498a397feb758ce7f4ed9f13478d566e3aafde","208dad548b895c7d02465de6ba79064b7c67bc4d94e5227b09f21d58790e634c","048c0ced65fa41fbf4bcc3d5e8e5b6f6c7f27335ceb54d401be654e821adbc08","f1c7ab18a927d1a9e3a452ef9b5d2d636dc7f39a116add1a48b0b78a323f19eb","9a57d654b0a0e4bf56a8eb0aa3ede1c7d349cec6220e36b5288c26626c8688ed",{"version":"58110fc19e964fec56d787ad4288b6a47d054676983d798a883c19772be222a0","signature":"68212fb8e2c0dae39c22959cf18904f22a1315a856c20173484371cbb74addbf"},{"version":"72b1a4a18fcd279fb98314251e5703c88059da79e90809d6ff8e3e18369b6b38","signature":"1518a19a9cb02ce4439e1bd5d07e5dd4f496d4598142ff82264b40785ba28789"},{"version":"5fdee05eac1a871159cf92ade3ffc4ce0ae0b5f9f9899ba19fb9b51d31692fd6","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"334d16141236880327094c2a42341edbe3dfa6f382e3180dd998eb1c133a0e62","signature":"6c85d798db2f35d3c202acc3ebfc4b8ca84a3a1b460ca6a0616660453995496c"},"c5dde9dd9e1bf7168d8a2480a31f9799158f84e3aa1bb061fd09a0cf5a1fcb14",{"version":"e9ffdbc59d4b3dbbfce1f2a1dbb757d88c54f77af3de24be8839aa3f03492b44","signature":"4ce870ab24a6630dd481ccb3c2b5929e9e5d9090ff003514f1dd1613e6053ee8"}],"root":[[46,49],129,131,132,144,[170,173],175],"options":{"declaration":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":1,"outDir":"./","skipLibCheck":true,"strict":true,"target":2},"fileIdsList":[[98],[98,133,140,141,142],[98,133,138,139,140],[98,138],[98,133],[98,134,135,136],[98,134,135],[98,134,137],[98,110,111],[98,111,112,113,114],[98,105,111,113],[98,110,112],[69,98,105],[69,98,105,106],[98,106,107,108,109],[98,106,108],[98,107],[86,98,105,115,116,117,120],[98,116,117,119],[68,98,105,115,116,117,118],[98,117],[98,115,116],[98,105,115],[68,98,105],[52,98],[55,98],[56,61,89,98],[57,68,69,76,86,97,98],[57,58,68,76,98],[59,98],[60,61,69,77,98],[61,86,94,98],[62,64,68,76,98],[63,98],[64,65,98],[68,98],[66,68,98],[68,69,70,86,97,98],[68,69,70,83,86,89,98],[98,102],[64,68,71,76,86,97,98],[68,69,71,72,76,86,94,97,98],[71,73,86,94,97,98],[52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],[68,74,98],[75,97,98],[64,68,76,86,98],[77,98],[78,98],[55,79,98],[80,96,98,102],[81,98],[82,98],[68,83,84,98],[83,85,98,100],[56,68,86,87,88,89,98],[56,86,88,98],[86,87,98],[89,98],[90,98],[55,86,98],[68,92,93,98],[92,93,98],[61,76,86,94,98],[95,98],[76,96,98],[56,71,82,97,98],[61,98],[86,98,99],[98,100],[98,101],[56,61,68,70,79,86,97,98,100,102],[86,98,103],[98,125],[98,122,123,124],[98,147,149],[98,149],[98,147],[98,145,149,169],[98,145,149],[98,169],[98,149,169],[57,98,105,146,148],[98,105,145,149],[98,147,163,164,165,166],[98,151,162,167,168],[98,150],[98,151,162,167],[98,149,150,152,153,154,155,156,157,158,159,160,161],[47,98],[77,78,98],[45,47,50,51,69,77,78,98,121,125,126,127,129,132,144,171],[47,98,129,143],[47,98,144,171],[44,98],[78,98,131],[98,130],[44,45,46,98],[44,46,71,73,98,170],[98,128],[47,129,143],[169],[47,144],[44],[138]],"referencedMap":[[133,1],[143,2],[141,3],[139,4],[142,5],[140,1],[135,1],[137,6],[136,7],[134,1],[138,8],[112,9],[115,10],[114,11],[113,12],[111,13],[107,14],[110,15],[109,16],[108,17],[106,13],[121,18],[120,19],[119,20],[118,21],[117,22],[116,23],[126,1],[128,24],[130,13],[52,25],[53,25],[55,26],[56,27],[57,28],[58,29],[59,30],[60,31],[61,32],[62,33],[63,34],[64,35],[65,35],[67,36],[66,37],[68,36],[69,38],[70,39],[54,40],[104,1],[71,41],[72,42],[73,43],[105,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,53],[83,54],[84,54],[85,55],[86,56],[88,57],[87,58],[89,59],[90,60],[91,61],[92,62],[93,63],[94,64],[95,65],[96,66],[97,67],[98,68],[99,69],[100,70],[101,71],[102,72],[103,73],[127,1],[45,1],[44,1],[51,1],[50,1],[122,74],[123,74],[125,75],[124,74],[174,8],[153,1],[163,76],[147,77],[164,76],[165,78],[166,78],[152,1],[154,77],[155,77],[156,79],[157,80],[158,81],[159,81],[150,82],[160,77],[145,77],[161,81],[148,78],[149,83],[146,84],[167,85],[169,86],[151,87],[168,88],[162,89],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[48,90],[49,91],[172,92],[144,93],[170,81],[173,94],[46,95],[132,96],[131,97],[47,98],[171,99],[175,4],[129,100]],"exportedModulesMap":[[133,1],[143,2],[141,3],[139,4],[142,5],[140,1],[135,1],[137,6],[136,7],[134,1],[138,8],[112,9],[115,10],[114,11],[113,12],[111,13],[107,14],[110,15],[109,16],[108,17],[106,13],[121,18],[120,19],[119,20],[118,21],[117,22],[116,23],[126,1],[128,24],[130,13],[52,25],[53,25],[55,26],[56,27],[57,28],[58,29],[59,30],[60,31],[61,32],[62,33],[63,34],[64,35],[65,35],[67,36],[66,37],[68,36],[69,38],[70,39],[54,40],[104,1],[71,41],[72,42],[73,43],[105,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,53],[83,54],[84,54],[85,55],[86,56],[88,57],[87,58],[89,59],[90,60],[91,61],[92,62],[93,63],[94,64],[95,65],[96,66],[97,67],[98,68],[99,69],[100,70],[101,71],[102,72],[103,73],[127,1],[45,1],[44,1],[51,1],[50,1],[122,74],[123,74],[125,75],[124,74],[174,8],[153,1],[163,76],[147,77],[164,76],[165,78],[166,78],[152,1],[154,77],[155,77],[156,79],[157,80],[158,81],[159,81],[150,82],[160,77],[145,77],[161,81],[148,78],[149,83],[146,84],[167,85],[169,86],[151,87],[168,88],[162,89],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[48,90],[144,101],[170,102],[173,103],[46,104],[175,105]],"semanticDiagnosticsPerFile":[133,143,141,139,142,140,135,137,136,134,138,112,115,114,113,111,107,110,109,108,106,121,120,119,118,117,116,126,128,130,52,53,55,56,57,58,59,60,61,62,63,64,65,67,66,68,69,70,54,104,71,72,73,105,74,75,76,77,78,79,80,81,82,83,84,85,86,88,87,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,127,45,44,51,50,122,123,125,124,174,153,163,147,164,165,166,152,154,155,156,157,158,159,150,160,145,161,148,149,146,167,169,151,168,162,42,43,9,8,2,10,11,12,13,14,15,16,17,3,4,21,18,19,20,22,23,24,5,25,26,27,28,6,32,29,30,31,33,7,34,39,40,35,36,37,38,1,41,48,49,172,144,170,173,46,132,131,47,171,175,129]},"version":"5.1.6"}
|
package/package.json
CHANGED