{"version":3,"file":"g2-common-sales-order-repository.mjs","sources":["../../../projects/sales-order-repository/src/lib/http.service.ts","../../../projects/sales-order-repository/src/lib/sales-order.service.ts","../../../projects/sales-order-repository/src/lib/sales-order.repository.ts","../../../projects/sales-order-repository/src/lib/sales-order.module.ts","../../../projects/sales-order-repository/src/public-api.ts","../../../projects/sales-order-repository/src/g2-common-sales-order-repository.ts"],"sourcesContent":["import {\r\n  HttpBackend,\r\n  HttpClient,\r\n  HttpErrorResponse,\r\n  HttpEvent,\r\n  HttpHandler,\r\n  HttpInterceptor,\r\n  HttpRequest,\r\n} from '@angular/common/http';\r\nimport { Inject, Injectable, InjectionToken, Injector } from '@angular/core';\r\nimport { Observable, catchError } from 'rxjs';\r\nimport {\r\n  ICbmSalesOrderModuleConfig,\r\n  SALES_ORDER_MODULE_CONFIG,\r\n} from './sales-order.module';\r\nimport { Router } from '@angular/router';\r\n\r\nclass SalesOrderHttpInterceptorHandler implements HttpHandler {\r\n  constructor(\r\n    private next: HttpHandler,\r\n    private interceptor: HttpInterceptor,\r\n  ) {}\r\n\r\n  handle(req: HttpRequest<any>): Observable<HttpEvent<any>> {\r\n    return this.interceptor.intercept(req, this.next);\r\n  }\r\n}\r\n\r\nclass SalesOrderHandlerService implements HttpHandler {\r\n  private chain: HttpHandler | null = null;\r\n\r\n  constructor(\r\n    private backend: HttpBackend,\r\n    private injector: Injector,\r\n    private interceptors: InjectionToken<HttpInterceptor[]>,\r\n  ) {}\r\n\r\n  handle(req: HttpRequest<any>): Observable<HttpEvent<any>> {\r\n    if (this.chain === null) {\r\n      const interceptors = this.injector.get(this.interceptors, []);\r\n\r\n      this.chain = interceptors.reduceRight(\r\n        (next, interceptor) =>\r\n          new SalesOrderHttpInterceptorHandler(next, interceptor),\r\n        this.backend,\r\n      );\r\n    }\r\n\r\n    return this.chain.handle(req);\r\n  }\r\n}\r\n\r\nexport const SALES_ORDER_HTTP_INTERCEPTORS = new InjectionToken<\r\n  HttpInterceptor[]\r\n>('SALES_ORDER_HTTP_INTERCEPTORS');\r\n\r\n@Injectable()\r\nexport class SalesOrderHttpService extends HttpClient {\r\n  constructor(\r\n    backend: HttpBackend,\r\n    private injector: Injector,\r\n  ) {\r\n    super(\r\n      new SalesOrderHandlerService(\r\n        backend,\r\n        injector,\r\n        SALES_ORDER_HTTP_INTERCEPTORS,\r\n      ),\r\n    );\r\n  }\r\n}\r\n\r\n@Injectable()\r\nexport class SalesOrderAuthInterceptor implements HttpInterceptor {\r\n  constructor(\r\n    @Inject(SALES_ORDER_MODULE_CONFIG)\r\n    private moduleConfig: ICbmSalesOrderModuleConfig,\r\n    private router: Router,\r\n  ) {}\r\n\r\n  intercept(\r\n    req: HttpRequest<any>,\r\n    next: HttpHandler,\r\n  ): Observable<HttpEvent<any>> {\r\n    const authToken = localStorage.getItem('tokenGlobal');\r\n    const { baseUrl } = this.moduleConfig;\r\n\r\n    const update: Parameters<typeof req.clone>[0] = {\r\n      url: `${baseUrl}/${req.url}`,\r\n    };\r\n\r\n    if (authToken) {\r\n      update.headers = req.headers.set('Authorization', `Bearer ${authToken}`);\r\n    }\r\n\r\n    const authReq = req.clone(update);\r\n\r\n    return next.handle(authReq).pipe(\r\n      catchError((error) => {\r\n        if (error instanceof HttpErrorResponse && error.status === 401) {\r\n          this.router.navigate(['auth', 'login']);\r\n        }\r\n\r\n        throw error;\r\n      }),\r\n    );\r\n  }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { SalesOrderHttpService } from './http.service';\r\nimport { CbmSalesOrderModel } from './sales-order.model';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpResponse } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class CbmSalesOrderService {\r\n  constructor(private http: SalesOrderHttpService) {}\r\n\r\n  list(params: CbmSalesOrderModel.ListParams): Observable<CbmSalesOrderModel.ListResponse> {\r\n    return this.http.get<CbmSalesOrderModel.ListResponse>('', {\r\n      params: params as any,\r\n    });\r\n  }\r\n\r\n  getOne(id: string): Observable<CbmSalesOrderModel.GetOneResponse> {\r\n    return this.http.get<CbmSalesOrderModel.GetOneResponse>(id);\r\n  }\r\n\r\n  save(data: CbmSalesOrderModel.SaveBody): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.http.post<CbmSalesOrderModel.ConfirmResponse>('', data);\r\n  }\r\n\r\n  update(\r\n    id: string,\r\n    data: CbmSalesOrderModel.UpdateBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.http.put<CbmSalesOrderModel.ConfirmResponse>(id, data);\r\n  }\r\n\r\n  changeStatus(\r\n    id: string,\r\n    data: CbmSalesOrderModel.ChangeStatusBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.http.put<CbmSalesOrderModel.ConfirmResponse>(`change-status/${id}`, data);\r\n  }\r\n\r\n  sendEmail(\r\n    id: string,\r\n    params?: CbmSalesOrderModel.SendEmailParams,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.http.get<CbmSalesOrderModel.ConfirmResponse>(`sent-email/${id}`, {\r\n      params: params as any,\r\n    });\r\n  }\r\n\r\n  downloadExcel(params: CbmSalesOrderModel.DownloadExcelParams): Observable<HttpResponse<Blob>> {\r\n    return this.http.get<Blob>('download/excel', {\r\n      params: params as any,\r\n      observe: 'response',\r\n      responseType: 'blob' as 'json',\r\n    });\r\n  }\r\n\r\n  downloadIndividualPdf(id: string): Observable<HttpResponse<Blob>> {\r\n    return this.http.get<Blob>(`download/pdf/individual/${id}`, {\r\n      observe: 'response',\r\n      responseType: 'blob' as 'json',\r\n    });\r\n  }\r\n\r\n  downloadIndividualExcel(id: string): Observable<HttpResponse<Blob>> {\r\n    return this.http.get<Blob>(`download/excel/individual/${id}`, {\r\n      observe: 'response',\r\n      responseType: 'blob' as 'json',\r\n    });\r\n  }\r\n}\r\n","import { Observable } from 'rxjs';\r\nimport { CbmSalesOrderModel } from './sales-order.model';\r\nimport { HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { CbmSalesOrderService } from './sales-order.service';\r\n\r\nexport interface ICbmSalesOrderRepository {\r\n  list(params: CbmSalesOrderModel.ListParams): Observable<CbmSalesOrderModel.ListResponse>;\r\n\r\n  getOne(id: string): Observable<CbmSalesOrderModel.GetOneResponse>;\r\n\r\n  save(data: CbmSalesOrderModel.SaveBody): Observable<CbmSalesOrderModel.ConfirmResponse>;\r\n\r\n  update(\r\n    id: string,\r\n    data: CbmSalesOrderModel.UpdateBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse>;\r\n\r\n  changeStatus(\r\n    id: string,\r\n    data: CbmSalesOrderModel.ChangeStatusBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse>;\r\n\r\n  sendEmail(\r\n    id: string,\r\n    params: CbmSalesOrderModel.SendEmailParams,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse>;\r\n\r\n  downloadExcel(params: CbmSalesOrderModel.DownloadExcelParams): Observable<HttpResponse<Blob>>;\r\n\r\n  downloadIndividualPdf(id: string): Observable<HttpResponse<Blob>>;\r\n\r\n  downloadIndividualExcel(id: string): Observable<HttpResponse<Blob>>;\r\n}\r\n\r\n@Injectable()\r\nexport class CbmSalesOrderRepository implements ICbmSalesOrderRepository {\r\n  constructor(private service: CbmSalesOrderService) {}\r\n\r\n  list(params: CbmSalesOrderModel.ListParams): Observable<CbmSalesOrderModel.ListResponse> {\r\n    return this.service.list(params);\r\n  }\r\n\r\n  getOne(id: string): Observable<CbmSalesOrderModel.GetOneResponse> {\r\n    return this.service.getOne(id);\r\n  }\r\n\r\n  save(data: CbmSalesOrderModel.SaveBody): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.service.save(data);\r\n  }\r\n\r\n  update(\r\n    id: string,\r\n    data: CbmSalesOrderModel.UpdateBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.service.update(id, data);\r\n  }\r\n\r\n  changeStatus(\r\n    id: string,\r\n    data: CbmSalesOrderModel.ChangeStatusBody,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.service.changeStatus(id, data);\r\n  }\r\n\r\n  sendEmail(\r\n    id: string,\r\n    params?: CbmSalesOrderModel.SendEmailParams,\r\n  ): Observable<CbmSalesOrderModel.ConfirmResponse> {\r\n    return this.service.sendEmail(id, params);\r\n  }\r\n\r\n  downloadExcel(params: CbmSalesOrderModel.DownloadExcelParams): Observable<HttpResponse<Blob>> {\r\n    return this.service.downloadExcel(params);\r\n  }\r\n\r\n  downloadIndividualPdf(id: string): Observable<HttpResponse<Blob>> {\r\n    return this.service.downloadIndividualPdf(id);\r\n  }\r\n\r\n  downloadIndividualExcel(id: string): Observable<HttpResponse<Blob>> {\r\n    return this.service.downloadIndividualExcel(id);\r\n  }\r\n}\r\n","import { HttpClientModule } from '@angular/common/http';\r\nimport { InjectionToken, ModuleWithProviders, NgModule } from '@angular/core';\r\nimport {\r\n  SALES_ORDER_HTTP_INTERCEPTORS,\r\n  SalesOrderAuthInterceptor,\r\n  SalesOrderHttpService,\r\n} from './http.service';\r\nimport { CbmSalesOrderService } from './sales-order.service';\r\nimport { CbmSalesOrderRepository } from './sales-order.repository';\r\n\r\nexport interface ICbmSalesOrderModuleConfig {\r\n  baseUrl: string;\r\n}\r\n\r\nexport const SALES_ORDER_MODULE_CONFIG =\r\n  new InjectionToken<ICbmSalesOrderModuleConfig>('SALES_ORDER_MODULE_CONFIG');\r\n\r\n@NgModule({\r\n  imports: [HttpClientModule],\r\n})\r\nexport class CbmSalesOrderModule {\r\n  static forRoot(\r\n    config: ICbmSalesOrderModuleConfig,\r\n  ): ModuleWithProviders<CbmSalesOrderModule> {\r\n    return {\r\n      ngModule: CbmSalesOrderModule,\r\n      providers: [\r\n        SalesOrderAuthInterceptor,\r\n        {\r\n          provide: SALES_ORDER_MODULE_CONFIG,\r\n          useValue: config,\r\n        },\r\n        {\r\n          provide: SALES_ORDER_HTTP_INTERCEPTORS,\r\n          useClass: SalesOrderAuthInterceptor,\r\n          multi: true,\r\n        },\r\n        SalesOrderHttpService,\r\n        CbmSalesOrderService,\r\n        CbmSalesOrderRepository,\r\n      ],\r\n    };\r\n  }\r\n}\r\n","/*\r\n * Public API Surface of sales-order-repository\r\n */\r\n\r\nexport * from './lib/index';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.SalesOrderHttpService","i1.CbmSalesOrderService"],"mappings":"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"}