d1s 0.2.5 → 0.2.6

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.
Files changed (44) hide show
  1. package/dist/.next/.next/BUILD_ID +1 -1
  2. package/dist/.next/.next/app-build-manifest.json +16 -16
  3. package/dist/.next/.next/app-path-routes-manifest.json +1 -1
  4. package/dist/.next/.next/build-manifest.json +2 -2
  5. package/dist/.next/.next/cache/.tsbuildinfo +1 -1
  6. package/dist/.next/.next/cache/webpack/client-production/0.pack +0 -0
  7. package/dist/.next/.next/cache/webpack/client-production/1.pack +0 -0
  8. package/dist/.next/.next/cache/webpack/client-production/3.pack +0 -0
  9. package/dist/.next/.next/cache/webpack/client-production/index.pack +0 -0
  10. package/dist/.next/.next/cache/webpack/client-production/index.pack.old +0 -0
  11. package/dist/.next/.next/cache/webpack/server-production/0.pack +0 -0
  12. package/dist/.next/.next/cache/webpack/server-production/1.pack +0 -0
  13. package/dist/.next/.next/cache/webpack/server-production/2.pack +0 -0
  14. package/dist/.next/.next/cache/webpack/server-production/index.pack +0 -0
  15. package/dist/.next/.next/cache/webpack/server-production/index.pack.old +0 -0
  16. package/dist/.next/.next/next-minimal-server.js.nft.json +1 -1
  17. package/dist/.next/.next/next-server.js.nft.json +1 -1
  18. package/dist/.next/.next/prerender-manifest.json +1 -1
  19. package/dist/.next/.next/server/app/_not-found.html +1 -1
  20. package/dist/.next/.next/server/app/_not-found.rsc +1 -1
  21. package/dist/.next/.next/server/app/api/cloudflare/route.js +1 -1
  22. package/dist/.next/.next/server/app/api/databases/route.js +1 -1
  23. package/dist/.next/.next/server/app/api/migrations/sync/route.js +1 -1
  24. package/dist/.next/.next/server/app/api/migrations/sync-files/route.js +1 -1
  25. package/dist/.next/.next/server/app/api/pull-remote/confirm/route.js +1 -1
  26. package/dist/.next/.next/server/app/api/pull-remote/preview/route.js +1 -1
  27. package/dist/.next/.next/server/app/api/push-remote/confirm/route.js +1 -1
  28. package/dist/.next/.next/server/app/api/push-remote/preview/route.js +1 -1
  29. package/dist/.next/.next/server/app/api/query/route.js +1 -1
  30. package/dist/.next/.next/server/app/api/tables/[name]/route.js +1 -1
  31. package/dist/.next/.next/server/app/api/tables/route.js +1 -1
  32. package/dist/.next/.next/server/app/index.html +1 -1
  33. package/dist/.next/.next/server/app/index.rsc +1 -1
  34. package/dist/.next/.next/server/app/page.js +6 -6
  35. package/dist/.next/.next/server/app-paths-manifest.json +3 -3
  36. package/dist/.next/.next/server/chunks/336.js +1 -1
  37. package/dist/.next/.next/server/chunks/686.js +1 -1
  38. package/dist/.next/.next/server/chunks/992.js +2 -2
  39. package/dist/.next/.next/server/pages/404.html +1 -1
  40. package/dist/.next/.next/server/pages/500.html +1 -1
  41. package/dist/.next/.next/static/HsZ8OanS5v86DqC9rErO-/_buildManifest.js +1 -0
  42. package/dist/.next/.next/static/HsZ8OanS5v86DqC9rErO-/_ssgManifest.js +1 -0
  43. package/dist/.next/.next/trace +3 -3
  44. package/package.json +3 -2
@@ -1,11 +1,11 @@
1
1
  {
2
- "/_not-found/page": "app/_not-found/page.js",
3
- "/api/cloudflare/route": "app/api/cloudflare/route.js",
4
2
  "/api/databases/route": "app/api/databases/route.js",
5
3
  "/api/migrations/sync-files/route": "app/api/migrations/sync-files/route.js",
4
+ "/_not-found/page": "app/_not-found/page.js",
5
+ "/api/cloudflare/route": "app/api/cloudflare/route.js",
6
6
  "/api/migrations/sync/route": "app/api/migrations/sync/route.js",
7
- "/api/pull-remote/confirm/route": "app/api/pull-remote/confirm/route.js",
8
7
  "/api/pull-remote/preview/route": "app/api/pull-remote/preview/route.js",
8
+ "/api/pull-remote/confirm/route": "app/api/pull-remote/confirm/route.js",
9
9
  "/api/push-remote/confirm/route": "app/api/push-remote/confirm/route.js",
10
10
  "/api/push-remote/preview/route": "app/api/push-remote/preview/route.js",
11
11
  "/api/query/route": "app/api/query/route.js",
@@ -1 +1 @@
1
- exports.id=336,exports.ids=[336],exports.modules={7928:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,3219,23)),Promise.resolve().then(r.t.bind(r,4863,23)),Promise.resolve().then(r.t.bind(r,5155,23)),Promise.resolve().then(r.t.bind(r,802,23)),Promise.resolve().then(r.t.bind(r,9350,23)),Promise.resolve().then(r.t.bind(r,8530,23)),Promise.resolve().then(r.t.bind(r,8921,23))},1480:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,6959,23)),Promise.resolve().then(r.t.bind(r,3875,23)),Promise.resolve().then(r.t.bind(r,8903,23)),Promise.resolve().then(r.t.bind(r,7174,23)),Promise.resolve().then(r.t.bind(r,4178,23)),Promise.resolve().then(r.t.bind(r,7190,23)),Promise.resolve().then(r.t.bind(r,1365,23))},9233:(e,t,r)=>{Promise.resolve().then(r.bind(r,3164)),Promise.resolve().then(r.bind(r,1831))},2385:(e,t,r)=>{Promise.resolve().then(r.bind(r,2652)),Promise.resolve().then(r.bind(r,2899))},2652:(e,t,r)=>{"use strict";r.d(t,{Toaster:()=>v});var a=r(5512),s=r(6888),o=r(8009),i=r(8952),n=r(1643),c=r(1255),l=r(3603);let d=i.Kq,u=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.LM,{ref:r,className:(0,l.cn)("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));u.displayName=i.LM.displayName;let h=(0,n.F)("group pointer-events-auto relative flex w-full items-center justify-between space-x-2 overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),p=o.forwardRef(({className:e,variant:t,...r},s)=>(0,a.jsx)(i.bL,{ref:s,className:(0,l.cn)(h({variant:t}),e),...r}));p.displayName=i.bL.displayName,o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.rc,{ref:r,className:(0,l.cn)("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t})).displayName=i.rc.displayName;let m=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.bm,{ref:r,className:(0,l.cn)("absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:(0,a.jsx)(c.A,{className:"h-4 w-4"})}));m.displayName=i.bm.displayName;let f=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.hE,{ref:r,className:(0,l.cn)("text-sm font-semibold [&+div]:text-xs",e),...t}));f.displayName=i.hE.displayName;let b=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.VY,{ref:r,className:(0,l.cn)("text-sm opacity-90",e),...t}));function v(){let{toasts:e}=(0,s.dj)();return(0,a.jsxs)(d,{children:[e.map(function({id:e,title:t,description:r,action:s,...o}){return(0,a.jsxs)(p,{...o,children:[(0,a.jsxs)("div",{className:"grid gap-1",children:[t&&(0,a.jsx)(f,{children:t}),r&&(0,a.jsx)(b,{children:r})]}),s,(0,a.jsx)(m,{})]},e)}),(0,a.jsx)(u,{})]})}b.displayName=i.VY.displayName},8180:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>u,metadata:()=>d});var a=r(2740),s=r(7944),o=r.n(s),i=r(5510),n=r.n(i);r(1135);var c=r(1831),l=r(3164);let d={title:"d1-studio",description:"Native D1 database studio."};function u({children:e}){return(0,a.jsx)("html",{lang:"en",children:(0,a.jsx)("body",{className:`${o().variable} ${n().variable} antialiased`,children:(0,a.jsxs)(c.DatabaseProvider,{children:[e,(0,a.jsx)(l.Toaster,{})," "]})})})}},3164:(e,t,r)=>{"use strict";r.d(t,{Toaster:()=>a});let a=(0,r(6760).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/components/ui/toaster.jsx","Toaster")},1135:()=>{},2899:(e,t,r)=>{"use strict";r.d(t,{DatabaseProvider:()=>u,t:()=>h});var a=r(5512),s=r(8009),o=r(6888);let i=new Map;function n(e,t,r=2e3){let a=i.get(e);if(a&&Date.now()-a.timestamp<r)return a.promise;let s=t();return i.set(e,{promise:s,timestamp:Date.now()}),s.finally(()=>{setTimeout(()=>{i.delete(e)},r)}),s}let c=(0,s.createContext)(void 0);class l{constructor(){this.cache=new Map}get(e){return this.cache.get(e)||null}set(e,t,r,a){this.cache.set(e,{data:t,schema:r,meta:a,timestamp:Date.now()})}update(e,t,r,a){let s=this.cache.get(e);s&&this.cache.set(e,{data:t||s.data,schema:r||s.schema,meta:a||s.meta,timestamp:Date.now()})}invalidate(e){this.cache.delete(e)}clear(){this.cache.clear()}}class d{constructor(){this.queue=[],this.processing=!1}async add(e){return new Promise((t,r)=>{this.queue.push({operation:e,resolve:t,reject:r}),this.process()})}async process(){if(this.processing||0===this.queue.length)return;this.processing=!0;let{operation:e,resolve:t,reject:r}=this.queue.shift();try{let r=await e();t(r)}catch(e){r(e)}finally{this.processing=!1,this.process()}}}function u({children:e}){let{toast:t}=(0,o.dj)(),[r,i]=(0,s.useState)([]),[u,h]=(0,s.useState)(!0),[p,m]=(0,s.useState)(null),[f,b]=(0,s.useState)(null);(0,s.useRef)(new d);let[v,g]=(0,s.useState)(null),y=(0,s.useRef)(new l).current,w=(0,s.useCallback)((e,t=1,r=50)=>{let a=`table-${e}-${t}-${r}`;return y.get(a)},[]),x=(0,s.useCallback)(e=>{y.cache.forEach((t,r)=>{r.startsWith(`table-${e}-`)&&y.invalidate(r)})},[]),T=(0,s.useCallback)((e,t,r,a,s=1,o=50)=>{let i=`table-${e}-${s}-${o}`;y.update(i,t,r,a)},[]),S=(0,s.useCallback)(async e=>n(`query-${e}`,async()=>{try{let t=await fetch("/api/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:e})});if(!t.ok){let e="Failed to execute query";try{let r=await t.json();e=r?.error?.message||e}catch(e){}throw Error(e)}let r=await t.json();if(!r.success)throw Error(r.error||"Query execution failed");return r}catch(e){throw e||Error("An unknown error occurred")}},1e3),[]),j=(0,s.useCallback)(async e=>{try{let t=await fetch(`/api/tables/${e}`),r=await t.json();if(!t.ok||!r.success)throw Error(r.error||"Failed to fetch table schema");return r.schema||[]}catch(e){throw console.error("Schema fetch error:",e),t({variant:"destructive",title:"Schema Fetch Failed",description:e.message}),e}},[t]),E=(0,s.useCallback)(async(e,r={})=>{let{forceFetch:a=!1,page:s=1,limit:o=50}=r,i=`table-${e}-${s}-${o}`;if(!a){let e=y.get(i);if(e)return e}return n(`table-${e}-${s}-${o}`,async()=>{try{let t=await fetch(`/api/tables/${e}?page=${s}&limit=${o}`,{headers:{"Cache-Control":"no-cache",Pragma:"no-cache"}});if(!t.ok)throw Error("Failed to fetch table data");let r=await t.json();if(!r.success)throw Error(r.error||"Failed to fetch table data");return y.set(i,r.data,r.schema,r.meta),r}catch(e){throw console.error("Error fetching table data:",e),t({variant:"destructive",title:"Data Fetch Failed",description:e.message}),e}},1e3)},[t]),C=(0,s.useCallback)(async e=>{try{return y.invalidate(e),await E(e,{forceFetch:!0})}catch(e){throw console.error("Error updating table data:",e),t({variant:"destructive",title:"Update Failed",description:e.message}),e}},[E,t]),P=(0,s.useCallback)(async(e,t={})=>(g(e),await E(e,t)),[E]),k=(0,s.useCallback)(async()=>n("refresh-tables",async()=>{h(!0),m(null);try{let e=await fetch("/api/tables");if(!e.ok)throw Error("Failed to fetch tables");let t=await e.json();if(t.error)throw Error(t.error);return i(t.tables||[]),t.tables||[]}catch(e){throw m(e.message),t({variant:"destructive",title:"Refresh Failed",description:e.message}),e}finally{h(!1)}},2e3),[t]),D=(0,s.useCallback)(async e=>{try{await S(e),y.clear(),await k(),t({title:"Success",description:"Table created successfully"})}catch(e){throw t({variant:"destructive",title:"Create Table Failed",description:e.message}),Error(`Failed to create table: ${e.message}`)}},[S,k,t]),N=(0,s.useCallback)(async e=>{try{await S(`DROP TABLE ${e};`),y.invalidate(e),await k(),t({title:"Success",description:"Table dropped successfully"})}catch(e){throw t({variant:"destructive",title:"Drop Table Failed",description:e.message}),Error(`Failed to drop table: ${e.message}`)}},[S,k,t]),$=(0,s.useCallback)(async e=>{try{let r=await fetch("/api/migrations/sync",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok){let e=await r.json();throw Error(e.error?.message||"Failed to sync migrations")}let a=await r.json();return t({title:"Success",description:"Migrations synced successfully"}),a}catch(e){throw console.error("Error syncing migrations:",e),t({variant:"destructive",title:"Sync Failed",description:e.message}),e}},[t]),F=(0,s.useCallback)(async()=>{try{let e=localStorage.getItem("cf_credentials");if(!e)throw Error("No Cloudflare credentials found. Please connect to Cloudflare first.");let r=JSON.parse(e);if(!r.accountId||!r.apiToken)throw Error("Invalid credentials stored. Please reconnect to Cloudflare.");let a=await fetch("/api/pull-remote/confirm",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accountId:r.accountId,apiToken:r.apiToken})}),s=await a.json();if(!a.ok||!s.success)throw Error(s.error?.message||"Failed to pull from remote");return y.clear(),await k(),t({title:"Success",description:`Remote state applied successfully. Migrations applied: ${s.details.appliedMigrations.join(", ")}`}),s}catch(e){throw console.error("Error pulling from remote:",e),t({variant:"destructive",title:"Pull Failed",description:e.message}),e}},[k,t]),O=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/push-remote",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),r=await t.json();if(!t.ok)throw Error(r.error?.message||"Failed to push to remote");return r}catch(e){throw console.error("Error pushing to remote:",e),e}},[t]),A=(0,s.useMemo)(()=>({tables:r,currentDatabase:f,isLoading:u,error:p,activeTable:v,refreshTables:k,executeQuery:S,fetchTableSchema:j,fetchTableData:E,updateTableData:C,createTable:D,dropTable:N,syncMigrations:$,pullFromRemote:F,pushToRemote:O,getCachedTable:w,updateTableCache:T,invalidateTable:x,switchTable:P}),[r,f,u,p,v,k,S,j,E,C,D,N,$,F,O,w,T,x,P]);return(0,a.jsx)(c.Provider,{value:A,children:e})}function h(){let e=(0,s.useContext)(c);if(!e)throw Error("useDatabase must be used within a DatabaseProvider");return e}},6888:(e,t,r)=>{"use strict";r.d(t,{dj:()=>h});var a=r(8009);let s=0,o=new Map,i=e=>{if(o.has(e))return;let t=setTimeout(()=>{o.delete(e),d({type:"REMOVE_TOAST",toastId:e})},1e6);o.set(e,t)},n=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:r}=t;return r?i(r):e.toasts.forEach(e=>{i(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===r||void 0===r?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},c=[],l={toasts:[]};function d(e){l=n(l,e),c.forEach(e=>{e(l)})}function u({...e}){let t=(s=(s+1)%Number.MAX_SAFE_INTEGER).toString(),r=()=>d({type:"DISMISS_TOAST",toastId:t});return d({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:e=>d({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function h(){let[e,t]=a.useState(l);return a.useEffect(()=>(c.push(t),()=>{let e=c.indexOf(t);e>-1&&c.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>d({type:"DISMISS_TOAST",toastId:e})}}},3603:(e,t,r)=>{"use strict";r.d(t,{cn:()=>o});var a=r(2281),s=r(4805);function o(...e){return(0,s.QP)((0,a.$)(e))}},1831:(e,t,r)=>{"use strict";r.d(t,{DatabaseProvider:()=>s});var a=r(6760);let s=(0,a.registerClientReference)(function(){throw Error("Attempted to call DatabaseProvider() from the server but DatabaseProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/context/database-context.js","DatabaseProvider");(0,a.registerClientReference)(function(){throw Error("Attempted to call useDatabase() from the server but useDatabase is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/context/database-context.js","useDatabase")}};
1
+ exports.id=336,exports.ids=[336],exports.modules={7928:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,3219,23)),Promise.resolve().then(r.t.bind(r,4863,23)),Promise.resolve().then(r.t.bind(r,5155,23)),Promise.resolve().then(r.t.bind(r,802,23)),Promise.resolve().then(r.t.bind(r,9350,23)),Promise.resolve().then(r.t.bind(r,8530,23)),Promise.resolve().then(r.t.bind(r,8921,23))},1480:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,6959,23)),Promise.resolve().then(r.t.bind(r,3875,23)),Promise.resolve().then(r.t.bind(r,8903,23)),Promise.resolve().then(r.t.bind(r,7174,23)),Promise.resolve().then(r.t.bind(r,4178,23)),Promise.resolve().then(r.t.bind(r,7190,23)),Promise.resolve().then(r.t.bind(r,1365,23))},9233:(e,t,r)=>{Promise.resolve().then(r.bind(r,3164)),Promise.resolve().then(r.bind(r,1831))},2385:(e,t,r)=>{Promise.resolve().then(r.bind(r,2652)),Promise.resolve().then(r.bind(r,2899))},2652:(e,t,r)=>{"use strict";r.d(t,{Toaster:()=>v});var a=r(5512),s=r(6888),o=r(8009),i=r(8952),n=r(1643),c=r(1255),l=r(3603);let d=i.Kq,u=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.LM,{ref:r,className:(0,l.cn)("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));u.displayName=i.LM.displayName;let h=(0,n.F)("group pointer-events-auto relative flex w-full items-center justify-between space-x-2 overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),p=o.forwardRef(({className:e,variant:t,...r},s)=>(0,a.jsx)(i.bL,{ref:s,className:(0,l.cn)(h({variant:t}),e),...r}));p.displayName=i.bL.displayName,o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.rc,{ref:r,className:(0,l.cn)("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t})).displayName=i.rc.displayName;let m=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.bm,{ref:r,className:(0,l.cn)("absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:(0,a.jsx)(c.A,{className:"h-4 w-4"})}));m.displayName=i.bm.displayName;let f=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.hE,{ref:r,className:(0,l.cn)("text-sm font-semibold [&+div]:text-xs",e),...t}));f.displayName=i.hE.displayName;let b=o.forwardRef(({className:e,...t},r)=>(0,a.jsx)(i.VY,{ref:r,className:(0,l.cn)("text-sm opacity-90",e),...t}));function v(){let{toasts:e}=(0,s.dj)();return(0,a.jsxs)(d,{children:[e.map(function({id:e,title:t,description:r,action:s,...o}){return(0,a.jsxs)(p,{...o,children:[(0,a.jsxs)("div",{className:"grid gap-1",children:[t&&(0,a.jsx)(f,{children:t}),r&&(0,a.jsx)(b,{children:r})]}),s,(0,a.jsx)(m,{})]},e)}),(0,a.jsx)(u,{})]})}b.displayName=i.VY.displayName},8180:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>u,metadata:()=>d});var a=r(2740),s=r(7944),o=r.n(s),i=r(5510),n=r.n(i);r(1135);var c=r(1831),l=r(3164);let d={title:"d1-studio",description:"Native D1 database studio."};function u({children:e}){return(0,a.jsx)("html",{lang:"en",children:(0,a.jsx)("body",{className:`${o().variable} ${n().variable} antialiased`,children:(0,a.jsxs)(c.DatabaseProvider,{children:[e,(0,a.jsx)(l.Toaster,{})," "]})})})}},3164:(e,t,r)=>{"use strict";r.d(t,{Toaster:()=>a});let a=(0,r(4379).registerClientReference)(function(){throw Error("Attempted to call Toaster() from the server but Toaster is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/components/ui/toaster.jsx","Toaster")},1135:()=>{},2899:(e,t,r)=>{"use strict";r.d(t,{DatabaseProvider:()=>u,t:()=>h});var a=r(5512),s=r(8009),o=r(6888);let i=new Map;function n(e,t,r=2e3){let a=i.get(e);if(a&&Date.now()-a.timestamp<r)return a.promise;let s=t();return i.set(e,{promise:s,timestamp:Date.now()}),s.finally(()=>{setTimeout(()=>{i.delete(e)},r)}),s}let c=(0,s.createContext)(void 0);class l{constructor(){this.cache=new Map}get(e){return this.cache.get(e)||null}set(e,t,r,a){this.cache.set(e,{data:t,schema:r,meta:a,timestamp:Date.now()})}update(e,t,r,a){let s=this.cache.get(e);s&&this.cache.set(e,{data:t||s.data,schema:r||s.schema,meta:a||s.meta,timestamp:Date.now()})}invalidate(e){this.cache.delete(e)}clear(){this.cache.clear()}}class d{constructor(){this.queue=[],this.processing=!1}async add(e){return new Promise((t,r)=>{this.queue.push({operation:e,resolve:t,reject:r}),this.process()})}async process(){if(this.processing||0===this.queue.length)return;this.processing=!0;let{operation:e,resolve:t,reject:r}=this.queue.shift();try{let r=await e();t(r)}catch(e){r(e)}finally{this.processing=!1,this.process()}}}function u({children:e}){let{toast:t}=(0,o.dj)(),[r,i]=(0,s.useState)([]),[u,h]=(0,s.useState)(!0),[p,m]=(0,s.useState)(null),[f,b]=(0,s.useState)(null);(0,s.useRef)(new d);let[v,g]=(0,s.useState)(null),y=(0,s.useRef)(new l).current,w=(0,s.useCallback)((e,t=1,r=50)=>{let a=`table-${e}-${t}-${r}`;return y.get(a)},[]),x=(0,s.useCallback)(e=>{y.cache.forEach((t,r)=>{r.startsWith(`table-${e}-`)&&y.invalidate(r)})},[]),T=(0,s.useCallback)((e,t,r,a,s=1,o=50)=>{let i=`table-${e}-${s}-${o}`;y.update(i,t,r,a)},[]),S=(0,s.useCallback)(async e=>n(`query-${e}`,async()=>{try{let t=await fetch("/api/query",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:e})});if(!t.ok){let e="Failed to execute query";try{let r=await t.json();e=r?.error?.message||e}catch(e){}throw Error(e)}let r=await t.json();if(!r.success)throw Error(r.error||"Query execution failed");return r}catch(e){throw e||Error("An unknown error occurred")}},1e3),[]),j=(0,s.useCallback)(async e=>{try{let t=await fetch(`/api/tables/${e}`),r=await t.json();if(!t.ok||!r.success)throw Error(r.error||"Failed to fetch table schema");return r.schema||[]}catch(e){throw console.error("Schema fetch error:",e),t({variant:"destructive",title:"Schema Fetch Failed",description:e.message}),e}},[t]),E=(0,s.useCallback)(async(e,r={})=>{let{forceFetch:a=!1,page:s=1,limit:o=50}=r,i=`table-${e}-${s}-${o}`;if(!a){let e=y.get(i);if(e)return e}return n(`table-${e}-${s}-${o}`,async()=>{try{let t=await fetch(`/api/tables/${e}?page=${s}&limit=${o}`,{headers:{"Cache-Control":"no-cache",Pragma:"no-cache"}});if(!t.ok)throw Error("Failed to fetch table data");let r=await t.json();if(!r.success)throw Error(r.error||"Failed to fetch table data");return y.set(i,r.data,r.schema,r.meta),r}catch(e){throw console.error("Error fetching table data:",e),t({variant:"destructive",title:"Data Fetch Failed",description:e.message}),e}},1e3)},[t]),C=(0,s.useCallback)(async e=>{try{return y.invalidate(e),await E(e,{forceFetch:!0})}catch(e){throw console.error("Error updating table data:",e),t({variant:"destructive",title:"Update Failed",description:e.message}),e}},[E,t]),P=(0,s.useCallback)(async(e,t={})=>(g(e),await E(e,t)),[E]),k=(0,s.useCallback)(async()=>n("refresh-tables",async()=>{h(!0),m(null);try{let e=await fetch("/api/tables");if(!e.ok)throw Error("Failed to fetch tables");let t=await e.json();if(t.error)throw Error(t.error);return i(t.tables||[]),t.tables||[]}catch(e){throw m(e.message),t({variant:"destructive",title:"Refresh Failed",description:e.message}),e}finally{h(!1)}},2e3),[t]),D=(0,s.useCallback)(async e=>{try{await S(e),y.clear(),await k(),t({title:"Success",description:"Table created successfully"})}catch(e){throw t({variant:"destructive",title:"Create Table Failed",description:e.message}),Error(`Failed to create table: ${e.message}`)}},[S,k,t]),N=(0,s.useCallback)(async e=>{try{await S(`DROP TABLE ${e};`),y.invalidate(e),await k(),t({title:"Success",description:"Table dropped successfully"})}catch(e){throw t({variant:"destructive",title:"Drop Table Failed",description:e.message}),Error(`Failed to drop table: ${e.message}`)}},[S,k,t]),$=(0,s.useCallback)(async e=>{try{let r=await fetch("/api/migrations/sync",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok){let e=await r.json();throw Error(e.error?.message||"Failed to sync migrations")}let a=await r.json();return t({title:"Success",description:"Migrations synced successfully"}),a}catch(e){throw console.error("Error syncing migrations:",e),t({variant:"destructive",title:"Sync Failed",description:e.message}),e}},[t]),F=(0,s.useCallback)(async()=>{try{let e=localStorage.getItem("cf_credentials");if(!e)throw Error("No Cloudflare credentials found. Please connect to Cloudflare first.");let r=JSON.parse(e);if(!r.accountId||!r.apiToken)throw Error("Invalid credentials stored. Please reconnect to Cloudflare.");let a=await fetch("/api/pull-remote/confirm",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({accountId:r.accountId,apiToken:r.apiToken})}),s=await a.json();if(!a.ok||!s.success)throw Error(s.error?.message||"Failed to pull from remote");return y.clear(),await k(),t({title:"Success",description:`Remote state applied successfully. Migrations applied: ${s.details.appliedMigrations.join(", ")}`}),s}catch(e){throw console.error("Error pulling from remote:",e),t({variant:"destructive",title:"Pull Failed",description:e.message}),e}},[k,t]),O=(0,s.useCallback)(async e=>{try{let t=await fetch("/api/push-remote",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),r=await t.json();if(!t.ok)throw Error(r.error?.message||"Failed to push to remote");return r}catch(e){throw console.error("Error pushing to remote:",e),e}},[t]),A=(0,s.useMemo)(()=>({tables:r,currentDatabase:f,isLoading:u,error:p,activeTable:v,refreshTables:k,executeQuery:S,fetchTableSchema:j,fetchTableData:E,updateTableData:C,createTable:D,dropTable:N,syncMigrations:$,pullFromRemote:F,pushToRemote:O,getCachedTable:w,updateTableCache:T,invalidateTable:x,switchTable:P}),[r,f,u,p,v,k,S,j,E,C,D,N,$,F,O,w,T,x,P]);return(0,a.jsx)(c.Provider,{value:A,children:e})}function h(){let e=(0,s.useContext)(c);if(!e)throw Error("useDatabase must be used within a DatabaseProvider");return e}},6888:(e,t,r)=>{"use strict";r.d(t,{dj:()=>h});var a=r(8009);let s=0,o=new Map,i=e=>{if(o.has(e))return;let t=setTimeout(()=>{o.delete(e),d({type:"REMOVE_TOAST",toastId:e})},1e6);o.set(e,t)},n=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:r}=t;return r?i(r):e.toasts.forEach(e=>{i(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===r||void 0===r?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},c=[],l={toasts:[]};function d(e){l=n(l,e),c.forEach(e=>{e(l)})}function u({...e}){let t=(s=(s+1)%Number.MAX_SAFE_INTEGER).toString(),r=()=>d({type:"DISMISS_TOAST",toastId:t});return d({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:e=>{e||r()}}}),{id:t,dismiss:r,update:e=>d({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function h(){let[e,t]=a.useState(l);return a.useEffect(()=>(c.push(t),()=>{let e=c.indexOf(t);e>-1&&c.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>d({type:"DISMISS_TOAST",toastId:e})}}},3603:(e,t,r)=>{"use strict";r.d(t,{cn:()=>o});var a=r(2281),s=r(4805);function o(...e){return(0,s.QP)((0,a.$)(e))}},1831:(e,t,r)=>{"use strict";r.d(t,{DatabaseProvider:()=>s});var a=r(4379);let s=(0,a.registerClientReference)(function(){throw Error("Attempted to call DatabaseProvider() from the server but DatabaseProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/context/database-context.js","DatabaseProvider");(0,a.registerClientReference)(function(){throw Error("Attempted to call useDatabase() from the server but useDatabase is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/karenredona/Desktop/d1studio/src/context/database-context.js","useDatabase")}};
@@ -20,4 +20,4 @@ ${t}`,c.pop(),`[${e}]`}let i=Object.keys(h),g=i.length;if(0===g)return"{}";if(b<
20
20
  ${d}`,y="",v="",_=Math.min(g,w);l(h)&&(y+=u(h,m,w),i=i.slice(h.length),_-=h.length,v=m),n&&(i=o(i,a)),c.push(h);for(let e=0;e<_;e++){let t=i[e],r=x(t,h[t],c,f,d);void 0!==r&&(y+=`${v}${s(t)}: ${r}`,v=m)}if(g>w){let e=g-w;y+=`${v}"...": "${p(e)} not stringified"`,v=m}return""!==v&&(y=`
21
21
  ${d}${y}
22
22
  ${t}`),c.pop(),`{${y}}`}case"number":return isFinite(h)?String(h):t?t(h):"null";case"boolean":return!0===h?"true":"false";case"undefined":return;case"bigint":if(i)return String(h);default:return t?t(h):void 0}}function _(e,h,c){switch(typeof h){case"string":return s(h);case"object":{if(null===h)return"null";if("function"==typeof h.toJSON){if("object"!=typeof(h=h.toJSON(e)))return _(e,h,c);if(null===h)return"null"}if(-1!==c.indexOf(h))return r;let t="",i=void 0!==h.length;if(i&&Array.isArray(h)){if(0===h.length)return"[]";if(b<c.length+1)return'"[Array]"';c.push(h);let e=Math.min(h.length,w),r=0;for(;r<e-1;r++){let e=_(String(r),h[r],c);t+=void 0!==e?e:"null",t+=","}let i=_(String(r),h[r],c);if(t+=void 0!==i?i:"null",h.length-1>w){let e=h.length-w-1;t+=`,"... ${p(e)} not stringified"`}return c.pop(),`[${t}]`}let f=Object.keys(h),d=f.length;if(0===d)return"{}";if(b<c.length+1)return'"[Object]"';let g="",m=Math.min(d,w);i&&l(h)&&(t+=u(h,",",w),f=f.slice(h.length),m-=h.length,g=","),n&&(f=o(f,a)),c.push(h);for(let e=0;e<m;e++){let r=f[e],i=_(r,h[r],c);void 0!==i&&(t+=`${g}${s(r)}:${i}`,g=",")}if(d>w){let e=d-w;t+=`${g}"...":"${p(e)} not stringified"`}return c.pop(),`{${t}}`}case"number":return isFinite(h)?String(h):t?t(h):"null";case"boolean":return!0===h?"true":"false";case"undefined":return;case"bigint":if(i)return String(h);default:return t?t(h):void 0}}return function(e,t,r){if(arguments.length>1){let i="";if("number"==typeof r?i=" ".repeat(Math.min(r,10)):"string"==typeof r&&(i=r.slice(0,10)),null!=t){if("function"==typeof t)return y("",{"":e},[],t,i,"");if(Array.isArray(t))return v("",e,[],g(t),i,"")}if(0!==i.length)return x("",e,[],i,"")}return _("",e,[])}}},9312:(e,t)=>{function r(e){for(var t in e)this[t]=e[t]}t.get=function(e){var r=Error.stackTraceLimit;Error.stackTraceLimit=1/0;var i={},n=Error.prepareStackTrace;Error.prepareStackTrace=function(e,t){return t},Error.captureStackTrace(i,e||t.get);var s=i.stack;return Error.prepareStackTrace=n,Error.stackTraceLimit=r,s},t.parse=function(e){if(!e.stack)return[];var t=this;return e.stack.split("\n").slice(1).map(function(e){if(e.match(/^\s*[-]{4,}$/))return t._createParsedCallSite({fileName:e,lineNumber:null,functionName:null,typeName:null,methodName:null,columnNumber:null,native:null});var r=e.match(/at (?:(.+)\s+\()?(?:(.+?):(\d+)(?::(\d+))?|([^)]+))\)?/);if(r){var i=null,n=null,s=null,o=null,a=null,l="native"===r[5];if(r[1]){var u=(s=r[1]).lastIndexOf(".");if("."==s[u-1]&&u--,u>0){i=s.substr(0,u),n=s.substr(u+1);var h=i.indexOf(".Module");h>0&&(s=s.substr(h+1),i=i.substr(0,h))}o=null}n&&(o=i,a=n),"<anonymous>"===n&&(a=null,s=null);var c={fileName:r[2]||null,lineNumber:parseInt(r[3],10)||null,functionName:s,typeName:o,methodName:a,columnNumber:parseInt(r[4],10)||null,native:l};return t._createParsedCallSite(c)}}).filter(function(e){return!!e})};var i=["topLevel","eval","native","constructor"];["this","typeName","functionName","methodName","fileName","lineNumber","columnNumber","function","evalOrigin"].forEach(function(e){r.prototype[e]=null,r.prototype["get"+e[0].toUpperCase()+e.substr(1)]=function(){return this[e]}}),i.forEach(function(e){r.prototype[e]=!1,r.prototype["is"+e[0].toUpperCase()+e.substr(1)]=function(){return this[e]}}),t._createParsedCallSite=function(e){return new r(e)}},8333:(e,t,r)=>{"use strict";var i=r(5957).Buffer,n=i.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function s(e){var t;if(!e)return"utf8";for(;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function o(e){var t=s(e);if("string"!=typeof t&&(i.isEncoding===n||!n(e)))throw Error("Unknown encoding: "+e);return t||e}function a(e){var t;switch(this.encoding=o(e),this.encoding){case"utf16le":this.text=p,this.end=g,t=4;break;case"utf8":this.fillLast=c,t=4;break;case"base64":this.text=m,this.end=b,t=3;break;default:this.write=w,this.end=y;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=i.allocUnsafe(t)}function l(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function u(e,t,r){var i=t.length-1;if(i<r)return 0;var n=l(t[i]);return n>=0?(n>0&&(e.lastNeed=n-1),n):--i<r||-2===n?0:(n=l(t[i]))>=0?(n>0&&(e.lastNeed=n-2),n):--i<r||-2===n?0:(n=l(t[i]))>=0?(n>0&&(2===n?n=0:e.lastNeed=n-3),n):0}function h(e,t,r){if((192&t[0])!=128)return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if((192&t[1])!=128)return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&(192&t[2])!=128)return e.lastNeed=2,"�"}}function c(e){var t=this.lastTotal-this.lastNeed,r=h(this,e,t);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):void(e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length)}function f(e,t){var r=u(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var i=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t}function p(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function g(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function m(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function b(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function w(e){return e.toString(this.encoding)}function y(e){return e&&e.length?this.write(e):""}t.I=a,a.prototype.write=function(e){var t,r;if(0===e.length)return"";if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""},a.prototype.end=d,a.prototype.text=f,a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},1292:(e,t)=>{"use strict";t.levels={error:0,warn:1,help:2,data:3,info:4,debug:5,prompt:6,verbose:7,input:8,silly:9},t.colors={error:"red",warn:"yellow",help:"cyan",data:"grey",info:"green",debug:"blue",prompt:"grey",verbose:"cyan",input:"grey",silly:"magenta"}},7062:(e,t,r)=>{"use strict";Object.defineProperty(t,"cli",{value:r(1292)}),Object.defineProperty(t,"npm",{value:r(2e3)}),Object.defineProperty(t,"syslog",{value:r(7349)})},2e3:(e,t)=>{"use strict";t.levels={error:0,warn:1,info:2,http:3,verbose:4,debug:5,silly:6},t.colors={error:"red",warn:"yellow",info:"green",http:"green",verbose:"cyan",debug:"blue",silly:"magenta"}},7349:(e,t)=>{"use strict";t.levels={emerg:0,alert:1,crit:2,error:3,warning:4,notice:5,info:6,debug:7},t.colors={emerg:"red",alert:"yellow",crit:"red",error:"red",warning:"red",notice:"yellow",info:"green",debug:"blue"}},2239:(e,t,r)=>{"use strict";Object.defineProperty(t,"LEVEL",{value:Symbol.for("level")}),Object.defineProperty(t,"MESSAGE",{value:Symbol.for("message")}),Object.defineProperty(t,"SPLAT",{value:Symbol.for("splat")}),Object.defineProperty(t,"configs",{value:r(7062)})},1387:(e,t,r)=>{e.exports=r(8354).deprecate},9747:(e,t,r)=>{"use strict";e.exports=r(3744),e.exports.LegacyTransportStream=r(1352)},1352:(e,t,r)=>{"use strict";let i=r(8354),{LEVEL:n}=r(2239),s=r(3744),o=e.exports=function(e={}){if(s.call(this,e),!e.transport||"function"!=typeof e.transport.log)throw Error("Invalid transport, must be an object with a log method.");function t(e){this.emit("error",e,this.transport)}this.transport=e.transport,this.level=this.level||e.transport.level,this.handleExceptions=this.handleExceptions||e.transport.handleExceptions,this._deprecated(),this.transport.__winstonError||(this.transport.__winstonError=t.bind(this),this.transport.on("error",this.transport.__winstonError))};i.inherits(o,s),o.prototype._write=function(e,t,r){if(this.silent||!0===e.exception&&!this.handleExceptions)return r(null);(!this.level||this.levels[this.level]>=this.levels[e[n]])&&this.transport.log(e[n],e.message,e,this._nop),r(null)},o.prototype._writev=function(e,t){for(let t=0;t<e.length;t++)this._accept(e[t])&&(this.transport.log(e[t].chunk[n],e[t].chunk.message,e[t].chunk,this._nop),e[t].callback());return t(null)},o.prototype._deprecated=function(){console.error(`${this.transport.name} is a legacy winston transport. Consider upgrading:
23
- - Upgrade docs: https://github.com/winstonjs/winston/blob/master/UPGRADE-3.0.md`)},o.prototype.close=function(){this.transport.close&&this.transport.close(),this.transport.__winstonError&&(this.transport.removeListener("error",this.transport.__winstonError),this.transport.__winstonError=null)}},3744:(e,t,r)=>{"use strict";let i=r(8354),n=r(6324),{LEVEL:s}=r(2239),o=e.exports=function(e={}){n.call(this,{objectMode:!0,highWaterMark:e.highWaterMark}),this.format=e.format,this.level=e.level,this.handleExceptions=e.handleExceptions,this.handleRejections=e.handleRejections,this.silent=e.silent,e.log&&(this.log=e.log),e.logv&&(this.logv=e.logv),e.close&&(this.close=e.close),this.once("pipe",e=>{this.levels=e.levels,this.parent=e}),this.once("unpipe",e=>{e===this.parent&&(this.parent=null,this.close&&this.close())})};i.inherits(o,n),o.prototype._write=function(e,t,r){if(this.silent||!0===e.exception&&!this.handleExceptions)return r(null);let i=this.level||this.parent&&this.parent.level;if(!i||this.levels[i]>=this.levels[e[s]]){let t,i;if(e&&!this.format)return this.log(e,r);try{i=this.format.transform(Object.assign({},e),this.format.options)}catch(e){t=e}if(t||!i){if(r(),t)throw t;return}return this.log(i,r)}return this._writableState.sync=!1,r(null)},o.prototype._writev=function(e,t){if(this.logv){let r=e.filter(this._accept,this);return r.length?this.logv(r,t):t(null)}for(let r=0;r<e.length;r++){let i,n;if(this._accept(e[r])){if(e[r].chunk&&!this.format){this.log(e[r].chunk,e[r].callback);continue}try{n=this.format.transform(Object.assign({},e[r].chunk),this.format.options)}catch(e){i=e}if(i||!n){if(e[r].callback(),i)throw t(null),i}else this.log(n,e[r].callback)}}return t(null)},o.prototype._accept=function(e){let t=e.chunk;if(this.silent)return!1;let r=this.level||this.parent&&this.parent.level;return(!0===t.exception||!r||this.levels[r]>=this.levels[t[s]])&&(!!this.handleExceptions||!0!==t.exception)},o.prototype._nop=function(){}},6399:(e,t,r)=>{"use strict";let i=r(51),{warn:n}=r(3563);t.version=r(5040).version,t.transports=r(4279),t.config=r(5211),t.addColors=i.levels,t.format=i.format,t.createLogger=r(6747),t.Logger=r(1190),t.ExceptionHandler=r(608),t.RejectionHandler=r(3930),t.Container=r(6735),t.Transport=r(9747),t.loggers=new t.Container;let s=t.createLogger();Object.keys(t.config.npm.levels).concat(["log","query","stream","add","remove","clear","profile","startTimer","handleExceptions","unhandleExceptions","handleRejections","unhandleRejections","configure","child"]).forEach(e=>t[e]=(...t)=>s[e](...t)),Object.defineProperty(t,"level",{get:()=>s.level,set(e){s.level=e}}),Object.defineProperty(t,"exceptions",{get:()=>s.exceptions}),Object.defineProperty(t,"rejections",{get:()=>s.rejections}),["exitOnError"].forEach(e=>{Object.defineProperty(t,e,{get:()=>s[e],set(t){s[e]=t}})}),Object.defineProperty(t,"default",{get:()=>({exceptionHandlers:s.exceptionHandlers,rejectionHandlers:s.rejectionHandlers,transports:s.transports})}),n.deprecated(t,"setLevels"),n.forFunctions(t,"useFormat",["cli"]),n.forProperties(t,"useFormat",["padLevels","stripColors"]),n.forFunctions(t,"deprecated",["addRewriter","addFilter","clone","extend"]),n.forProperties(t,"deprecated",["emitErrs","levelLength"])},3563:(e,t,r)=>{"use strict";let{format:i}=r(8354);t.warn={deprecated:e=>()=>{throw Error(i("{ %s } was removed in winston@3.0.0.",e))},useFormat:e=>()=>{throw Error([i("{ %s } was removed in winston@3.0.0.",e),"Use a custom winston.format = winston.format(function) instead."].join("\n"))},forFunctions(e,r,i){i.forEach(i=>{e[i]=t.warn[r](i)})},forProperties(e,r,i){i.forEach(i=>{let n=t.warn[r](i);Object.defineProperty(e,i,{get:n,set:n})})}}},5211:(e,t,r)=>{"use strict";let i=r(51),{configs:n}=r(2239);t.cli=i.levels(n.cli),t.npm=i.levels(n.npm),t.syslog=i.levels(n.syslog),t.addColors=i.levels},6735:(e,t,r)=>{"use strict";let i=r(6747);e.exports=class{constructor(e={}){this.loggers=new Map,this.options=e}add(e,t){if(!this.loggers.has(e)){let r=(t=Object.assign({},t||this.options)).transports||this.options.transports;r?t.transports=Array.isArray(r)?r.slice():[r]:t.transports=[];let n=i(t);n.on("close",()=>this._delete(e)),this.loggers.set(e,n)}return this.loggers.get(e)}get(e,t){return this.add(e,t)}has(e){return!!this.loggers.has(e)}close(e){if(e)return this._removeLogger(e);this.loggers.forEach((e,t)=>this._removeLogger(t))}_removeLogger(e){this.loggers.has(e)&&(this.loggers.get(e).close(),this._delete(e))}_delete(e){this.loggers.delete(e)}}},6747:(e,t,r)=>{"use strict";let{LEVEL:i}=r(2239),n=r(5211),s=r(1190),o=r(1298)("winston:create-logger");function a(e){return"is"+e.charAt(0).toUpperCase()+e.slice(1)+"Enabled"}e.exports=function(e={}){e.levels=e.levels||n.npm.levels;class t extends s{constructor(e){super(e)}}let r=new t(e);return Object.keys(e.levels).forEach(function(e){if(o('Define prototype method for "%s"',e),"log"===e){console.warn('Level "log" not defined: conflicts with the method "log". Use a different level name.');return}t.prototype[e]=function(...t){let n=this||r;if(1===t.length){let[s]=t,o=s&&s.message&&s||{message:s};return o.level=o[i]=e,n._addDefaultMeta(o),n.write(o),this||r}return 0===t.length?(n.log(e,""),n):n.log(e,...t)},t.prototype[a(e)]=function(){return(this||r).isLevelEnabled(e)}}),r}},608:(e,t,r)=>{"use strict";let i=r(1820),n=r(3529),s=r(1298)("winston:exception"),o=r(3927),a=r(9312),l=r(5002);e.exports=class{constructor(e){if(!e)throw Error("Logger is required to handle exceptions");this.logger=e,this.handlers=new Map}handle(...e){e.forEach(e=>{if(Array.isArray(e))return e.forEach(e=>this._addHandler(e));this._addHandler(e)}),this.catcher||(this.catcher=this._uncaughtException.bind(this),process.on("uncaughtException",this.catcher))}unhandle(){this.catcher&&(process.removeListener("uncaughtException",this.catcher),this.catcher=!1,Array.from(this.handlers.values()).forEach(e=>this.logger.unpipe(e)))}getAllInfo(e){let t=null;return e&&(t="string"==typeof e?e:e.message),{error:e,level:"error",message:[`uncaughtException: ${t||"(no error message)"}`,e&&e.stack||" No stack trace"].join("\n"),stack:e&&e.stack,exception:!0,date:new Date().toString(),process:this.getProcessInfo(),os:this.getOsInfo(),trace:this.getTrace(e)}}getProcessInfo(){return{pid:process.pid,uid:process.getuid?process.getuid():null,gid:process.getgid?process.getgid():null,cwd:process.cwd(),execPath:process.execPath,version:process.version,argv:process.argv,memoryUsage:process.memoryUsage()}}getOsInfo(){return{loadavg:i.loadavg(),uptime:i.uptime()}}getTrace(e){return(e?a.parse(e):a.get()).map(e=>({column:e.getColumnNumber(),file:e.getFileName(),function:e.getFunctionName(),line:e.getLineNumber(),method:e.getMethodName(),native:e.isNative()}))}_addHandler(e){if(!this.handlers.has(e)){e.handleExceptions=!0;let t=new l(e);this.handlers.set(e,t),this.logger.pipe(t)}}_uncaughtException(e){let t;let r=this.getAllInfo(e),i=this._getExceptionHandlers(),a="function"==typeof this.logger.exitOnError?this.logger.exitOnError(e):this.logger.exitOnError;function l(){s("doExit",a),s("process._exiting",process._exiting),a&&!process._exiting&&(t&&clearTimeout(t),process.exit(1))}if(!i.length&&a&&(console.warn("winston: exitOnError cannot be true with no exception handlers."),console.warn("winston: not exiting process."),a=!1),!i||0===i.length)return process.nextTick(l);n(i,(e,t)=>{let r=o(t),i=e.transport||e;function n(e){return()=>{s(e),r()}}i._ending=!0,i.once("finish",n("finished")),i.once("error",n("error"))},()=>a&&l()),this.logger.log(r),a&&(t=setTimeout(l,3e3))}_getExceptionHandlers(){return this.logger.transports.filter(e=>(e.transport||e).handleExceptions)}}},5002:(e,t,r)=>{"use strict";let{Writable:i}=r(2826);e.exports=class extends i{constructor(e){if(super({objectMode:!0}),!e)throw Error("ExceptionStream requires a TransportStream instance.");this.handleExceptions=!0,this.transport=e}_write(e,t,r){return e.exception?this.transport.log(e,r):(r(),!0)}}},1190:(e,t,r)=>{"use strict";let{Stream:i,Transform:n}=r(2826),s=r(3529),{LEVEL:o,SPLAT:a}=r(2239),l=r(6696),u=r(608),h=r(3930),c=r(1352),f=r(3659),{warn:d}=r(3563),p=r(5211),g=/%[scdjifoO%]/g;class m extends n{constructor(e){super({objectMode:!0}),this.configure(e)}child(e){let t=this;return Object.create(t,{write:{value:function(r){let i=Object.assign({},e,r);r instanceof Error&&(i.stack=r.stack,i.message=r.message),t.write(i)}}})}configure({silent:e,format:t,defaultMeta:i,levels:n,level:s="info",exitOnError:o=!0,transports:a,colors:l,emitErrs:c,formatters:f,padLevels:d,rewriters:g,stripColors:m,exceptionHandlers:b,rejectionHandlers:w}={}){if(this.transports.length&&this.clear(),this.silent=e,this.format=t||this.format||r(9161)(),this.defaultMeta=i||null,this.levels=n||this.levels||p.npm.levels,this.level=s,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new u(this),this.rejections=new h(this),this.profilers={},this.exitOnError=o,a&&(a=Array.isArray(a)?a:[a]).forEach(e=>this.add(e)),l||c||f||d||g||m)throw Error("{ colors, emitErrs, formatters, padLevels, rewriters, stripColors } were removed in winston@3.0.0.\nUse a custom winston.format(function) instead.\nSee: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md");b&&this.exceptions.handle(b),w&&this.rejections.handle(w)}isLevelEnabled(e){let t=b(this.levels,e);if(null===t)return!1;let r=b(this.levels,this.level);return null!==r&&(this.transports&&0!==this.transports.length?-1!==this.transports.findIndex(e=>{let i=b(this.levels,e.level);return null===i&&(i=r),i>=t}):r>=t)}log(e,t,...r){if(1==arguments.length)return e[o]=e.level,this._addDefaultMeta(e),this.write(e),this;if(2==arguments.length)return t&&"object"==typeof t?t[o]=t.level=e:t={[o]:e,level:e,message:t},this._addDefaultMeta(t),this.write(t),this;let[i]=r;if("object"==typeof i&&null!==i&&!(t&&t.match&&t.match(g))){let n=Object.assign({},this.defaultMeta,i,{[o]:e,[a]:r,level:e,message:t});return i.message&&(n.message=`${n.message} ${i.message}`),i.stack&&(n.stack=i.stack),i.cause&&(n.cause=i.cause),this.write(n),this}return this.write(Object.assign({},this.defaultMeta,{[o]:e,[a]:r,level:e,message:t})),this}_transform(e,t,r){if(this.silent)return r();e[o]||(e[o]=e.level),this.levels[e[o]]||0===this.levels[e[o]]||console.error("[winston] Unknown logger level: %s",e[o]),this._readableState.pipes||console.error("[winston] Attempt to write logs with no transports, which can increase memory usage: %j",e);try{this.push(this.format.transform(e,this.format.options))}finally{this._writableState.sync=!1,r()}}_final(e){s(this.transports.slice(),(e,t)=>{if(!e||e.finished)return setImmediate(t);e.once("finish",t),e.end()},e)}add(e){let t=!l(e)||e.log.length>2?new c({transport:e}):e;if(!t._writableState||!t._writableState.objectMode)throw Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",t),this._onEvent("warn",t),this.pipe(t),e.handleExceptions&&this.exceptions.handle(),e.handleRejections&&this.rejections.handle(),this}remove(e){if(!e)return this;let t=e;return(!l(e)||e.log.length>2)&&(t=this.transports.filter(t=>t.transport===e)[0]),t&&this.unpipe(t),this}clear(){return this.unpipe(),this}close(){return this.exceptions.unhandle(),this.rejections.unhandle(),this.clear(),this.emit("close"),this}setLevels(){d.deprecated("setLevels")}query(e,t){"function"==typeof e&&(t=e,e={});let r={},i=Object.assign({},(e=e||{}).query||{});function n(t,r){e.query&&"function"==typeof t.formatQuery&&(e.query=t.formatQuery(i)),t.query(e,(i,n)=>{if(i)return r(i);"function"==typeof t.formatResults&&(n=t.formatResults(n,e.format)),r(null,n)})}function o(e,t){n(e,(i,n)=>{t&&((n=i||n)&&(r[e.name]=n),t()),t=null})}s(this.transports.filter(e=>!!e.query),o,()=>t(null,r))}stream(e={}){let t=new i,r=[];return t._streams=r,t.destroy=()=>{let e=r.length;for(;e--;)r[e].destroy()},this.transports.filter(e=>!!e.stream).forEach(i=>{let n=i.stream(e);n&&(r.push(n),n.on("log",e=>{e.transport=e.transport||[],e.transport.push(i.name),t.emit("log",e)}),n.on("error",e=>{e.transport=e.transport||[],e.transport.push(i.name),t.emit("error",e)}))}),t}startTimer(){return new f(this)}profile(e,...t){let r=Date.now();if(this.profilers[e]){let i=this.profilers[e];delete this.profilers[e],"function"==typeof t[t.length-2]&&(console.warn("Callback function no longer supported as of winston@3.0.0"),t.pop());let n="object"==typeof t[t.length-1]?t.pop():{};return n.level=n.level||"info",n.durationMs=r-i,n.message=n.message||e,this.write(n)}return this.profilers[e]=r,this}handleExceptions(...e){console.warn("Deprecated: .handleExceptions() will be removed in winston@4. Use .exceptions.handle()"),this.exceptions.handle(...e)}unhandleExceptions(...e){console.warn("Deprecated: .unhandleExceptions() will be removed in winston@4. Use .exceptions.unhandle()"),this.exceptions.unhandle(...e)}cli(){throw Error("Logger.cli() was removed in winston@3.0.0\nUse a custom winston.formats.cli() instead.\nSee: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md")}_onEvent(e,t){function r(r){"error"!==e||this.transports.includes(t)||this.add(t),this.emit(e,r,t)}t["__winston"+e]||(t["__winston"+e]=r.bind(this),t.on(e,t["__winston"+e]))}_addDefaultMeta(e){this.defaultMeta&&Object.assign(e,this.defaultMeta)}}function b(e,t){let r=e[t];return r||0===r?r:null}Object.defineProperty(m.prototype,"transports",{configurable:!1,enumerable:!0,get(){let{pipes:e}=this._readableState;return Array.isArray(e)?e:[e].filter(Boolean)}}),e.exports=m},3659:(e,t,r)=>{"use strict";class i{constructor(e){let t=r(1190);if("object"!=typeof e||Array.isArray(e)||!(e instanceof t))throw Error("Logger is required for profiling");this.logger=e,this.start=Date.now()}done(...e){"function"==typeof e[e.length-1]&&(console.warn("Callback function no longer supported as of winston@3.0.0"),e.pop());let t="object"==typeof e[e.length-1]?e.pop():{};return t.level=t.level||"info",t.durationMs=Date.now()-this.start,this.logger.write(t)}}e.exports=i},3930:(e,t,r)=>{"use strict";let i=r(1820),n=r(3529),s=r(1298)("winston:rejection"),o=r(3927),a=r(9312),l=r(3448);e.exports=class{constructor(e){if(!e)throw Error("Logger is required to handle rejections");this.logger=e,this.handlers=new Map}handle(...e){e.forEach(e=>{if(Array.isArray(e))return e.forEach(e=>this._addHandler(e));this._addHandler(e)}),this.catcher||(this.catcher=this._unhandledRejection.bind(this),process.on("unhandledRejection",this.catcher))}unhandle(){this.catcher&&(process.removeListener("unhandledRejection",this.catcher),this.catcher=!1,Array.from(this.handlers.values()).forEach(e=>this.logger.unpipe(e)))}getAllInfo(e){let t=null;return e&&(t="string"==typeof e?e:e.message),{error:e,level:"error",message:[`unhandledRejection: ${t||"(no error message)"}`,e&&e.stack||" No stack trace"].join("\n"),stack:e&&e.stack,rejection:!0,date:new Date().toString(),process:this.getProcessInfo(),os:this.getOsInfo(),trace:this.getTrace(e)}}getProcessInfo(){return{pid:process.pid,uid:process.getuid?process.getuid():null,gid:process.getgid?process.getgid():null,cwd:process.cwd(),execPath:process.execPath,version:process.version,argv:process.argv,memoryUsage:process.memoryUsage()}}getOsInfo(){return{loadavg:i.loadavg(),uptime:i.uptime()}}getTrace(e){return(e?a.parse(e):a.get()).map(e=>({column:e.getColumnNumber(),file:e.getFileName(),function:e.getFunctionName(),line:e.getLineNumber(),method:e.getMethodName(),native:e.isNative()}))}_addHandler(e){if(!this.handlers.has(e)){e.handleRejections=!0;let t=new l(e);this.handlers.set(e,t),this.logger.pipe(t)}}_unhandledRejection(e){let t;let r=this.getAllInfo(e),i=this._getRejectionHandlers(),a="function"==typeof this.logger.exitOnError?this.logger.exitOnError(e):this.logger.exitOnError;function l(){s("doExit",a),s("process._exiting",process._exiting),a&&!process._exiting&&(t&&clearTimeout(t),process.exit(1))}if(!i.length&&a&&(console.warn("winston: exitOnError cannot be true with no rejection handlers."),console.warn("winston: not exiting process."),a=!1),!i||0===i.length)return process.nextTick(l);n(i,(e,t)=>{let r=o(t),i=e.transport||e;function n(e){return()=>{s(e),r()}}i._ending=!0,i.once("finish",n("finished")),i.once("error",n("error"))},()=>a&&l()),this.logger.log(r),a&&(t=setTimeout(l,3e3))}_getRejectionHandlers(){return this.logger.transports.filter(e=>(e.transport||e).handleRejections)}}},3448:(e,t,r)=>{"use strict";let{Writable:i}=r(2826);e.exports=class extends i{constructor(e){if(super({objectMode:!0}),!e)throw Error("RejectionStream requires a TransportStream instance.");this.handleRejections=!0,this.transport=e}_write(e,t,r){return e.rejection?this.transport.log(e,r):(r(),!0)}}},7539:(e,t,r)=>{"use strict";let i=r(9021),{StringDecoder:n}=r(1204),{Stream:s}=r(2826);function o(){}e.exports=(e,t)=>{let r=Buffer.alloc(65536),a=new n("utf8"),l=new s,u="",h=0,c=0;return(-1===e.start&&delete e.start,l.readable=!0,l.destroy=()=>{l.destroyed=!0,l.emit("end"),l.emit("close")},i.open(e.file,"a+","0644",(n,s)=>{if(n){t?t(n):l.emit("error",n),l.destroy();return}!function n(){if(l.destroyed){i.close(s,o);return}return i.read(s,r,0,r.length,h,(i,s)=>{if(i){t?t(i):l.emit("error",i),l.destroy();return}if(!s)return u&&((null==e.start||c>e.start)&&(t?t(null,u):l.emit("line",u)),c++,u=""),setTimeout(n,1e3);let o=a.write(r.slice(0,s));t||l.emit("data",o);let f=(o=(u+o).split(/\n+/)).length-1,d=0;for(;d<f;d++)(null==e.start||c>e.start)&&(t?t(null,o[d]):l.emit("line",o[d])),c++;return u=o[f],h+=s,n()})}()}),t)?l.destroy:l}},6718:(e,t,r)=>{"use strict";let i=r(1820),{LEVEL:n,MESSAGE:s}=r(2239),o=r(9747);e.exports=class extends o{constructor(e={}){super(e),this.name=e.name||"console",this.stderrLevels=this._stringArrayToSet(e.stderrLevels),this.consoleWarnLevels=this._stringArrayToSet(e.consoleWarnLevels),this.eol="string"==typeof e.eol?e.eol:i.EOL,this.forceConsole=e.forceConsole||!1,this._consoleLog=console.log.bind(console),this._consoleWarn=console.warn.bind(console),this._consoleError=console.error.bind(console),this.setMaxListeners(30)}log(e,t){if(setImmediate(()=>this.emit("logged",e)),this.stderrLevels[e[n]]){console._stderr&&!this.forceConsole?console._stderr.write(`${e[s]}${this.eol}`):this._consoleError(e[s]),t&&t();return}if(this.consoleWarnLevels[e[n]]){console._stderr&&!this.forceConsole?console._stderr.write(`${e[s]}${this.eol}`):this._consoleWarn(e[s]),t&&t();return}console._stdout&&!this.forceConsole?console._stdout.write(`${e[s]}${this.eol}`):this._consoleLog(e[s]),t&&t()}_stringArrayToSet(e,t){if(!e)return{};if(t=t||"Cannot make set from type other than Array of string elements",!Array.isArray(e))throw Error(t);return e.reduce((e,r)=>{if("string"!=typeof r)throw Error(t);return e[r]=!0,e},{})}}},2089:(e,t,r)=>{"use strict";let i=r(9021),n=r(3873),s=r(3258),o=r(4075),{MESSAGE:a}=r(2239),{Stream:l,PassThrough:u}=r(2826),h=r(9747),c=r(1298)("winston:file"),f=r(1820),d=r(7539);e.exports=class extends h{constructor(e={}){function t(r,...i){i.slice(1).forEach(t=>{if(e[t])throw Error(`Cannot set ${t} and ${r} together`)})}if(super(e),this.name=e.name||"file",this._stream=new u,this._stream.setMaxListeners(30),this._onError=this._onError.bind(this),e.filename||e.dirname)t("filename or dirname","stream"),this._basename=this.filename=e.filename?n.basename(e.filename):"winston.log",this.dirname=e.dirname||n.dirname(e.filename),this.options=e.options||{flags:"a"};else if(e.stream)console.warn("options.stream will be removed in winston@4. Use winston.transports.Stream"),t("stream","filename","maxsize"),this._dest=this._stream.pipe(this._setupStream(e.stream)),this.dirname=n.dirname(this._dest.path);else throw Error("Cannot log to file without filename or stream.");this.maxsize=e.maxsize||null,this.rotationFormat=e.rotationFormat||!1,this.zippedArchive=e.zippedArchive||!1,this.maxFiles=e.maxFiles||null,this.eol="string"==typeof e.eol?e.eol:f.EOL,this.tailable=e.tailable||!1,this.lazy=e.lazy||!1,this._size=0,this._pendingSize=0,this._created=0,this._drain=!1,this._opening=!1,this._ending=!1,this._fileExist=!1,this.dirname&&this._createLogDirIfNotExist(this.dirname),this.lazy||this.open()}finishIfEnding(){this._ending&&(this._opening?this.once("open",()=>{this._stream.once("finish",()=>this.emit("finish")),setImmediate(()=>this._stream.end())}):(this._stream.once("finish",()=>this.emit("finish")),setImmediate(()=>this._stream.end())))}log(e,t=()=>{}){if(this.silent)return t(),!0;if(this._drain){this._stream.once("drain",()=>{this._drain=!1,this.log(e,t)});return}if(this._rotate){this._stream.once("rotate",()=>{this._rotate=!1,this.log(e,t)});return}if(this.lazy){if(!this._fileExist){this._opening||this.open(),this.once("open",()=>{this._fileExist=!0,this.log(e,t)});return}if(this._needsNewFile(this._pendingSize)){this._dest.once("close",()=>{this._opening||this.open(),this.once("open",()=>{this.log(e,t)})});return}}let r=`${e[a]}${this.eol}`,i=Buffer.byteLength(r);function n(){if(this._size+=i,this._pendingSize-=i,c("logged %s %s",this._size,r),this.emit("logged",e),!this._rotate&&!this._opening&&this._needsNewFile()){if(this.lazy){this._endStream(()=>{this.emit("fileclosed")});return}this._rotate=!0,this._endStream(()=>this._rotateFile())}}this._pendingSize+=i,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);let s=this._stream.write(r,n.bind(this));return s?t():(this._drain=!0,this._stream.once("drain",()=>{this._drain=!1,t()})),c("written",s,this._drain),this.finishIfEnding(),s}query(e,t){"function"==typeof e&&(t=e,e={}),e=f(e);let r=n.join(this.dirname,this.filename),s="",o=[],a=0,l=i.createReadStream(r,{encoding:"utf8"});function u(e,t){try{let t=JSON.parse(e);c(t)&&h(t)}catch(e){t||l.emit("error",e)}}function h(t){if(e.rows&&o.length>=e.rows&&"desc"!==e.order){l.readable&&l.destroy();return}e.fields&&(t=e.fields.reduce((e,r)=>(e[r]=t[r],e),{})),"desc"===e.order&&o.length>=e.rows&&o.shift(),o.push(t)}function c(t){if(!t||"object"!=typeof t)return;let r=new Date(t.timestamp);if((!e.from||!(r<e.from))&&(!e.until||!(r>e.until))&&(!e.level||e.level===t.level))return!0}function f(e){return(e=e||{}).rows=e.rows||e.limit||10,e.start=e.start||0,e.until=e.until||new Date,"object"!=typeof e.until&&(e.until=new Date(e.until)),e.from=e.from||e.until-864e5,"object"!=typeof e.from&&(e.from=new Date(e.from)),e.order=e.order||"desc",e}l.on("error",e=>{if(l.readable&&l.destroy(),t)return"ENOENT"!==e.code?t(e):t(null,o)}),l.on("data",t=>{let r=(t=(s+t).split(/\n+/)).length-1,i=0;for(;i<r;i++)(!e.start||a>=e.start)&&u(t[i]),a++;s=t[r]}),l.on("close",()=>{s&&u(s,!0),"desc"===e.order&&(o=o.reverse()),t&&t(null,o)})}stream(e={}){let t=n.join(this.dirname,this.filename),r=new l,i={file:t,start:e.start};return r.destroy=d(i,(e,t)=>{if(e)return r.emit("error",e);try{r.emit("data",t),t=JSON.parse(t),r.emit("log",t)}catch(e){r.emit("error",e)}}),r}open(){this.filename&&(this._opening||(this._opening=!0,this.stat((e,t)=>{if(e)return this.emit("error",e);c("stat done: %s { size: %s }",this.filename,t),this._size=t,this._dest=this._createStream(this._stream),this._opening=!1,this.once("open",()=>{this._stream.emit("rotate")||(this._rotate=!1)})})))}stat(e){let t=this._getFile(),r=n.join(this.dirname,t);i.stat(r,(i,n)=>i&&"ENOENT"===i.code?(c("ENOENT\xa0ok",r),this.filename=t,e(null,0)):i?(c(`err ${i.code} ${r}`),e(i)):!n||this._needsNewFile(n.size)?this._incFile(()=>this.stat(e)):void(this.filename=t,e(null,n.size)))}close(e){this._stream&&this._stream.end(()=>{e&&e(),this.emit("flush"),this.emit("closed")})}_needsNewFile(e){return e=e||this._size,this.maxsize&&e>=this.maxsize}_onError(e){this.emit("error",e)}_setupStream(e){return e.on("error",this._onError),e}_cleanupStream(e){return e.removeListener("error",this._onError),e.destroy(),e}_rotateFile(){this._incFile(()=>this.open())}_endStream(e=()=>{}){this._dest?(this._stream.unpipe(this._dest),this._dest.end(()=>{this._cleanupStream(this._dest),e()})):e()}_createStream(e){let t=n.join(this.dirname,this.filename);c("create stream start",t,this.options);let r=i.createWriteStream(t,this.options).on("error",e=>c(e)).on("close",()=>c("close",r.path,r.bytesWritten)).on("open",()=>{c("file open ok",t),this.emit("open",t),e.pipe(r),this.rotatedWhileOpening&&(this._stream=new u,this._stream.setMaxListeners(30),this._rotateFile(),this.rotatedWhileOpening=!1,this._cleanupStream(r),e.end())});return c("create stream ok",t),r}_incFile(e){c("_incFile",this.filename);let t=n.extname(this._basename),r=n.basename(this._basename,t),i=[];this.zippedArchive&&i.push((function(e){let i=this._created>0&&!this.tailable?this._created:"";this._compressFile(n.join(this.dirname,`${r}${i}${t}`),n.join(this.dirname,`${r}${i}${t}.gz`),e)}).bind(this)),i.push((function(e){this.tailable?this._checkMaxFilesTailable(t,r,e):(this._created+=1,this._checkMaxFilesIncrementing(t,r,e))}).bind(this)),s(i,e)}_getFile(){let e=n.extname(this._basename),t=n.basename(this._basename,e),r=this.rotationFormat?this.rotationFormat():this._created;return!this.tailable&&this._created?`${t}${r}${e}`:`${t}${e}`}_checkMaxFilesIncrementing(e,t,r){if(!this.maxFiles||this._created<this.maxFiles)return setImmediate(r);let s=this._created-this.maxFiles,o=0!==s?s:"",a=this.zippedArchive?".gz":"",l=`${t}${o}${e}${a}`,u=n.join(this.dirname,l);i.unlink(u,r)}_checkMaxFilesTailable(e,t,r){let o=[];if(!this.maxFiles)return;let a=this.zippedArchive?".gz":"";for(let r=this.maxFiles-1;r>1;r--)o.push((function(r,s){let o=`${t}${r-1}${e}${a}`,l=n.join(this.dirname,o);i.exists(l,u=>{if(!u)return s(null);o=`${t}${r}${e}${a}`,i.rename(l,n.join(this.dirname,o),s)})}).bind(this,r));s(o,()=>{i.rename(n.join(this.dirname,`${t}${e}${a}`),n.join(this.dirname,`${t}1${e}${a}`),r)})}_compressFile(e,t,r){i.access(e,i.F_OK,n=>{if(n)return r();var s=o.createGzip(),a=i.createReadStream(e),l=i.createWriteStream(t);l.on("finish",()=>{i.unlink(e,r)}),a.pipe(s).pipe(l)})}_createLogDirIfNotExist(e){i.existsSync(e)||i.mkdirSync(e,{recursive:!0})}}},5307:(e,t,r)=>{"use strict";let i=r(1630),n=r(5591),{Stream:s}=r(2826),o=r(9747),{configure:a}=r(900);e.exports=class extends o{constructor(e={}){super(e),this.options=e,this.name=e.name||"http",this.ssl=!!e.ssl,this.host=e.host||"localhost",this.port=e.port,this.auth=e.auth,this.path=e.path||"",this.maximumDepth=e.maximumDepth,this.agent=e.agent,this.headers=e.headers||{},this.headers["content-type"]="application/json",this.batch=e.batch||!1,this.batchInterval=e.batchInterval||5e3,this.batchCount=e.batchCount||10,this.batchOptions=[],this.batchTimeoutID=-1,this.batchCallback={},this.port||(this.port=this.ssl?443:80)}log(e,t){this._request(e,null,null,(t,r)=>{r&&200!==r.statusCode&&(t=Error(`Invalid HTTP Status Code: ${r.statusCode}`)),t?this.emit("warn",t):this.emit("logged",e)}),t&&setImmediate(t)}query(e,t){"function"==typeof e&&(t=e,e={});let r=(e={method:"query",params:this.normalizeQuery(e)}).params.auth||null;delete e.params.auth;let i=e.params.path||null;delete e.params.path,this._request(e,r,i,(e,r,i)=>{if(r&&200!==r.statusCode&&(e=Error(`Invalid HTTP Status Code: ${r.statusCode}`)),e)return t(e);if("string"==typeof i)try{i=JSON.parse(i)}catch(e){return t(e)}t(null,i)})}stream(e={}){let t=new s,r=(e={method:"stream",params:e}).params.path||null;delete e.params.path;let i=e.params.auth||null;delete e.params.auth;let n="",o=this._request(e,i,r);return t.destroy=()=>o.destroy(),o.on("data",e=>{let r=(e=(n+e).split(/\n+/)).length-1,i=0;for(;i<r;i++)try{t.emit("log",JSON.parse(e[i]))}catch(e){t.emit("error",e)}n=e[r]}),o.on("error",e=>t.emit("error",e)),t}_request(e,t,r,i){e=e||{},t=t||this.auth,r=r||this.path||"",this.batch?this._doBatch(e,i,t,r):this._doRequest(e,i,t,r)}_doBatch(e,t,r,i){if(this.batchOptions.push(e),1===this.batchOptions.length){let e=this;this.batchCallback=t,this.batchTimeoutID=setTimeout(function(){e.batchTimeoutID=-1,e._doBatchRequest(e.batchCallback,r,i)},this.batchInterval)}this.batchOptions.length===this.batchCount&&this._doBatchRequest(this.batchCallback,r,i)}_doBatchRequest(e,t,r){this.batchTimeoutID>0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);let i=this.batchOptions.slice();this.batchOptions=[],this._doRequest(i,e,t,r)}_doRequest(e,t,r,s){let o=Object.assign({},this.headers);r&&r.bearer&&(o.Authorization=`Bearer ${r.bearer}`);let l=(this.ssl?n:i).request({...this.options,method:"POST",host:this.host,port:this.port,path:`/${s.replace(/^\//,"")}`,headers:o,auth:r&&r.username&&r.password?`${r.username}:${r.password}`:"",agent:this.agent});l.on("error",t),l.on("response",e=>e.on("end",()=>t(null,e)).resume());let u=a({...this.maximumDepth&&{maximumDepth:this.maximumDepth}});l.end(Buffer.from(u(e,this.options.replacer),"utf8"))}}},4279:(e,t,r)=>{"use strict";Object.defineProperty(t,"Console",{configurable:!0,enumerable:!0,get:()=>r(6718)}),Object.defineProperty(t,"File",{configurable:!0,enumerable:!0,get:()=>r(2089)}),Object.defineProperty(t,"Http",{configurable:!0,enumerable:!0,get:()=>r(5307)}),Object.defineProperty(t,"Stream",{configurable:!0,enumerable:!0,get:()=>r(1171)})},1171:(e,t,r)=>{"use strict";let i=r(6696),{MESSAGE:n}=r(2239),s=r(1820),o=r(9747);e.exports=class extends o{constructor(e={}){if(super(e),!e.stream||!i(e.stream))throw Error("options.stream is required.");this._stream=e.stream,this._stream.setMaxListeners(1/0),this.isObjectMode=e.stream._writableState.objectMode,this.eol="string"==typeof e.eol?e.eol:s.EOL}log(e,t){if(setImmediate(()=>this.emit("logged",e)),this.isObjectMode){this._stream.write(e),t&&t();return}this._stream.write(`${e[n]}${this.eol}`),t&&t()}}},3149:(e,t,r)=>{"use strict";r.d(t,{dJ:()=>_});var i=r(4379),n=r(1708),s=r(643),o=r(3136);class a{value;next;constructor(e){this.value=e}}class l{#e;#t;#r;constructor(){this.clear()}enqueue(e){let t=new a(e);this.#e?this.#t.next=t:this.#e=t,this.#t=t,this.#r++}dequeue(){let e=this.#e;if(e)return this.#e=this.#e.next,this.#r--,e.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#r=0}get size(){return this.#r}*[Symbol.iterator](){let e=this.#e;for(;e;)yield e.value,e=e.next}}function u(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw TypeError("Expected `concurrency` to be a number from 1 and up");let t=new l,r=0,i=()=>{r--,t.size>0&&t.dequeue()()},n=async(e,t,n)=>{r++;let s=(async()=>e(...n))();t(s);try{await s}catch{}i()},s=(i,s,o)=>{t.enqueue(n.bind(void 0,i,s,o)),(async()=>{await Promise.resolve(),r<e&&t.size>0&&t.dequeue()()})()},o=(e,...t)=>new Promise(r=>{s(e,r,t)});return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),o}class h extends Error{constructor(e){super(),this.value=e}}let c=async(e,t)=>t(await e),f=async e=>{let t=await Promise.all(e);if(!0===t[1])throw new h(t[0]);return!1};async function d(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:i=!0}={}){let n=u(r),s=[...e].map(e=>[e,n(c,e,t)]),o=u(i?1:Number.POSITIVE_INFINITY);try{await Promise.all(s.map(e=>o(f,e)))}catch(e){if(e instanceof h)return e.value;throw e}}let p={directory:"isDirectory",file:"isFile"};function g(e){if(!Object.hasOwnProperty.call(p,e))throw Error(`Invalid type specified: ${e}`)}let m=(e,t)=>t[p[e]](),b=e=>e instanceof URL?(0,o.fileURLToPath)(e):e;async function w(e,{cwd:t=n.cwd(),type:r="file",allowSymlinks:o=!0,concurrency:a,preserveOrder:l}={}){g(r),t=b(t);let u=o?s.promises.stat:s.promises.lstat;return d(e,async e=>{try{let n=await u(i.resolve(t,e));return m(r,n)}catch{return!1}},{concurrency:a,preserveOrder:l})}function y(e){return e instanceof URL?(0,o.fileURLToPath)(e):e}let v=Symbol("findUpStop");async function x(e,t={}){let r=i.resolve(y(t.cwd)??""),{root:n}=i.parse(r),s=i.resolve(r,y(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,a=[e].flat(),l=async t=>{if("function"!=typeof e)return w(a,t);let r=await e(t.cwd);return"string"==typeof r?w([r],t):r},u=[];for(;;){let e=await l({...t,cwd:r});if(e===v||(e&&u.push(i.resolve(r,e)),r===s||u.length>=o))break;r=i.dirname(r)}return u}async function _(e,t={}){return(await x(e,{...t,limit:1}))[0]}},6789:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});let i=Symbol("singleComment"),n=Symbol("multiComment"),s=()=>"",o=(e,t,r)=>e.slice(t,r).replace(/\S/g," "),a=(e,t)=>{let r=t-1,i=0;for(;"\\"===e[r];)r-=1,i+=1;return!!(i%2)};function l(e,{whitespace:t=!0,trailingCommas:r=!1}={}){if("string"!=typeof e)throw TypeError(`Expected argument \`jsonString\` to be a \`string\`, got \`${typeof e}\``);let u=t?o:s,h=!1,c=!1,f=0,d="",p="",g=-1;for(let t=0;t<e.length;t++){let s=e[t],o=e[t+1];if(c||'"'!==s||a(e,t)||(h=!h),!h){if(c||s+o!=="//"){if(c===i&&s+o==="\r\n"){c=!1,d+=u(e,f,++t),f=t;continue}if(c===i&&"\n"===s)c=!1,d+=u(e,f,t),f=t;else if(c||s+o!=="/*"){if(c===n&&s+o==="*/"){c=!1,d+=u(e,f,++t+1),f=t+1;continue}r&&!c&&(-1!==g?"}"===s||"]"===s?(d+=e.slice(f,t),p+=u(d,0,1)+d.slice(1),d="",f=t,g=-1):" "!==s&&" "!==s&&"\r"!==s&&"\n"!==s&&(d+=e.slice(f,t),f=t,g=-1):","===s&&(p+=d+e.slice(f,t),d="",f=t,g=t))}else{d+=e.slice(f,t),f=t,c=n,t++;continue}}else d+=e.slice(f,t),f=t,c=i,t++}}return p+d+(c?u(e.slice(f)):e.slice(f))}},5040:e=>{"use strict";e.exports={version:"3.17.0"}}};
23
+ - Upgrade docs: https://github.com/winstonjs/winston/blob/master/UPGRADE-3.0.md`)},o.prototype.close=function(){this.transport.close&&this.transport.close(),this.transport.__winstonError&&(this.transport.removeListener("error",this.transport.__winstonError),this.transport.__winstonError=null)}},3744:(e,t,r)=>{"use strict";let i=r(8354),n=r(6324),{LEVEL:s}=r(2239),o=e.exports=function(e={}){n.call(this,{objectMode:!0,highWaterMark:e.highWaterMark}),this.format=e.format,this.level=e.level,this.handleExceptions=e.handleExceptions,this.handleRejections=e.handleRejections,this.silent=e.silent,e.log&&(this.log=e.log),e.logv&&(this.logv=e.logv),e.close&&(this.close=e.close),this.once("pipe",e=>{this.levels=e.levels,this.parent=e}),this.once("unpipe",e=>{e===this.parent&&(this.parent=null,this.close&&this.close())})};i.inherits(o,n),o.prototype._write=function(e,t,r){if(this.silent||!0===e.exception&&!this.handleExceptions)return r(null);let i=this.level||this.parent&&this.parent.level;if(!i||this.levels[i]>=this.levels[e[s]]){let t,i;if(e&&!this.format)return this.log(e,r);try{i=this.format.transform(Object.assign({},e),this.format.options)}catch(e){t=e}if(t||!i){if(r(),t)throw t;return}return this.log(i,r)}return this._writableState.sync=!1,r(null)},o.prototype._writev=function(e,t){if(this.logv){let r=e.filter(this._accept,this);return r.length?this.logv(r,t):t(null)}for(let r=0;r<e.length;r++){let i,n;if(this._accept(e[r])){if(e[r].chunk&&!this.format){this.log(e[r].chunk,e[r].callback);continue}try{n=this.format.transform(Object.assign({},e[r].chunk),this.format.options)}catch(e){i=e}if(i||!n){if(e[r].callback(),i)throw t(null),i}else this.log(n,e[r].callback)}}return t(null)},o.prototype._accept=function(e){let t=e.chunk;if(this.silent)return!1;let r=this.level||this.parent&&this.parent.level;return(!0===t.exception||!r||this.levels[r]>=this.levels[t[s]])&&(!!this.handleExceptions||!0!==t.exception)},o.prototype._nop=function(){}},6399:(e,t,r)=>{"use strict";let i=r(51),{warn:n}=r(3563);t.version=r(5040).version,t.transports=r(4279),t.config=r(5211),t.addColors=i.levels,t.format=i.format,t.createLogger=r(6747),t.Logger=r(1190),t.ExceptionHandler=r(608),t.RejectionHandler=r(3930),t.Container=r(6735),t.Transport=r(9747),t.loggers=new t.Container;let s=t.createLogger();Object.keys(t.config.npm.levels).concat(["log","query","stream","add","remove","clear","profile","startTimer","handleExceptions","unhandleExceptions","handleRejections","unhandleRejections","configure","child"]).forEach(e=>t[e]=(...t)=>s[e](...t)),Object.defineProperty(t,"level",{get:()=>s.level,set(e){s.level=e}}),Object.defineProperty(t,"exceptions",{get:()=>s.exceptions}),Object.defineProperty(t,"rejections",{get:()=>s.rejections}),["exitOnError"].forEach(e=>{Object.defineProperty(t,e,{get:()=>s[e],set(t){s[e]=t}})}),Object.defineProperty(t,"default",{get:()=>({exceptionHandlers:s.exceptionHandlers,rejectionHandlers:s.rejectionHandlers,transports:s.transports})}),n.deprecated(t,"setLevels"),n.forFunctions(t,"useFormat",["cli"]),n.forProperties(t,"useFormat",["padLevels","stripColors"]),n.forFunctions(t,"deprecated",["addRewriter","addFilter","clone","extend"]),n.forProperties(t,"deprecated",["emitErrs","levelLength"])},3563:(e,t,r)=>{"use strict";let{format:i}=r(8354);t.warn={deprecated:e=>()=>{throw Error(i("{ %s } was removed in winston@3.0.0.",e))},useFormat:e=>()=>{throw Error([i("{ %s } was removed in winston@3.0.0.",e),"Use a custom winston.format = winston.format(function) instead."].join("\n"))},forFunctions(e,r,i){i.forEach(i=>{e[i]=t.warn[r](i)})},forProperties(e,r,i){i.forEach(i=>{let n=t.warn[r](i);Object.defineProperty(e,i,{get:n,set:n})})}}},5211:(e,t,r)=>{"use strict";let i=r(51),{configs:n}=r(2239);t.cli=i.levels(n.cli),t.npm=i.levels(n.npm),t.syslog=i.levels(n.syslog),t.addColors=i.levels},6735:(e,t,r)=>{"use strict";let i=r(6747);e.exports=class{constructor(e={}){this.loggers=new Map,this.options=e}add(e,t){if(!this.loggers.has(e)){let r=(t=Object.assign({},t||this.options)).transports||this.options.transports;r?t.transports=Array.isArray(r)?r.slice():[r]:t.transports=[];let n=i(t);n.on("close",()=>this._delete(e)),this.loggers.set(e,n)}return this.loggers.get(e)}get(e,t){return this.add(e,t)}has(e){return!!this.loggers.has(e)}close(e){if(e)return this._removeLogger(e);this.loggers.forEach((e,t)=>this._removeLogger(t))}_removeLogger(e){this.loggers.has(e)&&(this.loggers.get(e).close(),this._delete(e))}_delete(e){this.loggers.delete(e)}}},6747:(e,t,r)=>{"use strict";let{LEVEL:i}=r(2239),n=r(5211),s=r(1190),o=r(1298)("winston:create-logger");function a(e){return"is"+e.charAt(0).toUpperCase()+e.slice(1)+"Enabled"}e.exports=function(e={}){e.levels=e.levels||n.npm.levels;class t extends s{constructor(e){super(e)}}let r=new t(e);return Object.keys(e.levels).forEach(function(e){if(o('Define prototype method for "%s"',e),"log"===e){console.warn('Level "log" not defined: conflicts with the method "log". Use a different level name.');return}t.prototype[e]=function(...t){let n=this||r;if(1===t.length){let[s]=t,o=s&&s.message&&s||{message:s};return o.level=o[i]=e,n._addDefaultMeta(o),n.write(o),this||r}return 0===t.length?(n.log(e,""),n):n.log(e,...t)},t.prototype[a(e)]=function(){return(this||r).isLevelEnabled(e)}}),r}},608:(e,t,r)=>{"use strict";let i=r(1820),n=r(3529),s=r(1298)("winston:exception"),o=r(3927),a=r(9312),l=r(5002);e.exports=class{constructor(e){if(!e)throw Error("Logger is required to handle exceptions");this.logger=e,this.handlers=new Map}handle(...e){e.forEach(e=>{if(Array.isArray(e))return e.forEach(e=>this._addHandler(e));this._addHandler(e)}),this.catcher||(this.catcher=this._uncaughtException.bind(this),process.on("uncaughtException",this.catcher))}unhandle(){this.catcher&&(process.removeListener("uncaughtException",this.catcher),this.catcher=!1,Array.from(this.handlers.values()).forEach(e=>this.logger.unpipe(e)))}getAllInfo(e){let t=null;return e&&(t="string"==typeof e?e:e.message),{error:e,level:"error",message:[`uncaughtException: ${t||"(no error message)"}`,e&&e.stack||" No stack trace"].join("\n"),stack:e&&e.stack,exception:!0,date:new Date().toString(),process:this.getProcessInfo(),os:this.getOsInfo(),trace:this.getTrace(e)}}getProcessInfo(){return{pid:process.pid,uid:process.getuid?process.getuid():null,gid:process.getgid?process.getgid():null,cwd:process.cwd(),execPath:process.execPath,version:process.version,argv:process.argv,memoryUsage:process.memoryUsage()}}getOsInfo(){return{loadavg:i.loadavg(),uptime:i.uptime()}}getTrace(e){return(e?a.parse(e):a.get()).map(e=>({column:e.getColumnNumber(),file:e.getFileName(),function:e.getFunctionName(),line:e.getLineNumber(),method:e.getMethodName(),native:e.isNative()}))}_addHandler(e){if(!this.handlers.has(e)){e.handleExceptions=!0;let t=new l(e);this.handlers.set(e,t),this.logger.pipe(t)}}_uncaughtException(e){let t;let r=this.getAllInfo(e),i=this._getExceptionHandlers(),a="function"==typeof this.logger.exitOnError?this.logger.exitOnError(e):this.logger.exitOnError;function l(){s("doExit",a),s("process._exiting",process._exiting),a&&!process._exiting&&(t&&clearTimeout(t),process.exit(1))}if(!i.length&&a&&(console.warn("winston: exitOnError cannot be true with no exception handlers."),console.warn("winston: not exiting process."),a=!1),!i||0===i.length)return process.nextTick(l);n(i,(e,t)=>{let r=o(t),i=e.transport||e;function n(e){return()=>{s(e),r()}}i._ending=!0,i.once("finish",n("finished")),i.once("error",n("error"))},()=>a&&l()),this.logger.log(r),a&&(t=setTimeout(l,3e3))}_getExceptionHandlers(){return this.logger.transports.filter(e=>(e.transport||e).handleExceptions)}}},5002:(e,t,r)=>{"use strict";let{Writable:i}=r(2826);e.exports=class extends i{constructor(e){if(super({objectMode:!0}),!e)throw Error("ExceptionStream requires a TransportStream instance.");this.handleExceptions=!0,this.transport=e}_write(e,t,r){return e.exception?this.transport.log(e,r):(r(),!0)}}},1190:(e,t,r)=>{"use strict";let{Stream:i,Transform:n}=r(2826),s=r(3529),{LEVEL:o,SPLAT:a}=r(2239),l=r(6696),u=r(608),h=r(3930),c=r(1352),f=r(3659),{warn:d}=r(3563),p=r(5211),g=/%[scdjifoO%]/g;class m extends n{constructor(e){super({objectMode:!0}),this.configure(e)}child(e){let t=this;return Object.create(t,{write:{value:function(r){let i=Object.assign({},e,r);r instanceof Error&&(i.stack=r.stack,i.message=r.message),t.write(i)}}})}configure({silent:e,format:t,defaultMeta:i,levels:n,level:s="info",exitOnError:o=!0,transports:a,colors:l,emitErrs:c,formatters:f,padLevels:d,rewriters:g,stripColors:m,exceptionHandlers:b,rejectionHandlers:w}={}){if(this.transports.length&&this.clear(),this.silent=e,this.format=t||this.format||r(9161)(),this.defaultMeta=i||null,this.levels=n||this.levels||p.npm.levels,this.level=s,this.exceptions&&this.exceptions.unhandle(),this.rejections&&this.rejections.unhandle(),this.exceptions=new u(this),this.rejections=new h(this),this.profilers={},this.exitOnError=o,a&&(a=Array.isArray(a)?a:[a]).forEach(e=>this.add(e)),l||c||f||d||g||m)throw Error("{ colors, emitErrs, formatters, padLevels, rewriters, stripColors } were removed in winston@3.0.0.\nUse a custom winston.format(function) instead.\nSee: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md");b&&this.exceptions.handle(b),w&&this.rejections.handle(w)}isLevelEnabled(e){let t=b(this.levels,e);if(null===t)return!1;let r=b(this.levels,this.level);return null!==r&&(this.transports&&0!==this.transports.length?-1!==this.transports.findIndex(e=>{let i=b(this.levels,e.level);return null===i&&(i=r),i>=t}):r>=t)}log(e,t,...r){if(1==arguments.length)return e[o]=e.level,this._addDefaultMeta(e),this.write(e),this;if(2==arguments.length)return t&&"object"==typeof t?t[o]=t.level=e:t={[o]:e,level:e,message:t},this._addDefaultMeta(t),this.write(t),this;let[i]=r;if("object"==typeof i&&null!==i&&!(t&&t.match&&t.match(g))){let n=Object.assign({},this.defaultMeta,i,{[o]:e,[a]:r,level:e,message:t});return i.message&&(n.message=`${n.message} ${i.message}`),i.stack&&(n.stack=i.stack),i.cause&&(n.cause=i.cause),this.write(n),this}return this.write(Object.assign({},this.defaultMeta,{[o]:e,[a]:r,level:e,message:t})),this}_transform(e,t,r){if(this.silent)return r();e[o]||(e[o]=e.level),this.levels[e[o]]||0===this.levels[e[o]]||console.error("[winston] Unknown logger level: %s",e[o]),this._readableState.pipes||console.error("[winston] Attempt to write logs with no transports, which can increase memory usage: %j",e);try{this.push(this.format.transform(e,this.format.options))}finally{this._writableState.sync=!1,r()}}_final(e){s(this.transports.slice(),(e,t)=>{if(!e||e.finished)return setImmediate(t);e.once("finish",t),e.end()},e)}add(e){let t=!l(e)||e.log.length>2?new c({transport:e}):e;if(!t._writableState||!t._writableState.objectMode)throw Error("Transports must WritableStreams in objectMode. Set { objectMode: true }.");return this._onEvent("error",t),this._onEvent("warn",t),this.pipe(t),e.handleExceptions&&this.exceptions.handle(),e.handleRejections&&this.rejections.handle(),this}remove(e){if(!e)return this;let t=e;return(!l(e)||e.log.length>2)&&(t=this.transports.filter(t=>t.transport===e)[0]),t&&this.unpipe(t),this}clear(){return this.unpipe(),this}close(){return this.exceptions.unhandle(),this.rejections.unhandle(),this.clear(),this.emit("close"),this}setLevels(){d.deprecated("setLevels")}query(e,t){"function"==typeof e&&(t=e,e={});let r={},i=Object.assign({},(e=e||{}).query||{});function n(t,r){e.query&&"function"==typeof t.formatQuery&&(e.query=t.formatQuery(i)),t.query(e,(i,n)=>{if(i)return r(i);"function"==typeof t.formatResults&&(n=t.formatResults(n,e.format)),r(null,n)})}function o(e,t){n(e,(i,n)=>{t&&((n=i||n)&&(r[e.name]=n),t()),t=null})}s(this.transports.filter(e=>!!e.query),o,()=>t(null,r))}stream(e={}){let t=new i,r=[];return t._streams=r,t.destroy=()=>{let e=r.length;for(;e--;)r[e].destroy()},this.transports.filter(e=>!!e.stream).forEach(i=>{let n=i.stream(e);n&&(r.push(n),n.on("log",e=>{e.transport=e.transport||[],e.transport.push(i.name),t.emit("log",e)}),n.on("error",e=>{e.transport=e.transport||[],e.transport.push(i.name),t.emit("error",e)}))}),t}startTimer(){return new f(this)}profile(e,...t){let r=Date.now();if(this.profilers[e]){let i=this.profilers[e];delete this.profilers[e],"function"==typeof t[t.length-2]&&(console.warn("Callback function no longer supported as of winston@3.0.0"),t.pop());let n="object"==typeof t[t.length-1]?t.pop():{};return n.level=n.level||"info",n.durationMs=r-i,n.message=n.message||e,this.write(n)}return this.profilers[e]=r,this}handleExceptions(...e){console.warn("Deprecated: .handleExceptions() will be removed in winston@4. Use .exceptions.handle()"),this.exceptions.handle(...e)}unhandleExceptions(...e){console.warn("Deprecated: .unhandleExceptions() will be removed in winston@4. Use .exceptions.unhandle()"),this.exceptions.unhandle(...e)}cli(){throw Error("Logger.cli() was removed in winston@3.0.0\nUse a custom winston.formats.cli() instead.\nSee: https://github.com/winstonjs/winston/tree/master/UPGRADE-3.0.md")}_onEvent(e,t){function r(r){"error"!==e||this.transports.includes(t)||this.add(t),this.emit(e,r,t)}t["__winston"+e]||(t["__winston"+e]=r.bind(this),t.on(e,t["__winston"+e]))}_addDefaultMeta(e){this.defaultMeta&&Object.assign(e,this.defaultMeta)}}function b(e,t){let r=e[t];return r||0===r?r:null}Object.defineProperty(m.prototype,"transports",{configurable:!1,enumerable:!0,get(){let{pipes:e}=this._readableState;return Array.isArray(e)?e:[e].filter(Boolean)}}),e.exports=m},3659:(e,t,r)=>{"use strict";class i{constructor(e){let t=r(1190);if("object"!=typeof e||Array.isArray(e)||!(e instanceof t))throw Error("Logger is required for profiling");this.logger=e,this.start=Date.now()}done(...e){"function"==typeof e[e.length-1]&&(console.warn("Callback function no longer supported as of winston@3.0.0"),e.pop());let t="object"==typeof e[e.length-1]?e.pop():{};return t.level=t.level||"info",t.durationMs=Date.now()-this.start,this.logger.write(t)}}e.exports=i},3930:(e,t,r)=>{"use strict";let i=r(1820),n=r(3529),s=r(1298)("winston:rejection"),o=r(3927),a=r(9312),l=r(3448);e.exports=class{constructor(e){if(!e)throw Error("Logger is required to handle rejections");this.logger=e,this.handlers=new Map}handle(...e){e.forEach(e=>{if(Array.isArray(e))return e.forEach(e=>this._addHandler(e));this._addHandler(e)}),this.catcher||(this.catcher=this._unhandledRejection.bind(this),process.on("unhandledRejection",this.catcher))}unhandle(){this.catcher&&(process.removeListener("unhandledRejection",this.catcher),this.catcher=!1,Array.from(this.handlers.values()).forEach(e=>this.logger.unpipe(e)))}getAllInfo(e){let t=null;return e&&(t="string"==typeof e?e:e.message),{error:e,level:"error",message:[`unhandledRejection: ${t||"(no error message)"}`,e&&e.stack||" No stack trace"].join("\n"),stack:e&&e.stack,rejection:!0,date:new Date().toString(),process:this.getProcessInfo(),os:this.getOsInfo(),trace:this.getTrace(e)}}getProcessInfo(){return{pid:process.pid,uid:process.getuid?process.getuid():null,gid:process.getgid?process.getgid():null,cwd:process.cwd(),execPath:process.execPath,version:process.version,argv:process.argv,memoryUsage:process.memoryUsage()}}getOsInfo(){return{loadavg:i.loadavg(),uptime:i.uptime()}}getTrace(e){return(e?a.parse(e):a.get()).map(e=>({column:e.getColumnNumber(),file:e.getFileName(),function:e.getFunctionName(),line:e.getLineNumber(),method:e.getMethodName(),native:e.isNative()}))}_addHandler(e){if(!this.handlers.has(e)){e.handleRejections=!0;let t=new l(e);this.handlers.set(e,t),this.logger.pipe(t)}}_unhandledRejection(e){let t;let r=this.getAllInfo(e),i=this._getRejectionHandlers(),a="function"==typeof this.logger.exitOnError?this.logger.exitOnError(e):this.logger.exitOnError;function l(){s("doExit",a),s("process._exiting",process._exiting),a&&!process._exiting&&(t&&clearTimeout(t),process.exit(1))}if(!i.length&&a&&(console.warn("winston: exitOnError cannot be true with no rejection handlers."),console.warn("winston: not exiting process."),a=!1),!i||0===i.length)return process.nextTick(l);n(i,(e,t)=>{let r=o(t),i=e.transport||e;function n(e){return()=>{s(e),r()}}i._ending=!0,i.once("finish",n("finished")),i.once("error",n("error"))},()=>a&&l()),this.logger.log(r),a&&(t=setTimeout(l,3e3))}_getRejectionHandlers(){return this.logger.transports.filter(e=>(e.transport||e).handleRejections)}}},3448:(e,t,r)=>{"use strict";let{Writable:i}=r(2826);e.exports=class extends i{constructor(e){if(super({objectMode:!0}),!e)throw Error("RejectionStream requires a TransportStream instance.");this.handleRejections=!0,this.transport=e}_write(e,t,r){return e.rejection?this.transport.log(e,r):(r(),!0)}}},7539:(e,t,r)=>{"use strict";let i=r(9021),{StringDecoder:n}=r(1204),{Stream:s}=r(2826);function o(){}e.exports=(e,t)=>{let r=Buffer.alloc(65536),a=new n("utf8"),l=new s,u="",h=0,c=0;return(-1===e.start&&delete e.start,l.readable=!0,l.destroy=()=>{l.destroyed=!0,l.emit("end"),l.emit("close")},i.open(e.file,"a+","0644",(n,s)=>{if(n){t?t(n):l.emit("error",n),l.destroy();return}!function n(){if(l.destroyed){i.close(s,o);return}return i.read(s,r,0,r.length,h,(i,s)=>{if(i){t?t(i):l.emit("error",i),l.destroy();return}if(!s)return u&&((null==e.start||c>e.start)&&(t?t(null,u):l.emit("line",u)),c++,u=""),setTimeout(n,1e3);let o=a.write(r.slice(0,s));t||l.emit("data",o);let f=(o=(u+o).split(/\n+/)).length-1,d=0;for(;d<f;d++)(null==e.start||c>e.start)&&(t?t(null,o[d]):l.emit("line",o[d])),c++;return u=o[f],h+=s,n()})}()}),t)?l.destroy:l}},6718:(e,t,r)=>{"use strict";let i=r(1820),{LEVEL:n,MESSAGE:s}=r(2239),o=r(9747);e.exports=class extends o{constructor(e={}){super(e),this.name=e.name||"console",this.stderrLevels=this._stringArrayToSet(e.stderrLevels),this.consoleWarnLevels=this._stringArrayToSet(e.consoleWarnLevels),this.eol="string"==typeof e.eol?e.eol:i.EOL,this.forceConsole=e.forceConsole||!1,this._consoleLog=console.log.bind(console),this._consoleWarn=console.warn.bind(console),this._consoleError=console.error.bind(console),this.setMaxListeners(30)}log(e,t){if(setImmediate(()=>this.emit("logged",e)),this.stderrLevels[e[n]]){console._stderr&&!this.forceConsole?console._stderr.write(`${e[s]}${this.eol}`):this._consoleError(e[s]),t&&t();return}if(this.consoleWarnLevels[e[n]]){console._stderr&&!this.forceConsole?console._stderr.write(`${e[s]}${this.eol}`):this._consoleWarn(e[s]),t&&t();return}console._stdout&&!this.forceConsole?console._stdout.write(`${e[s]}${this.eol}`):this._consoleLog(e[s]),t&&t()}_stringArrayToSet(e,t){if(!e)return{};if(t=t||"Cannot make set from type other than Array of string elements",!Array.isArray(e))throw Error(t);return e.reduce((e,r)=>{if("string"!=typeof r)throw Error(t);return e[r]=!0,e},{})}}},2089:(e,t,r)=>{"use strict";let i=r(9021),n=r(3873),s=r(3258),o=r(4075),{MESSAGE:a}=r(2239),{Stream:l,PassThrough:u}=r(2826),h=r(9747),c=r(1298)("winston:file"),f=r(1820),d=r(7539);e.exports=class extends h{constructor(e={}){function t(r,...i){i.slice(1).forEach(t=>{if(e[t])throw Error(`Cannot set ${t} and ${r} together`)})}if(super(e),this.name=e.name||"file",this._stream=new u,this._stream.setMaxListeners(30),this._onError=this._onError.bind(this),e.filename||e.dirname)t("filename or dirname","stream"),this._basename=this.filename=e.filename?n.basename(e.filename):"winston.log",this.dirname=e.dirname||n.dirname(e.filename),this.options=e.options||{flags:"a"};else if(e.stream)console.warn("options.stream will be removed in winston@4. Use winston.transports.Stream"),t("stream","filename","maxsize"),this._dest=this._stream.pipe(this._setupStream(e.stream)),this.dirname=n.dirname(this._dest.path);else throw Error("Cannot log to file without filename or stream.");this.maxsize=e.maxsize||null,this.rotationFormat=e.rotationFormat||!1,this.zippedArchive=e.zippedArchive||!1,this.maxFiles=e.maxFiles||null,this.eol="string"==typeof e.eol?e.eol:f.EOL,this.tailable=e.tailable||!1,this.lazy=e.lazy||!1,this._size=0,this._pendingSize=0,this._created=0,this._drain=!1,this._opening=!1,this._ending=!1,this._fileExist=!1,this.dirname&&this._createLogDirIfNotExist(this.dirname),this.lazy||this.open()}finishIfEnding(){this._ending&&(this._opening?this.once("open",()=>{this._stream.once("finish",()=>this.emit("finish")),setImmediate(()=>this._stream.end())}):(this._stream.once("finish",()=>this.emit("finish")),setImmediate(()=>this._stream.end())))}log(e,t=()=>{}){if(this.silent)return t(),!0;if(this._drain){this._stream.once("drain",()=>{this._drain=!1,this.log(e,t)});return}if(this._rotate){this._stream.once("rotate",()=>{this._rotate=!1,this.log(e,t)});return}if(this.lazy){if(!this._fileExist){this._opening||this.open(),this.once("open",()=>{this._fileExist=!0,this.log(e,t)});return}if(this._needsNewFile(this._pendingSize)){this._dest.once("close",()=>{this._opening||this.open(),this.once("open",()=>{this.log(e,t)})});return}}let r=`${e[a]}${this.eol}`,i=Buffer.byteLength(r);function n(){if(this._size+=i,this._pendingSize-=i,c("logged %s %s",this._size,r),this.emit("logged",e),!this._rotate&&!this._opening&&this._needsNewFile()){if(this.lazy){this._endStream(()=>{this.emit("fileclosed")});return}this._rotate=!0,this._endStream(()=>this._rotateFile())}}this._pendingSize+=i,this._opening&&!this.rotatedWhileOpening&&this._needsNewFile(this._size+this._pendingSize)&&(this.rotatedWhileOpening=!0);let s=this._stream.write(r,n.bind(this));return s?t():(this._drain=!0,this._stream.once("drain",()=>{this._drain=!1,t()})),c("written",s,this._drain),this.finishIfEnding(),s}query(e,t){"function"==typeof e&&(t=e,e={}),e=f(e);let r=n.join(this.dirname,this.filename),s="",o=[],a=0,l=i.createReadStream(r,{encoding:"utf8"});function u(e,t){try{let t=JSON.parse(e);c(t)&&h(t)}catch(e){t||l.emit("error",e)}}function h(t){if(e.rows&&o.length>=e.rows&&"desc"!==e.order){l.readable&&l.destroy();return}e.fields&&(t=e.fields.reduce((e,r)=>(e[r]=t[r],e),{})),"desc"===e.order&&o.length>=e.rows&&o.shift(),o.push(t)}function c(t){if(!t||"object"!=typeof t)return;let r=new Date(t.timestamp);if((!e.from||!(r<e.from))&&(!e.until||!(r>e.until))&&(!e.level||e.level===t.level))return!0}function f(e){return(e=e||{}).rows=e.rows||e.limit||10,e.start=e.start||0,e.until=e.until||new Date,"object"!=typeof e.until&&(e.until=new Date(e.until)),e.from=e.from||e.until-864e5,"object"!=typeof e.from&&(e.from=new Date(e.from)),e.order=e.order||"desc",e}l.on("error",e=>{if(l.readable&&l.destroy(),t)return"ENOENT"!==e.code?t(e):t(null,o)}),l.on("data",t=>{let r=(t=(s+t).split(/\n+/)).length-1,i=0;for(;i<r;i++)(!e.start||a>=e.start)&&u(t[i]),a++;s=t[r]}),l.on("close",()=>{s&&u(s,!0),"desc"===e.order&&(o=o.reverse()),t&&t(null,o)})}stream(e={}){let t=n.join(this.dirname,this.filename),r=new l,i={file:t,start:e.start};return r.destroy=d(i,(e,t)=>{if(e)return r.emit("error",e);try{r.emit("data",t),t=JSON.parse(t),r.emit("log",t)}catch(e){r.emit("error",e)}}),r}open(){this.filename&&(this._opening||(this._opening=!0,this.stat((e,t)=>{if(e)return this.emit("error",e);c("stat done: %s { size: %s }",this.filename,t),this._size=t,this._dest=this._createStream(this._stream),this._opening=!1,this.once("open",()=>{this._stream.emit("rotate")||(this._rotate=!1)})})))}stat(e){let t=this._getFile(),r=n.join(this.dirname,t);i.stat(r,(i,n)=>i&&"ENOENT"===i.code?(c("ENOENT\xa0ok",r),this.filename=t,e(null,0)):i?(c(`err ${i.code} ${r}`),e(i)):!n||this._needsNewFile(n.size)?this._incFile(()=>this.stat(e)):void(this.filename=t,e(null,n.size)))}close(e){this._stream&&this._stream.end(()=>{e&&e(),this.emit("flush"),this.emit("closed")})}_needsNewFile(e){return e=e||this._size,this.maxsize&&e>=this.maxsize}_onError(e){this.emit("error",e)}_setupStream(e){return e.on("error",this._onError),e}_cleanupStream(e){return e.removeListener("error",this._onError),e.destroy(),e}_rotateFile(){this._incFile(()=>this.open())}_endStream(e=()=>{}){this._dest?(this._stream.unpipe(this._dest),this._dest.end(()=>{this._cleanupStream(this._dest),e()})):e()}_createStream(e){let t=n.join(this.dirname,this.filename);c("create stream start",t,this.options);let r=i.createWriteStream(t,this.options).on("error",e=>c(e)).on("close",()=>c("close",r.path,r.bytesWritten)).on("open",()=>{c("file open ok",t),this.emit("open",t),e.pipe(r),this.rotatedWhileOpening&&(this._stream=new u,this._stream.setMaxListeners(30),this._rotateFile(),this.rotatedWhileOpening=!1,this._cleanupStream(r),e.end())});return c("create stream ok",t),r}_incFile(e){c("_incFile",this.filename);let t=n.extname(this._basename),r=n.basename(this._basename,t),i=[];this.zippedArchive&&i.push((function(e){let i=this._created>0&&!this.tailable?this._created:"";this._compressFile(n.join(this.dirname,`${r}${i}${t}`),n.join(this.dirname,`${r}${i}${t}.gz`),e)}).bind(this)),i.push((function(e){this.tailable?this._checkMaxFilesTailable(t,r,e):(this._created+=1,this._checkMaxFilesIncrementing(t,r,e))}).bind(this)),s(i,e)}_getFile(){let e=n.extname(this._basename),t=n.basename(this._basename,e),r=this.rotationFormat?this.rotationFormat():this._created;return!this.tailable&&this._created?`${t}${r}${e}`:`${t}${e}`}_checkMaxFilesIncrementing(e,t,r){if(!this.maxFiles||this._created<this.maxFiles)return setImmediate(r);let s=this._created-this.maxFiles,o=0!==s?s:"",a=this.zippedArchive?".gz":"",l=`${t}${o}${e}${a}`,u=n.join(this.dirname,l);i.unlink(u,r)}_checkMaxFilesTailable(e,t,r){let o=[];if(!this.maxFiles)return;let a=this.zippedArchive?".gz":"";for(let r=this.maxFiles-1;r>1;r--)o.push((function(r,s){let o=`${t}${r-1}${e}${a}`,l=n.join(this.dirname,o);i.exists(l,u=>{if(!u)return s(null);o=`${t}${r}${e}${a}`,i.rename(l,n.join(this.dirname,o),s)})}).bind(this,r));s(o,()=>{i.rename(n.join(this.dirname,`${t}${e}${a}`),n.join(this.dirname,`${t}1${e}${a}`),r)})}_compressFile(e,t,r){i.access(e,i.F_OK,n=>{if(n)return r();var s=o.createGzip(),a=i.createReadStream(e),l=i.createWriteStream(t);l.on("finish",()=>{i.unlink(e,r)}),a.pipe(s).pipe(l)})}_createLogDirIfNotExist(e){i.existsSync(e)||i.mkdirSync(e,{recursive:!0})}}},5307:(e,t,r)=>{"use strict";let i=r(1630),n=r(5591),{Stream:s}=r(2826),o=r(9747),{configure:a}=r(900);e.exports=class extends o{constructor(e={}){super(e),this.options=e,this.name=e.name||"http",this.ssl=!!e.ssl,this.host=e.host||"localhost",this.port=e.port,this.auth=e.auth,this.path=e.path||"",this.maximumDepth=e.maximumDepth,this.agent=e.agent,this.headers=e.headers||{},this.headers["content-type"]="application/json",this.batch=e.batch||!1,this.batchInterval=e.batchInterval||5e3,this.batchCount=e.batchCount||10,this.batchOptions=[],this.batchTimeoutID=-1,this.batchCallback={},this.port||(this.port=this.ssl?443:80)}log(e,t){this._request(e,null,null,(t,r)=>{r&&200!==r.statusCode&&(t=Error(`Invalid HTTP Status Code: ${r.statusCode}`)),t?this.emit("warn",t):this.emit("logged",e)}),t&&setImmediate(t)}query(e,t){"function"==typeof e&&(t=e,e={});let r=(e={method:"query",params:this.normalizeQuery(e)}).params.auth||null;delete e.params.auth;let i=e.params.path||null;delete e.params.path,this._request(e,r,i,(e,r,i)=>{if(r&&200!==r.statusCode&&(e=Error(`Invalid HTTP Status Code: ${r.statusCode}`)),e)return t(e);if("string"==typeof i)try{i=JSON.parse(i)}catch(e){return t(e)}t(null,i)})}stream(e={}){let t=new s,r=(e={method:"stream",params:e}).params.path||null;delete e.params.path;let i=e.params.auth||null;delete e.params.auth;let n="",o=this._request(e,i,r);return t.destroy=()=>o.destroy(),o.on("data",e=>{let r=(e=(n+e).split(/\n+/)).length-1,i=0;for(;i<r;i++)try{t.emit("log",JSON.parse(e[i]))}catch(e){t.emit("error",e)}n=e[r]}),o.on("error",e=>t.emit("error",e)),t}_request(e,t,r,i){e=e||{},t=t||this.auth,r=r||this.path||"",this.batch?this._doBatch(e,i,t,r):this._doRequest(e,i,t,r)}_doBatch(e,t,r,i){if(this.batchOptions.push(e),1===this.batchOptions.length){let e=this;this.batchCallback=t,this.batchTimeoutID=setTimeout(function(){e.batchTimeoutID=-1,e._doBatchRequest(e.batchCallback,r,i)},this.batchInterval)}this.batchOptions.length===this.batchCount&&this._doBatchRequest(this.batchCallback,r,i)}_doBatchRequest(e,t,r){this.batchTimeoutID>0&&(clearTimeout(this.batchTimeoutID),this.batchTimeoutID=-1);let i=this.batchOptions.slice();this.batchOptions=[],this._doRequest(i,e,t,r)}_doRequest(e,t,r,s){let o=Object.assign({},this.headers);r&&r.bearer&&(o.Authorization=`Bearer ${r.bearer}`);let l=(this.ssl?n:i).request({...this.options,method:"POST",host:this.host,port:this.port,path:`/${s.replace(/^\//,"")}`,headers:o,auth:r&&r.username&&r.password?`${r.username}:${r.password}`:"",agent:this.agent});l.on("error",t),l.on("response",e=>e.on("end",()=>t(null,e)).resume());let u=a({...this.maximumDepth&&{maximumDepth:this.maximumDepth}});l.end(Buffer.from(u(e,this.options.replacer),"utf8"))}}},4279:(e,t,r)=>{"use strict";Object.defineProperty(t,"Console",{configurable:!0,enumerable:!0,get:()=>r(6718)}),Object.defineProperty(t,"File",{configurable:!0,enumerable:!0,get:()=>r(2089)}),Object.defineProperty(t,"Http",{configurable:!0,enumerable:!0,get:()=>r(5307)}),Object.defineProperty(t,"Stream",{configurable:!0,enumerable:!0,get:()=>r(1171)})},1171:(e,t,r)=>{"use strict";let i=r(6696),{MESSAGE:n}=r(2239),s=r(1820),o=r(9747);e.exports=class extends o{constructor(e={}){if(super(e),!e.stream||!i(e.stream))throw Error("options.stream is required.");this._stream=e.stream,this._stream.setMaxListeners(1/0),this.isObjectMode=e.stream._writableState.objectMode,this.eol="string"==typeof e.eol?e.eol:s.EOL}log(e,t){if(setImmediate(()=>this.emit("logged",e)),this.isObjectMode){this._stream.write(e),t&&t();return}this._stream.write(`${e[n]}${this.eol}`),t&&t()}}},3149:(e,t,r)=>{"use strict";r.d(t,{dJ:()=>_});var i=r(6760),n=r(1708),s=r(3024),o=r(3136);class a{value;next;constructor(e){this.value=e}}class l{#e;#t;#r;constructor(){this.clear()}enqueue(e){let t=new a(e);this.#e?this.#t.next=t:this.#e=t,this.#t=t,this.#r++}dequeue(){let e=this.#e;if(e)return this.#e=this.#e.next,this.#r--,e.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#r=0}get size(){return this.#r}*[Symbol.iterator](){let e=this.#e;for(;e;)yield e.value,e=e.next}}function u(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw TypeError("Expected `concurrency` to be a number from 1 and up");let t=new l,r=0,i=()=>{r--,t.size>0&&t.dequeue()()},n=async(e,t,n)=>{r++;let s=(async()=>e(...n))();t(s);try{await s}catch{}i()},s=(i,s,o)=>{t.enqueue(n.bind(void 0,i,s,o)),(async()=>{await Promise.resolve(),r<e&&t.size>0&&t.dequeue()()})()},o=(e,...t)=>new Promise(r=>{s(e,r,t)});return Object.defineProperties(o,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}}}),o}class h extends Error{constructor(e){super(),this.value=e}}let c=async(e,t)=>t(await e),f=async e=>{let t=await Promise.all(e);if(!0===t[1])throw new h(t[0]);return!1};async function d(e,t,{concurrency:r=Number.POSITIVE_INFINITY,preserveOrder:i=!0}={}){let n=u(r),s=[...e].map(e=>[e,n(c,e,t)]),o=u(i?1:Number.POSITIVE_INFINITY);try{await Promise.all(s.map(e=>o(f,e)))}catch(e){if(e instanceof h)return e.value;throw e}}let p={directory:"isDirectory",file:"isFile"};function g(e){if(!Object.hasOwnProperty.call(p,e))throw Error(`Invalid type specified: ${e}`)}let m=(e,t)=>t[p[e]](),b=e=>e instanceof URL?(0,o.fileURLToPath)(e):e;async function w(e,{cwd:t=n.cwd(),type:r="file",allowSymlinks:o=!0,concurrency:a,preserveOrder:l}={}){g(r),t=b(t);let u=o?s.promises.stat:s.promises.lstat;return d(e,async e=>{try{let n=await u(i.resolve(t,e));return m(r,n)}catch{return!1}},{concurrency:a,preserveOrder:l})}function y(e){return e instanceof URL?(0,o.fileURLToPath)(e):e}let v=Symbol("findUpStop");async function x(e,t={}){let r=i.resolve(y(t.cwd)??""),{root:n}=i.parse(r),s=i.resolve(r,y(t.stopAt??n)),o=t.limit??Number.POSITIVE_INFINITY,a=[e].flat(),l=async t=>{if("function"!=typeof e)return w(a,t);let r=await e(t.cwd);return"string"==typeof r?w([r],t):r},u=[];for(;;){let e=await l({...t,cwd:r});if(e===v||(e&&u.push(i.resolve(r,e)),r===s||u.length>=o))break;r=i.dirname(r)}return u}async function _(e,t={}){return(await x(e,{...t,limit:1}))[0]}},6789:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});let i=Symbol("singleComment"),n=Symbol("multiComment"),s=()=>"",o=(e,t,r)=>e.slice(t,r).replace(/\S/g," "),a=(e,t)=>{let r=t-1,i=0;for(;"\\"===e[r];)r-=1,i+=1;return!!(i%2)};function l(e,{whitespace:t=!0,trailingCommas:r=!1}={}){if("string"!=typeof e)throw TypeError(`Expected argument \`jsonString\` to be a \`string\`, got \`${typeof e}\``);let u=t?o:s,h=!1,c=!1,f=0,d="",p="",g=-1;for(let t=0;t<e.length;t++){let s=e[t],o=e[t+1];if(c||'"'!==s||a(e,t)||(h=!h),!h){if(c||s+o!=="//"){if(c===i&&s+o==="\r\n"){c=!1,d+=u(e,f,++t),f=t;continue}if(c===i&&"\n"===s)c=!1,d+=u(e,f,t),f=t;else if(c||s+o!=="/*"){if(c===n&&s+o==="*/"){c=!1,d+=u(e,f,++t+1),f=t+1;continue}r&&!c&&(-1!==g?"}"===s||"]"===s?(d+=e.slice(f,t),p+=u(d,0,1)+d.slice(1),d="",f=t,g=-1):" "!==s&&" "!==s&&"\r"!==s&&"\n"!==s&&(d+=e.slice(f,t),f=t,g=-1):","===s&&(p+=d+e.slice(f,t),d="",f=t,g=t))}else{d+=e.slice(f,t),f=t,c=n,t++;continue}}else d+=e.slice(f,t),f=t,c=i,t++}}return p+d+(c?u(e.slice(f)):e.slice(f))}},5040:e=>{"use strict";e.exports={version:"3.17.0"}}};