@mp-front/common 0.0.2-next.2 → 0.0.2-next.3

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.
@@ -0,0 +1 @@
1
+ "use strict";var L=Object.defineProperty;var P=(c,e,t)=>e in c?L(c,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):c[e]=t;var o=(c,e,t)=>P(c,typeof e!="symbol"?e+"":e,t);const i=require("rxjs"),q=require("./logger-BMbeDoGU.cjs");require("./lodash-DNCgFYS7.cjs");require("node-jose");require("crypto");const l=require("./default-errors-DiEIEEE2.cjs"),y=require("./fetch-BZP9DZLg.cjs"),x=require("./authorization-service-DkLS18Us.cjs"),$=require("./encoder-BEp9qfLf.cjs"),p=require("./loading-handler-BrN0O37N.cjs"),B=require("./v5-BTqP79vV.cjs");class R{constructor(e={}){o(this,"logger",new q.Logger);o(this,"headers");this.headers={Accept:"application/json","Content-Type":"application/vnd.api+json",...e}}addTokenBackend(e){return this.logger.logDebug("addTokenBackend HttpHeaders",JSON.stringify(e)),new x.AuthorizationService().get().pipe(i.switchMap(t=>i.of({...e,Authorization:`Bearer ${t}`})))}get(e){this.logger.logDebug("get HttpHeaders");const t=i.of({...this.headers});return e?t.pipe(i.switchMap(s=>this.addTokenBackend(s))):t}}const J=process.env.ID_FRONT??"NOT_AVAILABLE";class I{constructor(){o(this,"httpHeaders",new R);o(this,"logger",new q.Logger)}errorCatcher(e,t){var s,r,n;if(e!=null&&e.errors)throw new l.RuntimeError(((n=(r=(s=e.errors).at)==null?void 0:r.call(s,0))==null?void 0:n.code)??l.RuntimeErrorCode.DEFAULT,t??"");return!(e!=null&&e.errors)}get(e,t={}){const s=this.buildRequest("GET",e,null,t);return this.request(s)}post(e,t,s={}){const r=this.buildRequest("POST",e,t,s);return this.request(r)}put(e,t,s={}){const r=this.buildRequest("PUT",e,t,s);return this.request(r)}delete(e,t={}){const s=this.buildRequest("DELETE",e,null,t);return this.request(s)}formatParams(e,t){return JSON.stringify(t==="JSON:API"?{data:{type:J,attributes:e}}:e)}buildRequest(e,t,s,r){const n=r.format??"JSON:API",a={requestID:r==null?void 0:r.requestID,withCredentials:(r==null?void 0:r.withCredentials)??!0,url:t,headers:r.headers,method:e,selector:u=>u.json()};if(e==="GET"){const u=new URL(t);if(r.params)for(const g of Object.keys(r.params))u.searchParams.append(g,`${r.params[g]}`);return{...a,url:u.toString()}}return{...a,body:this.formatParams(s,n)}}request({url:e,requestID:t,withCredentials:s=!1,...r}){return this.httpHeaders.get(s).pipe(i.switchMap(n=>y.fromFetch(e,{...r,headers:{...r.headers,...n}}).pipe(i.catchError(a=>{throw this.logger.logError(JSON.stringify(a)),this.logger.logError(`HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(n)} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(this.formatParams(r.body,r.format))} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(a)} \x1B[33m`),new l.RuntimeError(l.RuntimeErrorCode.DEFAULT,t)}),i.switchMap(a=>(this.logger.logDebug(`HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(n)} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(this.formatParams(r.body,r.format))} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(a)} \x1B[33m`),i.of(a))))),i.filter(n=>this.errorCatcher(n,t)))}}const H="requestID",O="Content-Type";class A{constructor(){o(this,"httpHeaders",new R);o(this,"logger",new q.Logger);o(this,"encoder",new $.Encoder);o(this,"isLoadingEnabled",!0)}setIsLoadingEnabled(e){this.isLoadingEnabled=e}get(e,t={}){const s=this.buildRequest("GET",e,null,t);return this.request(s)}post(e,t,s={}){const r=this.buildRequest("POST",e,t,s);return this.request(r)}put(e,t,s={}){const r=this.buildRequest("PUT",e,t,s);return this.request(r)}patch(e,t,s={}){const r=this.buildRequest("PATCH",e,t,s);return this.request(r)}delete(e,t={}){const s=this.buildRequest("DELETE",e,null,t);return this.request(s)}buildRequest(e,t,s,r){const a=new URLSearchParams(window.location.search).get("flow")??"N/A",u={url:t,headers:{...r.headers,flow:a},method:e,selector:d=>d.json()},g=new Date().toISOString(),E=B.v5(g,B.v5.URL);if(e==="GET"){const d=new URL(t,location.origin),f=r.params??{},w=Object.entries(f).reduce((h,N)=>{const[m,D]=N;if(h[m]=`${D}`,Object.hasOwn(f,m)){const S=f[m];S!=null&&(h[m]=S)}return h},{}),T=this.encoder.encode(w,E),b=JSON.parse(T);for(const h of Object.keys(b))d.searchParams.append(h,`${b[h]}`);return{...u,url:d.toString()}}if(new Headers(r.headers).get("Content-Type")==="multipart/form-data"){const d=s;return d.append(H,E),{...u,body:d}}return{...u,body:this.encoder.encode(s??{},E)}}request({url:e,...t}){return p.LoadingHandler.getInstance().setSubject(this.isLoadingEnabled),this.httpHeaders.get(!1).pipe(i.switchMap(s=>{const r={...s,...t.headers};return O in r&&r[O]==="multipart/form-data"&&delete r[O],y.fromFetch(e,{...t,headers:r}).pipe(i.switchMap(n=>i.of(this.encoder.decode(n))),i.switchMap(n=>{if("code"in n)throw n;return p.LoadingHandler.getInstance().setSubject(!1),this.logger.logDebug(`HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(r)} <BODY> ${JSON.stringify(t.body)} <RESPONSE>: ${JSON.stringify(n)}`),i.of(n)}),i.catchError(n=>(this.logger.logError(`HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(r)} <BODY> ${JSON.stringify(t.body)} <ERROR>: ${JSON.stringify(n)}`),p.LoadingHandler.getInstance().setSubject(!1),l.ErrorHandler.getInstance().setSubject(n),i.EMPTY)))}))}}exports.HttpBackend=I;exports.HttpClient=A;exports.HttpHeaders=R;exports.REQUEST_ID_KEY=H;
@@ -1,20 +1,20 @@
1
1
  var L = Object.defineProperty;
2
- var P = (o, e, t) => e in o ? L(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
3
- var i = (o, e, t) => P(o, typeof e != "symbol" ? e + "" : e, t);
4
- import { switchMap as d, of as m, catchError as T, filter as w, EMPTY as J } from "rxjs";
5
- import { L as O } from "./logger-DtlFWyFO.js";
2
+ var $ = (o, e, t) => e in o ? L(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
3
+ var i = (o, e, t) => $(o, typeof e != "symbol" ? e + "" : e, t);
4
+ import { switchMap as d, of as h, catchError as q, filter as J, EMPTY as A } from "rxjs";
5
+ import { L as R } from "./logger-DtlFWyFO.js";
6
6
  import "./lodash-QjAkD17S.js";
7
7
  import "node-jose";
8
8
  import "crypto";
9
- import { R, a as B, E as I } from "./default-errors-DsKmUZbG.js";
9
+ import { R as B, a as y, E as I } from "./default-errors-DsKmUZbG.js";
10
10
  import { f as N } from "./fetch-CUIb9XhZ.js";
11
- import { A } from "./authorization-service-DE-hoYji.js";
12
- import { E as k } from "./encoder-CXAlLf5T.js";
13
- import { L as p } from "./loading-handler-ivYFmS_V.js";
14
- import { v as y } from "./v5-Cu1sjPlx.js";
15
- class q {
11
+ import { A as k } from "./authorization-service-DE-hoYji.js";
12
+ import { E as j } from "./encoder-CXAlLf5T.js";
13
+ import { L as S } from "./loading-handler-ivYFmS_V.js";
14
+ import { v as T } from "./v5-Cu1sjPlx.js";
15
+ class H {
16
16
  constructor(e = {}) {
17
- i(this, "logger", new O());
17
+ i(this, "logger", new R());
18
18
  i(this, "headers");
19
19
  this.headers = {
20
20
  Accept: "application/json",
@@ -23,29 +23,29 @@ class q {
23
23
  };
24
24
  }
25
25
  addTokenBackend(e) {
26
- return this.logger.logDebug("addTokenBackend HttpHeaders", JSON.stringify(e)), new A().get().pipe(
27
- d((t) => m({ ...e, Authorization: `Bearer ${t}` }))
26
+ return this.logger.logDebug("addTokenBackend HttpHeaders", JSON.stringify(e)), new k().get().pipe(
27
+ d((t) => h({ ...e, Authorization: `Bearer ${t}` }))
28
28
  );
29
29
  }
30
30
  get(e) {
31
31
  this.logger.logDebug("get HttpHeaders");
32
- const t = m({ ...this.headers });
32
+ const t = h({ ...this.headers });
33
33
  return e ? t.pipe(
34
34
  d((s) => this.addTokenBackend(s))
35
35
  ) : t;
36
36
  }
37
37
  }
38
- const j = process.env.ID_FRONT ?? "NOT_AVAILABLE";
39
- class Z {
38
+ const U = process.env.ID_FRONT ?? "NOT_AVAILABLE";
39
+ class te {
40
40
  constructor() {
41
- i(this, "httpHeaders", new q());
42
- i(this, "logger", new O());
41
+ i(this, "httpHeaders", new H());
42
+ i(this, "logger", new R());
43
43
  }
44
44
  errorCatcher(e, t) {
45
45
  var s, r, a;
46
46
  if (e != null && e.errors)
47
- throw new R(
48
- ((a = (r = (s = e.errors).at) == null ? void 0 : r.call(s, 0)) == null ? void 0 : a.code) ?? B.DEFAULT,
47
+ throw new B(
48
+ ((a = (r = (s = e.errors).at) == null ? void 0 : r.call(s, 0)) == null ? void 0 : a.code) ?? y.DEFAULT,
49
49
  t ?? ""
50
50
  );
51
51
  return !(e != null && e.errors);
@@ -69,7 +69,7 @@ class Z {
69
69
  formatParams(e, t) {
70
70
  return JSON.stringify(t === "JSON:API" ? {
71
71
  data: {
72
- type: j,
72
+ type: U,
73
73
  attributes: e
74
74
  }
75
75
  } : e);
@@ -89,8 +89,8 @@ class Z {
89
89
  if (e === "GET") {
90
90
  const u = new URL(t);
91
91
  if (r.params)
92
- for (const g of Object.keys(r.params))
93
- u.searchParams.append(g, `${r.params[g]}`);
92
+ for (const m of Object.keys(r.params))
93
+ u.searchParams.append(m, `${r.params[m]}`);
94
94
  return { ...n, url: u.toString() };
95
95
  }
96
96
  return { ...n, body: this.formatParams(s, a) };
@@ -110,14 +110,14 @@ class Z {
110
110
  ...a
111
111
  }
112
112
  }).pipe(
113
- T((n) => {
113
+ q((n) => {
114
114
  throw this.logger.logError(JSON.stringify(n)), this.logger.logError(
115
115
  `HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(
116
116
  a
117
117
  )} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(
118
118
  this.formatParams(r.body, r.format)
119
119
  )} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(n)} \x1B[33m`
120
- ), new R(B.DEFAULT, t);
120
+ ), new B(y.DEFAULT, t);
121
121
  }),
122
122
  d((n) => (this.logger.logDebug(
123
123
  `HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(
@@ -125,19 +125,19 @@ class Z {
125
125
  )} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(
126
126
  this.formatParams(r.body, r.format)
127
127
  )} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(n)} \x1B[33m`
128
- ), m(n)))
128
+ ), h(n)))
129
129
  )
130
130
  ),
131
- w((a) => this.errorCatcher(a, t))
131
+ J((a) => this.errorCatcher(a, t))
132
132
  );
133
133
  }
134
134
  }
135
- const U = "requestID", S = "Content-Type";
136
- class ee {
135
+ const Y = "requestID", O = "Content-Type";
136
+ class re {
137
137
  constructor() {
138
- i(this, "httpHeaders", new q());
139
- i(this, "logger", new O());
140
- i(this, "encoder", new k());
138
+ i(this, "httpHeaders", new H());
139
+ i(this, "logger", new R());
140
+ i(this, "encoder", new j());
141
141
  i(this, "isLoadingEnabled", !0);
142
142
  }
143
143
  /**
@@ -237,70 +237,70 @@ class ee {
237
237
  * Building configuration object request
238
238
  */
239
239
  buildRequest(e, t, s, r) {
240
- const a = {
240
+ const n = new URLSearchParams(window.location.search).get("flow") ?? "N/A", u = {
241
241
  url: t,
242
- headers: r.headers,
242
+ headers: { ...r.headers, flow: n },
243
243
  method: e,
244
244
  selector: (c) => c.json()
245
- }, n = (/* @__PURE__ */ new Date()).toISOString(), u = y(n, y.URL);
245
+ }, m = (/* @__PURE__ */ new Date()).toISOString(), f = T(m, T.URL);
246
246
  if (e === "GET") {
247
- const c = new URL(t, location.origin), E = r.params ?? {}, H = Object.entries(E).reduce((h, x) => {
248
- const [l, $] = x;
249
- if (h[l] = `${$}`, Object.hasOwn(E, l)) {
250
- const f = E[l];
251
- f != null && (h[l] = f);
247
+ const c = new URL(t, location.origin), E = r.params ?? {}, w = Object.entries(E).reduce((l, P) => {
248
+ const [g, x] = P;
249
+ if (l[g] = `${x}`, Object.hasOwn(E, g)) {
250
+ const p = E[g];
251
+ p != null && (l[g] = p);
252
252
  }
253
- return h;
254
- }, {}), D = this.encoder.encode(H, u), b = JSON.parse(D);
255
- for (const h of Object.keys(b))
256
- c.searchParams.append(h, `${b[h]}`);
257
- return { ...a, url: c.toString() };
253
+ return l;
254
+ }, {}), D = this.encoder.encode(w, f), b = JSON.parse(D);
255
+ for (const l of Object.keys(b))
256
+ c.searchParams.append(l, `${b[l]}`);
257
+ return { ...u, url: c.toString() };
258
258
  }
259
259
  if (new Headers(r.headers).get("Content-Type") === "multipart/form-data") {
260
260
  const c = s;
261
- return c.append(U, u), {
262
- ...a,
261
+ return c.append(Y, f), {
262
+ ...u,
263
263
  body: c
264
264
  };
265
265
  }
266
266
  return {
267
- ...a,
268
- body: this.encoder.encode(s ?? {}, u)
267
+ ...u,
268
+ body: this.encoder.encode(s ?? {}, f)
269
269
  };
270
270
  }
271
271
  request({
272
272
  url: e,
273
273
  ...t
274
274
  }) {
275
- return p.getInstance().setSubject(this.isLoadingEnabled), this.httpHeaders.get(!1).pipe(
275
+ return S.getInstance().setSubject(this.isLoadingEnabled), this.httpHeaders.get(!1).pipe(
276
276
  d((s) => {
277
277
  const r = {
278
278
  ...s,
279
279
  ...t.headers
280
280
  };
281
- return S in r && r[S] === "multipart/form-data" && delete r[S], N(e, {
281
+ return O in r && r[O] === "multipart/form-data" && delete r[O], N(e, {
282
282
  ...t,
283
283
  headers: r
284
284
  }).pipe(
285
- d((a) => m(this.encoder.decode(a))),
285
+ d((a) => h(this.encoder.decode(a))),
286
286
  d((a) => {
287
287
  if ("code" in a)
288
288
  throw a;
289
- return p.getInstance().setSubject(!1), this.logger.logDebug(
290
- `HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(t.headers)} <BODY> ${JSON.stringify(t.body)} <RESPONSE>: ${JSON.stringify(a)}`
291
- ), m(a);
289
+ return S.getInstance().setSubject(!1), this.logger.logDebug(
290
+ `HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(r)} <BODY> ${JSON.stringify(t.body)} <RESPONSE>: ${JSON.stringify(a)}`
291
+ ), h(a);
292
292
  }),
293
- T((a) => (this.logger.logError(
294
- `HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(t.headers)} <BODY> ${JSON.stringify(t.body)} <ERROR>: ${JSON.stringify(a)}`
295
- ), p.getInstance().setSubject(!1), I.getInstance().setSubject(a), J))
293
+ q((a) => (this.logger.logError(
294
+ `HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(r)} <BODY> ${JSON.stringify(t.body)} <ERROR>: ${JSON.stringify(a)}`
295
+ ), S.getInstance().setSubject(!1), I.getInstance().setSubject(a), A))
296
296
  );
297
297
  })
298
298
  );
299
299
  }
300
300
  }
301
301
  export {
302
- q as H,
303
- U as R,
304
- Z as a,
305
- ee as b
302
+ H,
303
+ Y as R,
304
+ te as a,
305
+ re as b
306
306
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAKtC,OAAO,KAAK,EAAE,WAAW,EAAyB,MAAM,cAAc,CAAA;AAMtE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAExC,OAAO,CAAC,gBAAgB,CAAgB;IAExC;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,OAAO;IAI7C;;;;;;;;;;;;;;;OAeG;IACI,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,UAAU,CAAC,CAAC,CAAC;IAKpE;;;;;;;;;;;;;;;;OAgBG;IACI,IAAI,CAAC,CAAC,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;;OAQG;IACI,GAAG,CAAC,CAAC,EACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;;OAQG;IACI,KAAK,CAAC,CAAC,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;OAOG;IACI,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,UAAU,CAAC,CAAC,CAAC;IAKvE;;OAEG;IACH,OAAO,CAAC,YAAY;IA8DpB,OAAO,CAAC,OAAO;CA+ChB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAKtC,OAAO,KAAK,EAAE,WAAW,EAAyB,MAAM,cAAc,CAAA;AAMtE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAExC,OAAO,CAAC,gBAAgB,CAAgB;IAExC;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,OAAO;IAI7C;;;;;;;;;;;;;;;OAeG;IACI,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,UAAU,CAAC,CAAC,CAAC;IAKpE;;;;;;;;;;;;;;;;OAgBG;IACI,IAAI,CAAC,CAAC,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;;OAQG;IACI,GAAG,CAAC,CAAC,EACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;;OAQG;IACI,KAAK,CAAC,CAAC,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,GAAG,EACT,OAAO,GAAE,WAAgB,GACxB,UAAU,CAAC,CAAC,CAAC;IAKhB;;;;;;;OAOG;IACI,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,UAAU,CAAC,CAAC,CAAC;IAKvE;;OAEG;IACH,OAAO,CAAC,YAAY;IAgEpB,OAAO,CAAC,OAAO;CA+ChB"}
@@ -1 +1 @@
1
- "use strict";var m=Object.defineProperty;var h=(u,t,r)=>t in u?m(u,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):u[t]=r;var l=(u,t,r)=>h(u,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./default-errors-DiEIEEE2.cjs"),E=require("./i18n-vIm9wuAG.cjs"),D=require("./client-AVep4jK5.cjs"),e=require("rxjs"),f=require("./logger-BMbeDoGU.cjs"),R=require("./encoder-BEp9qfLf.cjs");require("node-jose");require("crypto");class S{constructor(){l(this,"encoder",new R.Encoder);l(this,"logger",new f.Logger);l(this,"requestID","");l(this,"session",null)}setSession(t){this.session=t}getSession(){if(!this.session)throw new d.RuntimeError(d.RuntimeErrorCode.AUTHENTICATION_ERROR,this.requestID);return this.session}returnData(t,r){const s=this.encoder.encode(t,r);return new Response(s,{status:200})}returnError(t){return new Response(JSON.stringify(t),{status:520})}async getBody(t){if(t.method==="GET"){const{searchParams:n}=new URL(t.url);if(n!=null&&n.entries()){const i=[...n.entries()].reduce((a,[g,c])=>(a[g]=c,a),{}),o=i.requestID??"";return{data:i,requestID:o}}return{data:{},requestID:""}}const r=await t.json(),s=(r==null?void 0:r.requestID)??"";return{data:r,requestID:s}}transformFormData(t){return t.entries().reduce((r,s)=>{const[n,i]=s;return D.REQUEST_ID_KEY===n?r:i instanceof File?(r.files=[...r.files,i],r):(r.params[n]=i,r)},{params:{},files:[]})}get(t){return this.logger.logDebug("get ApiMiddleware"),async r=>{const{data:s,requestID:n}=await this.getBody(r);this.logger.logDebug("return ApiMiddleware",JSON.stringify(s)),this.requestID=n;try{const i=await e.firstValueFrom(e.of(r).pipe(e.switchMap(o=>e.forkJoin({params:e.of(this.encoder.decode(s)),headers:e.of(o.headers)})),e.switchMap(({params:o,headers:a})=>e.forkJoin({response:t({params:o,requestID:this.requestID,headers:a}),headers:e.of(a),params:e.of(o)})),e.switchMap(({params:o,response:a,headers:g})=>(this.logger.logDebug(`ApiMiddleware \\x1b[37m <URL>: \\x1b[33m ${r.url} \\x1b[37m <HEADERS>: \\x1b[33m ${JSON.stringify(g)} \\x1b[37m <REQUEST ID> \\x1b[33m ${this.requestID} \\x1b[37m <PARAMS> \\x1b[33m ${JSON.stringify(o)} \\x1b[37m <RESPONSE>: \\x1b[33m ${JSON.stringify(a)}`),e.of(a)))));return this.logger.logDebug("ApiMiddleware subscribe next",JSON.stringify(i)),this.returnData(i,this.requestID)}catch(i){return this.logger.logError(`ApiMiddleware <URL>: ${r==null?void 0:r.url} <HEADERS>: ${JSON.stringify(r==null?void 0:r.headers)} <REQUEST ID> ${this.requestID} <PARAMS> ${JSON.stringify(r==null?void 0:r.body)} <ERROR>: ${JSON.stringify(i)}`),this.returnError({...i,requestID:this.requestID})}}}getFormData(t){return this.logger.logDebug("get FormData ApiMiddleware"),async r=>{try{const s=await r.formData(),{params:n,files:i}=this.transformFormData(s);this.requestID=s.get("requestID");const o=r.headers,a=await e.firstValueFrom(t({params:n,headers:o,files:i,requestID:this.requestID}).pipe(e.switchMap(g=>(this.logger.logDebug(`ApiMiddleware FormData \\x1b[37m <URL>: \\x1b[33m ${r.url} \\x1b[37m <HEADERS>: \\x1b[33m ${JSON.stringify(o)} \\x1b[37m <REQUEST ID> \\x1b[33m ${this.requestID} \\x1b[37m <PARAMS> \\x1b[33m ${JSON.stringify(n)} \\x1b[37m <RESPONSE>: \\x1b[33m ${JSON.stringify(g)}`),e.of(g)))));return this.returnData(a,this.requestID)}catch(s){return this.logger.logError(`ApiMiddleware FormData <URL>: ${r==null?void 0:r.url} <HEADERS>: ${JSON.stringify(r==null?void 0:r.headers)} <REQUEST ID> ${this.requestID} <PARAMS> ${JSON.stringify(r==null?void 0:r.body)} <ERROR>: ${JSON.stringify(s)}`),this.returnError({...s,requestID:this.requestID})}}}}exports.ErrorHandler=d.ErrorHandler;exports.RuntimeError=d.RuntimeError;exports.RuntimeErrorCode=d.RuntimeErrorCode;exports.commonErrors=d.commonErrors;exports.errorTranslations=E.translation;exports.HttpBackend=D.HttpBackend;exports.HttpClient=D.HttpClient;exports.HttpHeaders=D.HttpHeaders;exports.ApiMiddleware=S;
1
+ "use strict";var m=Object.defineProperty;var h=(u,t,r)=>t in u?m(u,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):u[t]=r;var l=(u,t,r)=>h(u,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("./default-errors-DiEIEEE2.cjs"),E=require("./i18n-vIm9wuAG.cjs"),D=require("./client-BVRZoMxq.cjs"),e=require("rxjs"),f=require("./logger-BMbeDoGU.cjs"),R=require("./encoder-BEp9qfLf.cjs");require("node-jose");require("crypto");class S{constructor(){l(this,"encoder",new R.Encoder);l(this,"logger",new f.Logger);l(this,"requestID","");l(this,"session",null)}setSession(t){this.session=t}getSession(){if(!this.session)throw new d.RuntimeError(d.RuntimeErrorCode.AUTHENTICATION_ERROR,this.requestID);return this.session}returnData(t,r){const s=this.encoder.encode(t,r);return new Response(s,{status:200})}returnError(t){return new Response(JSON.stringify(t),{status:520})}async getBody(t){if(t.method==="GET"){const{searchParams:n}=new URL(t.url);if(n!=null&&n.entries()){const i=[...n.entries()].reduce((a,[g,c])=>(a[g]=c,a),{}),o=i.requestID??"";return{data:i,requestID:o}}return{data:{},requestID:""}}const r=await t.json(),s=(r==null?void 0:r.requestID)??"";return{data:r,requestID:s}}transformFormData(t){return t.entries().reduce((r,s)=>{const[n,i]=s;return D.REQUEST_ID_KEY===n?r:i instanceof File?(r.files=[...r.files,i],r):(r.params[n]=i,r)},{params:{},files:[]})}get(t){return this.logger.logDebug("get ApiMiddleware"),async r=>{const{data:s,requestID:n}=await this.getBody(r);this.logger.logDebug("return ApiMiddleware",JSON.stringify(s)),this.requestID=n;try{const i=await e.firstValueFrom(e.of(r).pipe(e.switchMap(o=>e.forkJoin({params:e.of(this.encoder.decode(s)),headers:e.of(o.headers)})),e.switchMap(({params:o,headers:a})=>e.forkJoin({response:t({params:o,requestID:this.requestID,headers:a}),headers:e.of(a),params:e.of(o)})),e.switchMap(({params:o,response:a,headers:g})=>(this.logger.logDebug(`ApiMiddleware \\x1b[37m <URL>: \\x1b[33m ${r.url} \\x1b[37m <HEADERS>: \\x1b[33m ${JSON.stringify(g)} \\x1b[37m <REQUEST ID> \\x1b[33m ${this.requestID} \\x1b[37m <PARAMS> \\x1b[33m ${JSON.stringify(o)} \\x1b[37m <RESPONSE>: \\x1b[33m ${JSON.stringify(a)}`),e.of(a)))));return this.logger.logDebug("ApiMiddleware subscribe next",JSON.stringify(i)),this.returnData(i,this.requestID)}catch(i){return this.logger.logError(`ApiMiddleware <URL>: ${r==null?void 0:r.url} <HEADERS>: ${JSON.stringify(r==null?void 0:r.headers)} <REQUEST ID> ${this.requestID} <PARAMS> ${JSON.stringify(r==null?void 0:r.body)} <ERROR>: ${JSON.stringify(i)}`),this.returnError({...i,requestID:this.requestID})}}}getFormData(t){return this.logger.logDebug("get FormData ApiMiddleware"),async r=>{try{const s=await r.formData(),{params:n,files:i}=this.transformFormData(s);this.requestID=s.get("requestID");const o=r.headers,a=await e.firstValueFrom(t({params:n,headers:o,files:i,requestID:this.requestID}).pipe(e.switchMap(g=>(this.logger.logDebug(`ApiMiddleware FormData \\x1b[37m <URL>: \\x1b[33m ${r.url} \\x1b[37m <HEADERS>: \\x1b[33m ${JSON.stringify(o)} \\x1b[37m <REQUEST ID> \\x1b[33m ${this.requestID} \\x1b[37m <PARAMS> \\x1b[33m ${JSON.stringify(n)} \\x1b[37m <RESPONSE>: \\x1b[33m ${JSON.stringify(g)}`),e.of(g)))));return this.returnData(a,this.requestID)}catch(s){return this.logger.logError(`ApiMiddleware FormData <URL>: ${r==null?void 0:r.url} <HEADERS>: ${JSON.stringify(r==null?void 0:r.headers)} <REQUEST ID> ${this.requestID} <PARAMS> ${JSON.stringify(r==null?void 0:r.body)} <ERROR>: ${JSON.stringify(s)}`),this.returnError({...s,requestID:this.requestID})}}}}exports.ErrorHandler=d.ErrorHandler;exports.RuntimeError=d.RuntimeError;exports.RuntimeErrorCode=d.RuntimeErrorCode;exports.commonErrors=d.commonErrors;exports.errorTranslations=E.translation;exports.HttpBackend=D.HttpBackend;exports.HttpClient=D.HttpClient;exports.HttpHeaders=D.HttpHeaders;exports.ApiMiddleware=S;
@@ -4,8 +4,8 @@ var m = (u, r, t) => E(u, typeof r != "symbol" ? r + "" : r, t);
4
4
  import { R, a as c } from "./default-errors-DsKmUZbG.js";
5
5
  import { E as U, c as T } from "./default-errors-DsKmUZbG.js";
6
6
  import { t as L } from "./i18n-CEBemBIX.js";
7
- import { R as S } from "./client-DuXI9Ldu.js";
8
- import { a as Q, b as k, H as B } from "./client-DuXI9Ldu.js";
7
+ import { R as S } from "./client-tR6FxOAG.js";
8
+ import { a as Q, b as k, H as B } from "./client-tR6FxOAG.js";
9
9
  import { firstValueFrom as d, of as a, switchMap as D, forkJoin as l } from "rxjs";
10
10
  import { L as b } from "./logger-DtlFWyFO.js";
11
11
  import { E as I } from "./encoder-CXAlLf5T.js";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./client-AVep4jK5.cjs");exports.HttpBackend=t.HttpBackend;exports.HttpClient=t.HttpClient;exports.HttpHeaders=t.HttpHeaders;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./client-BVRZoMxq.cjs");exports.HttpBackend=t.HttpBackend;exports.HttpClient=t.HttpClient;exports.HttpHeaders=t.HttpHeaders;
@@ -1,4 +1,4 @@
1
- import { a as e, b as H, H as p } from "./client-DuXI9Ldu.js";
1
+ import { a as e, b as H, H as p } from "./client-tR6FxOAG.js";
2
2
  export {
3
3
  e as HttpBackend,
4
4
  H as HttpClient,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mp-front/common",
3
- "version": "0.0.2-next.2",
3
+ "version": "0.0.2-next.3",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/mp-front-common-all.cjs",
@@ -1 +0,0 @@
1
- "use strict";var D=Object.defineProperty;var x=(o,e,t)=>e in o?D(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var c=(o,e,t)=>x(o,typeof e!="symbol"?e+"":e,t);const i=require("rxjs"),O=require("./logger-BMbeDoGU.cjs");require("./lodash-DNCgFYS7.cjs");require("node-jose");require("crypto");const l=require("./default-errors-DiEIEEE2.cjs"),B=require("./fetch-BZP9DZLg.cjs"),L=require("./authorization-service-DkLS18Us.cjs"),$=require("./encoder-BEp9qfLf.cjs"),S=require("./loading-handler-BrN0O37N.cjs"),b=require("./v5-BTqP79vV.cjs");class q{constructor(e={}){c(this,"logger",new O.Logger);c(this,"headers");this.headers={Accept:"application/json","Content-Type":"application/vnd.api+json",...e}}addTokenBackend(e){return this.logger.logDebug("addTokenBackend HttpHeaders",JSON.stringify(e)),new L.AuthorizationService().get().pipe(i.switchMap(t=>i.of({...e,Authorization:`Bearer ${t}`})))}get(e){this.logger.logDebug("get HttpHeaders");const t=i.of({...this.headers});return e?t.pipe(i.switchMap(s=>this.addTokenBackend(s))):t}}const P=process.env.ID_FRONT??"NOT_AVAILABLE";class J{constructor(){c(this,"httpHeaders",new q);c(this,"logger",new O.Logger)}errorCatcher(e,t){var s,r,n;if(e!=null&&e.errors)throw new l.RuntimeError(((n=(r=(s=e.errors).at)==null?void 0:r.call(s,0))==null?void 0:n.code)??l.RuntimeErrorCode.DEFAULT,t??"");return!(e!=null&&e.errors)}get(e,t={}){const s=this.buildRequest("GET",e,null,t);return this.request(s)}post(e,t,s={}){const r=this.buildRequest("POST",e,t,s);return this.request(r)}put(e,t,s={}){const r=this.buildRequest("PUT",e,t,s);return this.request(r)}delete(e,t={}){const s=this.buildRequest("DELETE",e,null,t);return this.request(s)}formatParams(e,t){return JSON.stringify(t==="JSON:API"?{data:{type:P,attributes:e}}:e)}buildRequest(e,t,s,r){const n=r.format??"JSON:API",a={requestID:r==null?void 0:r.requestID,withCredentials:(r==null?void 0:r.withCredentials)??!0,url:t,headers:r.headers,method:e,selector:u=>u.json()};if(e==="GET"){const u=new URL(t);if(r.params)for(const E of Object.keys(r.params))u.searchParams.append(E,`${r.params[E]}`);return{...a,url:u.toString()}}return{...a,body:this.formatParams(s,n)}}request({url:e,requestID:t,withCredentials:s=!1,...r}){return this.httpHeaders.get(s).pipe(i.switchMap(n=>B.fromFetch(e,{...r,headers:{...r.headers,...n}}).pipe(i.catchError(a=>{throw this.logger.logError(JSON.stringify(a)),this.logger.logError(`HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(n)} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(this.formatParams(r.body,r.format))} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(a)} \x1B[33m`),new l.RuntimeError(l.RuntimeErrorCode.DEFAULT,t)}),i.switchMap(a=>(this.logger.logDebug(`HttpBackend \x1B[37m <URL>: \x1B[33m ${e} \x1B[37m <RequestID>: \x1B[33m ${t} \x1B[37m <HEADERS>: \x1B[33m ${JSON.stringify(n)} \x1B[37m <BODY>: \x1B[33m ${JSON.stringify(this.formatParams(r.body,r.format))} \x1B[37m <RESPONSE>: \x1B[33m ${JSON.stringify(a)} \x1B[33m`),i.of(a))))),i.filter(n=>this.errorCatcher(n,t)))}}const y="requestID",p="Content-Type";class I{constructor(){c(this,"httpHeaders",new q);c(this,"logger",new O.Logger);c(this,"encoder",new $.Encoder);c(this,"isLoadingEnabled",!0)}setIsLoadingEnabled(e){this.isLoadingEnabled=e}get(e,t={}){const s=this.buildRequest("GET",e,null,t);return this.request(s)}post(e,t,s={}){const r=this.buildRequest("POST",e,t,s);return this.request(r)}put(e,t,s={}){const r=this.buildRequest("PUT",e,t,s);return this.request(r)}patch(e,t,s={}){const r=this.buildRequest("PATCH",e,t,s);return this.request(r)}delete(e,t={}){const s=this.buildRequest("DELETE",e,null,t);return this.request(s)}buildRequest(e,t,s,r){const n={url:t,headers:r.headers,method:e,selector:d=>d.json()},a=new Date().toISOString(),u=b.v5(a,b.v5.URL);if(e==="GET"){const d=new URL(t,location.origin),m=r.params??{},H=Object.entries(m).reduce((h,N)=>{const[g,w]=N;if(h[g]=`${w}`,Object.hasOwn(m,g)){const f=m[g];f!=null&&(h[g]=f)}return h},{}),T=this.encoder.encode(H,u),R=JSON.parse(T);for(const h of Object.keys(R))d.searchParams.append(h,`${R[h]}`);return{...n,url:d.toString()}}if(new Headers(r.headers).get("Content-Type")==="multipart/form-data"){const d=s;return d.append(y,u),{...n,body:d}}return{...n,body:this.encoder.encode(s??{},u)}}request({url:e,...t}){return S.LoadingHandler.getInstance().setSubject(this.isLoadingEnabled),this.httpHeaders.get(!1).pipe(i.switchMap(s=>{const r={...s,...t.headers};return p in r&&r[p]==="multipart/form-data"&&delete r[p],B.fromFetch(e,{...t,headers:r}).pipe(i.switchMap(n=>i.of(this.encoder.decode(n))),i.switchMap(n=>{if("code"in n)throw n;return S.LoadingHandler.getInstance().setSubject(!1),this.logger.logDebug(`HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(t.headers)} <BODY> ${JSON.stringify(t.body)} <RESPONSE>: ${JSON.stringify(n)}`),i.of(n)}),i.catchError(n=>(this.logger.logError(`HttpClient <URL>: ${e} <HEADERS>: ${JSON.stringify(t.headers)} <BODY> ${JSON.stringify(t.body)} <ERROR>: ${JSON.stringify(n)}`),S.LoadingHandler.getInstance().setSubject(!1),l.ErrorHandler.getInstance().setSubject(n),i.EMPTY)))}))}}exports.HttpBackend=J;exports.HttpClient=I;exports.HttpHeaders=q;exports.REQUEST_ID_KEY=y;