dealposbarcode 1.3.6 → 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.
- package/barcode/index.html +2 -2
- package/barcode/main.js +2 -2
- package/barcode/main.js.map +1 -1
- package/barcode/polyfills.js +207 -179
- package/barcode/polyfills.js.map +1 -1
- package/barcode/runtime.js +1 -1
- package/barcode/runtime.js.map +1 -1
- package/barcode/src_app_pages_pages_module_ts.js +557 -656
- package/barcode/src_app_pages_pages_module_ts.js.map +1 -1
- package/barcode/vendor.js +2938 -2541
- package/barcode/vendor.js.map +1 -1
- package/package.json +3 -3
package/barcode/index.html
CHANGED
|
@@ -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.
|
|
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.
|
|
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.
|
|
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.
|
|
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);
|
package/barcode/main.js.map
CHANGED
|
@@ -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.6</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.6</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":"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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.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:///"}
|