{"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/base.component.ts","./src/app/company-profile/company-profile.resolver.ts","./src/app/company-profile/company-profile.service.ts","./src/app/core/common-dialog/common-dialog.component.ts","./src/app/core/common-dialog/common-dialog.component.html","./src/app/core/common-dialog/common-dialog.service.ts","./src/app/core/control-sidebar/control-sidebar.component.ts","./src/app/core/control-sidebar/control-sidebar.component.html","./src/app/core/core.module.ts","./src/app/core/domain-classes/document-operation.ts","./src/app/core/domain-classes/payment-method.ts","./src/app/core/domain-classes/payment-status.ts","./src/app/core/domain-classes/reminder-frequency.ts","./src/app/core/error-handler/common-error-handler.service.ts","./src/app/core/error-handler/common-http-error.service.ts","./src/app/core/footer/footer.component.ts","./src/app/core/footer/footer.component.html","./src/app/core/header/header.component.ts","./src/app/core/header/header.component.html","./src/app/core/header/languages.ts","./src/app/core/layout/layout.component.ts","./src/app/core/layout/layout.component.html","./src/app/core/security/auth.guard.ts","./src/app/core/security/security.service.ts","./src/app/core/services/clone.service.ts","./src/app/core/services/common.service.ts","./src/app/core/services/signalr.service.ts","./src/app/core/services/translation.service.ts","./src/app/core/sidebar/sidebar.component.ts","./src/app/core/sidebar/sidebar.component.html","./src/app/core/utils/random-string.ts","./src/app/document-library/document-library.service.ts","./src/app/http-interceptor.module.ts","./src/app/shared/add-reminder-scheduler/add-reminder-scheduler.component.ts","./src/app/shared/add-reminder-scheduler/add-reminder-scheduler.component.html","./src/app/shared/directives/drag-drop.directive.ts","./src/app/shared/document-view/document-view.component.ts","./src/app/shared/document-view/document-view.component.html","./src/app/shared/has-claim.directive.ts","./src/app/shared/loading-indicator/loading-indicator.component.ts","./src/app/shared/loading-indicator/loading-indicator.component.html","./src/app/shared/loading-indicator/loading-indicator.module.ts","./src/app/shared/loading-indicator/pending-interceptor.module.ts","./src/app/shared/loading-indicator/pending-interceptor.service.ts","./src/app/shared/overlay-panel/overlay-panel-data.ts","./src/app/shared/overlay-panel/overlay-panel-ref.ts","./src/app/shared/pipes/custome-currency.pipe.ts","./src/app/shared/pipes/date-ago.pipe.ts","./src/app/shared/pipes/paymentMethod.pipe.ts","./src/app/shared/pipes/pipes.module.ts","./src/app/shared/pipes/purchase-order-paymentStatus.pipe.ts","./src/app/shared/pipes/quantities-unitprice-tax.pipe.ts","./src/app/shared/pipes/quantities-unitprice.pipe.ts","./src/app/shared/pipes/truncate.pipe.ts","./src/app/shared/pipes/utc-to-localtime.pipe.ts","./src/app/shared/purchase-order-invoice/purchase-order-invoice.component.ts","./src/app/shared/purchase-order-invoice/purchase-order-invoice.component.html","./src/app/shared/sales-order-invoice/sales-order-invoice.component.ts","./src/app/shared/sales-order-invoice/sales-order-invoice.component.html","./src/app/shared/shared.module.ts","./src/app/store/app-store.module.ts","./src/app/store/entity-metadata.ts","./src/app/translater-loader.ts","./src/app/user/change-password/change-password.component.ts","./src/app/user/change-password/change-password.component.html","./src/app/user/my-profile/my-profile.component.ts","./src/app/user/my-profile/my-profile.component.html","./src/app/user/user.service.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from '@core/security/auth.guard';\r\nimport { AppComponent } from './app.component';\r\nimport { CompanyProfileResolver } from './company-profile/company-profile.resolver';\r\nimport { LayoutComponent } from './core/layout/layout.component';\r\nimport { MyProfileComponent } from './user/my-profile/my-profile.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: AppComponent,\r\n resolve: { profile: CompanyProfileResolver },\r\n children: [{\r\n path: 'login',\r\n loadChildren: () =>\r\n import('./login/login.module')\r\n .then(m => m.LoginModule)\r\n }, {\r\n path: '',\r\n component: LayoutComponent,\r\n children: [\r\n {\r\n path: 'my-profile',\r\n component: MyProfileComponent,\r\n canActivate: [AuthGuard],\r\n }, {\r\n path: '',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./dashboard/dashboard.module')\r\n .then(m => m.DashboardModule)\r\n }, {\r\n path: 'actions',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./action/action.module')\r\n .then(m => m.ActionModule)\r\n }, {\r\n path: 'pages',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./page/page.module')\r\n .then(m => m.PageModule)\r\n }, {\r\n path: 'page-action',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./page-action/page-action.module')\r\n .then(m => m.PageActionModule)\r\n },\r\n {\r\n path: 'roles',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./role/role.module')\r\n .then(m => m.RoleModule)\r\n }, {\r\n path: 'users',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./user/user.module')\r\n .then(m => m.UserModule)\r\n }, {\r\n path: 'login-audit',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./login-audit/login-audit.module')\r\n .then(m => m.LoginAuditModule)\r\n },\r\n {\r\n path: 'sessions',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./session/session.module')\r\n .then(m => m.SessionModule)\r\n },\r\n {\r\n path: 'emailtemplate',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./email-template/email-template.module')\r\n .then(m => m.EmailTemplateModule)\r\n },\r\n {\r\n path: 'send-email',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./email-send/email-send.module')\r\n .then(m => m.EmailSendModule)\r\n },\r\n {\r\n path: 'logs',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./n-log/n-log.module')\r\n .then(m => m.NLogModule)\r\n },\r\n {\r\n path: 'email-smtp',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./email-smtp-setting/email-smtp-setting.module')\r\n .then(m => m.EmailSmtpSettingModule)\r\n },\r\n {\r\n path: 'supplier',\r\n loadChildren: () =>\r\n import('./supplier/supplier.module').then(\r\n m => m.SupplierModule\r\n )\r\n }, {\r\n path: 'chemical',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./chemical/chemical.module')\r\n .then(m => m.ChemicalModule)\r\n },\r\n {\r\n path: 'inquiry',\r\n loadChildren: () =>\r\n import('./inquiry/inquiry.module').then(\r\n m => m.InquiryModule\r\n )\r\n }, {\r\n path: 'supplier-chemical-relationship',\r\n loadChildren: () =>\r\n import('./supplier-chemical/supplier-chemical.module').then(\r\n m => m.SupplierChemicalModule\r\n )\r\n }, {\r\n path: 'industry',\r\n loadChildren: () =>\r\n import('./industry/industry.module').then(\r\n m => m.IndustryModule\r\n )\r\n }, {\r\n path: 'industry-chemical',\r\n loadChildren: () =>\r\n import('./industry-chemical/industry-chemical.module').then(\r\n m => m.IndustryChemicalModule\r\n )\r\n }, {\r\n path: 'search',\r\n loadChildren: () =>\r\n import('./search-chemical-supplier/search-chemical-supplier.module').then(\r\n m => m.SearchChemicalSupplierModule\r\n )\r\n }, {\r\n path: 'article',\r\n loadChildren: () =>\r\n import('./article/article.module').then(\r\n m => m.ArticleModule\r\n )\r\n }, {\r\n path: 'testimonial',\r\n loadChildren: () =>\r\n import('./testimonial/testimonial.module').then(\r\n m => m.TestimonialModule\r\n )\r\n },\r\n {\r\n path: 'customer',\r\n loadChildren: () =>\r\n import('./customer/customer.module').then(\r\n m => m.CustomerModule\r\n )\r\n },\r\n {\r\n path: 'customer-chemical-relationship',\r\n loadChildren: () =>\r\n import('./customer-chemical/customer-chemical.module').then(\r\n m => m.CustomerChemicalModule\r\n )\r\n },\r\n {\r\n path: 'contact-us',\r\n loadChildren: () =>\r\n import('./contact-us/contact-us.module').then(\r\n m => m.ContactUsModule\r\n )\r\n },\r\n {\r\n path: 'chemical-types',\r\n loadChildren: () =>\r\n import('./chemical-type/chemical-type.module').then(\r\n m => m.ChemicalTypeModule\r\n )\r\n },\r\n {\r\n path: 'my-documents',\r\n loadChildren: () =>\r\n import('./document-library/document-library.module')\r\n .then(m => m.DocumentLibraryModule)\r\n },\r\n {\r\n path: 'document-categories',\r\n loadChildren: () =>\r\n import('./document-category/document-category.module')\r\n .then(m => m.DocumentCategoryModule)\r\n },\r\n {\r\n path: 'documents',\r\n loadChildren: () =>\r\n import('./document/document.module')\r\n .then(m => m.DocumentModule)\r\n },\r\n {\r\n path: 'document-audit-trails',\r\n loadChildren: () =>\r\n import('./document-audit-trail/document-audit-trail.module')\r\n .then(m => m.DocumentAuditTrailModule)\r\n },\r\n {\r\n path: 'notifications',\r\n loadChildren: () =>\r\n import('./notification/notification.module')\r\n .then(m => m.NotificationModule)\r\n },\r\n {\r\n path: 'reminders',\r\n loadChildren: () => import('./reminder/reminder.module')\r\n .then(m => m.ReminderModule)\r\n }, {\r\n path: 'purchase-order-request',\r\n loadChildren: () => import('./purchase-order-request/purchase-order-request.module')\r\n .then(m => m.PurchaseOrderRequestModule)\r\n },\r\n {\r\n path: 'purchase-order',\r\n loadChildren: () => import('./purchase-order/purchase-order.module')\r\n .then(m => m.PurchaseOrderModule)\r\n }, {\r\n path: 'sales-order',\r\n loadChildren: () => import('./sales-order/sales-order.module')\r\n .then(m => m.SalesOrderModule)\r\n }, {\r\n path: 'sales-order-return',\r\n loadChildren: () => import('./sales-order-return/sales-order-return.module')\r\n .then(m => m.SaleOrderReturnModule)\r\n }, {\r\n path: 'delivery-method',\r\n loadChildren: () => import('./delivery-method/delivery-method.module')\r\n .then(m => m.DeliveryMethodModule)\r\n }, {\r\n path: 'packaging-type',\r\n loadChildren: () => import('./packaging-type/packaging-type.module')\r\n .then(m => m.PackagingTypeModule)\r\n }, {\r\n path: 'inquiry-status',\r\n loadChildren: () => import('./inquiry-status/inquiry-status.module')\r\n .then(m => m.InquiryStatusModule)\r\n }, {\r\n path: 'inquiry-source',\r\n loadChildren: () => import('./inquiry-source/inquiry-source.module')\r\n .then(m => m.InquirySourceModule)\r\n },\r\n {\r\n path: 'payment-term',\r\n loadChildren: () => import('./payment-term/payment-term.module')\r\n .then(m => m.PaymentTermModule)\r\n },\r\n {\r\n path: 'inventory',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./inventory/inventory.module')\r\n .then(m => m.InventoryModule)\r\n }, {\r\n path: 'company-profile',\r\n canLoad: [AuthGuard],\r\n loadChildren: () =>\r\n import('./company-profile/company-profile.module')\r\n .then(m => m.CompanyProfileModule)\r\n },\r\n {\r\n path: 'expense-category',\r\n loadChildren: () => import('./expense-category/expense-category.module')\r\n .then(m => m.ExpenseCategoryModule)\r\n },\r\n {\r\n path: 'expense',\r\n loadChildren: () => import('./expense/expense.module')\r\n .then(m => m.ExpenseModule)\r\n }, {\r\n path: 'unit',\r\n loadChildren: () =>\r\n import('./unit/unit.module').then(\r\n m => m.UnitModule\r\n )\r\n }, {\r\n path: 'tax',\r\n loadChildren: () =>\r\n import('./tax/tax.module').then(\r\n m => m.TaxModule\r\n )\r\n },\r\n {\r\n path: 'purchase-order-return',\r\n loadChildren: () => import('./purchase-order-return/purchase-order-return.module')\r\n .then(m => m.PurchaseOrderReturnModule)\r\n }, {\r\n path: 'expense-report',\r\n loadChildren: () =>\r\n import('./reports/expense-report/expense-report.module').then(\r\n m => m.ExpenseReportModule\r\n )\r\n }, {\r\n path: 'purchase-payment-report',\r\n loadChildren: () =>\r\n import('./reports/purchase-payment-report/purchase-payment-report.module').then(\r\n m => m.PurchasePaymentReportModule\r\n )\r\n }, {\r\n path: 'sales-payment-report',\r\n loadChildren: () =>\r\n import('./reports/sales-payment-report/sales-payment-report.module').then(\r\n m => m.SalesPaymentReportModule\r\n )\r\n }, {\r\n path: 'stock-report',\r\n loadChildren: () =>\r\n import('./reports/stock-report/stock-report.module').then(\r\n m => m.StockReportModule\r\n )\r\n }, {\r\n path: 'chemical-purchase-report',\r\n loadChildren: () =>\r\n import('./reports/chemical-purchase-report/chemical-purchase-report.module').then(\r\n m => m.ChemicalPurchaseReportModule\r\n )\r\n }, {\r\n path: 'chemical-sales-report',\r\n loadChildren: () =>\r\n import('./reports/chemical-sales-report/chemical-sales-report.module').then(\r\n m => m.ChemicalSalesReportModule\r\n )\r\n }, {\r\n path: 'purchase-order-report',\r\n loadChildren: () =>\r\n import('./reports/purchase-order-report/purchase-order-report.module').then(\r\n m => m.PurchaseOrderReportModule\r\n )\r\n },{\r\n path: 'sales-order-report',\r\n loadChildren: () =>\r\n import('./reports/sales-order-report/sales-order-report.module').then(\r\n m => m.SalesOrderReportModule\r\n )\r\n },{\r\n path: 'sales-purchase-report',\r\n loadChildren: () =>\r\n import('./reports/sales-purchase-report/sales-purchase-report.module').then(\r\n m => m.SalesPurchaseReportModule\r\n )\r\n },\r\n {\r\n path: '**',\r\n redirectTo: '/'\r\n }\r\n\r\n ]\r\n }]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { scrollPositionRestoration: 'top', relativeLinkResolution: 'legacy' })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { OnlineUser } from '@core/domain-classes/online-user';\r\nimport { UserAuth } from '@core/domain-classes/user-auth';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { CommonService } from '@core/services/common.service';\r\nimport { SignalrService } from '@core/services/signalr.service';\r\nimport { TranslationService } from '@core/services/translation.service';\r\nimport { environment } from '@environments/environment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { filter } from 'rxjs/operators';\r\nimport { BaseComponent } from './base.component';\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 extends BaseComponent implements OnInit {\r\n constructor(\r\n private signalrService: SignalrService,\r\n private securityService: SecurityService,\r\n public translate: TranslateService,\r\n private translationService: TranslationService,\r\n private route: ActivatedRoute,\r\n private titleService: Title,\r\n private router: Router,\r\n private commonService: CommonService) {\r\n super();\r\n translate.addLangs(['en', 'es', 'ar', 'ru', 'cn', 'ja', 'ko']);\r\n translate.setDefaultLang('en');\r\n this.setLanguage();\r\n this.setProfile();\r\n this.companyProfileSubscription();\r\n }\r\n\r\n setProfile() {\r\n this.route.data.subscribe((data: { profile: CompanyProfile }) => {\r\n if (data.profile) {\r\n this.securityService.updateProfile(data.profile);\r\n }\r\n });\r\n }\r\n\r\n companyProfileSubscription() {\r\n this.securityService.companyProfile.subscribe(profile => {\r\n if (profile) {\r\n this.titleService.setTitle(profile.title);\r\n }\r\n });\r\n }\r\n\r\n setLanguage() {\r\n const currentLang = this.translationService.getSelectedLanguage();\r\n if (currentLang) {\r\n this.sub$.sink = this.translationService.setLanguage(currentLang)\r\n .subscribe(() => { });\r\n }\r\n else {\r\n const browserLang = this.translate.getBrowserLang();\r\n const lang = browserLang.match(/en|es|ar|ru|cn|ja|ko/) ? browserLang : 'en';\r\n this.sub$.sink = this.translationService.setLanguage(lang).subscribe(() => { });\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.routerNavigate();\r\n this.signalrService.startConnection().then(resolve => {\r\n if (resolve) {\r\n this.signalrService.handleMessage();\r\n this.getAuthObj();\r\n }\r\n });\r\n }\r\n getAuthObj() {\r\n this.sub$.sink = this.securityService.securityObject$\r\n .subscribe((c: UserAuth) => {\r\n if (c) {\r\n const online: OnlineUser = {\r\n email: c.email,\r\n id: c.id,\r\n connectionId: this.signalrService.connectionId\r\n };\r\n this.signalrService.addUser(online);\r\n }\r\n });\r\n }\r\n\r\n routerNavigate() {\r\n this.router.events\r\n .pipe(\r\n filter(event => event instanceof NavigationEnd)\r\n ).subscribe((event: NavigationEnd) => {\r\n if (event.url.indexOf('search/supplier') > -1 ) {\r\n this.commonService.setCurrentUrl(\"chemical\");\r\n }\r\n else if (event.url.indexOf('supplier') > -1 || event.url.indexOf('supplier-chemical-relationship') > -1 || event.url.indexOf('search/chemical') > -1 ) {\r\n this.commonService.setCurrentUrl(\"supplier\");\r\n }\r\n else if (event.url.indexOf('customer') > -1 || event.url.indexOf('customer-chemical-relationship') > -1 ) {\r\n this.commonService.setCurrentUrl(\"customer\");\r\n }\r\n else if (\r\n event.url.indexOf('purchase-order-report') > -1\r\n || event.url.indexOf('sales-order-report') > -1\r\n || event.url.indexOf('chemical-purchase-report') > -1\r\n || event.url.indexOf('chemical-sales-report') > -1\r\n || event.url.indexOf('stock-report') > -1\r\n || event.url.indexOf('purchase-payment-report') > -1\r\n || event.url.indexOf('expense-report') > -1\r\n || event.url.indexOf('sales-payment-report') > -1\r\n || event.url.indexOf('supplier-payment-report') > -1\r\n || event.url.indexOf('sales-purchase-report') > -1\r\n || event.url.indexOf('customer-payment-report') > -1\r\n ) {\r\n this.commonService.setCurrentUrl(\"reports\");\r\n }\r\n else if (event.url.indexOf('industry') > -1 || event.url.indexOf('industry-chemical') > -1) {\r\n this.commonService.setCurrentUrl(\"industry\");\r\n }\r\n\r\n else if (event.url.indexOf('chemical') > -1 || event.url.indexOf('chemical-types') > -1 || event.url.indexOf('search/supplier') > -1 || event.url.indexOf('unit') > -1 || event.url.indexOf('tax') > -1 ) {\r\n this.commonService.setCurrentUrl(\"chemical\");\r\n }\r\n\r\n else if (event.url.indexOf('inquiry') > -1 || event.url.indexOf('inquiry-status') > -1 || event.url.indexOf('inquiry-source') > -1) {\r\n this.commonService.setCurrentUrl(\"inquiry\");\r\n }\r\n else if (event.url.indexOf('purchase-order-request') > -1) {\r\n this.commonService.setCurrentUrl(\"purchase-order-request\");\r\n }\r\n else if (event.url.indexOf('purchase-order-return') > -1) {\r\n this.commonService.setCurrentUrl(\"purchase-order-return\");\r\n }\r\n else if (event.url.indexOf('purchase-order') > -1 || event.url.indexOf('packaging-type') > -1 ) {\r\n this.commonService.setCurrentUrl(\"purchase-order\");\r\n }\r\n else if (event.url.indexOf('sales-order-return') > -1) {\r\n this.commonService.setCurrentUrl(\"sales-order-return\");\r\n }\r\n else if (event.url.indexOf('sales-order') > -1 || event.url.indexOf('delivery-method') > -1 || event.url.indexOf('payment-term') > -1) {\r\n this.commonService.setCurrentUrl(\"sales-order\");\r\n }\r\n\r\n else if (event.url.indexOf('my-documents') > -1 || event.url.indexOf('document-categories') > -1 || event.url.indexOf('documents') > -1 || event.url.indexOf('document-audit-trails') > -1) {\r\n this.commonService.setCurrentUrl(\"documents-library\");\r\n }\r\n else if (event.url.indexOf('expense') > -1 || event.url.indexOf('expense-category') > -1) {\r\n this.commonService.setCurrentUrl(\"expense\");\r\n }\r\n\r\n else if (event.url.indexOf('reminders') > -1) {\r\n this.commonService.setCurrentUrl(\"reminders\");\r\n }\r\n else if (event.url.indexOf('users') > -1 || event.url.indexOf('sessions') > -1) {\r\n this.commonService.setCurrentUrl(\"users\");\r\n }\r\n else if (event.url.indexOf('roles') > -1) {\r\n this.commonService.setCurrentUrl(\"roles\");\r\n }\r\n else if (event.url.indexOf('email-smtp') > -1 || event.url.indexOf('emailtemplate') > -1 || event.url.indexOf('send-email') > -1) {\r\n this.commonService.setCurrentUrl(\"email\");\r\n }\r\n else if (event.url.indexOf('company-profile') > -1 || event.url.indexOf('country') > -1 || event.url.indexOf('cities') > -1) {\r\n this.commonService.setCurrentUrl(\"settings\");\r\n }\r\n else if (event.url.indexOf('login-audit') > -1 || event.url.indexOf('logs') > -1) {\r\n this.commonService.setCurrentUrl(\"logs\");\r\n }\r\n else {\r\n this.commonService.setCurrentUrl(\"\");\r\n }\r\n\r\n });\r\n }\r\n\r\n}\r\n\r\n","","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule } from '@angular/core';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { AppComponent } from './app.component';\r\nimport { CoreModule } from './core/core.module';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HttpInterceptorModule } from './http-interceptor.module';\r\nimport { AppStoreModule } from './store/app-store.module';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { PendingInterceptorModule } from '@shared/loading-indicator/pending-interceptor.module';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { createTranslateLoader } from './translater-loader';\r\nimport { OwlDateTimeModule, OwlNativeDateTimeModule } from 'ng-pick-datetime-ex';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n ],\r\n imports: [\r\n BrowserModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AppRoutingModule,\r\n CoreModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n HttpInterceptorModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: (createTranslateLoader),\r\n deps: [HttpClient]\r\n }\r\n }),\r\n AppStoreModule,\r\n PendingInterceptorModule,\r\n OwlDateTimeModule,\r\n OwlNativeDateTimeModule,\r\n ToastrModule.forRoot()\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, OnDestroy } from '@angular/core';\r\nimport { SubSink } from 'SubSink';\r\n\r\n@Component({\r\n selector: 'app-base',\r\n template: ``\r\n})\r\nexport class BaseComponent implements OnDestroy {\r\n sub$: SubSink;\r\n constructor() {\r\n this.sub$ = new SubSink();\r\n }\r\n ngOnDestroy(): void {\r\n this.sub$.unsubscribe();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n Resolve,\r\n Router,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot\r\n} from '@angular/router';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { Observable, of } from 'rxjs';\r\nimport { take, mergeMap } from 'rxjs/operators';\r\nimport { CompanyProfileService } from './company-profile.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CompanyProfileResolver implements Resolve {\r\n constructor(private companyProfileService: CompanyProfileService, private router: Router) { }\r\n resolve(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | null {\r\n return this.companyProfileService.getCompanyProfile().pipe(\r\n take(1),\r\n mergeMap((companyProfile: CompanyProfile) => {\r\n if (companyProfile) {\r\n return of(companyProfile);\r\n } else {\r\n this.router.navigate(['/dashboard']);\r\n return null;\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { CompanyProfile } from \"@core/domain-classes/company-profile\";\r\nimport { CommonError } from \"@core/error-handler/common-error\";\r\nimport { CommonHttpErrorService } from \"@core/error-handler/common-http-error.service\";\r\nimport { Observable } from \"rxjs\";\r\nimport { catchError } from \"rxjs/operators\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CompanyProfileService {\r\n constructor(\r\n private http: HttpClient,\r\n private commonHttpErrorService: CommonHttpErrorService) { }\r\n\r\n getCompanyProfile(): Observable {\r\n const url = `companyProfile`;\r\n return this.http.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n updateCompanyProfile(companyProfile): Observable {\r\n const url = `companyProfile`;\r\n return this.http.post(url, companyProfile)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n}","import { Component } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-common-dialog',\r\n templateUrl: './common-dialog.component.html',\r\n styleUrls: ['./common-dialog.component.scss']\r\n})\r\nexport class CommonDialogComponent {\r\n primaryMessage: string;\r\n constructor(public dialogRef: MatDialogRef) { }\r\n\r\n clickHandler(data): void {\r\n this.dialogRef.close(data);\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
{{primaryMessage}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
","import { Injectable } from '@angular/core'\r\nimport { MatDialog, MatDialogConfig } from '@angular/material/dialog';\r\nimport { Observable } from 'rxjs';\r\nimport { CommonDialogComponent } from './common-dialog.component';\r\n@Injectable()\r\nexport class CommonDialogService {\r\n dialogConfig: MatDialogConfig = {\r\n disableClose: false,\r\n width: '',\r\n height: '',\r\n position: {\r\n top: '',\r\n bottom: '',\r\n left: '',\r\n right: ''\r\n }\r\n };\r\n constructor(public dialog: MatDialog) { }\r\n\r\n deleteConformationDialog(message: string): Observable {\r\n const dialogRef = this.dialog.open(CommonDialogComponent, this.dialogConfig);\r\n dialogRef.componentInstance.primaryMessage = message;\r\n return dialogRef.afterClosed();\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-control-sidebar',\r\n templateUrl: './control-sidebar.component.html',\r\n styleUrls: ['./control-sidebar.component.scss']\r\n})\r\nexport class ControlSidebarComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n"," \r\n \r\n","import { ErrorHandler, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { FooterComponent } from './footer/footer.component';\r\nimport { SidebarComponent } from './sidebar/sidebar.component';\r\nimport { CommonDialogService } from './common-dialog/common-dialog.service';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { LoadingIndicatorModule } from '@shared/loading-indicator/loading-indicator.module';\r\nimport { PerfectScrollbarConfigInterface, PerfectScrollbarModule, PERFECT_SCROLLBAR_CONFIG } from 'ngx-perfect-scrollbar';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonErrorHandlerService } from './error-handler/common-error-handler.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ControlSidebarComponent } from './control-sidebar/control-sidebar.component';\r\nimport { CommonDialogComponent } from './common-dialog/common-dialog.component';\r\n\r\nconst DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = {\r\n suppressScrollX: true\r\n};\r\n\r\n@NgModule({\r\n declarations: [\r\n LayoutComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n SidebarComponent,\r\n ControlSidebarComponent,\r\n CommonDialogComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n MatDialogModule,\r\n RouterModule,\r\n SharedModule,\r\n MatTooltipModule,\r\n LoadingIndicatorModule,\r\n PerfectScrollbarModule,\r\n BsDropdownModule.forRoot(),\r\n NgbModule\r\n\r\n ],\r\n exports: [\r\n LayoutComponent\r\n ],\r\n providers: [\r\n CommonDialogService,\r\n {\r\n provide: PERFECT_SCROLLBAR_CONFIG,\r\n useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG\r\n },\r\n {\r\n provide: ErrorHandler, useClass: CommonErrorHandlerService,\r\n deps: [HttpClient]\r\n }\r\n ]\r\n})\r\nexport class CoreModule { }\r\n","export enum DocumentOperation {\r\n Read = 1,\r\n Created = 2,\r\n Modified = 3,\r\n Deleted = 4,\r\n Add_Permission = 5,\r\n Remove_Permission = 6\r\n}\r\n","export class PaymentMethod {\r\n id: number;\r\n name: string;\r\n}\r\n\r\n\r\nexport const paymentMethods: PaymentMethod[] = [\r\n {\r\n id: 0,\r\n name: 'Cash'\r\n }, {\r\n id: 1,\r\n name: 'Cheque'\r\n }, {\r\n id: 2,\r\n name: 'Credit Card'\r\n }, {\r\n id: 3,\r\n name: 'Gift Card'\r\n }, {\r\n id: 4,\r\n name: 'Other'\r\n }\r\n];","export class PaymentStatus {\r\n id: number;\r\n name: string;\r\n}\r\n\r\n\r\nexport const paymentStatuses: PaymentStatus[] = [\r\n {\r\n id: 0,\r\n name: 'Paid'\r\n }, {\r\n id: 1,\r\n name: 'Pending'\r\n }, {\r\n id: 2,\r\n name: 'Partial'\r\n },\r\n];","export class ReminderFrequency {\r\n id: number;\r\n name: string;\r\n}\r\n\r\nexport const reminderFrequencies: ReminderFrequency[] = [\r\n {\r\n id: 0,\r\n name: 'Daily'\r\n }, {\r\n id: 1,\r\n name: 'Weekly'\r\n }, {\r\n id: 2,\r\n name: 'Monthly'\r\n }, {\r\n id: 3,\r\n name: 'Quarterly'\r\n }, {\r\n id: 4,\r\n name: 'Half Yearly'\r\n }, {\r\n id: 5,\r\n name: 'Yearly'\r\n }\r\n];\r\n","import { ErrorHandler } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from '@environments/environment';\r\n\r\nexport class CommonErrorHandlerService implements ErrorHandler {\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n handleError(error: any) {\r\n if (environment.production) {\r\n const obj = {\r\n errorMessage: (error).message,\r\n stack: (error).stack\r\n };\r\n this.saveErrorLog(obj).toPromise()\r\n .then((res) => { },\r\n err => { });\r\n } else {\r\n console.error(error);\r\n }\r\n }\r\n\r\n saveErrorLog(obj: any): Observable {\r\n return this.httpClient.post('nlog', obj)\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\n\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { CommonError } from './common-error';\r\nimport { } from '../../../environments/environment';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class CommonHttpErrorService {\r\n constructor() { }\r\n\r\n handleError(httpErrorResponse: HttpErrorResponse): Observable {\r\n const customError: CommonError = {\r\n statusText: httpErrorResponse.statusText,\r\n code: httpErrorResponse.status,\r\n messages: httpErrorResponse.error.messages,\r\n friendlyMessage: 'Error from service',\r\n error: httpErrorResponse.error\r\n };\r\n console.error(httpErrorResponse);\r\n return throwError(customError);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { SecurityService } from '@core/security/security.service';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n companyProfile: CompanyProfile;\r\n constructor(private securityService: SecurityService) { }\r\n\r\n ngOnInit(): void {\r\n this.companyProfileSubscription();\r\n }\r\n\r\n companyProfileSubscription() {\r\n this.securityService.companyProfile.subscribe(profile => {\r\n if (profile) {\r\n this.companyProfile = profile;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","\r\n","import {\r\n trigger,\r\n state,\r\n style,\r\n transition,\r\n animate,\r\n} from '@angular/animations';\r\nimport { Component, OnInit, ViewChild, ElementRef, Input } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ReminderScheduler } from '@core/domain-classes/reminder-scheduler';\r\nimport { UserAuth } from '@core/domain-classes/user-auth';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { CommonService } from '@core/services/common.service';\r\nimport { SignalrService } from '@core/services/signalr.service';\r\nimport { TranslationService } from '@core/services/translation.service';\r\nimport { environment } from '@environments/environment';\r\nimport { BaseComponent } from 'src/app/base.component';\r\nimport { LanguageFlag, Languages } from './languages';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n animations: [\r\n trigger('slideInOut', [\r\n state(\r\n 'in',\r\n style({\r\n transform: 'translate3d(0,0,0)',\r\n })\r\n ),\r\n state(\r\n 'out',\r\n style({\r\n transform: 'translate3d(100%, 0, 0)',\r\n })\r\n ),\r\n transition('in => out', animate('400ms ease-in-out')),\r\n transition('out => in', animate('400ms ease-in-out')),\r\n ]),\r\n ],\r\n})\r\nexport class HeaderComponent extends BaseComponent implements OnInit {\r\n @ViewChild('selectElem', { static: true }) el: ElementRef;\r\n @Input()\r\n public lead: any;\r\n navbarOpen = false;\r\n appUserAuth: UserAuth = null;\r\n language: LanguageFlag;\r\n notificationCount: number = 0;\r\n notificationUserList: ReminderScheduler[] = [];\r\n languages: LanguageFlag[] = [];\r\n profilePath = '';\r\n logoImage = '';\r\n constructor(\r\n private router: Router,\r\n private securityService: SecurityService,\r\n private signalrService: SignalrService,\r\n private translationService: TranslationService,\r\n private commonService: CommonService\r\n ) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.languages = Languages.languages;\r\n this.setTopLogAndName();\r\n this.setDefaultLanguage();\r\n this.getUserNotification();\r\n this.getNotificationList();\r\n this.companyProfileSubscription();\r\n }\r\n\r\n companyProfileSubscription() {\r\n this.securityService.companyProfile.subscribe(profile => {\r\n if (profile) {\r\n this.logoImage = profile.logoUrl;\r\n }\r\n });\r\n }\r\n\r\n getUserNotification() {\r\n this.sub$.sink = this.signalrService.userNotification$\r\n .subscribe(c => {\r\n this.getUserNotificationCount();\r\n this.getNotificationList();\r\n });\r\n }\r\n\r\n getUserNotificationCount() {\r\n this.sub$.sink = this.commonService.getUserNotificationCount()\r\n .subscribe(c => {\r\n this.notificationCount = c;\r\n });\r\n }\r\n\r\n getNotificationList() {\r\n this.sub$.sink = this.commonService.getTop10UserNotification()\r\n .subscribe(c => {\r\n this.notificationUserList = c;\r\n });\r\n }\r\n\r\n setDefaultLanguage() {\r\n const lang = this.translationService.getSelectedLanguage();\r\n if (lang) this.setLanguageWithRefresh(lang);\r\n }\r\n\r\n setLanguageWithRefresh(lang: string) {\r\n this.languages.forEach((language: LanguageFlag) => {\r\n if (language.lang === lang) {\r\n language.active = true;\r\n this.language = language;\r\n } else {\r\n language.active = false;\r\n }\r\n });\r\n this.translationService.setLanguage(lang);\r\n }\r\n\r\n setNewLanguageRefresh(lang: string) {\r\n this.sub$.sink = this.translationService\r\n .setLanguage(lang)\r\n .subscribe((response) => {\r\n this.setLanguageWithRefresh(response['LANGUAGE']);\r\n });\r\n }\r\n\r\n setTopLogAndName() {\r\n this.sub$.sink = this.securityService.securityObject$.subscribe((c) => {\r\n if (c) {\r\n this.appUserAuth = c;\r\n if (this.appUserAuth.profilePhoto) {\r\n this.profilePath = environment.apiUrl + this.appUserAuth.profilePhoto;\r\n }\r\n }\r\n });\r\n }\r\n\r\n onLogout(): void {\r\n this.signalrService.logout(this.appUserAuth.id);\r\n this.securityService.logout();\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n onMyProfile(): void {\r\n this.router.navigate(['/my-profile']);\r\n }\r\n\r\n public togglediv() {\r\n if (this.lead.className === 'toggled') {\r\n this.lead.className = '';\r\n } else {\r\n this.lead.className = 'toggled';\r\n }\r\n }\r\n}\r\n","
\r\n \r\n
\r\n","export class Languages {\r\n static languages: LanguageFlag[] = [\r\n {\r\n lang: 'en',\r\n name: 'English',\r\n flag: '../../../assets/images/flags/united-states.svg',\r\n },\r\n {\r\n lang: 'cn',\r\n name: 'Chinese',\r\n flag: '../../../assets/images/flags/china.svg',\r\n },\r\n {\r\n lang: 'es',\r\n name: 'Spanish ',\r\n flag: '../../../assets/images/flags/france.svg',\r\n },\r\n {\r\n lang: 'ar',\r\n name: 'Arabic ',\r\n flag: '../../../assets/images/flags/saudi-arabia.svg',\r\n },\r\n {\r\n lang: 'ru',\r\n name: 'Russian',\r\n flag: '../../../assets/images/flags/russia.svg',\r\n },\r\n {\r\n lang: 'ja',\r\n name: 'Japanese',\r\n flag: '../../../assets/images/flags/japan.svg',\r\n },\r\n {\r\n lang: 'ko',\r\n name: 'Korean',\r\n flag: '../../../assets/images/flags/south-korea.svg',\r\n },\r\n {\r\n lang: 'de',\r\n name: 'German',\r\n flag: '../../../assets/images/flags/germany.png',\r\n }, {\r\n lang: 'fr',\r\n name: 'French',\r\n flag: '../../../assets/images/flags/french.png',\r\n }, {\r\n lang: 'pt',\r\n name: 'Portuguese',\r\n flag: '../../../assets/images/flags/portuguese.png',\r\n }, {\r\n lang: 'tr',\r\n name: 'Turkish',\r\n flag: '../../../assets/images/flags/turkish.png',\r\n }\r\n ];\r\n}\r\n\r\nexport interface LanguageFlag {\r\n lang: string;\r\n name: string;\r\n flag: string;\r\n active?: boolean;\r\n}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.scss']\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n}\r\n","
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot,\r\n Router,\r\n CanActivateChild,\r\n CanLoad,\r\n Route\r\n} from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Observable } from 'rxjs';\r\nimport { SecurityService } from './security.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate, CanActivateChild, CanLoad {\r\n constructor(\r\n private securityService: SecurityService,\r\n private router: Router,\r\n private toastr: ToastrService\r\n ) { }\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean {\r\n if (this.securityService.isLogin()) {\r\n let claimType: string = next.data[\"claimType\"];\r\n if (claimType) {\r\n if (!this.securityService.hasClaim(claimType)) {\r\n this.toastr.error(`You don't have right to access this page`);\r\n this.router.navigate(['/my-profile']);\r\n return false;\r\n }\r\n }\r\n } else {\r\n this.router.navigate(['login'], {\r\n queryParams: { returnUrl: state.url }\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n canActivateChild(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean {\r\n if (this.securityService.isLogin()) {\r\n let claimType: string = next.data[\"claimType\"];\r\n if (claimType) {\r\n if (!this.securityService.hasClaim(claimType)) {\r\n this.toastr.error(`You don't have right to access this page `);\r\n return false;\r\n }\r\n }\r\n return true;\r\n } else {\r\n this.router.navigate(['login'], {\r\n queryParams: { returnUrl: state.url }\r\n });\r\n return false;\r\n }\r\n }\r\n canLoad(route: Route): boolean {\r\n if (this.securityService.isLogin()) {\r\n return true;\r\n } else {\r\n this.router.navigate(['login']);\r\n return false;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, BehaviorSubject } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { tap, catchError, map } from 'rxjs/operators';\r\nimport { UserAuth } from '../domain-classes/user-auth';\r\nimport { CommonHttpErrorService } from '../error-handler/common-http-error.service';\r\nimport { CommonError } from '../error-handler/common-error';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { Router } from '@angular/router';\r\nimport { ClonerService } from '@core/services/clone.service';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { environment } from '@environments/environment';\r\n\r\n\r\n@Injectable(\r\n { providedIn: 'root' }\r\n)\r\nexport class SecurityService {\r\n // securityObject: UserAuth = new UserAuth();\r\n private _securityObject$: BehaviorSubject = new BehaviorSubject(null);\r\n private _companyProfile$: BehaviorSubject = new BehaviorSubject(null);\r\n public currencyCode = 'USD';\r\n\r\n public get companyProfile(): Observable {\r\n return this._companyProfile$;\r\n }\r\n\r\n public get securityObject$(): Observable {\r\n return this._securityObject$.pipe(\r\n map(c => {\r\n if (c) {\r\n return c;\r\n }\r\n const currenyData = localStorage.getItem('authObj');\r\n if (currenyData) {\r\n this._securityObject$.next(JSON.parse(currenyData))\r\n return JSON.parse(currenyData);\r\n }\r\n return null;\r\n })\r\n );\r\n }\r\n constructor(\r\n private http: HttpClient,\r\n private commonHttpErrorService: CommonHttpErrorService,\r\n private router: Router,\r\n private clonerService: ClonerService\r\n ) {\r\n\r\n }\r\n\r\n login(entity: User): Observable {\r\n // Initialize security object\r\n this.resetSecurityObject();\r\n return this.http.post('user/login', entity)\r\n .pipe(\r\n tap((resp) => {\r\n localStorage.setItem('authObj', JSON.stringify(resp));\r\n localStorage.setItem('bearerToken', resp.bearerToken);\r\n this._securityObject$.next(resp);\r\n })\r\n ).pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n isLogin(): boolean {\r\n const authStr = localStorage.getItem('authObj');\r\n if (authStr)\r\n return true;\r\n else\r\n return false;\r\n }\r\n\r\n logout(): void {\r\n this.resetSecurityObject();\r\n }\r\n\r\n resetSecurityObject(): void {\r\n localStorage.removeItem('authObj');\r\n localStorage.removeItem('bearerToken');\r\n this._securityObject$.next(null);\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n updateProfile(companyProfile: CompanyProfile) {\r\n this.currencyCode = companyProfile.currencyCode;\r\n if (companyProfile.logoUrl) {\r\n companyProfile.logoUrl = `${environment.apiUrl}${companyProfile.logoUrl}`\r\n }\r\n this._companyProfile$.next(companyProfile)\r\n }\r\n\r\n updateUserProfile(user: User) {\r\n const authObj: UserAuth = JSON.parse(localStorage.getItem('authObj'))\r\n authObj.firstName = user.firstName;\r\n authObj.lastName = user.lastName;\r\n authObj.profilePhoto = user.profilePhoto;\r\n authObj.phoneNumber = user.phoneNumber;\r\n localStorage.setItem('authObj', JSON.stringify(authObj));\r\n this._securityObject$.next(this.clonerService.deepClone(authObj));\r\n }\r\n\r\n // This method can be called a couple of different ways\r\n // *hasClaim=\"'claimType'\" // Assumes claimValue is true\r\n // *hasClaim=\"'claimType:value'\" // Compares claimValue to value\r\n // *hasClaim=\"['claimType1','claimType2:value','claimType3']\"\r\n // tslint:disable-next-line: typedef\r\n hasClaim(claimType: any, claimValue?: any): boolean {\r\n let ret = false;\r\n // See if an array of values was passed in.\r\n if (typeof claimType === 'string') {\r\n ret = this.isClaimValid(claimType, claimValue);\r\n } else {\r\n const claims: string[] = claimType;\r\n if (claims) {\r\n // tslint:disable-next-line: prefer-for-of\r\n for (let index = 0; index < claims.length; index++) {\r\n ret = this.isClaimValid(claims[index]);\r\n // If one is successful, then let them in\r\n if (ret) {\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n return ret;\r\n }\r\n\r\n private isClaimValid(claimType: string, claimValue?: string): boolean {\r\n let ret = false;\r\n let auth: UserAuth = null;\r\n // Retrieve security object\r\n const authStr = localStorage.getItem('authObj');\r\n if (authStr) {\r\n auth = JSON.parse(authStr);\r\n // See if the claim type has a value\r\n // *hasClaim=\"'claimType:value'\"\r\n if (claimType.indexOf(':') >= 0) {\r\n const words: string[] = claimType.split(':');\r\n claimType = words[0].toLowerCase();\r\n claimValue = words[1];\r\n } else {\r\n claimType = claimType.toLowerCase();\r\n // Either get the claim value, or assume 'true'\r\n claimValue = claimValue ? claimValue : 'true';\r\n }\r\n // Attempt to find the claim\r\n ret =\r\n auth.claims.find(\r\n (c) =>\r\n c.claimType && c.claimType.toLowerCase() == claimType && c.claimValue == claimValue\r\n ) != null;\r\n }\r\n return ret;\r\n }\r\n\r\n\r\n getUserDetail(): UserAuth {\r\n var userJson = localStorage.getItem('authObj');\r\n return JSON.parse(userJson);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as clone from 'clone';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ClonerService {\r\n deepClone(value): T {\r\n return clone(value);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { CommonError } from '@core/error-handler/common-error';\r\nimport { CommonHttpErrorService } from '@core/error-handler/common-http-error.service';\r\nimport { BehaviorSubject, Observable, of } from 'rxjs';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Role } from '@core/domain-classes/role';\r\nimport { Country } from '@core/domain-classes/country';\r\nimport { City } from '@core/domain-classes/city';\r\nimport { Industry } from '@core/domain-classes/industry';\r\nimport { DocumentAuditTrail } from '@core/domain-classes/document-audit-trail';\r\nimport { ReminderFrequency, reminderFrequencies } from '@core/domain-classes/reminder-frequency';\r\nimport { ReminderScheduler } from '@core/domain-classes/reminder-scheduler';\r\nimport { SendEmail } from '@core/domain-classes/send-email';\r\nimport { CustomReminderScheduler } from '@core/domain-classes/custom-reminder-scheduler';\r\nimport { ModuleReference } from '@core/domain-classes/module-reference';\r\nimport { Currency } from '@core/domain-classes/currency';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class CommonService {\r\n constructor(\r\n private httpClient: HttpClient,\r\n private commonHttpErrorService: CommonHttpErrorService) { }\r\n\r\n\r\n private _currentUrl$: BehaviorSubject = new BehaviorSubject('');\r\n\r\n public get currentUrl$() : Observable {\r\n return this._currentUrl$.asObservable();\r\n }\r\n\r\n setCurrentUrl(url){\r\n this._currentUrl$.next(url);\r\n }\r\n\r\n getAllUsers(): Observable {\r\n const url = `user/getAllUsers`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getRoles(): Observable {\r\n const url = `role`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getCountry() {\r\n const url = `Country`;\r\n return this.httpClient.get(url);\r\n }\r\n getCity(countryId: string, cityName: string) {\r\n const url = `City?countryId=${countryId}&&cityName=${cityName}`;\r\n return this.httpClient.get(url);\r\n }\r\n\r\n getCityByName(countryName: string, cityName: string) {\r\n const url = `City/countryName?countryName=${countryName}&&cityName=${cityName}`;\r\n return this.httpClient.get(url);\r\n }\r\n getIndustries(): Observable {\r\n return this.httpClient.get('industry');\r\n }\r\n\r\n getUsers(): Observable {\r\n const url = `user/GetUsers`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n addDocumentAuditTrail(documentAuditTrail: DocumentAuditTrail): Observable {\r\n return this.httpClient.post('documentAuditTrail', documentAuditTrail);\r\n }\r\n\r\n getReminderFrequency(): Observable {\r\n return of(reminderFrequencies);\r\n }\r\n\r\n getUserNotificationCount(): Observable {\r\n return this.httpClient.get('user/notification/count');\r\n }\r\n getTop10UserNotification(): Observable {\r\n return this.httpClient.get('reminder/notofication/top10');\r\n }\r\n sendEmail(sendEmail: SendEmail): Observable {\r\n return this.httpClient.post('sendEmail/suppliers', sendEmail);\r\n }\r\n addReminderSchedule(customReminderScheduler: CustomReminderScheduler) {\r\n return this.httpClient.post('ReminderScheduler', customReminderScheduler);\r\n }\r\n getReminderSchedulers(moduleReference: ModuleReference): Observable {\r\n const url= `ReminderScheduler/${moduleReference.application}/${moduleReference.referenceId}`;\r\n return this.httpClient.get(url);\r\n }\r\n\r\n getCurrencies(): Observable {\r\n return this.httpClient.get('Currency');\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { OnlineUser } from '@core/domain-classes/online-user';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { environment } from '@environments/environment';\r\nimport * as signalR from '@microsoft/signalr';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ClonerService } from './clone.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SignalrService {\r\n private hubConnection: signalR.HubConnection\r\n private onlineUsers_key: string = 'onlineuser_key';\r\n private _onlineUsers: BehaviorSubject = new BehaviorSubject([]);\r\n private _userNotification$: BehaviorSubject = new BehaviorSubject('');\r\n public get userNotification$(): Observable {\r\n return this._userNotification$.asObservable();\r\n }\r\n public get connectionId(): string {\r\n return this.hubConnection.connectionId;\r\n }\r\n\r\n public get onlineUsers$(): Observable {\r\n return this._onlineUsers.pipe(\r\n map((c: OnlineUser[]) => {\r\n if (c && c.length > 0) {\r\n return c;\r\n } else {\r\n const onlineUsersStr = localStorage.getItem(this.onlineUsers_key);\r\n if (onlineUsersStr) {\r\n const onlineUser = JSON.parse(onlineUsersStr);\r\n this._onlineUsers.next(onlineUser);\r\n return onlineUser;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n })\r\n );\r\n }\r\n\r\n constructor(\r\n private clonerService: ClonerService,\r\n private toastrService: ToastrService,\r\n private securityService: SecurityService) { }\r\n\r\n public startConnection(): Promise {\r\n return new Promise((resolve, reject) => {\r\n this.hubConnection = new signalR.HubConnectionBuilder()\r\n .withUrl(`${environment.apiUrl}userHub`)\r\n .build();\r\n this.hubConnection\r\n .start()\r\n .then(() => {\r\n resolve(true)\r\n })\r\n .catch(err => {\r\n reject(false);\r\n });\r\n })\r\n }\r\n\r\n addUser(signalrUser: OnlineUser) {\r\n this.hubConnection.invoke('join', signalrUser)\r\n .catch(err => console.error(err));\r\n }\r\n\r\n forceLogout(id: string) {\r\n this.hubConnection.invoke('forceLogout', id)\r\n .catch(err => console.error(err));\r\n }\r\n\r\n logout(id: string) {\r\n localStorage.removeItem(this.onlineUsers_key);\r\n this._onlineUsers.next([]);\r\n this.hubConnection.invoke('logout', id)\r\n .catch(err => console.error(err));\r\n }\r\n\r\n handleMessage = () => {\r\n this.hubConnection.on('userLeft', (id: string) => {\r\n this.removeUser(id);\r\n });\r\n this.hubConnection.on('newOnlineUser', (onlineUser: OnlineUser) => {\r\n this.newOnlineUser(onlineUser);\r\n });\r\n\r\n this.hubConnection.on('sendNotification', (userId: string) => {\r\n this._userNotification$.next(userId);\r\n });\r\n\r\n this.hubConnection.on('Joined', (onlineUser: OnlineUser) => {\r\n });\r\n\r\n this.hubConnection.on('logout', (onlineUser: OnlineUser) => {\r\n this.removeUser(onlineUser.id);\r\n });\r\n\r\n this.hubConnection.on('forceLogout', (onlineUser: OnlineUser) => {\r\n this.removeUser(onlineUser.id);\r\n this.toastrService.error('Admin logout you forcefully.');\r\n this.securityService.logout();\r\n });\r\n\r\n this.hubConnection.on('onlineUsers', (onlineUsers: OnlineUser[]) => {\r\n if (onlineUsers.length > 0) {\r\n const onlineUsersStr = JSON.stringify(onlineUsers);\r\n localStorage.setItem(this.onlineUsers_key, onlineUsersStr);\r\n this._onlineUsers.next(onlineUsers);\r\n }\r\n else {\r\n localStorage.removeItem(this.onlineUsers_key);\r\n this._onlineUsers.next(this.clonerService.deepClone([]));\r\n }\r\n });\r\n\r\n this.hubConnection.on('sendDM', (message: string, sender: OnlineUser[]) => {\r\n });\r\n }\r\n\r\n newOnlineUser(onlineUser: OnlineUser): void {\r\n const onlineUsersStr = localStorage.getItem(this.onlineUsers_key);\r\n const onlineUsers = JSON.parse(onlineUsersStr) as OnlineUser[];\r\n if (onlineUsers && !onlineUsers.find(c => c.id === onlineUser.id)) {\r\n onlineUsers.push(onlineUser);\r\n this._onlineUsers.next(this.clonerService.deepClone(onlineUsers));\r\n } else {\r\n this._onlineUsers.next(this.clonerService.deepClone([onlineUser]));\r\n }\r\n }\r\n removeUser(id: string) {\r\n const onlineUsersStr = localStorage.getItem(this.onlineUsers_key);\r\n if (onlineUsersStr) {\r\n const onlineUsers = JSON.parse(onlineUsersStr) as OnlineUser[];\r\n const filterOnlineUsers = onlineUsers.filter(c => c.id !== id);\r\n localStorage.removeItem(this.onlineUsers_key);\r\n if (filterOnlineUsers && filterOnlineUsers.length > 0) {\r\n localStorage.setItem(this.onlineUsers_key, JSON.stringify(filterOnlineUsers));\r\n this._onlineUsers.next(this.clonerService.deepClone(filterOnlineUsers));\r\n } else {\r\n this._onlineUsers.next(this.clonerService.deepClone([]));\r\n }\r\n } else {\r\n this._onlineUsers.next(this.clonerService.deepClone([]));\r\n }\r\n }\r\n\r\n}\r\n","// Localization is based on '@ngx-translate/core';\r\n// Please be familiar with official documentations first => https://github.com/ngx-translate/core\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { of } from 'rxjs';\r\n\r\nexport interface Locale {\r\n lang: string;\r\n data: any;\r\n}\r\n\r\nconst LOCALIZATION_LOCAL_STORAGE_KEY = 'language';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TranslationService {\r\n // Private properties\r\n private langIds: any = [];\r\n\r\n constructor(private translate: TranslateService) {\r\n }\r\n\r\n loadTranslations(...args: Locale[]): void {\r\n const locales = [...args];\r\n locales.forEach((locale) => {\r\n // use setTranslation() with the third argument set to true\r\n // to append translations instead of replacing them\r\n this.translate.setTranslation(locale.lang, locale.data, true);\r\n this.langIds.push(locale.lang);\r\n });\r\n\r\n // add new languages to the list\r\n this.translate.addLangs(this.langIds);\r\n }\r\n\r\n setLanguage(lang) {\r\n try {\r\n if (lang) {\r\n localStorage.setItem(LOCALIZATION_LOCAL_STORAGE_KEY, lang);\r\n return this.translate.use(lang);\r\n }\r\n }\r\n catch {\r\n return of(null);\r\n }\r\n }\r\n\r\n removeLanguage() {\r\n try {\r\n localStorage.removeItem(LOCALIZATION_LOCAL_STORAGE_KEY);\r\n }\r\n catch {\r\n\r\n }\r\n }\r\n\r\n /**\r\n * Returns selected language\r\n */\r\n getSelectedLanguage(): any {\r\n try {\r\n if (localStorage) {\r\n return (\r\n localStorage.getItem(LOCALIZATION_LOCAL_STORAGE_KEY) ||\r\n this.translate.getDefaultLang()\r\n );\r\n }\r\n }\r\n catch {\r\n return null;\r\n }\r\n }\r\n\r\n getValue(key: string) {\r\n return this.translate.instant(key);\r\n }\r\n}\r\n","import { animate, state, style, transition, trigger } from '@angular/animations';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { UserAuth } from '@core/domain-classes/user-auth';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { CommonService } from '@core/services/common.service';\r\nimport { environment } from '@environments/environment';\r\nimport { BaseComponent } from 'src/app/base.component';\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n animations: [\r\n trigger('slide', [\r\n state('up', style({ height: 0 })),\r\n state('down', style({ height: '*' })),\r\n transition('up <=> down', animate(200))\r\n ])\r\n ]\r\n})\r\nexport class SidebarComponent extends BaseComponent implements OnInit {\r\n appUserAuth: UserAuth = null;\r\n currentUrl: string=\"dashboard\";\r\n\r\n constructor(\r\n private securityService: SecurityService,\r\n private commonService: CommonService) {\r\n super();\r\n }\r\n\r\n ngOnInit() {\r\n this.setTopLogAndName();\r\n this.routerNavigate();\r\n }\r\n\r\n setTopLogAndName() {\r\n this.sub$.sink = this.securityService.securityObject$\r\n .subscribe(c => {\r\n if (c) {\r\n this.appUserAuth = c;\r\n if (this.appUserAuth.profilePhoto) {\r\n this.appUserAuth.profilePhoto = `${environment.apiUrl}${this.appUserAuth.profilePhoto}`\r\n }\r\n }\r\n })\r\n }\r\n routerNavigate(){\r\n this.sub$.sink= this.commonService.currentUrl$.subscribe(c=>{\r\n this.currentUrl= c;\r\n });\r\n }\r\n\r\n getState(currentMenu) {\r\n if (currentMenu.active) {\r\n return 'down';\r\n } else {\r\n return 'up';\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","export function randomString(length: number = 36) {\r\n let random = '';\r\n let possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\r\n for (let i = 0; i < length; i++) {\r\n random += possible.charAt(Math.floor(Math.random() * possible.length));\r\n }\r\n return random;\r\n}\r\n","import { HttpClient, HttpEvent, HttpParams, HttpResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { DocumentInfo } from '@core/domain-classes/document-info';\r\nimport { DocumentResource } from '@core/domain-classes/document-resource';\r\nimport { CommonError } from '@core/error-handler/common-error';\r\nimport { CommonHttpErrorService } from '@core/error-handler/common-http-error.service';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DocumentLibraryService {\r\n\r\n constructor(private httpClient: HttpClient,\r\n private commonHttpErrorService: CommonHttpErrorService) { }\r\n\r\n getDocuments(resource: DocumentResource): Observable | CommonError> {\r\n const url = `DocumentLibraries`;\r\n const customParams = new HttpParams()\r\n .set('Fields', resource.fields)\r\n .set('OrderBy', resource.orderBy)\r\n .set('PageSize', resource.pageSize.toString())\r\n .set('Skip', resource.skip.toString())\r\n .set('SearchQuery', resource.searchQuery)\r\n .set('categoryId', resource.categoryId)\r\n .set('name', resource.name)\r\n .set('id', resource.id.toString())\r\n\r\n return this.httpClient.get(url, {\r\n params: customParams,\r\n observe: 'response'\r\n }).pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getDocumentLibrary(id: string): Observable {\r\n return this.httpClient.get('document/' + id);\r\n }\r\n getDocumentViewLibrary(id: string): Observable {\r\n return this.httpClient.get('document/view/' + id);\r\n }\r\n\r\n downloadDocument(documentId: string): Observable> {\r\n const url = `document/${documentId}/download`;\r\n return this.httpClient.get(url, {\r\n reportProgress: true,\r\n observe: 'events',\r\n responseType: 'blob',\r\n });\r\n }\r\n}\r\n","import { Injectable, NgModule } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n HttpEvent,\r\n HttpInterceptor,\r\n HttpHandler,\r\n HttpRequest,\r\n HttpErrorResponse,\r\n} from '@angular/common/http';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { environment } from '@environments/environment';\r\nimport { tap } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Injectable()\r\nexport class HttpRequestInterceptor implements HttpInterceptor {\r\n /**\r\n *\r\n */\r\n constructor(private router: Router, private toastrService: ToastrService) {\r\n }\r\n intercept(\r\n req: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n var token = localStorage.getItem('bearerToken');\r\n const baseUrl = environment.apiUrl;\r\n if (req.url.lastIndexOf('i18n') > -1) {\r\n return next.handle(req);\r\n }\r\n const url = req.url.lastIndexOf('api') > -1 ? req.url : 'api/' + req.url;\r\n if (token) {\r\n const newReq = req.clone({\r\n headers: req.headers.set('Authorization', 'Bearer ' + token),\r\n url: `${baseUrl}${url}`,\r\n });\r\n return next.handle(newReq).pipe(\r\n tap(\r\n () => { },\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 401) {\r\n this.router.navigate(['login']);\r\n } else if (err.error) {\r\n this.toastrService.error(err.error.join(\"
\"), \"\", {\r\n enableHtml: true\r\n });\r\n } else {\r\n this.toastrService.error(err.message, \"\", {\r\n enableHtml: true\r\n });\r\n }\r\n }\r\n }\r\n )\r\n );\r\n } else {\r\n const newReq = req.clone({\r\n url: `${baseUrl}${url}`,\r\n });\r\n return next.handle(newReq).pipe(\r\n tap(\r\n () => { },\r\n (err: any) => {\r\n if (err instanceof HttpErrorResponse) {\r\n if (err.status === 401) {\r\n this.router.navigate(['login']);\r\n }\r\n if (err.status === 403) {\r\n this.router.navigate(['login']);\r\n }\r\n if (err.status === 409) {\r\n this.toastrService.error(err.error.messages[0])\r\n }\r\n }\r\n }\r\n )\r\n );\r\n }\r\n }\r\n}\r\n\r\n@NgModule({\r\n providers: [\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: HttpRequestInterceptor,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class HttpInterceptorModule { }\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ApplicationEnums } from '@core/domain-classes/application.enum';\r\nimport { CustomReminderScheduler } from '@core/domain-classes/custom-reminder-scheduler';\r\nimport { ModuleReference } from '@core/domain-classes/module-reference';\r\nimport { ReminderScheduler } from '@core/domain-classes/reminder-scheduler';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { CommonService } from '@core/services/common.service';\r\n\r\n@Component({\r\n selector: 'app-add-reminder-scheduler',\r\n templateUrl: './add-reminder-scheduler.component.html',\r\n styleUrls: ['./add-reminder-scheduler.component.scss']\r\n})\r\nexport class AddReminderSchedulerComponent implements OnInit {\r\n\r\n reminderForm: FormGroup;\r\n users: User[] = [];\r\n selectedUsers: User[] = [];\r\n reminderSchedulers: ReminderScheduler[] = [];\r\n displayedColumns: string[] = ['subject', 'createdDate', 'userName'];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private commonService: CommonService,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: ModuleReference) { }\r\n\r\n ngOnInit(): void {\r\n this.createReminder();\r\n this.getUsers();\r\n this.getReminderSchedulers();\r\n }\r\n\r\n createReminder() {\r\n this.reminderForm = this.fb.group({\r\n subject: ['', [Validators.required]],\r\n message: ['', [Validators.required]],\r\n isEmailNotification: [true],\r\n reminderDate: [new Date()],\r\n selectedUsers: [null]\r\n });\r\n }\r\n buildReminderSchedule() {\r\n const selectedUsers = this.reminderForm.get('selectedUsers').value;\r\n const customReminderScheduler: CustomReminderScheduler = {\r\n subject: this.reminderForm.get('subject').value,\r\n message: this.reminderForm.get('message').value,\r\n isEmailNotification: this.reminderForm.get('isEmailNotification').value,\r\n createdDate: this.reminderForm.get('reminderDate').value,\r\n userIds: selectedUsers ? selectedUsers.map(c => c.id) : null,\r\n application: this.data.application,\r\n referenceId: this.data.referenceId\r\n };\r\n return customReminderScheduler;\r\n }\r\n\r\n getUsers() {\r\n this.commonService.getAllUsers().subscribe((u: User[]) => {\r\n this.users = u;\r\n });\r\n }\r\n\r\n saveReminder() {\r\n if (this.reminderForm.valid) {\r\n let reminderSchedulers = this.buildReminderSchedule();\r\n if (!reminderSchedulers.userIds) {\r\n reminderSchedulers.userIds = [];\r\n }\r\n this.commonService.addReminderSchedule(reminderSchedulers)\r\n .subscribe(c => {\r\n if (c) {\r\n this.dialogRef.close();\r\n }\r\n })\r\n } else {\r\n this.reminderForm.markAllAsTouched();\r\n }\r\n }\r\n getReminderSchedulers() {\r\n this.commonService.getReminderSchedulers(this.data)\r\n .subscribe((c: ReminderScheduler[]) => {\r\n this.reminderSchedulers = c;\r\n });\r\n }\r\n cancelReminder() {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

\r\n {{'REMINDER' | translate}}\r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'SUBJECT_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'MESSAGE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{reminderForm.get('selectedUsers').value ? reminderForm.get('selectedUsers').value[0].firstName + ' '\r\n + reminderForm.get('selectedUsers').value[0].lastName : ''}}\r\n 1\"\r\n class=\"example-additional-selection\">\r\n (+{{reminderForm.get('selectedUsers').value.length - 1}}\r\n {{reminderForm.get('selectedUsers').value?.length === 2 ? 'other' : 'others'}})\r\n \r\n \r\n {{user.firstName}}\r\n {{user.lastName}}\r\n \r\n \r\n
\r\n
\r\n {{'SEND_EMAIL' | translate}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{\"SUBJECT\" | translate}} {{element.subject}} {{\"DATE\" | translate}} {{element.createdDate | utcToLocalTime:'shortDate'}} {{\"NAME\" | translate}} {{element.userName}}
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Directive, HostListener, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n\r\n@Directive({\r\n selector: '[appDragDrop]'\r\n})\r\nexport class DragDropDirective {\r\n @Input() appDragDrop: string;\r\n @Output() onFileDropped = new EventEmitter>();\r\n fileOver: boolean = false;\r\n @HostListener('dragover', ['$event']) onDragOver(evt) {\r\n // Dragover listener @HostListener('dragover', ['$event']) onDragover (evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n console.log('Drag over');\r\n }\r\n\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt) {\r\n\r\n // Dragleave listener @HostListener('dragleave', ['$event']) public onDragLeave (evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n console.log('Drag Leave');\r\n }\r\n\r\n @HostListener('drop', ['$event']) onDrop(evt) {\r\n // Drop listener @HostListener('drop', ['$event']) public ondrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.fileOver = false;\r\n const files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.onFileDropped.emit(files);\r\n // Do Some stuff here console.log('You dropped ${files.length} files. );\r\n\r\n }\r\n }\r\n}\r\n","import { HttpEventType, HttpResponse } from '@angular/common/http';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { DocumentAuditTrail } from '@core/domain-classes/document-audit-trail';\r\nimport { DocumentInfo } from '@core/domain-classes/document-info';\r\nimport { DocumentOperation } from '@core/domain-classes/document-operation';\r\nimport { DocumentView } from '@core/domain-classes/document-view';\r\nimport { CommonService } from '@core/services/common.service';\r\nimport { OVERLAY_PANEL_DATA } from '@shared/overlay-panel/overlay-panel-data';\r\nimport { OverlayPanelRef } from '@shared/overlay-panel/overlay-panel-ref';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BaseComponent } from 'src/app/base.component';\r\nimport { DocumentLibraryService } from '../../document-library/document-library.service';\r\n\r\n@Component({\r\n selector: 'app-document-view',\r\n templateUrl: './document-view.component.html',\r\n styleUrls: ['./document-view.component.scss']\r\n})\r\nexport class DocumentViewComponent extends BaseComponent implements OnInit {\r\n constructor(\r\n private documentLibraryService: DocumentLibraryService,\r\n @Inject(OVERLAY_PANEL_DATA) public data: DocumentView,\r\n private overlayRef: OverlayPanelRef,\r\n private toastrService: ToastrService,\r\n private commonService: CommonService) {\r\n super();\r\n }\r\n documentUrl: string = null;\r\n documentInfo: DocumentInfo;\r\n viewerType: string = 'pdf';\r\n isLoading: boolean = false;\r\n loadingTime: number = 2000;\r\n public get isPdf(): boolean {\r\n return this.viewerType === 'pdf';\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getDocumentById();\r\n }\r\n\r\n closeToolbar() {\r\n this.overlayRef.close();\r\n }\r\n\r\n getDocumentById() {\r\n this.isLoading = true;\r\n if (this.data.isRestricted) {\r\n this.sub$.sink = this.documentLibraryService.getDocumentLibrary(this.data.documentId)\r\n .subscribe(c => {\r\n this.isLoading = false;\r\n this.documentInfo = c;\r\n this.viewerType = this.documentInfo.viewerType;\r\n this.getDocumentUrl();\r\n this.addDocumentTrail();\r\n });\r\n }\r\n else {\r\n this.sub$.sink = this.documentLibraryService.getDocumentViewLibrary(this.data.documentId)\r\n .subscribe(c => {\r\n this.isLoading = false;\r\n this.documentInfo = c;\r\n this.viewerType = this.documentInfo.viewerType;\r\n this.getDocumentUrl();\r\n this.addDocumentTrail();\r\n });\r\n }\r\n }\r\n\r\n addDocumentTrail() {\r\n const objDocumentAuditTrail: DocumentAuditTrail = {\r\n documentId: this.documentInfo.id,\r\n operationName: DocumentOperation.Read.toString()\r\n }\r\n this.sub$.sink = this.commonService.addDocumentAuditTrail(objDocumentAuditTrail)\r\n .subscribe(c => {\r\n })\r\n }\r\n\r\n getDocumentUrl() {\r\n this.documentUrl = this.documentInfo.documentSource;\r\n this.loadingTime = 0;\r\n }\r\n\r\n downloadDocument() {\r\n this.sub$.sink = this.documentLibraryService.downloadDocument(this.documentInfo.id)\r\n .subscribe(\r\n (event) => {\r\n if (event.type === HttpEventType.Response) {\r\n this.downloadFile(event);\r\n }\r\n },\r\n (error) => {\r\n this.toastrService.error('error while downloading document');\r\n }\r\n );\r\n }\r\n\r\n private downloadFile(data: HttpResponse) {\r\n const downloadedFile = new Blob([data.body], { type: data.body.type });\r\n const a = document.createElement('a');\r\n a.setAttribute('style', 'display:none;');\r\n document.body.appendChild(a);\r\n a.download = this.documentInfo.name;\r\n a.href = URL.createObjectURL(downloadedFile);\r\n a.target = '_blank';\r\n a.click();\r\n document.body.removeChild(a);\r\n }\r\n}\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n {{documentInfo?.name}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Directive, Input, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { SecurityService } from '../core/security/security.service';\r\n\r\n@Directive({\r\n // tslint:disable-next-line: directive-selector\r\n selector: '[hasClaim]'\r\n})\r\nexport class HasClaimDirective {\r\n @Input() set hasClaim(claimType: any) {\r\n if (this.securityService.hasClaim(claimType)) {\r\n // Add template to DOM\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n } else {\r\n // Remove template from DOM\r\n this.viewContainer.clear();\r\n }\r\n }\r\n\r\n constructor(\r\n private templateRef: TemplateRef,\r\n private viewContainer: ViewContainerRef,\r\n private securityService: SecurityService) { }\r\n}\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { Observable, Subscription, timer } from 'rxjs';\r\nimport { debounce } from 'rxjs/operators';\r\nimport { PendingInterceptorService } from './pending-interceptor.service';\r\n\r\n@Component({\r\n selector: 'app-loading-indicator',\r\n templateUrl: './loading-indicator.component.html',\r\n styleUrls: ['./loading-indicator.component.scss']\r\n})\r\nexport class LoadingIndicatorComponent implements OnInit, OnDestroy {\r\n\r\n public isSpinnerVisible: boolean;\r\n @Input()\r\n public backgroundColor: string;\r\n @Input()\r\n public filteredUrlPatterns: string[] = [];\r\n @Input()\r\n public debounceDelay = 100;\r\n @Input()\r\n public entryComponent: any = null;\r\n private subscription: Subscription;\r\n\r\n constructor(private pendingRequestInterceptorService: PendingInterceptorService) {\r\n this.subscription = this.pendingRequestInterceptorService\r\n .pendingRequestsStatus\r\n .pipe(debounce(this.handleDebounce.bind(this)))\r\n .subscribe(hasPendingRequests => this.isSpinnerVisible = hasPendingRequests);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (!(this.filteredUrlPatterns instanceof Array)) {\r\n throw new TypeError('`filteredUrlPatterns` must be an array.');\r\n }\r\n\r\n if (!!this.filteredUrlPatterns.length) {\r\n this.filteredUrlPatterns.forEach(e => {\r\n this.pendingRequestInterceptorService.filteredUrlPatterns.push(new RegExp(e));\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n private handleDebounce(hasPendingRequests: boolean): Observable {\r\n if (hasPendingRequests) {\r\n return timer(this.debounceDelay);\r\n }\r\n\r\n return timer(0);\r\n }\r\n}\r\n","
\r\n \r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { LoadingIndicatorComponent } from './loading-indicator.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatProgressBarModule\r\n ],\r\n declarations: [LoadingIndicatorComponent],\r\n exports: [LoadingIndicatorComponent],\r\n})\r\nexport class LoadingIndicatorModule {\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { PendingInterceptorService, PendingInterceptorServiceFactoryProvider } from './pending-interceptor.service';\r\n\r\nconst PendingInterceptorServiceExistingProvider = {\r\n provide: HTTP_INTERCEPTORS,\r\n useExisting: PendingInterceptorService,\r\n multi: true\r\n};\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule\r\n ],\r\n declarations: [],\r\n providers: [\r\n PendingInterceptorServiceExistingProvider,\r\n PendingInterceptorServiceFactoryProvider\r\n ],\r\n})\r\nexport class PendingInterceptorModule {\r\n}\r\n","import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from '@angular/router';\r\nimport { Observable, ReplaySubject, throwError } from 'rxjs';\r\nimport { catchError, finalize, map } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class PendingInterceptorService implements HttpInterceptor {\r\n private _pendingRequests = 0;\r\n\r\n get pendingRequests(): number {\r\n return this._pendingRequests;\r\n }\r\n\r\n private _pendingRequestsStatus: ReplaySubject = new ReplaySubject(1);\r\n\r\n get pendingRequestsStatus(): Observable {\r\n return this._pendingRequestsStatus.asObservable();\r\n }\r\n\r\n private _filteredUrlPatterns: RegExp[] = [];\r\n\r\n get filteredUrlPatterns(): RegExp[] {\r\n return this._filteredUrlPatterns;\r\n }\r\n\r\n constructor(router: Router) {\r\n router.events.subscribe(event => {\r\n if (event instanceof NavigationStart) {\r\n this._pendingRequestsStatus.next(true);\r\n }\r\n\r\n if ((event instanceof NavigationError || event instanceof NavigationEnd || event instanceof NavigationCancel)) {\r\n this._pendingRequestsStatus.next(false);\r\n }\r\n });\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const shouldBypass = this.shouldBypass(req.url);\r\n\r\n if (!shouldBypass) {\r\n this._pendingRequests++;\r\n\r\n if (1 === this._pendingRequests) {\r\n this._pendingRequestsStatus.next(true);\r\n }\r\n }\r\n\r\n return next.handle(req).pipe(\r\n map(event => {\r\n return event;\r\n }),\r\n catchError(error => {\r\n return throwError(error);\r\n }),\r\n finalize(() => {\r\n if (!shouldBypass) {\r\n this._pendingRequests--;\r\n\r\n if (0 === this._pendingRequests) {\r\n this._pendingRequestsStatus.next(false);\r\n }\r\n }\r\n })\r\n );\r\n }\r\n\r\n private shouldBypass(url: string): boolean {\r\n return this._filteredUrlPatterns.some(e => {\r\n return e.test(url);\r\n });\r\n }\r\n}\r\n\r\nexport function PendingInterceptorServiceFactory(router: Router) {\r\n return new PendingInterceptorService(router);\r\n}\r\n\r\nexport let PendingInterceptorServiceFactoryProvider = {\r\n provide: PendingInterceptorService,\r\n useFactory: PendingInterceptorServiceFactory,\r\n deps: [Router]\r\n};\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const OVERLAY_PANEL_DATA = new InjectionToken('OVERLAY_PANEL_DATA');\r\n","import {ComponentType, OverlayRef} from '@angular/cdk/overlay';\r\nimport {Observable, Subject} from 'rxjs';\r\nimport {take} from 'rxjs/operators';\r\nimport {ComponentRef} from '@angular/core';\r\nimport { randomString } from '@core/utils/random-string';\r\n\r\nexport class OverlayPanelRef, V = any> {\r\n public id: string = randomString(15);\r\n private value = new Subject();\r\n public componentRef: ComponentRef;\r\n\r\n constructor(public overlayRef: OverlayRef) {}\r\n\r\n public isOpen(): boolean {\r\n return this.overlayRef && this.overlayRef.hasAttached();\r\n }\r\n\r\n public close() {\r\n this.overlayRef && this.overlayRef.dispose();\r\n }\r\n\r\n public emitValue(value: V) {\r\n this.value.next(value);\r\n }\r\n\r\n public valueChanged(): Observable {\r\n return this.value.asObservable();\r\n }\r\n\r\n public getPanelEl() {\r\n return this.overlayRef.overlayElement;\r\n }\r\n\r\n public updatePosition() {\r\n return this.overlayRef.updatePosition();\r\n }\r\n\r\n public afterClosed() {\r\n return this.overlayRef.detachments().pipe(take(1));\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { CurrencyPipe } from '@angular/common';\r\nimport { SecurityService } from '@core/security/security.service';\r\n\r\n@Pipe({\r\n name: 'customCurrency',\r\n pure: true\r\n})\r\nexport class CustomCurrencyPipe implements PipeTransform {\r\n constructor(private currencyPipe: CurrencyPipe, private securityService: SecurityService) {\r\n }\r\n transform(value: any, args?: any): any {\r\n value = value ?? 0;\r\n return this.currencyPipe.transform(value, this.securityService.currencyCode);\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dateAgo',\r\n pure: true\r\n})\r\nexport class DateAgoPipe implements PipeTransform {\r\n\r\n transform(value: any, args?: any): any {\r\n if (value) {\r\n const seconds = Math.floor((+new Date() - +new Date(value)) / 1000);\r\n if (seconds < 29) // less than 30 seconds ago will show as 'Just now'\r\n return 'Just now';\r\n const intervals = {\r\n 'year': 31536000,\r\n 'month': 2592000,\r\n 'week': 604800,\r\n 'day': 86400,\r\n 'hour': 3600,\r\n 'minute': 60,\r\n 'second': 1\r\n };\r\n let counter;\r\n for (const i in intervals) {\r\n counter = Math.floor(seconds / intervals[i]);\r\n if (counter > 0)\r\n if (counter === 1) {\r\n return counter + ' ' + i + ' ago'; // singular (1 day ago)\r\n } else {\r\n return counter + ' ' + i + 's ago'; // plural (2 days ago)\r\n }\r\n }\r\n }\r\n return value;\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { paymentMethods } from '@core/domain-classes/payment-method';\r\n\r\n@Pipe({\r\n name: 'paymentmethod'\r\n})\r\n\r\nexport class PaymentMethodPipe implements PipeTransform {\r\n transform(value: any, ...args: any[]): any {\r\n const paymentMethod = paymentMethods.find(c => c.id == value);\r\n if (paymentMethod) {\r\n return paymentMethod.name;\r\n }\r\n return '';\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule, CurrencyPipe } from '@angular/common';\r\nimport { TruncatePipe } from './truncate.pipe';\r\nimport { DateAgoPipe } from './date-ago.pipe';\r\nimport { PaymentStatusPipe } from './purchase-order-paymentStatus.pipe';\r\nimport { PaymentMethodPipe } from './paymentMethod.pipe';\r\nimport { CustomCurrencyPipe } from './custome-currency.pipe';\r\nimport { UTCToLocalTime } from './utc-to-localtime.pipe';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n TruncatePipe,\r\n DateAgoPipe,\r\n PaymentStatusPipe,\r\n PaymentMethodPipe,\r\n CustomCurrencyPipe,\r\n UTCToLocalTime\r\n ],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports: [\r\n TruncatePipe,\r\n DateAgoPipe,\r\n PaymentStatusPipe,\r\n PaymentMethodPipe,\r\n CustomCurrencyPipe,\r\n UTCToLocalTime\r\n ],\r\n providers: [CurrencyPipe]\r\n})\r\nexport class PipesModule { }\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { paymentStatuses } from '@core/domain-classes/payment-status';\r\n\r\n@Pipe({\r\n name: 'paymentStatus'\r\n})\r\n\r\nexport class PaymentStatusPipe implements PipeTransform {\r\n transform(value: any, ...args: any[]): any {\r\n const paymentaStatus = paymentStatuses.find(c => c.id == value);\r\n if (paymentaStatus) {\r\n return paymentaStatus.name;\r\n }\r\n return '';\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { Tax } from '@core/domain-classes/tax';\r\n\r\n@Pipe({\r\n name: 'quantitiesunitpriceTax'\r\n})\r\n\r\nexport class QuantitiesUnitPriceTaxPipe implements PipeTransform {\r\n transform(value: number, ...args: any[]): any {\r\n if(args.length === 1){\r\n const totalAmount = value * args[0];\r\n return parseFloat(totalAmount.toFixed(2));\r\n } else if(args.length === 2) {\r\n const totalAmount = value * args[0];\r\n if(args[1]){\r\n return this.getSubTotalAfterDiscount(totalAmount, parseFloat(args[1]));\r\n } else {\r\n return 0;\r\n }\r\n }\r\n else if(args.length===4){\r\n let totalAmount = value * args[0];\r\n if(args[1]){\r\n totalAmount = parseFloat( this.getSubTotalAfterDiscountWithTotalAmount(totalAmount, parseFloat(args[1])));\r\n }\r\n const taxIds = args[2];\r\n const taxs = args[3];\r\n if(taxIds && taxIds.length>0){\r\n return this.getSubTotalAfterTaxPercentage(totalAmount,taxIds,taxs );\r\n } else {\r\n return 0;\r\n }\r\n }\r\n return 0;\r\n }\r\n\r\n getSubTotalAfterTax(totalAmount: number, taxIds: Array, taxs: Tax[]){\r\n const selectedPercentages:Array=[];\r\n const selectedTaxs: Array=[];\r\n taxIds.forEach(tax => {\r\n selectedPercentages.push(taxs.find(c=>c.id===tax).percentage);\r\n });\r\n\r\n selectedPercentages.forEach(percentage=>{\r\n selectedTaxs.push( (totalAmount * percentage) / 100);\r\n });\r\n selectedTaxs.forEach(c=>{\r\n totalAmount = totalAmount + c;\r\n })\r\n\r\n return totalAmount.toFixed(2);\r\n\r\n }\r\n\r\n getSubTotalAfterTaxPercentage(totalAmount: number, taxIds: Array, taxs: Tax[]){\r\n const selectedPercentages:Array=[];\r\n const selectedTaxs: Array=[];\r\n let taxAmount=0;\r\n taxIds.forEach(tax => {\r\n selectedPercentages.push(taxs.find(c=>c.id===tax).percentage);\r\n });\r\n\r\n selectedPercentages.forEach(percentage=>{\r\n selectedTaxs.push( (totalAmount * percentage) / 100);\r\n });\r\n selectedTaxs.forEach(c=>{\r\n taxAmount= taxAmount + c;\r\n })\r\n\r\n return taxAmount.toFixed(2);\r\n\r\n }\r\n getSubTotalAfterDiscountWithTotalAmount(totalAmount: number, discount: number){\r\n let totalDiscount= (totalAmount * discount) / 100;\r\n const total= totalAmount - totalDiscount;\r\n return total.toFixed(2);\r\n }\r\n\r\n getSubTotalAfterDiscount(totalAmount: number, discount: number){\r\n let totalDiscount= (totalAmount * discount) / 100;\r\n return totalDiscount.toFixed(2);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { Tax } from '@core/domain-classes/tax';\r\n\r\n@Pipe({\r\n name: 'quantitiesunitprice'\r\n})\r\n\r\nexport class QuantitiesUnitPricePipe implements PipeTransform {\r\n transform(value: number, ...args: any[]): any {\r\n if(args.length === 1){\r\n const totalAmount = value * args[0];\r\n return parseFloat(totalAmount.toFixed(2));\r\n }\r\n else if(args.length === 2) {\r\n const totalAmount = value * args[0];\r\n if(args[1]){\r\n return this.getSubTotalAfterDiscount(totalAmount, parseFloat(args[1]));\r\n } else {\r\n return totalAmount;\r\n }\r\n }\r\n else if(args.length===4){\r\n let totalAmount = value * args[0];\r\n if(args[1]){\r\n totalAmount = parseFloat(this.getSubTotalAfterDiscount(totalAmount, parseFloat(args[1])));\r\n }\r\n const taxIds = args[2];\r\n const taxs = args[3];\r\n if(taxIds && taxIds.length>0){\r\n return this.getSubTotalAfterTax(totalAmount,taxIds,taxs );\r\n } else {\r\n return totalAmount.toFixed(2);\r\n }\r\n }\r\n return 0;\r\n }\r\n\r\n getSubTotalAfterTax(totalAmount: number, taxIds: Array, taxs: Tax[]){\r\n const selectedPercentages:Array=[];\r\n const selectedTaxs: Array=[];\r\n taxIds.forEach(tax => {\r\n selectedPercentages.push(taxs.find(c=>c.id===tax).percentage);\r\n });\r\n\r\n selectedPercentages.forEach(percentage=>{\r\n selectedTaxs.push( (totalAmount * percentage) / 100);\r\n });\r\n selectedTaxs.forEach(c=>{\r\n totalAmount = totalAmount + c;\r\n })\r\n\r\n return totalAmount.toFixed(2);\r\n\r\n }\r\n getSubTotalAfterDiscount(totalAmount: number, discount: number){\r\n totalAmount= totalAmount - (totalAmount * discount) / 100;\r\n return totalAmount.toFixed(2);\r\n }\r\n}\r\n","import { Pipe } from '@angular/core';\r\n\r\n// tslint:disable-next-line:use-pipe-transform-interface\r\n@Pipe({\r\n name: 'limitTo'\r\n})\r\nexport class TruncatePipe {\r\n transform(value: string, args: string): string {\r\n if (!value)\r\n return '';\r\n const limit = args ? parseInt(args, 10) : 100;\r\n const trail = '...';\r\n return value.length > limit ? value.substring(0, limit) + trail : value;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nenum UTCToLocalTimeFormat {\r\n FULL = 'full',\r\n SHORT = 'short',\r\n SHORT_DATE = \"shortDate\",\r\n SHORT_TIME = \"shortTime\"\r\n}\r\n\r\n@Pipe({\r\n name: 'utcToLocalTime'\r\n})\r\n\r\nexport class UTCToLocalTime implements PipeTransform {\r\n transform(utcDate: Date, format: UTCToLocalTimeFormat | string): any {\r\n const browserLanuges = navigator.language;\r\n if (!utcDate) {\r\n return '';\r\n }\r\n if (format === UTCToLocalTimeFormat.SHORT) {\r\n const date = new Date(utcDate).toLocaleDateString(browserLanuges);\r\n const time = new Date(utcDate).toLocaleTimeString(browserLanuges);\r\n return `${date} ${time}`;\r\n // return moment.utc(utcDate).format(\"MM/DD/YYYY hh:mm:ss\");\r\n }\r\n else if (format === UTCToLocalTimeFormat.SHORT_DATE) {\r\n const date = new Date(utcDate).toLocaleDateString(browserLanuges);\r\n return `${date}`;\r\n }\r\n else if (format === UTCToLocalTimeFormat.SHORT_TIME) {\r\n const time = new Date(utcDate).toLocaleTimeString(browserLanuges);\r\n return `${time}`;\r\n } else {\r\n const date = new Date(utcDate).toLocaleDateString(browserLanuges);\r\n const time = new Date(utcDate).toLocaleTimeString(browserLanuges);\r\n return `${date} ${time}`;\r\n }\r\n\r\n }\r\n}\r\n","import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { PurchaseOrder } from '@core/domain-classes/purchase-order/purchase-order';\r\nimport { PurchaseOrderItem } from '@core/domain-classes/purchase-order/purchase-order-item';\r\nimport { SecurityService } from '@core/security/security.service';\r\n\r\n@Component({\r\n selector: 'app-purchase-order-invoice',\r\n templateUrl: './purchase-order-invoice.component.html',\r\n styleUrls: ['./purchase-order-invoice.component.scss']\r\n})\r\nexport class PurchaseOrderInvoiceComponent implements OnInit, OnChanges {\r\n @Input() purchaseOrder: PurchaseOrder;\r\n purchaseOrderForInvoice: PurchaseOrder;\r\n companyProfile: CompanyProfile;\r\n purchaseOrderReturnsItems: PurchaseOrderItem[];\r\n purchaseOrderItems: PurchaseOrderItem[];\r\n\r\n constructor(private securityService: SecurityService) { }\r\n\r\n ngOnInit(): void {\r\n this.subScribeCompanyProfile();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['purchaseOrder']) {\r\n this.purchaseOrder.totalQuantity = this.purchaseOrder.purchaseOrderItems.map(item => item.quantity).reduce((prev, next) => prev + next);\r\n this.purchaseOrderItems = this.purchaseOrder.purchaseOrderItems.filter(c => c.status == 0);\r\n this.purchaseOrderReturnsItems = this.purchaseOrder.purchaseOrderItems.filter(c => c.status == 1);\r\n this.purchaseOrderForInvoice = this.purchaseOrder;\r\n this.purchaseOrder = null;\r\n }\r\n setTimeout(() => {\r\n this.printInvoice();\r\n }, 1000);\r\n }\r\n\r\n subScribeCompanyProfile() {\r\n this.securityService.companyProfile.subscribe(data => {\r\n this.companyProfile = data;\r\n });\r\n }\r\n\r\n printInvoice() {\r\n let name = this.purchaseOrderForInvoice.orderNumber;\r\n let printContents, popupWin;\r\n printContents = document.getElementById('purchaseOrderInvoice').innerHTML;\r\n popupWin = window.open('', '_blank', 'top=0,left=0,height=100%,width=auto');\r\n popupWin.document.open();\r\n popupWin.document.write(`\r\n \r\n \r\n ${name}\r\n \r\n \r\n \r\n ${printContents}\r\n \r\n `\r\n );\r\n popupWin.document.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'PURCHASE_ORDER_INVOICE' | translate}}\r\n

\r\n {{'PURCHASE_ORDERS' | translate}}: {{purchaseOrderForInvoice?.orderNumber}}\r\n \r\n
\r\n
\r\n {{'ORDER_DATE' | translate}} :\r\n {{purchaseOrderForInvoice?.poCreatedDate | utcToLocalTime:'shortDate'}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'TO' | translate}},

\r\n {{purchaseOrderForInvoice?.supplier?.supplierName}}
\r\n
0\"\r\n style=\"width:50%;\">\r\n {{purchaseOrderForInvoice.supplier.supplierAddresses[0]?.address}} \r\n
\r\n
\r\n
\r\n {{'PHONE' | translate}}:\r\n {{purchaseOrderForInvoice.supplier.mobileNo}}
\r\n
\r\n
0\"\r\n style=\"width:50%;\">\r\n {{'EMAIL' | translate}}:\r\n {{purchaseOrderForInvoice.supplier.supplierEmails[0]?.email}} \r\n
\r\n
\r\n
\r\n
\r\n

{{'FROM' | translate}},

\r\n
\r\n
\r\n {{companyProfile?.title}}
\r\n
\r\n
\r\n {{'ADDRESS' | translate}}:
\r\n {{companyProfile?.address}}
\r\n
\r\n
\r\n
\r\n {{'PHONE' | translate}}:\r\n {{companyProfile?.phone}}
\r\n
\r\n
\r\n {{'EMAIL' | translate}}:\r\n {{companyProfile?.email}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'PURCHASE_ORDER_ITEMS' | translate}}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
No.\r\n \r\n {{'DESCRIPTION' | translate}}\r\n {{'UNIT_PER_PRICE' | translate}} \r\n {{'QUANTITY' | translate}} \r\n {{'DISCOUNT' | translate}}\r\n {{'TAX' | translate}}\r\n {{'TOTAL_AMOUNT' | translate}}
\r\n {{i+1}}\r\n {{purchaseItem.chemicalName}}\r\n {{purchaseItem.unitPrice | customCurrency}}\r\n {{purchaseItem.quantity}}
({{purchaseItem?.chemical?.unit?.name}})
\r\n {{purchaseItem.discount | customCurrency}}\r\n {{purchaseItem.taxValue | customCurrency}}
\r\n \r\n {{tax.tax?.name}}({{tax.tax?.percentage}}%) , \r\n \r\n
\r\n {{(purchaseItem?.quantity * purchaseItem?.unitPrice) - purchaseItem.discount +\r\n purchaseItem.taxValue | customCurrency}}\r\n
{{'RETURNED_ITEMS' | translate}}
\r\n {{i+1}}\r\n {{purchaseItem.chemicalName}}\r\n {{purchaseItem.unitPrice | customCurrency}}\r\n {{purchaseItem.quantity}}
({{purchaseItem?.chemical?.unit?.name}})
\r\n {{purchaseItem.discount | customCurrency}}\r\n {{purchaseItem.taxValue | customCurrency}}
\r\n \r\n {{tax.tax?.name}}({{tax.tax?.percentage}}%) , \r\n \r\n
\r\n {{(purchaseItem?.quantity * purchaseItem?.unitPrice) - purchaseItem.discount +\r\n purchaseItem.taxValue | customCurrency }}\r\n
\r\n {{'TOTAL' | translate}}\r\n \r\n {{purchaseOrderForInvoice.totalQuantity}}\r\n \r\n {{purchaseOrderForInvoice.totalDiscount | customCurrency}}\r\n \r\n {{purchaseOrderForInvoice.totalTax | customCurrency}}\r\n \r\n {{purchaseOrderForInvoice.totalAmount | customCurrency}}
\r\n {{'TOTAL_PAID_AMOUNT' | translate}}\r\n {{purchaseOrderForInvoice.totalPaidAmount | customCurrency}}
\r\n {{'BALANCE' | translate}}\r\n {{purchaseOrderForInvoice.totalAmount-purchaseOrderForInvoice.totalPaidAmount |\r\n customCurrency}}\r\n
\r\n
\r\n
{{'TERM_AND_CONDITION' | translate}}::
\r\n {{purchaseOrderForInvoice.termAndCondition}}\r\n
\r\n \r\n
\r\n
{{'NOTES' | translate}}::
\r\n {{purchaseOrderForInvoice.note}}\r\n
\r\n \r\n
\r\n
\r\n {{'PAYMENT_STATUS' | translate}}:{{purchaseOrderForInvoice.paymentStatus | paymentStatus}}\r\n
\r\n
\r\n ___________________________ {{'AUTHORIZED_SIGNATURE' |\r\n translate}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { CompanyProfile } from '@core/domain-classes/company-profile';\r\nimport { SalesOrder } from '@core/domain-classes/sales-order';\r\nimport { SalesOrderItem } from '@core/domain-classes/sales-order-item';\r\nimport { SecurityService } from '@core/security/security.service';\r\n\r\n@Component({\r\n selector: 'app-sales-order-invoice',\r\n templateUrl: './sales-order-invoice.component.html',\r\n styleUrls: ['./sales-order-invoice.component.scss']\r\n})\r\nexport class SalesOrderInvoiceComponent implements OnInit, OnChanges {\r\n\r\n @Input() salesOrder: SalesOrder;\r\n salesOrderForInvoice: SalesOrder;\r\n companyProfile: CompanyProfile;\r\n salesOrderItems: SalesOrderItem[];\r\n salesOrderReturnsItems:SalesOrderItem[];\r\n\r\n constructor(private securityService: SecurityService) { }\r\n\r\n ngOnInit(): void {\r\n this.subScribeCompanyProfile();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['salesOrder']) {\r\n this.salesOrder.totalQuantity = this.salesOrder.salesOrderItems.map(item => item.quantity).reduce((prev, next) => prev + next);\r\n this.salesOrderItems = this.salesOrder.salesOrderItems.filter(c => c.status == 0);\r\n this.salesOrderReturnsItems = this.salesOrder.salesOrderItems.filter(c => c.status == 1);\r\n this.salesOrderForInvoice = this.salesOrder;\r\n this.salesOrder = null;\r\n }\r\n setTimeout(() => {\r\n this.printInvoice();\r\n }, 1000);\r\n }\r\n\r\n subScribeCompanyProfile() {\r\n this.securityService.companyProfile.subscribe(data => {\r\n this.companyProfile = data;\r\n });\r\n }\r\n\r\n printInvoice() {\r\n let name = this.salesOrderForInvoice.orderNumber;\r\n let printContents, popupWin;\r\n printContents = document.getElementById('salesOrderForInvoice').innerHTML;\r\n popupWin = window.open('', '_blank', 'top=0,left=0,height=100%,width=auto');\r\n popupWin.document.open();\r\n popupWin.document.write(`\r\n \r\n \r\n ${name}\r\n \r\n \r\n \r\n ${printContents}\r\n \r\n `\r\n );\r\n popupWin.document.close();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'SALES_ORDER_INVOICE' | translate}}

\r\n {{'SALES_ORDER' | translate}}: {{salesOrderForInvoice?.orderNumber}} \r\n
\r\n
\r\n {{'ORDER_DATE' | translate}} :\r\n {{salesOrderForInvoice?.soCreatedDate | utcToLocalTime:'shortDate'}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{'TO' | translate}},

\r\n {{salesOrderForInvoice?.customer?.customerName}}
\r\n
\r\n {{salesOrderForInvoice.customer.address}} \r\n
\r\n
\r\n
\r\n {{'PHONE' | translate}}:\r\n {{salesOrderForInvoice.customer.mobileNo}}
\r\n
\r\n
\r\n {{'EMAIL' | translate}}:\r\n {{salesOrderForInvoice.customer?.email}}\r\n
\r\n
\r\n
\r\n
\r\n

{{'FROM' | translate}},

\r\n\r\n
\r\n
\r\n {{companyProfile?.title}}
\r\n
\r\n
\r\n {{companyProfile?.address}}
\r\n
\r\n
\r\n
\r\n {{'PHONE' | translate}}:\r\n {{companyProfile?.phone}}
\r\n
\r\n
\r\n {{'EMAIL' | translate}}:\r\n {{companyProfile?.email}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

{{'SALES_ORDER_ITEMS' | translate}}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
No.\r\n \r\n {{'DESCRIPTION' | translate}}\r\n {{'UNIT_PER_PRICE' | translate}}\r\n {{'QUANTITY' | translate}}\r\n {{'DISCOUNT' | translate}}\r\n {{'TAX' | translate}}\r\n {{'TOTAL_AMOUNT' | translate}}
\r\n {{i+1}}\r\n {{salesItem.chemicalName}}\r\n {{salesItem.unitPrice | customCurrency }}\r\n {{salesItem.quantity}}
({{salesItem.unitName}})
\r\n {{salesItem.discount | customCurrency}}\r\n {{salesItem.taxValue | customCurrency}}
\r\n \r\n {{tax.taxName}}({{tax.taxPercentage}}%) , \r\n \r\n
\r\n {{(salesItem?.quantity * salesItem?.unitPrice) - salesItem.discount +\r\n salesItem.taxValue | customCurrency}}\r\n
{{'RETURNED_ITEMS' | translate}}
\r\n {{i+1}}\r\n {{salesItem.productName}}\r\n {{salesItem.unitPrice | customCurrency}}\r\n {{salesItem.quantity}}
({{salesItem.unitName}})
\r\n {{salesItem.discount | customCurrency}}\r\n {{salesItem.taxValue | customCurrency}}
\r\n \r\n {{tax.taxName}}({{tax.taxPercentage}}%) , \r\n \r\n
\r\n {{(salesItem?.quantity * salesItem?.unitPrice) - salesItem.discount +\r\n salesItem.taxValue | customCurrency }}\r\n
\r\n {{'TOTAL' | translate}}\r\n \r\n {{salesOrderForInvoice.totalQuantity}}\r\n \r\n {{salesOrderForInvoice.totalDiscount | customCurrency}}\r\n \r\n {{salesOrderForInvoice.totalTax | customCurrency}}\r\n \r\n {{salesOrderForInvoice.totalAmount | customCurrency}}
\r\n {{'TOTAL_PAID_AMOUNT' | translate}}\r\n {{salesOrderForInvoice.totalPaidAmount | customCurrency}}
\r\n {{'BALANCE' | translate}}\r\n {{salesOrderForInvoice.totalAmount-salesOrderForInvoice.totalPaidAmount |\r\n customCurrency }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ___________________________ {{'AUTHORIZED_SIGNATURE' |\r\n translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HasClaimDirective } from './has-claim.directive';\r\nimport { PipesModule } from './pipes/pipes.module';\r\nimport { DragDropDirective } from './directives/drag-drop.directive';\r\nimport { DocumentViewComponent } from './document-view/document-view.component';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\nimport { NgxDocViewerModule } from 'ngx-doc-viewer';\r\nimport { NgxExtendedPdfViewerModule } from 'ngx-extended-pdf-viewer';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AddReminderSchedulerComponent } from './add-reminder-scheduler/add-reminder-scheduler.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { OwlDateTimeModule, OwlNativeDateTimeModule } from 'ng-pick-datetime-ex';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { QuantitiesUnitPricePipe } from './pipes/quantities-unitprice.pipe';\r\nimport { QuantitiesUnitPriceTaxPipe } from './pipes/quantities-unitprice-tax.pipe';\r\nimport { PurchaseOrderInvoiceComponent } from './purchase-order-invoice/purchase-order-invoice.component';\r\nimport { SalesOrderInvoiceComponent } from './sales-order-invoice/sales-order-invoice.component';\r\n\r\n@NgModule({\r\n exports: [\r\n HasClaimDirective,\r\n PipesModule,\r\n TranslateModule,\r\n DragDropDirective,\r\n DocumentViewComponent,\r\n OverlayModule,\r\n QuantitiesUnitPricePipe,\r\n QuantitiesUnitPriceTaxPipe,\r\n PurchaseOrderInvoiceComponent,\r\n SalesOrderInvoiceComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n PipesModule,\r\n OverlayModule,\r\n NgxDocViewerModule,\r\n NgxExtendedPdfViewerModule,\r\n MatIconModule,\r\n TranslateModule,\r\n MatDialogModule,\r\n ReactiveFormsModule,\r\n OwlDateTimeModule,\r\n OwlNativeDateTimeModule,\r\n MatSelectModule,\r\n MatCheckboxModule,\r\n MatTableModule,\r\n\r\n ],\r\n declarations: [\r\n HasClaimDirective,\r\n DragDropDirective,\r\n DocumentViewComponent,\r\n AddReminderSchedulerComponent,\r\n QuantitiesUnitPricePipe,\r\n QuantitiesUnitPriceTaxPipe,\r\n PurchaseOrderInvoiceComponent,\r\n SalesOrderInvoiceComponent],\r\n})\r\nexport class SharedModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { environment } from '@environments/environment';\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\nimport { entityConfig } from './entity-metadata';\r\nimport { EntityDataModule } from '@ngrx/data';\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n StoreModule.forRoot({}),\r\n EffectsModule.forRoot([]),\r\n environment.production ? [] : StoreDevtoolsModule.instrument(),\r\n EntityDataModule.forRoot(entityConfig),\r\n ]\r\n})\r\nexport class AppStoreModule { }\r\n","import { Unit } from '@core/domain-classes/unit';\r\nimport { EntityMetadataMap } from '@ngrx/data';\r\n\r\nconst entityMetadata: EntityMetadataMap = {\r\n DocumentCategory: {\r\n },\r\n Page: {\r\n },\r\n Action: {\r\n },\r\n PageAction: {\r\n },\r\n DeliveryMethod: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n InquiryStatus: {\r\n },\r\n InquirySource: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n PaymentTerm: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n PackagingType: {\r\n },\r\n ExpenseCategory: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n Tax: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n Unit: {\r\n entityDispatcherOptions: { optimisticDelete: false, optimisticUpsert: false }\r\n },\r\n};\r\nconst pluralNames = {\r\n DocumentCategory: 'DocumentCategories',\r\n Page: \"Pages\",\r\n Action: \"Actions\",\r\n PageAction: \"PageActions\",\r\n DeliveryMethod: 'DeliveryMethods',\r\n InquiryStatus: \"InquiryStatuses\",\r\n PackagingType: \"PackagingTypes\",\r\n InquirySource: \"InquirySources\",\r\n PaymentTerm: \"PaymentTerms\",\r\n ExpenseCategory: \"ExpenseCategories\",\r\n Tax: \"Taxes\",\r\n Unit:\"Units\"\r\n};\r\n\r\nexport const entityConfig = {\r\n entityMetadata,\r\n pluralNames\r\n};\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { TranslationService } from '@core/services/translation.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BaseComponent } from 'src/app/base.component';\r\nimport { UserService } from '../user.service';\r\n\r\n@Component({\r\n selector: 'app-change-password',\r\n templateUrl: './change-password.component.html',\r\n styleUrls: ['./change-password.component.scss']\r\n})\r\n\r\nexport class ChangePasswordComponent extends BaseComponent implements OnInit {\r\n changePasswordForm: FormGroup;\r\n constructor(\r\n private userService: UserService,\r\n private fb: FormBuilder,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: User,\r\n private toastrService: ToastrService,\r\n private securityService: SecurityService,\r\n private translationService: TranslationService) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.createChangePasswordForm();\r\n this.changePasswordForm.get('email').setValue(this.data.userName);\r\n }\r\n\r\n createChangePasswordForm() {\r\n this.changePasswordForm = this.fb.group({\r\n email: [],\r\n oldPasswordPassword: ['', [Validators.required]],\r\n password: ['', [Validators.required, Validators.minLength(6)]],\r\n confirmPassword: ['', [Validators.required]],\r\n }, {\r\n validator: this.checkPasswords\r\n });\r\n }\r\n\r\n checkPasswords(group: FormGroup) {\r\n let pass = group.get('password').value;\r\n let confirmPass = group.get('confirmPassword').value;\r\n return pass === confirmPass ? null : { notSame: true }\r\n }\r\n\r\n changePassword() {\r\n this.toastrService.error('This Feature is Disabled in Demo Version.');\r\n return;\r\n if (this.changePasswordForm.valid) {\r\n this.sub$.sink = this.userService.changePassword(this.createBuildObject()).subscribe(d => {\r\n this.toastrService.success(this.translationService.getValue('SUCCESSFULLY_CHANGED_PASSWORD'))\r\n this.securityService.logout();\r\n this.dialogRef.close();\r\n })\r\n }\r\n }\r\n\r\n createBuildObject() {\r\n return {\r\n email: '',\r\n oldPassword: this.changePasswordForm.get('oldPasswordPassword').value,\r\n newPassword: this.changePasswordForm.get('password').value,\r\n userName: this.changePasswordForm.get('email').value,\r\n }\r\n }\r\n\r\n onNoClick(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n

{{'CHANGE_PASSWORD' | translate}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{'CURRENT_PASSWORD_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'PASSWORD_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n {{'YOU_HAVE_TO_ENTER_AT_LEAST_6_DIGIT' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {{'CONFIRM_PASSWORD_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n {{'PASSWORDS_DO_NOT_MATCH' | translate}}\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { SecurityService } from '@core/security/security.service';\r\nimport { TranslationService } from '@core/services/translation.service';\r\nimport { environment } from '@environments/environment';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { BaseComponent } from 'src/app/base.component';\r\nimport { ChangePasswordComponent } from '../change-password/change-password.component';\r\nimport { UserService } from '../user.service';\r\n\r\n@Component({\r\n selector: 'app-my-profile',\r\n templateUrl: './my-profile.component.html',\r\n styleUrls: ['./my-profile.component.scss']\r\n})\r\nexport class MyProfileComponent extends BaseComponent implements OnInit {\r\n userForm: FormGroup;\r\n user: User;\r\n fileSelected: File;\r\n imgURL: any;\r\n constructor(\r\n private fb: FormBuilder,\r\n private userService: UserService,\r\n private toastrService: ToastrService,\r\n private dialog: MatDialog,\r\n private translationService: TranslationService,\r\n private securityService: SecurityService) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.createUserForm();\r\n this.sub$.sink = this.userService.getUserProfile().subscribe((user: User) => {\r\n this.user = user;\r\n if (this.user) {\r\n if (this.user.profilePhoto) {\r\n this.imgURL = environment.apiUrl + this.user.profilePhoto;\r\n }\r\n this.userForm.patchValue(this.user);\r\n }\r\n });\r\n\r\n }\r\n\r\n fileEvent($event) {\r\n this.fileSelected = $event.target.files[0];\r\n if (!this.fileSelected) {\r\n return;\r\n }\r\n const mimeType = this.fileSelected.type;\r\n if (mimeType.match(/image\\/*/) == null) {\r\n return;\r\n }\r\n const reader = new FileReader();\r\n reader.readAsDataURL(this.fileSelected);\r\n // tslint:disable-next-line: variable-name\r\n reader.onload = (_event) => {\r\n const formData = new FormData();\r\n formData.append(this.fileSelected.name, this.fileSelected);\r\n this.userService.updateProfilePhoto(formData).subscribe((user: User) => {\r\n this.toastrService.success(this.translationService.getValue('PROFILE_PHOTO_UPDATED_SUCCESSFULLY'));\r\n this.imgURL = reader.result;\r\n this.securityService.updateUserProfile(user);\r\n $event.target.value = '';\r\n });\r\n }\r\n }\r\n\r\n removeImage() {\r\n const formData = new FormData();\r\n this.userService.updateProfilePhoto(formData).subscribe((user: User) => {\r\n this.toastrService.success(this.translationService.getValue('PROFILE_PHOTO_REMOVED_SUCCESSFULLY'));\r\n this.imgURL = \"\";\r\n this.securityService.updateUserProfile(user);\r\n });\r\n }\r\n\r\n createUserForm() {\r\n this.userForm = this.fb.group({\r\n id: [''],\r\n firstName: ['', [Validators.required]],\r\n lastName: ['', [Validators.required]],\r\n email: ['', [Validators.required, Validators.email]],\r\n phoneNumber: ['', [Validators.required]],\r\n address: ['']\r\n });\r\n }\r\n\r\n updateProfile() {\r\n if (this.userForm.valid) {\r\n const user = this.createBuildObject();\r\n this.sub$.sink = this.userService.updateUserProfile(user)\r\n .subscribe((user: User) => {\r\n this.toastrService.success(this.translationService.getValue('PROFILE_UPDATED_SUCCESSFULLY'));\r\n this.securityService.updateUserProfile(user);\r\n });\r\n } else {\r\n this.toastrService.error(this.translationService.getValue('PLEASE_ENTER_PROPER_DATA'))\r\n }\r\n }\r\n\r\n createBuildObject(): User {\r\n const user: User = {\r\n id: this.userForm.get('id').value,\r\n firstName: this.userForm.get('firstName').value,\r\n lastName: this.userForm.get('lastName').value,\r\n email: this.userForm.get('email').value,\r\n phoneNumber: this.userForm.get('phoneNumber').value,\r\n userName: this.userForm.get('email').value,\r\n address: this.userForm.get('address').value\r\n }\r\n return user;\r\n }\r\n\r\n changePassword(): void {\r\n this.dialog.open(ChangePasswordComponent, {\r\n width: '350px',\r\n data: Object.assign({}, this.user)\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

{{'PROFILE' | translate}}

\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'FIRST_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'LAST_NAME_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'MOBILE_IS_REQUIRED' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{'PROFILE_PHOTO' | translate}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams, HttpResponse } from '@angular/common/http';\r\nimport { CommonHttpErrorService } from '@core/error-handler/common-http-error.service';\r\nimport { User } from '@core/domain-classes/user';\r\nimport { Observable } from 'rxjs';\r\nimport { CommonError } from '@core/error-handler/common-error';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { UserClaim } from '@core/domain-classes/user-claim';\r\nimport { UserResource } from '@core/domain-classes/user-resource';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class UserService {\r\n\r\n constructor(\r\n private httpClient: HttpClient,\r\n private commonHttpErrorService: CommonHttpErrorService) { }\r\n\r\n updateUser(user: User): Observable {\r\n const url = `user/${user.id}`;\r\n return this.httpClient.put(url, user)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n addUser(user: User): Observable {\r\n const url = `user`;\r\n return this.httpClient.post(url, user)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n deleteUser(id: string): Observable {\r\n const url = `user/${id}`;\r\n return this.httpClient.delete(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getUser(id: string): Observable {\r\n const url = `user/${id}`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n updateUserClaim(userClaims: UserClaim[], userId: string): Observable {\r\n const url = `UserClaim/${userId}`;\r\n return this.httpClient.put(url, { userClaims })\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n resetPassword(user: User): Observable {\r\n const url = `user/resetpassword`;\r\n return this.httpClient.post(url, user)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n changePassword(user: User): Observable {\r\n const url = `user/changepassword`;\r\n return this.httpClient.post(url, user)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n updateUserProfile(user: User): Observable {\r\n const url = `user/profile`;\r\n return this.httpClient.put(url, user)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getUserProfile(): Observable {\r\n const url = `user/profile`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getUsers(resource: UserResource): Observable | CommonError> {\r\n const url = `user/GetUsers`;\r\n const customParams = new HttpParams()\r\n .set('Fields', resource.fields)\r\n .set('OrderBy', resource.orderBy)\r\n .set('PageSize', resource.pageSize.toString())\r\n .set('Skip', resource.skip.toString())\r\n .set('SearchQuery', resource.searchQuery)\r\n .set('name', resource.name.toString())\r\n\r\n return this.httpClient.get(url, {\r\n params: customParams,\r\n observe: 'response'\r\n }).pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n getRecentlyRegisteredUsers(): Observable {\r\n const url = `user/GetRecentlyRegisteredUsers`;\r\n return this.httpClient.get(url)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n\r\n updateProfilePhoto(form: FormData): Observable {\r\n const url = `user/UpdateUserProfilePhoto`;\r\n return this.httpClient.post(url, form)\r\n .pipe(catchError(this.commonHttpErrorService.handleError));\r\n }\r\n}\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 // apiUrl: 'http://localhost/ChemWebsite.API/',\r\n apiUrl: '/',\r\n allowFileExtension:['pdf','doc','docx','xls','xlsx'],\r\n allowExtesions: ['pdf', 'doc', 'docx'],\r\n maximumFileSize: 104857600\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:///"}