@adaskothebeast/angular-typed-http-client 4.0.1 → 6.0.0

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.
@@ -1,7 +1,6 @@
1
- import * as i1 from '@angular/common/http';
2
- import { HttpResponse, HttpRequest, HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
1
+ import { HttpResponse, HttpRequest, HttpClient, HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
3
2
  import * as i0 from '@angular/core';
4
- import { Injectable, NgModule } from '@angular/core';
3
+ import { Injectable, inject, NgModule } from '@angular/core';
5
4
  import { instanceToPlain, plainToInstance } from 'class-transformer';
6
5
  import { map } from 'rxjs/operators';
7
6
  import { filter, map as map$1 } from 'rxjs';
@@ -30,10 +29,10 @@ class ClassTransformerHttpInterceptor {
30
29
  return event;
31
30
  }));
32
31
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
34
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: ClassTransformerHttpInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
33
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: ClassTransformerHttpInterceptor }); }
35
34
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: ClassTransformerHttpInterceptor, decorators: [{
37
36
  type: Injectable
38
37
  }] });
39
38
  const isTypedHttpRequest = (req) => {
@@ -59,8 +58,8 @@ class TypedHttpRequest extends HttpRequest {
59
58
  }
60
59
 
61
60
  class TypedHttpClient {
62
- constructor(httpClient) {
63
- this.httpClient = httpClient;
61
+ constructor() {
62
+ this.httpClient = inject(HttpClient);
64
63
  }
65
64
  getResponse(url, responseTypeClass) {
66
65
  const httpRequest = new TypedHttpRequest('GET', url, {
@@ -104,6 +103,20 @@ class TypedHttpClient {
104
103
  });
105
104
  return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map$1((event) => event.body));
106
105
  }
106
+ deleteResponse(url, responseTypeClass) {
107
+ const httpRequest = new TypedHttpRequest('DELETE', url, {
108
+ responseTypeClass: responseTypeClass,
109
+ });
110
+ return this.httpClient
111
+ .request(httpRequest)
112
+ .pipe(filter((event) => event instanceof HttpResponse));
113
+ }
114
+ delete(url, responseTypeClass) {
115
+ const httpRequest = new TypedHttpRequest('DELETE', url, {
116
+ responseTypeClass: responseTypeClass,
117
+ });
118
+ return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map$1((event) => event.body));
119
+ }
107
120
  patchResponse(url, body, responseTypeClass) {
108
121
  const httpRequest = new TypedHttpRequest('PATCH', url, body, {
109
122
  responseTypeClass: responseTypeClass,
@@ -118,20 +131,20 @@ class TypedHttpClient {
118
131
  });
119
132
  return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map$1((event) => event.body));
120
133
  }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
122
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, providedIn: 'root' }); }
134
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClient, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
135
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClient, providedIn: 'root' }); }
123
136
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, decorators: [{
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClient, decorators: [{
125
138
  type: Injectable,
126
139
  args: [{
127
140
  providedIn: 'root',
128
141
  }]
129
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
142
+ }] });
130
143
 
131
144
  class TypedHttpClientModule {
132
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
133
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, imports: [CommonModule] }); }
134
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, providers: [
145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
146
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClientModule, imports: [CommonModule] }); }
147
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClientModule, providers: [
135
148
  {
136
149
  provide: HTTP_INTERCEPTORS,
137
150
  useClass: ClassTransformerHttpInterceptor,
@@ -140,7 +153,7 @@ class TypedHttpClientModule {
140
153
  provideHttpClient(withInterceptorsFromDi()),
141
154
  ], imports: [CommonModule] }); }
142
155
  }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, decorators: [{
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.4", ngImport: i0, type: TypedHttpClientModule, decorators: [{
144
157
  type: NgModule,
145
158
  args: [{ imports: [CommonModule], providers: [
146
159
  {
@@ -1 +1 @@
1
- {"version":3,"file":"adaskothebeast-angular-typed-http-client.mjs","sources":["../../../../libs/angular-typed-http-client/src/lib/class-transformer-http-interceptor.ts","../../../../libs/angular-typed-http-client/src/lib/typed-http-request.ts","../../../../libs/angular-typed-http-client/src/lib/typed-http-client.ts","../../../../libs/angular-typed-http-client/src/lib/typed-http-client.module.ts","../../../../libs/angular-typed-http-client/src/adaskothebeast-angular-typed-http-client.ts"],"sourcesContent":["import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { instanceToPlain, plainToInstance } from 'class-transformer';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { TypedHttpRequest } from './typed-http-request';\n\n@Injectable()\nexport class ClassTransformerHttpInterceptor implements HttpInterceptor {\n intercept(\n req: HttpRequest<unknown>,\n next: HttpHandler,\n ): Observable<HttpEvent<unknown>> {\n let handledRequest = req;\n\n // Transform the request body for POST and PUT methods\n if (\n ['POST', 'PUT', 'PATCH'].includes(req.method) &&\n req.body) {\n const plainBody = instanceToPlain(req.body);\n handledRequest = req.clone({ body: plainBody });\n }\n\n return next.handle(handledRequest).pipe(\n map((event: HttpEvent<unknown>) => {\n // Ensure that the request is a TypedHttpRequest and responseTypeClass is defined\n if (event instanceof HttpResponse && isTypedHttpRequest(req)) {\n const responseTypeClass = req.responseTypeClass;\n // This check ensures responseTypeClass is not undefined\n if (responseTypeClass && event.body) {\n const transformedBody = plainToInstance(\n responseTypeClass,\n event.body,\n );\n // Replace the response body with the transformed body\n return event.clone({ body: transformedBody });\n }\n }\n return event;\n }),\n );\n }\n}\n\nconst isTypedHttpRequest = (\n req: HttpRequest<unknown>,\n): req is TypedHttpRequest<unknown, unknown> => {\n return (\n (req as TypedHttpRequest<unknown, unknown>).responseTypeClass !== undefined\n );\n};\n","import { HttpContext, HttpHeaders, HttpParams, HttpRequest } from '@angular/common/http';\n\nexport class TypedHttpRequest<T, K> extends HttpRequest<unknown> {\n responseTypeClass?: new (...args: unknown[]) => K;\n\n constructor(\n method: string,\n url: string,\n thirdParam?:\n | T\n | null\n | {\n headers?: HttpHeaders;\n context?: HttpContext;\n reportProgress?: boolean;\n params?: HttpParams;\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\n withCredentials?: boolean;\n transferCache?:\n | {\n includeHeaders?: string[];\n }\n | boolean;\n responseTypeClass?: new (...args: unknown[]) => K;\n },\n fourthParam?: {\n headers?: HttpHeaders;\n context?: HttpContext;\n reportProgress?: boolean;\n params?: HttpParams;\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\n withCredentials?: boolean;\n transferCache?:\n | {\n includeHeaders?: string[];\n }\n | boolean;\n responseTypeClass?: new (...args: unknown[]) => K;\n },\n ) {\n // Determine if the third parameter is the body or init based on method\n let body: unknown = null;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let init: any = {};\n\n if (['POST', 'PUT', 'PATCH'].includes(method.toUpperCase())) {\n body = thirdParam;\n init = fourthParam;\n } else {\n init = thirdParam;\n }\n\n super(method, url, body, init);\n\n this.responseTypeClass = init?.responseTypeClass;\n }\n}\n","import { HttpClient, HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable, filter, map } from 'rxjs';\n\nimport { TypedHttpRequest } from './typed-http-request';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TypedHttpClient {\n constructor(private httpClient: HttpClient) {}\n\n getResponse<T, K>(\n url: string,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<HttpResponse<K>> {\n const httpRequest = new TypedHttpRequest<T, K>('GET', url, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request<K>(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse)) as Observable<\n HttpResponse<K>\n >;\n }\n\n get<T, K>(\n url: string,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<K> {\n const httpRequest = new TypedHttpRequest<T, K>('GET', url, {\n responseTypeClass: responseTypeClass,\n });\n\n return this.httpClient.request<K>(httpRequest).pipe(\n filter((event) => event instanceof HttpResponse),\n map((event) => (event as HttpResponse<K>).body as K),\n );\n }\n\n postResponse<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<HttpResponse<K>> {\n const httpRequest = new TypedHttpRequest<T, K>('POST', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request<K>(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse)) as Observable<\n HttpResponse<K>\n >;\n }\n\n post<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<K> {\n const httpRequest = new TypedHttpRequest<T, K>('POST', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request<K>(httpRequest).pipe(\n filter((event) => event instanceof HttpResponse),\n map((event) => (event as HttpResponse<K>).body as K),\n );\n }\n\n putResponse<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<HttpResponse<K>> {\n const httpRequest = new TypedHttpRequest<T, K>('PUT', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request<K>(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse)) as Observable<\n HttpResponse<K>\n >;\n }\n\n put<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<K> {\n const httpRequest = new TypedHttpRequest<T, K>('PUT', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request<K>(httpRequest).pipe(\n filter((event) => event instanceof HttpResponse),\n map((event) => (event as HttpResponse<K>).body as K),\n );\n }\n\n patchResponse<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<HttpResponse<K>> {\n const httpRequest = new TypedHttpRequest<T, K>('PATCH', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request<K>(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse)) as Observable<\n HttpResponse<K>\n >;\n }\n\n patch<T, K>(\n url: string,\n body: T,\n responseTypeClass: new (...args: unknown[]) => K,\n ): Observable<K> {\n const httpRequest = new TypedHttpRequest<T, K>('PATCH', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request<K>(httpRequest).pipe(\n filter((event) => event instanceof HttpResponse),\n map((event) => (event as HttpResponse<K>).body as K),\n );\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\n\nimport { ClassTransformerHttpInterceptor } from './class-transformer-http-interceptor';\n\n@NgModule({ imports: [CommonModule], providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ClassTransformerHttpInterceptor,\n multi: true,\n },\n provideHttpClient(withInterceptorsFromDi()),\n ] })\nexport class TypedHttpClientModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["map"],"mappings":";;;;;;;;;MASa,+BAA+B,CAAA;IAC1C,SAAS,CACP,GAAyB,EACzB,IAAiB,EAAA;QAEjB,IAAI,cAAc,GAAG,GAAG,CAAC;;AAGzB,QAAA,IACE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;YAC7C,GAAG,CAAC,IAAI,EAAE;YACV,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5C,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;SACjD;AAED,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CACrC,GAAG,CAAC,CAAC,KAAyB,KAAI;;YAEhC,IAAI,KAAK,YAAY,YAAY,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE;AAC5D,gBAAA,MAAM,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC;;AAEhD,gBAAA,IAAI,iBAAiB,IAAI,KAAK,CAAC,IAAI,EAAE;oBACnC,MAAM,eAAe,GAAG,eAAe,CACrC,iBAAiB,EACjB,KAAK,CAAC,IAAI,CACX,CAAC;;oBAEF,OAAO,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;iBAC/C;aACF;AACD,YAAA,OAAO,KAAK,CAAC;SACd,CAAC,CACH,CAAC;KACH;8GAjCU,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA/B,+BAA+B,EAAA,CAAA,CAAA,EAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C,UAAU;;AAqCX,MAAM,kBAAkB,GAAG,CACzB,GAAyB,KACoB;AAC7C,IAAA,QACG,GAA0C,CAAC,iBAAiB,KAAK,SAAS,EAC3E;AACJ,CAAC;;ACjDK,MAAO,gBAAuB,SAAQ,WAAoB,CAAA;AAG9D,IAAA,WAAA,CACE,MAAc,EACd,GAAW,EACX,UAgBK,EACL,WAaC,EAAA;;QAGD,IAAI,IAAI,GAAY,IAAI,CAAC;;QAEzB,IAAI,IAAI,GAAQ,EAAE,CAAC;AAEnB,QAAA,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE;YAC3D,IAAI,GAAG,UAAU,CAAC;YAClB,IAAI,GAAG,WAAW,CAAC;SACpB;aAAM;YACL,IAAI,GAAG,UAAU,CAAC;SACnB;QAED,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,EAAE,iBAAiB,CAAC;KAClD;AACF;;MC/CY,eAAe,CAAA;AAC1B,IAAA,WAAA,CAAoB,UAAsB,EAAA;QAAtB,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;KAAI;IAE9C,WAAW,CACT,GAAW,EACX,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,KAAK,EAAE,GAAG,EAAE;AACzD,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU;aACnB,OAAO,CAAI,WAAW,CAAC;AACvB,aAAA,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,CAEvD,CAAC;KACH;IAED,GAAG,CACD,GAAW,EACX,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,KAAK,EAAE,GAAG,EAAE;AACzD,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAI,WAAW,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,EAChDA,KAAG,CAAC,CAAC,KAAK,KAAM,KAAyB,CAAC,IAAS,CAAC,CACrD,CAAC;KACH;AAED,IAAA,YAAY,CACV,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;AAChE,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU;aACnB,OAAO,CAAI,WAAW,CAAC;AACvB,aAAA,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,CAEvD,CAAC;KACH;AAED,IAAA,IAAI,CACF,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;AAChE,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;AACH,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAI,WAAW,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,EAChDA,KAAG,CAAC,CAAC,KAAK,KAAM,KAAyB,CAAC,IAAS,CAAC,CACrD,CAAC;KACH;AAED,IAAA,WAAW,CACT,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE;AAC/D,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU;aACnB,OAAO,CAAI,WAAW,CAAC;AACvB,aAAA,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,CAEvD,CAAC;KACH;AAED,IAAA,GAAG,CACD,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE;AAC/D,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;AACH,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAI,WAAW,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,EAChDA,KAAG,CAAC,CAAC,KAAK,KAAM,KAAyB,CAAC,IAAS,CAAC,CACrD,CAAC;KACH;AAED,IAAA,aAAa,CACX,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;AACjE,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU;aACnB,OAAO,CAAI,WAAW,CAAC;AACvB,aAAA,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,CAEvD,CAAC;KACH;AAED,IAAA,KAAK,CACH,GAAW,EACX,IAAO,EACP,iBAAgD,EAAA;QAEhD,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAO,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE;AACjE,YAAA,iBAAiB,EAAE,iBAAiB;AACrC,SAAA,CAAC,CAAC;AACH,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAI,WAAW,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,YAAY,CAAC,EAChDA,KAAG,CAAC,CAAC,KAAK,KAAM,KAAyB,CAAC,IAAS,CAAC,CACrD,CAAC;KACH;8GApHU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA,EAAA;;2FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCMY,qBAAqB,CAAA;8GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YARZ,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAQrB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EARc,SAAA,EAAA;AACxC,YAAA;AACI,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,QAAQ,EAAE,+BAA+B;AACzC,gBAAA,KAAK,EAAE,IAAI;AACd,aAAA;YACD,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;AAC9C,SAAA,EAAA,OAAA,EAAA,CAPiB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAQrB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBARjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE;AACxC,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,QAAQ,EAAE,+BAA+B;AACzC,4BAAA,KAAK,EAAE,IAAI;AACd,yBAAA;wBACD,iBAAiB,CAAC,sBAAsB,EAAE,CAAC;qBAC9C,EAAE,CAAA;;;ACbP;;AAEG;;;;"}
1
+ {"version":3,"file":"adaskothebeast-angular-typed-http-client.mjs","sources":["../tmp-esm2022/lib/class-transformer-http-interceptor.js","../tmp-esm2022/lib/typed-http-request.js","../tmp-esm2022/lib/typed-http-client.js","../tmp-esm2022/lib/typed-http-client.module.js","../tmp-esm2022/adaskothebeast-angular-typed-http-client.js"],"sourcesContent":["import { HttpResponse } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { instanceToPlain, plainToInstance } from 'class-transformer';\nimport { map } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nexport class ClassTransformerHttpInterceptor {\n intercept(req, next) {\n let handledRequest = req;\n // Transform the request body for POST and PUT methods\n if (['POST', 'PUT', 'PATCH'].includes(req.method) &&\n req.body) {\n const plainBody = instanceToPlain(req.body);\n handledRequest = req.clone({ body: plainBody });\n }\n return next.handle(handledRequest).pipe(map((event) => {\n // Ensure that the request is a TypedHttpRequest and responseTypeClass is defined\n if (event instanceof HttpResponse && isTypedHttpRequest(req)) {\n const responseTypeClass = req.responseTypeClass;\n // This check ensures responseTypeClass is not undefined\n if (responseTypeClass && event.body) {\n const transformedBody = plainToInstance(responseTypeClass, event.body);\n // Replace the response body with the transformed body\n return event.clone({ body: transformedBody });\n }\n }\n return event;\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: ClassTransformerHttpInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: ClassTransformerHttpInterceptor }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: ClassTransformerHttpInterceptor, decorators: [{\n type: Injectable\n }] });\nconst isTypedHttpRequest = (req) => {\n return (req.responseTypeClass !== undefined);\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdHJhbnNmb3JtZXItaHR0cC1pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC9zcmMvbGliL2NsYXNzLXRyYW5zZm9ybWVyLWh0dHAtaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3RCxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUtyQyxNQUFNLE9BQU8sK0JBQStCO0lBQzFDLFNBQVMsQ0FDUCxHQUF5QixFQUN6QixJQUFpQjtRQUVqQixJQUFJLGNBQWMsR0FBRyxHQUFHLENBQUM7UUFFekIsc0RBQXNEO1FBQ3RELElBQ0UsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDO1lBQzdDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNYLE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLENBQUMsS0FBeUIsRUFBRSxFQUFFO1lBQ2hDLGlGQUFpRjtZQUNqRixJQUFJLEtBQUssWUFBWSxZQUFZLElBQUksa0JBQWtCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDN0QsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUMsaUJBQWlCLENBQUM7Z0JBQ2hELHdEQUF3RDtnQkFDeEQsSUFBSSxpQkFBaUIsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3BDLE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FDckMsaUJBQWlCLEVBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQ1gsQ0FBQztvQkFDRixzREFBc0Q7b0JBQ3RELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBakNVLCtCQUErQjtrSEFBL0IsK0JBQStCOzsyRkFBL0IsK0JBQStCO2tCQUQzQyxVQUFVOztBQXFDWCxNQUFNLGtCQUFrQixHQUFHLENBQ3pCLEdBQXlCLEVBQ2tCLEVBQUU7SUFDN0MsT0FBTyxDQUNKLEdBQTBDLENBQUMsaUJBQWlCLEtBQUssU0FBUyxDQUM1RSxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5zdGFuY2VUb1BsYWluLCBwbGFpblRvSW5zdGFuY2UgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFR5cGVkSHR0cFJlcXVlc3QgfSBmcm9tICcuL3R5cGVkLWh0dHAtcmVxdWVzdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDbGFzc1RyYW5zZm9ybWVySHR0cEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgaW50ZXJjZXB0KFxuICAgIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4gICAgbmV4dDogSHR0cEhhbmRsZXIsXG4gICk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgbGV0IGhhbmRsZWRSZXF1ZXN0ID0gcmVxO1xuXG4gICAgLy8gVHJhbnNmb3JtIHRoZSByZXF1ZXN0IGJvZHkgZm9yIFBPU1QgYW5kIFBVVCBtZXRob2RzXG4gICAgaWYgKFxuICAgICAgWydQT1NUJywgJ1BVVCcsICdQQVRDSCddLmluY2x1ZGVzKHJlcS5tZXRob2QpICYmXG4gICAgICByZXEuYm9keSkge1xuICAgICAgY29uc3QgcGxhaW5Cb2R5ID0gaW5zdGFuY2VUb1BsYWluKHJlcS5ib2R5KTtcbiAgICAgIGhhbmRsZWRSZXF1ZXN0ID0gcmVxLmNsb25lKHsgYm9keTogcGxhaW5Cb2R5IH0pO1xuICAgIH1cblxuICAgIHJldHVybiBuZXh0LmhhbmRsZShoYW5kbGVkUmVxdWVzdCkucGlwZShcbiAgICAgIG1hcCgoZXZlbnQ6IEh0dHBFdmVudDx1bmtub3duPikgPT4ge1xuICAgICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVxdWVzdCBpcyBhIFR5cGVkSHR0cFJlcXVlc3QgYW5kIHJlc3BvbnNlVHlwZUNsYXNzIGlzIGRlZmluZWRcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlICYmIGlzVHlwZWRIdHRwUmVxdWVzdChyZXEpKSB7XG4gICAgICAgICAgY29uc3QgcmVzcG9uc2VUeXBlQ2xhc3MgPSByZXEucmVzcG9uc2VUeXBlQ2xhc3M7XG4gICAgICAgICAgLy8gVGhpcyBjaGVjayBlbnN1cmVzIHJlc3BvbnNlVHlwZUNsYXNzIGlzIG5vdCB1bmRlZmluZWRcbiAgICAgICAgICBpZiAocmVzcG9uc2VUeXBlQ2xhc3MgJiYgZXZlbnQuYm9keSkge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtZWRCb2R5ID0gcGxhaW5Ub0luc3RhbmNlKFxuICAgICAgICAgICAgICByZXNwb25zZVR5cGVDbGFzcyxcbiAgICAgICAgICAgICAgZXZlbnQuYm9keSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICAvLyBSZXBsYWNlIHRoZSByZXNwb25zZSBib2R5IHdpdGggdGhlIHRyYW5zZm9ybWVkIGJvZHlcbiAgICAgICAgICAgIHJldHVybiBldmVudC5jbG9uZSh7IGJvZHk6IHRyYW5zZm9ybWVkQm9keSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBpc1R5cGVkSHR0cFJlcXVlc3QgPSAoXG4gIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4pOiByZXEgaXMgVHlwZWRIdHRwUmVxdWVzdDx1bmtub3duLCB1bmtub3duPiA9PiB7XG4gIHJldHVybiAoXG4gICAgKHJlcSBhcyBUeXBlZEh0dHBSZXF1ZXN0PHVua25vd24sIHVua25vd24+KS5yZXNwb25zZVR5cGVDbGFzcyAhPT0gdW5kZWZpbmVkXG4gICk7XG59O1xuIl19","import { HttpRequest } from '@angular/common/http';\nexport class TypedHttpRequest extends HttpRequest {\n constructor(method, url, thirdParam, fourthParam) {\n // Determine if the third parameter is the body or init based on method\n let body = null;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let init = {};\n if (['POST', 'PUT', 'PATCH'].includes(method.toUpperCase())) {\n body = thirdParam;\n init = fourthParam;\n }\n else {\n init = thirdParam;\n }\n super(method, url, body, init);\n this.responseTypeClass = init?.responseTypeClass;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXR5cGVkLWh0dHAtY2xpZW50L3NyYy9saWIvdHlwZWQtaHR0cC1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBd0MsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFekYsTUFBTSxPQUFPLGdCQUF1QixTQUFRLFdBQW9CO0lBRzlELFlBQ0UsTUFBYyxFQUNkLEdBQVcsRUFDWCxVQWdCSyxFQUNMLFdBYUM7UUFFRCx1RUFBdUU7UUFDdkUsSUFBSSxJQUFJLEdBQVksSUFBSSxDQUFDO1FBQ3pCLDhEQUE4RDtRQUM5RCxJQUFJLElBQUksR0FBUSxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDNUQsSUFBSSxHQUFHLFVBQVUsQ0FBQztZQUNsQixJQUFJLEdBQUcsV0FBVyxDQUFDO1FBQ3JCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBRUQsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLEVBQUUsaUJBQWlCLENBQUM7SUFDbkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENvbnRleHQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuZXhwb3J0IGNsYXNzIFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4gZXh0ZW5kcyBIdHRwUmVxdWVzdDx1bmtub3duPiB7XG4gIHJlc3BvbnNlVHlwZUNsYXNzPzogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEs7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbWV0aG9kOiBzdHJpbmcsXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgdGhpcmRQYXJhbT86XG4gICAgICB8IFRcbiAgICAgIHwgbnVsbFxuICAgICAgfCB7XG4gICAgICAgICAgaGVhZGVycz86IEh0dHBIZWFkZXJzO1xuICAgICAgICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dDtcbiAgICAgICAgICByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW47XG4gICAgICAgICAgcGFyYW1zPzogSHR0cFBhcmFtcztcbiAgICAgICAgICByZXNwb25zZVR5cGU/OiAnYXJyYXlidWZmZXInIHwgJ2Jsb2InIHwgJ2pzb24nIHwgJ3RleHQnO1xuICAgICAgICAgIHdpdGhDcmVkZW50aWFscz86IGJvb2xlYW47XG4gICAgICAgICAgdHJhbnNmZXJDYWNoZT86XG4gICAgICAgICAgICB8IHtcbiAgICAgICAgICAgICAgICBpbmNsdWRlSGVhZGVycz86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB8IGJvb2xlYW47XG4gICAgICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M/OiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSztcbiAgICAgICAgfSxcbiAgICBmb3VydGhQYXJhbT86IHtcbiAgICAgIGhlYWRlcnM/OiBIdHRwSGVhZGVycztcbiAgICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dDtcbiAgICAgIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcbiAgICAgIHBhcmFtcz86IEh0dHBQYXJhbXM7XG4gICAgICByZXNwb25zZVR5cGU/OiAnYXJyYXlidWZmZXInIHwgJ2Jsb2InIHwgJ2pzb24nIHwgJ3RleHQnO1xuICAgICAgd2l0aENyZWRlbnRpYWxzPzogYm9vbGVhbjtcbiAgICAgIHRyYW5zZmVyQ2FjaGU/OlxuICAgICAgICB8IHtcbiAgICAgICAgICAgIGluY2x1ZGVIZWFkZXJzPzogc3RyaW5nW107XG4gICAgICAgICAgfVxuICAgICAgICB8IGJvb2xlYW47XG4gICAgICByZXNwb25zZVR5cGVDbGFzcz86IG5ldyAoLi4uYXJnczogdW5rbm93bltdKSA9PiBLO1xuICAgIH0sXG4gICkge1xuICAgIC8vIERldGVybWluZSBpZiB0aGUgdGhpcmQgcGFyYW1ldGVyIGlzIHRoZSBib2R5IG9yIGluaXQgYmFzZWQgb24gbWV0aG9kXG4gICAgbGV0IGJvZHk6IHVua25vd24gPSBudWxsO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgbGV0IGluaXQ6IGFueSA9IHt9O1xuXG4gICAgaWYgKFsnUE9TVCcsICdQVVQnLCAnUEFUQ0gnXS5pbmNsdWRlcyhtZXRob2QudG9VcHBlckNhc2UoKSkpIHtcbiAgICAgIGJvZHkgPSB0aGlyZFBhcmFtO1xuICAgICAgaW5pdCA9IGZvdXJ0aFBhcmFtO1xuICAgIH0gZWxzZSB7XG4gICAgICBpbml0ID0gdGhpcmRQYXJhbTtcbiAgICB9XG5cbiAgICBzdXBlcihtZXRob2QsIHVybCwgYm9keSwgaW5pdCk7XG5cbiAgICB0aGlzLnJlc3BvbnNlVHlwZUNsYXNzID0gaW5pdD8ucmVzcG9uc2VUeXBlQ2xhc3M7XG4gIH1cbn1cbiJdfQ==","import { HttpClient, HttpResponse } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { filter, map } from 'rxjs';\nimport { TypedHttpRequest } from './typed-http-request';\nimport * as i0 from \"@angular/core\";\nexport class TypedHttpClient {\n constructor() {\n this.httpClient = inject(HttpClient);\n }\n getResponse(url, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('GET', url, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse));\n }\n get(url, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('GET', url, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));\n }\n postResponse(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('POST', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse));\n }\n post(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('POST', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));\n }\n putResponse(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('PUT', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse));\n }\n put(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('PUT', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));\n }\n deleteResponse(url, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('DELETE', url, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse));\n }\n delete(url, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('DELETE', url, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));\n }\n patchResponse(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('PATCH', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient\n .request(httpRequest)\n .pipe(filter((event) => event instanceof HttpResponse));\n }\n patch(url, body, responseTypeClass) {\n const httpRequest = new TypedHttpRequest('PATCH', url, body, {\n responseTypeClass: responseTypeClass,\n });\n return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClient, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClient, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClient, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdHlwZWQtaHR0cC1jbGllbnQvc3JjL2xpYi90eXBlZC1odHRwLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBYyxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUt4RCxNQUFNLE9BQU8sZUFBZTtJQUg1QjtRQUltQixlQUFVLEdBQWUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0tBc0k5RDtJQXBJQyxXQUFXLENBQ1QsR0FBVyxFQUNYLGlCQUFnRDtRQUVoRCxNQUFNLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFPLEtBQUssRUFBRSxHQUFHLEVBQUU7WUFDekQsaUJBQWlCLEVBQUUsaUJBQWlCO1NBQ3JDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsT0FBTyxDQUFJLFdBQVcsQ0FBQzthQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsR0FBRyxDQUNELEdBQVcsRUFDWCxpQkFBZ0Q7UUFFaEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFO1lBQ3pELGlCQUFpQixFQUFFLGlCQUFpQjtTQUNyQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFJLFdBQVcsQ0FB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SixDQUFDOzhHQXRJVSxlQUFlO2tIQUFmLGVBQWUsY0FGZCxNQUFNOzsyRkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgVHlwZWRIdHRwUmVxdWVzdCB9IGZyb20gJy4vdHlwZWQtaHR0cC1yZXF1ZXN0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVkSHR0cENsaWVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cENsaWVudDogSHR0cENsaWVudCA9IGluamVjdChIdHRwQ2xpZW50KTtcblxuICBnZXRSZXNwb25zZTxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignR0VUJywgdXJsLCB7XG4gICAgICByZXNwb25zZVR5cGVDbGFzczogcmVzcG9uc2VUeXBlQ2xhc3MsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpXG4gICAgICAucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkpO1xuICB9XG5cbiAgZ2V0PFQsIEs+KFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxLPiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignR0VUJywgdXJsLCB7XG4gICAgICByZXNwb25zZVR5cGVDbGFzczogcmVzcG9uc2VUeXBlQ2xhc3MsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiBldmVudC5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cblxuICBwb3N0UmVzcG9uc2U8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUE9TVCcsIHVybCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M6IHJlc3BvbnNlVHlwZUNsYXNzLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5yZXF1ZXN0PEs+KGh0dHBSZXF1ZXN0KVxuICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpKTtcbiAgfVxuXG4gIHBvc3Q8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8Sz4ge1xuICAgIGNvbnN0IGh0dHBSZXF1ZXN0ID0gbmV3IFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4oJ1BPU1QnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiBldmVudC5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cblxuICBwdXRSZXNwb25zZTxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBib2R5OiBULFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8Sz4+IHtcbiAgICBjb25zdCBodHRwUmVxdWVzdCA9IG5ldyBUeXBlZEh0dHBSZXF1ZXN0PFQsIEs+KCdQVVQnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDxLPihodHRwUmVxdWVzdClcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSk7XG4gIH1cblxuICBwdXQ8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8Sz4ge1xuICAgIGNvbnN0IGh0dHBSZXF1ZXN0ID0gbmV3IFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4oJ1BVVCcsIHVybCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M6IHJlc3BvbnNlVHlwZUNsYXNzLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucmVxdWVzdDxLPihodHRwUmVxdWVzdCkucGlwZShcbiAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSxcbiAgICAgIG1hcCgoZXZlbnQpID0+IGV2ZW50LmJvZHkgYXMgSyksXG4gICAgKTtcbiAgfVxuXG4gIGRlbGV0ZVJlc3BvbnNlPFQsIEs+KFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8Sz4+IHtcbiAgICBjb25zdCBodHRwUmVxdWVzdCA9IG5ldyBUeXBlZEh0dHBSZXF1ZXN0PFQsIEs+KCdERUxFVEUnLCB1cmwsIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDxLPihodHRwUmVxdWVzdClcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSk7XG4gIH1cblxuICBkZWxldGU8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgcmVzcG9uc2VUeXBlQ2xhc3M6IG5ldyAoLi4uYXJnczogdW5rbm93bltdKSA9PiBLLFxuICApOiBPYnNlcnZhYmxlPEs+IHtcbiAgICBjb25zdCBodHRwUmVxdWVzdCA9IG5ldyBUeXBlZEh0dHBSZXF1ZXN0PFQsIEs+KCdERUxFVEUnLCB1cmwsIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucmVxdWVzdDxLPihodHRwUmVxdWVzdCkucGlwZShcbiAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSxcbiAgICAgIG1hcCgoZXZlbnQpID0+IGV2ZW50LmJvZHkgYXMgSyksXG4gICAgKTtcbiAgfVxuXG4gIHBhdGNoUmVzcG9uc2U8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUEFUQ0gnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDxLPihodHRwUmVxdWVzdClcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSk7XG4gIH1cblxuICBwYXRjaDxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBib2R5OiBULFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxLPiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUEFUQ0gnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiBldmVudC5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { CommonModule } from '@angular/common';\nimport { HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { ClassTransformerHttpInterceptor } from './class-transformer-http-interceptor';\nimport * as i0 from \"@angular/core\";\nexport class TypedHttpClientModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClientModule, imports: [CommonModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClientModule, providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ClassTransformerHttpInterceptor,\n multi: true,\n },\n provideHttpClient(withInterceptorsFromDi()),\n ], imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: TypedHttpClientModule, decorators: [{\n type: NgModule,\n args: [{ imports: [CommonModule], providers: [\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ClassTransformerHttpInterceptor,\n multi: true,\n },\n provideHttpClient(withInterceptorsFromDi()),\n ] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXR5cGVkLWh0dHAtY2xpZW50L3NyYy9saWIvdHlwZWQtaHR0cC1jbGllbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQVV2RixNQUFNLE9BQU8scUJBQXFCOzhHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixZQVJaLFlBQVk7K0dBUXJCLHFCQUFxQixhQVJjO1lBQ3hDO2dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLEtBQUssRUFBRSxJQUFJO2FBQ2Q7WUFDRCxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQzlDLFlBUGlCLFlBQVk7OzJGQVFyQixxQkFBcUI7a0JBUmpDLFFBQVE7bUJBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxTQUFTLEVBQUU7d0JBQ3hDOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFFBQVEsRUFBRSwrQkFBK0I7NEJBQ3pDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELGlCQUFpQixDQUFDLHNCQUFzQixFQUFFLENBQUM7cUJBQzlDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMsIHByb3ZpZGVIdHRwQ2xpZW50LCB3aXRoSW50ZXJjZXB0b3JzRnJvbURpIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2xhc3NUcmFuc2Zvcm1lckh0dHBJbnRlcmNlcHRvciB9IGZyb20gJy4vY2xhc3MtdHJhbnNmb3JtZXItaHR0cC1pbnRlcmNlcHRvcic7XG5cbkBOZ01vZHVsZSh7IGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLCBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgICAgICB1c2VDbGFzczogQ2xhc3NUcmFuc2Zvcm1lckh0dHBJbnRlcmNlcHRvcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBwcm92aWRlSHR0cENsaWVudCh3aXRoSW50ZXJjZXB0b3JzRnJvbURpKCkpLFxuICAgIF0gfSlcbmV4cG9ydCBjbGFzcyBUeXBlZEh0dHBDbGllbnRNb2R1bGUge31cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhc2tvdGhlYmVhc3QtYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC9zcmMvYWRhc2tvdGhlYmVhc3QtYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":["map"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,4 +1,61 @@
1
- export * from './lib/class-transformer-http-interceptor';
2
- export * from './lib/typed-http-client';
3
- export * from './lib/typed-http-client.module';
4
- export * from './lib/typed-http-request';
1
+ import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent, HttpResponse, HttpHeaders, HttpContext, HttpParams } from '@angular/common/http';
2
+ import { Observable } from 'rxjs';
3
+ import * as i0 from '@angular/core';
4
+ import * as i1 from '@angular/common';
5
+
6
+ declare class ClassTransformerHttpInterceptor implements HttpInterceptor {
7
+ intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClassTransformerHttpInterceptor, never>;
9
+ static ɵprov: i0.ɵɵInjectableDeclaration<ClassTransformerHttpInterceptor>;
10
+ }
11
+
12
+ declare class TypedHttpClient {
13
+ private readonly httpClient;
14
+ getResponse<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
15
+ get<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
16
+ postResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
17
+ post<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
18
+ putResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
19
+ put<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
20
+ deleteResponse<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
21
+ delete<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
22
+ patchResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
23
+ patch<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<TypedHttpClient, never>;
25
+ static ɵprov: i0.ɵɵInjectableDeclaration<TypedHttpClient>;
26
+ }
27
+
28
+ declare class TypedHttpClientModule {
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<TypedHttpClientModule, never>;
30
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TypedHttpClientModule, never, [typeof i1.CommonModule], never>;
31
+ static ɵinj: i0.ɵɵInjectorDeclaration<TypedHttpClientModule>;
32
+ }
33
+
34
+ declare class TypedHttpRequest<T, K> extends HttpRequest<unknown> {
35
+ responseTypeClass?: new (...args: unknown[]) => K;
36
+ constructor(method: string, url: string, thirdParam?: T | null | {
37
+ headers?: HttpHeaders;
38
+ context?: HttpContext;
39
+ reportProgress?: boolean;
40
+ params?: HttpParams;
41
+ responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';
42
+ withCredentials?: boolean;
43
+ transferCache?: {
44
+ includeHeaders?: string[];
45
+ } | boolean;
46
+ responseTypeClass?: new (...args: unknown[]) => K;
47
+ }, fourthParam?: {
48
+ headers?: HttpHeaders;
49
+ context?: HttpContext;
50
+ reportProgress?: boolean;
51
+ params?: HttpParams;
52
+ responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';
53
+ withCredentials?: boolean;
54
+ transferCache?: {
55
+ includeHeaders?: string[];
56
+ } | boolean;
57
+ responseTypeClass?: new (...args: unknown[]) => K;
58
+ });
59
+ }
60
+
61
+ export { ClassTransformerHttpInterceptor, TypedHttpClient, TypedHttpClientModule, TypedHttpRequest };
package/package.json CHANGED
@@ -1,12 +1,14 @@
1
1
  {
2
2
  "name": "@adaskothebeast/angular-typed-http-client",
3
- "version": "4.0.1",
3
+ "version": "6.0.0",
4
4
  "peerDependencies": {
5
- "@angular/common": "^18.0.0",
6
- "@angular/core": "^18.0.0"
5
+ "@angular/common": "^20.0.3",
6
+ "@angular/core": "^20.0.3",
7
+ "class-transformer": "^0.5.1",
8
+ "rxjs": "~7.8.2"
7
9
  },
8
10
  "dependencies": {
9
- "tslib": "^2.6.2"
11
+ "tslib": "^2.3.0"
10
12
  },
11
13
  "sideEffects": false,
12
14
  "module": "fesm2022/adaskothebeast-angular-typed-http-client.mjs",
@@ -17,8 +19,6 @@
17
19
  },
18
20
  ".": {
19
21
  "types": "./index.d.ts",
20
- "esm2022": "./esm2022/adaskothebeast-angular-typed-http-client.mjs",
21
- "esm": "./esm2022/adaskothebeast-angular-typed-http-client.mjs",
22
22
  "default": "./fesm2022/adaskothebeast-angular-typed-http-client.mjs"
23
23
  }
24
24
  }
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhc2tvdGhlYmVhc3QtYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC9zcmMvYWRhc2tvdGhlYmVhc3QtYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
package/esm2022/index.mjs DELETED
@@ -1,5 +0,0 @@
1
- export * from './lib/class-transformer-http-interceptor';
2
- export * from './lib/typed-http-client';
3
- export * from './lib/typed-http-client.module';
4
- export * from './lib/typed-http-request';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdHlwZWQtaHR0cC1jbGllbnQvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jbGFzcy10cmFuc2Zvcm1lci1odHRwLWludGVyY2VwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVkLWh0dHAtY2xpZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVkLWh0dHAtY2xpZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlZC1odHRwLXJlcXVlc3QnO1xuIl19
@@ -1,38 +0,0 @@
1
- import { HttpResponse } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { instanceToPlain, plainToInstance } from 'class-transformer';
4
- import { map } from 'rxjs/operators';
5
- import * as i0 from "@angular/core";
6
- export class ClassTransformerHttpInterceptor {
7
- intercept(req, next) {
8
- let handledRequest = req;
9
- // Transform the request body for POST and PUT methods
10
- if (['POST', 'PUT', 'PATCH'].includes(req.method) &&
11
- req.body) {
12
- const plainBody = instanceToPlain(req.body);
13
- handledRequest = req.clone({ body: plainBody });
14
- }
15
- return next.handle(handledRequest).pipe(map((event) => {
16
- // Ensure that the request is a TypedHttpRequest and responseTypeClass is defined
17
- if (event instanceof HttpResponse && isTypedHttpRequest(req)) {
18
- const responseTypeClass = req.responseTypeClass;
19
- // This check ensures responseTypeClass is not undefined
20
- if (responseTypeClass && event.body) {
21
- const transformedBody = plainToInstance(responseTypeClass, event.body);
22
- // Replace the response body with the transformed body
23
- return event.clone({ body: transformedBody });
24
- }
25
- }
26
- return event;
27
- }));
28
- }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
30
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor }); }
31
- }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ClassTransformerHttpInterceptor, decorators: [{
33
- type: Injectable
34
- }] });
35
- const isTypedHttpRequest = (req) => {
36
- return (req.responseTypeClass !== undefined);
37
- };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtdHJhbnNmb3JtZXItaHR0cC1pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci10eXBlZC1odHRwLWNsaWVudC9zcmMvbGliL2NsYXNzLXRyYW5zZm9ybWVyLWh0dHAtaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3RCxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUtyQyxNQUFNLE9BQU8sK0JBQStCO0lBQzFDLFNBQVMsQ0FDUCxHQUF5QixFQUN6QixJQUFpQjtRQUVqQixJQUFJLGNBQWMsR0FBRyxHQUFHLENBQUM7UUFFekIsc0RBQXNEO1FBQ3RELElBQ0UsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDO1lBQzdDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNYLE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLENBQUMsS0FBeUIsRUFBRSxFQUFFO1lBQ2hDLGlGQUFpRjtZQUNqRixJQUFJLEtBQUssWUFBWSxZQUFZLElBQUksa0JBQWtCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDN0QsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUMsaUJBQWlCLENBQUM7Z0JBQ2hELHdEQUF3RDtnQkFDeEQsSUFBSSxpQkFBaUIsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3BDLE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FDckMsaUJBQWlCLEVBQ2pCLEtBQUssQ0FBQyxJQUFJLENBQ1gsQ0FBQztvQkFDRixzREFBc0Q7b0JBQ3RELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBakNVLCtCQUErQjtrSEFBL0IsK0JBQStCOzsyRkFBL0IsK0JBQStCO2tCQUQzQyxVQUFVOztBQXFDWCxNQUFNLGtCQUFrQixHQUFHLENBQ3pCLEdBQXlCLEVBQ2tCLEVBQUU7SUFDN0MsT0FBTyxDQUNKLEdBQTBDLENBQUMsaUJBQWlCLEtBQUssU0FBUyxDQUM1RSxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEV2ZW50LCBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5zdGFuY2VUb1BsYWluLCBwbGFpblRvSW5zdGFuY2UgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFR5cGVkSHR0cFJlcXVlc3QgfSBmcm9tICcuL3R5cGVkLWh0dHAtcmVxdWVzdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDbGFzc1RyYW5zZm9ybWVySHR0cEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgaW50ZXJjZXB0KFxuICAgIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4gICAgbmV4dDogSHR0cEhhbmRsZXIsXG4gICk6IE9ic2VydmFibGU8SHR0cEV2ZW50PHVua25vd24+PiB7XG4gICAgbGV0IGhhbmRsZWRSZXF1ZXN0ID0gcmVxO1xuXG4gICAgLy8gVHJhbnNmb3JtIHRoZSByZXF1ZXN0IGJvZHkgZm9yIFBPU1QgYW5kIFBVVCBtZXRob2RzXG4gICAgaWYgKFxuICAgICAgWydQT1NUJywgJ1BVVCcsICdQQVRDSCddLmluY2x1ZGVzKHJlcS5tZXRob2QpICYmXG4gICAgICByZXEuYm9keSkge1xuICAgICAgY29uc3QgcGxhaW5Cb2R5ID0gaW5zdGFuY2VUb1BsYWluKHJlcS5ib2R5KTtcbiAgICAgIGhhbmRsZWRSZXF1ZXN0ID0gcmVxLmNsb25lKHsgYm9keTogcGxhaW5Cb2R5IH0pO1xuICAgIH1cblxuICAgIHJldHVybiBuZXh0LmhhbmRsZShoYW5kbGVkUmVxdWVzdCkucGlwZShcbiAgICAgIG1hcCgoZXZlbnQ6IEh0dHBFdmVudDx1bmtub3duPikgPT4ge1xuICAgICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgcmVxdWVzdCBpcyBhIFR5cGVkSHR0cFJlcXVlc3QgYW5kIHJlc3BvbnNlVHlwZUNsYXNzIGlzIGRlZmluZWRcbiAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlICYmIGlzVHlwZWRIdHRwUmVxdWVzdChyZXEpKSB7XG4gICAgICAgICAgY29uc3QgcmVzcG9uc2VUeXBlQ2xhc3MgPSByZXEucmVzcG9uc2VUeXBlQ2xhc3M7XG4gICAgICAgICAgLy8gVGhpcyBjaGVjayBlbnN1cmVzIHJlc3BvbnNlVHlwZUNsYXNzIGlzIG5vdCB1bmRlZmluZWRcbiAgICAgICAgICBpZiAocmVzcG9uc2VUeXBlQ2xhc3MgJiYgZXZlbnQuYm9keSkge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtZWRCb2R5ID0gcGxhaW5Ub0luc3RhbmNlKFxuICAgICAgICAgICAgICByZXNwb25zZVR5cGVDbGFzcyxcbiAgICAgICAgICAgICAgZXZlbnQuYm9keSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICAvLyBSZXBsYWNlIHRoZSByZXNwb25zZSBib2R5IHdpdGggdGhlIHRyYW5zZm9ybWVkIGJvZHlcbiAgICAgICAgICAgIHJldHVybiBldmVudC5jbG9uZSh7IGJvZHk6IHRyYW5zZm9ybWVkQm9keSB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGV2ZW50O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBpc1R5cGVkSHR0cFJlcXVlc3QgPSAoXG4gIHJlcTogSHR0cFJlcXVlc3Q8dW5rbm93bj4sXG4pOiByZXEgaXMgVHlwZWRIdHRwUmVxdWVzdDx1bmtub3duLCB1bmtub3duPiA9PiB7XG4gIHJldHVybiAoXG4gICAgKHJlcSBhcyBUeXBlZEh0dHBSZXF1ZXN0PHVua25vd24sIHVua25vd24+KS5yZXNwb25zZVR5cGVDbGFzcyAhPT0gdW5kZWZpbmVkXG4gICk7XG59O1xuIl19
@@ -1,76 +0,0 @@
1
- import { HttpClient, HttpResponse } from '@angular/common/http';
2
- import { Injectable } from '@angular/core';
3
- import { filter, map } from 'rxjs';
4
- import { TypedHttpRequest } from './typed-http-request';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common/http";
7
- export class TypedHttpClient {
8
- constructor(httpClient) {
9
- this.httpClient = httpClient;
10
- }
11
- getResponse(url, responseTypeClass) {
12
- const httpRequest = new TypedHttpRequest('GET', url, {
13
- responseTypeClass: responseTypeClass,
14
- });
15
- return this.httpClient
16
- .request(httpRequest)
17
- .pipe(filter((event) => event instanceof HttpResponse));
18
- }
19
- get(url, responseTypeClass) {
20
- const httpRequest = new TypedHttpRequest('GET', url, {
21
- responseTypeClass: responseTypeClass,
22
- });
23
- return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));
24
- }
25
- postResponse(url, body, responseTypeClass) {
26
- const httpRequest = new TypedHttpRequest('POST', url, body, {
27
- responseTypeClass: responseTypeClass,
28
- });
29
- return this.httpClient
30
- .request(httpRequest)
31
- .pipe(filter((event) => event instanceof HttpResponse));
32
- }
33
- post(url, body, responseTypeClass) {
34
- const httpRequest = new TypedHttpRequest('POST', url, body, {
35
- responseTypeClass: responseTypeClass,
36
- });
37
- return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));
38
- }
39
- putResponse(url, body, responseTypeClass) {
40
- const httpRequest = new TypedHttpRequest('PUT', url, body, {
41
- responseTypeClass: responseTypeClass,
42
- });
43
- return this.httpClient
44
- .request(httpRequest)
45
- .pipe(filter((event) => event instanceof HttpResponse));
46
- }
47
- put(url, body, responseTypeClass) {
48
- const httpRequest = new TypedHttpRequest('PUT', url, body, {
49
- responseTypeClass: responseTypeClass,
50
- });
51
- return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));
52
- }
53
- patchResponse(url, body, responseTypeClass) {
54
- const httpRequest = new TypedHttpRequest('PATCH', url, body, {
55
- responseTypeClass: responseTypeClass,
56
- });
57
- return this.httpClient
58
- .request(httpRequest)
59
- .pipe(filter((event) => event instanceof HttpResponse));
60
- }
61
- patch(url, body, responseTypeClass) {
62
- const httpRequest = new TypedHttpRequest('PATCH', url, body, {
63
- responseTypeClass: responseTypeClass,
64
- });
65
- return this.httpClient.request(httpRequest).pipe(filter((event) => event instanceof HttpResponse), map((event) => event.body));
66
- }
67
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
68
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, providedIn: 'root' }); }
69
- }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClient, decorators: [{
71
- type: Injectable,
72
- args: [{
73
- providedIn: 'root',
74
- }]
75
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdHlwZWQtaHR0cC1jbGllbnQvc3JjL2xpYi90eXBlZC1odHRwLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE1BQU0sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUt4RCxNQUFNLE9BQU8sZUFBZTtJQUMxQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQUU5QyxXQUFXLENBQ1QsR0FBVyxFQUNYLGlCQUFnRDtRQUVoRCxNQUFNLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFPLEtBQUssRUFBRSxHQUFHLEVBQUU7WUFDekQsaUJBQWlCLEVBQUUsaUJBQWlCO1NBQ3JDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLFVBQVU7YUFDbkIsT0FBTyxDQUFJLFdBQVcsQ0FBQzthQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksWUFBWSxDQUFDLENBRXZELENBQUM7SUFDSixDQUFDO0lBRUQsR0FBRyxDQUNELEdBQVcsRUFDWCxpQkFBZ0Q7UUFFaEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBTyxLQUFLLEVBQUUsR0FBRyxFQUFFO1lBQ3pELGlCQUFpQixFQUFFLGlCQUFpQjtTQUNyQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFJLFdBQVcsQ0FBQyxDQUFDLElB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RyxJQUFJLGdCQUFnQixDQUFPLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFO1lBQ2pFLGlCQUFpQixFQUFFLGlCQUFpQjtTQUNyQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFJLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDakQsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLFlBQVksWUFBWSxDQUFDLEVBQ2hELEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUUsS0FBeUIsQ0FBQyxJQUFTLENBQUMsQ0FDckQsQ0FBQztJQUNKLENBQUM7OEdBcEhVLGVBQWU7a0hBQWYsZUFBZSxjQUZkLE1BQU07OzJGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZmlsdGVyLCBtYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgVHlwZWRIdHRwUmVxdWVzdCB9IGZyb20gJy4vdHlwZWQtaHR0cC1yZXF1ZXN0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFR5cGVkSHR0cENsaWVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCkge31cblxuICBnZXRSZXNwb25zZTxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignR0VUJywgdXJsLCB7XG4gICAgICByZXNwb25zZVR5cGVDbGFzczogcmVzcG9uc2VUeXBlQ2xhc3MsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpXG4gICAgICAucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSkpIGFzIE9ic2VydmFibGU8XG4gICAgICBIdHRwUmVzcG9uc2U8Sz5cbiAgICA+O1xuICB9XG5cbiAgZ2V0PFQsIEs+KFxuICAgIHVybDogc3RyaW5nLFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxLPiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignR0VUJywgdXJsLCB7XG4gICAgICByZXNwb25zZVR5cGVDbGFzczogcmVzcG9uc2VUeXBlQ2xhc3MsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiAoZXZlbnQgYXMgSHR0cFJlc3BvbnNlPEs+KS5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cblxuICBwb3N0UmVzcG9uc2U8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUE9TVCcsIHVybCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M6IHJlc3BvbnNlVHlwZUNsYXNzLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcbiAgICAgIC5yZXF1ZXN0PEs+KGh0dHBSZXF1ZXN0KVxuICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpKSBhcyBPYnNlcnZhYmxlPFxuICAgICAgSHR0cFJlc3BvbnNlPEs+XG4gICAgPjtcbiAgfVxuXG4gIHBvc3Q8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8Sz4ge1xuICAgIGNvbnN0IGh0dHBSZXF1ZXN0ID0gbmV3IFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4oJ1BPU1QnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiAoZXZlbnQgYXMgSHR0cFJlc3BvbnNlPEs+KS5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cblxuICBwdXRSZXNwb25zZTxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBib2R5OiBULFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8Sz4+IHtcbiAgICBjb25zdCBodHRwUmVxdWVzdCA9IG5ldyBUeXBlZEh0dHBSZXF1ZXN0PFQsIEs+KCdQVVQnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDxLPihodHRwUmVxdWVzdClcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSkgYXMgT2JzZXJ2YWJsZTxcbiAgICAgIEh0dHBSZXNwb25zZTxLPlxuICAgID47XG4gIH1cblxuICBwdXQ8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8Sz4ge1xuICAgIGNvbnN0IGh0dHBSZXF1ZXN0ID0gbmV3IFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4oJ1BVVCcsIHVybCwgYm9keSwge1xuICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M6IHJlc3BvbnNlVHlwZUNsYXNzLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucmVxdWVzdDxLPihodHRwUmVxdWVzdCkucGlwZShcbiAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSxcbiAgICAgIG1hcCgoZXZlbnQpID0+IChldmVudCBhcyBIdHRwUmVzcG9uc2U8Sz4pLmJvZHkgYXMgSyksXG4gICAgKTtcbiAgfVxuXG4gIHBhdGNoUmVzcG9uc2U8VCwgSz4oXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYm9keTogVCxcbiAgICByZXNwb25zZVR5cGVDbGFzczogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEssXG4gICk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPEs+PiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUEFUQ0gnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50XG4gICAgICAucmVxdWVzdDxLPihodHRwUmVxdWVzdClcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSkgYXMgT2JzZXJ2YWJsZTxcbiAgICAgIEh0dHBSZXNwb25zZTxLPlxuICAgID47XG4gIH1cblxuICBwYXRjaDxULCBLPihcbiAgICB1cmw6IHN0cmluZyxcbiAgICBib2R5OiBULFxuICAgIHJlc3BvbnNlVHlwZUNsYXNzOiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSyxcbiAgKTogT2JzZXJ2YWJsZTxLPiB7XG4gICAgY29uc3QgaHR0cFJlcXVlc3QgPSBuZXcgVHlwZWRIdHRwUmVxdWVzdDxULCBLPignUEFUQ0gnLCB1cmwsIGJvZHksIHtcbiAgICAgIHJlc3BvbnNlVHlwZUNsYXNzOiByZXNwb25zZVR5cGVDbGFzcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3Q8Sz4oaHR0cFJlcXVlc3QpLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSksXG4gICAgICBtYXAoKGV2ZW50KSA9PiAoZXZlbnQgYXMgSHR0cFJlc3BvbnNlPEs+KS5ib2R5IGFzIEspLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
3
- import { NgModule } from '@angular/core';
4
- import { ClassTransformerHttpInterceptor } from './class-transformer-http-interceptor';
5
- import * as i0 from "@angular/core";
6
- export class TypedHttpClientModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, imports: [CommonModule] }); }
9
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, providers: [
10
- {
11
- provide: HTTP_INTERCEPTORS,
12
- useClass: ClassTransformerHttpInterceptor,
13
- multi: true,
14
- },
15
- provideHttpClient(withInterceptorsFromDi()),
16
- ], imports: [CommonModule] }); }
17
- }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: TypedHttpClientModule, decorators: [{
19
- type: NgModule,
20
- args: [{ imports: [CommonModule], providers: [
21
- {
22
- provide: HTTP_INTERCEPTORS,
23
- useClass: ClassTransformerHttpInterceptor,
24
- multi: true,
25
- },
26
- provideHttpClient(withInterceptorsFromDi()),
27
- ] }]
28
- }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXR5cGVkLWh0dHAtY2xpZW50L3NyYy9saWIvdHlwZWQtaHR0cC1jbGllbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQVV2RixNQUFNLE9BQU8scUJBQXFCOzhHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixZQVJaLFlBQVk7K0dBUXJCLHFCQUFxQixhQVJjO1lBQ3hDO2dCQUNJLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLEtBQUssRUFBRSxJQUFJO2FBQ2Q7WUFDRCxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1NBQzlDLFlBUGlCLFlBQVk7OzJGQVFyQixxQkFBcUI7a0JBUmpDLFFBQVE7bUJBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxTQUFTLEVBQUU7d0JBQ3hDOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFFBQVEsRUFBRSwrQkFBK0I7NEJBQ3pDLEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELGlCQUFpQixDQUFDLHNCQUFzQixFQUFFLENBQUM7cUJBQzlDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSFRUUF9JTlRFUkNFUFRPUlMsIHByb3ZpZGVIdHRwQ2xpZW50LCB3aXRoSW50ZXJjZXB0b3JzRnJvbURpIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2xhc3NUcmFuc2Zvcm1lckh0dHBJbnRlcmNlcHRvciB9IGZyb20gJy4vY2xhc3MtdHJhbnNmb3JtZXItaHR0cC1pbnRlcmNlcHRvcic7XG5cbkBOZ01vZHVsZSh7IGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLCBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgICAgICB1c2VDbGFzczogQ2xhc3NUcmFuc2Zvcm1lckh0dHBJbnRlcmNlcHRvcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBwcm92aWRlSHR0cENsaWVudCh3aXRoSW50ZXJjZXB0b3JzRnJvbURpKCkpLFxuICAgIF0gfSlcbmV4cG9ydCBjbGFzcyBUeXBlZEh0dHBDbGllbnRNb2R1bGUge31cbiJdfQ==
@@ -1,19 +0,0 @@
1
- import { HttpRequest } from '@angular/common/http';
2
- export class TypedHttpRequest extends HttpRequest {
3
- constructor(method, url, thirdParam, fourthParam) {
4
- // Determine if the third parameter is the body or init based on method
5
- let body = null;
6
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
- let init = {};
8
- if (['POST', 'PUT', 'PATCH'].includes(method.toUpperCase())) {
9
- body = thirdParam;
10
- init = fourthParam;
11
- }
12
- else {
13
- init = thirdParam;
14
- }
15
- super(method, url, body, init);
16
- this.responseTypeClass = init?.responseTypeClass;
17
- }
18
- }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtaHR0cC1yZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXR5cGVkLWh0dHAtY2xpZW50L3NyYy9saWIvdHlwZWQtaHR0cC1yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBd0MsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFekYsTUFBTSxPQUFPLGdCQUF1QixTQUFRLFdBQW9CO0lBRzlELFlBQ0UsTUFBYyxFQUNkLEdBQVcsRUFDWCxVQWdCSyxFQUNMLFdBYUM7UUFFRCx1RUFBdUU7UUFDdkUsSUFBSSxJQUFJLEdBQVksSUFBSSxDQUFDO1FBQ3pCLDhEQUE4RDtRQUM5RCxJQUFJLElBQUksR0FBUSxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDNUQsSUFBSSxHQUFHLFVBQVUsQ0FBQztZQUNsQixJQUFJLEdBQUcsV0FBVyxDQUFDO1FBQ3JCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBRUQsS0FBSyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLEVBQUUsaUJBQWlCLENBQUM7SUFDbkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENvbnRleHQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuZXhwb3J0IGNsYXNzIFR5cGVkSHR0cFJlcXVlc3Q8VCwgSz4gZXh0ZW5kcyBIdHRwUmVxdWVzdDx1bmtub3duPiB7XG4gIHJlc3BvbnNlVHlwZUNsYXNzPzogbmV3ICguLi5hcmdzOiB1bmtub3duW10pID0+IEs7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbWV0aG9kOiBzdHJpbmcsXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgdGhpcmRQYXJhbT86XG4gICAgICB8IFRcbiAgICAgIHwgbnVsbFxuICAgICAgfCB7XG4gICAgICAgICAgaGVhZGVycz86IEh0dHBIZWFkZXJzO1xuICAgICAgICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dDtcbiAgICAgICAgICByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW47XG4gICAgICAgICAgcGFyYW1zPzogSHR0cFBhcmFtcztcbiAgICAgICAgICByZXNwb25zZVR5cGU/OiAnYXJyYXlidWZmZXInIHwgJ2Jsb2InIHwgJ2pzb24nIHwgJ3RleHQnO1xuICAgICAgICAgIHdpdGhDcmVkZW50aWFscz86IGJvb2xlYW47XG4gICAgICAgICAgdHJhbnNmZXJDYWNoZT86XG4gICAgICAgICAgICB8IHtcbiAgICAgICAgICAgICAgICBpbmNsdWRlSGVhZGVycz86IHN0cmluZ1tdO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB8IGJvb2xlYW47XG4gICAgICAgICAgcmVzcG9uc2VUeXBlQ2xhc3M/OiBuZXcgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gSztcbiAgICAgICAgfSxcbiAgICBmb3VydGhQYXJhbT86IHtcbiAgICAgIGhlYWRlcnM/OiBIdHRwSGVhZGVycztcbiAgICAgIGNvbnRleHQ/OiBIdHRwQ29udGV4dDtcbiAgICAgIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcbiAgICAgIHBhcmFtcz86IEh0dHBQYXJhbXM7XG4gICAgICByZXNwb25zZVR5cGU/OiAnYXJyYXlidWZmZXInIHwgJ2Jsb2InIHwgJ2pzb24nIHwgJ3RleHQnO1xuICAgICAgd2l0aENyZWRlbnRpYWxzPzogYm9vbGVhbjtcbiAgICAgIHRyYW5zZmVyQ2FjaGU/OlxuICAgICAgICB8IHtcbiAgICAgICAgICAgIGluY2x1ZGVIZWFkZXJzPzogc3RyaW5nW107XG4gICAgICAgICAgfVxuICAgICAgICB8IGJvb2xlYW47XG4gICAgICByZXNwb25zZVR5cGVDbGFzcz86IG5ldyAoLi4uYXJnczogdW5rbm93bltdKSA9PiBLO1xuICAgIH0sXG4gICkge1xuICAgIC8vIERldGVybWluZSBpZiB0aGUgdGhpcmQgcGFyYW1ldGVyIGlzIHRoZSBib2R5IG9yIGluaXQgYmFzZWQgb24gbWV0aG9kXG4gICAgbGV0IGJvZHk6IHVua25vd24gPSBudWxsO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgbGV0IGluaXQ6IGFueSA9IHt9O1xuXG4gICAgaWYgKFsnUE9TVCcsICdQVVQnLCAnUEFUQ0gnXS5pbmNsdWRlcyhtZXRob2QudG9VcHBlckNhc2UoKSkpIHtcbiAgICAgIGJvZHkgPSB0aGlyZFBhcmFtO1xuICAgICAgaW5pdCA9IGZvdXJ0aFBhcmFtO1xuICAgIH0gZWxzZSB7XG4gICAgICBpbml0ID0gdGhpcmRQYXJhbTtcbiAgICB9XG5cbiAgICBzdXBlcihtZXRob2QsIHVybCwgYm9keSwgaW5pdCk7XG5cbiAgICB0aGlzLnJlc3BvbnNlVHlwZUNsYXNzID0gaW5pdD8ucmVzcG9uc2VUeXBlQ2xhc3M7XG4gIH1cbn1cbiJdfQ==
@@ -1,8 +0,0 @@
1
- import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';
2
- import { Observable } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export declare class ClassTransformerHttpInterceptor implements HttpInterceptor {
5
- intercept(req: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<ClassTransformerHttpInterceptor, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<ClassTransformerHttpInterceptor>;
8
- }
@@ -1,17 +0,0 @@
1
- import { HttpClient, HttpResponse } from '@angular/common/http';
2
- import { Observable } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- export declare class TypedHttpClient {
5
- private httpClient;
6
- constructor(httpClient: HttpClient);
7
- getResponse<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
8
- get<T, K>(url: string, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
9
- postResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
10
- post<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
11
- putResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
12
- put<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
13
- patchResponse<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<HttpResponse<K>>;
14
- patch<T, K>(url: string, body: T, responseTypeClass: new (...args: unknown[]) => K): Observable<K>;
15
- static ɵfac: i0.ɵɵFactoryDeclaration<TypedHttpClient, never>;
16
- static ɵprov: i0.ɵɵInjectableDeclaration<TypedHttpClient>;
17
- }
@@ -1,7 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "@angular/common";
3
- export declare class TypedHttpClientModule {
4
- static ɵfac: i0.ɵɵFactoryDeclaration<TypedHttpClientModule, never>;
5
- static ɵmod: i0.ɵɵNgModuleDeclaration<TypedHttpClientModule, never, [typeof i1.CommonModule], never>;
6
- static ɵinj: i0.ɵɵInjectorDeclaration<TypedHttpClientModule>;
7
- }
@@ -1,27 +0,0 @@
1
- import { HttpContext, HttpHeaders, HttpParams, HttpRequest } from '@angular/common/http';
2
- export declare class TypedHttpRequest<T, K> extends HttpRequest<unknown> {
3
- responseTypeClass?: new (...args: unknown[]) => K;
4
- constructor(method: string, url: string, thirdParam?: T | null | {
5
- headers?: HttpHeaders;
6
- context?: HttpContext;
7
- reportProgress?: boolean;
8
- params?: HttpParams;
9
- responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';
10
- withCredentials?: boolean;
11
- transferCache?: {
12
- includeHeaders?: string[];
13
- } | boolean;
14
- responseTypeClass?: new (...args: unknown[]) => K;
15
- }, fourthParam?: {
16
- headers?: HttpHeaders;
17
- context?: HttpContext;
18
- reportProgress?: boolean;
19
- params?: HttpParams;
20
- responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';
21
- withCredentials?: boolean;
22
- transferCache?: {
23
- includeHeaders?: string[];
24
- } | boolean;
25
- responseTypeClass?: new (...args: unknown[]) => K;
26
- });
27
- }