{"version":3,"file":"main.js","mappings":"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CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;;;;;;;;;;ACXpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./$_lazy_route_resources|lazy|groupOptions: {}|namespace object","./src/app/api/interceptor/rest/jwt.interceptor.ts","./src/app/api/model/response.ts","./src/app/api/rest/auth/auth.rest.service.ts","./src/app/api/rest/gift-card-activation/gift-card-activation-rest.service.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/core/config/application.config.ts","./src/app/core/guards/auth.guard.ts","./src/app/core/guards/card-activation-history.guard.ts","./src/app/core/guards/clients.guard.ts","./src/app/core/guards/documents-auth.guard.ts","./src/app/core/guards/gift-card-activation-auth.guard.ts","./src/app/core/helpers/extensions.ts","./src/app/core/layout/app/app-layout.component.ts","./src/app/core/layout/app/app-layout.component.html","./src/app/core/layout/auth/auth-layout.component.ts","./src/app/core/layout/auth/auth-layout.component.html","./src/app/core/models/base-dropdown-item.ts","./src/app/core/models/nav-item-type.enum.ts","./src/app/features/auth/auth-routing.module.ts","./src/app/features/auth/auth.module.ts","./src/app/features/auth/component/login-form/login-form.component.ts","./src/app/features/auth/component/login-form/login-form.component.html","./src/app/features/auth/model/auth-token.ts","./src/app/features/auth/model/current-user.ts","./src/app/features/card-activation-history/card-activation-history-rounting.module.ts","./src/app/features/card-activation-history/card-activation-history.module.ts","./src/app/features/card-activation-history/component/card-activation-history-table/card-activation-history-table.component.ts","./src/app/features/card-activation-history/component/card-activation-history-table/card-activation-history-table.component.html","./src/app/features/card-activation-history/model/activation-history-card-model.ts","./src/app/features/card-activation-history/model/activation-history-table-model.ts","./src/app/features/card-activation-history/model/card-activation-history-table-filter-model.ts","./src/app/features/card-activation-history/model/get-activation-history-model.ts","./src/app/features/card-activation-history/model/get-activation-history-response.ts","./src/app/features/clients/client-model.ts","./src/app/features/clients/clients-rounting.module.ts","./src/app/features/clients/clients.module.ts","./src/app/features/clients/component/client-create/client-create.component.ts","./src/app/features/clients/component/client-create/client-create.component.html","./src/app/features/clients/component/client-search/client-search.component.ts","./src/app/features/clients/component/client-search/client-search.component.html","./src/app/features/clients/component/client-select/client-select.component.ts","./src/app/features/clients/component/client-select/client-select.component.html","./src/app/features/clients/component/clients/clients.component.ts","./src/app/features/clients/component/clients/clients.component.html","./src/app/features/clients/create-client.response.ts","./src/app/features/clients/get-client-response.ts","./src/app/features/documents/component/document-elem/document-elem.component.ts","./src/app/features/documents/component/document-list/document-list.component.ts","./src/app/features/documents/component/document-list/document-list.component.html","./src/app/features/documents/documents-routing.module.ts","./src/app/features/documents/documents.module.ts","./src/app/features/documents/helpers/file-extension-helper.ts","./src/app/features/documents/model/document-elem.ts","./src/app/features/documents/model/document-list-filter-model.ts","./src/app/features/documents/model/document-model.ts","./src/app/features/documents/model/get-documents-response.ts","./src/app/features/documents/model/get-file-response.ts","./src/app/features/gift-card-activation/component/gift-card-activation-range/gift-card-activation-range.component.ts","./src/app/features/gift-card-activation/component/gift-card-activation-range/gift-card-activation-range.component.html","./src/app/features/gift-card-activation/component/gift-card-activation-single/gift-card-activation-elem/gift-card-activation-elem.component.ts","./src/app/features/gift-card-activation/component/gift-card-activation-single/gift-card-activation-elem/gift-card-activation-elem.component.html","./src/app/features/gift-card-activation/component/gift-card-activation-single/gift-card-activation-single.component.ts","./src/app/features/gift-card-activation/component/gift-card-activation-single/gift-card-activation-single.component.html","./src/app/features/gift-card-activation/component/gift-card-activation-table/gift-card-activation-table.component.ts","./src/app/features/gift-card-activation/component/gift-card-activation-table/gift-card-activation-table.component.html","./src/app/features/gift-card-activation/component/gift-card-activation.component.ts","./src/app/features/gift-card-activation/component/gift-card-activation.component.html","./src/app/features/gift-card-activation/gift-card-activation-routing-module.module.ts","./src/app/features/gift-card-activation/gift-card-activation.module.ts","./src/app/features/gift-card-activation/gift-card-activation.service.ts","./src/app/features/gift-card-activation/model/card-list-activated-response.ts","./src/app/features/gift-card-activation/model/gift-card-activated-model.ts","./src/app/features/gift-card-activation/model/gift-card-activation-table-elem-model.ts","./src/app/features/gift-card-activation/model/gift-card-activation.model.ts","./src/app/features/gift-card-activation/model/gift-card-model.ts","./src/app/features/gift-card-activation/model/gift-card-range-response.ts","./src/app/features/gift-card-activation/model/gift-card-response.ts","./src/app/shared/component/modal/modal.component.ts","./src/app/shared/component/modal/modal.component.html","./src/app/shared/enums/color.enum.ts","./src/app/shared/enums/cookie-key.enum.ts","./src/app/shared/enums/size.enum.ts","./src/app/shared/enums/table-filter-condition.enum.ts","./src/app/shared/form/form-group.component.ts","./src/app/shared/form/form-group.component.html","./src/app/shared/icon/icon-root-name.enum.ts","./src/app/shared/icon/icon.component.ts","./src/app/shared/icon/icon.module.ts","./src/app/shared/icon/index.ts","./src/app/shared/input/input.directive.ts","./src/app/shared/loader/index.ts","./src/app/shared/loader/loader.component.ts","./src/app/shared/loader/loader.component.html","./src/app/shared/loader/loader.module.ts","./src/app/shared/notification/index.ts","./src/app/shared/notification/notification.module.ts","./src/app/shared/notification/notification.service.ts","./src/app/shared/primeng/primeng.module.ts","./src/app/shared/shared.module.ts","./src/app/shared/sidebar/component/sidebar-nav/component/divider/divider.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/dropdown/dropdown.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/footer/footer.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/items/items.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/label/label.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/label/label.component.html","./src/app/shared/sidebar/component/sidebar-nav/component/link/link.component.ts","./src/app/shared/sidebar/component/sidebar-nav/component/link/link.component.html","./src/app/shared/sidebar/component/sidebar-nav/component/title/title.component.ts","./src/app/shared/sidebar/component/sidebar-nav/directive/sidebar-nav.directive.ts","./src/app/shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper.ts","./src/app/shared/sidebar/component/sidebar-nav/sidebar-nav.component.ts","./src/app/shared/sidebar/component/sidebar-nav/sidebar-nav.component.html","./src/app/shared/sidebar/component/sidebar/sidebar.component.ts","./src/app/shared/sidebar/index.ts","./src/app/shared/sidebar/sidebar.module.ts","./src/app/shared/transloco/transloco-root.module.ts","./src/environments/environment.prod.ts","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale|sync|/^/.*$"],"sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(() => {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = () => ([]);\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 8255;\nmodule.exports = webpackEmptyAsyncContext;","import { Injectable } from '@angular/core';\r\nimport {\r\n HttpRequest,\r\n HttpHandler,\r\n HttpEvent,\r\n HttpInterceptor,\r\n} from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n constructor(private authRestService: AuthRestService) {}\r\n\r\n intercept(\r\n request: HttpRequest,\r\n next: HttpHandler\r\n ): Observable> {\r\n // add auth header with jwt if user is logged in and request is to the api url\r\n const isLoggedIn = this.authRestService.token;\r\n if (isLoggedIn) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${this.authRestService.token}`,\r\n },\r\n });\r\n }\r\n\r\n return next.handle(request);\r\n }\r\n}\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class SimpleResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public executionMessage: string = ''\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class SimpleResponseAdapter implements Adapter {\r\n adapt(item: any): SimpleResponse {\r\n return item ? new SimpleResponse(\r\n item.ExecutionStatus,\r\n item.ExecutionMessage\r\n ) : null;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { CurrentUser } from '@features/auth/model/current-user';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { CookieKeyEnum } from '@shared/enums/cookie-key.enum';\r\nimport { GiftCardActivationRestService } from '@api/rest/gift-card-activation/gift-card-activation-rest.service';\r\nimport { AuthToken } from '@features/auth/model/auth-token';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthRestService {\r\n private userSubject: BehaviorSubject;\r\n public user: Observable;\r\n\r\n constructor(\r\n private router: Router,\r\n private cookieService: CookieService,\r\n private giftCardActivationRestService: GiftCardActivationRestService\r\n ) {\r\n this.initialize();\r\n }\r\n\r\n private initialize(): void {\r\n const tokenCookieValue: string = this.cookieService.get(\r\n CookieKeyEnum.token\r\n );\r\n const cookieParam = tokenCookieValue == '' ? null : tokenCookieValue;\r\n this.userSubject = new BehaviorSubject(\r\n this.getUserFromToken(cookieParam)\r\n );\r\n this.user = this.userSubject.asObservable();\r\n }\r\n\r\n public get userValue(): CurrentUser {\r\n return this.userSubject.value;\r\n }\r\n\r\n public get token(): string {\r\n const tokenCookieValue: string = this.cookieService.get(\r\n CookieKeyEnum.token\r\n );\r\n const cookieParam = tokenCookieValue == '' ? null : tokenCookieValue;\r\n\r\n if (!cookieParam) {\r\n return null;\r\n }\r\n\r\n return JSON.parse(cookieParam)?.access_token;\r\n }\r\n\r\n public login(login: string, password: string): Observable {\r\n return this.giftCardActivationRestService.auth(login, password).pipe(\r\n map((token: AuthToken) => {\r\n var date = new Date(parseInt(token.expires_in + '999'));\r\n if (token.access_token) {\r\n this.cookieService.set(CookieKeyEnum.token, JSON.stringify(token), {\r\n expires: date,\r\n });\r\n this.userSubject.next(this.getUserFromToken(token.access_token));\r\n }\r\n return token;\r\n })\r\n );\r\n }\r\n\r\n public logout() {\r\n // remove user from cookie storage and set current user to null\r\n this.cookieService.delete(CookieKeyEnum.token);\r\n this.userSubject.next(null);\r\n this.router.navigate(['/auth/login']);\r\n }\r\n\r\n getUserFromToken(token: string): CurrentUser {\r\n if (!token) {\r\n return null;\r\n }\r\n\r\n const user = JSON.parse(atob(token.split('.')[1]));\r\n\r\n return new CurrentUser(\r\n user.ClientID,\r\n user.Login,\r\n user.AccessToGiftCardActivation,\r\n user.AccessToCardActivationHistory,\r\n user.AccessToDocuments,\r\n user.AccessToClients\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport {\r\n GiftCardActivationTableElemModel,\r\n GiftCardActivationTableElemModelAdapter,\r\n} from 'src/app/features/gift-card-activation/model/gift-card-activation-table-elem-model';\r\nimport { map } from 'rxjs/operators';\r\nimport {\r\n CurrentUser,\r\n CurrentUserAdapter,\r\n} from '@features/auth/model/current-user';\r\nimport {\r\n GiftCardActivatedModel,\r\n GiftCardActivatedModelAdapter,\r\n} from '@features/gift-card-activation/model/gift-card-activated-model';\r\nimport {\r\n GiftCardRangeResponse,\r\n GiftCardRangeResponseAdapter,\r\n} from '@features/gift-card-activation/model/gift-card-range-response';\r\nimport { Config } from '@core/config/config.service';\r\nimport {\r\n GetDocumentsResponse,\r\n GetDocumentsResponseAdapter,\r\n} from '@features/documents/model/get-documents-response';\r\nimport { GetFileResponseAdapter } from '@features/documents/model/get-file-response';\r\nimport {\r\n GiftCardResponse,\r\n GiftCardResponseAdapter,\r\n} from '@features/gift-card-activation/model/gift-card-response';\r\nimport { GiftCardActivationModel } from '@features/gift-card-activation/model/gift-card-activation.model';\r\nimport {\r\n CardListActivatedResponse,\r\n CardListActivatedResponseAdapter,\r\n} from '@features/gift-card-activation/model/card-list-activated-response';\r\nimport {\r\n GetActivationHistoryResponse,\r\n GetActivationHistoryResponseAdapter,\r\n} from '@features/card-activation-history/model/get-activation-history-response';\r\nimport { SimpleResponse, SimpleResponseAdapter } from '@api/model/response';\r\nimport {\r\n GetClientResponse,\r\n GetClientResponseAdapter,\r\n} from '@features/clients/get-client-response';\r\nimport {\r\n ClientModel,\r\n ClientModelAdapter,\r\n} from '@features/clients/client-model';\r\nimport {\r\n CreateClientResponse,\r\n CreateClientResponseAdapter,\r\n} from '@features/clients/create-client.response';\r\nimport { AuthToken, AuthTokenAdapter } from '@features/auth/model/auth-token';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class GiftCardActivationRestService {\r\n config: Config;\r\n\r\n constructor(private httpClient: HttpClient) {\r\n this.fetchConfig();\r\n }\r\n\r\n fetchConfig(): void {\r\n let configTemp: Config;\r\n\r\n fetch('./assets/config.json')\r\n .then((res) => res.json())\r\n .then((config: Config) => {\r\n configTemp = config;\r\n });\r\n\r\n let localStorageConfig: Config;\r\n let s: any = localStorage.getItem('serviceConfig');\r\n\r\n if (s != undefined) {\r\n localStorageConfig = JSON.parse(s);\r\n }\r\n\r\n if (configTemp != undefined) {\r\n this.config = configTemp;\r\n localStorage.setItem('serviceConfig', JSON.stringify(configTemp));\r\n } else if (localStorageConfig != undefined) {\r\n this.config = localStorageConfig;\r\n localStorage.setItem('serviceConfig', JSON.stringify(localStorageConfig));\r\n }\r\n\r\n fetch('./assets/config.json')\r\n .then((res) => res.json())\r\n .then((config: Config) => {\r\n this.config = config;\r\n localStorage.setItem('serviceConfig', JSON.stringify(config));\r\n });\r\n }\r\n\r\n public getTransactions(\r\n userID: string\r\n ): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetTransactions.json', {\r\n params: { clientID: userID },\r\n })\r\n .pipe(\r\n map((data: any) => {\r\n if (data.data.length) {\r\n return data.data.map((item) =>\r\n new GiftCardActivationTableElemModelAdapter().adapt(item)\r\n );\r\n } else {\r\n return [\r\n new GiftCardActivationTableElemModelAdapter().adapt(data.data),\r\n ];\r\n }\r\n })\r\n );\r\n }\r\n\r\n public auth(login: string, password: string): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/json'\r\n );\r\n\r\n const body: Object = {};\r\n body['Login'] = login;\r\n body['Password'] = password;\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'Auth.json', JSON.stringify(body), {\r\n headers: headers,\r\n })\r\n .pipe(map((data: any) => new AuthTokenAdapter().adapt(data.data)));\r\n }\r\n\r\n public activateCard(\r\n cardNumber: string,\r\n cardOperationID: string,\r\n value: Number\r\n ): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/x-www-form-urlencoded'\r\n );\r\n\r\n let body = new HttpParams();\r\n body = body.set('CardNumber', cardNumber);\r\n body = body.set('CardOperationID', cardOperationID);\r\n body = body.set('Value', value.toString());\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'CardActivation.json', body, {\r\n headers: headers,\r\n })\r\n .pipe(\r\n map((data: any) => new GiftCardActivatedModelAdapter().adapt(data.data))\r\n );\r\n }\r\n\r\n public activateCardList(\r\n cardList: GiftCardActivationModel[],\r\n userID: string\r\n ): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/x-www-form-urlencoded'\r\n );\r\n\r\n let body = new HttpParams();\r\n body = body.set('CardList', JSON.stringify(cardList));\r\n body = body.set('ClientID', userID);\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'CardListActivation.json', body, {\r\n headers: headers,\r\n })\r\n .pipe(\r\n map((data: any) =>\r\n new CardListActivatedResponseAdapter().adapt(data.data)\r\n )\r\n );\r\n }\r\n\r\n public getCard(\r\n cardNumber: string,\r\n userID: string,\r\n batchID: string\r\n ): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetCard.json', {\r\n params: { cardNumber: cardNumber, clientID: userID, batchID: batchID },\r\n })\r\n .pipe(map((data: any) => new GiftCardResponseAdapter().adapt(data.data)));\r\n }\r\n\r\n public getCardRange(\r\n cardNumberFrom: string,\r\n cardNumberTo: string,\r\n userID: string\r\n ): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetCardRange.json', {\r\n params: {\r\n cardNumberFrom: cardNumberFrom,\r\n cardNumberTo: cardNumberTo,\r\n clientID: userID,\r\n },\r\n })\r\n .pipe(\r\n map((data: any) => new GiftCardRangeResponseAdapter().adapt(data.data))\r\n );\r\n }\r\n\r\n public getFtpFiles(userID: string): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetFtpFiles.json', {\r\n params: { userID: userID },\r\n })\r\n .pipe(\r\n map((data: any) => new GetDocumentsResponseAdapter().adapt(data?.Data))\r\n );\r\n }\r\n\r\n public getFile(userID: string, filename: string): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetFile.json', {\r\n params: { userID: userID, filename: filename },\r\n })\r\n .pipe(map((data: any) => new GetFileResponseAdapter().adapt(data)));\r\n }\r\n\r\n public getActivationHistory(\r\n userID: string\r\n ): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetActivationHistory.json', {\r\n params: { clientID: userID },\r\n })\r\n .pipe(\r\n map((data: any) =>\r\n new GetActivationHistoryResponseAdapter().adapt(data)\r\n )\r\n );\r\n }\r\n\r\n public createInvoice(\r\n clientId: string,\r\n cardActivationHistoryIDList: string[]\r\n ): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/x-www-form-urlencoded'\r\n );\r\n let body = new HttpParams();\r\n body = body.set(\r\n 'CardActivationHistoryIDList',\r\n JSON.stringify(cardActivationHistoryIDList)\r\n );\r\n body = body.set('ClientID', clientId);\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'CreateInvoice.json', body, {\r\n headers: headers,\r\n })\r\n .pipe(map((data: any) => new SimpleResponseAdapter().adapt(data.data)));\r\n }\r\n\r\n public getInvoice(invoiceID: string): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetInvoice.json', {\r\n params: { invoiceID: invoiceID },\r\n })\r\n .pipe(map((data: any) => new GetFileResponseAdapter().adapt(data)));\r\n }\r\n\r\n public getClient(name: string, taxId: string): Observable {\r\n return this.httpClient\r\n .get(this.config.apiUrl + 'GetClient.json', {\r\n params: { name: name, taxId: taxId },\r\n })\r\n .pipe(map((data: any) => new GetClientResponseAdapter().adapt(data)));\r\n }\r\n\r\n public addClient(\r\n name: string,\r\n taxId: string,\r\n firstName: string,\r\n lastName: string,\r\n phone: string,\r\n email: string,\r\n address: string,\r\n zipCode: string,\r\n city: string\r\n ): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/x-www-form-urlencoded'\r\n );\r\n let body = new HttpParams();\r\n body = body.set('Name', name);\r\n body = body.set('TaxID', taxId);\r\n body = body.set('FirstName', firstName);\r\n body = body.set('LastName', lastName);\r\n body = body.set('Phone', phone);\r\n body = body.set('Email', email);\r\n body = body.set('Address', address);\r\n body = body.set('ZipCode', zipCode);\r\n body = body.set('City', city);\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'CreateClient.json', body, {\r\n headers: headers,\r\n })\r\n .pipe(map((data: any) => new ClientModelAdapter().adapt(data.data)));\r\n }\r\n\r\n public createClient(client: ClientModel): Observable {\r\n const headers: HttpHeaders = new HttpHeaders().set(\r\n 'Content-Type',\r\n 'application/x-www-form-urlencoded'\r\n );\r\n let body = new HttpParams();\r\n body = body.set('Name', client.name);\r\n body = body.set('TaxID', client.taxId);\r\n body = body.set('FirstName', client.firstName);\r\n body = body.set('LastName', client.lastName);\r\n body = body.set('Phone', client.phone);\r\n body = body.set('Email', client.email);\r\n body = body.set('Address', client.address);\r\n body = body.set('ZipCode', client.zipCode);\r\n body = body.set('City', client.city);\r\n\r\n return this.httpClient\r\n .post(this.config.apiUrl + 'CreateClient.json', body, {\r\n headers: headers,\r\n })\r\n .pipe(\r\n map((data: any) => new CreateClientResponseAdapter().adapt(data?.data))\r\n );\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AppComponent } from './app.component';\r\nimport { AppLayoutComponent } from '@core/layout/app/app-layout.component';\r\nimport { AuthGuard } from '@core/guards/auth.guard';\r\nimport { GiftCardActivationModule } from '@features/gift-card-activation/gift-card-activation.module';\r\nimport { DocumentsModule } from '@features/documents/documents.module';\r\nimport { SettingsModule } from '@features/settings/settings.module';\r\nimport { CardActivationHistoryModule } from '@features/card-activation-history/card-activation-history.module';\r\nimport { ClientsModule } from '@features/clients/clients.module';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'app',\r\n component: AppComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: '',\r\n component: AppLayoutComponent,\r\n loadChildren: () =>\r\n import(\r\n '@features/gift-card-activation/gift-card-activation.module'\r\n ).then(\r\n (m: { GiftCardActivationModule: GiftCardActivationModule }) =>\r\n m.GiftCardActivationModule\r\n ),\r\n },\r\n {\r\n path: '',\r\n component: AppLayoutComponent,\r\n loadChildren: () =>\r\n import('@features/documents/documents.module').then(\r\n (m: { DocumentsModule: DocumentsModule }) => m.DocumentsModule\r\n ),\r\n },\r\n {\r\n path: '',\r\n component: AppLayoutComponent,\r\n loadChildren: () =>\r\n import(\r\n '@features/card-activation-history/card-activation-history.module'\r\n ).then(\r\n (m: { CardActivationHistoryModule: CardActivationHistoryModule }) =>\r\n m.CardActivationHistoryModule\r\n ),\r\n },\r\n {\r\n path: '',\r\n component: AppLayoutComponent,\r\n loadChildren: () =>\r\n import('@features/settings/settings.module').then(\r\n (m: { SettingsModule: SettingsModule }) => m.SettingsModule\r\n ),\r\n },\r\n {\r\n path: '',\r\n component: AppLayoutComponent,\r\n loadChildren: () =>\r\n import('@features/clients/clients.module').then(\r\n (m: { ClientsModule: ClientsModule }) => m.ClientsModule\r\n ),\r\n },\r\n ],\r\n },\r\n { path: '**', redirectTo: '/auth/login' },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule.forRoot(routes, {\r\n useHash: true,\r\n onSameUrlNavigation: 'reload',\r\n relativeLinkResolution: 'corrected',\r\n }),\r\n ],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { CurrentUser } from '@features/auth/model/current-user';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { ApplicationConfig } from '@core/config/application.config';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'b2b-cinema-portal';\r\n user: CurrentUser;\r\n\r\n constructor(\r\n private authRestService: AuthRestService,\r\n private readonly localeState: ApplicationConfig\r\n ) {\r\n this.subscribeUser();\r\n }\r\n public ngOnInit(): void {\r\n this.localeState.init();\r\n }\r\n\r\n private subscribeUser(): void {\r\n this.authRestService.user.subscribe((user) => (this.user = user));\r\n }\r\n\r\n public logout(): void {\r\n this.authRestService.logout();\r\n }\r\n}\r\n","","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppComponent } from './app.component';\r\nimport { ModalComponent } from './shared/component/modal/modal.component';\r\nimport { AuthModule } from '@features/auth/auth.module'\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { JwtInterceptor } from '@api/interceptor/rest/jwt.interceptor';\r\nimport { AppLayoutComponent } from '@core/layout/app/app-layout.component';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { GiftCardActivationModule } from '@features/gift-card-activation/gift-card-activation.module';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { SidebarModule } from '@shared/sidebar/sidebar.module'\r\nimport { IconModule } from '@shared/icon';\r\nimport { DocumentsModule } from '@features/documents/documents.module';\r\nimport { ApplicationConfig } from '@core/config/application.config';\r\nimport { MessageService } from 'primeng/api/';\r\nimport { Injector } from '@angular/core';\r\nimport { LOCATION_INITIALIZED } from '@angular/common';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { environment } from '@environments/environment';\r\nimport { CardActivationHistoryModule } from '@features/card-activation-history/card-activation-history.module';\r\nimport { ClientsModule } from '@features/clients/clients.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n AppLayoutComponent,\r\n ModalComponent\r\n ],\r\n imports: [\r\n SharedModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AuthModule,\r\n HttpClientModule,\r\n TranslocoRootModule,\r\n AppRoutingModule,\r\n GiftCardActivationModule,\r\n SidebarModule,\r\n IconModule,\r\n DocumentsModule,\r\n CardActivationHistoryModule,\r\n ClientsModule\r\n ],\r\n exports: [SharedModule, SidebarModule, IconModule],\r\n providers: [\r\n // {\r\n // provide: APP_INITIALIZER,\r\n // useFactory: appInitializerFactory,\r\n // deps: [TranslocoService, Injector],\r\n // multi: true\r\n // },\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n ApplicationConfig,\r\n MessageService\r\n],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n\r\nexport function appInitializerFactory(translate: TranslocoService, injector: Injector) {\r\n return () => new Promise((resolve: any) => {\r\n const locationInitialized = injector.get(LOCATION_INITIALIZED, Promise.resolve(null));\r\n locationInitialized.then(() => {\r\n const langToSet = localStorage.getItem('language');\r\n translate.setDefaultLang(environment.defaultLocale);\r\n translate.setActiveLang(langToSet);\r\n // .subscribe(() => {\r\n // console.info(`Successfully initialized '${langToSet}' language.'`);\r\n // }, err => {\r\n // console.error(`Problem with '${langToSet}' language initialization.'`);\r\n // }, () => {\r\n // resolve(null);\r\n // });\r\n });\r\n });\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../../environments/environment';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { DateTime } from 'luxon';\r\nimport { FilterService, PrimeNGConfig } from 'primeng/api';\r\nimport { BehaviorSubject, Observable, zip } from 'rxjs';\r\n\r\ntype DatePatterns = {\r\n short: { [index: string]: string };\r\n long: { [index: string]: string };\r\n medium: { [index: string]: string };\r\n};\r\n\r\ntype RowsPerPageOptionsType = {\r\n default: number[];\r\n changeLogs: number[];\r\n};\r\n\r\n@Injectable()\r\nexport class ApplicationConfig {\r\n public readonly stateKey = 'language';\r\n \r\n public get monthsMap(): Map {\r\n return new Map([\r\n [ '1', this.translateService.translate('calendar.months.january') ],\r\n [ '2', this.translateService.translate('calendar.months.february') ],\r\n [ '3', this.translateService.translate('calendar.months.march') ],\r\n [ '4', this.translateService.translate('calendar.months.april') ],\r\n [ '5', this.translateService.translate('calendar.months.may') ],\r\n [ '6', this.translateService.translate('calendar.months.june') ],\r\n [ '7', this.translateService.translate('calendar.months.july') ],\r\n [ '8', this.translateService.translate('calendar.months.august') ],\r\n [ '9', this.translateService.translate('calendar.months.september') ],\r\n [ '10', this.translateService.translate('calendar.months.october') ],\r\n [ '11', this.translateService.translate('calendar.months.november') ],\r\n [ '12', this.translateService.translate('calendar.months.december') ]\r\n ]);\r\n };\r\n\r\n public datePatterns: DatePatterns = {\r\n short: {\r\n en: 'mm/dd/yy',\r\n pl: 'dd/mm/yy',\r\n de: 'dd/mm/yy',\r\n },\r\n medium: {\r\n en: 'MM/dd/yyyy',\r\n pl: 'dd/MM/yyyy',\r\n de: 'dd/MM/yyyy',\r\n },\r\n long: {\r\n en: 'MM/dd/yyyy, hh:mm a',\r\n pl: 'dd/MM/yyyy, hh:mm',\r\n de: 'dd/MM/yyyy, hh:mm',\r\n },\r\n };\r\n\r\n public rowsPerPageOptions: RowsPerPageOptionsType = {\r\n default: [25, 50, 100],\r\n changeLogs: [50, 100, 250],\r\n };\r\n private readonly state = new BehaviorSubject(environment.defaultLocale);\r\n\r\n public constructor(\r\n private readonly translateService: TranslocoService,\r\n private readonly primeNGConfig: PrimeNGConfig,\r\n private readonly filterService: FilterService,\r\n ) {}\r\n\r\n public set locale(locale: string) {\r\n this.state.next(locale);\r\n localStorage.setItem(this.stateKey, locale);\r\n }\r\n\r\n public get locale(): string {\r\n return this.state.getValue();\r\n }\r\n\r\n private get days(): Observable {\r\n return zip(\r\n this.translateService.selectTranslate('shared.calendar.day.sunday'),\r\n this.translateService.selectTranslate('shared.calendar.day.monday'),\r\n this.translateService.selectTranslate('shared.calendar.day.tuesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.wednesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.thursday'),\r\n this.translateService.selectTranslate('shared.calendar.day.friday'),\r\n this.translateService.selectTranslate('shared.calendar.day.saturday'),\r\n );\r\n }\r\n\r\n private get shortDays(): Observable {\r\n return zip(\r\n this.translateService.selectTranslate('shared.calendar.day.short.sunday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.monday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.tuesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.wednesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.thursday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.friday'),\r\n this.translateService.selectTranslate('shared.calendar.day.short.saturday'),\r\n );\r\n }\r\n\r\n private get minDays(): Observable {\r\n return zip(\r\n this.translateService.selectTranslate('shared.calendar.day.min.sunday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.monday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.tuesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.wednesday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.thursday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.friday'),\r\n this.translateService.selectTranslate('shared.calendar.day.min.saturday'),\r\n );\r\n }\r\n\r\n private get months(): Observable {\r\n return zip(\r\n this.translateService.selectTranslate('shared.calendar.month.january'),\r\n this.translateService.selectTranslate('shared.calendar.month.february'),\r\n this.translateService.selectTranslate('shared.calendar.month.march'),\r\n this.translateService.selectTranslate('shared.calendar.month.april'),\r\n this.translateService.selectTranslate('shared.calendar.month.may'),\r\n this.translateService.selectTranslate('shared.calendar.month.june'),\r\n this.translateService.selectTranslate('shared.calendar.month.july'),\r\n this.translateService.selectTranslate('shared.calendar.month.august'),\r\n this.translateService.selectTranslate('shared.calendar.month.september'),\r\n this.translateService.selectTranslate('shared.calendar.month.october'),\r\n this.translateService.selectTranslate('shared.calendar.month.november'),\r\n this.translateService.selectTranslate('shared.calendar.month.december'),\r\n );\r\n }\r\n\r\n private get shortMonths(): Observable {\r\n return zip(\r\n this.translateService.selectTranslate('shared.calendar.month.short.january'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.february'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.march'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.april'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.may'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.june'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.july'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.august'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.september'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.october'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.november'),\r\n this.translateService.selectTranslate('shared.calendar.month.short.december'),\r\n );\r\n }\r\n\r\n private get today(): Observable {\r\n return this.translateService.selectTranslate('shared.calendar.today');\r\n }\r\n\r\n private get clear(): Observable {\r\n return this.translateService.selectTranslate('shared.calendar.clear');\r\n }\r\n\r\n public init(): void {\r\n this.translateService.setDefaultLang(environment.defaultLocale);\r\n this.locale = localStorage.getItem(this.stateKey) || environment.defaultLocale;\r\n this.translateService.setActiveLang(this.locale);\r\n //this.setPrimeNGConfig();\r\n this.registerDateFilter();\r\n }\r\n\r\n private registerDateFilter(): void {\r\n this.filterService.register('date', this.filterBySingleDate);\r\n this.filterService.register('dateRange', this.filterByRangeDate);\r\n }\r\n\r\n private readonly filterBySingleDate = (value: DateTime, filter: DateTime | null) => {\r\n if (filter === undefined || filter === null) {\r\n return true;\r\n }\r\n\r\n if (value === undefined || value === null) {\r\n return false;\r\n }\r\n const hasSameYear = value.hasSame(filter, 'year');\r\n const hasSameMonth = value.hasSame(filter, 'month');\r\n const hasSameDay = value.hasSame(filter, 'day');\r\n return hasSameYear && hasSameMonth && hasSameDay;\r\n };\r\n\r\n private readonly filterByRangeDate = (value: DateTime, filter: DateTime[] | null) => {\r\n if (filter === undefined || filter === null || !Array.isArray(filter) || filter.length === 0) {\r\n return true;\r\n }\r\n\r\n if (value === undefined || value === null) {\r\n return false;\r\n }\r\n const isoValueDate = value.toISODate();\r\n const isoFilter1Date = filter[0].toISODate();\r\n const isoFilter2Date = filter[1].toISODate();\r\n return isoValueDate >= isoFilter1Date && isoValueDate <= isoFilter2Date;\r\n };\r\n\r\n private setPrimeNGConfig(): void {\r\n zip(this.months, this.shortMonths, this.minDays, this.days, this.shortDays, this.today, this.clear).subscribe(\r\n ([monthNames, monthNamesShort, dayNamesMin, dayNames, dayNamesShort, today, clear]: [\r\n string[],\r\n string[],\r\n string[],\r\n string[],\r\n string[],\r\n string,\r\n string,\r\n ]) => {\r\n this.primeNGConfig.ripple = true;\r\n this.primeNGConfig.setTranslation({\r\n dayNames,\r\n dayNamesMin,\r\n dayNamesShort,\r\n monthNamesShort,\r\n today,\r\n monthNames,\r\n clear,\r\n });\r\n },\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport {\r\n Router,\r\n CanActivate,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot,\r\n} from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService\r\n ) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const user = this.authRestService.userValue;\r\n\r\n if (user) {\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/auth/login'], {\r\n queryParams: { returnUrl: state.url },\r\n });\r\n return false;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanLoad, CanActivate } from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class CardActivationHistoryGuard implements CanLoad, CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService\r\n ) {}\r\n\r\n canLoad() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToCardActivationHistory) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n canActivate() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToCardActivationHistory) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router, CanLoad, CanActivate } from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ClientsGuard implements CanLoad, CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService\r\n ) {}\r\n\r\n canLoad() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToClients) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n canActivate() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToClients) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router, CanLoad, CanActivate } from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DocumentsAuthGuard implements CanLoad, CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService\r\n ) {}\r\n\r\n canLoad() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToDocuments) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n canActivate() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToDocuments) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router, CanLoad, CanActivate } from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class GiftCardActivationAuthGuard implements CanLoad, CanActivate {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService\r\n ) {}\r\n\r\n canLoad() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToGiftCardActivation) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n canActivate() {\r\n const user = this.authRestService.userValue;\r\n \r\n if (!user) {\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/account/login'], { queryParams: { returnUrl: '' }});\r\n return false;\r\n }\r\n\r\n if (!user.accessToGiftCardActivation) {\r\n this.notificationService.addError('features.auth.login.form.messages.unauthorizedAcceess');\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n}","\r\n//string helpers\r\nexport const nameof = (name: Extract): string => name;\r\n\r\n//array helpers\r\n\r\nArray.prototype.distinct = function() {\r\n return distinct(this);\r\n}\r\nArray.prototype.distinctBy = function(fieldName: string) {\r\n return distinctBy(this, fieldName);\r\n}\r\n\r\ndeclare global {\r\n interface Array {\r\n distinct(): Array;\r\n distinctBy(fieldName: string): Array;\r\n }\r\n}\r\n\r\nexport const distinctBy = (array, fieldName): T => array.filter(\r\n (item, i, arr) => arr.findIndex(t => t[fieldName] === item[fieldName]) === i\r\n);\r\nexport const distinct = (array): T => array.filter(\r\n (item, i, arr) => arr.findIndex(t => t === item) === i \r\n);\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-app-layout',\r\n templateUrl: './app-layout.component.html',\r\n styleUrls: ['./app-layout.component.scss']\r\n})\r\nexport class AppLayoutComponent implements OnInit {\r\n menuItems: NavItemModel[] = [];\r\n display: boolean = true;\r\n router: Router;\r\n\r\n constructor(private authRestService: AuthRestService,\r\n private arouter: Router) {\r\n this.router = arouter;\r\n }\r\n\r\n ngOnInit() {\r\n this.fillMenuItems();\r\n }\r\n\r\n public logout(): void {\r\n this.authRestService.logout();\r\n }\r\n\r\n public settings(): void {\r\n this.router.navigateByUrl('/app/settings');\r\n }\r\n\r\n private fillMenuItems(): void {\r\n this.menuItems = [\r\n {\r\n id: 'gift-card-activation',\r\n name:\"Gift cards activation\",\r\n icon:'pi pi-fw pi-credit-card',\r\n },\r\n {\r\n id: 'card-activation-history',\r\n name:'Activation history',\r\n icon:'pi pi-fw pi-book',\r\n },\r\n {\r\n id: 'clients',\r\n name:'Clients',\r\n icon:'pi pi-fw pi-users',\r\n },\r\n {\r\n id: 'documents',\r\n name:'Documents',\r\n icon:'pi pi-fw pi-file-o',\r\n }\r\n ];\r\n }\r\n public toggleSidebarMenu() {\r\n this.display = !this.display;\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 { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\n\r\n@Component({ selector: \"app-auth-layout\", templateUrl: 'auth-layout.component.html' })\r\nexport class AuthLayoutComponent {\r\n constructor(\r\n private router: Router,\r\n private authRestService: AuthRestService\r\n ) {\r\n this.redirectIfIsLoggedIn();\r\n }\r\n \r\n private redirectIfIsLoggedIn(): void {\r\n const loggedIn = this.authRestService.userValue;\r\n if(!loggedIn)\r\n return;\r\n\r\n this.router.navigate(['/home/']);\r\n }\r\n}","
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
","export class BaseDropdownItem {\r\n public value: string = '';\r\n public text: string = '';\r\n public constructor(value: string = '', text: string = ''){\r\n this.value = value;\r\n this.text = text;\r\n }\r\n}","export enum NavItemTypeEnum {\r\n divider = 'divider',\r\n title = 'title',\r\n dropdown = 'dropdown',\r\n label = 'label',\r\n empty = 'empty',\r\n link = 'link',\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { LoginFormComponent } from './component/login-form/login-form.component';\r\nimport { AuthLayoutComponent } from '@core/layout/auth/auth-layout.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'auth', component: AuthLayoutComponent, data : { id : 'auth' }, children: [\r\n { path:'login', component: LoginFormComponent, data : { id : 'login' } }\r\n ] \r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AuthRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AuthLayoutComponent } from '@core/layout/auth/auth-layout.component';\r\nimport { LoginFormComponent } from '@features/auth/component/login-form/login-form.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AuthRoutingModule } from './auth-routing.module';\r\nimport { InputDirective } from '@shared/input/input.directive';\r\nimport { SharedModule } from '@shared/shared.module'\r\nimport { TranslocoModule } from '@ngneat/transloco';\r\nimport { NotificationModule } from '@shared/notification';\r\n\r\n@NgModule({\r\n declarations: [\r\n AuthLayoutComponent,\r\n LoginFormComponent,\r\n InputDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n AuthRoutingModule,\r\n NotificationModule,\r\n SharedModule,\r\n TranslocoModule\r\n ],\r\n exports: [RouterModule]\r\n})\r\nexport class AuthModule { }","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Component({\r\n selector: 'app-auth-login',\r\n templateUrl: './login-form.component.html',\r\n styleUrls: ['./login-form.component.scss'],\r\n})\r\nexport class LoginFormComponent implements OnInit {\r\n public form: FormGroup;\r\n public loading: boolean = false;\r\n public submitted: boolean = false;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.form = this.formBuilder.group({\r\n login: ['', Validators.required],\r\n password: ['', Validators.required],\r\n });\r\n }\r\n\r\n // convenience getter for easy access to form fields\r\n get f() {\r\n return this.form.controls;\r\n }\r\n onSubmit() {\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.form.invalid) return;\r\n\r\n this.loading = true;\r\n this.authRestService\r\n .login(this.f.login.value, this.f.password.value)\r\n .pipe(map((t) => this.authRestService.getUserFromToken(t.access_token)))\r\n .subscribe({\r\n next: (u) => {\r\n //TODO add redirection for correct route based on data from API\r\n this.loading = false;\r\n const returnUrl: string =\r\n this.route.snapshot.queryParams['returnUrl'] ||\r\n (u.accessToGiftCardActivation\r\n ? '/app/gift-card-activation'\r\n : u.accessToDocuments\r\n ? '/app/documents'\r\n : undefined);\r\n this.router.navigateByUrl(returnUrl);\r\n },\r\n error: () => {\r\n this.loading = false;\r\n this.notificationService.addError(\r\n 'features.auth.login.form.messages.failed'\r\n );\r\n },\r\n });\r\n }\r\n\r\n public hasErrorInField(fieldName: string): unknown {\r\n return this.submitted && this.f[fieldName].errors;\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Field required
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Field required
\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 { Adapter } from '@core/helpers/adapterInterface';\r\n\r\nexport class AuthToken {\r\n constructor(\r\n public access_token: string,\r\n public token_type: string,\r\n public expires_in: string,\r\n public refresh_token: string\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthTokenAdapter implements Adapter {\r\n adapt(item: any): AuthToken {\r\n return new AuthToken(\r\n item.access_token,\r\n item.token_type,\r\n item.expires_in,\r\n item.refresh_token\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Adapter } from '@core/helpers/adapterInterface';\r\n\r\nexport class CurrentUser {\r\n constructor(\r\n public userID: string,\r\n public login: string,\r\n public accessToGiftCardActivation: boolean,\r\n public accessToCardActivationHistory: boolean,\r\n public accessToDocuments: boolean,\r\n public accessToClients: boolean\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CurrentUserAdapter implements Adapter {\r\n adapt(item: any): CurrentUser {\r\n return new CurrentUser(\r\n item.ClientID,\r\n item.Login,\r\n Boolean(item.AccessToGiftCardActivation),\r\n Boolean(item.AccessToCardActivationHistory),\r\n Boolean(item.AccessToDocuments),\r\n Boolean(item.AccessToClients)\r\n );\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { CardActivationHistoryGuard } from '@core/guards/card-activation-history.guard';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { CardActivationHistoryTableComponent } from './component/card-activation-history-table/card-activation-history-table.component';\r\n\r\nconst routes: Routes = [\r\n { \r\n path: 'card-activation-history', data: { id: 'card-activation-history' }, component: CardActivationHistoryTableComponent,\r\n canLoad: [CardActivationHistoryGuard],\r\n canActivate: [CardActivationHistoryGuard],\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes), SharedModule],\r\n exports: [RouterModule, SharedModule]\r\n})\r\nexport class CardActivationHistoryRountingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { CardActivationHistoryRountingModule } from './card-activation-history-rounting.module';\r\nimport { CardActivationHistoryTableComponent } from './component/card-activation-history-table/card-activation-history-table.component';\r\nimport { SharedModule } from 'primeng/api';\r\n\r\n@NgModule({\r\n declarations: [CardActivationHistoryTableComponent],\r\n imports: [\r\n CommonModule,\r\n TranslocoRootModule,\r\n CardActivationHistoryRountingModule,\r\n SharedModule\r\n ],\r\n exports: [CardActivationHistoryTableComponent]\r\n})\r\nexport class CardActivationHistoryModule { }\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { SimpleResponse } from '@api/model/response';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { ApplicationConfig } from '@core/config/application.config';\r\nimport { nameof } from '@core/helpers/extensions';\r\nimport { BaseDropdownItem } from '@core/models/base-dropdown-item';\r\nimport { ActivationHistoryTableModel } from '@features/card-activation-history/model/activation-history-table-model';\r\nimport { CardActivationHistoryTableFilterModel } from '@features/card-activation-history/model/card-activation-history-table-filter-model';\r\nimport { GetActivationHistoryResponse } from '@features/card-activation-history/model/get-activation-history-response';\r\nimport { ClientSelectComponent } from '@features/clients/component/client-select/client-select.component';\r\nimport { GetFileResponse } from '@features/documents/model/get-file-response';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { TableFilterConditionEnum } from '@shared/enums/table-filter-condition.enum';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { DialogService, DynamicDialogRef } from 'primeng/dynamicdialog';\r\n\r\n@Component({\r\n selector: 'app-card-activation-history-table',\r\n templateUrl: './card-activation-history-table.component.html',\r\n styleUrls: ['./card-activation-history-table.component.scss'],\r\n providers: [DialogService]\r\n})\r\nexport class CardActivationHistoryTableComponent implements OnInit {\r\n public loading: boolean;\r\n public creatingInvoice: boolean;\r\n public activationHistoryList: ActivationHistoryTableModel[] = [];\r\n public selectedActivationHistoryList: ActivationHistoryTableModel[] = [];\r\n public months: BaseDropdownItem[] = [new BaseDropdownItem('', this.translocoService.translate('common.select-month'))];\r\n public years: BaseDropdownItem[] = [new BaseDropdownItem('', this.translocoService.translate('common.select-year'))];\r\n public filterModel = new CardActivationHistoryTableFilterModel();\r\n ref: DynamicDialogRef;\r\n @ViewChild('table') _table;\r\n\r\n constructor(private applicationConfig: ApplicationConfig,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private authRestService: AuthRestService,\r\n private translocoService: TranslocoService,\r\n private dialogService: DialogService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.fillHistory();\r\n }\r\n\r\n private fillHistory(): void {\r\n this.loading = true;\r\n \r\n this.giftCardActivationService.getActivationHistory(this.authRestService.userValue.userID).subscribe(\r\n (res: GetActivationHistoryResponse) => {\r\n if (res == null || res.activationHistoryList == undefined) {\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n this.selectedActivationHistoryList = [];\r\n this.activationHistoryList = [];\r\n for (let x = 0; x < res.activationHistoryList.length; x++) {\r\n let historyItem = new ActivationHistoryTableModel()\r\n historyItem.cardActivationHistoryID = res.activationHistoryList[x].cardActivationHistoryID;\r\n historyItem.cardActivationDate = res.activationHistoryList[x].cardActivationDate;\r\n historyItem.batch = res.activationHistoryList[x].batch;\r\n historyItem.batchID = res.activationHistoryList[x].batchID;\r\n historyItem.quantity = res.activationHistoryList[x].quantity;\r\n historyItem.value = res.activationHistoryList[x].value;\r\n historyItem.cardList = res.activationHistoryList[x].cardList;\r\n historyItem.invoiceID = res.activationHistoryList[x].invoiceID;\r\n historyItem.invoiceName = res.activationHistoryList[x].invoiceName;\r\n this.activationHistoryList.push(historyItem);\r\n }\r\n\r\n this.setAvailableYears();\r\n this.setAvailableMonths();\r\n this.loading = false;\r\n },\r\n (error) => {\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n });\r\n }\r\n\r\n private setAvailableYears(): void {\r\n this.years = [new BaseDropdownItem('', this.translocoService.translate('common.select-year'))].concat(...this.getAvYears());\r\n }\r\n\r\n private setAvailableMonths(): void {\r\n this.months = [new BaseDropdownItem('', this.translocoService.translate('common.select-month'))].concat(...this.getAvMonths());\r\n }\r\n\r\n private getAvMonths(): BaseDropdownItem[] {\r\n const docs: ActivationHistoryTableModel[] = this.filterModel.isFilteredByYear\r\n ? this.activationHistoryList.filter(x => x.yearString == this.filterModel.year)\r\n : this.activationHistoryList;\r\n \r\n return docs.distinctBy(nameof('monthString'))\r\n .map((activationHistoryItem: ActivationHistoryTableModel) => new BaseDropdownItem(activationHistoryItem.monthString, this.applicationConfig.monthsMap.get(activationHistoryItem.monthString)));\r\n }\r\n\r\n private getAvYears(): BaseDropdownItem[] {\r\n return this.activationHistoryList\r\n .distinctBy(nameof('yearString'))\r\n .map((activationHistoryItem: ActivationHistoryTableModel) => new BaseDropdownItem(activationHistoryItem.yearString, activationHistoryItem.yearString));\r\n }\r\n\r\n public filterTableByYear(): void {\r\n this.filterModel.month = '';\r\n this.filterTableByMonth();\r\n this.setAvailableMonths();\r\n this.filterTable(this.filterModel.year, nameof('yearString'));\r\n }\r\n\r\n public filterTableByMonth(): void {\r\n this.filterTable(this.filterModel.month, nameof('monthString'));\r\n }\r\n\r\n private filterTable(value: string, fieldName: string, condition: TableFilterConditionEnum = TableFilterConditionEnum.equals) {\r\n this._table.filter(value, fieldName, condition.toString());\r\n }\r\n\r\n public onClickCreateInvoice(): void {\r\n this.ref = this.dialogService.open(ClientSelectComponent, {\r\n width: '55rem',\r\n header: this.translocoService.translate('features.clients.select-dialog-title')\r\n });\r\n\r\n this.ref.onClose.subscribe((clientId: string) =>{\r\n if (clientId) {\r\n this.createInvoice(clientId);\r\n }\r\n });\r\n }\r\n\r\n private createInvoice(clientId: string) {\r\n this.creatingInvoice = true;\r\n\r\n this.giftCardActivationService.createInvoice(clientId, this.selectedActivationHistoryList.map(x => x.cardActivationHistoryID))\r\n .subscribe((res: SimpleResponse) => {\r\n if (res.executionStatus != 0) {\r\n this.notificationService.addError(this.translocoService.translate('features.card-activation-history.errors.create-invoice'));\r\n }\r\n else {\r\n this.fillHistory();\r\n this.notificationService.addSuccess(this.translocoService.translate('common.messages.operation-completed'));\r\n }\r\n },() => {\r\n this.creatingInvoice = false;\r\n },() => {\r\n this.creatingInvoice = false;\r\n });\r\n }\r\n\r\n public onClickDownloadInvoice(model: ActivationHistoryTableModel): void {\r\n model.isDownloading = true;\r\n this.giftCardActivationService.getInvoice(model.invoiceID).subscribe((res: GetFileResponse) => {\r\n model.isDownloading = false;\r\n\r\n if (!res || res.executionStatus != 1 || !res.file) {\r\n this.notificationService.addError(this.translocoService.translate('features.card-activation-history.errors.download'));\r\n return;\r\n }\r\n\r\n this.downloadInvoice(res.file, model);\r\n },\r\n () => model.isDownloading = false);\r\n }\r\n\r\n downloadInvoice(base64String, file: ActivationHistoryTableModel) {\r\n const source = `data:application/octet-stream;base64,${base64String}`;\r\n const link = document.createElement(\"a\");\r\n link.href = source;\r\n link.download = `${file.invoiceName}.pdf`\r\n link.click();\r\n }\r\n\r\n public getSelectedRowsLabel() {\r\n return this.selectedActivationHistoryList.length === 0 ? \"\" : `(${this.selectedActivationHistoryList.length})`;\r\n }\r\n}","

{{ 'features.card-activation-history.card-activation-history' | transloco }}

\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 {{ 'features.card-activation-history.fields.batch' | transloco }}\r\n \r\n \r\n {{ 'features.card-activation-history.fields.quantity' | transloco }}\r\n \r\n \r\n {{ 'features.card-activation-history.fields.totalValue' | transloco }}\r\n \r\n \r\n {{ 'features.card-activation-history.fields.activation-date' | transloco }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ activationHistoryItem.batch }}\r\n {{ activationHistoryItem.quantity }}\r\n {{ activationHistoryItem.value }}\r\n {{ activationHistoryItem.dateString }}\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 {{ 'features.card-activation-history.fields.card-number' | transloco }}\r\n {{ 'features.card-activation-history.fields.value' | transloco }}\r\n \r\n \r\n \r\n \r\n {{card.cardNumber}}\r\n {{card.value}}\r\n \r\n \r\n \r\n \r\n There are no order for this product yet.\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 { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class ActivationHistoryCardModel {\r\n constructor(\r\n public cardID: string = '',\r\n public cardNumber: string = '',\r\n public value: number\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class ActivationHistoryCardModelAdapter implements Adapter {\r\n adapt(item: any): ActivationHistoryCardModel {\r\n return item ? new ActivationHistoryCardModel(\r\n item.CardID,\r\n item.CardNumber,\r\n item.Value ? item.Value.toFixed(2) : 0\r\n ) : null;\r\n }\r\n}","import * as moment from 'moment';\r\nimport { ActivationHistoryCardModel } from './activation-history-card-model';\r\n\r\nexport class ActivationHistoryTableModel {\r\n public cardActivationHistoryID: string = '';\r\n public batchID: string = '';\r\n public batch: string = '';\r\n public quantity: number;\r\n public value: number;\r\n public cardActivationDate: Date;\r\n public cardList: ActivationHistoryCardModel[]\r\n public invoiceID: string = ''\r\n public invoiceName: string = ''\r\n public isDownloading: boolean;\r\n\r\n public get dateString(): string {\r\n let locale = localStorage.getItem('language');\r\n return this.cardActivationDate.toLocaleString(locale);\r\n }\r\n\r\n public get monthString(): string {\r\n const month = this.cardActivationDate.getMonth() + 1;\r\n return month.toString();\r\n }\r\n\r\n public get yearString(): string {\r\n return this.cardActivationDate.getFullYear().toString();\r\n }\r\n\r\n public get year(): number {\r\n return this.cardActivationDate.getFullYear();\r\n }\r\n}","import { nameof } from '@core/helpers/extensions';\r\n\r\nexport class CardActivationHistoryTableFilterModel {\r\n public year: string = '';\r\n public month: string = '';\r\n get isFilteredByYear(): boolean { return this.isFilteredBy(nameof('year') ) }\r\n private isFilteredBy(fieldName: string): boolean { return this[fieldName] && this[fieldName] != ''; }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { ActivationHistoryCardModel, ActivationHistoryCardModelAdapter } from \"./activation-history-card-model\";\r\n\r\nexport class GetActivationHistoryModel {\r\n constructor(\r\n public cardActivationHistoryID: string = '',\r\n public cardActivationDate: Date,\r\n public quantity: number,\r\n public value: number,\r\n public invoiceID: string = '',\r\n public invoiceName: string = '',\r\n public batchID: string = '',\r\n public batch: string = '',\r\n public cardList: ActivationHistoryCardModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GetActivationHistoryModelAdapter implements Adapter {\r\n adapt(item: any): GetActivationHistoryModel {\r\n return item ? new GetActivationHistoryModel(\r\n item.CardActivationHistoryID, \r\n new Date(item.CardActivationDate),\r\n item.Quantity, \r\n item.Value ? item.Value.toFixed(2) : 0,\r\n item.InvoiceID,\r\n item.InvoiceName,\r\n item.BatchID,\r\n item.Batch,\r\n item.CardList.map(i => new ActivationHistoryCardModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { GetActivationHistoryModel, GetActivationHistoryModelAdapter } from \"./get-activation-history-model\";\r\n\r\nexport class GetActivationHistoryResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public executionMessage: string = '',\r\n public activationHistoryList: GetActivationHistoryModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GetActivationHistoryResponseAdapter implements Adapter {\r\n adapt(item: any): GetActivationHistoryResponse {\r\n return item ? new GetActivationHistoryResponse(\r\n item.data.ExecutionStatus,\r\n item.data.ExecutionMessage,\r\n item.data.CardActivationHistoryList.map(i => new GetActivationHistoryModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class ClientModel {\r\n constructor(\r\n public id: string = '',\r\n public name: string = '',\r\n public taxId: string = '',\r\n public firstName: string = '',\r\n public lastName: string = '',\r\n public phone: string = '',\r\n public email: string = '',\r\n public address: string = '',\r\n public zipCode: string = '',\r\n public city: string = ''\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class ClientModelAdapter implements Adapter {\r\n adapt(item: any): ClientModel {\r\n return item ? new ClientModel(\r\n item.ID,\r\n item.Name, \r\n item.TaxID,\r\n item.FirstName,\r\n item.LastName,\r\n item.Phone,\r\n item.Email,\r\n item.Address,\r\n item.ZipCode,\r\n item.City,\r\n ) : null;\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { ClientsGuard } from '@core/guards/clients.guard';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { ClientsComponent } from './component/clients/clients.component';\r\n\r\nconst routes: Routes = [\r\n { \r\n path: 'clients', data: { id: 'clients' }, component: ClientsComponent,\r\n canLoad: [ClientsGuard],\r\n canActivate: [ClientsGuard],\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes), SharedModule],\r\n exports: [RouterModule, SharedModule]\r\n})\r\nexport class ClientsRountingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { ClientsRountingModule } from './clients-rounting.module';\r\nimport { ClientsComponent } from './component/clients/clients.component';\r\nimport { SharedModule } from 'primeng/api';\r\nimport { ClientCreateComponent } from './component/client-create/client-create.component';\r\nimport { ClientSearchComponent } from './component/client-search/client-search.component';\r\nimport { ClientSelectComponent } from './component/client-select/client-select.component';\r\n\r\n@NgModule({\r\n declarations: [ClientsComponent, ClientCreateComponent, ClientSearchComponent, ClientSelectComponent],\r\n imports: [\r\n CommonModule,\r\n TranslocoRootModule,\r\n ClientsRountingModule,\r\n SharedModule\r\n ],\r\n exports: [ClientsComponent]\r\n})\r\nexport class ClientsModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ClientModel } from '@features/clients/client-model';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { DynamicDialogRef } from 'primeng/dynamicdialog';\r\n\r\n@Component({\r\n selector: 'app-add-client',\r\n templateUrl: './client-create.component.html',\r\n styleUrls: ['./client-create.component.scss']\r\n})\r\nexport class ClientCreateComponent implements OnInit {\r\n public clientForm: FormGroup;\r\n public creatingClient: boolean;\r\n \r\n constructor(\r\n private fb: FormBuilder,\r\n private notificationService: NotificationService,\r\n private translateService: TranslocoService,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private ref: DynamicDialogRef\r\n ) {\r\n this.clientForm = this.fb.group({\r\n name: ['', [Validators.required, Validators.minLength(3)]],\r\n taxId: ['', [Validators.required, Validators.minLength(3)]],\r\n address: ['', [Validators.required, Validators.minLength(3)]],\r\n city: ['', [Validators.required, Validators.minLength(3)]],\r\n email: ['', [Validators.required, Validators.minLength(3)]],\r\n firstName: ['', [Validators.required, Validators.minLength(3)]],\r\n lastName: ['', [Validators.required, Validators.minLength(3)]],\r\n phone: ['', [Validators.required, Validators.minLength(3)]],\r\n zipCode: ['', [Validators.required, Validators.minLength(3)]],\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n add() {\r\n if (this.creatingClient) {\r\n return;\r\n }\r\n\r\n let cm: ClientModel = Object.assign(new ClientModel(),\r\n this.clientForm.value\r\n )\r\n\r\n if (this.clientForm.valid) {\r\n this.creatingClient = true;\r\n\r\n this.giftCardActivationService.createClient(cm)\r\n .subscribe(r => {\r\n if (r.executionStatus === 0) {\r\n this.notificationService.addSuccess(this.translateService.translate('common.messages.operation-completed'), false);\r\n this.ref.close();\r\n }\r\n else if (r.executionStatus === 1) {\r\n this.notificationService.addError(this.translateService.translate('features.clients.messages.client-already-exists'), false);\r\n }\r\n else {\r\n this.notificationService.addError(this.translateService.translate('common.messages.operation-failed'), false);\r\n }\r\n },() => {}\r\n ,() => {\r\n this.creatingClient = false;\r\n });\r\n }\r\n }\r\n\r\n reset() {\r\n this.clientForm.reset();\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {{'common.validation.required' | transloco}}\r\n
\r\n
\r\n {{'common.validation.min-length' | transloco}}\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 { Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { ClientModel } from '@features/clients/client-model';\r\nimport { GetClientResponse } from '@features/clients/get-client-response';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\n\r\n@Component({\r\n selector: 'app-client-search',\r\n templateUrl: './client-search.component.html',\r\n styleUrls: ['./client-search.component.scss']\r\n})\r\nexport class ClientSearchComponent implements OnInit {\r\n @Output() clientListLoaded = new EventEmitter();\r\n \r\n public clientSearchForm: FormGroup;\r\n public loading: boolean;\r\n\r\n private clientList: ClientModel[];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private giftCardActivationService: GiftCardActivationService\r\n ) {\r\n this.clientSearchForm = this.fb.group({\r\n name: [''],\r\n taxId: ['']\r\n }, { validators: [this.customValidator] }\r\n );\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n customValidator(form: FormGroup) {\r\n if (form.value.name.length > 2 || form.value.taxId.length > 2) {\r\n return true;\r\n }\r\n else {\r\n return { name: false };\r\n }\r\n }\r\n\r\n public confirm() {\r\n this.loading = true;\r\n this.clientList = [];\r\n\r\n this.giftCardActivationService.getClient(this.clientSearchForm.value.name, this.clientSearchForm.value.taxId)\r\n .subscribe((res: GetClientResponse) => {\r\n if (res == null || res.clientList == undefined) {\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n for (let x = 0; x < res.clientList.length; x++) {\r\n let clientItem = new ClientModel()\r\n clientItem.id = res.clientList[x].id;\r\n clientItem.taxId = res.clientList[x].taxId;\r\n clientItem.name = res.clientList[x].name;\r\n clientItem.address = res.clientList[x].address;\r\n clientItem.city = res.clientList[x].city;\r\n clientItem.email = res.clientList[x].email;\r\n clientItem.firstName = res.clientList[x].firstName;\r\n clientItem.lastName = res.clientList[x].lastName;\r\n clientItem.phone = res.clientList[x].phone;\r\n clientItem.zipCode = res.clientList[x].zipCode;\r\n this.clientList.push(clientItem);\r\n }\r\n\r\n this.loading = false;\r\n },\r\n (error) => {\r\n this.loading = false;\r\n },\r\n () => {\r\n this.clientListLoaded.emit(this.clientList);\r\n this.loading = false;\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 { Component, OnInit } from '@angular/core';\r\nimport { ClientModel } from '@features/clients/client-model';\r\nimport { DynamicDialogRef } from 'primeng/dynamicdialog';\r\n\r\n@Component({\r\n selector: 'app-client-select',\r\n templateUrl: './client-select.component.html',\r\n styleUrls: ['./client-select.component.scss']\r\n})\r\nexport class ClientSelectComponent implements OnInit {\r\n public loading: boolean;\r\n public clientsList: ClientModel[] = [];\r\n \r\n constructor(\r\n private ref: DynamicDialogRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public clientListLoaded(clientList: ClientModel[]) {\r\n this.clientsList = clientList;\r\n }\r\n\r\n public onClickSelect(clientId: string): void {\r\n this.ref.close(clientId);\r\n }\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n {{ 'features.clients.fields.name' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.taxId' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.address' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.zipCode' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.city' | transloco }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ clientItem.name }}\r\n {{ clientItem.taxId }}\r\n {{ clientItem.address }}\r\n {{ clientItem.zipCode }}\r\n {{ clientItem.city }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ClientModel } from '@features/clients/client-model';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { DialogService, DynamicDialogRef } from 'primeng/dynamicdialog';\r\nimport { ClientCreateComponent } from '../client-create/client-create.component';\r\n\r\n@Component({\r\n selector: 'app-clients',\r\n templateUrl: './clients.component.html',\r\n styleUrls: ['./clients.component.scss'],\r\n providers: [DialogService]\r\n})\r\nexport class ClientsComponent implements OnInit {\r\n public loading: boolean;\r\n public clientsList: ClientModel[] = [];\r\n ref: DynamicDialogRef;\r\n\r\n constructor(\r\n private dialogService: DialogService,\r\n private translocoService: TranslocoService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n showAddClientDialog() {\r\n this.ref = this.dialogService.open(ClientCreateComponent, {\r\n width: '30rem',\r\n header: this.translocoService.translate('features.clients.add-dialog-title')\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.ref) {\r\n this.ref.close();\r\n }\r\n }\r\n\r\n public clientListLoaded(clientList: ClientModel[]) {\r\n this.clientsList = clientList;\r\n }\r\n}\r\n","

{{ 'features.clients.clients' | transloco }}

\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 {{ 'features.clients.fields.name' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.taxId' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.address' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.zipCode' | transloco }}\r\n \r\n \r\n {{ 'features.clients.fields.city' | transloco }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ clientItem.name }}\r\n {{ clientItem.taxId }}\r\n {{ clientItem.address }}\r\n {{ clientItem.zipCode }}\r\n {{ clientItem.city }}\r\n \r\n \r\n\r\n","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class CreateClientResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public executionMessage: string = ''\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class CreateClientResponseAdapter implements Adapter {\r\n adapt(item: any): CreateClientResponse {\r\n return item ? new CreateClientResponse(\r\n item.ExecutionStatus,\r\n item.ExecutionMessage\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { ClientModel, ClientModelAdapter } from \"./client-model\";\r\n\r\nexport class GetClientResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public executionMessage: string = '',\r\n public clientList: ClientModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GetClientResponseAdapter implements Adapter {\r\n adapt(item: any): GetClientResponse {\r\n return item ? new GetClientResponse(\r\n item.data.ExecutionStatus,\r\n item.data.ExecutionMessage,\r\n item.data.ClientList?.map(i => new ClientModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DocumentElem } from '@features/documents/model/document-elem';\r\n\r\n@Component({\r\n selector: 'app-document-elem',\r\n templateUrl: './document-elem.component.html',\r\n styleUrls: ['./document-elem.component.scss']\r\n})\r\nexport class DocumentElemComponent implements OnInit {\r\n @Input() model: DocumentElem\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { DocumentElem } from '@features/documents/model/document-elem';\r\nimport { BaseDropdownItem } from '@core/models/base-dropdown-item';\r\nimport { DocumentListFilterModel } from '@features/documents/model/document-list-filter-model';\r\nimport { ApplicationConfig } from '@core/config/application.config';\r\nimport { nameof } from '@core/helpers/extensions';\r\nimport { TableFilterConditionEnum } from '@shared/enums/table-filter-condition.enum';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { GetFileResponse } from '@features/documents/model/get-file-response';\r\nimport { GetDocumentsResponse } from '@features/documents/model/get-documents-response';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\n@Component({\r\n selector: 'app-document-list',\r\n templateUrl: './document-list.component.html',\r\n styleUrls: ['./document-list.component.scss']\r\n})\r\nexport class DocumentListComponent implements OnInit {\r\n public documents: DocumentElem[] = [];\r\n public filterModel = new DocumentListFilterModel();\r\n public loading: boolean;\r\n\r\n @ViewChild('table') _table;\r\n public months: BaseDropdownItem[] = [new BaseDropdownItem('', this.translocoService.translate('common.select-month'))];\r\n public years: BaseDropdownItem[] = [new BaseDropdownItem('', this.translocoService.translate('common.select-year'))];\r\n\r\n constructor(private applicationConfig: ApplicationConfig,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private authRestService: AuthRestService,\r\n private translocoService: TranslocoService) { }\r\n\r\n ngOnInit(): void {\r\n this.fillDocuments();\r\n }\r\n\r\n private fillDocuments(): void {\r\n this.loading = true;\r\n this.giftCardActivationService.getDocuments(this.authRestService.userValue.userID).subscribe(\r\n (res: GetDocumentsResponse) => {\r\n if (res == null || res.documents == undefined) {\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n for (let x = 0; x < res.documents.length; x++) {\r\n let doc = new DocumentElem()\r\n .setFullName(res.documents[x].fullName)\r\n .setName(res.documents[x].name)\r\n .setExtension(res.documents[x].extension)\r\n .setDate(res.documents[x].modifiedDate)\r\n this.documents.push(doc);\r\n }\r\n\r\n this.setAvailableYears();\r\n this.setAvailableMonths();\r\n this.loading = false;\r\n },\r\n (error) => {\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n });\r\n }\r\n\r\n public filterTableByYear(): void {\r\n this.filterModel.month = '';\r\n this.filterTableByMonth();\r\n this.setAvailableMonths();\r\n this.filterTable(this.filterModel.year, nameof('yearString'));\r\n }\r\n\r\n public filterTableByMonth(): void {\r\n this.filterTable(this.filterModel.month, nameof('monthString'));\r\n }\r\n\r\n private filterTable(value: string, fieldName: string, condition: TableFilterConditionEnum = TableFilterConditionEnum.equals) {\r\n this._table.filter(value, fieldName, condition.toString());\r\n }\r\n\r\n private getAvMonths(): BaseDropdownItem[] {\r\n const docs: DocumentElem[] = this.filterModel.isFilteredByYear\r\n ? this.documents.filter(x => x.yearString == this.filterModel.year)\r\n : this.documents;\r\n \r\n return docs.distinctBy(nameof('monthString'))\r\n .map((document: DocumentElem) => new BaseDropdownItem(document.monthString, this.applicationConfig.monthsMap.get(document.monthString)));\r\n }\r\n\r\n private getAvYears(): BaseDropdownItem[] {\r\n return this.documents\r\n .distinctBy(nameof('yearString'))\r\n .map((document: DocumentElem) => new BaseDropdownItem(document.yearString, document.yearString));\r\n }\r\n\r\n private setAvailableYears(): void {\r\n this.years = [new BaseDropdownItem('', this.translocoService.translate('common.select-year'))].concat(...this.getAvYears());\r\n }\r\n\r\n private setAvailableMonths(): void {\r\n this.months = [new BaseDropdownItem('', this.translocoService.translate('common.select-month'))].concat(...this.getAvMonths());\r\n }\r\n\r\n public onClickDownloadFile(doc: DocumentElem): void {\r\n doc.isDownloading = true;\r\n this.giftCardActivationService.getFile(this.authRestService.userValue.userID, doc.fullName).subscribe((res: GetFileResponse) => {\r\n doc.isDownloading = false;\r\n\r\n if (res.executionStatus != 1) {\r\n this.notificationService.addError(this.translocoService.translate('features.documents.errors.download'));\r\n return;\r\n }\r\n\r\n this.downloadFile(res.file, doc);\r\n });\r\n }\r\n\r\n downloadFile(base64String, file: DocumentElem) {\r\n const source = `data:application/octet-stream;base64,${base64String}`;\r\n const link = document.createElement(\"a\");\r\n link.href = source;\r\n link.download = `${file.name}.${file.extension}`\r\n link.click();\r\n }\r\n}\r\n","

{{ 'features.documents.documents' | transloco }}

\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 {{ 'features.documents.fields.report' | transloco }}\r\n \r\n \r\n {{ 'features.documents.fields.date' | transloco }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ document.name }}\r\n {{ document.dateString }}\r\n \r\n \r\n {{ document.extension }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { DocumentListComponent } from './component/document-list/document-list.component';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { DocumentsAuthGuard } from '@core/guards/documents-auth.guard';\r\n\r\nconst routes: Routes = [\r\n { \r\n path: 'documents', data: { id: 'documents' }, component: DocumentListComponent,\r\n canLoad: [DocumentsAuthGuard],\r\n canActivate: [DocumentsAuthGuard],\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes), SharedModule],\r\n exports: [RouterModule, SharedModule]\r\n})\r\nexport class DocumentsRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DocumentElemComponent } from './component/document-elem/document-elem.component';\r\nimport { DocumentListComponent } from './component/document-list/document-list.component';\r\nimport { DocumentsRoutingModule } from './documents-routing.module';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { SharedModule } from 'primeng/api';\r\n\r\n@NgModule({\r\n declarations: [DocumentElemComponent, DocumentListComponent],\r\n imports: [\r\n CommonModule,\r\n SharedModule,\r\n DocumentsRoutingModule,\r\n TranslocoRootModule\r\n ],\r\n exports: [DocumentElemComponent, DocumentListComponent, DocumentsRoutingModule, SharedModule]\r\n})\r\nexport class DocumentsModule { }\r\n","export class FileExtensionHelper {\r\n public iconsMap : Map;\r\n public static getInstance(): FileExtensionHelper {\r\n if(!this.instance)\r\n this.instance = new this();\r\n return this.instance;\r\n }\r\n private static instance: FileExtensionHelper;\r\n private constructor() { \r\n this.iconsMap = FileExtensionPrimeNgIcoMapBuilder.getInstance().build();\r\n }\r\n public getIco(extensionName: string): string{\r\n try {\r\n return this.iconsMap.get(extensionName);\r\n } catch(error){\r\n console.error(error + ' in FileExtensionHelper.getIco()');\r\n return FileExtensionPrimeNgIcoMapBuilder.DEFAULT_FILE_ICO;\r\n }\r\n }\r\n}\r\nexport class FileExtensionPrimeNgIcoMapBuilder\r\n{\r\n public static readonly DEFAULT_FILE_ICO = \"pi-file\";\r\n public static getInstance(): FileExtensionPrimeNgIcoMapBuilder {\r\n if(!this.instance)\r\n this.instance = new this();\r\n return this.instance;\r\n }\r\n \r\n public build(): Map\r\n {\r\n const map = new Map();\r\n map.set('csv','pi-file-excel');\r\n map.set('xlsx','pi-file-excel');\r\n map.set('xls','pi-file-excel');\r\n map.set('pdf', 'pi-file-pdf');\r\n map.set('txt', 'pi-file');\r\n map.set('xml', 'pi-file');\r\n map.set('json', 'pi-file');\r\n return map;\r\n }\r\n\r\n private constructor(){ }\r\n private static instance: FileExtensionPrimeNgIcoMapBuilder;\r\n}","import { FileExtensionHelper } from '../helpers/file-extension-helper';\r\nimport { DateTime } from 'luxon';\r\nimport * as moment from 'moment';\r\n\r\nexport class DocumentElem {\r\n public fullName: string = \"\";\r\n public name: string = \"\";\r\n public date: DateTime = new Date();\r\n public extension: string = \"\";\r\n public isDownloading: boolean;\r\n\r\n public setFullName(fullName: string): DocumentElem {\r\n this.fullName = fullName;\r\n return this;\r\n }\r\n\r\n public setName(name: string): DocumentElem {\r\n this.name = name;\r\n return this;\r\n }\r\n\r\n public setDate(date: DateTime): DocumentElem {\r\n this.date = date;\r\n return this;\r\n }\r\n\r\n public setExtension(extension: string): DocumentElem {\r\n this.extension = extension; \r\n return this;\r\n }\r\n\r\n public get ico() : string {\r\n return FileExtensionHelper\r\n .getInstance()\r\n .getIco(this.extension);\r\n }\r\n\r\n public get dateString(): string {\r\n return moment(this.date).format('MM/DD/YYYY');\r\n }\r\n\r\n public get monthString(): string {\r\n const month = this.date.getMonth() + 1;\r\n return month.toString();\r\n }\r\n\r\n public get yearString(): string {\r\n return this.date.getFullYear().toString();\r\n }\r\n\r\n public get year(): number {\r\n return this.date.getFullYear();\r\n }\r\n}","import { nameof } from '@core/helpers/extensions';\r\n\r\nexport class DocumentListFilterModel {\r\n public year: string = '';\r\n public month: string = '';\r\n get isFilteredByYear(): boolean { return this.isFilteredBy(nameof('year') ) }\r\n private isFilteredBy(fieldName: string): boolean { return this[fieldName] && this[fieldName] != ''; }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class DocumentModel {\r\n constructor(\r\n public fullName: string = '',\r\n public name: string = '',\r\n public extension: string = '',\r\n public modifiedDate: Date\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class DocumentModelAdapter implements Adapter {\r\n adapt(item: any): DocumentModel {\r\n return item ? new DocumentModel(\r\n item.FullName, \r\n item.Name,\r\n item.Extension,\r\n new Date(item.ModifiedDate)\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { DocumentModel, DocumentModelAdapter } from \"./document-model\";\r\n\r\nexport class GetDocumentsResponse {\r\n constructor(\r\n public errormessage: string,\r\n public executionStatus: number,\r\n public documents: DocumentModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GetDocumentsResponseAdapter implements Adapter {\r\n adapt(item: any): GetDocumentsResponse {\r\n return item ? new GetDocumentsResponse(\r\n item.ErrorMessage,\r\n item.Status,\r\n item.Collection?.map(i => new DocumentModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class GetFileResponse {\r\n constructor(\r\n public errormessage: string,\r\n public executionStatus: number,\r\n public file: string\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GetFileResponseAdapter implements Adapter {\r\n adapt(item: any): GetFileResponse {\r\n return item ? new GetFileResponse(\r\n item.ErrorMessage,\r\n item.Status,\r\n item.File\r\n ) : null;\r\n }\r\n}","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { GiftCardActivationModel } from '@features/gift-card-activation/model/gift-card-activation.model';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\n\r\n@Component({\r\n selector: 'app-gift-card-activation-range',\r\n templateUrl: './gift-card-activation-range.component.html',\r\n styleUrls: ['./gift-card-activation-range.component.scss']\r\n})\r\nexport class GiftCardActivationRangeComponent implements OnInit {\r\n @Output() activatePopupEvent: EventEmitter = new EventEmitter();\r\n public form: FormGroup;\r\n public cards: GiftCardActivationModel[] = [];\r\n private authService: AuthRestService;\r\n\r\n constructor(private readonly fb : FormBuilder,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private translocoService: TranslocoService,\r\n private authRestService: AuthRestService) {\r\n this.authService = authRestService;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.form = this.fb.group({\r\n numberFrom: [null, Validators.required], \r\n numberTo: [null, Validators.required], \r\n value: [null]\r\n });\r\n }\r\n\r\n public emitActivatePopupEvent($event: Event): void {\r\n let sum: number = this.getValidCards().map(card => Math.round((Number(card.value) + Number.EPSILON) * 100) / 100).reduce((total, num) => total + num);\r\n\r\n if (isNaN(sum)) {\r\n sum = 0;\r\n }\r\n\r\n let valuesSum: string = sum.toFixed(2);\r\n \r\n if (this.cards && this.getValidCards().length > 0)\r\n {\r\n this.activatePopupEvent.emit({\r\n event: $event,\r\n cardsAmount: this.getValidCards().length,\r\n valuesSum: valuesSum\r\n }\r\n );\r\n }\r\n }\r\n\r\n public valueChanged() {\r\n const numberFrom = this.form.get('numberFrom').value;\r\n const numberTo = this.form.get('numberTo').value;\r\n\r\n this.UpdateValue();\r\n }\r\n\r\n public checkNumbers($event) {\r\n this.cards = [];\r\n const numberFrom = this.form.get('numberFrom').value;\r\n const numberTo = this.form.get('numberTo').value;\r\n \r\n if (numberFrom && numberTo) {\r\n this.giftCardActivationService.getCardRange(numberFrom, numberTo, this.authService.userValue.userID).subscribe((res) => {\r\n if (!res || res.executionStatus === 1) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-not-exists'));\r\n this.form.reset();\r\n return;\r\n }\r\n\r\n if (res.executionStatus === 2) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.cards-from-different-batches'));\r\n this.form.reset();\r\n return;\r\n }\r\n\r\n if (res.executionStatus === 3) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.cannot-activate-card'));\r\n this.form.reset();\r\n return;\r\n }\r\n\r\n if (!res.cards) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.no-cards-to-activate'));\r\n this.form.reset();\r\n return;\r\n }\r\n\r\n if (res.cards[0].cardValue) {\r\n this.form.get('value').patchValue(res.cards[0].cardValue, {emitEvent: true});\r\n this.form.get('value').disable();\r\n } else {\r\n this.form.get('value').patchValue(null, {emitEvent: true});\r\n this.form.get('value').enable();\r\n }\r\n\r\n res.cards.forEach(c => this.cards.push(new GiftCardActivationModel(c.cardNumber, '', c.cardValue, true)))\r\n this.cards.forEach(c => c.canActivate = true)\r\n\r\n this.UpdateValue();\r\n }\r\n );\r\n }\r\n }\r\n\r\n public UpdateValue() {\r\n this.cards.forEach(c => {\r\n if (!this.form.get('value').value || this.form.get('value').value < 0)\r\n c.value = 0;\r\n\r\n else\r\n c.value = this.form.get('value').value;\r\n });\r\n }\r\n\r\n public clearForm () {\r\n this.form.reset();\r\n this.cards = [];\r\n }\r\n\r\n public getValidCards(): GiftCardActivationModel[] {\r\n return this.cards.filter(c => c.canActivate);\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 { Component, OnInit, Input, Output } from '@angular/core';\r\nimport { GiftCardActivationModel } from '@features/gift-card-activation/model/gift-card-activation.model';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\n\r\n@Component({\r\n selector: 'app-gift-card-activation-elem',\r\n templateUrl: './gift-card-activation-elem.component.html',\r\n styleUrls: ['./gift-card-activation-elem.component.scss']\r\n})\r\n\r\nexport class GiftCardActivationElemComponent implements OnInit {\r\n public form: FormGroup;\r\n @Output() newCardEvent = new EventEmitter();\r\n @Output() editCardEvent = new EventEmitter();\r\n @Input() model: GiftCardActivationModel;\r\n @Input() isLast: boolean;\r\n public showAddButton = false;\r\n private authService: AuthRestService;\r\n\r\n constructor(\r\n private readonly fb : FormBuilder,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private translocoService: TranslocoService,\r\n private authRestService: AuthRestService\r\n ) { \r\n this.authService = authRestService;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.form = this.fb.group({\r\n number: [null, Validators.required], \r\n value: [null]\r\n });\r\n }\r\n\r\n public numberChanged() {\r\n if (!this.model.confirmed) {\r\n this.model.number = this.form.get('number').value;\r\n }\r\n\r\n if (!this.model.number || this.model.number == '') {\r\n this.model.canActivate = false;\r\n return;\r\n }\r\n\r\n this.editCardEvent.emit(this.model);\r\n }\r\n \r\n public valueChanged() {\r\n if (!this.model.confirmed) {\r\n this.model.number = this.form.get('number').value;\r\n }\r\n\r\n if (this.form.get('value').value < 0) {\r\n this.form.get('value').patchValue(0);\r\n }\r\n this.model.value = this.form.get('value').value;\r\n this.editCardEvent.emit(this.model);\r\n }\r\n\r\n public newCard($event) {\r\n this.model.confirmed = true;\r\n this.newCardEvent.emit();\r\n }\r\n\r\n public checkNumber($event) {\r\n const number = this.form.get('number').value;\r\n const value = this.form.get('value').value;\r\n \r\n if (number) {\r\n this.giftCardActivationService.getCard(number, this.authService.userValue.userID).subscribe((res) => {\r\n\r\n if (!res) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-not-exists'));\r\n this.model.canActivate = false;\r\n return;\r\n }\r\n\r\n if (res.executionStatus == 1) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-already-activated'));\r\n this.model.canActivate = false;\r\n return;\r\n }\r\n\r\n if (res.executionStatus == 2) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.cannot-activate-card'));\r\n this.model.canActivate = false;\r\n return;\r\n }\r\n\r\n if (res.cards === undefined) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-not-exists'));\r\n this.model.canActivate = false;\r\n return;\r\n }\r\n \r\n if (res.cards[0].cardValue) {\r\n this.form.get('value').patchValue(res.cards[0].cardValue, {emitEvent: true});\r\n this.form.get('value').disable();\r\n } else {\r\n this.form.get('value').enable();\r\n }\r\n\r\n this.model.canActivate = true;\r\n this.showAddButton = true;\r\n\r\n this.editCardEvent.emit(this.model);\r\n });\r\n }\r\n else {\r\n this.form.get('value').enable();\r\n this.form.reset();\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 { Component, OnInit, Output} from '@angular/core';\r\nimport { GiftCardActivationModel } from '../../model/gift-card-activation.model';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\n@Component({\r\n selector: 'app-gift-card-activation-single',\r\n templateUrl: './gift-card-activation-single.component.html',\r\n styleUrls: ['./gift-card-activation-single.component.scss']\r\n})\r\nexport class GiftCardActivationSingleComponent implements OnInit {\r\n @Output() activatePopupEvent: EventEmitter = new EventEmitter();\r\n public cards: GiftCardActivationModel[] = [];\r\n public loading: boolean = false;\r\n public submitted: boolean = false;\r\n public eventData: string;\r\n \r\n constructor(private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private translocoService: TranslocoService) { }\r\n\r\n ngOnInit(): void {\r\n this.pushNewCard();\r\n this.giftCardActivationService.completed$.subscribe((cardNumbers) => {\r\n if (cardNumbers) {\r\n this.cards = this.cards.filter(o => !cardNumbers.includes(o.number));\r\n }\r\n })\r\n }\r\n public submit(): void { }\r\n\r\n public emitActivatePopupEvent($event: Event): void {\r\n if (this.anyCardValid())\r\n {\r\n if (this.cards.length === this.getValidCards().length) {\r\n this.cards.forEach((c) => {\r\n c.confirmed = true;\r\n })\r\n }\r\n\r\n let sum: number = this.getValidCards().map(card => Math.round((Number(card.value) + Number.EPSILON) * 100) / 100).reduce((total, num) => total + num);\r\n\r\n if (isNaN(sum)) {\r\n sum = 0;\r\n }\r\n \r\n let valuesSum: string = sum.toFixed(2);\r\n\r\n this.activatePopupEvent.emit({\r\n event: $event,\r\n cardsAmount: this.getValidCards().length,\r\n valuesSum: valuesSum\r\n }\r\n );\r\n }\r\n }\r\n\r\n public pushNewCard(): void {\r\n this.cards.push(new GiftCardActivationModel(''));\r\n }\r\n\r\n public editCard($event: GiftCardActivationModel): void {\r\n let cardsFiltered: GiftCardActivationModel[] = this.cards.filter(c => c.number === $event.number);\r\n\r\n if (cardsFiltered != undefined && cardsFiltered.length > 1) {\r\n cardsFiltered[cardsFiltered.length - 1].canActivate= false;\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-already-exists-onlist'));\r\n return;\r\n }\r\n\r\n if (cardsFiltered[0]) {\r\n cardsFiltered[0].value = $event.value;\r\n }\r\n else {\r\n cardsFiltered[0].value = null;\r\n }\r\n }\r\n\r\n private anyCardValid(): boolean {\r\n return this.getValidCards().length > 0;\r\n }\r\n\r\n public getValidCards(): GiftCardActivationModel[] {\r\n return this.cards.filter(c => c.canActivate);\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 { Component, OnInit, Output } from '@angular/core';\r\nimport { GiftCardActivationTableElemModel } from '@features/gift-card-activation/model/gift-card-activation-table-elem-model';\r\nimport { EventEmitter } from '@angular/core';\r\nimport { GiftCardActivationService } from '@features/gift-card-activation/gift-card-activation.service';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { tap } from 'rxjs/internal/operators/tap';\r\nimport { from } from 'rxjs/internal/observable/from';\r\nimport { concatMap, toArray } from 'rxjs/operators';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\n@Component({\r\n selector: 'app-gift-card-activation-table',\r\n templateUrl: './gift-card-activation-table.component.html',\r\n styleUrls: ['./gift-card-activation-table.component.scss']\r\n})\r\nexport class GiftCardActivationTableComponent implements OnInit {\r\n @Output() activatePopupEvent: EventEmitter = new EventEmitter();\r\n public transactions : GiftCardActivationTableElemModel[];\r\n\r\n constructor(private giftCardActivationService : GiftCardActivationService,\r\n private authRestService: AuthRestService,\r\n private notificationService: NotificationService,\r\n private translocoService: TranslocoService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.fillModel();\r\n this.giftCardActivationService.completed$.subscribe((cardNumbers) => {\r\n if (cardNumbers) {\r\n this.transactions = this.transactions.filter(o => !cardNumbers.includes(o.cardNumber));\r\n }\r\n });\r\n }\r\n\r\n public emitActivatePopupEvent($event: Event): void {\r\n this.checkCards().subscribe(_ => {\r\n if (this.allTransactionsValid()) {\r\n let sum: number = this.getValidTransactions().map(card => Math.round((Number(card.transactionValue) + Number.EPSILON) * 100) / 100).reduce((total, num) => total + num);\r\n\r\n if (isNaN(sum)) {\r\n sum = 0;\r\n }\r\n \r\n let valuesSum: string = sum.toFixed(2);\r\n\r\n this.activatePopupEvent.emit(\r\n { \r\n event: $event, \r\n cardsAmount: this.getValidTransactions().length, \r\n valuesSum: valuesSum\r\n }\r\n );\r\n }\r\n });\r\n }\r\n\r\n private fillModel() : void {\r\n this.giftCardActivationService.getTransactions(this.authRestService.userValue.userID).subscribe((data: any[]) => {\r\n this.transactions = data;\r\n });\r\n }\r\n\r\n private allTransactionsValid(): boolean { \r\n if (this.getFilledTransactions().filter(c => c.executionStatus == 1).length > 0) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-already-activated'));\r\n return false;\r\n }\r\n\r\n if (this.getFilledTransactions().filter(c => c.executionStatus == 3).length > 0) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.card-not-exists'));\r\n return false;\r\n }\r\n\r\n if (this.getFilledTransactions().filter(c => c.executionStatus != 0).length > 0) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.cannot-activate-card'));\r\n return false;\r\n }\r\n\r\n return this.getFilledTransactions().filter(c => c.canActivate).length > 0;\r\n }\r\n\r\n private getFilledTransactions(): GiftCardActivationTableElemModel[] {\r\n return this.transactions.filter(t => t.cardNumber !== '' && t.cardNumber !== null);\r\n }\r\n\r\n private checkCards() {\r\n for (let t of this.transactions) {\r\n t.canActivate = null;\r\n t.executionStatus = 0;\r\n }\r\n \r\n return from(this.getFilledTransactions()).pipe(\r\n concatMap(card => {\r\n return this.giftCardActivationService.getCard(card.cardNumber, this.authRestService.userValue.userID, card.batchID).pipe(\r\n tap((res) => {\r\n card.executionStatus = res.executionStatus;\r\n card.canActivate = (res && this.transactions.filter(x => x.cardNumber == card.cardNumber).length == 1) && (res.executionStatus == 0) && res.cards !== undefined && res.cards[0].batchID == card.batchID;\r\n })\r\n );\r\n }),\r\n toArray()\r\n )\r\n }\r\n\r\n public getValidTransactions() {\r\n return this.transactions.filter(t => t.canActivate);\r\n }\r\n}","\r\n \r\n \r\n {{ 'features.gift-card-activation.table.fields.transaction-number' | transloco }}\r\n {{ 'features.gift-card-activation.table.fields.value' | transloco }}\r\n {{ 'features.gift-card-activation.table.fields.batch' | transloco }}\r\n {{ 'features.gift-card-activation.table.fields.template' | transloco }}\r\n {{ 'features.gift-card-activation.table.fields.shippingAddress' | transloco }}\r\n {{ 'features.gift-card-activation.table.fields.card-number' | transloco }}\r\n \r\n \r\n \r\n \r\n {{ card.transactionNumber }}\r\n {{ card.transactionValue }}\r\n {{ card.batch }}\r\n \r\n
\r\n \r\n
\r\n \r\n {{ card.shippingAddress }}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ConfirmationService } from 'primeng/api';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { GiftCardActivationSingleComponent } from './gift-card-activation-single/gift-card-activation-single.component';\r\nimport { GiftCardActivationTableComponent } from './gift-card-activation-table/gift-card-activation-table.component';\r\nimport { NotificationService } from '@shared/notification/notification.service';\r\nimport { GiftCardActivationModel } from '../model/gift-card-activation.model';\r\nimport { GiftCardActivationService } from '../gift-card-activation.service';\r\nimport { forkJoin, Observable, of } from 'rxjs';\r\nimport { GiftCardActivatedModel } from '../model/gift-card-activated-model';\r\nimport { GiftCardActivationRangeComponent } from './gift-card-activation-range/gift-card-activation-range.component';\r\nimport { AuthRestService } from '@api/rest/auth/auth.rest.service';\r\nimport { map, tap } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-gift-card-activation',\r\n templateUrl: './gift-card-activation.component.html',\r\n styleUrls: ['./gift-card-activation.component.scss']\r\n})\r\nexport class GiftCardActivationComponent implements OnInit {\r\n @ViewChild('single', {static: false}) private giftCardActivationSingleComponent: GiftCardActivationSingleComponent;\r\n @ViewChild('table', {static: false}) private giftCardActivationTableComponent: GiftCardActivationTableComponent;\r\n @ViewChild('range', {static: false}) private giftCardActivationRangeComponent: GiftCardActivationRangeComponent;\r\n\r\n private authService: AuthRestService;\r\n public index = 0;\r\n cardsToActivate = [];\r\n\r\n constructor(\r\n private confirmationService: ConfirmationService, \r\n private translocoService: TranslocoService,\r\n private giftCardActivationService: GiftCardActivationService,\r\n private notificationService: NotificationService,\r\n private authRestService: AuthRestService) { \r\n this.authService = authRestService;\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n public activatePopup($event): void {\r\n this.confirmationService.confirm({\r\n target: $event.event.target,\r\n message: this.buildPopupActivateMessage($event),\r\n accept: () => this.tryActivate(),\r\n reject: () => {}\r\n });\r\n }\r\n \r\n private buildPopupActivateMessage(data) {\r\n const cardsAmount = data.cardsAmount ?? 0;\r\n const value = data.valuesSum ?? 0;\r\n\r\n return `
${this.translocoService.translate('features.gift-card-activation.cards')}: ${cardsAmount}
Value: ${value}
\r\n
\r\n
${this.translocoService.translate('shared.modal.operation-irreversible')}
`;\r\n }\r\n\r\n private tryActivate() {\r\n const cards: GiftCardActivationModel[] = []; \r\n\r\n if (this.giftCardActivationSingleComponent && this.index === 0) {\r\n if (!this.giftCardActivationSingleComponent.getValidCards().filter((c) => c.number == '').length) {\r\n this.giftCardActivationSingleComponent.pushNewCard();\r\n }\r\n\r\n const singleCards = this.giftCardActivationSingleComponent.getValidCards()\r\n .filter(o => o.number && o.number.length && o.confirmed);\r\n cards.push(...singleCards);\r\n }\r\n\r\n if (this.giftCardActivationRangeComponent && this.index === 1) {\r\n if (!this.giftCardActivationRangeComponent.getValidCards().filter((c) => c.number == '').length) {\r\n \r\n const rangeCards = this.giftCardActivationRangeComponent.cards\r\n .filter(o => o.number && o.number.length && o.confirmed);\r\n cards.push(...rangeCards);\r\n }\r\n }\r\n\r\n if (this.giftCardActivationTableComponent && this.index === 2) {\r\n const tableCards = this.giftCardActivationTableComponent.getValidTransactions()\r\n .filter(o => o.cardNumber && o.cardNumber.length)\r\n .map(transaction => new GiftCardActivationModel(transaction.cardNumber, transaction.cardOperationID, transaction.transactionValue));\r\n cards.push(...tableCards);\r\n }\r\n\r\n if (!cards.length) {\r\n this.notificationService.addError(this.translocoService.translate('features.gift-card-activation.messages.no-cards'));\r\n return;\r\n }\r\n\r\n const list: Observable[] = [];\r\n this.giftCardActivationService.activateCardList(cards, this.authService.userValue.userID).subscribe(\r\n (res) => {\r\n this.giftCardActivationService.setCardActivated(res.CardList.map(i => i.CardNumber));\r\n this.notificationService.addSuccess(this.translocoService.translate('common.messages.operation-completed'));\r\n }\r\n );\r\n\r\n if (this.giftCardActivationRangeComponent && this.index === 1) {\r\n this.giftCardActivationRangeComponent.clearForm();\r\n }\r\n }\r\n}","
\r\n

{{ 'features.gift-card-activation.gift-card-activation' | transloco }}

\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 { NgModule } from '@angular/core';\r\nimport { GiftCardActivationComponent } from './component/gift-card-activation.component';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n// import { PrimengModule } from '@shared/primeng/primeng.module';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { GiftCardActivationAuthGuard } from '@core/guards/gift-card-activation-auth.guard';\r\n\r\nconst routes: Routes = [\r\n { \r\n path: 'gift-card-activation', data: { id: 'gift-card-activation' }, component: GiftCardActivationComponent,\r\n canLoad: [GiftCardActivationAuthGuard],\r\n canActivate: [GiftCardActivationAuthGuard],\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes), SharedModule],\r\n exports: [RouterModule]\r\n})\r\nexport class GiftCardActivationRoutingModuleModule { }\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GiftCardActivationSingleComponent } from './component/gift-card-activation-single/gift-card-activation-single.component';\r\nimport { GiftCardActivationComponent } from './component/gift-card-activation.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { GiftCardActivationRoutingModuleModule } from './gift-card-activation-routing-module.module';\r\nimport { SharedModule } from '@shared/shared.module';\r\nimport { GiftCardActivationElemComponent } from './component/gift-card-activation-single/gift-card-activation-elem/gift-card-activation-elem.component';\r\nimport { GiftCardActivationTableComponent } from './component/gift-card-activation-table/gift-card-activation-table.component';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { NotificationModule } from '@shared/notification';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { GiftCardActivationRangeComponent } from './component/gift-card-activation-range/gift-card-activation-range.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n GiftCardActivationSingleComponent, \r\n GiftCardActivationComponent, \r\n GiftCardActivationElemComponent, \r\n GiftCardActivationTableComponent,\r\n GiftCardActivationRangeComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n GiftCardActivationRoutingModuleModule,\r\n RouterModule,\r\n SharedModule,\r\n TranslocoRootModule,\r\n NotificationModule,\r\n NgxMaskModule.forRoot()\r\n ],\r\n exports: [GiftCardActivationComponent, RouterModule]\r\n})\r\nexport class GiftCardActivationModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { SimpleResponse } from '@api/model/response';\r\nimport { GiftCardActivationRestService } from '@api/rest/gift-card-activation/gift-card-activation-rest.service';\r\nimport { GetActivationHistoryResponse } from '@features/card-activation-history/model/get-activation-history-response';\r\nimport { ClientModel } from '@features/clients/client-model';\r\nimport { CreateClientResponse } from '@features/clients/create-client.response';\r\nimport { GetClientResponse } from '@features/clients/get-client-response';\r\nimport { GetDocumentsResponse } from '@features/documents/model/get-documents-response';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { CardListActivatedResponse } from './model/card-list-activated-response';\r\nimport { GiftCardActivatedModel } from './model/gift-card-activated-model';\r\nimport { GiftCardActivationTableElemModel } from './model/gift-card-activation-table-elem-model';\r\nimport { GiftCardActivationModel } from './model/gift-card-activation.model';\r\nimport { GiftCardRangeResponse } from './model/gift-card-range-response';\r\nimport { GiftCardResponse } from './model/gift-card-response';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GiftCardActivationService {\r\n private completed: Subject = new Subject();\r\n public completed$: Observable;\r\n\r\n constructor(private giftCardActivationRestService: GiftCardActivationRestService) { \r\n this.completed$ = this.completed.asObservable();\r\n }\r\n\r\n public activateCard(cardNumber: string, cardOperationID: string, value: number): Observable {\r\n return this.giftCardActivationRestService.activateCard(cardNumber, cardOperationID, value);\r\n }\r\n\r\n public activateCardList(cardList: GiftCardActivationModel[], userID: string): Observable {\r\n return this.giftCardActivationRestService.activateCardList(cardList, userID);\r\n }\r\n\r\n public getCard(cardNumber: string, userID: string, batchID: string = \"\"): Observable {\r\n return this.giftCardActivationRestService.getCard(cardNumber, userID, batchID);\r\n }\r\n\r\n public getTransactions(userID: string): Observable {\r\n return this.giftCardActivationRestService.getTransactions(userID);\r\n }\r\n\r\n public setCardActivated(cardNumbers: string[]) {\r\n this.completed.next(cardNumbers);\r\n }\r\n\r\n public getCardRange(cardNumberFrom: string, cardNumberTo: string, userID: string): Observable {\r\n return this.giftCardActivationRestService.getCardRange(cardNumberFrom, cardNumberTo, userID);\r\n }\r\n\r\n public getDocuments(userID: string): Observable {\r\n return this.giftCardActivationRestService.getFtpFiles(userID);\r\n }\r\n\r\n public getFile(userID: string, filename: string): Observable {\r\n return this.giftCardActivationRestService.getFile(userID, filename);\r\n }\r\n\r\n public getActivationHistory(userID: string): Observable {\r\n return this.giftCardActivationRestService.getActivationHistory(userID);\r\n }\r\n\r\n public createInvoice(clientId: string, cardActivationHistoryIDList: string[]): Observable {\r\n return this.giftCardActivationRestService.createInvoice(clientId, cardActivationHistoryIDList);\r\n }\r\n\r\n public getInvoice(invoiceID: string): Observable {\r\n return this.giftCardActivationRestService.getInvoice(invoiceID);\r\n }\r\n\r\n public getClient(name: string, taxId: string): Observable {\r\n return this.giftCardActivationRestService.getClient(name, taxId);\r\n }\r\n\r\n public createClient(client: ClientModel): Observable {\r\n return this.giftCardActivationRestService.createClient(client);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { GiftCardActivatedModel } from \"./gift-card-activated-model\";\r\n\r\nexport class CardListActivatedResponse {\r\n constructor(\r\n public ExecutionStatus: string = '',\r\n public ExecutionMessage: string = '',\r\n public CardList: GiftCardActivatedModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class CardListActivatedResponseAdapter implements Adapter {\r\n adapt(item: any): CardListActivatedResponse {\r\n return new CardListActivatedResponse(item.ExecutionStatus, item.ExecutionMessage, item.CardList);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class GiftCardActivatedModel {\r\n constructor(\r\n public ExecutionStatus: string = '',\r\n public ExecutionMessage: string = '',\r\n public CardOperationID: string = '',\r\n public CardNumber: string = ''\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GiftCardActivatedModelAdapter implements Adapter {\r\n adapt(item: any): GiftCardActivatedModel {\r\n return new GiftCardActivatedModel(item.ExecutionStatus, item.ExecutionMessage, item.CardOperationID, item.CardNumber);\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class GiftCardActivationTableElemModel {\r\n constructor(\r\n public cardOperationID: string = '',\r\n public transactionNumber: string = '',\r\n public transactionValue: number,\r\n public transactionDate: Date,\r\n public cardNumber: string = '',\r\n public shippingAddress: string = '',\r\n public batchID: string = '',\r\n public batch: string = '',\r\n public graphicUrl: string = '',\r\n public canActivate: boolean = null,\r\n public executionStatus: number = 0\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GiftCardActivationTableElemModelAdapter implements Adapter {\r\n adapt(item: any): GiftCardActivationTableElemModel {\r\n return new GiftCardActivationTableElemModel(\r\n item.CardOperationID, \r\n item.TransactionNumber, \r\n item.TransactionValue.toFixed(2), \r\n new Date(item.TransactionDate),\r\n item.CardNumber, \r\n item.ShippingAddress,\r\n item.BatchID,\r\n item.Batch,\r\n item.GraphicUrl);\r\n }\r\n}","export class GiftCardActivationModel {\r\n constructor(\r\n public number: string, \r\n public cardOperationId: string = '', \r\n public value?: number,\r\n public confirmed: boolean = false,\r\n public canActivate: boolean = null\r\n ) { }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\n\r\nexport class GiftCardModel {\r\n constructor(\r\n public cardNumber: string = '',\r\n public cardValue: number,\r\n public batchID: string = ''\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GiftCardModelAdapter implements Adapter {\r\n adapt(item: any): GiftCardModel {\r\n return item ? new GiftCardModel(\r\n item.Number, \r\n item.Value ? item.Value.toFixed(2) : null,\r\n item.BatchID\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { GiftCardModel, GiftCardModelAdapter } from \"./gift-card-model\";\r\n\r\nexport class GiftCardRangeResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public cards: GiftCardModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GiftCardRangeResponseAdapter implements Adapter {\r\n adapt(item: any): GiftCardRangeResponse {\r\n return item ? new GiftCardRangeResponse(\r\n item.ExecutionStatus,\r\n item.CardList?.map(i => new GiftCardModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { Adapter } from \"@core/helpers/adapterInterface\";\r\nimport { GiftCardModel, GiftCardModelAdapter } from \"./gift-card-model\";\r\n\r\nexport class GiftCardResponse {\r\n constructor(\r\n public executionStatus: number,\r\n public cards: GiftCardModel[]\r\n ) {}\r\n}\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class GiftCardResponseAdapter implements Adapter {\r\n adapt(item: any): GiftCardResponse {\r\n return item ? new GiftCardResponse(\r\n item.ExecutionStatus,\r\n item.PCCardList?.map(i => new GiftCardModelAdapter().adapt(i))\r\n ) : null;\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss']\r\n})\r\nexport class ModalComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

modal works!

\r\n","export enum ColorEnum {\r\n primary = 'primary',\r\n secondary = 'secondary',\r\n success = 'success',\r\n danger = 'danger',\r\n info = 'info',\r\n light = 'light',\r\n}\r\n","export enum CookieKeyEnum {\r\n user = 'b2b-portal-current-user',\r\n token = 'b2b-portal-token',\r\n}\r\n","export enum SizeEnum {\r\n small = 'sm',\r\n base = 'base',\r\n large = 'lg',\r\n}\r\n","export enum TableFilterConditionEnum {\r\n in = 'in',\r\n contains = 'contains',\r\n equals = 'equals'\r\n}","import {\r\n AfterContentInit,\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n HostBinding,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n// import { TranslocoService } from '@ngneat/transloco';\r\n// import { AppCalendarComponent } from '@shared/calendar/calendar.component';\r\nimport { InputDirective } from '@shared/input/input.directive';\r\nimport { AutoComplete } from 'primeng/autocomplete';\r\nimport { Checkbox } from 'primeng/checkbox';\r\nimport { Dropdown } from 'primeng/dropdown';\r\nimport { InputMask } from 'primeng/inputmask';\r\nimport { InputNumber } from 'primeng/inputnumber';\r\nimport { InputSwitch } from 'primeng/inputswitch';\r\nimport { MultiSelect } from 'primeng/multiselect';\r\nimport { RadioButton } from 'primeng/radiobutton';\r\nimport { SelectButton } from 'primeng/selectbutton';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\n\r\ntype controlType =\r\n | InputDirective\r\n | InputMask\r\n | Dropdown\r\n | MultiSelect\r\n | InputSwitch\r\n | AutoComplete\r\n | SelectButton\r\n // | AppCalendarComponent\r\n | InputNumber\r\n | Checkbox\r\n | RadioButton;\r\n\r\n@Component({\r\n selector: 'app-form-group',\r\n templateUrl: './form-group.component.html',\r\n // tslint:disable-next-line:use-component-view-encapsulation\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FormGroupComponent implements OnInit, AfterContentInit, AfterViewInit, OnDestroy {\r\n @Input() public icon: string = null;\r\n @Input() public hint: string = null;\r\n @Input() public labelText: string = null;\r\n @Input() public hasPlaceholder = false;\r\n public hintText: string = null;\r\n\r\n @ContentChild(Dropdown) public _controlPrimeNgDropdown: Dropdown;\r\n // @ContentChild(AppCalendarComponent) public _controlPrimeNgCalendar: AppCalendarComponent;\r\n @ContentChild(InputSwitch) public _controlPrimeNgInputSwitch: InputSwitch;\r\n @ContentChild(InputMask) public _controlPrimeNgInputMask: InputMask;\r\n @ContentChild(MultiSelect) public _controlPrimeNgMultiselect: MultiSelect;\r\n @ContentChild(AutoComplete) public _controlPrimeNgAutocomplete: AutoComplete;\r\n @ContentChild(SelectButton) public _controlPrimeNgSelectButton: SelectButton;\r\n @ContentChild(RadioButton) public _controlPrimeNgRadioButton: RadioButton;\r\n @ContentChild(InputNumber) public _controlPrimeNgNumber: InputNumber;\r\n @ContentChild(Checkbox) public _controlPrimeNgCheckbox: Checkbox;\r\n @ContentChild(InputDirective) public _controlNonStatic: InputDirective;\r\n @ContentChild(InputDirective, { static: true }) public _controlStatic: InputDirective;\r\n\r\n private readonly _destroyed = new Subject();\r\n\r\n private _label: string = null;\r\n\r\n private readonly _explicitFormFieldControl: controlType;\r\n private _required: boolean;\r\n\r\n private _readonly: boolean;\r\n\r\n constructor(\r\n public _elementRef: ElementRef,\r\n private readonly _changeDetectorRef: ChangeDetectorRef,\r\n private readonly translateService: TranslocoService,\r\n ) {}\r\n\r\n private static isInputControl(obj: controlType): obj is InputDirective {\r\n return obj instanceof InputDirective;\r\n }\r\n\r\n private static isCheckboxControl(obj: controlType): obj is Checkbox {\r\n return obj instanceof Checkbox;\r\n }\r\n\r\n private static isInputMaskControl(obj: controlType): obj is InputMask {\r\n return obj instanceof InputMask;\r\n }\r\n\r\n private static isAutocompleteControl(obj: controlType): obj is AutoComplete {\r\n return obj instanceof AutoComplete;\r\n }\r\n\r\n // private static isCalendarControl(obj: controlType): obj is AppCalendarComponent {\r\n // return obj instanceof AppCalendarComponent;\r\n // }\r\n\r\n private static isRadioButtonControl(obj: controlType): obj is RadioButton {\r\n return obj instanceof RadioButton;\r\n }\r\n\r\n private static isInputNumberControl(obj: controlType): obj is InputNumber {\r\n return obj instanceof InputNumber;\r\n }\r\n\r\n @Input()\r\n public set label(label: string) {\r\n this._label = label;\r\n }\r\n\r\n public get label(): string {\r\n return this._label;\r\n }\r\n\r\n public get required(): boolean {\r\n return this._required;\r\n }\r\n\r\n @Input()\r\n public set required(value: boolean) {\r\n this._required = value;\r\n }\r\n\r\n public get readonly(): boolean {\r\n return this._readonly;\r\n }\r\n\r\n @Input()\r\n public set readonly(value: boolean) {\r\n this._readonly = value;\r\n }\r\n\r\n public get _control(): controlType {\r\n return (\r\n this._explicitFormFieldControl ||\r\n this._controlNonStatic ||\r\n this._controlStatic ||\r\n this._controlPrimeNgDropdown ||\r\n this._controlPrimeNgInputSwitch ||\r\n this._controlPrimeNgInputMask ||\r\n this._controlPrimeNgMultiselect ||\r\n this._controlPrimeNgAutocomplete ||\r\n this._controlPrimeNgSelectButton ||\r\n // this._controlPrimeNgCalendar ||\r\n this._controlPrimeNgRadioButton ||\r\n this._controlPrimeNgNumber ||\r\n this._controlPrimeNgCheckbox\r\n );\r\n }\r\n\r\n @HostBinding('class.is-focused')\r\n public get focused(): boolean {\r\n if (this.hasPlaceholder) {\r\n return true;\r\n } else if (FormGroupComponent.isInputControl(this._control)) {\r\n return this._control.focused;\r\n } else if (FormGroupComponent.isAutocompleteControl(this._control)) {\r\n return this._control.focus;\r\n } \r\n // else if (FormGroupComponent.isCalendarControl(this._control)) {\r\n // return this._control.calendar?.focus;\r\n // } \r\n else if (FormGroupComponent.isInputNumberControl(this._control)) {\r\n return this._control?.focused;\r\n } else if (FormGroupComponent.isInputMaskControl(this._control)) {\r\n return this._control.focused;\r\n } else if (FormGroupComponent.isCheckboxControl(this._control)) {\r\n return this._control.focused;\r\n }\r\n return true;\r\n }\r\n\r\n @HostBinding('class.is-filled')\r\n public get filled(): boolean {\r\n if (FormGroupComponent.isInputControl(this._control)) {\r\n return !this._control.empty;\r\n } else if (FormGroupComponent.isAutocompleteControl(this._control)) {\r\n return this._control.filled !== undefined && this._control.value !== null;\r\n }\r\n // else if (FormGroupComponent.isCalendarControl(this._control)) {\r\n // return this._control.calendar?.filled;\r\n // } \r\n else if (FormGroupComponent.isInputNumberControl(this._control)) {\r\n return this._control?.filled;\r\n } else if (FormGroupComponent.isInputMaskControl(this._control)) {\r\n return this._control.filled;\r\n } else if (FormGroupComponent.isCheckboxControl(this._control)) {\r\n return this._control.checked();\r\n }\r\n return true;\r\n }\r\n\r\n @HostBinding('class.is-required')\r\n public get classRequired(): boolean {\r\n return this.required;\r\n }\r\n\r\n @HostBinding('class.is-readonly')\r\n public get isReadonly(): boolean {\r\n return this._readonly;\r\n }\r\n\r\n public get isRadioButton(): boolean {\r\n return FormGroupComponent.isRadioButtonControl(this._control);\r\n }\r\n\r\n public ngOnInit(): void {\r\n // if (this.hint !== null) {\r\n // //this.translateService.selectTranslate(this.hint).subscribe((el: string) => (this.hintText = el));\r\n // }\r\n\r\n // if (this.label !== null) {\r\n // //this.translateService.selectTranslate(this.label).subscribe((el: string) => (this.labelText = el));\r\n // }\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n this._changeDetectorRef.detectChanges();\r\n }\r\n\r\n public ngAfterContentInit(): void {\r\n const control = this._control;\r\n\r\n if (FormGroupComponent.isInputControl(control)) {\r\n control.stateChanges.subscribe(() => {\r\n this._changeDetectorRef.markForCheck();\r\n });\r\n }\r\n\r\n if (FormGroupComponent.isInputControl(control) && control.ngControl && control.ngControl.valueChanges) {\r\n control.ngControl.valueChanges.pipe(takeUntil(this._destroyed)).subscribe((value: string) => {\r\n if (value === '') {\r\n control.clear();\r\n }\r\n this._changeDetectorRef.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._destroyed.next();\r\n this._destroyed.complete();\r\n }\r\n}\r\n","
\r\n \r\n
\r\n\r\n\r\n\r\n ","export enum IconRootNameEnum {\r\n icon = 'icon',\r\n primeng = 'pi',\r\n}\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { ColorEnum } from '@shared/enums/color.enum';\r\nimport { SizeEnum } from '@shared/enums/size.enum';\r\nimport { IconRootNameEnum } from '@shared/icon/icon-root-name.enum';\r\n\r\n@Component({\r\n selector: 'app-icon',\r\n exportAs: 'appIcon',\r\n template: ``,\r\n})\r\nexport class IconComponent implements OnInit {\r\n private _icon: string;\r\n\r\n private _iconRoot: IconRootNameEnum = IconRootNameEnum.icon;\r\n\r\n private _color: ColorEnum;\r\n\r\n private _size: SizeEnum = SizeEnum.base;\r\n\r\n constructor() {}\r\n @Input()\r\n public get icon(): string {\r\n return this._icon;\r\n }\r\n\r\n public set icon(value: string) {\r\n this._icon = value;\r\n }\r\n\r\n @Input()\r\n public get iconRoot(): string {\r\n return this._iconRoot;\r\n }\r\n\r\n public set iconRoot(value: string) {\r\n this._iconRoot = IconRootNameEnum[value];\r\n }\r\n\r\n @Input()\r\n public get color(): ColorEnum {\r\n return this._color;\r\n }\r\n\r\n public set color(value: ColorEnum) {\r\n this._color = ColorEnum[value];\r\n }\r\n\r\n @Input()\r\n public get size(): SizeEnum {\r\n return this._size;\r\n }\r\n\r\n public set size(value: SizeEnum) {\r\n this._size = SizeEnum[value];\r\n }\r\n\r\n @HostBinding('class')\r\n public get cssClasses(): string {\r\n const cssClasses = [];\r\n\r\n if (this._color) {\r\n cssClasses.push(this._getColorCssClass());\r\n }\r\n cssClasses.push(this._getSizeCssClass());\r\n\r\n return cssClasses.join(' ');\r\n }\r\n\r\n public ngOnInit(): void {}\r\n\r\n private _getColorCssClass(): string {\r\n return `text-${this._color}`;\r\n }\r\n\r\n private _getSizeCssClass(): string {\r\n return `font-size-${this._size}`;\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { IconComponent } from '@shared/icon/icon.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n declarations: [IconComponent],\r\n exports: [IconComponent],\r\n providers: [],\r\n})\r\nexport class IconModule {}\r\n","export * from './icon.module';\r\n","import {\r\n Directive,\r\n ElementRef,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Self,\r\n SimpleChanges,\r\n } from '@angular/core';\r\n import { AbstractControl, NgControl } from '@angular/forms';\r\n import { Subject } from 'rxjs';\r\n \r\n let nextUniqueId = 0;\r\n \r\n @Directive({\r\n selector: 'input[appInput], textarea[appInput], p-inputNumber[appInput]',\r\n exportAs: 'appInput',\r\n })\r\n export class InputDirective implements OnInit, OnChanges, OnDestroy {\r\n public readonly stateChanges: Subject = new Subject();\r\n public focused = false;\r\n \r\n @Input() public labelTrans: string = null;\r\n @Input() public placeholder: string;\r\n protected _inputValueAccessor: { value: string };\r\n protected _uid = `app-input-${nextUniqueId++}`;\r\n protected _disabled = false;\r\n protected _id: string;\r\n protected _type = 'text';\r\n \r\n private _readonly = false;\r\n \r\n constructor(\r\n protected _elementRef: ElementRef,\r\n @Optional() @Self() public ngControl: NgControl,\r\n ) {\r\n this._inputValueAccessor = this._elementRef.nativeElement;\r\n }\r\n \r\n @HostBinding('class.p-inputtext') public get isFormControl(): boolean {\r\n return true;\r\n }\r\n \r\n @HostBinding('attr.required') public get required(): boolean {\r\n return this.isRequired;\r\n }\r\n \r\n @HostBinding('class.is-required') public get classRequired(): boolean {\r\n return this.isRequired;\r\n }\r\n \r\n @HostBinding('attr.readonly') public get attributeReadonly(): string {\r\n return this.readonly ? 'readonly' : null;\r\n }\r\n \r\n public get isRequired(): boolean {\r\n const control = this.ngControl.control;\r\n if (control.validator) {\r\n const validator = control.validator({} as AbstractControl);\r\n if (validator && validator.required) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n \r\n public get empty(): boolean {\r\n return !this.ngControl.value;\r\n }\r\n \r\n @Input()\r\n public get disabled(): boolean {\r\n if (this.ngControl && this.ngControl.disabled !== null) {\r\n return this.ngControl.disabled;\r\n }\r\n return this._disabled;\r\n }\r\n \r\n public set disabled(value: boolean) {\r\n this._disabled = value;\r\n \r\n if (this.focused) {\r\n this.focused = false;\r\n this.stateChanges.next();\r\n }\r\n }\r\n \r\n @Input()\r\n public get id(): string {\r\n return this._id;\r\n }\r\n \r\n public set id(value: string) {\r\n this._id = value || this._uid;\r\n }\r\n \r\n @Input()\r\n public get type(): string {\r\n return this._type;\r\n }\r\n \r\n public set type(value: string) {\r\n this._type = value;\r\n }\r\n \r\n @Input()\r\n public get value(): string {\r\n return this._inputValueAccessor.value;\r\n }\r\n \r\n public set value(value: string) {\r\n value = value === '' ? null : value;\r\n if (value !== this.value) {\r\n this._inputValueAccessor.value = value;\r\n this.stateChanges.next();\r\n }\r\n }\r\n \r\n @Input()\r\n public get readonly(): boolean {\r\n return this._readonly;\r\n }\r\n \r\n public set readonly(value: boolean) {\r\n this._readonly = value;\r\n }\r\n \r\n @HostListener('focus', ['$event.target'])\r\n public onFocus(e: FocusEvent): void {\r\n this._focusChanged(true);\r\n }\r\n \r\n @HostListener('blur', ['$event.target'])\r\n public onBlur(e: Event): void {\r\n this._focusChanged(false);\r\n }\r\n \r\n public ngOnInit(): void {\r\n this.stateChanges.next();\r\n }\r\n \r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.stateChanges.next();\r\n }\r\n \r\n public ngOnDestroy(): void {\r\n this.stateChanges.complete();\r\n }\r\n \r\n public _focusChanged(isFocused: boolean): void {\r\n if (isFocused !== this.focused && (!this.readonly || !isFocused)) {\r\n this.focused = isFocused;\r\n this.stateChanges.next();\r\n }\r\n }\r\n \r\n public clear(): void {\r\n this._inputValueAccessor.value = null;\r\n this.stateChanges.next();\r\n }\r\n }\r\n ","export * from './loader.module';\r\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loader',\r\n templateUrl: './loader.component.html',\r\n})\r\nexport class LoaderComponent implements OnInit {\r\n @Input() public color = 'primary';\r\n @Input() public type = 'default';\r\n\r\n constructor() {}\r\n\r\n @HostBinding('class.overlay')\r\n public get cssClassOverlay(): boolean {\r\n return this.type === 'overlay';\r\n }\r\n\r\n @HostBinding('class.default')\r\n public get cssClassDefault(): boolean {\r\n return this.type === 'default';\r\n }\r\n\r\n public ngOnInit(): void {}\r\n}\r\n","
\r\n \r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { LoaderComponent } from '@shared/loader/loader.component';\r\n\r\n@NgModule({\r\n declarations: [LoaderComponent],\r\n imports: [CommonModule],\r\n exports: [LoaderComponent],\r\n})\r\nexport class LoaderModule {}\r\n","export * from './notification.module';\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MessagesModule } from 'primeng/messages';\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [CommonModule, TranslocoRootModule, MessagesModule, MessageModule],\r\n providers: [],\r\n exports: [MessageModule, MessagesModule],\r\n})\r\nexport class NotificationModule {}\r\n","import { Injectable } from '@angular/core';\r\nimport { TranslocoService } from '@ngneat/transloco';\r\nimport { NotificationModel } from '@shared/notification/notification.model';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationService {\r\n constructor(\r\n private readonly messagesService: MessageService,\r\n private readonly translateService: TranslocoService\r\n ) { }\r\n\r\n public add(message: NotificationModel): void {\r\n this.clear();\r\n this.messagesService.add(message);\r\n setTimeout(() => {\r\n this.clear();\r\n }, 3000);\r\n }\r\n\r\n public clear(): void {\r\n this.messagesService.clear();\r\n }\r\n\r\n public addSuccess(message: string, translate: boolean = true): void {\r\n translate ?\r\n this.translateService.selectTranslate(message).subscribe((text: string) => {\r\n this.add({\r\n severity: 'success',\r\n summary: this.translateService.translate(text)\r\n });\r\n }) : this.add({ severity: 'success', summary: message });\r\n }\r\n\r\n public addError(message: string, translate: boolean = true): void {\r\n translate ?\r\n this.translateService.selectTranslate(message).subscribe((text: string) => {\r\n this.add({\r\n severity: 'error',\r\n summary: this.translateService.translate(text)\r\n });\r\n }) : this.add({ severity: 'error', summary: message });\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { AccordionModule } from 'primeng/accordion';\r\nimport { ConfirmationService } from 'primeng/api';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { CardModule } from 'primeng/card';\r\nimport { ChartModule } from 'primeng/chart';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { ChipsModule } from 'primeng/chips';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { ContextMenuModule } from 'primeng/contextmenu';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { DragDropModule } from 'primeng/dragdrop';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { DynamicDialogModule } from 'primeng/dynamicdialog';\r\nimport { EditorModule } from 'primeng/editor';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { InplaceModule } from 'primeng/inplace';\r\nimport { InputMaskModule } from 'primeng/inputmask';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { KeyFilterModule } from 'primeng/keyfilter';\r\nimport { MenuModule } from 'primeng/menu';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { OverlayPanelModule } from 'primeng/overlaypanel';\r\nimport { PaginatorModule } from 'primeng/paginator';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { SelectButtonModule } from 'primeng/selectbutton';\r\nimport { SliderModule } from 'primeng/slider';\r\nimport { EditableRow, TableModule } from 'primeng/table';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { TreeTableModule } from 'primeng/treetable';\r\nimport { MenubarModule } from 'primeng/menubar';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { TabMenuModule } from 'primeng/tabmenu';\r\nimport { ConfirmPopupModule } from 'primeng/confirmpopup';\r\nimport { ImageModule } from 'primeng/image';\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule,\r\n AutoCompleteModule,\r\n ConfirmDialogModule,\r\n ContextMenuModule,\r\n DialogModule,\r\n DropdownModule,\r\n DynamicDialogModule,\r\n InputSwitchModule,\r\n InputTextModule,\r\n MessageModule,\r\n MessagesModule,\r\n MultiSelectModule,\r\n OverlayPanelModule,\r\n RadioButtonModule,\r\n SelectButtonModule,\r\n SliderModule,\r\n TableModule,\r\n ToastModule,\r\n TooltipModule,\r\n TreeTableModule,\r\n ChipsModule,\r\n KeyFilterModule,\r\n InputTextareaModule,\r\n PaginatorModule,\r\n CardModule,\r\n InplaceModule,\r\n InputMaskModule,\r\n DragDropModule,\r\n AccordionModule,\r\n InputNumberModule,\r\n MenuModule,\r\n EditorModule,\r\n TabViewModule,\r\n CheckboxModule,\r\n ChartModule,\r\n FileUploadModule,\r\n MenubarModule,\r\n SidebarModule,\r\n TabMenuModule,\r\n ConfirmPopupModule,\r\n ImageModule\r\n ],\r\n exports: [\r\n AutoCompleteModule,\r\n ConfirmDialogModule,\r\n ContextMenuModule,\r\n DialogModule,\r\n DropdownModule,\r\n DynamicDialogModule,\r\n InputSwitchModule,\r\n InputTextModule,\r\n MessageModule,\r\n MessagesModule,\r\n MultiSelectModule,\r\n OverlayPanelModule,\r\n RadioButtonModule,\r\n SelectButtonModule,\r\n SliderModule,\r\n TableModule,\r\n ToastModule,\r\n TooltipModule,\r\n TreeTableModule,\r\n ChipsModule,\r\n KeyFilterModule,\r\n InputTextareaModule,\r\n PaginatorModule,\r\n CardModule,\r\n InplaceModule,\r\n InputMaskModule,\r\n DragDropModule,\r\n AccordionModule,\r\n InputNumberModule,\r\n MenuModule,\r\n EditorModule,\r\n TabViewModule,\r\n CheckboxModule,\r\n ChartModule,\r\n FileUploadModule,\r\n MenubarModule,\r\n SidebarModule,\r\n TabMenuModule,\r\n ConfirmPopupModule,\r\n ImageModule\r\n ],\r\n providers: [EditableRow, ConfirmationService],\r\n})\r\nexport class PrimengModule {}\r\n","import { NgModule, Injectable } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormGroupComponent } from './form/form-group.component';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { SidebarModule } from '@shared/sidebar';\r\nimport { PrimengModule } from './primeng/primeng.module';\r\nimport { LoaderModule } from './loader';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { RippleModule } from 'primeng/ripple';\r\nimport { ImageModule } from 'primeng/image';\r\n\r\n@NgModule({\r\n declarations: [FormGroupComponent],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n SidebarModule,\r\n PrimengModule,\r\n LoaderModule,\r\n ButtonModule,\r\n RippleModule,\r\n ImageModule\r\n ],\r\n exports: [FormGroupComponent, ReactiveFormsModule, PrimengModule, LoaderModule, ButtonModule, RippleModule, ImageModule]\r\n})\r\nexport class SharedModule { }\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-divider',\r\n template: ``,\r\n})\r\nexport class SidebarNavDividerComponent implements OnInit {\r\n @Input() public item: NavItemModel;\r\n\r\n constructor() {}\r\n\r\n public ngOnInit(): void {}\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { CurrentUserViewModel } from '@core/models/current-user.view-model';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\nimport { SidebarNavHelper } from '@shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-dropdown',\r\n template: `\r\n \r\n \r\n {{ 'core.navigation.' + item.id | transloco }}\r\n {{ item.badge.text }}\r\n \r\n \r\n \r\n \r\n `,\r\n styles: ['.nav-dropdown-toggle { cursor: pointer; }', '.nav-dropdown-items { display: block; }'],\r\n providers: [SidebarNavHelper],\r\n})\r\nexport class SidebarNavDropdownComponent {\r\n @Input() public item: NavItemModel;\r\n @Input() public user: CurrentUserViewModel;\r\n\r\n constructor(public helper: SidebarNavHelper) {}\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-sidebar-footer',\r\n template: `\r\n
\r\n \r\n
\r\n `,\r\n})\r\nexport class SidebarFooterComponent {\r\n constructor() {}\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CurrentUserViewModel } from '@core/models/current-user.view-model';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\nimport { SidebarNavHelper } from '@shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-items',\r\n template: `\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\nexport class SidebarNavItemsComponent implements OnInit {\r\n @Input() public items: NavItemModel[];\r\n @Input() public user?: CurrentUserViewModel;\r\n\r\n constructor(public helper: SidebarNavHelper) {}\r\n\r\n public ngOnInit(): void {}\r\n\r\n public isVisible(item: NavItemModel): boolean {\r\n if (item.hasOwnProperty('roles')) {\r\n const userRoles: string[] = this.user.roles;\r\n const itemRoles: string[] = item.roles;\r\n const intersection = userRoles.filter((value: string) => itemRoles.includes(value));\r\n return Boolean(intersection.length);\r\n }\r\n return true;\r\n }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\nimport { SidebarNavHelper } from '@shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-label',\r\n templateUrl: './label.component.html',\r\n})\r\nexport class SidebarNavLabelComponent implements OnInit {\r\n @Input() public item: NavItemModel;\r\n\r\n constructor(public helper: SidebarNavHelper) {}\r\n\r\n public ngOnInit(): void {}\r\n\r\n public getItemClass(): { 'nav-label': boolean; 'active': boolean } {\r\n const labelClass = {\r\n 'nav-label': true,\r\n 'active': true,\r\n };\r\n const itemClass = this.item.class;\r\n labelClass[itemClass] = !!itemClass;\r\n return labelClass;\r\n }\r\n\r\n public getLabelIconClass(): {\r\n 'nav-icon': boolean;\r\n } {\r\n const classes = this.helper.getIconClass(this.item);\r\n const variant = `text-${this.item.label.variant}`;\r\n classes[variant] = !!variant;\r\n const labelClass = this.item.label.class;\r\n classes[labelClass] = !!labelClass;\r\n return classes;\r\n }\r\n}\r\n","\r\n \r\n {{item.id}}\r\n {{ item.badge.text }}\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Component, Inject, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\nimport { SidebarNavHelper } from '@shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-link',\r\n templateUrl: './link.component.html',\r\n providers: [SidebarNavHelper],\r\n})\r\nexport class SidebarNavLinkComponent implements OnInit {\r\n @Input() public item: NavItemModel;\r\n public linkType: string;\r\n public href: string;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private readonly document: Document,\r\n private readonly renderer: Renderer2,\r\n public helper: SidebarNavHelper,\r\n ) {}\r\n\r\n public ngOnInit(): void {\r\n this.linkType = this.getLinkType();\r\n this.href = this.isDisabled() ? '' : this.helper.getPath(this.item);\r\n }\r\n\r\n public getLinkClass(): { 'nav-link': boolean; 'disabled': boolean; 'btn-link': boolean } {\r\n const disabled = this.isDisabled();\r\n const classes = {\r\n 'nav-link': true,\r\n 'disabled': disabled,\r\n 'btn-link': disabled,\r\n };\r\n\r\n if (this.hasVariant()) {\r\n const variant = `nav-link-${this.item.variant}`;\r\n classes[variant] = true;\r\n }\r\n\r\n return classes;\r\n }\r\n\r\n public getLinkType(): string {\r\n return this.isExternalLink() ? 'external' : 'link';\r\n }\r\n\r\n public hasVariant(): boolean {\r\n return !!this.item.variant;\r\n }\r\n\r\n public isDisabled(): boolean {\r\n return this.item.attributes && this.item.attributes.disabled ? true : null;\r\n }\r\n\r\n public isExternalLink(): boolean {\r\n return (this.item.url !== undefined && this.item.url.substring(0, 4)) === 'http';\r\n }\r\n\r\n public hideMobile(): void {\r\n if (this.document.body.classList.contains('sidebar-show')) {\r\n this.renderer.removeClass(this.document.body, 'sidebar-show');\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n {{ 'core.navigation.' + item.id | transloco }}\r\n {{ item.badge.text }}\r\n \r\n \r\n \r\n {{ 'core.navigation.' + item.id | transloco }}\r\n {{ item.badge.text }}\r\n \r\n\r\n","import { Component, ElementRef, Input, OnInit, Renderer2 } from '@angular/core';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav-title',\r\n template: '',\r\n})\r\nexport class SidebarNavTitleComponent implements OnInit {\r\n @Input() public item: NavItemModel;\r\n\r\n constructor(private readonly el: ElementRef, private readonly renderer: Renderer2) {}\r\n\r\n public ngOnInit(): void {\r\n const nativeElement: HTMLElement = this.el.nativeElement;\r\n const name = this.renderer.createText(this.item.name);\r\n\r\n if (this.item.class) {\r\n const classes = this.item.class;\r\n this.renderer.addClass(nativeElement, classes);\r\n }\r\n\r\n if (this.item.wrapper) {\r\n const wrapper = this.renderer.createElement(this.item.wrapper.element);\r\n this.addAttribs(this.item.wrapper.attributes, wrapper);\r\n this.renderer.appendChild(wrapper, name);\r\n this.renderer.appendChild(nativeElement, wrapper);\r\n } else {\r\n this.renderer.appendChild(nativeElement, name);\r\n }\r\n }\r\n\r\n private addAttribs(attribs: {}, element: HTMLElement): void {\r\n if (attribs) {\r\n for (const attr in attribs) {\r\n if (attr === 'style' && typeof attribs[attr] === 'object') {\r\n this.setStyle(attribs[attr], element);\r\n } else if (attr === 'class') {\r\n this.addClass(attribs[attr], element);\r\n } else {\r\n this.setAttrib(attr, attribs[attr], element);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private setStyle(styles: {}, el: HTMLElement): void {\r\n for (const style in styles) {\r\n if (style) {\r\n this.renderer.setStyle(el, style, styles[style]);\r\n }\r\n }\r\n }\r\n\r\n private addClass(classes: string[] | string, el: HTMLElement): void {\r\n const classArray = Array.isArray(classes) ? classes : classes.split(' ');\r\n classArray\r\n .filter((element: string) => element.length > 0)\r\n .forEach((element: string) => {\r\n this.renderer.addClass(el, element);\r\n });\r\n }\r\n\r\n private setAttrib(key: string, value: string, el: HTMLElement): void {\r\n this.renderer.setAttribute(el, key, value);\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appNavDropdown]',\r\n})\r\nexport class NavDropdownDirective {\r\n constructor(private readonly el: ElementRef) {}\r\n\r\n public toggle(): void {\r\n this.el.nativeElement.classList.toggle('open');\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: '[appNavDropdownToggle]',\r\n})\r\nexport class NavDropdownToggleDirective {\r\n constructor(private readonly dropdown: NavDropdownDirective) {}\r\n\r\n @HostListener('click', ['$event'])\r\n public toggleOpen($event: Event): void {\r\n $event.preventDefault();\r\n this.dropdown.toggle();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Route, Router, Routes } from '@angular/router';\r\nimport { NavItemTypeEnum } from '@core/models/nav-item-type.enum';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\n\r\n@Injectable()\r\nexport class SidebarNavHelper {\r\n constructor(private readonly router: Router) {}\r\n\r\n public itemType(item: NavItemModel): NavItemTypeEnum {\r\n if (item.divider) {\r\n return NavItemTypeEnum.divider;\r\n } else if (item.title) {\r\n return NavItemTypeEnum.title;\r\n } else if (item.children) {\r\n return NavItemTypeEnum.dropdown;\r\n } else if (item.label) {\r\n return NavItemTypeEnum.label;\r\n } else if (!Object.keys(item).length) {\r\n return NavItemTypeEnum.empty;\r\n } else {\r\n return NavItemTypeEnum.link;\r\n }\r\n }\r\n\r\n public getClass(item: NavItemModel): string {\r\n const itemType = this.itemType(item);\r\n let itemClass;\r\n itemClass =\r\n itemType in ['divider', 'title']\r\n ? `nav-${itemType}`\r\n : itemType === NavItemTypeEnum.dropdown\r\n ? 'nav-item nav-dropdown'\r\n : 'nav-item';\r\n return item.class ? `${itemClass} ${item.class}` : itemClass;\r\n }\r\n\r\n public isActive(item: NavItemModel): boolean {\r\n if (item.hasOwnProperty('children')) {\r\n return item.children.some((e: NavItemModel) => {\r\n return this.router.isActive(this.getPath(e), false);\r\n });\r\n }\r\n }\r\n\r\n public redirectTo(item: NavItemModel): string {\r\n if (item.hasOwnProperty('redirectTo')) {\r\n const config = this.router.config;\r\n const route = this.findById(config, item.redirectTo) as Route;\r\n return `/${route.path}`;\r\n }\r\n }\r\n\r\n public hasBadge = (item) => Boolean(item.badge);\r\n public hasIcon = (item) => Boolean(item.icon);\r\n\r\n public getIconClass(item: NavItemModel): { 'nav-icon': boolean } {\r\n const classes = {\r\n 'nav-icon': true,\r\n };\r\n const icon = item.icon;\r\n classes[icon] = !!item.icon;\r\n return classes;\r\n }\r\n\r\n public getBadgeClass(item: NavItemModel): { badge: boolean } {\r\n const classes = {\r\n badge: true,\r\n };\r\n const variant = `badge-${item.badge.variant}`;\r\n classes[variant] = !!item.badge.variant;\r\n return classes;\r\n }\r\n\r\n public getPath(item: NavItemModel): string {\r\n const config = this.router.config;\r\n const result = this.findById(config, item.id) as Route;\r\n return result && result.hasOwnProperty('path') ? `/app/${result.path}` : '/404';\r\n }\r\n\r\n public findById(config: Routes, itemId: string): boolean | Route {\r\n if (!Array.isArray(config)) {\r\n return false;\r\n }\r\n for (const e of config) {\r\n if (e.hasOwnProperty('data') && e.data.hasOwnProperty('id') && e.data.id === itemId) {\r\n return e;\r\n } else if (e.hasOwnProperty('children')) {\r\n const child = this.findById(e.children, itemId);\r\n if (child) {\r\n return child;\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, Input, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CurrentUserViewModel } from '@core/models/current-user.view-model';\r\nimport { NavItemModel } from '@core/models/nav-item.model';\r\n\r\n@Component({\r\n selector: 'app-sidebar-nav',\r\n templateUrl: './sidebar-nav.component.html',\r\n})\r\nexport class SidebarNavComponent implements OnChanges {\r\n @Input() public navItems: NavItemModel[];\r\n @Input() public user: CurrentUserViewModel;\r\n\r\n @HostBinding('attr.role') public role = 'nav';\r\n\r\n public navItemsArray: NavItemModel[];\r\n\r\n constructor(public router: Router, private readonly renderer: Renderer2, private readonly hostElement: ElementRef) {\r\n renderer.addClass(hostElement.nativeElement, 'sidebar-nav');\r\n }\r\n\r\n public ngOnChanges(changes: SimpleChanges): void {\r\n this.navItemsArray = JSON.parse(JSON.stringify(this.navItems || []));\r\n }\r\n}\r\n","\r\n\r\n","import { DOCUMENT } from '@angular/common';\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Inject,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n Renderer2,\r\n} from '@angular/core';\r\n\r\nexport const sidebarCssClasses: string[] = [\r\n 'sidebar-show',\r\n 'sidebar-sm-show',\r\n 'sidebar-md-show',\r\n 'sidebar-lg-show',\r\n 'sidebar-xl-show',\r\n];\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n template: ``,\r\n})\r\nexport class SidebarComponent implements OnInit, OnDestroy {\r\n @Input() public compact: boolean;\r\n @Input() public display: string = null;\r\n @Input() public fixed: boolean;\r\n @Input() public offCanvas: boolean;\r\n\r\n private _minimized: boolean;\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private readonly document: Document,\r\n private readonly renderer: Renderer2,\r\n private readonly hostElement: ElementRef,\r\n ) {\r\n renderer.addClass(hostElement.nativeElement, 'sidebar');\r\n }\r\n\r\n @Input()\r\n public get minimized(): boolean {\r\n return this._minimized;\r\n }\r\n\r\n public set minimized(value: boolean) {\r\n this._minimized = value;\r\n this.isMinimized();\r\n }\r\n\r\n public ngOnInit(): void {\r\n this.displayBreakpoint(this.display);\r\n this.isCompact(this.compact);\r\n this.isFixed(this.fixed);\r\n this.isMinimized(this.minimized);\r\n this.isOffCanvas(this.offCanvas);\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this.renderer.removeClass(this.document.body, 'sidebar-fixed');\r\n }\r\n\r\n public isCompact(compact: boolean = this.compact): void {\r\n if (compact) {\r\n this.renderer.addClass(this.document.body, 'sidebar-compact');\r\n }\r\n }\r\n\r\n public isFixed(fixed: boolean = this.fixed): void {\r\n if (fixed) {\r\n this.renderer.addClass(this.document.body, 'sidebar-fixed');\r\n }\r\n }\r\n\r\n public isMinimized(minimized: boolean = this.minimized): void {\r\n if (minimized) {\r\n this.renderer.addClass(this.document.body, 'sidebar-minimized');\r\n } else {\r\n this.renderer.removeClass(this.document.body, 'sidebar-minimized');\r\n }\r\n }\r\n\r\n public isOffCanvas(offCanvas: boolean = this.offCanvas): void {\r\n if (offCanvas) {\r\n this.renderer.addClass(this.document.body, 'sidebar-off-canvas');\r\n }\r\n }\r\n\r\n public displayBreakpoint(display: string = this.display): void {\r\n if (display !== null) {\r\n const cssClass = display ? `sidebar-${display}-show` : sidebarCssClasses[0];\r\n this.renderer.addClass(this.document.body, cssClass);\r\n }\r\n }\r\n}\r\n","export * from './sidebar.module';\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { SidebarNavDividerComponent } from '@shared/sidebar/component/sidebar-nav/component/divider/divider.component';\r\nimport { SidebarNavDropdownComponent } from '@shared/sidebar/component/sidebar-nav/component/dropdown/dropdown.component';\r\nimport { SidebarFooterComponent } from '@shared/sidebar/component/sidebar-nav/component/footer/footer.component';\r\nimport { SidebarNavItemsComponent } from '@shared/sidebar/component/sidebar-nav/component/items/items.component';\r\nimport { SidebarNavLabelComponent } from '@shared/sidebar/component/sidebar-nav/component/label/label.component';\r\nimport { SidebarNavLinkComponent } from '@shared/sidebar/component/sidebar-nav/component/link/link.component';\r\nimport { SidebarNavTitleComponent } from '@shared/sidebar/component/sidebar-nav/component/title/title.component';\r\nimport {\r\n NavDropdownDirective,\r\n NavDropdownToggleDirective,\r\n} from '@shared/sidebar/component/sidebar-nav/directive/sidebar-nav.directive';\r\nimport { SidebarNavHelper } from '@shared/sidebar/component/sidebar-nav/service/sidebar-nav.helper';\r\nimport { SidebarNavComponent } from '@shared/sidebar/component/sidebar-nav/sidebar-nav.component';\r\nimport { SidebarComponent } from '@shared/sidebar/component/sidebar/sidebar.component';\r\nimport { TranslocoRootModule } from '@shared/transloco/transloco-root.module';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@NgModule({\r\n imports: [CommonModule, RouterModule, TooltipModule, TranslocoRootModule],\r\n declarations: [\r\n SidebarComponent,\r\n SidebarNavComponent,\r\n SidebarNavItemsComponent,\r\n SidebarNavDropdownComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavTitleComponent,\r\n NavDropdownDirective,\r\n NavDropdownToggleDirective,\r\n SidebarFooterComponent,\r\n ],\r\n exports: [\r\n SidebarComponent,\r\n SidebarNavComponent,\r\n SidebarNavItemsComponent,\r\n SidebarNavDropdownComponent,\r\n SidebarNavDividerComponent,\r\n SidebarNavLabelComponent,\r\n SidebarNavLinkComponent,\r\n SidebarNavTitleComponent,\r\n NavDropdownDirective,\r\n NavDropdownToggleDirective,\r\n SidebarFooterComponent,\r\n ],\r\n providers: [SidebarNavHelper],\r\n})\r\nexport class SidebarModule {}\r\n","import { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { Injectable, NgModule } from '@angular/core';\r\nimport {\r\n Translation,\r\n translocoConfig,\r\n TranslocoLoader,\r\n TranslocoModule,\r\n TRANSLOCO_CONFIG,\r\n TRANSLOCO_LOADER,\r\n} from '@ngneat/transloco';\r\nimport { TranslocoMessageFormatModule } from '@ngneat/transloco-messageformat';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { environment } from '@environments/environment.prod';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class TranslocoHttpLoader implements TranslocoLoader {\r\n constructor(private readonly http: HttpClient) {}\r\n\r\n public getTranslation(lang: string): Observable {\r\n return this.http.get(`./assets/i18n/${lang}.json`).pipe(\r\n catchError(() => {\r\n return of({});\r\n }),\r\n );\r\n }\r\n}\r\n\r\n@NgModule({\r\n imports: [HttpClientModule, TranslocoMessageFormatModule.init()],\r\n exports: [TranslocoModule],\r\n providers: [\r\n {\r\n provide: TRANSLOCO_CONFIG,\r\n useValue: translocoConfig({\r\n availableLangs: environment.availableLocales,\r\n defaultLang: environment.defaultLocale,\r\n reRenderOnLangChange: true,\r\n prodMode: environment.production,\r\n fallbackLang: environment.defaultLocale,\r\n }),\r\n },\r\n {\r\n provide: TRANSLOCO_LOADER,\r\n useClass: TranslocoHttpLoader,\r\n },\r\n ],\r\n})\r\nexport class TranslocoRootModule {}\r\n","export const environment = {\r\n production: false,\r\n defaultLocale: 'en',\r\n availableLocales: ['en', 'de', 'pl']\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 defaultLocale: 'en',\r\n availableLocales: ['en', 'de', 'pl']\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","var map = {\n\t\"./af\": 2275,\n\t\"./af.js\": 2275,\n\t\"./ar\": 857,\n\t\"./ar-dz\": 1218,\n\t\"./ar-dz.js\": 1218,\n\t\"./ar-kw\": 4754,\n\t\"./ar-kw.js\": 4754,\n\t\"./ar-ly\": 6680,\n\t\"./ar-ly.js\": 6680,\n\t\"./ar-ma\": 2178,\n\t\"./ar-ma.js\": 2178,\n\t\"./ar-sa\": 6522,\n\t\"./ar-sa.js\": 6522,\n\t\"./ar-tn\": 5682,\n\t\"./ar-tn.js\": 5682,\n\t\"./ar.js\": 857,\n\t\"./az\": 164,\n\t\"./az.js\": 164,\n\t\"./be\": 9774,\n\t\"./be.js\": 9774,\n\t\"./bg\": 947,\n\t\"./bg.js\": 947,\n\t\"./bm\": 1832,\n\t\"./bm.js\": 1832,\n\t\"./bn\": 9650,\n\t\"./bn-bd\": 4477,\n\t\"./bn-bd.js\": 4477,\n\t\"./bn.js\": 9650,\n\t\"./bo\": 6005,\n\t\"./bo.js\": 6005,\n\t\"./br\": 1831,\n\t\"./br.js\": 1831,\n\t\"./bs\": 534,\n\t\"./bs.js\": 534,\n\t\"./ca\": 2061,\n\t\"./ca.js\": 2061,\n\t\"./cs\": 4737,\n\t\"./cs.js\": 4737,\n\t\"./cv\": 9720,\n\t\"./cv.js\": 9720,\n\t\"./cy\": 7996,\n\t\"./cy.js\": 7996,\n\t\"./da\": 9528,\n\t\"./da.js\": 9528,\n\t\"./de\": 5915,\n\t\"./de-at\": 9430,\n\t\"./de-at.js\": 9430,\n\t\"./de-ch\": 7978,\n\t\"./de-ch.js\": 7978,\n\t\"./de.js\": 5915,\n\t\"./dv\": 3426,\n\t\"./dv.js\": 3426,\n\t\"./el\": 6616,\n\t\"./el.js\": 6616,\n\t\"./en-au\": 3816,\n\t\"./en-au.js\": 3816,\n\t\"./en-ca\": 2162,\n\t\"./en-ca.js\": 2162,\n\t\"./en-gb\": 3305,\n\t\"./en-gb.js\": 3305,\n\t\"./en-ie\": 1954,\n\t\"./en-ie.js\": 1954,\n\t\"./en-il\": 3060,\n\t\"./en-il.js\": 3060,\n\t\"./en-in\": 9923,\n\t\"./en-in.js\": 9923,\n\t\"./en-nz\": 3540,\n\t\"./en-nz.js\": 3540,\n\t\"./en-sg\": 6505,\n\t\"./en-sg.js\": 6505,\n\t\"./eo\": 1907,\n\t\"./eo.js\": 1907,\n\t\"./es\": 6640,\n\t\"./es-do\": 1246,\n\t\"./es-do.js\": 1246,\n\t\"./es-mx\": 6131,\n\t\"./es-mx.js\": 6131,\n\t\"./es-us\": 6430,\n\t\"./es-us.js\": 6430,\n\t\"./es.js\": 6640,\n\t\"./et\": 2551,\n\t\"./et.js\": 2551,\n\t\"./eu\": 2711,\n\t\"./eu.js\": 2711,\n\t\"./fa\": 2109,\n\t\"./fa.js\": 2109,\n\t\"./fi\": 3390,\n\t\"./fi.js\": 3390,\n\t\"./fil\": 7860,\n\t\"./fil.js\": 7860,\n\t\"./fo\": 8216,\n\t\"./fo.js\": 8216,\n\t\"./fr\": 9291,\n\t\"./fr-ca\": 8527,\n\t\"./fr-ca.js\": 8527,\n\t\"./fr-ch\": 8407,\n\t\"./fr-ch.js\": 8407,\n\t\"./fr.js\": 9291,\n\t\"./fy\": 7054,\n\t\"./fy.js\": 7054,\n\t\"./ga\": 9540,\n\t\"./ga.js\": 9540,\n\t\"./gd\": 3917,\n\t\"./gd.js\": 3917,\n\t\"./gl\": 4198,\n\t\"./gl.js\": 4198,\n\t\"./gom-deva\": 6245,\n\t\"./gom-deva.js\": 6245,\n\t\"./gom-latn\": 8868,\n\t\"./gom-latn.js\": 8868,\n\t\"./gu\": 9652,\n\t\"./gu.js\": 9652,\n\t\"./he\": 8680,\n\t\"./he.js\": 8680,\n\t\"./hi\": 2040,\n\t\"./hi.js\": 2040,\n\t\"./hr\": 3402,\n\t\"./hr.js\": 3402,\n\t\"./hu\": 9322,\n\t\"./hu.js\": 9322,\n\t\"./hy-am\": 7609,\n\t\"./hy-am.js\": 7609,\n\t\"./id\": 7942,\n\t\"./id.js\": 7942,\n\t\"./is\": 8275,\n\t\"./is.js\": 8275,\n\t\"./it\": 3053,\n\t\"./it-ch\": 4378,\n\t\"./it-ch.js\": 4378,\n\t\"./it.js\": 3053,\n\t\"./ja\": 6176,\n\t\"./ja.js\": 6176,\n\t\"./jv\": 679,\n\t\"./jv.js\": 679,\n\t\"./ka\": 2726,\n\t\"./ka.js\": 2726,\n\t\"./kk\": 2953,\n\t\"./kk.js\": 2953,\n\t\"./km\": 6957,\n\t\"./km.js\": 6957,\n\t\"./kn\": 9181,\n\t\"./kn.js\": 9181,\n\t\"./ko\": 7148,\n\t\"./ko.js\": 7148,\n\t\"./ku\": 7752,\n\t\"./ku.js\": 7752,\n\t\"./ky\": 5675,\n\t\"./ky.js\": 5675,\n\t\"./lb\": 1263,\n\t\"./lb.js\": 1263,\n\t\"./lo\": 5746,\n\t\"./lo.js\": 5746,\n\t\"./lt\": 9655,\n\t\"./lt.js\": 9655,\n\t\"./lv\": 8753,\n\t\"./lv.js\": 8753,\n\t\"./me\": 4054,\n\t\"./me.js\": 4054,\n\t\"./mi\": 1573,\n\t\"./mi.js\": 1573,\n\t\"./mk\": 202,\n\t\"./mk.js\": 202,\n\t\"./ml\": 8523,\n\t\"./ml.js\": 8523,\n\t\"./mn\": 9794,\n\t\"./mn.js\": 9794,\n\t\"./mr\": 6681,\n\t\"./mr.js\": 6681,\n\t\"./ms\": 6975,\n\t\"./ms-my\": 9859,\n\t\"./ms-my.js\": 9859,\n\t\"./ms.js\": 6975,\n\t\"./mt\": 3691,\n\t\"./mt.js\": 3691,\n\t\"./my\": 5152,\n\t\"./my.js\": 5152,\n\t\"./nb\": 7607,\n\t\"./nb.js\": 7607,\n\t\"./ne\": 1526,\n\t\"./ne.js\": 1526,\n\t\"./nl\": 6368,\n\t\"./nl-be\": 3496,\n\t\"./nl-be.js\": 3496,\n\t\"./nl.js\": 6368,\n\t\"./nn\": 8420,\n\t\"./nn.js\": 8420,\n\t\"./oc-lnc\": 1906,\n\t\"./oc-lnc.js\": 1906,\n\t\"./pa-in\": 4504,\n\t\"./pa-in.js\": 4504,\n\t\"./pl\": 4721,\n\t\"./pl.js\": 4721,\n\t\"./pt\": 4645,\n\t\"./pt-br\": 4548,\n\t\"./pt-br.js\": 4548,\n\t\"./pt.js\": 4645,\n\t\"./ro\": 1977,\n\t\"./ro.js\": 1977,\n\t\"./ru\": 6042,\n\t\"./ru.js\": 6042,\n\t\"./sd\": 8849,\n\t\"./sd.js\": 8849,\n\t\"./se\": 7739,\n\t\"./se.js\": 7739,\n\t\"./si\": 84,\n\t\"./si.js\": 84,\n\t\"./sk\": 2449,\n\t\"./sk.js\": 2449,\n\t\"./sl\": 3086,\n\t\"./sl.js\": 3086,\n\t\"./sq\": 3139,\n\t\"./sq.js\": 3139,\n\t\"./sr\": 607,\n\t\"./sr-cyrl\": 63,\n\t\"./sr-cyrl.js\": 63,\n\t\"./sr.js\": 607,\n\t\"./ss\": 131,\n\t\"./ss.js\": 131,\n\t\"./sv\": 1665,\n\t\"./sv.js\": 1665,\n\t\"./sw\": 5642,\n\t\"./sw.js\": 5642,\n\t\"./ta\": 3622,\n\t\"./ta.js\": 3622,\n\t\"./te\": 4825,\n\t\"./te.js\": 4825,\n\t\"./tet\": 8336,\n\t\"./tet.js\": 8336,\n\t\"./tg\": 9238,\n\t\"./tg.js\": 9238,\n\t\"./th\": 9463,\n\t\"./th.js\": 9463,\n\t\"./tk\": 9986,\n\t\"./tk.js\": 9986,\n\t\"./tl-ph\": 9672,\n\t\"./tl-ph.js\": 9672,\n\t\"./tlh\": 43,\n\t\"./tlh.js\": 43,\n\t\"./tr\": 1212,\n\t\"./tr.js\": 1212,\n\t\"./tzl\": 110,\n\t\"./tzl.js\": 110,\n\t\"./tzm\": 482,\n\t\"./tzm-latn\": 8309,\n\t\"./tzm-latn.js\": 8309,\n\t\"./tzm.js\": 482,\n\t\"./ug-cn\": 2495,\n\t\"./ug-cn.js\": 2495,\n\t\"./uk\": 4157,\n\t\"./uk.js\": 4157,\n\t\"./ur\": 5826,\n\t\"./ur.js\": 5826,\n\t\"./uz\": 4141,\n\t\"./uz-latn\": 3662,\n\t\"./uz-latn.js\": 3662,\n\t\"./uz.js\": 4141,\n\t\"./vi\": 2607,\n\t\"./vi.js\": 2607,\n\t\"./x-pseudo\": 6460,\n\t\"./x-pseudo.js\": 6460,\n\t\"./yo\": 2948,\n\t\"./yo.js\": 2948,\n\t\"./zh-cn\": 2658,\n\t\"./zh-cn.js\": 2658,\n\t\"./zh-hk\": 9352,\n\t\"./zh-hk.js\": 9352,\n\t\"./zh-mo\": 8274,\n\t\"./zh-mo.js\": 8274,\n\t\"./zh-tw\": 8451,\n\t\"./zh-tw.js\": 8451\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;"],"names":[],"sourceRoot":"webpack:///"}