@ezpaarse-project/ezreeport-sdk-js 2.2.0-beta.1 → 2.2.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_commonjsHelpers-C6fGbg64.mjs +7 -0
- package/dist/_commonjsHelpers-C6fGbg64.mjs.map +1 -0
- package/dist/_commonjsHelpers-DwGv2jUC.js +2 -0
- package/dist/_commonjsHelpers-DwGv2jUC.js.map +1 -0
- package/dist/auth.js +1 -1
- package/dist/auth.mjs +1 -1
- package/dist/crons.js +1 -1
- package/dist/crons.mjs +1 -1
- package/dist/elastic.js +1 -1
- package/dist/elastic.mjs +1 -1
- package/dist/fetch-CLjbXGAV.js +2 -0
- package/dist/fetch-CLjbXGAV.js.map +1 -0
- package/dist/fetch-kzLaYwl7.mjs +47 -0
- package/dist/fetch-kzLaYwl7.mjs.map +1 -0
- package/dist/generations.js +1 -1
- package/dist/generations.mjs +1 -1
- package/dist/health.js +1 -1
- package/dist/health.mjs +1 -1
- package/dist/helpers/figures.js +1 -1
- package/dist/helpers/figures.mjs +4 -4
- package/dist/helpers/generations.js +1 -1
- package/dist/helpers/generations.js.map +1 -1
- package/dist/helpers/generations.mjs +41 -43
- package/dist/helpers/generations.mjs.map +1 -1
- package/dist/helpers/layouts.js +1 -1
- package/dist/helpers/layouts.mjs +3 -3
- package/dist/helpers/permissions.js +1 -1
- package/dist/helpers/permissions.mjs +1 -1
- package/dist/helpers/task-presets.js +1 -1
- package/dist/helpers/task-presets.mjs +1 -1
- package/dist/helpers/tasks.js +1 -1
- package/dist/helpers/tasks.js.map +1 -1
- package/dist/helpers/tasks.mjs +13 -13
- package/dist/helpers/templates.js +1 -1
- package/dist/helpers/templates.js.map +1 -1
- package/dist/helpers/templates.mjs +3 -3
- package/dist/index-CVa-i8Jy.js +7 -0
- package/dist/index-CVa-i8Jy.js.map +1 -0
- package/dist/index-CqG3FOrT.mjs +1113 -0
- package/dist/index-CqG3FOrT.mjs.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.mjs +2 -2
- package/dist/{methods-eIVAWN5f.js → methods--DanahvX.js} +2 -2
- package/dist/{methods-eIVAWN5f.js.map → methods--DanahvX.js.map} +1 -1
- package/dist/{methods-CBlHpa4P.js → methods-B7KR7IhF.js} +2 -2
- package/dist/{methods-CBlHpa4P.js.map → methods-B7KR7IhF.js.map} +1 -1
- package/dist/{methods-Crgt0cEf.mjs → methods-BEqx06jZ.mjs} +3 -3
- package/dist/{methods-Crgt0cEf.mjs.map → methods-BEqx06jZ.mjs.map} +1 -1
- package/dist/{methods-BcKnS6pA.mjs → methods-BMzxDoxk.mjs} +2 -2
- package/dist/{methods-BcKnS6pA.mjs.map → methods-BMzxDoxk.mjs.map} +1 -1
- package/dist/{methods-CvCyx_v_.js → methods-BRTxG87E.js} +2 -2
- package/dist/{methods-CvCyx_v_.js.map → methods-BRTxG87E.js.map} +1 -1
- package/dist/{methods-Ba1XR8Ij.mjs → methods-BeMtF2ph.mjs} +2 -2
- package/dist/{methods-Ba1XR8Ij.mjs.map → methods-BeMtF2ph.mjs.map} +1 -1
- package/dist/{methods-DJctQ3lm.js → methods-C85_VqKZ.js} +2 -2
- package/dist/{methods-DJctQ3lm.js.map → methods-C85_VqKZ.js.map} +1 -1
- package/dist/{methods-Bf8iqEhG.mjs → methods-D5Sa5dxr.mjs} +3 -3
- package/dist/{methods-Bf8iqEhG.mjs.map → methods-D5Sa5dxr.mjs.map} +1 -1
- package/dist/{methods-HbhrcB_u.js → methods-DRivN56g.js} +2 -2
- package/dist/{methods-HbhrcB_u.js.map → methods-DRivN56g.js.map} +1 -1
- package/dist/{methods-B78wxcbm.mjs → methods-DtUaMG7I.mjs} +2 -2
- package/dist/{methods-B78wxcbm.mjs.map → methods-DtUaMG7I.mjs.map} +1 -1
- package/dist/{methods-_8MaDPJ6.mjs → methods-DvvWsTzZ.mjs} +2 -2
- package/dist/{methods-_8MaDPJ6.mjs.map → methods-DvvWsTzZ.mjs.map} +1 -1
- package/dist/{methods-Cvs5hjsE.js → methods-ExKehD5I.js} +2 -2
- package/dist/{methods-Cvs5hjsE.js.map → methods-ExKehD5I.js.map} +1 -1
- package/dist/recurrence.js +1 -1
- package/dist/recurrence.mjs +2 -2
- package/dist/reports.js +1 -1
- package/dist/reports.mjs +1 -1
- package/dist/task-activity.js +1 -1
- package/dist/task-activity.mjs +2 -2
- package/dist/task-presets.js +1 -1
- package/dist/task-presets.mjs +1 -1
- package/dist/{tasks-FPNOmtnL.js → tasks-C-Si9c_j.js} +2 -2
- package/dist/{tasks-FPNOmtnL.js.map → tasks-C-Si9c_j.js.map} +1 -1
- package/dist/{tasks-Cc53eQzu.mjs → tasks-rnhGl39m.mjs} +2 -2
- package/dist/{tasks-Cc53eQzu.mjs.map → tasks-rnhGl39m.mjs.map} +1 -1
- package/dist/tasks.js +1 -1
- package/dist/tasks.mjs +1 -1
- package/dist/templates-BNAX4vB8.mjs +29 -0
- package/dist/{templates-C_qWeEww.mjs.map → templates-BNAX4vB8.mjs.map} +1 -1
- package/dist/templates-D7C0TH1C.js +2 -0
- package/dist/{templates-lPeMpQuz.js.map → templates-D7C0TH1C.js.map} +1 -1
- package/dist/templates.js +1 -1
- package/dist/templates.mjs +1 -1
- package/package.json +2 -2
- package/dist/fetch-Cp3-cNix.mjs +0 -44
- package/dist/fetch-Cp3-cNix.mjs.map +0 -1
- package/dist/fetch-DA1lo0q0.js +0 -2
- package/dist/fetch-DA1lo0q0.js.map +0 -1
- package/dist/index-Cc9-CotA.js +0 -2
- package/dist/index-Cc9-CotA.js.map +0 -1
- package/dist/index-D6K5zKgZ.mjs +0 -330
- package/dist/index-D6K5zKgZ.mjs.map +0 -1
- package/dist/templates-C_qWeEww.mjs +0 -30
- package/dist/templates-lPeMpQuz.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_commonjsHelpers-C6fGbg64.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_commonjsHelpers-DwGv2jUC.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/auth.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./methods-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./methods-BRTxG87E.js");exports.getCurrentNamespaces=e.getCurrentNamespaces;exports.getCurrentPermissions=e.getCurrentPermissions;exports.getCurrentUser=e.getCurrentUser;
|
|
2
2
|
//# sourceMappingURL=auth.js.map
|
package/dist/auth.mjs
CHANGED
package/dist/crons.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var q=Object.defineProperty,v=Object.defineProperties;var x=Object.getOwnPropertyDescriptors;var a=Object.getOwnPropertySymbols;var g=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable;var d=(n,e,t)=>e in n?q(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,y=(n,e)=>{for(var t in e||(e={}))g.call(e,t)&&d(n,t,e[t]);if(a)for(var t of a(e))C.call(e,t)&&d(n,t,e[t]);return n},P=(n,e)=>v(n,x(e));var p=(n,e)=>{var t={};for(var s in n)g.call(n,s)&&e.indexOf(s)<0&&(t[s]=n[s]);if(n!=null&&a)for(var s of a(n))e.indexOf(s)<0&&C.call(n,s)&&(t[s]=n[s]);return t};var r=(n,e,t)=>new Promise((s,c)=>{var A=o=>{try{l(t.next(o))}catch(m){c(m)}},b=o=>{try{l(t.throw(o))}catch(m){c(m)}},l=o=>o.done?s(o.value):Promise.resolve(o.value).then(A,b);l((t=t.apply(n,e)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("date-fns"),i=require("./fetch-
|
|
1
|
+
"use strict";var q=Object.defineProperty,v=Object.defineProperties;var x=Object.getOwnPropertyDescriptors;var a=Object.getOwnPropertySymbols;var g=Object.prototype.hasOwnProperty,C=Object.prototype.propertyIsEnumerable;var d=(n,e,t)=>e in n?q(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,y=(n,e)=>{for(var t in e||(e={}))g.call(e,t)&&d(n,t,e[t]);if(a)for(var t of a(e))C.call(e,t)&&d(n,t,e[t]);return n},P=(n,e)=>v(n,x(e));var p=(n,e)=>{var t={};for(var s in n)g.call(n,s)&&e.indexOf(s)<0&&(t[s]=n[s]);if(n!=null&&a)for(var s of a(n))e.indexOf(s)<0&&C.call(n,s)&&(t[s]=n[s]);return t};var r=(n,e,t)=>new Promise((s,c)=>{var A=o=>{try{l(t.next(o))}catch(m){c(m)}},b=o=>{try{l(t.throw(o))}catch(m){c(m)}},l=o=>o.done?s(o.value):Promise.resolve(o.value).then(A,b);l((t=t.apply(n,e)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("date-fns"),i=require("./fetch-CLjbXGAV.js"),u=require("./decorator-C2gcn2rK.js"),f=n=>P(y({},n),{lastRun:n.lastRun?h.parseISO(n.lastRun):void 0,nextRun:n.nextRun?h.parseISO(n.nextRun):void 0});function T(){return r(this,null,function*(){const{content:n}=yield i.client.fetch("/crons");return n.map(f)})}u.assignPermission(T,"GET /crons");function R(n){return r(this,null,function*(){const e=typeof n=="string"?n:n.name,{content:t}=yield i.client.fetch(`/crons/${e}`);return f(t)})}u.assignPermission(R,"GET /crons/:name");function S(n){return r(this,null,function*(){const c=n,{name:e}=c,t=p(c,["name"]),{content:s}=yield i.client.fetch(`/crons/${e}`,{method:"PATCH",body:t});return f(s)})}u.assignPermission(S,"PATCH /crons/:name");function w(n){return r(this,null,function*(){const e=typeof n=="string"?n:n.name,{content:t}=yield i.client.fetch(`/crons/${e}`,{method:"POST"});return f(t)})}u.assignPermission(w,"POST /crons/:name");exports.forceCron=w;exports.getAllCrons=T;exports.getCron=R;exports.updateCron=S;
|
|
2
2
|
//# sourceMappingURL=crons.js.map
|
package/dist/crons.mjs
CHANGED
|
@@ -36,7 +36,7 @@ var c = (n, o, t) => new Promise((s, a) => {
|
|
|
36
36
|
u((t = t.apply(n, o)).next());
|
|
37
37
|
});
|
|
38
38
|
import { parseISO as T } from "date-fns";
|
|
39
|
-
import { c as i } from "./fetch-
|
|
39
|
+
import { c as i } from "./fetch-kzLaYwl7.mjs";
|
|
40
40
|
import { a as f } from "./decorator-DCiVxI72.mjs";
|
|
41
41
|
const m = (n) => l(h({}, n), {
|
|
42
42
|
lastRun: n.lastRun ? T(n.lastRun) : void 0,
|
package/dist/elastic.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var u=(t,i,e)=>new Promise((o,l)=>{var f=n=>{try{c(e.next(n))}catch(s){l(s)}},q=n=>{try{c(e.throw(n))}catch(s){l(s)}},c=n=>n.done?o(n.value):Promise.resolve(n.value).then(f,q);c((e=e.apply(t,i)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./fetch-
|
|
1
|
+
"use strict";var u=(t,i,e)=>new Promise((o,l)=>{var f=n=>{try{c(e.next(n))}catch(s){l(s)}},q=n=>{try{c(e.throw(n))}catch(s){l(s)}},c=n=>n.done?o(n.value):Promise.resolve(n.value).then(f,q);c((e=e.apply(t,i)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./fetch-CLjbXGAV.js"),r=require("./decorator-C2gcn2rK.js");function d(t,i){return u(this,null,function*(){const e=typeof t=="string"?t:t==null?void 0:t.id,{content:o}=yield g.client.fetch("/elastic/indices",{query:{query:i||void 0,namespaceId:e||void 0}});return o})}r.assignPermission(d,"GET /elastic/indices",!0);function y(t,i){return u(this,null,function*(){const e=typeof i=="string"?i:i==null?void 0:i.id,{content:o}=yield g.client.fetch(`/elastic/indices/${t}`,{query:{namespaceId:e||void 0}});return o})}r.assignPermission(y,"GET /elastic/indices/:index",!0);exports.getAllIndices=d;exports.getIndexMapping=y;
|
|
2
2
|
//# sourceMappingURL=elastic.js.map
|
package/dist/elastic.mjs
CHANGED
|
@@ -14,7 +14,7 @@ var u = (i, t, n) => new Promise((c, f) => {
|
|
|
14
14
|
}, s = (o) => o.done ? c(o.value) : Promise.resolve(o.value).then(g, r);
|
|
15
15
|
s((n = n.apply(i, t)).next());
|
|
16
16
|
});
|
|
17
|
-
import { c as l } from "./fetch-
|
|
17
|
+
import { c as l } from "./fetch-kzLaYwl7.mjs";
|
|
18
18
|
import { a as y } from "./decorator-DCiVxI72.mjs";
|
|
19
19
|
function d(i, t) {
|
|
20
20
|
return u(this, null, function* () {
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const s=require("ofetch"),h=require("socket.io-client"),f=new Map,i={token:"",fetch:s.ofetch.create({}),socket:()=>{}},d=(o,r)=>(c,t)=>{var l;let e=f.get(c);if(((l=e==null?void 0:e.rooms)!=null?l:[]).every(n=>(t!=null?t:[]).includes(n))||(e==null||e.con.disconnect(),e=void 0),!e){const n=new URL(c,o);n.protocol=n.protocol.replace("http","ws");try{e={con:h.io(n.href,{auth:r||void 0,query:t?{rooms:t}:void 0}),rooms:t},f.set(c,e)}catch(k){console.error(`[ezreeport-sdk-js] Couldn't create socket for ${c}`,k);return}}return e.con};function p(o,r){const c={};r!=null&&r.token&&(c.Authorization=`Bearer ${r.token}`);let t,e;typeof o=="string"?(t=o,e=new URL(o)):(t=o.href,e=o),i.fetch=s.ofetch.create({baseURL:t,headers:c}),i.socket=d(e,r)}exports.client=i;exports.prepareClient=p;
|
|
2
|
+
//# sourceMappingURL=fetch-CLjbXGAV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-CLjbXGAV.js","sources":["../src/lib/fetch.ts"],"sourcesContent":["import { ofetch } from 'ofetch';\nimport { io, type Socket } from 'socket.io-client';\n\nexport interface ApiAuthOptions {\n token?: string;\n // apiKey?: string;\n}\n\ntype SocketCreator = (\n namespace: string,\n rooms?: string[]\n) => Socket | undefined;\n\nconst sockets = new Map<string, { con: Socket; rooms?: string[] }>();\n\n/**\n * Client for the API\n */\nexport const client = {\n token: '',\n fetch: ofetch.create({}),\n socket: (() => {\n // Will be init later\n }) as SocketCreator,\n};\n\nconst prepareSocketCreator =\n (baseURL: URL, auth?: ApiAuthOptions): SocketCreator =>\n (namespaceName, rooms) => {\n let namespace = sockets.get(namespaceName);\n const haveSameRooms = (namespace?.rooms ?? []).every((rs) =>\n (rooms ?? []).includes(rs)\n );\n if (!haveSameRooms) {\n namespace?.con.disconnect();\n namespace = undefined;\n }\n if (!namespace) {\n const url = new URL(namespaceName, baseURL);\n url.protocol = url.protocol.replace('http', 'ws');\n\n try {\n namespace = {\n con: io(url.href, {\n auth: auth || undefined,\n query: rooms ? { rooms } : undefined,\n }),\n rooms,\n };\n sockets.set(namespaceName, namespace);\n } catch (error) {\n // oxlint-disable-next-line no-console\n console.error(\n `[ezreeport-sdk-js] Couldn't create socket for ${namespaceName}`,\n error\n );\n return;\n }\n }\n\n return namespace.con;\n };\n\n/**\n * Prepare the client for the rest of the SDK, will update config if needed\n *\n * @param baseURL Base HTTP URL of the API\n * @param auth Auth options to be authenticated\n */\nexport function prepareClient(\n baseURL: string | URL,\n auth?: ApiAuthOptions\n): void {\n // Create HTTP client\n const headers: Record<string, string> = {};\n\n if (auth?.token) {\n headers.Authorization = `Bearer ${auth.token}`;\n }\n // if (auth?.apiKey) {\n // headers['X-Api-Key'] = auth.apiKey;\n // }\n\n let href;\n let url;\n if (typeof baseURL === 'string') {\n href = baseURL;\n url = new URL(baseURL);\n } else {\n href = baseURL.href;\n url = baseURL;\n }\n\n client.fetch = ofetch.create({\n baseURL: href,\n headers,\n });\n\n // Set function to handle sockets\n client.socket = prepareSocketCreator(url, auth);\n}\n"],"names":["sockets","client","ofetch","prepareSocketCreator","baseURL","auth","namespaceName","rooms","namespace","_a","rs","url","io","error","prepareClient","headers","href"],"mappings":"qEAaMA,MAAc,IAKPC,EAAS,CACpB,MAAO,GACP,MAAOC,EAAAA,OAAO,OAAO,EAAE,EACvB,OAAS,IAAM,CAEf,CACF,EAEMC,EACJ,CAACC,EAAcC,IACf,CAACC,EAAeC,IAAU,OACxB,IAAIC,EAAYR,EAAQ,IAAIM,CAAa,EAQzC,KAPuBG,EAAAD,GAAA,YAAAA,EAAW,QAAX,KAAAC,EAAoB,CAAA,GAAI,MAAOC,IACnDH,GAAA,KAAAA,EAAS,CAAA,GAAI,SAASG,CAAE,CAAA,IAGzBF,GAAA,MAAAA,EAAW,IAAI,aACfA,EAAY,QAEV,CAACA,EAAW,CACd,MAAMG,EAAM,IAAI,IAAIL,EAAeF,CAAO,EAC1CO,EAAI,SAAWA,EAAI,SAAS,QAAQ,OAAQ,IAAI,EAEhD,GAAI,CACFH,EAAY,CACV,IAAKI,EAAAA,GAAGD,EAAI,KAAM,CAChB,KAAMN,GAAQ,OACd,MAAOE,EAAQ,CAAE,MAAAA,CAAA,EAAU,MAAA,CAC5B,EACD,MAAAA,CAAA,EAEFP,EAAQ,IAAIM,EAAeE,CAAS,CACtC,OAASK,EAAO,CAEd,QAAQ,MACN,iDAAiDP,CAAa,GAC9DO,CAAA,EAEF,MACF,CACF,CAEA,OAAOL,EAAU,GACnB,EAQK,SAASM,EACdV,EACAC,EACM,CAEN,MAAMU,EAAkC,CAAA,EAEpCV,GAAA,MAAAA,EAAM,QACRU,EAAQ,cAAgB,UAAUV,EAAK,KAAK,IAM9C,IAAIW,EACAL,EACA,OAAOP,GAAY,UACrBY,EAAOZ,EACPO,EAAM,IAAI,IAAIP,CAAO,IAErBY,EAAOZ,EAAQ,KACfO,EAAMP,GAGRH,EAAO,MAAQC,EAAAA,OAAO,OAAO,CAC3B,QAASc,EACT,QAAAD,CAAA,CACD,EAGDd,EAAO,OAASE,EAAqBQ,EAAKN,CAAI,CAChD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ofetch as s } from "ofetch";
|
|
2
|
+
import { io as p } from "socket.io-client";
|
|
3
|
+
const f = /* @__PURE__ */ new Map(), l = {
|
|
4
|
+
token: "",
|
|
5
|
+
fetch: s.create({}),
|
|
6
|
+
socket: () => {
|
|
7
|
+
}
|
|
8
|
+
}, d = (o, r) => (c, t) => {
|
|
9
|
+
var i;
|
|
10
|
+
let e = f.get(c);
|
|
11
|
+
if (((i = e == null ? void 0 : e.rooms) != null ? i : []).every(
|
|
12
|
+
(n) => (t != null ? t : []).includes(n)
|
|
13
|
+
) || (e == null || e.con.disconnect(), e = void 0), !e) {
|
|
14
|
+
const n = new URL(c, o);
|
|
15
|
+
n.protocol = n.protocol.replace("http", "ws");
|
|
16
|
+
try {
|
|
17
|
+
e = {
|
|
18
|
+
con: p(n.href, {
|
|
19
|
+
auth: r || void 0,
|
|
20
|
+
query: t ? { rooms: t } : void 0
|
|
21
|
+
}),
|
|
22
|
+
rooms: t
|
|
23
|
+
}, f.set(c, e);
|
|
24
|
+
} catch (k) {
|
|
25
|
+
console.error(
|
|
26
|
+
`[ezreeport-sdk-js] Couldn't create socket for ${c}`,
|
|
27
|
+
k
|
|
28
|
+
);
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return e.con;
|
|
33
|
+
};
|
|
34
|
+
function w(o, r) {
|
|
35
|
+
const c = {};
|
|
36
|
+
r != null && r.token && (c.Authorization = `Bearer ${r.token}`);
|
|
37
|
+
let t, e;
|
|
38
|
+
typeof o == "string" ? (t = o, e = new URL(o)) : (t = o.href, e = o), l.fetch = s.create({
|
|
39
|
+
baseURL: t,
|
|
40
|
+
headers: c
|
|
41
|
+
}), l.socket = d(e, r);
|
|
42
|
+
}
|
|
43
|
+
export {
|
|
44
|
+
l as c,
|
|
45
|
+
w as p
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=fetch-kzLaYwl7.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-kzLaYwl7.mjs","sources":["../src/lib/fetch.ts"],"sourcesContent":["import { ofetch } from 'ofetch';\nimport { io, type Socket } from 'socket.io-client';\n\nexport interface ApiAuthOptions {\n token?: string;\n // apiKey?: string;\n}\n\ntype SocketCreator = (\n namespace: string,\n rooms?: string[]\n) => Socket | undefined;\n\nconst sockets = new Map<string, { con: Socket; rooms?: string[] }>();\n\n/**\n * Client for the API\n */\nexport const client = {\n token: '',\n fetch: ofetch.create({}),\n socket: (() => {\n // Will be init later\n }) as SocketCreator,\n};\n\nconst prepareSocketCreator =\n (baseURL: URL, auth?: ApiAuthOptions): SocketCreator =>\n (namespaceName, rooms) => {\n let namespace = sockets.get(namespaceName);\n const haveSameRooms = (namespace?.rooms ?? []).every((rs) =>\n (rooms ?? []).includes(rs)\n );\n if (!haveSameRooms) {\n namespace?.con.disconnect();\n namespace = undefined;\n }\n if (!namespace) {\n const url = new URL(namespaceName, baseURL);\n url.protocol = url.protocol.replace('http', 'ws');\n\n try {\n namespace = {\n con: io(url.href, {\n auth: auth || undefined,\n query: rooms ? { rooms } : undefined,\n }),\n rooms,\n };\n sockets.set(namespaceName, namespace);\n } catch (error) {\n // oxlint-disable-next-line no-console\n console.error(\n `[ezreeport-sdk-js] Couldn't create socket for ${namespaceName}`,\n error\n );\n return;\n }\n }\n\n return namespace.con;\n };\n\n/**\n * Prepare the client for the rest of the SDK, will update config if needed\n *\n * @param baseURL Base HTTP URL of the API\n * @param auth Auth options to be authenticated\n */\nexport function prepareClient(\n baseURL: string | URL,\n auth?: ApiAuthOptions\n): void {\n // Create HTTP client\n const headers: Record<string, string> = {};\n\n if (auth?.token) {\n headers.Authorization = `Bearer ${auth.token}`;\n }\n // if (auth?.apiKey) {\n // headers['X-Api-Key'] = auth.apiKey;\n // }\n\n let href;\n let url;\n if (typeof baseURL === 'string') {\n href = baseURL;\n url = new URL(baseURL);\n } else {\n href = baseURL.href;\n url = baseURL;\n }\n\n client.fetch = ofetch.create({\n baseURL: href,\n headers,\n });\n\n // Set function to handle sockets\n client.socket = prepareSocketCreator(url, auth);\n}\n"],"names":["sockets","client","ofetch","prepareSocketCreator","baseURL","auth","namespaceName","rooms","namespace","_a","rs","url","io","error","prepareClient","headers","href"],"mappings":";;AAaA,MAAMA,wBAAc,IAAA,GAKPC,IAAS;AAAA,EACpB,OAAO;AAAA,EACP,OAAOC,EAAO,OAAO,EAAE;AAAA,EACvB,QAAS,MAAM;AAAA,EAEf;AACF,GAEMC,IACJ,CAACC,GAAcC,MACf,CAACC,GAAeC,MAAU;;AACxB,MAAIC,IAAYR,EAAQ,IAAIM,CAAa;AAQzC,QAPuBG,IAAAD,KAAA,gBAAAA,EAAW,UAAX,OAAAC,IAAoB,CAAA,GAAI;AAAA,IAAM,CAACC,OACnDH,KAAA,OAAAA,IAAS,CAAA,GAAI,SAASG,CAAE;AAAA,EAAA,MAGzBF,KAAA,QAAAA,EAAW,IAAI,cACfA,IAAY,SAEV,CAACA,GAAW;AACd,UAAMG,IAAM,IAAI,IAAIL,GAAeF,CAAO;AAC1C,IAAAO,EAAI,WAAWA,EAAI,SAAS,QAAQ,QAAQ,IAAI;AAEhD,QAAI;AACF,MAAAH,IAAY;AAAA,QACV,KAAKI,EAAGD,EAAI,MAAM;AAAA,UAChB,MAAMN,KAAQ;AAAA,UACd,OAAOE,IAAQ,EAAE,OAAAA,EAAA,IAAU;AAAA,QAAA,CAC5B;AAAA,QACD,OAAAA;AAAA,MAAA,GAEFP,EAAQ,IAAIM,GAAeE,CAAS;AAAA,IACtC,SAASK,GAAO;AAEd,cAAQ;AAAA,QACN,iDAAiDP,CAAa;AAAA,QAC9DO;AAAA,MAAA;AAEF;AAAA,IACF;AAAA,EACF;AAEA,SAAOL,EAAU;AACnB;AAQK,SAASM,EACdV,GACAC,GACM;AAEN,QAAMU,IAAkC,CAAA;AAExC,EAAIV,KAAA,QAAAA,EAAM,UACRU,EAAQ,gBAAgB,UAAUV,EAAK,KAAK;AAM9C,MAAIW,GACAL;AACJ,EAAI,OAAOP,KAAY,YACrBY,IAAOZ,GACPO,IAAM,IAAI,IAAIP,CAAO,MAErBY,IAAOZ,EAAQ,MACfO,IAAMP,IAGRH,EAAO,QAAQC,EAAO,OAAO;AAAA,IAC3B,SAASc;AAAA,IACT,SAAAD;AAAA,EAAA,CACD,GAGDd,EAAO,SAASE,EAAqBQ,GAAKN,CAAI;AAChD;"}
|
package/dist/generations.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./methods-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./methods-DRivN56g.js");exports.getAllGenerations=e.getAllGenerations;exports.getGeneration=e.getGeneration;exports.restartGeneration=e.restartGeneration;
|
|
2
2
|
//# sourceMappingURL=generations.js.map
|
package/dist/generations.mjs
CHANGED
package/dist/health.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var g=Object.defineProperty,h=Object.defineProperties;var v=Object.getOwnPropertyDescriptors;var i=Object.getOwnPropertySymbols;var p=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var u=(t,r,e)=>r in t?g(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,a=(t,r)=>{for(var e in r||(r={}))p.call(r,e)&&u(t,e,r[e]);if(i)for(var e of i(r))y.call(r,e)&&u(t,e,r[e]);return t},f=(t,r)=>h(t,v(r));var d=(t,r,e)=>new Promise((l,o)=>{var m=n=>{try{s(e.next(n))}catch(c){o(c)}},S=n=>{try{s(e.throw(n))}catch(c){o(c)}},s=n=>n.done?l(n.value):Promise.resolve(n.value).then(m,S);s((e=e.apply(t,r)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./fetch-
|
|
1
|
+
"use strict";var g=Object.defineProperty,h=Object.defineProperties;var v=Object.getOwnPropertyDescriptors;var i=Object.getOwnPropertySymbols;var p=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var u=(t,r,e)=>r in t?g(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,a=(t,r)=>{for(var e in r||(r={}))p.call(r,e)&&u(t,e,r[e]);if(i)for(var e of i(r))y.call(r,e)&&u(t,e,r[e]);return t},f=(t,r)=>h(t,v(r));var d=(t,r,e)=>new Promise((l,o)=>{var m=n=>{try{s(e.next(n))}catch(c){o(c)}},S=n=>{try{s(e.throw(n))}catch(c){o(c)}},s=n=>n.done?l(n.value):Promise.resolve(n.value).then(m,S);s((e=e.apply(t,r)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("./fetch-CLjbXGAV.js"),q=require("./transform-DzLAfSJo.js"),j=t=>a({},q.transformCreatedUpdated(t));function w(){return d(this,null,function*(){const{content:t}=yield b.client.fetch("/health");return f(a({},t),{services:t.services.map(j)})})}exports.getStatus=w;
|
|
2
2
|
//# sourceMappingURL=health.js.map
|
package/dist/health.mjs
CHANGED
|
@@ -26,7 +26,7 @@ var p = (t, r, e) => new Promise((d, o) => {
|
|
|
26
26
|
}, s = (a) => a.done ? d(a.value) : Promise.resolve(a.value).then(h, u);
|
|
27
27
|
s((e = e.apply(t, r)).next());
|
|
28
28
|
});
|
|
29
|
-
import { c as x } from "./fetch-
|
|
29
|
+
import { c as x } from "./fetch-kzLaYwl7.mjs";
|
|
30
30
|
import { t as y } from "./transform-DrB-Z9tA.mjs";
|
|
31
31
|
const C = (t) => n({}, y(t));
|
|
32
32
|
function k() {
|
package/dist/helpers/figures.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../index-CVa-i8Jy.js");exports.addMetricLabelOfHelper=e.addMetricLabelOfHelper;exports.addTableColumnOfHelper=e.addTableColumnOfHelper;exports.createFigureHelper=e.createFigureHelper;exports.createFigureHelperFrom=e.createFigureHelperFrom;exports.createMdFigureHelper=e.createMdFigureHelper;exports.createMdFigureHelperFrom=e.createMdFigureHelperFrom;exports.createMetricFigureHelper=e.createMetricFigureHelper;exports.createMetricFigureHelperFrom=e.createMetricFigureHelperFrom;exports.createTableFigureHelper=e.createTableFigureHelper;exports.createTableFigureHelperFrom=e.createTableFigureHelperFrom;exports.createVegaFigureHelper=e.createVegaFigureHelper;exports.createVegaFigureHelperFrom=e.createVegaFigureHelperFrom;exports.figureHelperToJSON=e.figureHelperToJSON;exports.getAllMetricLabelKeysOfHelper=e.getAllMetricLabelKeysOfHelper;exports.getAllTableColumnKeysOfHelper=e.getAllTableColumnKeysOfHelper;exports.getMetricLabelKey=e.getMetricLabelKey;exports.getTableColumnKey=e.getTableColumnKey;exports.isFigureHelperMarkdown=e.isFigureHelperMarkdown;exports.isFigureHelperMetric=e.isFigureHelperMetric;exports.isFigureHelperTable=e.isFigureHelperTable;exports.isFigureHelperVega=e.isFigureHelperVega;exports.mdHelperParamsToJSON=e.mdHelperParamsToJSON;exports.metricHelperParamsToJSON=e.metricHelperParamsToJSON;exports.removeMetricLabelOfHelper=e.removeMetricLabelOfHelper;exports.removeTableColumnOfHelper=e.removeTableColumnOfHelper;exports.tableHelperParamsToJSON=e.tableHelperParamsToJSON;exports.updateMetricLabelOfHelper=e.updateMetricLabelOfHelper;exports.updateTableColumnOfHelper=e.updateTableColumnOfHelper;exports.vegaHelperParamsToJSON=e.vegaHelperParamsToJSON;
|
|
2
2
|
//# sourceMappingURL=figures.js.map
|
package/dist/helpers/figures.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { r as a, z as l, a as s, c as p, g as i, h as t, j as H, k as g, t as u, v as c, C as m, D as o, f as F, q as b, y as O, p as T, x as d, i as f, b as M, d as n, e as C, m as y, l as J, s as L, A as N, w as S, u as v, B as K, E as P } from "../index-CqG3FOrT.mjs";
|
|
2
2
|
export {
|
|
3
3
|
a as addMetricLabelOfHelper,
|
|
4
4
|
l as addTableColumnOfHelper,
|
|
@@ -9,9 +9,9 @@ export {
|
|
|
9
9
|
H as createMetricFigureHelper,
|
|
10
10
|
g as createMetricFigureHelperFrom,
|
|
11
11
|
u as createTableFigureHelper,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
c as createTableFigureHelperFrom,
|
|
13
|
+
m as createVegaFigureHelper,
|
|
14
|
+
o as createVegaFigureHelperFrom,
|
|
15
15
|
F as figureHelperToJSON,
|
|
16
16
|
b as getAllMetricLabelKeysOfHelper,
|
|
17
17
|
O as getAllTableColumnKeysOfHelper,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var A=(
|
|
1
|
+
"use strict";var A=(a,p,c)=>new Promise((h,d)=>{var i=v=>{try{u(c.next(v))}catch(g){d(g)}},l=v=>{try{u(c.throw(v))}catch(g){d(g)}},u=v=>v.done?h(v.value):Promise.resolve(v.value).then(i,l);u((c=c.apply(a,p)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("../fetch-CLjbXGAV.js"),D=require("../_commonjsHelpers-DwGv2jUC.js"),N=require("../decorator-C2gcn2rK.js"),_=require("../methods-ExKehD5I.js"),S=require("../methods-B7KR7IhF.js"),k=require("../methods-DRivN56g.js");var E={exports:{}},C;function W(){if(C)return E.exports;C=1;var a=typeof Reflect=="object"?Reflect:null,p=a&&typeof a.apply=="function"?a.apply:function(e,n,r){return Function.prototype.apply.call(e,n,r)},c;a&&typeof a.ownKeys=="function"?c=a.ownKeys:Object.getOwnPropertySymbols?c=function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:c=function(e){return Object.getOwnPropertyNames(e)};function h(t){console&&console.warn&&console.warn(t)}var d=Number.isNaN||function(e){return e!==e};function i(){i.init.call(this)}E.exports=i,E.exports.once=I,i.EventEmitter=i,i.prototype._events=void 0,i.prototype._eventsCount=0,i.prototype._maxListeners=void 0;var l=10;function u(t){if(typeof t!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}Object.defineProperty(i,"defaultMaxListeners",{enumerable:!0,get:function(){return l},set:function(t){if(typeof t!="number"||t<0||d(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");l=t}}),i.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},i.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||d(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this};function v(t){return t._maxListeners===void 0?i.defaultMaxListeners:t._maxListeners}i.prototype.getMaxListeners=function(){return v(this)},i.prototype.emit=function(e){for(var n=[],r=1;r<arguments.length;r++)n.push(arguments[r]);var s=e==="error",f=this._events;if(f!==void 0)s=s&&f.error===void 0;else if(!s)return!1;if(s){var o;if(n.length>0&&(o=n[0]),o instanceof Error)throw o;var m=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw m.context=o,m}var w=f[e];if(w===void 0)return!1;if(typeof w=="function")p(w,this,n);else for(var j=w.length,K=x(w,j),r=0;r<j;++r)p(K[r],this,n);return!0};function g(t,e,n,r){var s,f,o;if(u(n),f=t._events,f===void 0?(f=t._events=Object.create(null),t._eventsCount=0):(f.newListener!==void 0&&(t.emit("newListener",e,n.listener?n.listener:n),f=t._events),o=f[e]),o===void 0)o=f[e]=n,++t._eventsCount;else if(typeof o=="function"?o=f[e]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),s=v(t),s>0&&o.length>s&&!o.warned){o.warned=!0;var m=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");m.name="MaxListenersExceededWarning",m.emitter=t,m.type=e,m.count=o.length,h(m)}return t}i.prototype.addListener=function(e,n){return g(this,e,n,!1)},i.prototype.on=i.prototype.addListener,i.prototype.prependListener=function(e,n){return g(this,e,n,!0)};function L(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function y(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},s=L.bind(r);return s.listener=n,r.wrapFn=s,s}i.prototype.once=function(e,n){return u(n),this.on(e,y(this,e,n)),this},i.prototype.prependOnceListener=function(e,n){return u(n),this.prependListener(e,y(this,e,n)),this},i.prototype.removeListener=function(e,n){var r,s,f,o,m;if(u(n),s=this._events,s===void 0)return this;if(r=s[e],r===void 0)return this;if(r===n||r.listener===n)--this._eventsCount===0?this._events=Object.create(null):(delete s[e],s.removeListener&&this.emit("removeListener",e,r.listener||n));else if(typeof r!="function"){for(f=-1,o=r.length-1;o>=0;o--)if(r[o]===n||r[o].listener===n){m=r[o].listener,f=o;break}if(f<0)return this;f===0?r.shift():q(r,f),r.length===1&&(s[e]=r[0]),s.removeListener!==void 0&&this.emit("removeListener",e,m||n)}return this},i.prototype.off=i.prototype.removeListener,i.prototype.removeAllListeners=function(e){var n,r,s;if(r=this._events,r===void 0)return this;if(r.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):r[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete r[e]),this;if(arguments.length===0){var f=Object.keys(r),o;for(s=0;s<f.length;++s)o=f[s],o!=="removeListener"&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(n=r[e],typeof n=="function")this.removeListener(e,n);else if(n!==void 0)for(s=n.length-1;s>=0;s--)this.removeListener(e,n[s]);return this};function b(t,e,n){var r=t._events;if(r===void 0)return[];var s=r[e];return s===void 0?[]:typeof s=="function"?n?[s.listener||s]:[s]:n?F(s):x(s,s.length)}i.prototype.listeners=function(e){return b(this,e,!0)},i.prototype.rawListeners=function(e){return b(this,e,!1)},i.listenerCount=function(t,e){return typeof t.listenerCount=="function"?t.listenerCount(e):O.call(t,e)},i.prototype.listenerCount=O;function O(t){var e=this._events;if(e!==void 0){var n=e[t];if(typeof n=="function")return 1;if(n!==void 0)return n.length}return 0}i.prototype.eventNames=function(){return this._eventsCount>0?c(this._events):[]};function x(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t[r];return n}function q(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}function F(t){for(var e=new Array(t.length),n=0;n<e.length;++n)e[n]=t[n].listener||t[n];return e}function I(t,e){return new Promise(function(n,r){function s(o){t.removeListener(e,f),r(o)}function f(){typeof t.removeListener=="function"&&t.removeListener("error",s),n([].slice.call(arguments))}R(t,e,f,{once:!0}),e!=="error"&&U(t,s,{once:!0})})}function U(t,e,n){typeof t.on=="function"&&R(t,"error",e,n)}function R(t,e,n,r){if(typeof t.on=="function")r.once?t.once(e,n):t.on(e,n);else if(typeof t.addEventListener=="function")t.addEventListener(e,function s(f){r.once&&t.removeEventListener(e,s),n(f)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t)}return E.exports}var $=W();const H=D.getDefaultExportFromCjs($),J=(a,p=new H)=>{const c={emit:(i,...l)=>(p.emit(i.toString(),...l),c)},h=new Promise((i,l)=>{a(c,i).then(u=>u&&i(u)).catch(l)}),d=Object.assign(h,{on:(i,l)=>(p.on(i.toString(),(...u)=>l(...u)),d),once:(i,l)=>(p.once(i.toString(),(...u)=>l(...u)),d),off:(i,l)=>(p.off(i.toString(),(...u)=>l(...u)),d)});return d},B=new Set(["SUCCESS","ERROR","ABORTED"]),P=a=>B.has(a.status),M=(a,p,c)=>J((h,d)=>A(null,null,function*(){const i=yield S.getTask(a),l=T.client.socket("/generations",[i.namespaceId]);if(!l)throw new Error("Unable to get socket");l.on("generation:updated",function v(g){const L=k.transformGeneration(g);L.taskId===i.id&&(h.emit("progress",L),P(L)&&(l.off("generation:updated",v),_.getFileAsJson(a,`${L.reportId}.det.json`).then(y=>d(y)).catch(y=>{})))});const{id:u}=yield _.generateReportOfTask(a,p,c);h.emit("started",{id:u})}));N.assignDependencies(M,[S.getTask,_.generateReportOfTask,_.getFileAsJson]);function G(a,p){const c=T.client.socket("/generations",p);if(!c)throw new Error("Unable to get socket");const h=d=>a(k.transformGeneration(d));return c.on("generation:updated",h),{stop:()=>{c.off("generation:updated",h)}}}N.assignPermission(G,"GET /generations/:id",!0);exports.generateAndListenReportOfTask=M;exports.isGenerationEnded=P;exports.listenAllGenerations=G;
|
|
2
2
|
//# sourceMappingURL=generations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generations.js","sources":["../../../../node_modules/.pnpm/events@3.3.0/node_modules/events/events.js","../../src/lib/promises.ts","../../src/helpers/generations/index.ts"],"sourcesContent":["// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","// oxlint-disable-next-line prefer-node-protocol\nimport EventEmitter from 'events';\n\n// oxlint-disable-next-line no-explicit-any\ntype EventMap = Record<string, any[]>;\n\ninterface EventfulListener<Events extends EventMap> {\n on: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n once: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n off: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n}\ninterface EventfulEmitter<Events extends EventMap> {\n emit: <Name extends keyof Events>(\n eventName: Name,\n ...args: Events[Name]\n ) => this;\n}\n\nexport type EventfulPromise<Data, Events extends EventMap> = Promise<Data> &\n EventfulListener<Events>;\n\n/**\n * Attach a `EventEmitter` to a `Promise` returned by the `executor`\n *\n * @param executor Executor returning the promise. The `emitter` is passed to the executor as param.\n * @param emitter `EventEmitter` attached. By default it's a new instance.\n *\n * @returns The EventfulPromise\n */\nconst createEventfulPromise = <Data, Events extends EventMap = EventMap>(\n executor: (\n emitter: EventfulEmitter<Events>,\n resolve: (value: Data) => void\n ) => Promise<Data | void>,\n // oxlint-disable-next-line unicorn/prefer-event-target\n emitter = new EventEmitter()\n): EventfulPromise<Data, Events> => {\n const customEmitter: EventfulEmitter<Events> = {\n emit: (eventName, ...args) => {\n emitter.emit(eventName.toString(), ...args);\n return customEmitter;\n },\n };\n\n // oxlint-disable-next-line promise/avoid-new\n const promise = new Promise<Data>((resolve, reject) => {\n executor(customEmitter, resolve)\n // oxlint-disable-next-line prefer-await-to-then\n .then((res) => res && resolve(res))\n // oxlint-disable-next-line prefer-await-to-then\n .catch(reject);\n });\n\n const res: EventfulPromise<Data, Events> = Object.assign<\n Promise<Data>,\n EventfulListener<Events>\n >(promise, {\n on: (eventName, listener) => {\n emitter.on(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n once: (eventName, listener) => {\n emitter.once(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n off: (eventName, listener) => {\n emitter.off(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n });\n return res;\n};\n\nexport default createEventfulPromise;\n","import { client } from '~/lib/fetch';\nimport createEventfulPromise, { type EventfulPromise } from '~/lib/promises';\n\nimport {\n assignDependencies,\n assignPermission,\n} from '~/helpers/permissions/decorator';\n\nimport { generateReportOfTask, getFileAsJson } from '~/modules/reports/methods';\nimport type { ReportResult } from '~/modules/reports/types';\nimport { getTask } from '~/modules/tasks/methods';\nimport type { Task } from '~/modules/tasks/types';\nimport { transformGeneration } from '~/modules/generations/methods';\nimport type {\n GenerationStatus,\n Generation,\n RawGeneration,\n} from '~/modules/generations/types';\n\nexport interface GenerationStartedEvent {\n id: string;\n}\n\nexport type GenerationProgressEvent = Omit<Generation, 'task'>;\n\n// oxlint-disable-next-line no-explicit-any\ninterface GenerationEvents extends Record<string, any[]> {\n started: [GenerationStartedEvent];\n progress: [GenerationProgressEvent];\n}\n\nconst GEN_END_STATES = new Set<GenerationStatus>([\n 'SUCCESS',\n 'ERROR',\n 'ABORTED',\n]);\n\nexport const isGenerationEnded = (gen: Generation): boolean =>\n GEN_END_STATES.has(gen.status);\n\ntype ReportGenerationPromise = EventfulPromise<ReportResult, GenerationEvents>;\n\n/**\n * Start generation of a report and track progress\n *\n * @param taskOrId Task or Task's id\n * @param targets Override targets, also enable first level of debugging\n *\n * @fires #started When generation started. See `GenerationStartedEvent`.\n * @fires #progress When generation progress. See `GenerationProgressEvent`. Job's progress is\n * between 0 and 1\n *\n * @throws If job's fails. **Not if generation fails !**\n *\n * @returns When the report is ready, returns the report result\n */\nexport const generateAndListenReportOfTask = (\n taskOrId: Omit<Task, 'template'> | string,\n period?: { start: Date; end: Date },\n targets?: string[]\n): ReportGenerationPromise =>\n createEventfulPromise<ReportResult, GenerationEvents>(\n async (events, resolve) => {\n const task = await getTask(taskOrId);\n const websocket = client.socket('/generations', [task.namespaceId]);\n if (!websocket) {\n throw new Error('Unable to get socket');\n }\n\n websocket.on(\n 'generation:updated',\n function onGenerationUpdated(gen: Omit<RawGeneration, 'task'>) {\n const generation: Omit<Generation, 'task'> = transformGeneration(gen);\n // Notify progress if it's the correct task\n if (generation.taskId !== task.id) {\n return;\n }\n events.emit('progress', generation);\n\n // If generation ended, stop listening\n if (!isGenerationEnded(generation)) {\n return;\n }\n websocket.off('generation:updated', onGenerationUpdated);\n\n // And resolve result\n getFileAsJson(taskOrId, `${generation.reportId}.det.json`)\n // oxlint-disable-next-line prefer-await-to-then\n .then((result) => resolve(result))\n // oxlint-disable-next-line prefer-await-to-then\n .catch((_err) => {\n /** */\n });\n }\n );\n\n // Once events are registered, start generation\n const { id } = await generateReportOfTask(taskOrId, period, targets);\n events.emit('started', { id });\n }\n );\nassignDependencies(generateAndListenReportOfTask, [\n getTask,\n generateReportOfTask,\n getFileAsJson,\n]);\n\n/**\n * Listen to all generations\n *\n * @param onUpdate Function to call when a generation is updated\n * @param namespaces Namespaces to listen to\n *\n * @returns Function to remove listener\n */\nexport function listenAllGenerations(\n onUpdate: (generation: Omit<Generation, 'task'>) => void,\n namespaces?: string[]\n): { stop: () => void } {\n const websocket = client.socket('/generations', namespaces);\n if (!websocket) {\n throw new Error('Unable to get socket');\n }\n\n const updated = (gen: Omit<RawGeneration, 'task'>): void =>\n onUpdate(transformGeneration(gen));\n\n websocket.on('generation:updated', updated);\n\n return {\n stop: (): void => {\n websocket.off('generation:updated', updated);\n },\n };\n}\n// Applies same permissions as `GET /generations/:id`\nassignPermission(listenAllGenerations, 'GET /generations/:id', true);\n"],"names":["R","ReflectApply","target","receiver","args","ReflectOwnKeys","ProcessEmitWarning","warning","NumberIsNaN","value","EventEmitter","eventsModule","once","defaultMaxListeners","checkListener","listener","arg","n","_getMaxListeners","that","type","i","doError","events","er","err","handler","len","listeners","arrayClone","_addListener","prepend","m","existing","w","onceWrapper","_onceWrap","state","wrapped","list","position","originalListener","spliceOne","keys","key","_listeners","unwrap","evlistener","unwrapListeners","emitter","listenerCount","arr","copy","index","ret","name","resolve","reject","errorListener","resolver","eventTargetAgnosticAddListener","addErrorHandlerIfEventEmitter","flags","wrapListener","createEventfulPromise","executor","customEmitter","eventName","promise","res","params","GEN_END_STATES","isGenerationEnded","gen","generateAndListenReportOfTask","taskOrId","period","targets","__async","task","getTask","websocket","client","onGenerationUpdated","generation","transformGeneration","getFileAsJson","result","_err","id","generateReportOfTask","assignDependencies","listenAllGenerations","onUpdate","namespaces","updated","assignPermission"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"generations.js","sources":["../../../../node_modules/.pnpm/events@3.3.0/node_modules/events/events.js","../../src/lib/promises.ts","../../src/helpers/generations/index.ts"],"sourcesContent":["// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","// oxlint-disable-next-line prefer-node-protocol\nimport EventEmitter from 'events';\n\n// oxlint-disable-next-line no-explicit-any\ntype EventMap = Record<string, any[]>;\n\ninterface EventfulListener<Events extends EventMap> {\n on: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n once: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n off: <Name extends keyof Events>(\n eventName: Name,\n listener: (...args: Events[Name]) => void\n ) => this;\n}\ninterface EventfulEmitter<Events extends EventMap> {\n emit: <Name extends keyof Events>(\n eventName: Name,\n ...args: Events[Name]\n ) => this;\n}\n\nexport type EventfulPromise<Data, Events extends EventMap> = Promise<Data> &\n EventfulListener<Events>;\n\n/**\n * Attach a `EventEmitter` to a `Promise` returned by the `executor`\n *\n * @param executor Executor returning the promise. The `emitter` is passed to the executor as param.\n * @param emitter `EventEmitter` attached. By default it's a new instance.\n *\n * @returns The EventfulPromise\n */\nconst createEventfulPromise = <Data, Events extends EventMap = EventMap>(\n executor: (\n emitter: EventfulEmitter<Events>,\n resolve: (value: Data) => void\n ) => Promise<Data | void>,\n // oxlint-disable-next-line unicorn/prefer-event-target\n emitter = new EventEmitter()\n): EventfulPromise<Data, Events> => {\n const customEmitter: EventfulEmitter<Events> = {\n emit: (eventName, ...args) => {\n emitter.emit(eventName.toString(), ...args);\n return customEmitter;\n },\n };\n\n // oxlint-disable-next-line promise/avoid-new\n const promise = new Promise<Data>((resolve, reject) => {\n executor(customEmitter, resolve)\n // oxlint-disable-next-line prefer-await-to-then\n .then((res) => res && resolve(res))\n // oxlint-disable-next-line prefer-await-to-then\n .catch(reject);\n });\n\n const res: EventfulPromise<Data, Events> = Object.assign<\n Promise<Data>,\n EventfulListener<Events>\n >(promise, {\n on: (eventName, listener) => {\n emitter.on(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n once: (eventName, listener) => {\n emitter.once(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n off: (eventName, listener) => {\n emitter.off(eventName.toString(), (...params) =>\n // oxlint-disable-next-line no-explicit-any\n listener(...(params as any))\n );\n return res;\n },\n });\n return res;\n};\n\nexport default createEventfulPromise;\n","import { client } from '~/lib/fetch';\nimport createEventfulPromise, { type EventfulPromise } from '~/lib/promises';\n\nimport {\n assignDependencies,\n assignPermission,\n} from '~/helpers/permissions/decorator';\n\nimport { generateReportOfTask, getFileAsJson } from '~/modules/reports/methods';\nimport type { ReportResult } from '~/modules/reports/types';\nimport { getTask } from '~/modules/tasks/methods';\nimport type { Task } from '~/modules/tasks/types';\nimport { transformGeneration } from '~/modules/generations/methods';\nimport type {\n GenerationStatus,\n Generation,\n RawGeneration,\n} from '~/modules/generations/types';\n\nexport interface GenerationStartedEvent {\n id: string;\n}\n\nexport type GenerationProgressEvent = Omit<Generation, 'task'>;\n\n// oxlint-disable-next-line no-explicit-any\ninterface GenerationEvents extends Record<string, any[]> {\n started: [GenerationStartedEvent];\n progress: [GenerationProgressEvent];\n}\n\nconst GEN_END_STATES = new Set<GenerationStatus>([\n 'SUCCESS',\n 'ERROR',\n 'ABORTED',\n]);\n\nexport const isGenerationEnded = (gen: Generation): boolean =>\n GEN_END_STATES.has(gen.status);\n\ntype ReportGenerationPromise = EventfulPromise<ReportResult, GenerationEvents>;\n\n/**\n * Start generation of a report and track progress\n *\n * @param taskOrId Task or Task's id\n * @param targets Override targets, also enable first level of debugging\n *\n * @fires #started When generation started. See `GenerationStartedEvent`.\n * @fires #progress When generation progress. See `GenerationProgressEvent`. Job's progress is\n * between 0 and 1\n *\n * @throws If job's fails. **Not if generation fails !**\n *\n * @returns When the report is ready, returns the report result\n */\nexport const generateAndListenReportOfTask = (\n taskOrId: Omit<Task, 'template'> | string,\n period?: { start: Date; end: Date },\n targets?: string[]\n): ReportGenerationPromise =>\n createEventfulPromise<ReportResult, GenerationEvents>(\n async (events, resolve) => {\n const task = await getTask(taskOrId);\n const websocket = client.socket('/generations', [task.namespaceId]);\n if (!websocket) {\n throw new Error('Unable to get socket');\n }\n\n websocket.on(\n 'generation:updated',\n function onGenerationUpdated(gen: Omit<RawGeneration, 'task'>) {\n const generation: Omit<Generation, 'task'> = transformGeneration(gen);\n // Notify progress if it's the correct task\n if (generation.taskId !== task.id) {\n return;\n }\n events.emit('progress', generation);\n\n // If generation ended, stop listening\n if (!isGenerationEnded(generation)) {\n return;\n }\n websocket.off('generation:updated', onGenerationUpdated);\n\n // And resolve result\n getFileAsJson(taskOrId, `${generation.reportId}.det.json`)\n // oxlint-disable-next-line prefer-await-to-then\n .then((result) => resolve(result))\n // oxlint-disable-next-line prefer-await-to-then\n .catch((_err) => {\n /** */\n });\n }\n );\n\n // Once events are registered, start generation\n const { id } = await generateReportOfTask(taskOrId, period, targets);\n events.emit('started', { id });\n }\n );\nassignDependencies(generateAndListenReportOfTask, [\n getTask,\n generateReportOfTask,\n getFileAsJson,\n]);\n\n/**\n * Listen to all generations\n *\n * @param onUpdate Function to call when a generation is updated\n * @param namespaces Namespaces to listen to\n *\n * @returns Function to remove listener\n */\nexport function listenAllGenerations(\n onUpdate: (generation: Omit<Generation, 'task'>) => void,\n namespaces?: string[]\n): { stop: () => void } {\n const websocket = client.socket('/generations', namespaces);\n if (!websocket) {\n throw new Error('Unable to get socket');\n }\n\n const updated = (gen: Omit<RawGeneration, 'task'>): void =>\n onUpdate(transformGeneration(gen));\n\n websocket.on('generation:updated', updated);\n\n return {\n stop: (): void => {\n websocket.off('generation:updated', updated);\n },\n };\n}\n// Applies same permissions as `GET /generations/:id`\nassignPermission(listenAllGenerations, 'GET /generations/:id', true);\n"],"names":["R","ReflectApply","target","receiver","args","ReflectOwnKeys","ProcessEmitWarning","warning","NumberIsNaN","value","EventEmitter","eventsModule","once","defaultMaxListeners","checkListener","listener","arg","n","_getMaxListeners","that","type","i","doError","events","er","err","handler","len","listeners","arrayClone","_addListener","prepend","m","existing","w","onceWrapper","_onceWrap","state","wrapped","list","position","originalListener","spliceOne","keys","key","_listeners","unwrap","evlistener","unwrapListeners","emitter","listenerCount","arr","copy","index","ret","name","resolve","reject","errorListener","resolver","eventTargetAgnosticAddListener","addErrorHandlerIfEventEmitter","flags","wrapListener","createEventfulPromise","executor","customEmitter","eventName","promise","res","params","GEN_END_STATES","isGenerationEnded","gen","generateAndListenReportOfTask","taskOrId","period","targets","__async","task","getTask","websocket","client","onGenerationUpdated","generation","transformGeneration","getFileAsJson","result","_err","id","generateReportOfTask","assignDependencies","listenAllGenerations","onUpdate","namespaces","updated","assignPermission"],"mappings":"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","x_google_ignoreList":[0]}
|