dealposbarcode 1.3.4 → 1.3.7

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.
@@ -16,9 +16,9 @@
16
16
  <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css" rel="stylesheet">
17
17
  <link rel="manifest" href="manifest.webmanifest">
18
18
  <meta name="theme-color" content="#1976d2">
19
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.4/barcode/styles.css"></head>
19
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.7/barcode/styles.css"></head>
20
20
  <body>
21
21
  <app-root></app-root>
22
22
  <noscript>Please enable JavaScript to continue using this application.</noscript>
23
- <script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.4/barcode/runtime.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.4/barcode/polyfills.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.4/barcode/vendor.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.4/barcode/main.js" type="module"></script></body>
23
+ <script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.7/barcode/runtime.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.7/barcode/polyfills.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.7/barcode/vendor.js" type="module"></script><script src="https://cdn.jsdelivr.net/npm/dealposbarcode@1.3.7/barcode/main.js" type="module"></script></body>
24
24
  </html>
package/barcode/main.js CHANGED
@@ -413,7 +413,7 @@ LoginComponent.ɵcmp = /*@__PURE__*/ _angular_core__WEBPACK_IMPORTED_MODULE_3__[
413
413
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelement"](39, "img", 29);
414
414
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementEnd"]();
415
415
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementStart"](40, "a", 30)(41, "p", 31);
416
- _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵtext"](42, "Version 1.3.4");
416
+ _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵtext"](42, "Version 1.3.7");
417
417
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementEnd"]()()()()();
418
418
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementStart"](43, "footer", 32)(44, "div", 33)(45, "div", 34)(46, "p", 27);
419
419
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵtext"](47, "Powered by : ");
@@ -422,7 +422,7 @@ LoginComponent.ɵcmp = /*@__PURE__*/ _angular_core__WEBPACK_IMPORTED_MODULE_3__[
422
422
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelement"](49, "img", 29);
423
423
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementEnd"]()();
424
424
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementStart"](50, "div", 35)(51, "h5", 36)(52, "a", 37)(53, "p", 31);
425
- _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵtext"](54, "Version 1.3.4");
425
+ _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵtext"](54, "Version 1.3.7");
426
426
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵelementEnd"]()()()()()();
427
427
  } if (rf & 2) {
428
428
  _angular_core__WEBPACK_IMPORTED_MODULE_3__["ɵɵadvance"](16);
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","mappings":"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","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/guard/auth.guard.ts","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/modal-confirm-update/modal-confirm-update.component.ts","./src/app/modal-confirm-update/modal-confirm-update.component.html","./src/app/services/authentication-service/authentication.service.ts","./src/app/services/http-service/http.service.ts","./src/app/services/query-param-service/query-param.service.ts","./src/app/shared/components/autonumberic/autonumeric.directive.ts","./src/app/shared/components/autonumberic/autonumeric.module.ts","./src/app/shared/components/custom-toast/custom-toast.component.ts","./src/app/shared/components/custom-toast/custom-toast.component.html","./src/app/shared/components/modal-material/modal-material-config.ts","./src/app/shared/components/modal-material/modal-material.component.ts","./src/app/shared/components/modal-material/modal-material.component.html","./src/app/shared/enums/header-type.enum.ts","./src/app/shared/pipes/local-currency/local-currency.pipe.ts","./src/app/shared/pipes/tax-pipe/tax.pipe.ts","./src/app/shared/shared.module.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AppComponent } from './app.component';\r\nimport { AuthGuard } from './guard/auth.guard';\r\nimport { LoginComponent } from './login/login.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: AppComponent, children: [\r\n { path: '', component: LoginComponent },\r\n { \r\n path: 'pages', \r\n loadChildren: () => import('./pages/pages.module').then(m => m.PagesModule),\r\n canActivate: [AuthGuard]\r\n },\r\n { path: '', redirectTo: '', pathMatch: 'full' },\r\n ] }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n LoginComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n RouterModule.forRoot(routes)\r\n ],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { SwUpdate } from '@angular/service-worker';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { ModalConfirmUpdateComponent } from './modal-confirm-update/modal-confirm-update.component';\r\nimport { QueryParamService } from './services/query-param-service/query-param.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n destroy$: Subject<boolean>;\r\n constructor(\r\n private route: Router,\r\n private activateRoute: ActivatedRoute,\r\n private queryParamService: QueryParamService,\r\n updates: SwUpdate,\r\n private matDialog: MatDialog\r\n ) {\r\n this.destroy$ = new Subject();\r\n updates.versionUpdates.subscribe(event => {\r\n updates.activateUpdate().then(() => this.updateApp(event));\r\n });\r\n }\r\n updateApp(event) {\r\n if (event.type == 'VERSION_READY') {\r\n this.matDialog.open(ModalConfirmUpdateComponent, {disableClose: true});\r\n }\r\n }\r\n ngOnInit() {\r\n this.getLastRouteEvent();\r\n }\r\n\r\n getLastRouteEvent() {\r\n this.route.events\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.getParam();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n getParam() {\r\n this.activateRoute.queryParamMap\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(params => {\r\n if (params) {\r\n let ID = params.get('ID');\r\n let billNumber = params.get('Number');\r\n let outletName = params.get('Outlet');\r\n let queryParams = { ID: ID, billNumber: billNumber, outletName: outletName };\r\n this.queryParamService.setState(queryParams);\r\n }\r\n });\r\n }\r\n}\r\n","<ng-http-loader></ng-http-loader>\r\n<router-outlet></router-outlet>","import { DEFAULT_CURRENCY_CODE, LOCALE_ID, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { NgHttpLoaderModule } from 'ng-http-loader';\r\nimport { AuthGuard } from './guard/auth.guard';\r\nimport { CustomToastComponent } from './shared/components/custom-toast/custom-toast.component';\r\nimport { ServiceWorkerModule } from '@angular/service-worker';\r\nimport { environment } from '../environments/environment';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { ModalConfirmUpdateComponent } from './modal-confirm-update/modal-confirm-update.component';\r\n\r\n@NgModule({\r\n declarations: [AppComponent, ModalConfirmUpdateComponent],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n ToastrModule.forRoot({\r\n toastComponent: CustomToastComponent,\r\n positionClass: \"toast-bottom-right\",\r\n closeButton: true\r\n }),\r\n NgHttpLoaderModule.forRoot(),\r\n ServiceWorkerModule.register('ngsw-worker.js', {\r\n enabled: environment.production,\r\n registrationStrategy: 'registerImmediately'\r\n }),\r\n MatDialogModule,\r\n SharedModule\r\n ],\r\n providers: [\r\n AuthGuard\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthenticationService } from '../services/authentication-service/authentication.service';\r\n\r\n@Injectable()\r\n\r\nexport class AuthGuard implements CanActivate {\r\n\r\nconstructor(private _authService: AuthenticationService, private _router: Router){\r\n\r\n}\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\r\n if(this._authService.isAuthentication()){\r\n return true;\r\n } \r\n this._router.navigate(['']);\r\n return false;\r\n }\r\n \r\n}\r\n","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { HttpService } from '../services/http-service/http.service';\r\nimport { AuthenticationService } from '../services/authentication-service/authentication.service';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit, AfterViewInit {\r\n @ViewChild(\"domainAutoFocus\") domainElementRef: ElementRef;\r\n @ViewChild(\"passAutoFocus\") passElementRef: ElementRef;\r\n\r\n posDomain: string;\r\n username: string;\r\n password: string = '';\r\n passwordType: string = 'password';\r\n passwordIcon: string = 'eye-off';\r\n\r\n constructor(private _httpService: HttpService, private toastr: ToastrService, private auth: AuthenticationService,\r\n private elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit(): void {\r\n //change background color to light blue\r\n this.elementRef.nativeElement.ownerDocument.body.style.backgroundColor = '#edefff';\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initLoginForm();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n //Called once, before the instance is destroyed.\r\n //Add 'implements OnDestroy' to the class.\r\n this.elementRef.nativeElement.ownerDocument.body.style.backgroundColor = 'white';\r\n }\r\n\r\n initLoginForm() {\r\n let cookiesExist = this.auth.isLoginFormExist();\r\n this.setAutoFocusDomain();\r\n if (cookiesExist) {\r\n this.username = this.auth.getUsername();\r\n this.posDomain = this.auth.getDomain();\r\n this.setAutoFocusPass();\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n setAutoFocusDomain() {\r\n this.domainElementRef.nativeElement.focus();\r\n }\r\n\r\n setAutoFocusPass() {\r\n this.passElementRef.nativeElement.focus();\r\n }\r\n\r\n //Function: hideShowPassword() will toggle the password visibility with the eye icon\r\n hideShowPassword() {\r\n this.passwordType = this.passwordType === 'text' ? 'password' : 'text';\r\n this.passwordIcon = this.passwordIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n login(): void {\r\n var obj = {\r\n client_id: this.username,\r\n client_secret: this.password,\r\n }\r\n\r\n var check = {\r\n POSDomain: this.posDomain\r\n }\r\n\r\n var url = \"\";\r\n if(!this.posDomain.includes(\"http://\")){\r\n url = \"https://\" + this.posDomain;\r\n }\r\n\r\n this._httpService.post<any>(url + \"/api/v3/Token\", JSON.stringify(obj)).subscribe(data => {\r\n if (data.access_token != null || data.access_token != undefined) {\r\n let token = data.access_token;\r\n let expiredAt = data.expiredAt;\r\n\r\n //Set to localstorage\r\n localStorage.setItem(\"Token\", token);\r\n localStorage.setItem(\"ExpireDate\", expiredAt);\r\n this.auth.saveLoginForm(this.posDomain, this.username);\r\n\r\n let decoded = jwt_decode(token);\r\n let roles = decoded[\"http://schemas.microsoft.com/ws/2008/06/identity/claims/role\"];\r\n let requiredRole = roles ? roles.find(x => x == \"Products\" || x == \"Prod\") : null;\r\n \r\n this.auth.setRoles(roles);\r\n \r\n if(requiredRole == \"Products\" || requiredRole == \"Prod\"){\r\n this.auth.login(\"/pages\");\r\n }\r\n else{\r\n this.toastr.error('Require products role to access this feature!', 'Error');\r\n }\r\n }\r\n }, err => {\r\n console.error(err);\r\n })\r\n }\r\n}","<div class=\"container\">\r\n <div class=\"row mt-5 mt-md-0 align-self-center\">\t\r\n <div class=\" col-12 col-md-7 text-center\">\r\n <h1 class=\"big-display my-5 py-5 robotoslab d-none d-md-block\">DealPOS - Barcode</h1>\r\n <img src=\"https://res.cloudinary.com/dealpos/image/upload/w_300/v1615189586/Barcode/barcode.png\" alt=\"integration-image\" class=\"img-fluid mt-5 pt-5\">\r\n </div>\r\n <div class=\"col-12 col-md-5 order-first order-md-last\">\r\n <h1 class=\"big-display text-center my-5 py-5 robotoslab d-block d-md-none\">DealPOS - Barcode</h1>\r\n <div class=\"card\">\r\n <div class=\"card-body py-8\">\r\n <div class=\"card-title mt-1\">\r\n <h2 class=\"ms-2 fw-normal robotoslab\">Sign in</h2>\r\n </div>\r\n <form class=\"mt-6\"> \r\n <div class=\"form-label-group\">\r\n <input #domainAutoFocus type=\"text\" [(ngModel)]=\"posDomain\" name=\"inputPOSDomain\" id=\"inputPOSDomain\" class=\"form-control text-start\"\r\n placeholder=\"POS Domain (xyz.dealpos.com)\" required pattern=\"(https:\\/\\/)?\\w+.dealpos(.com|.net|.co.id)(\\/)?\" #domain=\"ngModel\">\r\n <label for=\"inputPOSDomain\" class=\"text-start\">POS Domain (xyz.dealpos.com)</label>\r\n </div>\r\n <div class=\"form-label-group\">\r\n <input type=\"text\" [(ngModel)]=\"username\" name=\"username\" id=\"inputUsername\" class=\"form-control text-start\"\r\n placeholder=\"Username\" required>\r\n <label for=\"inputUsername\" class=\"text-start\">Username</label>\r\n </div>\r\n <div class=\"form-label-group mb-5 mb-md-2\">\r\n <input #passAutoFocus [type]=\"passwordType\" [(ngModel)]=\"password\" name=\"something\" id=\"inputPassword\" class=\"form-control text-start\"\r\n placeholder=\"Password\" required>\r\n <label for=\"inputPassword\" class=\"text-start\">Password</label>\r\n <i *ngIf=\"password != ''\" [ngClass]=\"{'fa-eye-slash': (passwordIcon == 'eye') , 'fa-eye' : (passwordIcon == 'eye-off') }\" class=\"passwordIcon fas fa-lg\" (click)='hideShowPassword()'></i>\r\n </div>\r\n <div class=\"row justify-content-start align-items-center\">\r\n <div class=\"col-12 col-lg-5 order-first order-md-last\">\r\n <button class=\"btn btn-xl btn-primary btn-block font125rem robotoslab px-10\" type=\"submit\" (click)=\"login()\">Log in</button>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 d-block d-md-none text-center\">\r\n <p class=\"pt-1rem me-3\">Powered by : </p>\r\n <a target=\"_blank\" href=\"https://www.dealpos.com\"><img src=\"https://res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png\" alt=\"dealpos-logo\" class=\"img-fluid\"></a>\r\n <a href=\"https://changelog.dealpos.com/?categories=cat_IOl3P9ko0ayhv&view=complete\" target=\"_blank\"><p class=\"pt-1rem fst-italic\">Version 1.3.4</p></a>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <footer class=\"mx-5 pb-5 mb-5 d-none d-md-block\">\r\n <div class=\"row justify-content-between align-items-center\">\r\n <div class=\"col-auto d-inline-flex\">\r\n <p class=\"pt-1rem me-3\">Powered by : </p>\r\n <a target=\"_blank\" href=\"https://www.dealpos.com\"><img src=\"https://res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png\" alt=\"dealpos-logo\" class=\"img-fluid\"></a>\r\n </div>\r\n <div class=\"col-auto\">\r\n <h5 class=\"fw-normal\">\r\n <a style=\"text-decoration: none;\" href=\"https://changelog.dealpos.com/?categories=cat_IOl3P9ko0ayhv&view=complete\" target=\"_blank\"><p class=\"pt-1rem fst-italic\">Version 1.3.4</p></a>\r\n </h5>\r\n </div>\r\n </div>\r\n </footer>","import { Component } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalMaterialConfig } from '../shared/components/modal-material/modal-material-config';\r\n\r\n@Component({\r\n selector: 'app-modal-confirm-update',\r\n templateUrl: './modal-confirm-update.component.html',\r\n styleUrls: ['./modal-confirm-update.component.scss']\r\n})\r\nexport class ModalConfirmUpdateComponent {\r\n config: ModalMaterialConfig;\r\n constructor(public dialogRef: MatDialogRef<ModalConfirmUpdateComponent>) {\r\n this.config = new ModalMaterialConfig();\r\n this.config.title = \"There is a new update available\";\r\n this.config.hideMoreButton = true;\r\n }\r\n onOk() {\r\n document.location.reload();\r\n }\r\n}\r\n","<modal-material [config]=\"config\" (onOk)=\"onOk()\" (onCancel)=\"dialogRef.close()\">\r\n <content>\r\n <div class=\"row p-3\">\r\n <h2>Do you want to refresh your current app?</h2>\r\n </div>\r\n </content>\r\n</modal-material>","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService {\r\n private _roles$: BehaviorSubject<string[]>;\r\n\r\n constructor(private _router: Router, private toaster: ToastrService) {\r\n this._roles$ = new BehaviorSubject([]);\r\n }\r\n\r\n login(redirectURL: string): void {\r\n this._router.navigate([redirectURL]);\r\n }\r\n\r\n logout(): void {\r\n this._roles$.next([]);\r\n localStorage.removeItem(\"Roles\");\r\n this._router.navigate(['']);\r\n }\r\n\r\n setRoles(roles: string[]) {\r\n localStorage.setItem(\"Roles\", JSON.stringify(roles));\r\n this._roles$.next(roles);\r\n }\r\n\r\n getRoles(): string[] {\r\n let roles = this._roles$.getValue();\r\n if (roles.length == 0) {\r\n let rolesStorage = localStorage.getItem(\"Roles\");\r\n roles = JSON.parse(rolesStorage);\r\n this._roles$.next(roles);\r\n }\r\n return roles;\r\n }\r\n\r\n isAuthentication(): boolean {\r\n return localStorage.getItem('Token') != null && !this.isTokenExpired();\r\n }\r\n\r\n isTokenExpired(): boolean {\r\n const expireDate = new Date(localStorage.getItem('ExpireDate'));\r\n if (expireDate.getTime() - new Date().getTime() > 0){\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n saveLoginForm(domain: string, username: string): void {\r\n localStorage.setItem('Domain', domain);\r\n localStorage.setItem('Username', username);\r\n }\r\n\r\n getUsername(): string {\r\n let username = localStorage.getItem('Username');\r\n return username;\r\n }\r\n\r\n getDomain(): string {\r\n let domain = localStorage.getItem('Domain');\r\n return domain;\r\n }\r\n\r\n isLoginFormExist(): boolean {\r\n let isDomainExist = this.getDomain();\r\n let isUsernameExist = this.getUsername();\r\n\r\n let retVal = false\r\n if (isDomainExist && isUsernameExist) {\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { timeout } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class HttpService {\r\n\r\n constructor(private http: HttpClient, private toastr: ToastrService) { }\r\n\r\n public postFormData(url: string, data: FormData): Observable<any> {\r\n return new Observable(observer => {\r\n let token = localStorage.getItem('Token');\r\n let httpHeaders = new HttpHeaders({\r\n 'Authorization': 'Bearer ' + token\r\n });\r\n let options = {\r\n headers: httpHeaders\r\n };\r\n\r\n this.http.post<any>(url, data, options).pipe(\r\n timeout(100000)\r\n ).subscribe(data => {\r\n observer.next(data);\r\n observer.complete();\r\n }, err => {\r\n if (err.status == 200) {\r\n observer.next(err.error.text);\r\n observer.complete();\r\n } else {\r\n let errMessage = this.errorMessageHandling(err);\r\n this.toastr.error(errMessage.message, errMessage.header);\r\n observer.error(err);\r\n }\r\n })\r\n });\r\n\r\n }\r\n\r\n public post<T>(url: string, data?: any, time: number = 100000): Observable<T> {\r\n return new Observable(observer => {\r\n let token = localStorage.getItem('Token');\r\n let httpHeaders = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Cache-Control': 'no-cache',\r\n });\r\n if (token) {\r\n httpHeaders = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Cache-Control': 'no-cache',\r\n 'Authorization': 'Bearer ' + token\r\n });\r\n }\r\n let options = {\r\n headers: httpHeaders\r\n };\r\n\r\n this.http.post<T>(url, data, options).pipe(\r\n timeout(time),\r\n ).subscribe(result => {\r\n observer.next(result);\r\n observer.complete();\r\n }, (err: HttpErrorResponse) => {\r\n //Exception Handling\r\n\r\n if (err.status == 200) {\r\n //when Response is not application/json ex: some API return text/csv\r\n observer.next(err.error.text);\r\n observer.complete();\r\n }\r\n else\r\n {\r\n let unauthorized = this.unauthorizedErrorHandling(err);\r\n if (!unauthorized) {\r\n let errMessage = this.errorMessageHandling(err);\r\n this.toastr.error(errMessage.message != \"\" ? errMessage.message : \"An unknown error has occured!\", errMessage.header);\r\n }\r\n\r\n observer.error(err);\r\n }\r\n })\r\n });\r\n }\r\n\r\n private unauthorizedErrorHandling(err: HttpErrorResponse) {\r\n let retVal = false;\r\n if (err.status == 401) {\r\n //Unauthorized Error Handling\r\n this.toastr.error(\"We can't log you in because of authenctication error\", \"Unauthorized\");\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n private errorMessageHandling(err: HttpErrorResponse): { message: string, header: string } {\r\n let header = \"API Error\";\r\n let message = \"Exception Message\";\r\n\r\n if (err.error) {\r\n //Handle 4XX error and 5XX Error\r\n header = \"API Error - \" + err.status;\r\n if (err.error.Message) {\r\n message = err.error.Message;\r\n }\r\n }\r\n else {\r\n if (err.message) {\r\n //Handle timeout scenario we do not receive HTTP StatusCode\r\n header = \"API Error - \" + err.name;\r\n message = err.message;\r\n }\r\n }\r\n return { header: header, message: message };\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class QueryParamService {\r\n /**\r\n * content query param from Product or Supplier Bill\r\n */\r\n private store: BehaviorSubject<{ ID: string, billNumber: string, outletName: string }>;\r\n\r\n\r\n constructor() {\r\n this.store = new BehaviorSubject({ ID: null, billNumber: null, outletName: null });\r\n }\r\n\r\n getState() {\r\n return this.store.asObservable();\r\n }\r\n\r\n setState(param: { ID: string, billNumber: string, outletName: string }) {\r\n this.store.next(param);\r\n }\r\n}\r\n","import { Directive, Input, ElementRef, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport * as AutoNumeric from 'autonumeric';\r\n@Directive({\r\n selector: '[autoNum]',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AutonumericDirective), multi: true }\r\n ],\r\n host: {\r\n \"(keyup)\": \"onKeyUp()\"\r\n }\r\n})\r\nexport class AutonumericDirective implements ControlValueAccessor {\r\n @Input() percentage: string;\r\n @Input() preventNegative: boolean;\r\n @Input() decimalPlaces: number = 4;\r\n @Input() modifyValueOnWheel: boolean = true;\r\n\r\n private max: string = '999999999999999.9999';\r\n @Input('max') set _max(value: string) {\r\n if (value) {\r\n this.max = value;\r\n this.updateNumericSettings();\r\n }\r\n }\r\n\r\n private min: string = '-999999999999999.9999';\r\n @Input('min') set _min(value: string) {\r\n if (value) {\r\n this.min = value;\r\n this.updateNumericSettings();\r\n }\r\n }\r\n\r\n\r\n public numericElement: AutoNumeric;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n this.preventNegative = false;\r\n const Options = {\r\n digitGroupSeparator: ',', //separator of number\r\n decimalCharacter: '.', //semicolon separator replaced with point \r\n decimalPlaces: this.decimalPlaces, // total of decimal after separator \r\n maximumValue: this.max, // maximum of number\r\n minimumValue: this.min, // minum of of number\r\n allowDecimalPadding: false,\r\n showWarnings: false,\r\n };\r\n this.numericElement = new AutoNumeric(this.elementRef.nativeElement, null, Options);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.percentage == \"\") {\r\n this.max = '100';\r\n\r\n }\r\n\r\n if (this.preventNegative) {\r\n this.min = '0.00';\r\n }\r\n\r\n this.updateNumericSettings();\r\n }\r\n\r\n private updateNumericSettings() {\r\n const OptionsUpdate = {\r\n maximumValue: this.max, // maximum of number\r\n minimumValue: this.min, // minimum of number,\r\n readOnly: this.isElementDisabled(),\r\n decimalPlaces: this.decimalPlaces, // total of decimal after separator \r\n modifyValueOnWheel: this.modifyValueOnWheel\r\n };\r\n this.numericElement.update(OptionsUpdate);\r\n }\r\n\r\n onKeyUp(): void {\r\n let number = this.numericElement.getNumber();\r\n this.propagateChange(number);\r\n }\r\n\r\n isElementDisabled(): boolean {\r\n let retVal = false;\r\n const readonly = this.elementRef.nativeElement.readOnly;\r\n const disabled = this.elementRef.nativeElement.disabled;\r\n\r\n if ((readonly === true) || (disabled === true)) {\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n //ControlValueAccessor implementations\r\n propagateChange: Function = (_: any) => { };\r\n writeValue(newValue: number): void {\r\n if (newValue != null) {\r\n this.numericElement.set(newValue);\r\n }\r\n }\r\n registerOnChange(fn: Function) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched(): void { }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AutonumericDirective } from './autonumeric.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n AutonumericDirective\r\n ],\r\n exports: [\r\n AutonumericDirective\r\n ]\r\n})\r\nexport class AutoNumberModule {}","import { trigger, state, style, transition, animate, keyframes } from '@angular/animations';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Toast, ToastrService, ToastPackage } from 'ngx-toastr';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: '[custom-toast-component]',\r\n styleUrls: [\"./custom-toast.component.scss\"],\r\n templateUrl: \"./custom-toast.component.html\" ,\r\n animations: [\r\n trigger('flyInOut', [\r\n state('inactive', style({\r\n opacity: 0,\r\n })),\r\n transition('inactive => active', animate('400ms ease-out', keyframes([\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(-30deg)',\r\n opacity: 0,\r\n }),\r\n style({\r\n transform: 'skewX(20deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'skewX(-5deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'none',\r\n opacity: 1,\r\n }),\r\n ]))),\r\n transition('active => removed', animate('400ms ease-out', keyframes([\r\n style({\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(30deg)',\r\n opacity: 0,\r\n }),\r\n ]))),\r\n ]),\r\n ],\r\n preserveWhitespaces: false,\r\n})\r\nexport class CustomToastComponent extends Toast implements OnInit {\r\n\r\n // constructor is only necessary when not using AoT\r\n constructor(\r\n protected toastrService: ToastrService,\r\n public toastPackage: ToastPackage,\r\n ) {\r\n super(toastrService, toastPackage);\r\n }\r\n\r\n ngOnInit(): void {\r\n //Called after the constructor, initializing input properties, and the first call to ngOnChanges.\r\n //Add 'implements OnInit' to the class.\r\n }\r\n\r\n action(event: Event) {\r\n event.stopPropagation();\r\n this.toastPackage.triggerAction();\r\n return false;\r\n }\r\n}","<div class=\"toast-case\">\r\n <div class=\"row toast-header\" *ngIf=\"title\" [style.display]=\"state.value === 'inactive' ? 'none' : ''\">\r\n <div class=\"col-9 px-0\">\r\n <div [class]=\"options.titleClass\" [attr.aria-label]=\"title\">\r\n <h4>{{title}}</h4>\r\n </div>\r\n </div>\r\n <div class=\"col-auto mt-5 pr-0\">\r\n <a *ngIf=\"options.closeButton\" (click)=\"remove()\" class=\"btn toast-close-button btn-sm\">\r\n x\r\n </a>\r\n </div>\r\n </div>\r\n <div class=\"row toast-body\" [ngClass]=\"{'notitle': title == null}\" *ngIf=\"message && options.enableHtml\"\r\n role=\"alert\" aria-live=\"polite\" [class]=\"options.messageClass\" [innerHTML]=\"message\"></div>\r\n <div class=\"row toast-body\" [ngClass]=\"{'notitle': title == null}\" *ngIf=\"message && !options.enableHtml\"\r\n role=\"alert\" aria-live=\"polite\" [class]=\"options.messageClass\" [attr.aria-label]=\"message\">\r\n {{ message }}\r\n </div>\r\n <a *ngIf=\"options.closeButton && (title == null)\" (click)=\"remove()\" class=\"btn toast-close-button btn-sm \">\r\n x\r\n </a>\r\n <div *ngIf=\"options.progressBar\">\r\n <div class=\"toast-progress\" [style.width]=\"width + '%'\"></div>\r\n </div>\r\n</div>","import { HeaderType } from \"../../enums/header-type.enum\";\r\n\r\nexport class ModalMaterialConfig {\r\n title = \"New Modal\";\r\n titleExtra = \"\";\r\n okText= \"Ok (F2)\";\r\n cancelText = \"Cancel\";\r\n hideFooter = false;\r\n hideCancel = false;\r\n hideOk = false;\r\n hideClose = false;\r\n eMoney = false;\r\n headerType = HeaderType.Success;\r\n validated = true;\r\n\r\n customWidth = 'initial';\r\n\r\n bodyScrollable = false;\r\n hideScrollbar = false;\r\n disableKeyup? = false;\r\n hideMoreButton = false;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { HeaderType } from \"../../enums/header-type.enum\";\r\nimport { ModalMaterialConfig } from \"./modal-material-config\";\r\n\r\n@Component({\r\n selector: \"modal-material\",\r\n templateUrl: \"./modal-material.component.html\",\r\n styleUrls: [\"./modal-material.component.scss\"],\r\n})\r\nexport class ModalMaterialComponent implements OnInit {\r\n @Input() config? : ModalMaterialConfig;\r\n\r\n @Output() onOk = new EventEmitter<any>();\r\n @Output() onCancel = new EventEmitter<any>();\r\n @Output() onClose = new EventEmitter<any>();\r\n @Output() onBack = new EventEmitter<any>();\r\n @Output() onShowMore = new EventEmitter<boolean>();\r\n\r\n term = \"\";\r\n background: string = \"\";\r\n more = false;\r\n\r\n ngOnInit(): void {\r\n if (this.config == null){\r\n this.config = new ModalMaterialConfig();\r\n }\r\n\r\n switch (this.config.headerType) {\r\n case HeaderType.Success:\r\n this.background = \"bg-success\";\r\n break;\r\n case HeaderType.Warning:\r\n this.background = \"bg-warning\";\r\n break;\r\n case HeaderType.Info:\r\n this.background = \"bg-warning\";\r\n break;\r\n case HeaderType.Error:\r\n this.background = \"bg-danger\";\r\n break;\r\n default:\r\n this.background = \"\";\r\n break;\r\n }\r\n }\r\n\r\n onKeyup(event: KeyboardEvent): void {\r\n if (this.config) {\r\n if (!this.config.disableKeyup) {\r\n if (event.code == \"F2\") {\r\n this.onOk.emit();\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","<div (keyup)=\"onKeyup($event)\" class=\"modal-material d-flex align-items-start flex-column position-relative maxHeight\"\r\n [style.width]=\"config?.customWidth\"\r\n [ngClass]=\"{ bodyScrollable: config?.bodyScrollable, hideScrollbar: config?.hideScrollbar }\">\r\n <div mat-dialog-title class=\"d-flex w-100 justify-content-between modal-header position-relative {{\r\n background\r\n }}\">\r\n <div class=\"back-button position-absolute pointer\" (click)=\"onBack.emit()\" *ngIf=\"config?.eMoney\">\r\n <a class=\"btn back-button\"><i class=\"fas fa-arrow-left\"></i></a>\r\n </div>\r\n <div class=\"d-flex flex-row\" [ngClass]=\"{ 'mx-auto': config?.eMoney }\">\r\n <h4 class=\"fw-normal\">{{ config?.title }}</h4>\r\n <ng-content select=\"header\"></ng-content>\r\n </div>\r\n <div *ngIf=\"!config?.hideClose\">\r\n <a class=\"btn-light-blue btn-sm pointer close\" (click)=\"onCancel.emit()\">\r\n <i class=\"fa fa-times fa-lg text-primary\"></i>\r\n </a>\r\n </div>\r\n </div>\r\n <mat-dialog-content class=\"modal-body w-100\" [ngClass]=\"{ 'show-footer': !config?.hideFooter }\">\r\n <ng-content select=\"content\"></ng-content>\r\n\r\n <ng-content select=\"more-content\" *ngIf=\"more\"></ng-content>\r\n </mat-dialog-content>\r\n <mat-dialog-actions *ngIf=\"!config?.hideFooter\" class=\"w-100 py-7 border-top d-flex justify-content-end\">\r\n <a *ngIf=\"!config?.hideMoreButton\" class=\"more clearfix\" (click)=\"more = !more\">More</a>\r\n <ng-content select=\"footer\"></ng-content>\r\n <a *ngIf=\"!config?.hideCancel\" class=\"btn btn-light-blue text-primary btn-lg fw-bold mx-3\"\r\n (click)=\"onCancel.emit()\">\r\n {{ config?.cancelText ? config?.cancelText : \"Cancel\" }}</a>\r\n\r\n <button *ngIf=\"!config?.hideOk\" class=\"btn btn-light-blue me-6 text-primary btn-lg fw-bold mx-3\"\r\n [disabled]=\"!config?.validated\" (click)=\"onOk.emit()\">\r\n {{ config?.okText ? config?.okText : \"Ok (F2)\" }}\r\n </button>\r\n </mat-dialog-actions>\r\n</div>","export enum HeaderType {\r\n Success = \"Success\",\r\n Info = \"Info\",\r\n Warning = \"Warning\",\r\n Error = \"Error\",\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'localCurrency'\r\n})\r\nexport class LocalCurrencyPipe implements PipeTransform {\r\n\r\n transform(value: number, currencySymbol: string, dec: number): string {\r\n let valFormated = value.toFixed(dec);\r\n let localCurrency = currencySymbol+\" \"+valFormated;\r\n return localCurrency;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'taxPipe'\r\n})\r\nexport class TaxPipe implements PipeTransform {\r\n\r\n transform(value: number, tax: number): number {\r\n let priceCounted = value;\r\n let taxVal = 0;\r\n if (tax && tax !== 0) {\r\n taxVal = value*(tax/100); \r\n priceCounted = value+taxVal;\r\n }\r\n return priceCounted;\r\n }\r\n\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { ModalMaterialComponent } from './components/modal-material/modal-material.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { TaxPipe } from './pipes/tax-pipe/tax.pipe';\r\nimport { LocalCurrencyPipe } from './pipes/local-currency/local-currency.pipe';\r\nimport { CustomToastComponent } from './components/custom-toast/custom-toast.component';\r\nimport { AutoNumberModule } from './components/autonumberic/autonumeric.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NgSelectModule,\r\n ReactiveFormsModule,\r\n\r\n MatDialogModule,\r\n MatAutocompleteModule,\r\n AutoNumberModule\r\n ],\r\n declarations: [\r\n ModalMaterialComponent,\r\n CustomToastComponent,\r\n\r\n TaxPipe,\r\n LocalCurrencyPipe,\r\n ],\r\n exports: [\r\n FormsModule,\r\n NgSelectModule,\r\n ReactiveFormsModule,\r\n\r\n //MATERIAL MODULE\r\n MatDialogModule,\r\n MatAutocompleteModule,\r\n\r\n ModalMaterialComponent,\r\n\r\n TaxPipe,\r\n LocalCurrencyPipe,\r\n AutoNumberModule\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":[],"sourceRoot":"webpack:///"}
1
+ {"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;;;;;;;AAA+C;AAEF;AACkC;AACxB;AACR;AACA;AACU;;;AAEzD,MAAM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,wDAAY,EAAE,QAAQ,EAAE;YAC7C,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,kEAAc,EAAE;YACvC;gBACE,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,GAAG,EAAE,CAAC,4JAA8B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC3E,WAAW,EAAE,CAAC,wDAAS,CAAC;aACzB;YACD,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAChD,EAAE;CACJ,CAAC;AAcK,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHAPzB,yDAAY;QACZ,uDAAW;QACX,yFAAuB;QACvB,iEAAoB,CAAC,MAAM,CAAC,EAEpB,yDAAY;mIAEX,gBAAgB,mBAVzB,kEAAc,aAGd,yDAAY;QACZ,uDAAW;QACX,yFAAuB,wEAGf,yDAAY;;;;;;;;;;;;;;;;;;;;;;;;AC7BgD;AAEzC;AACY;AACyD;;;;;;;AAQ7F,MAAM,YAAY;IAEvB,YACU,KAAa,EACb,aAA6B,EAC7B,iBAAoC,EAC5C,OAAiB,EACT,SAAoB;QAJpB,UAAK,GAAL,KAAK,CAAQ;QACb,kBAAa,GAAb,aAAa,CAAgB;QAC7B,sBAAiB,GAAjB,iBAAiB,CAAmB;QAEpC,cAAS,GAAT,SAAS,CAAW;QAE5B,IAAI,CAAC,QAAQ,GAAG,IAAI,yCAAO,EAAE,CAAC;QAC9B,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YACvC,OAAO,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,KAAK;QACb,IAAI,KAAK,CAAC,IAAI,IAAI,eAAe,EAAE;YACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,6GAA2B,EAAE,EAAC,YAAY,EAAE,IAAI,EAAC,CAAC,CAAC;SACxE;IACH,CAAC;IACD,QAAQ;QACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,KAAK,CAAC,MAAM;aACd,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,KAAK,YAAY,0DAAa,EAAE;gBAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;aACjB;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED,WAAW;QACT,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,aAAa;aAC7B,IAAI,CAAC,yDAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B,SAAS,CAAC,MAAM,CAAC,EAAE;YAClB,IAAI,MAAM,EAAE;gBACV,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,WAAW,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;gBAC7E,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC;IACP,CAAC;;wEAlDU,YAAY;0GAAZ,YAAY;QCdzB,4EAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACCyB;AAEF;AACT;AACgC;AACvB;AACd;AACU;AACL;AACgD;AACjC;AACJ;AACC;AACL;AAC8C;;;;;AA2B7F,MAAM,SAAS;;kEAAT,SAAS;sGAAT,SAAS,cAFR,wDAAY;2GAHb;QACT,wDAAS;KACV,YAnBC,oEAAa;QACb,iEAAgB;QAChB,yFAAuB;QACvB,mEAAgB;QAChB,6DAAoB,CAAC;YACnB,cAAc,EAAE,wGAAoB;YACpC,aAAa,EAAE,oBAAoB;YACnC,WAAW,EAAE,IAAI;SAClB,CAAC;QACF,uEAA0B,EAAE;QAC5B,kFAA4B,CAAC,gBAAgB,EAAE;YAC7C,OAAO,EAAE,6EAAsB;YAC/B,oBAAoB,EAAE,qBAAqB;SAC5C,CAAC;QACF,sEAAe;QACf,+DAAY;mIAOH,SAAS,mBAxBL,wDAAY,EAAE,6GAA2B,aAEtD,oEAAa;QACb,iEAAgB;QAChB,yFAAuB;QACvB,mEAAgB,qMAWhB,sEAAe;QACf,+DAAY;;;;;;;;;;;;;;;;;;;;;AC5BT,MAAM,SAAS;IAEtB,YAAoB,YAAmC,EAAU,OAAe;QAA5D,iBAAY,GAAZ,YAAY,CAAuB;QAAU,YAAO,GAAP,OAAO,CAAQ;IAEhF,CAAC;IACC,WAAW,CACT,IAA4B,EAC5B,KAA0B;QAC1B,IAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAC;YACtC,OAAO,IAAI,CAAC;SACb;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;;kEAbU,SAAS;0GAAT,SAAS,WAAT,SAAS;;;;;;;;;;;;;;;;;;;;;;ACLc;;;;;;;;;;;;IC0BpB,wEAAsL;IAA7B,sRAAS,mFAAkB,KAAC;IAAC,4DAAI;;;IAAhK,0MAA+F;;ADjBlI,MAAM,cAAc;IAUzB,YAAoB,YAAyB,EAAU,MAAqB,EAAU,IAA2B,EACvG,UAAsB,EAAU,GAAsB;QAD5C,iBAAY,GAAZ,YAAY,CAAa;QAAU,WAAM,GAAN,MAAM,CAAe;QAAU,SAAI,GAAJ,IAAI,CAAuB;QACvG,eAAU,GAAV,UAAU,CAAY;QAAU,QAAG,GAAH,GAAG,CAAmB;QALhE,aAAQ,GAAW,EAAE,CAAC;QACtB,iBAAY,GAAW,UAAU,CAAC;QAClC,iBAAY,GAAW,SAAS,CAAC;IAIjC,CAAC;IAED,QAAQ;QACN,uCAAuC;QACvC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;IACrF,CAAC;IAED,eAAe;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,WAAW;QACT,gDAAgD;QAChD,0CAA0C;QAC1C,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,OAAO,CAAC;IACnF,CAAC;IAED,aAAa;QACX,IAAI,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,YAAY,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;IACH,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC9C,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC5C,CAAC;IAED,oFAAoF;IACpF,gBAAgB;QACd,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,CAAC;IAED,KAAK;QACH,IAAI,GAAG,GAAG;YACR,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,aAAa,EAAE,IAAI,CAAC,QAAQ;SAC7B;QAED,IAAI,KAAK,GAAG;YACV,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B;QAED,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAC;YACrC,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;SACnC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAM,GAAG,GAAG,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACvF,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,EAAE;gBAC/D,IAAI,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;gBAC9B,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAE/B,qBAAqB;gBACrB,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACrC,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBAC9C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAEvD,IAAI,OAAO,GAAG,sDAAU,CAAC,KAAK,CAAC,CAAC;gBAChC,IAAI,KAAK,GAAG,OAAO,CAAC,8DAA8D,CAAC,CAAC;gBACpF,IAAI,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,UAAU,IAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAEnF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAE1B,IAAG,YAAY,IAAI,UAAU,IAAI,YAAY,IAAI,MAAM,EAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;iBAC3B;qBACG;oBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,EAAE,OAAO,CAAC,CAAC;iBAC7E;aACF;QACH,CAAC,EAAE,GAAG,CAAC,EAAE;YACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC;IACJ,CAAC;;4EA/FU,cAAc;4GAAd,cAAc;;;;;;;;QCX3B,yEAAuB;QAGgD,4EAAiB;QAAA,4DAAK;QACnF,oEAAqJ;QACzJ,4DAAM;QACN,yEAAuD;QACsB,4EAAiB;QAAA,4DAAK;QACjG,yEAAkB;QAG0B,mEAAO;QAAA,4DAAK;QAEpD,4EAAmB;QAEqB,sLAAuB;QAA3D,4DACuI;QACvI,6EAA+C;QAAA,wFAA4B;QAAA,4DAAQ;QAErF,2EAA8B;QACT,qLAAsB;QAAzC,4DACuC;QACvC,6EAA8C;QAAA,oEAAQ;QAAA,4DAAQ;QAEhE,2EAA2C;QACG,qLAAsB;QAAlE,4DACkC;QAClC,6EAA8C;QAAA,oEAAQ;QAAA,4DAAQ;QAC9D,yGAA0L;QAC5L,4DAAM;QACN,2EAA0D;QAEqC,uIAAS,WAAO,IAAC;QAAC,kEAAM;QAAA,4DAAS;QAOxI,2EAAkD;QACxB,yEAAa;QAAA,4DAAI;QACzC,yEAAkD;QAAA,sEAAyH;QAAA,4DAAI;QAC/K,yEAAoG;QAA8B,yEAAa;QAAA,4DAAI;QAKzJ,8EAAiD;QAGnB,yEAAa;QAAA,4DAAI;QACzC,yEAAkD;QAAA,sEAAyH;QAAA,4DAAI;QAEjL,2EAAsB;QAE+I,yEAAa;QAAA,4DAAI;;QAxCxI,2DAAuB;QAAvB,kFAAuB;QAKxC,0DAAsB;QAAtB,iFAAsB;QAKnB,0DAAqB;QAArB,kFAAqB;QAGvC,0DAAoB;QAApB,oFAAoB;;;;;;;;;;;;;;;;;;;;AC1BwD;;;;AAOzF,MAAM,2BAA2B;IAEtC,YAAmB,SAAoD;QAApD,cAAS,GAAT,SAAS,CAA2C;QACrE,IAAI,CAAC,MAAM,GAAG,IAAI,wGAAmB,EAAE,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,iCAAiC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IACpC,CAAC;IACD,IAAI;QACF,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;;sGATU,2BAA2B;yHAA3B,2BAA2B;QCTxC,oFAAiF;QAA/C,yJAAQ,UAAM,IAAC,yGAAa,qBAAiB,IAA9B;QAC7C,0EAAS;QAEG,mGAAwC;QAAA,4DAAK;;QAH7C,8EAAiB;;;;;;;;;;;;;;;;;;;;ACGM;;;;AAKhC,MAAM,qBAAqB;IAGhC,YAAoB,OAAe,EAAU,OAAsB;QAA/C,YAAO,GAAP,OAAO,CAAQ;QAAU,YAAO,GAAP,OAAO,CAAe;QACjE,IAAI,CAAC,OAAO,GAAG,IAAI,iDAAe,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,WAAmB;QACvB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,QAAQ,CAAC,KAAe;QACtB,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;YACrB,IAAI,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACjD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB;QACd,OAAO,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;IACzE,CAAC;IAED,cAAc;QACZ,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QAChE,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAC;YAClD,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,MAAc,EAAE,QAAgB;QAC5C,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACvC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,WAAW;QACT,IAAI,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,SAAS;QACP,IAAI,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gBAAgB;QACd,IAAI,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,IAAI,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEzC,IAAI,MAAM,GAAG,KAAK;QAClB,IAAI,aAAa,IAAI,eAAe,EAAE;YACpC,MAAM,GAAG,IAAI,CAAC;SACf;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;;0FApEU,qBAAqB;sHAArB,qBAAqB,WAArB,qBAAqB,mBAFpB,MAAM;;;;;;;;;;;;;;;;;;;;ACLc;AACgD;AAEzC;;;;AAMlC,MAAM,WAAW;IAEpB,YAAoB,IAAgB,EAAU,MAAqB;QAA/C,SAAI,GAAJ,IAAI,CAAY;QAAU,WAAM,GAAN,MAAM,CAAe;IAAI,CAAC;IAEjE,YAAY,CAAC,GAAW,EAAE,IAAc;QAC3C,OAAO,IAAI,4CAAU,CAAC,QAAQ,CAAC,EAAE;YAC7B,IAAI,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,WAAW,GAAG,IAAI,6DAAW,CAAC;gBAC9B,eAAe,EAAE,SAAS,GAAG,KAAK;aACrC,CAAC,CAAC;YACH,IAAI,OAAO,GAAG;gBACV,OAAO,EAAE,WAAW;aACvB,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CACxC,uDAAO,CAAC,MAAM,CAAC,CAClB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;gBACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACxB,CAAC,EAAE,GAAG,CAAC,EAAE;gBACL,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;oBACnB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC;iBACvB;qBAAM;oBACH,IAAI,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;oBACzD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACvB;YACL,CAAC,CAAC;QACN,CAAC,CAAC,CAAC;IAEP,CAAC;IAEM,IAAI,CAAI,GAAW,EAAE,IAAU,EAAE,OAAe,MAAM;QACzD,OAAO,IAAI,4CAAU,CAAC,QAAQ,CAAC,EAAE;YAC7B,IAAI,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,WAAW,GAAG,IAAI,6DAAW,CAAC;gBAC9B,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU;aAC9B,CAAC,CAAC;YACH,IAAI,KAAK,EAAE;gBACP,WAAW,GAAG,IAAI,6DAAW,CAAC;oBAC1B,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,UAAU;oBAC3B,eAAe,EAAE,SAAS,GAAG,KAAK;iBACrC,CAAC,CAAC;aACN;YACD,IAAI,OAAO,GAAG;gBACV,OAAO,EAAE,WAAW;aACvB,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CACtC,uDAAO,CAAC,IAAI,CAAC,CAChB,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;gBACjB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtB,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACxB,CAAC,EAAE,CAAC,GAAsB,EAAE,EAAE;gBAC1B,oBAAoB;gBAEpB,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;oBACnB,oEAAoE;oBACpE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC;iBACvB;qBAED;oBACI,IAAI,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;oBACvD,IAAI,CAAC,YAAY,EAAE;wBACf,IAAI,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;wBAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC,CAAC,+BAA+B,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;qBAC1H;oBAED,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACvB;YACL,CAAC,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,yBAAyB,CAAC,GAAsB;QACpD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;YACnB,6BAA6B;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE,cAAc,CAAC,CAAC;YAC1F,MAAM,GAAG,IAAI,CAAC;SACjB;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,oBAAoB,CAAC,GAAsB;QAC/C,IAAI,MAAM,GAAG,WAAW,CAAC;QACzB,IAAI,OAAO,GAAG,mBAAmB,CAAC;QAElC,IAAI,GAAG,CAAC,KAAK,EAAE;YACX,gCAAgC;YAChC,MAAM,GAAG,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC;YACrC,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE;gBACnB,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;aAC/B;SACJ;aACI;YACD,IAAI,GAAG,CAAC,OAAO,EAAE;gBACb,2DAA2D;gBAC3D,MAAM,GAAG,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC;gBACnC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;aACzB;SACJ;QACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAChD,CAAC;;sEA3GQ,WAAW;4GAAX,WAAW,WAAX,WAAW,mBAHR,MAAM;;;;;;;;;;;;;;;;;ACNiB;;AAKhC,MAAM,iBAAiB;IAO5B;QACE,IAAI,CAAC,KAAK,GAAG,IAAI,iDAAe,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACnC,CAAC;IAED,QAAQ,CAAC,KAA6D;QACpE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;;kFAjBU,iBAAiB;kHAAjB,iBAAiB,WAAjB,iBAAiB,mBAFhB,MAAM;;;;;;;;;;;;;;;;;;;ACJqD;AACA;AAC9B;;AAUpC,MAAM,oBAAoB;IAyB/B,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QAtBjC,kBAAa,GAAW,CAAC,CAAC;QAC1B,uBAAkB,GAAY,IAAI,CAAC;QAEpC,QAAG,GAAW,sBAAsB,CAAC;QAQrC,QAAG,GAAW,uBAAuB,CAAC;QAiE9C,sCAAsC;QACtC,oBAAe,GAAa,CAAC,CAAM,EAAE,EAAE,GAAG,CAAC,CAAC;QAtD1C,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,MAAM,OAAO,GAAG;YACd,mBAAmB,EAAE,GAAG;YACxB,gBAAgB,EAAE,GAAG;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,GAAG;YACtB,YAAY,EAAE,IAAI,CAAC,GAAG;YACtB,mBAAmB,EAAE,KAAK;YAC1B,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,IAAI,wCAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtF,CAAC;IA9BD,IAAkB,IAAI,CAAC,KAAa;QAClC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;YACjB,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;IACH,CAAC;IAGD,IAAkB,IAAI,CAAC,KAAa;QAClC,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;YACjB,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;IACH,CAAC;IAmBD,QAAQ;QACN,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE;YACzB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;SAElB;QAED,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC;SACnB;QAED,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAEO,qBAAqB;QAC3B,MAAM,aAAa,GAAG;YACpB,YAAY,EAAE,IAAI,CAAC,GAAG;YACtB,YAAY,EAAE,IAAI,CAAC,GAAG;YACtB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,EAAE;YAClC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;SAC5C,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO;QACL,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,iBAAiB;QACf,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC;QAExD,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,EAAE;YAC9C,MAAM,GAAG,IAAI,CAAC;SACf;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAID,UAAU,CAAC,QAAgB;QACzB,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SACnC;IACH,CAAC;IACD,gBAAgB,CAAC,EAAY;QAC3B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;IAC5B,CAAC;IACD,iBAAiB,KAAW,CAAC;;wFAzFlB,oBAAoB;kHAApB,oBAAoB;4IAApB,aAAS;uRAPT;YACT,EAAE,OAAO,EAAE,6DAAiB,EAAE,WAAW,EAAE,yDAAU,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;SACjG;;;;;;;;;;;;;;;;;;ACP4C;AAGgB;;AAaxD,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHATrB,yDAAY;mIASP,gBAAgB,mBANrB,wEAAoB,aAHpB,yDAAY,aAMZ,wEAAoB;;;;;;;;;;;;;;;;;;;ACbgE;AAE5B;;;;;;;ICMpD,wEAAwF;IAAzD,kSAAS,yEAAQ,KAAC;IAC7C,8DACJ;IAAA,4DAAI;;;IATZ,yEAAuG;IAGvF,uDAAS;IAAA,4DAAK;IAG1B,yEAAgC;IAC5B,kHAEI;IACR,4DAAM;;;IAVkC,qHAA0D;IAEzF,0DAA4B;IAA5B,mFAA4B;IAAC,qFAAyB;IACnD,0DAAS;IAAT,6EAAS;IAIb,0DAAyB;IAAzB,4FAAyB;;;;IAKrC,qEAC+F;;;IAA3D,qFAA8B;IADtC,gKAAsC;;;IAElE,0EAC+F;IAC3F,uDACJ;IAAA,4DAAM;;;IAF8B,qFAA8B;IADtC,gKAAsC;IACC,uFAA2B;IAC1F,0DACJ;IADI,0FACJ;;;;IACA,wEAA4G;IAA1D,2RAAS,yEAAQ,KAAC;IAChE,8DACJ;IAAA,4DAAI;;;IACJ,sEAAiC;IAC7B,qEAA8D;IAClE,4DAAM;;;IAD0B,0DAA2B;IAA3B,sFAA2B;;ADuBxD,MAAM,oBAAsB,SAAQ,6CAAK;IAE9C,mDAAmD;IACnD,YACY,aAA4B,EAC/B,YAA0B;QAEjC,KAAK,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QAHzB,kBAAa,GAAb,aAAa,CAAe;QAC/B,iBAAY,GAAZ,YAAY,CAAc;IAGnC,CAAC;IAED,QAAQ;QACN,iGAAiG;QACjG,uCAAuC;IACzC,CAAC;IAED,MAAM,CAAC,KAAY;QACjB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;;wFAnBU,oBAAoB;kHAApB,oBAAoB;QC9CjC,yEAAwB;QACpB,gHAWM;QACN,gHAC+F;QAC/F,gHAGM;QACN,4GAEI;QACJ,gHAEM;QACV,4DAAM;;QAxB6B,0DAAW;QAAX,2EAAW;QAY0B,0DAAmC;QAAnC,uGAAmC;QAEnC,0DAAoC;QAApC,wGAAoC;QAIpG,0DAA4C;QAA5C,8GAA4C;QAG1C,0DAAyB;QAAzB,yFAAyB;kxHDZrB;YACV,4DAAO,CAAC,UAAU,EAAE;gBAClB,0DAAK,CAAC,UAAU,EAAE,0DAAK,CAAC;oBACtB,OAAO,EAAE,CAAC;iBACX,CAAC,CAAC;gBACH,+DAAU,CAAC,oBAAoB,EAAE,4DAAO,CAAC,gBAAgB,EAAE,8DAAS,CAAC;oBACnE,0DAAK,CAAC;wBACJ,SAAS,EAAE,uCAAuC;wBAClD,OAAO,EAAE,CAAC;qBACX,CAAC;oBACF,0DAAK,CAAC;wBACJ,SAAS,EAAE,cAAc;wBACzB,OAAO,EAAE,CAAC;qBACX,CAAC;oBACF,0DAAK,CAAC;wBACJ,SAAS,EAAE,cAAc;wBACzB,OAAO,EAAE,CAAC;qBACX,CAAC;oBACF,0DAAK,CAAC;wBACJ,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE,CAAC;qBACX,CAAC;iBACH,CAAC,CAAC,CAAC;gBACJ,+DAAU,CAAC,mBAAmB,EAAE,4DAAO,CAAC,gBAAgB,EAAE,8DAAS,CAAC;oBAClE,0DAAK,CAAC;wBACJ,OAAO,EAAE,CAAC;qBACX,CAAC;oBACF,0DAAK,CAAC;wBACJ,SAAS,EAAE,sCAAsC;wBACjD,OAAO,EAAE,CAAC;qBACX,CAAC;iBACH,CAAC,CAAC,CAAC;aACL,CAAC;SACH;;;;;;;;;;;;;;;;AE3CuD;AAEnD,MAAM,mBAAmB;IAAhC;QACI,UAAK,GAAG,WAAW,CAAC;QACpB,eAAU,GAAG,EAAE,CAAC;QAChB,WAAM,GAAE,SAAS,CAAC;QAClB,eAAU,GAAG,QAAQ,CAAC;QACtB,eAAU,GAAG,KAAK,CAAC;QACnB,eAAU,GAAG,KAAK,CAAC;QACnB,WAAM,GAAG,KAAK,CAAC;QACf,cAAS,GAAG,KAAK,CAAC;QAClB,WAAM,GAAG,KAAK,CAAC;QACf,eAAU,GAAG,uEAAkB,CAAC;QAChC,cAAS,GAAG,IAAI,CAAC;QAEjB,gBAAW,GAAG,SAAS,CAAC;QAExB,mBAAc,GAAG,KAAK,CAAC;QACvB,kBAAa,GAAG,KAAK,CAAC;QACtB,iBAAY,GAAI,KAAK,CAAC;QACtB,mBAAc,GAAG,KAAK,CAAC;IAC3B,CAAC;CAAA;;;;;;;;;;;;;;;;;;;;ACfsB;AACmC;AACI;;;;;;ICF1D,yEAAkG;IAA/C,iSAAS,8EAAa,KAAC;IACxE,uEAA2B;IAAA,mEAAiC;IAAA,4DAAI;;;;IAMlE,sEAAgC;IACiB,+RAAS,gFAAe,KAAC;IACtE,mEAA8C;IAChD,4DAAI;;;IAMN,mFAA4D;;;;IAG5D,wEAAgF;IAAvB,iZAAsB;IAAC,+DAAI;IAAA,4DAAI;;;;IAExF,wEAC4B;IAA1B,sTAAS,iFAAe,KAAC;IACzB,uDAAwD;IAAA,4DAAI;;;IAA5D,0DAAwD;IAAxD,yMAAwD;;;;IAE1D,6EACwD;IAAtB,gUAAS,6EAAW,KAAC;IACrD,uDACF;IAAA,4DAAS;;;IAFP,iIAA+B;IAC/B,0DACF;IADE,uMACF;;;IAVF,yFAAyG;IACvG,qIAAwF;IACxF,gEAAyC;IACzC,qIAE8D;IAE9D,+IAGS;IACX,4DAAqB;;;IAVf,0DAA6B;IAA7B,gIAA6B;IAE7B,0DAAyB;IAAzB,4HAAyB;IAIpB,0DAAqB;IAArB,wHAAqB;;;;;;;ADhB3B,MAAM,sBAAsB;IALnC;QAQY,SAAI,GAAG,IAAI,uDAAY,EAAO,CAAC;QAC/B,aAAQ,GAAG,IAAI,uDAAY,EAAO,CAAC;QACnC,YAAO,GAAG,IAAI,uDAAY,EAAO,CAAC;QAClC,WAAM,GAAG,IAAI,uDAAY,EAAO,CAAC;QACjC,eAAU,GAAG,IAAI,uDAAY,EAAW,CAAC;QAEnD,SAAI,GAAG,EAAE,CAAC;QACV,eAAU,GAAW,EAAE,CAAC;QACxB,SAAI,GAAG,KAAK,CAAC;KAmCd;IAjCC,QAAQ;QACN,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAC;YACtB,IAAI,CAAC,MAAM,GAAG,IAAI,uEAAmB,EAAE,CAAC;SACzC;QAED,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YAC9B,KAAK,uEAAkB;gBACrB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;gBAC/B,MAAM;YACR,KAAK,uEAAkB;gBACrB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;gBAC/B,MAAM;YACR,KAAK,oEAAe;gBAClB,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC;gBAC/B,MAAM;YACR,KAAK,qEAAgB;gBACnB,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;gBAC9B,MAAM;YACR;gBACE,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,MAAM;SACT;IACH,CAAC;IAED,OAAO,CAAC,KAAoB;QAC1B,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;gBAC7B,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;oBACtB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iBAClB;aACF;SACF;IACH,CAAC;;4FA7CU,sBAAsB;oHAAtB,sBAAsB;;QCfnC,yEAE+F;QAF1F,iJAAS,mBAAe,IAAC;QAG5B,yEAEM;QACJ,kHAEM;QACN,yEAAuE;QAC/C,uDAAmB;QAAA,4DAAK;QAC9C,6DAAyC;QAC3C,4DAAM;QACN,kHAIM;QACR,4DAAM;QACN,wFAAgG;QAC9F,gEAA0C;QAE1C,kIAA4D;QAC9D,4DAAqB;QACrB,kJAWqB;QACvB,4DAAM;;QAnCJ,sHAAmC;QACnC,wPAA4F;QACtE,0DAEjB;QAFiB,gKAEjB;QACyE,0DAAoB;QAApB,+GAAoB;QAGnE,0DAAyC;QAAzC,0LAAyC;QAC9C,0DAAmB;QAAnB,6GAAmB;QAGrC,0DAAwB;QAAxB,qHAAwB;QAMa,0DAAkD;QAAlD,iMAAkD;QAG1D,0DAAU;QAAV,0EAAU;QAE1B,0DAAyB;QAAzB,sHAAyB;;;;;;;;;;;;;;;;ACxBhD,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,iCAAmB;IACnB,2BAAa;IACb,iCAAmB;IACnB,6BAAe;AACjB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;;;;;;;;;;;;;;;;;ACAM,MAAM,iBAAiB;IAE5B,SAAS,CAAC,KAAa,EAAE,cAAsB,EAAE,GAAW;QAC1D,IAAI,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,aAAa,GAAG,cAAc,GAAC,GAAG,GAAC,WAAW,CAAC;QACnD,OAAO,aAAa,CAAC;IACvB,CAAC;;kFANU,iBAAiB;kIAAjB,iBAAiB;;;;;;;;;;;;;;;;;ACAvB,MAAM,OAAO;IAElB,SAAS,CAAC,KAAa,EAAE,GAAW;QAClC,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC,EAAE;YACpB,MAAM,GAAG,KAAK,GAAC,CAAC,GAAG,GAAC,GAAG,CAAC,CAAC;YACzB,YAAY,GAAG,KAAK,GAAC,MAAM,CAAC;SAC7B;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;;8DAVU,OAAO;kHAAP,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;ACJ2B;AACmB;AACZ;AACwC;AACnC;AACY;AACnB;AAC2B;AACS;AACR;;AAuCzE,MAAM,YAAY;;wEAAZ,YAAY;yGAAZ,YAAY;6GAnCrB,yDAAY;QACZ,uDAAW;QACX,gEAAc;QACd,+DAAmB;QAEnB,qEAAe;QACf,kFAAqB;QACrB,yFAAgB,EAUhB,uDAAW;QACX,gEAAc;QACd,+DAAmB;QAEnB,iBAAiB;QACjB,qEAAe;QACf,kFAAqB;QAMrB,yFAAgB;mIAMP,YAAY,mBAzBrB,uGAAsB;QACtB,iGAAoB;QAEpB,6DAAO;QACP,wFAAiB,aAdjB,yDAAY;QACZ,uDAAW;QACX,gEAAc;QACd,+DAAmB;QAEnB,qEAAe;QACf,kFAAqB;QACrB,yFAAgB,aAUhB,uDAAW;QACX,gEAAc;QACd,+DAAmB;QAEnB,iBAAiB;QACjB,qEAAe;QACf,kFAAqB;QAErB,uGAAsB;QAEtB,6DAAO;QACP,wFAAiB;QACjB,yFAAgB;;;;;;;;;;;;;;;AC3CpB,gFAAgF;AAChF,0EAA0E;AAC1E,gEAAgE;AAEzD,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,sEAAsE;;;;;;;;;;;;;;;;;ACfvB;AAGF;AACY;AAEzD,IAAI,6EAAsB,EAAE;IAC1B,6DAAc,EAAE,CAAC;CAClB;AAED,wEAAwB,CAAC,eAAe,CAAC,sDAAS,CAAC;KAChD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/guard/auth.guard.ts","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/modal-confirm-update/modal-confirm-update.component.ts","./src/app/modal-confirm-update/modal-confirm-update.component.html","./src/app/services/authentication-service/authentication.service.ts","./src/app/services/http-service/http.service.ts","./src/app/services/query-param-service/query-param.service.ts","./src/app/shared/components/autonumberic/autonumeric.directive.ts","./src/app/shared/components/autonumberic/autonumeric.module.ts","./src/app/shared/components/custom-toast/custom-toast.component.ts","./src/app/shared/components/custom-toast/custom-toast.component.html","./src/app/shared/components/modal-material/modal-material-config.ts","./src/app/shared/components/modal-material/modal-material.component.ts","./src/app/shared/components/modal-material/modal-material.component.html","./src/app/shared/enums/header-type.enum.ts","./src/app/shared/pipes/local-currency/local-currency.pipe.ts","./src/app/shared/pipes/tax-pipe/tax.pipe.ts","./src/app/shared/shared.module.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AppComponent } from './app.component';\r\nimport { AuthGuard } from './guard/auth.guard';\r\nimport { LoginComponent } from './login/login.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: AppComponent, children: [\r\n { path: '', component: LoginComponent },\r\n { \r\n path: 'pages', \r\n loadChildren: () => import('./pages/pages.module').then(m => m.PagesModule),\r\n canActivate: [AuthGuard]\r\n },\r\n { path: '', redirectTo: '', pathMatch: 'full' },\r\n ] }\r\n];\r\n\r\n@NgModule({\r\n declarations: [\r\n LoginComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n BrowserAnimationsModule,\r\n RouterModule.forRoot(routes)\r\n ],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { SwUpdate } from '@angular/service-worker';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { ModalConfirmUpdateComponent } from './modal-confirm-update/modal-confirm-update.component';\r\nimport { QueryParamService } from './services/query-param-service/query-param.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n destroy$: Subject<boolean>;\r\n constructor(\r\n private route: Router,\r\n private activateRoute: ActivatedRoute,\r\n private queryParamService: QueryParamService,\r\n updates: SwUpdate,\r\n private matDialog: MatDialog\r\n ) {\r\n this.destroy$ = new Subject();\r\n updates.versionUpdates.subscribe(event => {\r\n updates.activateUpdate().then(() => this.updateApp(event));\r\n });\r\n }\r\n updateApp(event) {\r\n if (event.type == 'VERSION_READY') {\r\n this.matDialog.open(ModalConfirmUpdateComponent, {disableClose: true});\r\n }\r\n }\r\n ngOnInit() {\r\n this.getLastRouteEvent();\r\n }\r\n\r\n getLastRouteEvent() {\r\n this.route.events\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.getParam();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n getParam() {\r\n this.activateRoute.queryParamMap\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(params => {\r\n if (params) {\r\n let ID = params.get('ID');\r\n let billNumber = params.get('Number');\r\n let outletName = params.get('Outlet');\r\n let queryParams = { ID: ID, billNumber: billNumber, outletName: outletName };\r\n this.queryParamService.setState(queryParams);\r\n }\r\n });\r\n }\r\n}\r\n","<ng-http-loader></ng-http-loader>\r\n<router-outlet></router-outlet>","import { DEFAULT_CURRENCY_CODE, LOCALE_ID, NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { NgHttpLoaderModule } from 'ng-http-loader';\r\nimport { AuthGuard } from './guard/auth.guard';\r\nimport { CustomToastComponent } from './shared/components/custom-toast/custom-toast.component';\r\nimport { ServiceWorkerModule } from '@angular/service-worker';\r\nimport { environment } from '../environments/environment';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { ModalConfirmUpdateComponent } from './modal-confirm-update/modal-confirm-update.component';\r\n\r\n@NgModule({\r\n declarations: [AppComponent, ModalConfirmUpdateComponent],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n ToastrModule.forRoot({\r\n toastComponent: CustomToastComponent,\r\n positionClass: \"toast-bottom-right\",\r\n closeButton: true\r\n }),\r\n NgHttpLoaderModule.forRoot(),\r\n ServiceWorkerModule.register('ngsw-worker.js', {\r\n enabled: environment.production,\r\n registrationStrategy: 'registerImmediately'\r\n }),\r\n MatDialogModule,\r\n SharedModule\r\n ],\r\n providers: [\r\n AuthGuard\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthenticationService } from '../services/authentication-service/authentication.service';\r\n\r\n@Injectable()\r\n\r\nexport class AuthGuard implements CanActivate {\r\n\r\nconstructor(private _authService: AuthenticationService, private _router: Router){\r\n\r\n}\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\r\n if(this._authService.isAuthentication()){\r\n return true;\r\n } \r\n this._router.navigate(['']);\r\n return false;\r\n }\r\n \r\n}\r\n","import { AfterViewInit, ChangeDetectorRef, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport jwt_decode from \"jwt-decode\";\r\nimport { HttpService } from '../services/http-service/http.service';\r\nimport { AuthenticationService } from '../services/authentication-service/authentication.service';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit, AfterViewInit {\r\n @ViewChild(\"domainAutoFocus\") domainElementRef: ElementRef;\r\n @ViewChild(\"passAutoFocus\") passElementRef: ElementRef;\r\n\r\n posDomain: string;\r\n username: string;\r\n password: string = '';\r\n passwordType: string = 'password';\r\n passwordIcon: string = 'eye-off';\r\n\r\n constructor(private _httpService: HttpService, private toastr: ToastrService, private auth: AuthenticationService,\r\n private elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit(): void {\r\n //change background color to light blue\r\n this.elementRef.nativeElement.ownerDocument.body.style.backgroundColor = '#edefff';\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.initLoginForm();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n //Called once, before the instance is destroyed.\r\n //Add 'implements OnDestroy' to the class.\r\n this.elementRef.nativeElement.ownerDocument.body.style.backgroundColor = 'white';\r\n }\r\n\r\n initLoginForm() {\r\n let cookiesExist = this.auth.isLoginFormExist();\r\n this.setAutoFocusDomain();\r\n if (cookiesExist) {\r\n this.username = this.auth.getUsername();\r\n this.posDomain = this.auth.getDomain();\r\n this.setAutoFocusPass();\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n setAutoFocusDomain() {\r\n this.domainElementRef.nativeElement.focus();\r\n }\r\n\r\n setAutoFocusPass() {\r\n this.passElementRef.nativeElement.focus();\r\n }\r\n\r\n //Function: hideShowPassword() will toggle the password visibility with the eye icon\r\n hideShowPassword() {\r\n this.passwordType = this.passwordType === 'text' ? 'password' : 'text';\r\n this.passwordIcon = this.passwordIcon === 'eye-off' ? 'eye' : 'eye-off';\r\n }\r\n\r\n login(): void {\r\n var obj = {\r\n client_id: this.username,\r\n client_secret: this.password,\r\n }\r\n\r\n var check = {\r\n POSDomain: this.posDomain\r\n }\r\n\r\n var url = \"\";\r\n if(!this.posDomain.includes(\"http://\")){\r\n url = \"https://\" + this.posDomain;\r\n }\r\n\r\n this._httpService.post<any>(url + \"/api/v3/Token\", JSON.stringify(obj)).subscribe(data => {\r\n if (data.access_token != null || data.access_token != undefined) {\r\n let token = data.access_token;\r\n let expiredAt = data.expiredAt;\r\n\r\n //Set to localstorage\r\n localStorage.setItem(\"Token\", token);\r\n localStorage.setItem(\"ExpireDate\", expiredAt);\r\n this.auth.saveLoginForm(this.posDomain, this.username);\r\n\r\n let decoded = jwt_decode(token);\r\n let roles = decoded[\"http://schemas.microsoft.com/ws/2008/06/identity/claims/role\"];\r\n let requiredRole = roles ? roles.find(x => x == \"Products\" || x == \"Prod\") : null;\r\n \r\n this.auth.setRoles(roles);\r\n \r\n if(requiredRole == \"Products\" || requiredRole == \"Prod\"){\r\n this.auth.login(\"/pages\");\r\n }\r\n else{\r\n this.toastr.error('Require products role to access this feature!', 'Error');\r\n }\r\n }\r\n }, err => {\r\n console.error(err);\r\n })\r\n }\r\n}","<div class=\"container\">\r\n <div class=\"row mt-5 mt-md-0 align-self-center\">\t\r\n <div class=\" col-12 col-md-7 text-center\">\r\n <h1 class=\"big-display my-5 py-5 robotoslab d-none d-md-block\">DealPOS - Barcode</h1>\r\n <img src=\"https://res.cloudinary.com/dealpos/image/upload/w_300/v1615189586/Barcode/barcode.png\" alt=\"integration-image\" class=\"img-fluid mt-5 pt-5\">\r\n </div>\r\n <div class=\"col-12 col-md-5 order-first order-md-last\">\r\n <h1 class=\"big-display text-center my-5 py-5 robotoslab d-block d-md-none\">DealPOS - Barcode</h1>\r\n <div class=\"card\">\r\n <div class=\"card-body py-8\">\r\n <div class=\"card-title mt-1\">\r\n <h2 class=\"ms-2 fw-normal robotoslab\">Sign in</h2>\r\n </div>\r\n <form class=\"mt-6\"> \r\n <div class=\"form-label-group\">\r\n <input #domainAutoFocus type=\"text\" [(ngModel)]=\"posDomain\" name=\"inputPOSDomain\" id=\"inputPOSDomain\" class=\"form-control text-start\"\r\n placeholder=\"POS Domain (xyz.dealpos.com)\" required pattern=\"(https:\\/\\/)?\\w+.dealpos(.com|.net|.co.id)(\\/)?\" #domain=\"ngModel\">\r\n <label for=\"inputPOSDomain\" class=\"text-start\">POS Domain (xyz.dealpos.com)</label>\r\n </div>\r\n <div class=\"form-label-group\">\r\n <input type=\"text\" [(ngModel)]=\"username\" name=\"username\" id=\"inputUsername\" class=\"form-control text-start\"\r\n placeholder=\"Username\" required>\r\n <label for=\"inputUsername\" class=\"text-start\">Username</label>\r\n </div>\r\n <div class=\"form-label-group mb-5 mb-md-2\">\r\n <input #passAutoFocus [type]=\"passwordType\" [(ngModel)]=\"password\" name=\"something\" id=\"inputPassword\" class=\"form-control text-start\"\r\n placeholder=\"Password\" required>\r\n <label for=\"inputPassword\" class=\"text-start\">Password</label>\r\n <i *ngIf=\"password != ''\" [ngClass]=\"{'fa-eye-slash': (passwordIcon == 'eye') , 'fa-eye' : (passwordIcon == 'eye-off') }\" class=\"passwordIcon fas fa-lg\" (click)='hideShowPassword()'></i>\r\n </div>\r\n <div class=\"row justify-content-start align-items-center\">\r\n <div class=\"col-12 col-lg-5 order-first order-md-last\">\r\n <button class=\"btn btn-xl btn-primary btn-block font125rem robotoslab px-10\" type=\"submit\" (click)=\"login()\">Log in</button>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 d-block d-md-none text-center\">\r\n <p class=\"pt-1rem me-3\">Powered by : </p>\r\n <a target=\"_blank\" href=\"https://www.dealpos.com\"><img src=\"https://res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png\" alt=\"dealpos-logo\" class=\"img-fluid\"></a>\r\n <a href=\"https://changelog.dealpos.com/?categories=cat_IOl3P9ko0ayhv&view=complete\" target=\"_blank\"><p class=\"pt-1rem fst-italic\">Version 1.3.7</p></a>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <footer class=\"mx-5 pb-5 mb-5 d-none d-md-block\">\r\n <div class=\"row justify-content-between align-items-center\">\r\n <div class=\"col-auto d-inline-flex\">\r\n <p class=\"pt-1rem me-3\">Powered by : </p>\r\n <a target=\"_blank\" href=\"https://www.dealpos.com\"><img src=\"https://res.cloudinary.com/pos/image/upload/POS/Images/Login/dealpos.png\" alt=\"dealpos-logo\" class=\"img-fluid\"></a>\r\n </div>\r\n <div class=\"col-auto\">\r\n <h5 class=\"fw-normal\">\r\n <a style=\"text-decoration: none;\" href=\"https://changelog.dealpos.com/?categories=cat_IOl3P9ko0ayhv&view=complete\" target=\"_blank\"><p class=\"pt-1rem fst-italic\">Version 1.3.7</p></a>\r\n </h5>\r\n </div>\r\n </div>\r\n </footer>","import { Component } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ModalMaterialConfig } from '../shared/components/modal-material/modal-material-config';\r\n\r\n@Component({\r\n selector: 'app-modal-confirm-update',\r\n templateUrl: './modal-confirm-update.component.html',\r\n styleUrls: ['./modal-confirm-update.component.scss']\r\n})\r\nexport class ModalConfirmUpdateComponent {\r\n config: ModalMaterialConfig;\r\n constructor(public dialogRef: MatDialogRef<ModalConfirmUpdateComponent>) {\r\n this.config = new ModalMaterialConfig();\r\n this.config.title = \"There is a new update available\";\r\n this.config.hideMoreButton = true;\r\n }\r\n onOk() {\r\n document.location.reload();\r\n }\r\n}\r\n","<modal-material [config]=\"config\" (onOk)=\"onOk()\" (onCancel)=\"dialogRef.close()\">\r\n <content>\r\n <div class=\"row p-3\">\r\n <h2>Do you want to refresh your current app?</h2>\r\n </div>\r\n </content>\r\n</modal-material>","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService {\r\n private _roles$: BehaviorSubject<string[]>;\r\n\r\n constructor(private _router: Router, private toaster: ToastrService) {\r\n this._roles$ = new BehaviorSubject([]);\r\n }\r\n\r\n login(redirectURL: string): void {\r\n this._router.navigate([redirectURL]);\r\n }\r\n\r\n logout(): void {\r\n this._roles$.next([]);\r\n localStorage.removeItem(\"Roles\");\r\n this._router.navigate(['']);\r\n }\r\n\r\n setRoles(roles: string[]) {\r\n localStorage.setItem(\"Roles\", JSON.stringify(roles));\r\n this._roles$.next(roles);\r\n }\r\n\r\n getRoles(): string[] {\r\n let roles = this._roles$.getValue();\r\n if (roles.length == 0) {\r\n let rolesStorage = localStorage.getItem(\"Roles\");\r\n roles = JSON.parse(rolesStorage);\r\n this._roles$.next(roles);\r\n }\r\n return roles;\r\n }\r\n\r\n isAuthentication(): boolean {\r\n return localStorage.getItem('Token') != null && !this.isTokenExpired();\r\n }\r\n\r\n isTokenExpired(): boolean {\r\n const expireDate = new Date(localStorage.getItem('ExpireDate'));\r\n if (expireDate.getTime() - new Date().getTime() > 0){\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n saveLoginForm(domain: string, username: string): void {\r\n localStorage.setItem('Domain', domain);\r\n localStorage.setItem('Username', username);\r\n }\r\n\r\n getUsername(): string {\r\n let username = localStorage.getItem('Username');\r\n return username;\r\n }\r\n\r\n getDomain(): string {\r\n let domain = localStorage.getItem('Domain');\r\n return domain;\r\n }\r\n\r\n isLoginFormExist(): boolean {\r\n let isDomainExist = this.getDomain();\r\n let isUsernameExist = this.getUsername();\r\n\r\n let retVal = false\r\n if (isDomainExist && isUsernameExist) {\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { timeout } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class HttpService {\r\n\r\n constructor(private http: HttpClient, private toastr: ToastrService) { }\r\n\r\n public postFormData(url: string, data: FormData): Observable<any> {\r\n return new Observable(observer => {\r\n let token = localStorage.getItem('Token');\r\n let httpHeaders = new HttpHeaders({\r\n 'Authorization': 'Bearer ' + token\r\n });\r\n let options = {\r\n headers: httpHeaders\r\n };\r\n\r\n this.http.post<any>(url, data, options).pipe(\r\n timeout(100000)\r\n ).subscribe(data => {\r\n observer.next(data);\r\n observer.complete();\r\n }, err => {\r\n if (err.status == 200) {\r\n observer.next(err.error.text);\r\n observer.complete();\r\n } else {\r\n let errMessage = this.errorMessageHandling(err);\r\n this.toastr.error(errMessage.message, errMessage.header);\r\n observer.error(err);\r\n }\r\n })\r\n });\r\n\r\n }\r\n\r\n public post<T>(url: string, data?: any, time: number = 100000): Observable<T> {\r\n return new Observable(observer => {\r\n let token = localStorage.getItem('Token');\r\n let httpHeaders = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Cache-Control': 'no-cache',\r\n });\r\n if (token) {\r\n httpHeaders = new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n 'Cache-Control': 'no-cache',\r\n 'Authorization': 'Bearer ' + token\r\n });\r\n }\r\n let options = {\r\n headers: httpHeaders\r\n };\r\n\r\n this.http.post<T>(url, data, options).pipe(\r\n timeout(time),\r\n ).subscribe(result => {\r\n observer.next(result);\r\n observer.complete();\r\n }, (err: HttpErrorResponse) => {\r\n //Exception Handling\r\n\r\n if (err.status == 200) {\r\n //when Response is not application/json ex: some API return text/csv\r\n observer.next(err.error.text);\r\n observer.complete();\r\n }\r\n else\r\n {\r\n let unauthorized = this.unauthorizedErrorHandling(err);\r\n if (!unauthorized) {\r\n let errMessage = this.errorMessageHandling(err);\r\n this.toastr.error(errMessage.message != \"\" ? errMessage.message : \"An unknown error has occured!\", errMessage.header);\r\n }\r\n\r\n observer.error(err);\r\n }\r\n })\r\n });\r\n }\r\n\r\n private unauthorizedErrorHandling(err: HttpErrorResponse) {\r\n let retVal = false;\r\n if (err.status == 401) {\r\n //Unauthorized Error Handling\r\n this.toastr.error(\"We can't log you in because of authenctication error\", \"Unauthorized\");\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n private errorMessageHandling(err: HttpErrorResponse): { message: string, header: string } {\r\n let header = \"API Error\";\r\n let message = \"Exception Message\";\r\n\r\n if (err.error) {\r\n //Handle 4XX error and 5XX Error\r\n header = \"API Error - \" + err.status;\r\n if (err.error.Message) {\r\n message = err.error.Message;\r\n }\r\n }\r\n else {\r\n if (err.message) {\r\n //Handle timeout scenario we do not receive HTTP StatusCode\r\n header = \"API Error - \" + err.name;\r\n message = err.message;\r\n }\r\n }\r\n return { header: header, message: message };\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class QueryParamService {\r\n /**\r\n * content query param from Product or Supplier Bill\r\n */\r\n private store: BehaviorSubject<{ ID: string, billNumber: string, outletName: string }>;\r\n\r\n\r\n constructor() {\r\n this.store = new BehaviorSubject({ ID: null, billNumber: null, outletName: null });\r\n }\r\n\r\n getState() {\r\n return this.store.asObservable();\r\n }\r\n\r\n setState(param: { ID: string, billNumber: string, outletName: string }) {\r\n this.store.next(param);\r\n }\r\n}\r\n","import { Directive, Input, ElementRef, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport * as AutoNumeric from 'autonumeric';\r\n@Directive({\r\n selector: '[autoNum]',\r\n providers: [\r\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AutonumericDirective), multi: true }\r\n ],\r\n host: {\r\n \"(keyup)\": \"onKeyUp()\"\r\n }\r\n})\r\nexport class AutonumericDirective implements ControlValueAccessor {\r\n @Input() percentage: string;\r\n @Input() preventNegative: boolean;\r\n @Input() decimalPlaces: number = 4;\r\n @Input() modifyValueOnWheel: boolean = true;\r\n\r\n private max: string = '999999999999999.9999';\r\n @Input('max') set _max(value: string) {\r\n if (value) {\r\n this.max = value;\r\n this.updateNumericSettings();\r\n }\r\n }\r\n\r\n private min: string = '-999999999999999.9999';\r\n @Input('min') set _min(value: string) {\r\n if (value) {\r\n this.min = value;\r\n this.updateNumericSettings();\r\n }\r\n }\r\n\r\n\r\n public numericElement: AutoNumeric;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n this.preventNegative = false;\r\n const Options = {\r\n digitGroupSeparator: ',', //separator of number\r\n decimalCharacter: '.', //semicolon separator replaced with point \r\n decimalPlaces: this.decimalPlaces, // total of decimal after separator \r\n maximumValue: this.max, // maximum of number\r\n minimumValue: this.min, // minum of of number\r\n allowDecimalPadding: false,\r\n showWarnings: false,\r\n };\r\n this.numericElement = new AutoNumeric(this.elementRef.nativeElement, null, Options);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.percentage == \"\") {\r\n this.max = '100';\r\n\r\n }\r\n\r\n if (this.preventNegative) {\r\n this.min = '0.00';\r\n }\r\n\r\n this.updateNumericSettings();\r\n }\r\n\r\n private updateNumericSettings() {\r\n const OptionsUpdate = {\r\n maximumValue: this.max, // maximum of number\r\n minimumValue: this.min, // minimum of number,\r\n readOnly: this.isElementDisabled(),\r\n decimalPlaces: this.decimalPlaces, // total of decimal after separator \r\n modifyValueOnWheel: this.modifyValueOnWheel\r\n };\r\n this.numericElement.update(OptionsUpdate);\r\n }\r\n\r\n onKeyUp(): void {\r\n let number = this.numericElement.getNumber();\r\n this.propagateChange(number);\r\n }\r\n\r\n isElementDisabled(): boolean {\r\n let retVal = false;\r\n const readonly = this.elementRef.nativeElement.readOnly;\r\n const disabled = this.elementRef.nativeElement.disabled;\r\n\r\n if ((readonly === true) || (disabled === true)) {\r\n retVal = true;\r\n }\r\n return retVal;\r\n }\r\n\r\n //ControlValueAccessor implementations\r\n propagateChange: Function = (_: any) => { };\r\n writeValue(newValue: number): void {\r\n if (newValue != null) {\r\n this.numericElement.set(newValue);\r\n }\r\n }\r\n registerOnChange(fn: Function) {\r\n this.propagateChange = fn;\r\n }\r\n registerOnTouched(): void { }\r\n\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { AutonumericDirective } from './autonumeric.directive';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n AutonumericDirective\r\n ],\r\n exports: [\r\n AutonumericDirective\r\n ]\r\n})\r\nexport class AutoNumberModule {}","import { trigger, state, style, transition, animate, keyframes } from '@angular/animations';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Toast, ToastrService, ToastPackage } from 'ngx-toastr';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: '[custom-toast-component]',\r\n styleUrls: [\"./custom-toast.component.scss\"],\r\n templateUrl: \"./custom-toast.component.html\" ,\r\n animations: [\r\n trigger('flyInOut', [\r\n state('inactive', style({\r\n opacity: 0,\r\n })),\r\n transition('inactive => active', animate('400ms ease-out', keyframes([\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(-30deg)',\r\n opacity: 0,\r\n }),\r\n style({\r\n transform: 'skewX(20deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'skewX(-5deg)',\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'none',\r\n opacity: 1,\r\n }),\r\n ]))),\r\n transition('active => removed', animate('400ms ease-out', keyframes([\r\n style({\r\n opacity: 1,\r\n }),\r\n style({\r\n transform: 'translate3d(100%, 0, 0) skewX(30deg)',\r\n opacity: 0,\r\n }),\r\n ]))),\r\n ]),\r\n ],\r\n preserveWhitespaces: false,\r\n})\r\nexport class CustomToastComponent extends Toast implements OnInit {\r\n\r\n // constructor is only necessary when not using AoT\r\n constructor(\r\n protected toastrService: ToastrService,\r\n public toastPackage: ToastPackage,\r\n ) {\r\n super(toastrService, toastPackage);\r\n }\r\n\r\n ngOnInit(): void {\r\n //Called after the constructor, initializing input properties, and the first call to ngOnChanges.\r\n //Add 'implements OnInit' to the class.\r\n }\r\n\r\n action(event: Event) {\r\n event.stopPropagation();\r\n this.toastPackage.triggerAction();\r\n return false;\r\n }\r\n}","<div class=\"toast-case\">\r\n <div class=\"row toast-header\" *ngIf=\"title\" [style.display]=\"state.value === 'inactive' ? 'none' : ''\">\r\n <div class=\"col-9 px-0\">\r\n <div [class]=\"options.titleClass\" [attr.aria-label]=\"title\">\r\n <h4>{{title}}</h4>\r\n </div>\r\n </div>\r\n <div class=\"col-auto mt-5 pr-0\">\r\n <a *ngIf=\"options.closeButton\" (click)=\"remove()\" class=\"btn toast-close-button btn-sm\">\r\n x\r\n </a>\r\n </div>\r\n </div>\r\n <div class=\"row toast-body\" [ngClass]=\"{'notitle': title == null}\" *ngIf=\"message && options.enableHtml\"\r\n role=\"alert\" aria-live=\"polite\" [class]=\"options.messageClass\" [innerHTML]=\"message\"></div>\r\n <div class=\"row toast-body\" [ngClass]=\"{'notitle': title == null}\" *ngIf=\"message && !options.enableHtml\"\r\n role=\"alert\" aria-live=\"polite\" [class]=\"options.messageClass\" [attr.aria-label]=\"message\">\r\n {{ message }}\r\n </div>\r\n <a *ngIf=\"options.closeButton && (title == null)\" (click)=\"remove()\" class=\"btn toast-close-button btn-sm \">\r\n x\r\n </a>\r\n <div *ngIf=\"options.progressBar\">\r\n <div class=\"toast-progress\" [style.width]=\"width + '%'\"></div>\r\n </div>\r\n</div>","import { HeaderType } from \"../../enums/header-type.enum\";\r\n\r\nexport class ModalMaterialConfig {\r\n title = \"New Modal\";\r\n titleExtra = \"\";\r\n okText= \"Ok (F2)\";\r\n cancelText = \"Cancel\";\r\n hideFooter = false;\r\n hideCancel = false;\r\n hideOk = false;\r\n hideClose = false;\r\n eMoney = false;\r\n headerType = HeaderType.Success;\r\n validated = true;\r\n\r\n customWidth = 'initial';\r\n\r\n bodyScrollable = false;\r\n hideScrollbar = false;\r\n disableKeyup? = false;\r\n hideMoreButton = false;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { HeaderType } from \"../../enums/header-type.enum\";\r\nimport { ModalMaterialConfig } from \"./modal-material-config\";\r\n\r\n@Component({\r\n selector: \"modal-material\",\r\n templateUrl: \"./modal-material.component.html\",\r\n styleUrls: [\"./modal-material.component.scss\"],\r\n})\r\nexport class ModalMaterialComponent implements OnInit {\r\n @Input() config? : ModalMaterialConfig;\r\n\r\n @Output() onOk = new EventEmitter<any>();\r\n @Output() onCancel = new EventEmitter<any>();\r\n @Output() onClose = new EventEmitter<any>();\r\n @Output() onBack = new EventEmitter<any>();\r\n @Output() onShowMore = new EventEmitter<boolean>();\r\n\r\n term = \"\";\r\n background: string = \"\";\r\n more = false;\r\n\r\n ngOnInit(): void {\r\n if (this.config == null){\r\n this.config = new ModalMaterialConfig();\r\n }\r\n\r\n switch (this.config.headerType) {\r\n case HeaderType.Success:\r\n this.background = \"bg-success\";\r\n break;\r\n case HeaderType.Warning:\r\n this.background = \"bg-warning\";\r\n break;\r\n case HeaderType.Info:\r\n this.background = \"bg-warning\";\r\n break;\r\n case HeaderType.Error:\r\n this.background = \"bg-danger\";\r\n break;\r\n default:\r\n this.background = \"\";\r\n break;\r\n }\r\n }\r\n\r\n onKeyup(event: KeyboardEvent): void {\r\n if (this.config) {\r\n if (!this.config.disableKeyup) {\r\n if (event.code == \"F2\") {\r\n this.onOk.emit();\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","<div (keyup)=\"onKeyup($event)\" class=\"modal-material d-flex align-items-start flex-column position-relative maxHeight\"\r\n [style.width]=\"config?.customWidth\"\r\n [ngClass]=\"{ bodyScrollable: config?.bodyScrollable, hideScrollbar: config?.hideScrollbar }\">\r\n <div mat-dialog-title class=\"d-flex w-100 justify-content-between modal-header position-relative {{\r\n background\r\n }}\">\r\n <div class=\"back-button position-absolute pointer\" (click)=\"onBack.emit()\" *ngIf=\"config?.eMoney\">\r\n <a class=\"btn back-button\"><i class=\"fas fa-arrow-left\"></i></a>\r\n </div>\r\n <div class=\"d-flex flex-row\" [ngClass]=\"{ 'mx-auto': config?.eMoney }\">\r\n <h4 class=\"fw-normal\">{{ config?.title }}</h4>\r\n <ng-content select=\"header\"></ng-content>\r\n </div>\r\n <div *ngIf=\"!config?.hideClose\">\r\n <a class=\"btn-light-blue btn-sm pointer close\" (click)=\"onCancel.emit()\">\r\n <i class=\"fa fa-times fa-lg text-primary\"></i>\r\n </a>\r\n </div>\r\n </div>\r\n <mat-dialog-content class=\"modal-body w-100\" [ngClass]=\"{ 'show-footer': !config?.hideFooter }\">\r\n <ng-content select=\"content\"></ng-content>\r\n\r\n <ng-content select=\"more-content\" *ngIf=\"more\"></ng-content>\r\n </mat-dialog-content>\r\n <mat-dialog-actions *ngIf=\"!config?.hideFooter\" class=\"w-100 py-7 border-top d-flex justify-content-end\">\r\n <a *ngIf=\"!config?.hideMoreButton\" class=\"more clearfix\" (click)=\"more = !more\">More</a>\r\n <ng-content select=\"footer\"></ng-content>\r\n <a *ngIf=\"!config?.hideCancel\" class=\"btn btn-light-blue text-primary btn-lg fw-bold mx-3\"\r\n (click)=\"onCancel.emit()\">\r\n {{ config?.cancelText ? config?.cancelText : \"Cancel\" }}</a>\r\n\r\n <button *ngIf=\"!config?.hideOk\" class=\"btn btn-light-blue me-6 text-primary btn-lg fw-bold mx-3\"\r\n [disabled]=\"!config?.validated\" (click)=\"onOk.emit()\">\r\n {{ config?.okText ? config?.okText : \"Ok (F2)\" }}\r\n </button>\r\n </mat-dialog-actions>\r\n</div>","export enum HeaderType {\r\n Success = \"Success\",\r\n Info = \"Info\",\r\n Warning = \"Warning\",\r\n Error = \"Error\",\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'localCurrency'\r\n})\r\nexport class LocalCurrencyPipe implements PipeTransform {\r\n\r\n transform(value: number, currencySymbol: string, dec: number): string {\r\n let valFormated = value.toFixed(dec);\r\n let localCurrency = currencySymbol+\" \"+valFormated;\r\n return localCurrency;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'taxPipe'\r\n})\r\nexport class TaxPipe implements PipeTransform {\r\n\r\n transform(value: number, tax: number): number {\r\n let priceCounted = value;\r\n let taxVal = 0;\r\n if (tax && tax !== 0) {\r\n taxVal = value*(tax/100); \r\n priceCounted = value+taxVal;\r\n }\r\n return priceCounted;\r\n }\r\n\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { ModalMaterialComponent } from './components/modal-material/modal-material.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { TaxPipe } from './pipes/tax-pipe/tax.pipe';\r\nimport { LocalCurrencyPipe } from './pipes/local-currency/local-currency.pipe';\r\nimport { CustomToastComponent } from './components/custom-toast/custom-toast.component';\r\nimport { AutoNumberModule } from './components/autonumberic/autonumeric.module';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NgSelectModule,\r\n ReactiveFormsModule,\r\n\r\n MatDialogModule,\r\n MatAutocompleteModule,\r\n AutoNumberModule\r\n ],\r\n declarations: [\r\n ModalMaterialComponent,\r\n CustomToastComponent,\r\n\r\n TaxPipe,\r\n LocalCurrencyPipe,\r\n ],\r\n exports: [\r\n FormsModule,\r\n NgSelectModule,\r\n ReactiveFormsModule,\r\n\r\n //MATERIAL MODULE\r\n MatDialogModule,\r\n MatAutocompleteModule,\r\n\r\n ModalMaterialComponent,\r\n\r\n TaxPipe,\r\n LocalCurrencyPipe,\r\n AutoNumberModule\r\n ],\r\n schemas: [\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class SharedModule { }\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":[],"sourceRoot":"webpack:///"}