{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/_helpers/auth.guard.ts","./src/app/_helpers/helperFunctions.ts","./src/app/_helpers/loggedInWard.guard.ts","./src/app/_helpers/messages.ts","./src/app/_services/AuthToken.interceptor.ts","./src/app/_services/auth.service.ts","./src/app/_services/cards.service.ts","./src/app/_services/env.service.provider.ts","./src/app/_services/env.service.ts","./src/app/_services/helper.service.ts","./src/app/components/modals/genericModal.html","./src/app/_services/recharge.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/build-specifics/index.ts","./src/app/components/auth/register/register.component.ts","./src/app/components/auth/register/register.component.html","./src/app/components/modals/iframeModal.html","./src/app/components/carousel-cards/carousel-cards.component.ts","./src/app/components/carousel-cards/carousel-cards.component.html","./src/app/components/config-user/config-user.component.ts","./src/app/components/config-user/config-user.component.html","./src/app/components/modals/termsModal.html","./src/app/components/modals/contatcModal.html","./src/app/components/header/header.component.ts","./src/app/components/header/header.component.html","./src/app/components/layout/layout.component.ts","./src/app/components/layout/layout.component.html","./src/app/components/loading-overlay/loading-overlay.component.ts","./src/app/components/loading-overlay/loading-overlay.component.html","./src/app/components/material/material.module.ts","./src/app/components/modals/bill-modal/bill-modal.component.ts","./src/app/components/modals/bill-modal/bill-modal.component.html","./src/app/components/modals/change-nip-modal/change-nip-modal.component.ts","./src/app/components/modals/change-nip-modal/change-nip-modal.component.html","./src/app/components/modals/charge-control-modal/charge-control-modal.component.ts","./src/app/components/modals/charge-control-modal/charge-control-modal.component.html","./src/app/components/modals/control-modal/control-modal.component.ts","./src/app/components/modals/control-modal/control-modal.component.html","./src/app/components/modals/delete-modal/delete-modal.component.ts","./src/app/components/modals/delete-modal/delete-modal.component.html","./src/app/components/modals/show-cvv-modal/show-cvv-modal.component.ts","./src/app/components/modals/show-cvv-modal/show-cvv-modal.component.html","./src/app/components/modals/show-nip-modal/show-nip-modal.component.ts","./src/app/components/modals/show-nip-modal/show-nip-modal.component.html","./src/app/components/modals/transfer-card-modal/transfer-card-modal.component.ts","./src/app/components/modals/transfer-card-modal/transfer-card-modal.component.html","./src/app/components/progress-bar/progress-bar.component.ts","./src/app/components/progress-bar/progress-bar.component.html","./src/app/components/sidenav/sidenav.component.ts","./src/app/components/sidenav/sidenav.component.html","./src/app/date-format.ts","./src/app/interfaces/modalTypes.ts","./src/app/interfaces/recharge.ts","./src/app/interfaces/responseCards.ts","./src/app/interfaces/responseLogin.ts","./src/app/interfaces/responseNewUser.ts","./src/app/pipes/safe.pipe.ts","./src/app/route.animation.ts","./src/app/state/app/app.actions.ts","./src/app/state/app/app.effects.ts","./src/app/state/app/app.reducer.ts","./src/app/state/auth/auth.actions.ts","./src/app/state/auth/auth.effects.ts","./src/app/state/auth/auth.reducer.ts","./src/app/state/cards/cards.actions.ts","./src/app/state/cards/cards.effects.ts","./src/app/state/cards/cards.reducer.ts","./src/app/state/recharge/recharge.actions.ts","./src/app/state/recharge/recharge.effects.ts","./src/app/state/recharge/recharge.reducer.ts","./src/environments/environment.prod.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { map } from 'rxjs/operators';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport * as fromAuth from '../state/auth/auth.reducer';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private router: Router, private store: Store) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n return this.store.select(fromAuth.selectUser).pipe(\r\n map(User => {\r\n if (User == null) {\r\n return this.router.createUrlTree(['/auth/login']);\r\n }\r\n return true;\r\n })\r\n );\r\n }\r\n}\r\n","import { Observable, of, throwError } from 'rxjs';\r\nimport { delay, retryWhen, mergeMap } from 'rxjs/operators';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n\r\nexport const delayedRetry = (delayMs: number, maxRetry: number) => {\r\n let retries = maxRetry;\r\n return (src: Observable) =>\r\n src.pipe(\r\n retryWhen((errors: Observable) =>\r\n errors.pipe(\r\n delay(delayMs),\r\n mergeMap(error => (retries-- > 0 ? of(error) : throwError(handleError(error))))\r\n )\r\n )\r\n );\r\n};\r\n\r\nexport const handleError = (error: HttpErrorResponse) => {\r\n try {\r\n const statusErrorMessages = {\r\n 0: 'SERVICIO NO DISPONIBLE',\r\n 409: error.error.detail,\r\n 400: error.error?.errors ? error.error.errors[Object.keys(error.error.errors)[0]][0] : 'POR FAVOR, INTENTE DE NUEVO',\r\n };\r\n\r\n return statusErrorMessages[error.status] || 'POR FAVOR, INTENTE DE NUEVO';\r\n } catch (error) {\r\n return 'POR FAVOR, INTENTE DE NUEVO';\r\n }\r\n};\r\n","import { Store } from '@ngrx/store';\r\nimport { map } from 'rxjs/operators';\r\nimport { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\n\r\nimport { AuthenticationService } from './../_services/auth.service';\r\nimport * as fromAuth from '../state/auth/auth.reducer';\r\n\r\n@Injectable()\r\nexport class LoggedInAuthGuard implements CanActivate {\r\n constructor(\r\n private router: Router,\r\n private store: Store,\r\n private authenticationService: AuthenticationService\r\n ) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n return this.store.select(fromAuth.selectUser).pipe(\r\n map(User => {\r\n if (User == null) {\r\n return true;\r\n }\r\n return this.router.createUrlTree(['home']);\r\n })\r\n );\r\n }\r\n}\r\n","export const genericError: string = `\"\"\r\n

Error!

\r\n

`;\r\nexport const forgotPasswordFail: string = `\r\n\"\"\r\n

Error!

`;\r\nexport const forgotPasswordSuccess: string = `\r\n\"\"\r\n

Email enviado exitosamente!

\r\n

\r\nRevisa tu correo y da click en el link para restablecer la contraseƱa \r\n

`;\r\nexport const loginError: string = `\"\"\r\n

Login Error!

\r\n

`;\r\nexport const amountError: string = `\"\"\r\n

Saldo Insuficiente!

\r\n

`;\r\nexport const loginSuccess: string = '';\r\nexport const photoSuccess: string = `\r\n\"\"\r\n

Cambio Exitoso!

\r\n

\r\nFoto actualizada correctamente!\r\n

`;\r\nexport const changePasswordSuccess: string = `\r\n\"\"\r\n

Cambio Exitoso!

\r\n

\r\nLa ContraseƱa se cambio exitosamente!\r\n

`;\r\nexport const emailChangePassword: string = `\r\n\"\"\r\n

Email Enviado!

\r\n

\r\nCambia tu contraseƱa desde el email que se te envio!\r\n

`;\r\nexport const resetPassworMessage: string = `\r\n\"\"\r\n

Reinicio Exitoso!

\r\n

\r\nTu contraseƱa se ha cambiado de manera exitosa!\r\n

`;\r\nexport const changeStatusCardSuccess: string = `\r\n\"\"\r\n

Estatus cambiado exitosamente!

\r\n

\r\nTu tarjeta a cambiado de estatus\r\n

\r\n`;\r\nexport const removeCardSuccess: string = `\r\n\"\"\r\n

Tarjeta eliminada exitosamente!

\r\n

\r\nTu tarjeta ha sido eliminada\r\n

\r\n`;\r\nexport const changeStatusCanalSuccess: string = `\r\n\"\"\r\n

LĆ­mite de Compra!

\r\n

\r\nOperaciĆ³n realizada correctamente\r\n

\r\n`;\r\nexport const changeNipSuccessM: string = `\r\n\"\"\r\n

Cambio de NIP!

\r\n

\r\nOperaciĆ³n realizada correctamente\r\n

\r\n`;\r\nexport const transferCardSuccess: string = `\r\n\"\"\r\n

Pago de tarjeta!

\r\n

\r\nOperaciĆ³n realizada correctamente\r\n

\r\n`;\r\nexport const logoutSuccess: string = `\r\n\"\"\r\n

SesiĆ³n Terminada!

\r\n

\r\nTu sesiĆ³n ha terminado, inicia sesiĆ³n de nuevo\r\n

`;\r\nexport const passwordResetSuccess: string = `\r\n\"\"\r\n

ContraseƱa cambiada exitosamente!

\r\n

\r\nLa ContraseƱa se cambio exitosamente! \r\n

`;\r\nexport const rechargeSuccess = (folio: number, monto: number, numero: string) =>\r\n `\r\n\"\"\r\n

Recarga Exitosa!

\r\n

\r\n Folio: ${folio}\r\n Tu operaciĆ³n por $${monto} al nĆŗmero\r\n ${numero} fue\r\n realizada con Ć©xito\r\n

`;\r\nexport const serviceSuccess = (folio: number, monto: number, sName: string) =>\r\n `\r\n\"\"\r\n

OperaciĆ³n exitosa!

\r\n

\r\n Folio: ${folio}\r\n El pago del servicio ${sName} por un\r\n monto de $${monto} fue realizado con\r\n Ć©xito\r\n

`;\r\nexport const rechargeFail: string = `\r\n\"\"\r\n

Error de conexiĆ³n!

\r\n

\r\n Ocurrio un error\r\n intƩntelo nuevamente\r\n

`;\r\nexport const registerUserSuccess: string = `\r\n\"\"\r\n

Registro Exitoso!

\r\n

\r\nEl usuario ha sido creado exitosamente

`;\r\nexport const registerCardSucess: string = `\r\n\"\"\r\n

Registro Exitoso!

\r\n

\r\nTarjeta registrada exitosamente \r\n

`;\r\n","import { Observable } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { Injectable } from '@angular/core';\r\nimport { exhaustMap, take } from 'rxjs/operators';\r\nimport { HttpEvent, HttpHandler, HttpRequest, HttpInterceptor } from '@angular/common/http';\r\n\r\nimport * as fromAuth from '../state/auth/auth.reducer';\r\nimport * as AppActions from '../state/app/app.actions';\r\n@Injectable()\r\nexport class AuthTokenInterceptor implements HttpInterceptor {\r\n constructor(private store: Store) {}\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n setTimeout(() => {\r\n if (!req.params.get('loading')) {\r\n this.store.dispatch(AppActions.setLoading({ loading: true }));\r\n }\r\n }, 10);\r\n return this.store.select(fromAuth.selectToken).pipe(\r\n take(1),\r\n exhaustMap(token => {\r\n if (!token) {\r\n return next.handle(req);\r\n }\r\n let modifiedReq = req.clone({\r\n headers: req.headers.append('Authorization', `Bearer ${token}`),\r\n });\r\n return next.handle(modifiedReq);\r\n })\r\n );\r\n }\r\n}\r\n","import { Subject } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { EnvService } from './env.service';\r\n\r\nimport * as fromAuth from '../state/auth/auth.reducer';\r\nimport * as AppActions from '../state/app/app.actions';\r\nimport * as AuthActions from '../state/auth/auth.actions';\r\nimport * as CardsActions from '../state/cards/cards.actions';\r\nimport { clearState } from '../state/recharge/recharge.actions';\r\n\r\nimport { ResponseJwt } from '../interfaces/responseJwt';\r\nimport { GenericResponse } from '../interfaces/responseCatalogs';\r\nimport { ResetPasswordModel } from '../interfaces/resetPasswordModel';\r\nimport { ResponseLogin, UserLogin } from '../interfaces/responseLogin';\r\nimport { ResponseNewUser, newUserQuery } from '../interfaces/responseNewUser';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthenticationService {\r\n user$ = this.store.select(fromAuth.selectUser);\r\n timeoutInterval: any;\r\n private emitChangeSource = new Subject();\r\n changeEmitted$ = this.emitChangeSource.asObservable();\r\n apiUrl = this.env.apiUrl;\r\n httpOptions = { headers: {} };\r\n constructor(private httpClient: HttpClient, private store: Store, private env: EnvService) {}\r\n\r\n login(email: string, password: string) {\r\n const user = new UserLogin(email, password);\r\n return this.httpClient.post(`${this.apiUrl}/security/Account/Login`, user);\r\n }\r\n\r\n getJWT(email: string, password: string) {\r\n return this.httpClient.post(`${this.apiUrl}/security/Account/GetJWT`, { UserApi: email, PassApi: password });\r\n }\r\n\r\n sendEmailForgotPassword(email: string) {\r\n return this.httpClient.post>(`${this.apiUrl}/security/Account/RecoveryPass`, { Email: email });\r\n }\r\n\r\n resetPassword(model: ResetPasswordModel) {\r\n return this.httpClient.post>(`${this.apiUrl}/security/Account/ResetPass`, model);\r\n }\r\n\r\n updatePassword(newPassword: { actualPassword: string; newPassword: string }) {\r\n return this.httpClient.put>(`${this.apiUrl}/security/Account/UpdatePass`, {\r\n ...newPassword,\r\n validateRegEx: true,\r\n });\r\n }\r\n\r\n async updateNip() {\r\n let res = await this.httpClient\r\n .put(\r\n `${this.apiUrl}/DataCommon/UpdateNip`,\r\n {\r\n NumCard: '0000',\r\n NewNip: '1234',\r\n },\r\n this.httpOptions\r\n )\r\n .toPromise();\r\n return res;\r\n }\r\n\r\n uploadPhoto(image: string) {\r\n return this.httpClient.put>(`${this.apiUrl}/security/Account/UploadPhoto`, { image });\r\n }\r\n\r\n emitChange() {\r\n this.emitChangeSource.next();\r\n }\r\n\r\n setUserInLocalStorage(response: ResponseLogin, password: string) {\r\n const todayDate = new Date().getTime();\r\n const timeAdded = 1000 * 60 * 40;\r\n localStorage.setItem('userData', JSON.stringify({ ...response, password }));\r\n localStorage.setItem('expDate', (todayDate + timeAdded).toString());\r\n this.runTimeoutInterval();\r\n }\r\n\r\n runTimeoutInterval() {\r\n const expireDate = new Date(Number(localStorage.getItem('expDate'))).getTime();\r\n this.timeoutInterval = setTimeout(() => {\r\n this.store.dispatch(AuthActions.logout({ redirect: true }));\r\n //logout functionality or get the refresh token\r\n }, expireDate - new Date().getTime());\r\n }\r\n\r\n logout() {\r\n if (this.timeoutInterval) {\r\n clearTimeout(this.timeoutInterval);\r\n this.timeoutInterval = null;\r\n }\r\n this.store.dispatch(AuthActions.logout({ redirect: true }));\r\n setTimeout(() => {\r\n [CardsActions.clearState(), AppActions.clearState(), clearState()].forEach(action => this.store.dispatch(action));\r\n }, 500);\r\n }\r\n\r\n getUserFromLocalStorage() {\r\n const userDataString = localStorage.getItem('userData');\r\n if (userDataString) {\r\n const userData = JSON.parse(userDataString);\r\n const user: ResponseLogin = { ...userData };\r\n this.runTimeoutInterval();\r\n return user;\r\n }\r\n return null;\r\n }\r\n removeUserFromLocalStorage() {\r\n localStorage.removeItem('userData');\r\n localStorage.removeItem('expDate');\r\n if (this.timeoutInterval) {\r\n clearTimeout(this.timeoutInterval);\r\n this.timeoutInterval = null;\r\n }\r\n }\r\n\r\n createUser(command: newUserQuery) {\r\n return this.httpClient.post(`${this.apiUrl}/security/Account/NewUser`, command);\r\n }\r\n}\r\n","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport * as fromAuth from './../state/auth/auth.reducer';\r\n\r\nimport { CardNip } from '../interfaces/getNip';\r\nimport { Cards, Card } from '../interfaces/responseCards';\r\nimport { CrearTarjeta } from '../interfaces/responseNewUser';\r\nimport { GenericResponse } from '../interfaces/responseCatalogs';\r\nimport { ResponseMovements } from '../interfaces/responseMovements';\r\nimport { GetCVVResponse } from '../interfaces/getCVV/GetCvvResponse';\r\nimport { AccountStatusQuery } from '../interfaces/AccountStatusQuery';\r\nimport { GetLimitResponse } from '../interfaces/LimitControl/GetLimitResponse';\r\n\r\nimport { EnvService } from './env.service';\r\nimport { environment } from '../../environments/environment.prod';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CardsService {\r\n apiUrl = this.env.apiUrl;\r\n operativoUrl = environment.apiUrL;\r\n httpOptions = { headers: {} };\r\n constructor(private httpClient: HttpClient, private store: Store, private env: EnvService) {}\r\n\r\n public addCard(card: CrearTarjeta) {\r\n return this.httpClient.post>(`${this.apiUrl}/DataCommon/AddCard`, {\r\n numCard: card.Numero,\r\n cardname: card.Alias,\r\n });\r\n }\r\n\r\n ChangeStatusCanal(numCard: string, estatus: boolean) {\r\n return this.httpClient.post>(`${this.apiUrl}/DataCommon/ChangeStatusCanal`, [\r\n {\r\n panId: numCard.replace(/ /g, ''),\r\n NameLock: 'lock_internet',\r\n estatus,\r\n },\r\n ]);\r\n }\r\n downloadBill(rangeDate: { startDate: string; endDate: string; idCard: number; card: string }) {\r\n const formData = new FormData();\r\n formData.set('StartDate', rangeDate.startDate);\r\n formData.set('EndDate', rangeDate.endDate);\r\n formData.set('Card', rangeDate.card);\r\n formData.set('IdCard', rangeDate.idCard.toString());\r\n return this.httpClient.post(`${this.operativoUrl}/Alta/Prospeccion/test`, formData, { responseType: 'blob' });\r\n }\r\n getCvv(cardNumber: string) {\r\n return this.httpClient.get>(\r\n `${this.apiUrl}/DataCommon/ReturnCVV?numCard=${cardNumber.replace(/ /g, '')}`\r\n );\r\n }\r\n\r\n changeStatusCard(card: Card) {\r\n return this.httpClient.put>(`${this.apiUrl}/DataCommon/ChangeStatusCard`, {\r\n cardID: card.cardID.replace(/ /g, ''),\r\n estatusID: card.idStatus != 1 ? \"BLOCKED\" : \"NORMAL\"\r\n });\r\n }\r\n deleteCard(card: Card) {\r\n return this.httpClient.patch>(`${this.apiUrl}/DataCommon/UnLinkCard`, {\r\n numCard: card.numCard.replace(/ /g, ''),\r\n });\r\n }\r\n public getCards() {\r\n return this.httpClient.get>(`${this.apiUrl}/DataCommon/GetCards`, {}).pipe(\r\n map(response => {\r\n response.data?.map(card => {\r\n card.fisica.duaDate = new Date(card.fisica.duaDate).toLocaleDateString('es-MX', {\r\n year: '2-digit',\r\n month: '2-digit',\r\n });\r\n card.virtual.duaDate = new Date(card.virtual.duaDate).toLocaleDateString('es-MX', {\r\n year: '2-digit',\r\n month: '2-digit',\r\n });\r\n card.fisica.numCard = card.fisica.numCard.match(/.{1,4}/g).join(' ');\r\n card.virtual.numCard = card.virtual.numCard.match(/.{1,4}/g).join(' ');\r\n });\r\n return response;\r\n })\r\n );\r\n }\r\n\r\n public getLastMovements(AccountID: string) {\r\n const dates = this.getInitialDates();\r\n let data = {\r\n DateInit: dates.initDate,\r\n DateEnd: dates.endDate,\r\n AccountID: AccountID,\r\n IsLastMovements: false,\r\n };\r\n let params = new HttpParams();\r\n if (data)\r\n (Object.keys(data) as (keyof typeof data)[]).forEach(key => {\r\n if (data[key] != null) params = params.append(key, data[key]);\r\n });\r\n return this.httpClient\r\n .get(`${this.apiUrl}/DataCommon/GetMovements`, {\r\n params,\r\n })\r\n .pipe(map(res => res.data));\r\n }\r\n\r\n public getNip(card: CardNip) {\r\n card.cardID = card.cardID.replace(/ /g, '');\r\n\r\n let params = new HttpParams().append('loading', 'true');\r\n if (card)\r\n (Object.keys(card) as (keyof typeof card)[]).forEach(key => {\r\n if (card[key] != null) params = params.append(key, card[key]);\r\n });\r\n return this.httpClient.get>(`${this.apiUrl}/DataCommon/GetNip`, { params });\r\n }\r\n\r\n public changeNip(card: string, nip: string) {\r\n card = card.replace(/ /g, '');\r\n let params = new HttpParams().append('loading', 'true');\r\n return this.httpClient.put>(`${this.apiUrl}/DataCommon/ChangeNip`, {\r\n card,\r\n nip,\r\n });\r\n }\r\n public transferCard(transferCardCommand: { originCard: string; destinationCard: string; amount: number }) {\r\n let params = new HttpParams().append('loading', 'true');\r\n return this.httpClient.post>(`${this.apiUrl}/DataCommon/TransferCards`, transferCardCommand);\r\n }\r\n\r\n public getMonthMovements(year: number, month: number, accountID: string) {\r\n const dates = this.getInitialDates(year, month);\r\n let data = {\r\n DateInit: dates.initDate,\r\n DateEnd: dates.endDate,\r\n accountID: accountID,\r\n IsLastMovements: false,\r\n };\r\n let params = new HttpParams();\r\n if (data)\r\n (Object.keys(data) as (keyof typeof data)[]).forEach(key => {\r\n if (data[key] != null) params = params.append(key, data[key]);\r\n });\r\n return this.httpClient\r\n .get(`${this.apiUrl}/DataCommon/GetMovements`, {\r\n params,\r\n })\r\n .pipe(map(res => res.data));\r\n }\r\n\r\n public getInitialDates(year?: number, month?: number): { initDate: string; endDate: string } {\r\n const now = new Date();\r\n const initDate = new Date(year ? year : now.getFullYear(), month ? month : now.getMonth(), 1).toLocaleDateString('af-ZA');\r\n const endDate = new Date(year ? year : now.getFullYear(), month ? month + 1 : now.getMonth() + 1, 0).toLocaleDateString(\r\n 'af-ZA'\r\n );\r\n return { initDate, endDate };\r\n }\r\n\r\n public updateLimit(numCard: string, administraEmpresa: boolean, limiteCompra: number) {\r\n let data = { numCard, administraEmpresa, limiteCompra };\r\n return this.httpClient.put>(`${this.apiUrl}/DataCommon/UpdateLimit`, {\r\n numCard: data.numCard,\r\n administraEmpresa: false,\r\n limiteCompra: data.limiteCompra,\r\n });\r\n }\r\n\r\n public getLimit(numCard: string) {\r\n return this.httpClient.get>(`${this.apiUrl}/DataCommon/GetLimit?NumCard=${numCard}`);\r\n }\r\n public downloadMovements(query: AccountStatusQuery) {\r\n let data = {\r\n cardID: query.cardID,\r\n Month: query.Month,\r\n year: query.Year,\r\n };\r\n let params = new HttpParams();\r\n if (data)\r\n (Object.keys(data) as (keyof typeof data)[]).forEach(key => {\r\n if (data[key] != null) params = params.append(key, data[key]);\r\n });\r\n return this.httpClient.get(`${this.apiUrl}/DataCommon/AccountStatus`, {\r\n params,\r\n responseType: 'blob',\r\n });\r\n }\r\n}\r\n","import { EnvService } from './env.service';\r\n\r\nexport const EnvServiceFactory = () => {\r\n // Create env\r\n const env = new EnvService();\r\n\r\n // Read environment variables from browser window\r\n const browserWindow = window || {};\r\n const browserWindowEnv = browserWindow['__env'] || {};\r\n\r\n // Assign environment variables from browser window to env\r\n // In the current implementation, properties from env.js overwrite defaults from the EnvService.\r\n // If needed, a deep merge can be performed here to merge properties instead of overwriting them.\r\n for (const key in browserWindowEnv) {\r\n if (browserWindowEnv.hasOwnProperty(key)) {\r\n env[key] = window['__env'][key];\r\n }\r\n }\r\n\r\n return env;\r\n};\r\n\r\nexport const EnvServiceProvider = {\r\n provide: EnvService,\r\n useFactory: EnvServiceFactory,\r\n deps: [],\r\n};\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment.prod';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EnvService {\r\n // The values that are defined here are the default values that can\r\n // be overridden by env.js\r\n\r\n // API url\r\n public apiUrl = environment.apiUrL;\r\n\r\n // Whether or not to enable debug mode\r\n public enableDebug = true;\r\n\r\n constructor() {}\r\n}\r\n","import { Component, Inject, Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\n\r\nimport { AuthenticationService } from './auth.service';\r\n\r\nimport { Error } from '../interfaces/error';\r\nimport { modalTypes } from '../interfaces/modalTypes';\r\nimport { ResponseNewUser, newUser } from '../interfaces/responseNewUser';\r\nimport { Catalog, GenericResponse } from '../interfaces/responseCatalogs';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { EnvService } from './env.service';\r\n\r\nimport { BillDialogModel, BillModalComponent } from '../components/modals/bill-modal/bill-modal.component';\r\nimport { DeleteDialogModel, DeleteDialogComponent } from '../components/modals/delete-modal/delete-modal.component';\r\nimport { ControlDialogModel, ControlModalComponent } from '../components/modals/control-modal/control-modal.component';\r\nimport { ShowCvvDialogModel, ShowCvvModalComponent } from '../components/modals/show-cvv-modal/show-cvv-modal.component';\r\nimport { ShowNipDialogModel, ShowNipModalComponent } from '../components/modals/show-nip-modal/show-nip-modal.component';\r\nimport { ChangeNipDialogModel, ChangeNipModalComponent } from '../components/modals/change-nip-modal/change-nip-modal.component';\r\nimport {\r\n ChargeControlDialogModel,\r\n ChargeControlComponent,\r\n} from '../components/modals/charge-control-modal/charge-control-modal.component';\r\nimport {\r\n TransferCardDialogModel,\r\n TransferCardModalComponent,\r\n} from '../components/modals/transfer-card-modal/transfer-card-modal.component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class HelperService {\r\n apiUrl = this.env.apiUrl;\r\n constructor(\r\n private httpClient: HttpClient,\r\n public datePipe: DatePipe,\r\n public dialog: MatDialog,\r\n private store: Store,\r\n private env: EnvService,\r\n private authService: AuthenticationService\r\n ) {}\r\n\r\n verifyEmailExist(email: string) {\r\n return this.httpClient.post>(`${this.apiUrl}/security/Account/ValidateMail`, { Email: email });\r\n }\r\n\r\n public getCalogs() {\r\n let params = new HttpParams().append('loading', 'true');\r\n return this.httpClient.get>(`${this.apiUrl}/DataCommon/Catalogs`, { params });\r\n }\r\n\r\n newUser(lForm: FormGroup, cForm: FormGroup) {\r\n let stringDate = '';\r\n let newUSER = new newUser(lForm, cForm, stringDate);\r\n return this.httpClient.post(`${this.apiUrl}/security/Account/NewUser`, newUSER.User);\r\n }\r\n\r\n showDialog(modalType, data) {\r\n let dialogData: any;\r\n let dialogRef: MatDialogRef;\r\n switch (modalType) {\r\n case modalTypes.confirm:\r\n dialogData = new DeleteDialogModel('Eliminar Tarjeta', {\r\n cardName: data.cardName,\r\n lastDigits: data.lastDigits,\r\n });\r\n dialogRef = this.dialog.open(DeleteDialogComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.showNip:\r\n dialogData = new ShowNipDialogModel('Ver NIP', {\r\n cardName: data.cardName,\r\n lastDigits: data.lastDigits,\r\n });\r\n dialogRef = this.dialog.open(ShowNipModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.control:\r\n dialogData = new ControlDialogModel('Lƭmite de Compra');\r\n dialogRef = this.dialog.open(ControlModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.cvv:\r\n dialogData = new ShowCvvDialogModel('Ver CVV dinƔmico');\r\n dialogRef = this.dialog.open(ShowCvvModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.bill:\r\n dialogData = new BillDialogModel('Estado de cuenta');\r\n dialogRef = this.dialog.open(BillModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.chargesControl:\r\n dialogData = new ChargeControlDialogModel('Comprobar Gasto', data.charge, data.IdTarjeta);\r\n dialogRef = this.dialog.open(ChargeControlComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n height: '22rem',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.changeNip:\r\n dialogData = new ChangeNipDialogModel('Cambiar NIP');\r\n dialogRef = this.dialog.open(ChangeNipModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n case modalTypes.transferCard:\r\n dialogData = new TransferCardDialogModel('Pago de tarjeta');\r\n dialogRef = this.dialog.open(TransferCardModalComponent, {\r\n maxWidth: '400px',\r\n width: '320px',\r\n data: dialogData,\r\n });\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n showAlert(res: GenericResponse | Error, success: string, fail: string, height?: string) {\r\n if (res.code == undefined) {\r\n this.dialog.open(AlertModal, {\r\n width: '341px',\r\n height: '318px',\r\n data: {\r\n text: `\r\n ${fail}\r\n

${height}

\r\n

${400}

\r\n `,\r\n },\r\n });\r\n return;\r\n }\r\n\r\n if (res?.code != '0000') {\r\n this.dialog.open(AlertModal, {\r\n width: '341px',\r\n height: '318px',\r\n data: {\r\n text: `\r\n ${fail}\r\n

${res?.message}

\r\n

${res?.code}

\r\n `,\r\n },\r\n });\r\n } else {\r\n this.dialog.open(AlertModal, {\r\n width: '341px',\r\n minHeight: height ? height : '318px',\r\n data: {\r\n text: success,\r\n },\r\n });\r\n }\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-reset-password',\r\n templateUrl: './../components/modals/genericModal.html',\r\n styleUrls: ['./../components/modals/modalStyle.css'],\r\n})\r\nexport class AlertModal {\r\n constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data) {}\r\n\r\n action() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { GenericResponse, CategoryService } from '../interfaces/services';\r\nimport { map } from 'rxjs/operators';\r\nimport { Product } from '../interfaces/product';\r\nimport { RechargeServiceModel } from '../interfaces/recharge';\r\nimport { environment } from '../../environments/environment.prod';\r\nimport { EnvService } from './env.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RechargeService {\r\n apiUrl = this.env.apiUrl;\r\n constructor(private httpClient: HttpClient, private env: EnvService) {}\r\n\r\n public getServices() {\r\n return this.httpClient\r\n .get>(`${this.apiUrl}/SuperChangarro/Services`)\r\n .pipe(map(response => response));\r\n }\r\n public getProductServices(id: number) {\r\n return this.httpClient.get>(`${this.apiUrl}/SuperChangarro/Products?idServices=${id}`);\r\n }\r\n public doRecharge(recharge: RechargeServiceModel) {\r\n return this.httpClient.post>(`${this.apiUrl}/SuperChangarro/Dorecarga`, recharge);\r\n }\r\n public DoPagoServicio(service: RechargeServiceModel) {\r\n return this.httpClient.post>(`${this.apiUrl}/SuperChangarro/DoPagoServicio`, service);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { AuthGuard } from './_helpers/auth.guard';\r\nimport { LoggedInAuthGuard } from './_helpers/loggedInWard.guard';\r\nimport { LayoutComponent } from './components/layout/layout.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'forgot-password',\r\n canActivate: [LoggedInAuthGuard],\r\n loadChildren: () => import('./components/forgot-password/forgot-password.module').then(m => m.ForgotPasswordModule),\r\n },\r\n {\r\n path: 'reset-password',\r\n canActivate: [LoggedInAuthGuard],\r\n loadChildren: () => import('./components/reset-password/reset-password.module').then(m => m.ResetPasswordModule),\r\n },\r\n {\r\n path: 'auth',\r\n canActivate: [LoggedInAuthGuard],\r\n loadChildren: () => import('./components/auth/auth.module').then(m => m.AuthModule),\r\n },\r\n {\r\n path: '',\r\n component: LayoutComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n {\r\n path: 'home',\r\n canActivate: [AuthGuard],\r\n loadChildren: () => import('./components/home/home.module').then(m => m.HomeModule),\r\n },\r\n {\r\n path: 'add-card',\r\n canActivate: [AuthGuard],\r\n loadChildren: () => import('./components/add-card/add-card.module').then(m => m.AddCardModule),\r\n },\r\n {\r\n path: 'config-user',\r\n canActivate: [AuthGuard],\r\n loadChildren: () => import('./components/config-user/config-user.module').then(m => m.ConfigUserModule),\r\n },\r\n {\r\n path: 'recharge-services',\r\n canActivate: [AuthGuard],\r\n loadChildren: () =>\r\n import('./components/recharge-services/recharge-services.module').then(m => m.RechargeServicesModule),\r\n },\r\n { path: '', redirectTo: 'home', pathMatch: 'full' },\r\n ],\r\n },\r\n { path: '**', redirectTo: 'auth', pathMatch: 'full' },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { relativeLinkResolution: 'legacy' })],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Store } from '@ngrx/store';\r\nimport { take } from 'rxjs/operators';\r\nimport { Component, NgZone } from '@angular/core';\r\nimport { RouterOutlet, Router } from '@angular/router';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\nimport { fader } from './route.animation';\r\nimport { User } from './interfaces/responseLogin';\r\nimport { HelperService } from './_services/helper.service';\r\nimport { AuthenticationService } from './_services/auth.service';\r\nimport { logoutSuccess, genericError } from './_helpers/messages';\r\n\r\nimport * as fromApp from './state/app/app.reducer';\r\nimport * as AppActions from './state/app/app.actions';\r\nimport { autoLogin } from './state/auth/auth.actions';\r\nimport * as AuthActions from './state/auth/auth.actions';\r\nimport * as CardsActions from './state/cards/cards.actions';\r\nimport { clearState } from './state/recharge/recharge.actions';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n animations: [fader],\r\n})\r\nexport class AppComponent {\r\n currentUser: User;\r\n user$ = this.authService.user$;\r\n isRefreshed = false;\r\n title = 'admin-panel-layout';\r\n sideBarOpen = this.device.isMobile() || this.device.isTablet() ? false : true;\r\n idleState = 'Not started.';\r\n timedOut = false;\r\n lastPing?: Date = null;\r\n isLoading$ = this.store.select(fromApp.selectLoading);\r\n\r\n constructor(\r\n private device: DeviceDetectorService,\r\n private authService: AuthenticationService,\r\n private helpService: HelperService,\r\n private router: Router,\r\n private ngZone: NgZone,\r\n private store: Store\r\n ) {\r\n this.lastAction(Date.now());\r\n this.check();\r\n this.initListener();\r\n this.initInterval();\r\n }\r\n\r\n ngOnInit() {\r\n //this.store.dispatch(autoToken());\r\n this.store.dispatch(autoLogin());\r\n }\r\n\r\n sideBarToggler() {\r\n this.sideBarOpen = !this.sideBarOpen;\r\n }\r\n\r\n prepareRoute(outlet: RouterOutlet) {\r\n return outlet && outlet.activatedRouteData && outlet.activatedRouteData['animation'];\r\n }\r\n\r\n getLastAction() {\r\n return localStorage.getItem('lastAction');\r\n }\r\n\r\n /**\r\n * set last action\r\n * @param value\r\n */\r\n lastAction(value) {\r\n localStorage.setItem('lastAction', JSON.stringify(value));\r\n }\r\n\r\n /**\r\n * start event listener\r\n */\r\n initListener() {\r\n this.ngZone.runOutsideAngular(() => {\r\n document.body.addEventListener('click', () => this.reset());\r\n });\r\n }\r\n\r\n /**\r\n * time interval\r\n */\r\n initInterval() {\r\n this.ngZone.runOutsideAngular(() => {\r\n setInterval(() => {\r\n this.user$.pipe(take(1)).subscribe(user => {\r\n if (user) this.check();\r\n });\r\n }, 1000);\r\n });\r\n }\r\n\r\n /**\r\n * reset timer\r\n */\r\n reset() {\r\n this.lastAction(Date.now());\r\n }\r\n\r\n /**\r\n * check timer\r\n */\r\n check() {\r\n const now = Date.now();\r\n const timeLeft = parseInt(this.getLastAction()) + 5 * 1000 * 60;\r\n const diff = timeLeft - now;\r\n const isTimeout = diff < 0;\r\n\r\n this.ngZone.run(() => {\r\n if (isTimeout) {\r\n this.helpService.showAlert({ code: '0000', message: '' }, logoutSuccess, genericError);\r\n this.store.dispatch(AuthActions.logout({ redirect: false }));\r\n [CardsActions.clearState(), AppActions.clearState(), clearState()].forEach(action => this.store.dispatch(action));\r\n this.authService.logout();\r\n this.router.navigate(['/auth']);\r\n }\r\n });\r\n }\r\n}\r\n","\r\n\r\n\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { SidenavComponent } from './components/sidenav/sidenav.component';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { DateAdapter, MatNativeDateModule, MatRippleModule } from '@angular/material/core';\r\nimport { MatListModule } from '@angular/material/list';\r\n\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { DatePipe } from '@angular/common';\r\nimport { DecimalPipe } from '@angular/common';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { LoggedInAuthGuard } from './_helpers/loggedInWard.guard';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { DateFormat } from './date-format';\r\nimport { MaterialModule } from './components/material/material.module';\r\nimport { LoadingOverlayComponent } from './components/loading-overlay/loading-overlay.component';\r\n\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { authReducer } from './state/auth/auth.reducer';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { AuthEffects } from './state/auth/auth.effects';\r\nimport { appReducer } from './state/app/app.reducer';\r\nimport { AuthTokenInterceptor } from './_services/AuthToken.interceptor';\r\nimport { cardsReducer } from './state/cards/cards.reducer';\r\nimport { CardsEffects } from './state/cards/cards.effects';\r\nimport { RechargeEffects } from './state/recharge/recharge.effects';\r\nimport { rechargeReducer } from './state/recharge/recharge.reducer';\r\nimport { AppEffects } from './state/app/app.effects';\r\nimport { extModules } from './build-specifics';\r\nimport { EnvServiceProvider } from './_services/env.service.provider';\r\nimport { ShowNipModalComponent } from './components/modals/show-nip-modal/show-nip-modal.component';\r\nimport { ControlModalComponent } from './components/modals/control-modal/control-modal.component';\r\nimport { DeleteDialogComponent } from './components/modals/delete-modal/delete-modal.component';\r\nimport { ShowCvvModalComponent } from './components/modals/show-cvv-modal/show-cvv-modal.component';\r\nimport { ProgressBarComponent } from './components/progress-bar/progress-bar.component';\r\nimport { BillModalComponent } from './components/modals/bill-modal/bill-modal.component';\r\nimport { LayoutComponent } from './components/layout/layout.component';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { ChangeNipModalComponent } from './components/modals/change-nip-modal/change-nip-modal.component';\r\nimport { TransferCardModalComponent } from './components/modals/transfer-card-modal/transfer-card-modal.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n SidenavComponent,\r\n LoadingOverlayComponent,\r\n DeleteDialogComponent,\r\n ShowNipModalComponent,\r\n ControlModalComponent,\r\n ChangeNipModalComponent,\r\n TransferCardModalComponent,\r\n ShowCvvModalComponent,\r\n ProgressBarComponent,\r\n BillModalComponent,\r\n LayoutComponent,\r\n ],\r\n imports: [\r\n NgxMaskModule.forRoot(),\r\n BrowserModule,\r\n AppRoutingModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n // * MATERIAL IMPORTS\r\n MatSidenavModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n MatSortModule,\r\n MatFormFieldModule,\r\n MatNativeDateModule,\r\n MatToolbarModule,\r\n MatMenuModule,\r\n MatIconModule,\r\n // MatDividerModule,\r\n MatListModule,\r\n MatRippleModule,\r\n MaterialModule,\r\n StoreModule.forRoot({\r\n auth: authReducer,\r\n app: appReducer,\r\n cards: cardsReducer,\r\n recharge: rechargeReducer,\r\n }),\r\n EffectsModule.forRoot([AuthEffects, CardsEffects, RechargeEffects, AppEffects]),\r\n extModules,\r\n ],\r\n providers: [\r\n EnvServiceProvider,\r\n { provide: DateAdapter, useClass: DateFormat },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthTokenInterceptor,\r\n multi: true,\r\n },\r\n DatePipe,\r\n DecimalPipe,\r\n LoggedInAuthGuard,\r\n ],\r\n bootstrap: [AppComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class AppModule {\r\n constructor(private dateAdapter: DateAdapter) {\r\n dateAdapter.setLocale('es-Es'); // DD/MM/YYYY\r\n }\r\n}\r\n","import { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\n\r\nexport const extModules = [\r\n StoreDevtoolsModule.instrument({\r\n maxAge: 25,\r\n }),\r\n];\r\n","\r\nimport * as _moment from 'moment';\r\nimport { Subscription } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { first } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { MatStepper, MatHorizontalStepper } from '@angular/material/stepper';\r\nimport { Component, ElementRef, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { AbstractControl, FormBuilder, FormGroup, Validators } from '@angular/forms';\r\n\r\nimport { handleError } from 'src/app/_helpers/helperFunctions';\r\nimport { newUserQuery } from 'src/app/interfaces/responseNewUser';\r\nimport { AuthenticationService } from 'src/app/_services/auth.service';\r\nimport { registerUserSuccess, genericError } from 'src/app/_helpers/messages';\r\n\r\nimport * as AppActions from '../../../state/app/app.actions';\r\nimport { selectCatalogs } from '../../../state/app/app.reducer';\r\nimport { HelperService } from '../../../_services/helper.service';\r\nimport { State, Municipio } from '../../../interfaces/responseCatalogs';\r\n\r\n@Component({\r\n selector: 'app-register',\r\n templateUrl: './register.component.html',\r\n styleUrls: ['./register.component.scss'],\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n @ViewChild('childComponent') child;\r\n @ViewChild('password') password: ElementRef;\r\n @ViewChild('confirmPassword') confirmPassword: ElementRef;\r\n loginForm: FormGroup;\r\n cardForm: FormGroup;\r\n @ViewChild(MatHorizontalStepper) stepper: MatHorizontalStepper;\r\n dialogRef: Subscription;\r\n height = `${window.innerHeight * 0.01}`;\r\n catalogs$ = this.store.select(selectCatalogs);\r\n rippleColor: string = 'rgba(255, 255, 255, .085)';\r\n visibility: boolean = false;\r\n visibilityC: boolean = false;\r\n municipalitiesOfSelectedState: Municipio[] = [];\r\n ubication = { lat: 0, long: 0 };\r\n sleep = m => new Promise(r => setTimeout(r, m));\r\n\r\n get formatedCard() {\r\n let joy = this.cardForm.get('cardNumber').value;\r\n if (joy) return joy.match(/.{1,4}/g).join(' ');\r\n else return this.cardForm.get('cardNumber').value;\r\n }\r\n\r\n spaceWhite(event) {\r\n if (event.code === 'Space') {\r\n let formattedText = this.cardForm.get('cardNumber').value.replace(/\\s/g, '');\r\n this.cardForm.patchValue({\r\n cardNumber: formattedText,\r\n });\r\n }\r\n }\r\n\r\n controlColor(control: string): string {\r\n const form = this.getForm(control);\r\n return form?.get(control)?.valid ? 'accent' : 'primary';\r\n }\r\n\r\n private getForm(control: string): any {\r\n const controlMap = {\r\n name: this.loginForm,\r\n fLastName: this.loginForm,\r\n email: this.loginForm,\r\n password: this.loginForm,\r\n confirmPassword: this.loginForm,\r\n birthDate: this.loginForm,\r\n phone: this.loginForm,\r\n address: this.loginForm,\r\n rfc: this.loginForm,\r\n cvv: this.cardForm,\r\n alias: this.cardForm,\r\n cardNumber: this.cardForm,\r\n expireDate: this.cardForm\r\n };\r\n\r\n return controlMap[control];\r\n }\r\n\r\n constructor(\r\n private device: DeviceDetectorService,\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private authservice: AuthenticationService,\r\n private helperService: HelperService,\r\n public dialog: MatDialog,\r\n private store: Store\r\n ) { }\r\n\r\n ngAfterViewInit() {\r\n this.stepper._getIndicatorType = () => 'number';\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.device.isMobile() || this.device.isTablet()) {\r\n document.documentElement.style.setProperty('--vh', `${this.height}px`);\r\n }\r\n this.loginForm = this.formBuilder.group(\r\n {\r\n name: ['', [Validators.required, Validators.minLength(4), Validators.pattern('^[A-Za-zĆ±Ć‘Ć”Ć©Ć­Ć³ĆŗƁƉƍƓƚ ]+$')]],\r\n surLastname: ['', [Validators.required, Validators.minLength(4), Validators.pattern('^[A-Za-zĆ±Ć‘Ć”Ć©Ć­Ć³ĆŗƁƉƍƓƚ ]+$')]],\r\n surFirtName: ['', [Validators.required, Validators.minLength(4), Validators.pattern('^[A-Za-zĆ±Ć‘Ć”Ć©Ć­Ć³ĆŗƁƉƍƓƚ ]+$')]],\r\n email: ['', [Validators.required, Validators.email]],\r\n emailConfirm: ['', [Validators.required, Validators.email]],\r\n password: [\r\n '',\r\n [\r\n Validators.required,\r\n Validators.pattern(\r\n /^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[.,\\/#!@$%\\^&\\*;:{}=\\-_`~()ā€ā€œ\"ā€¦])[A-Za-z\\d[.,\\/#!$%\\^&\\*;:{}=\\-_`~()ā€ā€œ\"ā€¦]{7,15}[^'\\s]/i\r\n ),\r\n ],\r\n ],\r\n confirmPassword: ['', [Validators.required]],\r\n phone: ['', [Validators.required, Validators.pattern(/[2-9]{2}\\d{8}/)]],\r\n city : ['', [Validators.required]],\r\n state: ['', [Validators.required]],\r\n rfc: ['', [Validators.required]],\r\n },\r\n { validators: this.MustMatch('password', 'confirmPassword') }\r\n );\r\n\r\n this.setUbication();\r\n this.cardForm = this.formBuilder.group({\r\n cardNumber: ['', [Validators.required, Validators.maxLength(19)]],\r\n cvv: [''],\r\n alias: ['', [Validators.required, Validators.minLength(3)]],\r\n expireDate: ['2022-11-01'],\r\n terms: ['', [Validators.required]],\r\n });\r\n }\r\n\r\n checkMailMatch() {\r\n let res = this.loginForm.get('email').value == this.loginForm.get('emailConfirm').value;\r\n if (res == true) {\r\n this.loginForm.controls['emailConfirm'].setErrors(null);\r\n } else {\r\n this.loginForm.controls['emailConfirm'].setErrors({ match: true });\r\n }\r\n }\r\n\r\n mailExists() {\r\n if (this.loginForm.get('email').valid) {\r\n this.helperService\r\n .verifyEmailExist(this.loginForm.get('email').value)\r\n .pipe(first())\r\n .subscribe(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n if (res.data) this.loginForm.controls['email'].setErrors({ exist: true });\r\n else this.loginForm.controls['email'].setErrors(null);\r\n });\r\n }\r\n }\r\n\r\n ageValidator(control: AbstractControl): { [key: string]: boolean } | null {\r\n let today = new Date();\r\n let birthDate = control.value;\r\n if (birthDate) {\r\n let age = today.getFullYear() - birthDate.getFullYear();\r\n let m = today.getMonth() - birthDate.getMonth();\r\n if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {\r\n age--;\r\n }\r\n if (age < 16) {\r\n return { ageValidator: true };\r\n }\r\n return null;\r\n }\r\n }\r\n\r\n homoKeyValidator(control: AbstractControl): { [key: string]: boolean } | null {\r\n let value: string = control.value;\r\n return value.length != 13 ? { homoKeyValidator: true } : null;\r\n }\r\n\r\n expireDateValidator(control: AbstractControl): { [key: string]: boolean } | null {\r\n if (control.value.length > 4) {\r\n let actualDate = new Date();\r\n const dateForm = control.value;\r\n let introducedYear = `${String(actualDate.getFullYear()).substring(0, 2)}${dateForm.substring(3, 5)}`;\r\n let introducedMonth = dateForm.substring(0, 2);\r\n let introducedDate = null;\r\n if (control.value.charAt(0) === '0') {\r\n introducedDate = new Date(Number(introducedYear), introducedMonth.charAt(1) - 1);\r\n } else {\r\n introducedDate = new Date(Number(introducedYear), introducedMonth - 1);\r\n }\r\n\r\n if (actualDate > introducedDate || introducedMonth > 12 || introducedMonth == 0) {\r\n return { expireDateValidator: true };\r\n } else {\r\n return null;\r\n }\r\n }\r\n }\r\n\r\n MustMatch(controlName: string, matchingControlName: string) {\r\n return (formGroup: FormGroup) => {\r\n const control = formGroup.controls[controlName];\r\n const matchingControl = formGroup.controls[matchingControlName];\r\n\r\n if (matchingControl.errors && !matchingControl.errors.mustMatch) {\r\n // return if another validator has already found an error on the matchingControl\r\n return;\r\n }\r\n\r\n // set error on matchingControl if validation fails\r\n if (control.value !== matchingControl.value) {\r\n matchingControl.setErrors({ mustMatch: true });\r\n } else {\r\n matchingControl.setErrors(null);\r\n }\r\n };\r\n }\r\n\r\n onResize(event) {\r\n this.height = `${window.innerHeight * 0.01}`;\r\n document.documentElement.style.setProperty('--vh', `${this.height}px`);\r\n }\r\n\r\n numberOnly(event): boolean {\r\n if (this.cardForm.get('expireDate').value.length === 2) {\r\n let newValue = `${this.cardForm.get('expireDate').value}/`;\r\n this.cardForm.patchValue({\r\n expireDate: newValue,\r\n });\r\n }\r\n const charCode = event.which ? event.which : event.keyCode;\r\n if (charCode > 31 && (charCode < 48 || charCode > 57)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n openTerms() {\r\n const dialogRef = this.dialog.open(ModalIframe2, {\r\n width: '100%',\r\n height: '80%',\r\n panelClass: 'custom-modalbox',\r\n data: { url: '' },\r\n });\r\n }\r\n\r\n redirect(stepper: MatStepper) {\r\n if (stepper.selectedIndex === 0) {\r\n this.router.navigate(['/auth/login']);\r\n } else {\r\n stepper.previous();\r\n }\r\n }\r\n\r\n onChangeState(state: State) {\r\n this.municipalitiesOfSelectedState = [];\r\n state.Municipios.map(municipality => this.municipalitiesOfSelectedState.push(municipality));\r\n }\r\n\r\n hideCvv(cvv: string): string {\r\n return '*'.repeat(cvv.length);\r\n }\r\n\r\n seePassword() {\r\n this.visibility = !this.visibility;\r\n let password = this.password.nativeElement;\r\n let confirmpassword = this.confirmPassword.nativeElement;\r\n const type = password.getAttribute('type') === 'password' ? 'text' : 'password';\r\n password.setAttribute('type', type);\r\n confirmpassword.setAttribute('type', type);\r\n }\r\n seeConfPassword() {\r\n this.visibilityC = !this.visibilityC;\r\n let confirmPassword = this.confirmPassword.nativeElement;\r\n const type = confirmPassword.getAttribute('type') === 'password' ? 'text' : 'password';\r\n confirmPassword.setAttribute('type', type);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.dialogRef) this.dialogRef.unsubscribe();\r\n }\r\n\r\n newUser() {\r\n if (this.loginForm.valid && this.cardForm.valid) {\r\n this.store.dispatch(AppActions.setLoading({ loading: true }));\r\n let command: newUserQuery = {\r\n cardname: this.cardForm.get('alias').value,\r\n email: this.loginForm.get('email').value,\r\n latitude: this.ubication.lat,\r\n longitude: this.ubication.long,\r\n nombre: this.loginForm.get('name').value,\r\n surLastname: this.loginForm.get('surLastname').value,\r\n surFirtName: this.loginForm.get('surFirtName').value,\r\n pan: this.cardForm.get('cardNumber').value,\r\n password: this.loginForm.get('password').value,\r\n phone: this.loginForm.get('phone').value,\r\n city:this.loginForm.get('city').value,\r\n state:this.loginForm.get('state').value,\r\n rfc:this.loginForm.get('rfc').value,\r\n };\r\n\r\n this.authservice.createUser(command).subscribe(\r\n resp => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n if (resp.code == '0000') {\r\n this.helperService.showAlert(resp, registerUserSuccess, genericError);\r\n this.router.navigate(['/auth/login']);\r\n } else this.helperService.showAlert(resp, registerUserSuccess, genericError);\r\n },\r\n error => {\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError, '260');\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n }\r\n );\r\n }\r\n }\r\n\r\n CALCULATERFC = (name, lastName, mLastName, birthday: Date) => {\r\n let rfc = '';\r\n\r\n const tmpName = this.cleanName(name.toLocaleUpperCase(), 1);\r\n const tmpLastName = this.cleanName(lastName.toLocaleUpperCase(), 0);\r\n const tmpMLastName = this.cleanName(mLastName.toLocaleUpperCase(), 0);\r\n\r\n rfc += tmpLastName.substr(0, 1);\r\n\r\n let isFoundVocal = false;\r\n let vocal = '';\r\n\r\n for (let i = 1; i < tmpLastName.length; i++) {\r\n const tmp = tmpLastName.charAt(i);\r\n\r\n if (this.isVocal(tmp)) {\r\n isFoundVocal = true;\r\n vocal = tmp;\r\n break;\r\n }\r\n }\r\n\r\n rfc += isFoundVocal ? vocal : 'X';\r\n\r\n rfc += tmpMLastName.length > 0 ? tmpMLastName.substr(0, 1) : 'X';\r\n\r\n rfc += tmpName.substring(0, 1);\r\n\r\n rfc += birthday.getFullYear().toString().substring(2, 4);\r\n rfc += birthday.getMonth() < 10 ? '0' + (birthday.getMonth() + 1).toString() : (birthday.getMonth() + 1).toString();\r\n rfc += birthday.getDate() < 10 ? '0' + birthday.getDate().toString() : birthday.getDate().toString();\r\n\r\n return rfc;\r\n };\r\n cleanName = (name, type) => {\r\n if (type === 1) {\r\n return name\r\n .replace('Ɓ', 'A')\r\n .replace('Ɖ', 'E')\r\n .replace('ƍ', 'I')\r\n .replace('Ɠ', 'O')\r\n .replace('ƚ', 'U')\r\n .replace('MARIA ', '')\r\n .replace('MA. ', '')\r\n .replace('JOSE ', '')\r\n .replace('J ', '')\r\n .replace('J. ', '');\r\n } else {\r\n return name\r\n .replace('Ɓ', 'A')\r\n .replace('Ɖ', 'E')\r\n .replace('ƍ', 'I')\r\n .replace('Ɠ', 'O')\r\n .replace('ƚ', 'U')\r\n .replace('DA ', '')\r\n .replace('DAS ', '')\r\n .replace('DD ', '')\r\n .replace('DE ', '')\r\n .replace('DEL ', '')\r\n .replace('DER ', '')\r\n .replace('DI ', '')\r\n .replace('DIE ', '')\r\n .replace('EL ', '')\r\n .replace('LAS ', '')\r\n .replace('LA ', '')\r\n .replace('LE ', '')\r\n .replace('LES ', '')\r\n .replace('LOS ', '')\r\n .replace('MAC ', '')\r\n .replace('MC ', '')\r\n .replace('VAN ', '')\r\n .replace('VON ', '')\r\n .replace('Y ', '')\r\n .replace('A ', '')\r\n .replace('Ƒ', 'X');\r\n }\r\n };\r\n isVocal = letter => {\r\n if (letter == 'A' || letter == 'E' || letter == 'I' || letter == 'O' || letter == 'U') return true;\r\n else return false;\r\n };\r\n\r\n // getRfc() {\r\n // let lastName = this.loginForm.get('fLastName').value;\r\n // let mLastName = this.loginForm.get('mLastName').value;\r\n // let name = this.loginForm.get('name').value;\r\n // let birthday = this.loginForm.get('birthDate').value;\r\n // let rfc = this.loginForm.get('rfc').updateValueAndValidity;\r\n // if (lastName == '' || mLastName == '' || name == '' || birthday == '')\r\n // return;\r\n\r\n // const tmpRfc = this.CALCULATERFC(name, lastName, mLastName, birthday);\r\n // this.loginForm.get('rfc').setValue(tmpRfc);\r\n // this.loginForm.get('rfc').setErrors({ homoKeyValidator: true });\r\n\r\n // document.getElementById('rfc').focus();\r\n // }\r\n\r\n setUbication() {\r\n return navigator.geolocation.getCurrentPosition(position => {\r\n this.ubication.lat = position.coords.latitude;\r\n this.ubication.long = position.coords.longitude;\r\n });\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-iframe2',\r\n templateUrl: './../..//modals/iframeModal.html',\r\n styles: [],\r\n})\r\nexport class ModalIframe2 {\r\n constructor(public dialogRef: MatDialogRef, private router: Router, @Inject(MAT_DIALOG_DATA) public data) { }\r\n action() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Registro de usuario \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n El\r\n campo correo es obligatorio\r\n Formato\r\n de\r\n email invƔlido\r\n Este correo ya esta registrado\r\n\r\n \"\"\r\n \r\n
\r\n
\r\n \r\n \r\n El campo confirmar correo es obligatorio\r\n \r\n Los\r\n correos no coinciden\r\n\r\n \r\n \"\"\r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n El\r\n campo\r\n Nombre es obligatorio\r\n El campo\r\n solo acepta letras\r\n El\r\n nombre debe contener almenos 4\r\n caracteres\r\n \"\"\r\n \r\n
\r\n
\r\n \r\n \r\n El\r\n campo\r\n Apellido paterno es obligatorio\r\n El\r\n campo\r\n solo acepta letras\r\n El\r\n Apellido paterno debe contener almenos 4\r\n caracteres\r\n \"\"\r\n \r\n
\r\n
\r\n \r\n \r\n El\r\n Apellido materno es obligatorio\r\n El\r\n campo\r\n solo acepta letras\r\n El\r\n Apellido materno debe contener almenos 4\r\n caracteres\r\n \"\"\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n\r\n El\r\n campo\r\n ContraseƱa es obligatorio\r\n \r\n \r\n La contraseƱa debe contener por lo menos 8 caracteres, 1\r\n mayĆŗscula, 1 minĆŗscula, 1 nĆŗmero y 1 carĆ”cter especial\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 El\r\n campo Confirmar contraseƱa es\r\n obligatorio\r\n Las\r\n contraseƱas no\r\n coinciden\r\n \"\"\r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n El\r\n campo TelƩfono es\r\n obligatorio\r\n Numero\r\n de telƩfono\r\n invƔlido\r\n \"\"\r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n El campo es requerido\r\n La Ciudad debe contener almenos 10\r\n carƔcteres\r\n \"\"\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n El campo es requerido\r\n El Estado debe contener almenos 10\r\n carƔcteres\r\n \"\"\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n El campo es requerido\r\n El rfc debe contener al menos 12\r\n carƔcteres\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 cardForm.get(\"alias\").value\r\n }}\r\n
\r\n {{ formatedCard }}\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 El\r\n campo\r\n 16 Digƭtos de tu Tarjeta\r\n es obligatorio\r\n \r\n Numero de\r\n tarjeta\r\n invƔlido\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n El campo\r\n Alias es obligatorio\r\n \r\n El alias\r\n debe contener mĆ­nimo 3\r\n caracteres\r\n
\r\n\r\n
\r\n \r\n \r\n Acepto los\r\n Terminos y Condiciones.\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

1. IntroducciĆ³n

\r\n El presente Aviso de Provacidad establece los tĆ©rminos que iCard Wallet usa y protege la\r\n informaciĆ³n que es\r\n proporcionada por sus usuarios al momento de utilizar la aplicaciĆ³n iCard Wallet. Estamos comprometidos con la\r\n seguridad de los datos de nuestros usuarios o de sus dispositivos. \r\n

2. InformaciĆ³n que recopilamos sobre usted

\r\n \r\n Recopilamos informaciĆ³n sĆ³lo para identificarlo como usuario de nuestra aplicaciĆ³n.\r\n \r\n

2.1 InformaciĆ³n que nos proporciona

\r\n \r\n Recopilamos la siguiente informaciĆ³n:\r\n \r\n
    \r\n
  • Nombre
  • \r\n
  • Usuario
  • \r\n
  • TelĆ©fono (opcional)
  • \r\n
  • Lista de Contactos
  • \r\n
  • Dispositivo u otro ID
  • \r\n
  • GeolocalizaciĆ³n
  • \r\n
\r\n

2.2 Uso de la informaciĆ³n recogida

\r\n Utilizamos sus datos para:\r\n
    \r\n
  • Nombre: conocer cĆ³mo nos referimos a usted en mensaje personalizado y cĆ³mo se muestra su\r\n identidad en la app.
  • \r\n
  • Usuario: es su identificador con el que ingresarĆ” en la aplicaciĆ³n.
  • \r\n
  • TelĆ©fono: proporcionarle avisos vĆ­a SMS o comunicarnos con usted, ese dato es opcional y no\r\n es requerido en caso de que usted no lo requiera.
  • \r\n
  • Lista de Contactos: guardamos los nĆŗmeros de los contactos que usted considere como\r\n favoritos, estos datos solo los puede visualizar usted y no son compartidos con nadie, solo se guardan\r\n para que usted tenga un fĆ”cil acceso a sus recargas telefĆ³nicas mĆ”s frecuentes.
  • \r\n
  • Dispositivo u otro ID: solo guardamos el ID de su dispositivo para enviarle notificaciones\r\n push cuando reciba saldo o avisos sobre el estado de la plataforma.
  • \r\n
  • GeolocalizaciĆ³n: obtenemos este dato, para conocer estadĆ­sticamente en que lugar de la\r\n repĆŗblica mexicana utilizan nuestra app.
  • \r\n
\r\n

3. InformaciĆ³n que compartimos sobre usted

\r\n \r\n iCard Wallet no comparte ningĆŗn dato proporcionado por nuestros usuarios con proveedores, clientes, ni otro\r\n componente externo a iCard Wallet.\r\n \r\n

4. Enlaces a terceros

\r\n \r\n iCard Wallet contiene enlace solamente a nuestro telĆ©fono de soporte, para que se ponga en contacto cuando usted necesite ayuda telefĆ³nica para ingresar a la plataforma o el uso de la aplicaciĆ³n.\r\n \r\n

5. Modificaciones de la polĆ­tica de privacidad

\r\n \r\n Este Aviso de Privacidad puede ser actualizado en cualquier momento mostrando la fecha de la Ćŗltima actualizaciĆ³n. En caso de ser requerido por la legislaciĆ³n competente o en efectos solicitados por Goolge y/o Apple, solicitaremos su consentimiento para aprobar dichas solicitudes. Este documento ha sido actualizado el 18 de septiembre de 2023. \r\n
\r\n","import { Subscription } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\n\r\nimport * as fromCards from './../../state/cards/cards.reducer';\r\nimport { paySelected } from '../../state/cards/cards.actions';\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-carousel-cards',\r\n templateUrl: './carousel-cards.component.html',\r\n styleUrls: ['./carousel-cards.component.scss'],\r\n})\r\nexport class CarouselCardsComponent implements OnInit {\r\n cards$ = this.store.select(fromCards.selectCards);\r\n subscription: Subscription[] = [];\r\n cardSelected$ = this.store.select(fromCards.selectCardSelected);\r\n @ViewChild('stepper') stepper;\r\n event: boolean = null;\r\n constructor(private store: Store) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n setEvent(e: HTMLElement) {\r\n const self = this;\r\n if (this.event == null) {\r\n e.addEventListener('slide.bs.carousel', function ({ to }) {\r\n setTimeout(() => {\r\n self.store.dispatch(paySelected({ cardIndex: to }));\r\n }, 400);\r\n });\r\n this.event = true;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscription.map(sub => sub.unsubscribe());\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 {{card.fisica.cardName.toUpperCase()}}\r\n
\r\n
\r\n $ {{card.fisica.balance | number : '1.2-2'}}\r\n
\r\n
\r\n
\r\n {{card.fisica.numCard}}\r\n
\r\n
\r\n
\r\n
\r\n {{card.fisica.duaDate}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { map } from 'rxjs/operators';\r\nimport { Store } from '@ngrx/store';\r\nimport { Router } from '@angular/router';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport * as fromAuth from './../../state/auth/auth.reducer';\r\nimport { AuthenticationService } from 'src/app/_services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-config-user',\r\n templateUrl: './config-user.component.html',\r\n styleUrls: ['./config-user.component.scss'],\r\n})\r\nexport class ConfigUserComponent implements OnInit {\r\n user$ = this.store.select(fromAuth.selectUser);\r\n userActivity$ = this.user$.pipe(\r\n map(u => {\r\n if (u.createDate) return new Date(u.createDate).getFullYear();\r\n })\r\n );\r\n constructor(\r\n private authService: AuthenticationService,\r\n private router: Router,\r\n public dialog: MatDialog,\r\n private store: Store\r\n ) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n openDialog() {\r\n const dialogRef = this.dialog.open(ModalTerms, {\r\n width: '400px',\r\n height: '318px',\r\n data: {\r\n text: `\r\n

Legales

`,\r\n },\r\n });\r\n }\r\n\r\n openContact() {\r\n this.dialog.open(ModalContact, {\r\n width: '400px',\r\n height: '318px',\r\n data: {\r\n text: `\r\n

Contacto

`,\r\n },\r\n });\r\n }\r\n\r\n logout() {\r\n this.authService.logout();\r\n this.router.navigate(['/auth/login']);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-terms-card',\r\n templateUrl: './../modals/termsModal.html',\r\n styleUrls: ['./../modals/modalStyle.css'],\r\n})\r\nexport class ModalTerms {\r\n constructor(public dialogRef: MatDialogRef, public dialog: MatDialog, @Inject(MAT_DIALOG_DATA) public data) {}\r\n\r\n action(url) {\r\n this.dialogRef.close();\r\n this.dialog.open(ModalIframe, {\r\n width: '100%',\r\n height: '80%',\r\n panelClass: 'custom-modalbox',\r\n data: { url: url },\r\n });\r\n }\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-contact',\r\n templateUrl: './../modals/contatcModal.html',\r\n styleUrls: ['./../modals/modalStyle.css'],\r\n})\r\nexport class ModalContact {\r\n constructor(public dialogRef: MatDialogRef, public dialog: MatDialog, @Inject(MAT_DIALOG_DATA) public data) {}\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n\r\n whats() {\r\n let supportNumber = '+525613472452';\r\n this.dialogRef.close();\r\n window.location.href = `https://api.whatsapp.com/send?phone=${supportNumber}`;\r\n }\r\n callUS() {\r\n this.dialogRef.close();\r\n window.location.href = 'tel:392-131-0646';\r\n }\r\n mailUS() {\r\n this.dialogRef.close();\r\n window.open('aclaraciones@Axe.com.mx');\r\n }\r\n sendMail() {\r\n var link = 'mailto:aclaraciones@Axe.com.mx' + '&subject=' + encodeURIComponent('AclaraciĆ³n dudas Axe') + '&body=' + '';\r\n window.location.href = link;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-iframe',\r\n templateUrl: './../modals/iframeModal.html',\r\n styles: [],\r\n})\r\nexport class ModalIframe {\r\n constructor(public dialogRef: MatDialogRef, private router: Router, @Inject(MAT_DIALOG_DATA) public data) {}\r\n action() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Mis Datos

\r\n
\r\n \"Axe\"\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n {{(user$ | async)?.nombre | titlecase}}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Mis Datos\r\n Visualiza tu informaciĆ³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 Seguridad\r\n Cambia tu contraseƱa\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n Contacto\r\n Escrƭbenos o llƔmanos\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 Legales\r\n Aviso de privacidad, tƩrminos y condiciones\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 ICard Wallet VersiĆ³n 1.2.0\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
","
\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n
\r\n","
\r\n \r\n\r\n\r\n
\r\n
\r\n
\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, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthenticationService } from '../../_services/auth.service';\r\nimport { Store } from '@ngrx/store';\r\nimport * as fromAuth from '../../state/auth/auth.reducer';\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss'],\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n @Output() toggleSidebarForMe: EventEmitter = new EventEmitter();\r\n user$ = this.store.select(fromAuth.selectUser);\r\n\r\n constructor(private authService: AuthenticationService, private store: Store, private router: Router) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleSidebar() {\r\n this.toggleSidebarForMe.emit();\r\n }\r\n\r\n capitalizer(word: string) {\r\n return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();\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 } from '@angular/core';\r\nimport * as fromApp from '../../state/app/app.reducer';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { AuthenticationService } from '../../_services/auth.service';\r\nimport { HelperService } from '../../_services/helper.service';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.scss'],\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n constructor(\r\n private device: DeviceDetectorService,\r\n private authService: AuthenticationService,\r\n private helpService: HelperService,\r\n private router: Router,\r\n private store: Store\r\n ) {}\r\n user$ = this.authService.user$;\r\n isRefreshed = false;\r\n title = 'admin-panel-layout';\r\n sideBarOpen = this.device.isMobile() || this.device.isTablet() ? false : true;\r\n idleState = 'Not started.';\r\n timedOut = false;\r\n lastPing?: Date = null;\r\n isLoading$ = this.store.select(fromApp.selectLoading);\r\n\r\n ngOnInit(): void {}\r\n\r\n sideBarToggler() {\r\n this.sideBarOpen = !this.sideBarOpen;\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 { Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loading-overlay',\r\n templateUrl: './loading-overlay.component.html',\r\n styleUrls: ['./loading-overlay.component.scss'],\r\n})\r\nexport class LoadingOverlayComponent implements OnInit {\r\n @Output() showModal = new EventEmitter();\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n isLoading() {\r\n document.querySelector('.loading-overlay').classList.add('is-active');\r\n }\r\n\r\n isCompleted() {\r\n document.querySelector('.loading-overlay').classList.remove('is-active');\r\n }\r\n}\r\n","
\r\n \r\n
","import { NgModule } from '@angular/core';\r\nimport { MatRippleModule, MatNativeDateModule } from '@angular/material/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { SafePipe } from '../../pipes/safe.pipe';\r\nimport { ModalIframe } from '../config-user/config-user.component';\r\nimport { ModalIframe2 } from '../auth/register/register.component';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { CarouselCardsComponent } from '../carousel-cards/carousel-cards.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { UiSwitchModule } from 'ngx-ui-switch';\r\n@NgModule({\r\n declarations: [SafePipe, ModalIframe, ModalIframe2, CarouselCardsComponent],\r\n imports: [\r\n ReactiveFormsModule,\r\n NgSelectModule,\r\n FormsModule,\r\n CommonModule,\r\n MatFormFieldModule,\r\n MatDialogModule,\r\n MatRippleModule,\r\n MatInputModule,\r\n MatProgressSpinnerModule,\r\n MatSelectModule,\r\n MatSlideToggleModule,\r\n MatStepperModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatIconModule,\r\n MatTableModule,\r\n MatButtonModule,\r\n MatSortModule,\r\n UiSwitchModule,\r\n ],\r\n exports: [\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatRippleModule,\r\n MatNativeDateModule,\r\n MatInputModule,\r\n MatProgressSpinnerModule,\r\n MatSelectModule,\r\n MatSlideToggleModule,\r\n MatStepperModule,\r\n MatDatepickerModule,\r\n SafePipe,\r\n ModalIframe,\r\n ModalIframe2,\r\n CarouselCardsComponent,\r\n MatIconModule,\r\n MatTableModule,\r\n MatSortModule,\r\n MatDialogModule,\r\n FormsModule,\r\n NgSelectModule,\r\n UiSwitchModule,\r\n ],\r\n})\r\nexport class MaterialModule {}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport { GenerateBill } from '../../../state/cards/cards.actions';\r\nimport * as fromApp from '../../../state/app/app.reducer';\r\n\r\n@Component({\r\n selector: 'app-bill-modal',\r\n templateUrl: './bill-modal.component.html',\r\n})\r\nexport class BillModalComponent implements OnInit {\r\n title: string;\r\n dateRangeForm: UntypedFormGroup;\r\n loading$ = this.store.select(fromApp.selectLoading);\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n private formBuilder: UntypedFormBuilder,\r\n private store: Store,\r\n @Inject(MAT_DIALOG_DATA) public data: BillModalComponent\r\n ) {\r\n this.title = this.data.title;\r\n }\r\n ngOnInit(): void {\r\n this.dateRangeForm = this.formBuilder.group({\r\n fromDate: new UntypedFormControl('', Validators.required),\r\n toDate: new UntypedFormControl('', Validators.required),\r\n });\r\n }\r\n\r\n onFormSubmit() {\r\n if (this.dateRangeForm.valid)\r\n this.store.dispatch(\r\n GenerateBill({\r\n startDate: this.dateRangeForm.value.fromDate.toISOString().slice(0, 10),\r\n endDate: this.dateRangeForm.value.toDate.toISOString().slice(0, 10),\r\n })\r\n );\r\n }\r\n}\r\nexport class BillDialogModel {\r\n constructor(public title: string) {}\r\n}\r\n","
\r\n
\r\n\r\n
\r\n

\r\n {{title}}\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n Introduce el periodo\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Fecha de inicio\r\n invƔlida\r\n \r\n Fecha final invƔlida\r\n \r\n\r\n \r\n Fecha inicio es requerida\r\n \r\n Fecha final es requerida\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { Store } from '@ngrx/store';\r\nimport { map, first } from 'rxjs/operators';\r\nimport { Actions, ofType } from '@ngrx/effects';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { FormBuilder, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\n\r\nimport { genericError } from 'src/app/_helpers/messages';\r\nimport * as fromApp from '../../../state/app/app.reducer';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport { HelperService } from 'src/app/_services/helper.service';\r\nimport { selectPassword } from 'src/app/state/auth/auth.reducer';\r\nimport { changeNip, changeNipFail, changeNipSuccess } from '../../../state/cards/cards.actions';\r\n\r\n@Component({\r\n selector: 'app-change-nip-modal',\r\n templateUrl: './change-nip-modal.component.html',\r\n styleUrls: ['./change-nip-modal-styles.scss'],\r\n})\r\nexport class ChangeNipModalComponent implements OnInit {\r\n step: 1 | 2 = 1;\r\n nipForm: FormGroup;\r\n title: string;\r\n toogle: boolean = null;\r\n limit = new FormControl(0);\r\n password = new FormControl(null, [Validators.required, Validators.minLength(4)]);\r\n loading$ = this.store.select(fromApp.selectLoading);\r\n password$ = this.store.select(selectPassword);\r\n selectedCard$ = this.store.select(fromCards.selectCardSelected);\r\n card$ = this.store.select(fromCards.selectCardsState).pipe(map(s => s.cards[s.cardSelected.cardIndexSelected]));\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n private store: Store,\r\n private helperService: HelperService,\r\n private formBuilder: FormBuilder,\r\n private actions$: Actions,\r\n @Inject(MAT_DIALOG_DATA) public data: ChangeNipModalComponent\r\n ) {\r\n this.title = data.title;\r\n this.nipForm = this.formBuilder.group(\r\n {\r\n newNip: ['', Validators.required],\r\n confirmNewNip: ['', Validators.required],\r\n },\r\n { validator: this.passwordMatchValidator }\r\n );\r\n }\r\n ngOnInit(): void { }\r\n checkPassword(): void {\r\n this.password$.pipe(first()).subscribe(pass => {\r\n if (pass == btoa(this.password.value)) {\r\n this.step = 2;\r\n } else {\r\n return this.helperService.showAlert({ code: '', message: 'ContraseƱa incorrecta' }, '', genericError);\r\n }\r\n });\r\n }\r\n submitForm() {\r\n // SUBSCRIBIRSE AL EVENTO DE CHANGENIP\r\n this.actions$.pipe(ofType(changeNipSuccess, changeNipFail), first()).subscribe(x => {\r\n switch (x.type) {\r\n case changeNipSuccess.type:\r\n return this.dialogRef.close();\r\n default:\r\n break;\r\n }\r\n });\r\n this.card$.pipe(first()).subscribe(card => {\r\n this.store.dispatch(\r\n changeNip({\r\n card: card.fisica.numCard,\r\n nip: this.nipForm.get('newNip').value,\r\n })\r\n );\r\n });\r\n }\r\n passwordMatchValidator: ValidatorFn = (control: FormGroup): { [key: string]: boolean } | null => {\r\n const newNip = control.get('newNip');\r\n const confirmNewNip = control.get('confirmNewNip');\r\n\r\n return newNip && confirmNewNip && newNip.value !== confirmNewNip.value ? { passwordMismatch: true } : null;\r\n };\r\n}\r\nexport class ChangeNipDialogModel {\r\n constructor(public title: string) { }\r\n}\r\n","
\r\n
\r\n

\r\n {{ title }}\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 Nip es requerido.\r\n

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

\r\n Los NIP no coinciden.\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Store } from '@ngrx/store';\r\nimport { Actions } from '@ngrx/effects';\r\nimport { first } from 'rxjs/operators';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { Component, Inject, OnInit, ViewChild } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\n\r\nimport { Cards } from 'src/app/interfaces/responseCards';\r\nimport { Charge } from 'src/app/interfaces/responseMovements';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\n\r\n@Component({\r\n selector: 'app-charge-control-modal',\r\n templateUrl: './charge-control-modal.component.html',\r\n styles: ['::ng-deep .mat-form-field-label-wrapper{ top: -1.25em;} ::ng-deep .mat-form-field-suffix {margin-right: .5em;}'],\r\n})\r\nexport class ChargeControlComponent implements OnInit {\r\n title: string;\r\n charge: Charge;\r\n cardSelected$ = this.store.select(fromCards.selectCardSelected);\r\n loading$ = this.store.select(fromCards.selectLoading);\r\n cvv = new FormControl();\r\n subscription$ = new Subscription();\r\n file: File;\r\n cards$: Observable = this.store.select(fromCards.selectCards);\r\n Extension: string;\r\n FileName: string;\r\n IdMovimiento: string;\r\n IdTarjeta: string;\r\n succeded: boolean = false;\r\n @ViewChild('fileUploader') fileUploader;\r\n constructor(\r\n private sant: DomSanitizer,\r\n private actions$: Actions,\r\n private store: Store,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: ChargeControlComponent\r\n ) {\r\n this.title = data.title;\r\n // this.charge = data.charge;\r\n this.IdMovimiento = data.charge.id.toString();\r\n this.cards$.pipe(first()).subscribe(x => {\r\n this.IdTarjeta = x[parseInt(data.IdTarjeta)].fisica.idTarjeta.toString();\r\n });\r\n }\r\n onConfirm() {\r\n let btn = this.fileUploader.nativeElement;\r\n btn.click();\r\n }\r\n ngOnInit(): void {\r\n this.succeded = false;\r\n }\r\n onDismiss(): void {\r\n this.dialogRef.close(true);\r\n }\r\n async handleFileInput(files: FileList) {\r\n this.file = files.item(0);\r\n let url = this.sant.bypassSecurityTrustHtml(window.URL.createObjectURL(this.file)) as string;\r\n await this.Submit();\r\n }\r\n\r\n async Submit() {\r\n let convertedFile: string;\r\n\r\n convertedFile = await this.convert2Base64(this.file);\r\n let splited = convertedFile.split(',');\r\n splited[0] = '';\r\n convertedFile = splited.reduce((prev: String, current: string) => {\r\n return prev + current;\r\n }, '');\r\n\r\n // let formData: UploadChargeRequest = { IdTarjeta: parseInt(this.IdTarjeta), Extension: this.file.type, IdMovimiento: parseInt(this.IdMovimiento), FileBase64: convertedFile, FileName: this.file.name }\r\n // this.store.dispatch(UpdateChargeComp({ formData }));\r\n // this.subscription$ = this.actions$.pipe(\r\n // ofType(UpdateChargeCompSuccess)).subscribe(({ response }) => {\r\n // this.succeded = true;\r\n // this.store.dispatch(setLoading({ loading: false }))\r\n // })\r\n }\r\n\r\n convert2Base64(cFile: File) {\r\n return new Promise((resolve, reject) => {\r\n let res: string = '';\r\n let reader = new FileReader();\r\n reader.readAsDataURL(cFile as Blob);\r\n reader.onloadend = t => {\r\n resolve((res = reader.result as string));\r\n };\r\n reader.onerror = reject;\r\n });\r\n }\r\n close() {\r\n this.dialogRef.close();\r\n }\r\n}\r\n\r\nexport class ChargeControlDialogModel {\r\n constructor(public title: string, public charge: any, public IdTarjeta: any) { }\r\n}\r\n\r\n// las promesas son task\r\n/*\r\nretornar new Promise(resolve,reject) donde es el tipo esperado\r\nresolve se usa donde se espera obtener el valor\r\nresolve es una funcion, donde el parametro es toda la accion que se busca esperar\r\ny reject es para manejar el error\r\n*/\r\n","
\r\n
\r\n

\r\n {{title}}\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 check_circle_outline\r\n
\r\n

Comprobar Gasto

\r\n
OperaciĆ³n realizada correctamente
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
","import { Store } from '@ngrx/store';\r\nimport { map, first } from 'rxjs/operators';\r\nimport { Actions, ofType } from '@ngrx/effects';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\n\r\nimport { genericError } from 'src/app/_helpers/messages';\r\nimport { HelperService } from 'src/app/_services/helper.service';\r\nimport * as fromApp from '../../../state/app/app.reducer';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport { getLimit, getNip, getNipFail, setLimit, setNip, updateLimit } from '../../../state/cards/cards.actions';\r\n\r\n@Component({\r\n selector: 'app-control-modal',\r\n templateUrl: './control-modal.component.html',\r\n styleUrls: ['./control-modal-styles.scss'],\r\n})\r\nexport class ControlModalComponent implements OnInit {\r\n step: 1 | 2 = 1;\r\n title: string;\r\n toogle: boolean = null;\r\n limit = new FormControl(0);\r\n nip = new FormControl(null, [Validators.required, Validators.minLength(4)]);\r\n loading$ = this.store.select(fromApp.selectLoading);\r\n selectedCard$ = this.store.select(fromCards.selectCardSelected);\r\n card$ = this.store.select(fromCards.selectCardsState).pipe(map(s => s.cards[s.cardSelected.cardIndexSelected]));\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n private store: Store,\r\n private helperService: HelperService,\r\n private actions$: Actions,\r\n @Inject(MAT_DIALOG_DATA) public data: ControlModalComponent\r\n ) {\r\n this.title = data.title;\r\n }\r\n ngOnInit(): void { }\r\n onConfirm(): void {\r\n if (this.limit.value > 500000)\r\n return this.helperService.showAlert({ code: '', message: 'El monto mƔximo de lƭmite es $500,000' }, '', genericError);\r\n this.selectedCard$.pipe(first()).subscribe(x => {\r\n if (x.limit != this.limit.value) {\r\n this.store.dispatch(updateLimit({ limiteCompra: this.limit.value == 0 ? null : this.limit.value }));\r\n }\r\n return this.dialogRef.close();\r\n });\r\n }\r\n checkNip(): void {\r\n this.store.dispatch(getNip());\r\n this.actions$.pipe(ofType(setNip, getNipFail), first()).subscribe(x => {\r\n switch (x.type) {\r\n case getNipFail.type:\r\n return this.helperService.showAlert({ code: '', message: x.error }, '', genericError);\r\n case setNip.type:\r\n if (x.nip != this.nip.value)\r\n return this.helperService.showAlert({ code: '', message: 'NIP incorrecto' }, '', genericError);\r\n this.step = 2;\r\n this.store.dispatch(getLimit());\r\n this.actions$.pipe(ofType(setLimit), first()).subscribe(x => this.limit.patchValue(x.limit));\r\n break;\r\n }\r\n });\r\n }\r\n}\r\nexport class ControlDialogModel {\r\n constructor(public title: string) { }\r\n}\r\n","
\r\n
\r\n

\r\n {{title}}\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport * as CardActions from '../../../state/cards/cards.actions';\r\n@Component({\r\n selector: 'app-delete-modal',\r\n templateUrl: './delete-modal.component.html',\r\n})\r\nexport class DeleteDialogComponent {\r\n title: string;\r\n message: { cardName: string; lastDigits: string };\r\n lastDigits: string;\r\n constructor(\r\n private store: Store,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: DeleteDialogComponent\r\n ) {\r\n this.title = data.title;\r\n this.message = data.message;\r\n }\r\n\r\n onConfirm(): void {\r\n this.store.dispatch(CardActions.deleteCard());\r\n // Close the dialog, return true\r\n this.dialogRef.close(true);\r\n }\r\n\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.dialogRef.close(false);\r\n }\r\n}\r\n\r\nexport class DeleteDialogModel {\r\n constructor(public title: string, public message: { cardName: string; lastDigits: string }) {}\r\n}\r\n","
\r\n
\r\n

\r\n {{title}}\r\n

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

Se eliminarĆ” la Tarjeta ā€œ{{message.cardName}}ā€ con terminaciĆ³n ****{{message.lastDigits}},\r\n una vez eliminada, no podrĆ” agregarse a otro usuario

\r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport { map } from 'rxjs/operators';\r\n@Component({\r\n selector: 'app-show-cvv-modal',\r\n templateUrl: './show-cvv-modal.component.html',\r\n})\r\nexport class ShowCvvModalComponent implements OnInit {\r\n title: string;\r\n countDown: string = '5:00';\r\n distance = 299 * 1000;\r\n cvv$ = this.store.select(fromCards.selectCardSelected).pipe(map(x => x.cvv));\r\n\r\n constructor(\r\n private store: Store,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: ShowCvvModalComponent\r\n ) {\r\n this.title = data.title;\r\n }\r\n ngOnInit(): void {\r\n let interval = setInterval(() => {\r\n const minutes = Math.floor((this.distance % (1000 * 60 * 60)) / (1000 * 60));\r\n const seconds = Math.floor((this.distance % (1000 * 60)) / 1000);\r\n this.countDown = `${minutes}:${seconds <= 9 && seconds > 0 ? 0 : ''}${seconds}${seconds == 0 ? 0 : ''}`;\r\n this.distance = this.distance - 1000;\r\n if (this.distance < 0) clearInterval(interval);\r\n }, 1000);\r\n }\r\n}\r\n\r\nexport class ShowCvvDialogModel {\r\n constructor(public title: string) {}\r\n}\r\n","
\r\n
\r\n

\r\n {{title}}\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, Inject, OnInit } from '@angular/core';\r\nimport { UntypedFormControl, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport { clearNip, getNip } from '../../../state/cards/cards.actions';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport * as fromApp from '../../../state/app/app.reducer';\r\nimport { first, map } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-show-nip-modal',\r\n templateUrl: './show-nip-modal.component.html',\r\n styles: ['::ng-deep .mat-form-field-label-wrapper{ top: -1.25em;} ::ng-deep .mat-form-field-suffix {margin-right: .5em;}'],\r\n})\r\nexport class ShowNipModalComponent implements OnInit {\r\n title: string;\r\n message: { cardName: string; lastDigits: string };\r\n cardSelected$ = this.store.select(fromCards.selectCardSelected);\r\n loading$ = this.store.select(fromApp.selectLoading);\r\n cvv = new UntypedFormControl('', Validators.required);\r\n constructor(\r\n private store: Store,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: ShowNipModalComponent\r\n ) {\r\n this.title = data.title;\r\n this.message = data.message;\r\n }\r\n\r\n onConfirm() {\r\n this.store.dispatch(getNip());\r\n }\r\n\r\n ngOnInit(): void {\r\n this.store.dispatch(clearNip());\r\n }\r\n\r\n onDismiss(): void {\r\n // this.store.dispatch((clearNip()))\r\n this.dialogRef.close(true);\r\n }\r\n\r\n get nip() {\r\n let nip: string | null = null;\r\n this.cardSelected$\r\n .pipe(\r\n map(c => {\r\n nip = c.nip;\r\n })\r\n )\r\n .subscribe();\r\n return nip;\r\n }\r\n}\r\nexport class ShowNipDialogModel {\r\n constructor(public title: string, public message: { cardName: string; lastDigits: string }) { }\r\n}\r\n","
\r\n
\r\n

\r\n {{title}}\r\n

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

El NIP de tu tarjeta: \"{{message.cardName}}\" con terminaciĆ³n\r\n ****{{message.lastDigits}} es:

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

El NIP de tu Tarjeta \"{{message.cardName}}\" con terminaciĆ³n\r\n ****{{message.lastDigits}} es:

\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n","import { Component, Inject, OnDestroy, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport * as fromApp from '../../../state/app/app.reducer';\r\nimport * as fromCards from '../../../state/cards/cards.reducer';\r\nimport { changeNip, transferCard, transferCardFail, transferCardSuccess, updateLimit } from '../../../state/cards/cards.actions';\r\nimport { map, first, take } from 'rxjs/operators';\r\nimport { FormBuilder, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\nimport { Actions, ofType } from '@ngrx/effects';\r\nimport { HelperService } from 'src/app/_services/helper.service';\r\nimport { selectComision, selectPassword } from 'src/app/state/auth/auth.reducer';\r\nimport { Subscription, combineLatest } from 'rxjs';\r\n@Component({\r\n selector: 'app-transfer-card-modal',\r\n templateUrl: './transfer-card-modal.component.html',\r\n styleUrls: ['./transfer-card-modal-styles.scss'],\r\n})\r\nexport class TransferCardModalComponent implements OnInit, OnDestroy {\r\n step: 1 | 2 = 1;\r\n transferForm: FormGroup;\r\n subscription: Subscription = null;\r\n title: string;\r\n toogle: boolean = null;\r\n limit = new FormControl(0);\r\n password = new FormControl(null, [Validators.required, Validators.minLength(4)]);\r\n loading$ = this.store.select(fromApp.selectLoading);\r\n password$ = this.store.select(selectPassword);\r\n selectedCard$ = this.store.select(fromCards.selectCardSelected);\r\n card$ = this.store.select(fromCards.selectCardsState).pipe(map(s => s.cards[s.cardSelected.cardIndexSelected]));\r\n comission$ = this.store.select(selectComision);\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n private store: Store,\r\n private helperService: HelperService,\r\n private formBuilder: FormBuilder,\r\n private actions$: Actions,\r\n @Inject(MAT_DIALOG_DATA) public data: TransferCardModalComponent\r\n ) {\r\n this.title = data.title;\r\n this.transferForm = this.formBuilder.group({\r\n originCard: ['', Validators.required],\r\n destinationCard: ['', Validators.required],\r\n amount: [null, Validators.required],\r\n comission: [null, Validators.required],\r\n total: [null, Validators.required],\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n if (this.subscription) this.subscription.unsubscribe();\r\n }\r\n ngOnInit(): void {\r\n combineLatest([this.card$, this.comission$])\r\n .pipe(take(1))\r\n .subscribe(([card, comission]) => {\r\n this.transferForm.patchValue({\r\n originCard: card.fisica.numCard?.replace(/ /g, ''),\r\n comission,\r\n });\r\n });\r\n this.subscription = this.transferForm.get('amount').valueChanges.subscribe(() => this.calcularTotal());\r\n }\r\n\r\n calcularTotal() {\r\n const cantidad = this.transferForm.get('amount').value;\r\n const comission = this.transferForm.get('comission').value;\r\n this.transferForm.patchValue({\r\n total: cantidad + comission,\r\n });\r\n }\r\n submitForm() {\r\n this.actions$.pipe(ofType(transferCardSuccess, transferCardFail), first()).subscribe(x => {\r\n switch (x.type) {\r\n case transferCardSuccess.type:\r\n return this.dialogRef.close();\r\n default:\r\n break;\r\n }\r\n });\r\n this.store.dispatch(\r\n transferCard({\r\n amount: this.transferForm.get('amount').value,\r\n destinationCard: this.transferForm.get('destinationCard').value,\r\n originCard: this.transferForm.get('originCard').value,\r\n })\r\n );\r\n }\r\n}\r\nexport class TransferCardDialogModel {\r\n constructor(public title: string) { }\r\n}\r\n","
\r\n
\r\n

\r\n {{ title }}\r\n

\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-progress-bar',\r\n templateUrl: './progress-bar.component.html',\r\n styleUrls: ['./progress-bar.component.scss'],\r\n})\r\nexport class ProgressBarComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n
","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-sidenav',\r\n templateUrl: './sidenav.component.html',\r\n styleUrls: ['./sidenav.component.scss'],\r\n})\r\nexport class SidenavComponent implements OnInit {\r\n @Output() toggleSidebarForMe: EventEmitter = new EventEmitter();\r\n\r\n constructor(private device: DeviceDetectorService) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n isShowingServices: boolean = environment.isShowingServices;\r\n toggleSidebar() {\r\n // if(this.device.isMobile() || this.device.isTablet()){\r\n // this.toggleSidebarForMe.emit();\r\n // }\r\n if (window.matchMedia('(max-width: 991.98px)').matches) {\r\n this.toggleSidebarForMe.emit();\r\n }\r\n }\r\n}\r\n","\r\n
\r\n \r\n
\r\n

MENƚ

\r\n
\r\n
\r\n \r\n\r\n \r\n
","import { Injectable } from '@angular/core';\r\nimport { NativeDateAdapter } from '@angular/material/core';\r\nconst SUPPORTS_INTL_API = typeof Intl !== 'undefined';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class DateFormat extends NativeDateAdapter {\r\n useUtcForDisplay = true;\r\n parse(value: any): Date | null {\r\n if (typeof value === 'string' && value.indexOf('/') > -1) {\r\n const str = value.split('/');\r\n const year = Number(str[2]);\r\n const month = Number(str[1]) - 1;\r\n const date = Number(str[0]);\r\n return new Date(year, month, date);\r\n }\r\n const timestamp = typeof value === 'number' ? value : Date.parse(value);\r\n return isNaN(timestamp) ? null : new Date(timestamp);\r\n }\r\n}\r\n","export enum modalTypes {\r\n confirm = 1,\r\n showNip,\r\n control,\r\n cvv,\r\n bill,\r\n chargesControl = 7,\r\n changeNip,\r\n transferCard,\r\n}\r\n","export class RechargeServiceModel {\r\n referencia: string;\r\n sku: string;\r\n monto: number;\r\n tarjeta: string;\r\n nombreProducto: string;\r\n\r\n /**\r\n *\r\n */\r\n constructor(recharge: RechargeServiceModel) {\r\n this.referencia = recharge.referencia;\r\n this.sku = recharge.sku;\r\n this.monto = recharge.monto;\r\n this.tarjeta = recharge.tarjeta;\r\n this.nombreProducto = recharge.nombreProducto;\r\n }\r\n}\r\n","import { Charge } from './responseMovements';\r\nexport interface ResponseCards {\r\n data: Cards[];\r\n total: number;\r\n code: string;\r\n message: string;\r\n}\r\n\r\nexport interface Cards {\r\n fisica: Card;\r\n virtual?: Card;\r\n duadate?: null;\r\n accountID: string;\r\n}\r\n\r\nexport interface Card {\r\n idCard: number;\r\n cardID: string;\r\n cardName: string;\r\n idProduct: number;\r\n balance: number;\r\n duaDate: string;\r\n cvv: string;\r\n numCard: string;\r\n idStatus: number;\r\n actions: number[];\r\n virtualNumCard: string;\r\n idTarjeta: number;\r\n canales: Canal[];\r\n expired: boolean;\r\n tipoTarjeta: number;\r\n}\r\n\r\nexport interface Canal {\r\n panId: null;\r\n NameLock: NameLock;\r\n estatus: boolean;\r\n idCanal: number;\r\n Description: Description;\r\n}\r\nexport enum Description {\r\n cajerosAutomaticos = 'Cajeros Automaticos',\r\n comprasPorInternet = 'Compras por internet',\r\n puntosDeVenta = 'Puntos de Venta',\r\n}\r\n\r\nexport enum NameLock {\r\n lockATM = 'lock_atm',\r\n lockExtranjero = 'lock_extranjero',\r\n lockInternet = 'lock_internet',\r\n lockPos = 'lock_pos',\r\n}\r\n","export interface ResponseLogin {\r\n data: Data;\r\n total: number;\r\n code: string;\r\n message: string;\r\n password: string;\r\n}\r\n\r\nexport interface Data {\r\n IsAuthenticated: boolean;\r\n jwt: string;\r\n RefreshToken: string;\r\n ExpDate: string;\r\n user: User;\r\n comission: number;\r\n}\r\n\r\nexport interface User {\r\n email: string;\r\n nombre: string;\r\n apellidoPaterno: string;\r\n apellidoMaterno: string;\r\n password: null;\r\n fechaNacimiento: Date;\r\n phone: string;\r\n address: string;\r\n ciudad: string;\r\n estado: string;\r\n rfc: string;\r\n gender: string;\r\n tarjeta: null;\r\n photo: string | null;\r\n userId: string;\r\n id: number;\r\n createDate: Date;\r\n}\r\n\r\n// let us: User = {createDate}\r\n// us.createDate.getFullYear()\r\nexport class UserLogin {\r\n Username: string;\r\n Password: string;\r\n NotificationToken: string;\r\n Plattaform: string;\r\n SO: string;\r\n\r\n constructor(email: string, password: string) {\r\n this.Username = email;\r\n this.Password = password;\r\n this.NotificationToken = '';\r\n this.Plattaform = 'Web-App';\r\n this.SO = 'Unknown';\r\n }\r\n}\r\n","import { FormGroup } from '@angular/forms';\r\n\r\nexport interface ResponseNewUser {\r\n data: Data;\r\n total: number;\r\n code: string;\r\n message: string;\r\n}\r\n\r\nexport interface Data {\r\n Email: string;\r\n Nombre: string;\r\n ApellidoPaterno: string;\r\n ApellidoMaterno: string;\r\n Password: string;\r\n FechaNacimiento: Date;\r\n Phone: string;\r\n Address: string;\r\n Ciudad: string;\r\n Estado: string;\r\n RFC: string;\r\n Gender: string;\r\n Tarjeta: Tarjeta;\r\n Photo: string | null;\r\n UserId: number | null;\r\n Id: number;\r\n}\r\n\r\nexport interface Tarjeta {\r\n Numero: string;\r\n CVV: string;\r\n FechaVencimiento: Date;\r\n Alias: string;\r\n IdTarjetaHabienteApp: number;\r\n Id: number;\r\n}\r\n\r\nexport interface User {\r\n Email: string;\r\n Nombre: string;\r\n ApellidoPaterno: string;\r\n ApellidoMaterno: string;\r\n Password: string;\r\n FechaNacimiento: string;\r\n Phone: string;\r\n Address: string;\r\n Ciudad: string;\r\n Estado: string;\r\n Pais: string;\r\n RFC: string;\r\n Gender: string;\r\n Tarjeta: CrearTarjeta[];\r\n Beneficiario: Beneficiario;\r\n}\r\n\r\nexport interface Beneficiario {\r\n porcentaje: string;\r\n nombre: string;\r\n parentezco: string;\r\n}\r\nexport interface CrearTarjeta {\r\n Numero: string;\r\n CVV: string;\r\n FechaVencimiento: Date;\r\n Alias: string;\r\n}\r\n\r\nexport class CrearTarjeta {\r\n Numero: string;\r\n CVV: string;\r\n FechaVencimiento: Date;\r\n Alias: string;\r\n constructor(cardForm: FormGroup) {\r\n this.Numero = cardForm.get('cardNumber').value;\r\n this.CVV = cardForm.get('cvv').value;\r\n this.FechaVencimiento = cardForm.get('expireDate').value;\r\n this.Alias = cardForm.get('alias').value;\r\n }\r\n}\r\n\r\nexport class newUser {\r\n User: User = {} as User;\r\n constructor(userForm: FormGroup, cardForm: FormGroup, stringDate: string) {\r\n this.User.Email = userForm.get('email').value;\r\n this.User.Nombre = userForm.get('name').value;\r\n this.User.Phone = userForm.get('phone').value;\r\n this.User.Tarjeta = [\r\n {\r\n Numero: cardForm.get('cardNumber').value,\r\n CVV: cardForm.get('cvv').value,\r\n FechaVencimiento: cardForm.get('expireDate').value,\r\n Alias: cardForm.get('alias').value,\r\n },\r\n ];\r\n }\r\n}\r\n\r\nexport interface newUserQuery {\r\n email: string;\r\n cardname: string;\r\n password: string;\r\n nombre: string;\r\n surLastname: string;\r\n surFirtName: string;\r\n phone: string;\r\n city: string;\r\n state: string;\r\n rfc: string;\r\n pan: string;\r\n latitude: number;\r\n longitude: number;\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\n\r\n@Pipe({\r\n name: 'safe',\r\n})\r\nexport class SafePipe implements PipeTransform {\r\n constructor(private sanitizer: DomSanitizer) {}\r\n transform(url) {\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n}\r\n","import { trigger, transition, style, query, group, animateChild, animate, keyframes } from '@angular/animations';\r\n\r\n// Basic\r\n\r\nexport const fader = trigger('routeAnimations', [\r\n transition('* <=> *', [\r\n query(\r\n ':enter, :leave',\r\n [\r\n style({\r\n position: 'absolute',\r\n left: 0,\r\n width: '100%',\r\n opacity: 0,\r\n transform: 'scale(0) translateY(100%)',\r\n }),\r\n ],\r\n { optional: true }\r\n ),\r\n query(':enter', [animate('600ms ease', style({ opacity: 1, transform: 'scale(1) translateY(0)' }))], { optional: true }),\r\n ]),\r\n]);\r\n\r\n// Positioned\r\n\r\nexport const slider = trigger('routeAnimations', [\r\n transition('* => isLeft', slideTo('left')),\r\n transition('* => isRight', slideTo('right')),\r\n transition('isRight => *', slideTo('left')),\r\n transition('isLeft => *', slideTo('right')),\r\n]);\r\n\r\nexport const transformer = trigger('routeAnimations', [\r\n transition('* => isLeft', translateTo({ x: -100, y: -100, rotate: -720 })),\r\n transition('* => isRight', translateTo({ x: 100, y: -100, rotate: 90 })),\r\n transition('isRight => *', translateTo({ x: -100, y: -100, rotate: 360 })),\r\n transition('isLeft => *', translateTo({ x: 100, y: -100, rotate: -360 })),\r\n]);\r\n\r\nfunction slideTo(direction) {\r\n const optional = { optional: true };\r\n return [\r\n query(\r\n ':enter, :leave',\r\n [\r\n style({\r\n position: 'absolute',\r\n top: 0,\r\n [direction]: 0,\r\n width: '100%',\r\n }),\r\n ],\r\n optional\r\n ),\r\n query(':enter', [style({ [direction]: '-100%' })]),\r\n group([\r\n query(':leave', [animate('600ms ease', style({ [direction]: '100%' }))], optional),\r\n query(':enter', [animate('600ms ease', style({ [direction]: '0%' }))]),\r\n ]),\r\n // Normalize the page style... Might not be necessary\r\n\r\n // Required only if you have child animations on the page\r\n // query(':leave', animateChild()),\r\n // query(':enter', animateChild()),\r\n ];\r\n}\r\n\r\nfunction translateTo({ x = 100, y = 0, rotate = 0 }) {\r\n const optional = { optional: true };\r\n return [\r\n query(\r\n ':enter, :leave',\r\n [\r\n style({\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n }),\r\n ],\r\n optional\r\n ),\r\n query(':enter', [style({ transform: `translate(${x}%, ${y}%) rotate(${rotate}deg)` })]),\r\n group([\r\n query(\r\n ':leave',\r\n [animate('600ms ease-out', style({ transform: `translate(${x}%, ${y}%) rotate(${rotate}deg)` }))],\r\n optional\r\n ),\r\n query(':enter', [animate('600ms ease-out', style({ transform: `translate(0, 0) rotate(0)` }))]),\r\n ]),\r\n ];\r\n}\r\n\r\n// Keyframes\r\n\r\nexport const stepper = trigger('routeAnimations', [\r\n transition('* <=> *', [\r\n query(':enter, :leave', [\r\n style({\r\n position: 'absolute',\r\n left: 0,\r\n width: '100%',\r\n }),\r\n ]),\r\n group([\r\n query(':enter', [\r\n animate(\r\n '2000ms ease',\r\n keyframes([\r\n style({ transform: 'scale(0) translateX(100%)', offset: 0 }),\r\n style({ transform: 'scale(0.5) translateX(25%)', offset: 0.3 }),\r\n style({ transform: 'scale(1) translateX(0%)', offset: 1 }),\r\n ])\r\n ),\r\n ]),\r\n query(':leave', [\r\n animate(\r\n '2000ms ease',\r\n keyframes([\r\n style({ transform: 'scale(1)', offset: 0 }),\r\n style({ transform: 'scale(0.5) translateX(-25%) rotate(0)', offset: 0.35 }),\r\n style({ opacity: 0, transform: 'translateX(-50%) rotate(-180deg) scale(6)', offset: 1 }),\r\n ])\r\n ),\r\n ]),\r\n ]),\r\n ]),\r\n]);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { ResponseCards } from 'src/app/interfaces/responseCards';\r\nimport { Catalog } from '../../interfaces/responseCatalogs';\r\n\r\nexport const setLoading = createAction('[App] Set Loading Spinner', props<{ loading: boolean }>());\r\n\r\nexport const clearState = createAction('[App] Clear App State');\r\nexport const getCatalogs = createAction('[App] GetCatalogs');\r\nexport const getCatalogsSuccess = createAction('[App] getCatalogs succes', props<{ catalogs: Catalog }>());\r\n\r\nexport const dummyAction = createAction('[dummy action]');\r\n","import { Injectable, Pipe } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { AuthenticationService } from '../../_services/auth.service';\r\nimport { of } from 'rxjs';\r\nimport { HelperService } from '../../_services/helper.service';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport * as AppActions from './app.actions';\r\nimport { CardsService } from '../../_services/cards.service';\r\nimport { catchError, exhaustMap, map, withLatestFrom, mergeMap } from 'rxjs/operators';\r\nimport { selectCatalogs } from './app.reducer';\r\nimport { dummyAction } from './app.actions';\r\nimport { genericError } from '../../_helpers/messages';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n@Injectable()\r\nexport class AppEffects {\r\n constructor(private actions$: Actions, private helperService: HelperService, private store: Store) {}\r\n\r\n doService$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AppActions.getCatalogs),\r\n withLatestFrom(this.store.select(selectCatalogs)),\r\n mergeMap(([action, catalogs]) => {\r\n if (catalogs != null) return of(dummyAction());\r\n return this.helperService.getCalogs().pipe(\r\n map(res => {\r\n return AppActions.getCatalogsSuccess({ catalogs: res.data });\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n { code: '9999', message: 'Hubo un error al obtener catalogos' },\r\n genericError,\r\n '260'\r\n );\r\n return of(dummyAction);\r\n })\r\n );\r\n })\r\n );\r\n });\r\n}\r\n","import { createFeatureSelector, createReducer, createSelector, on } from '@ngrx/store';\r\nimport { clearState, setLoading, getCatalogsSuccess } from './app.actions';\r\nimport { Catalog } from '../../interfaces/responseCatalogs';\r\nexport interface State {\r\n isLoading: boolean;\r\n errorMessage?: string;\r\n catalogs: Catalog;\r\n}\r\n\r\nexport const initialState: State = {\r\n isLoading: null,\r\n catalogs: null,\r\n};\r\n\r\nconst _appReducer = createReducer(\r\n initialState,\r\n on(setLoading, (state, { loading }) => {\r\n return {\r\n ...state,\r\n isLoading: loading,\r\n };\r\n }),\r\n on(clearState, state => {\r\n return {\r\n ...initialState,\r\n };\r\n }),\r\n on(getCatalogsSuccess, (state, { catalogs }) => {\r\n return {\r\n ...state,\r\n catalogs,\r\n };\r\n })\r\n);\r\n\r\nexport function appReducer(state, action) {\r\n return _appReducer(state, action);\r\n}\r\n\r\nexport const selectAppstate = createFeatureSelector('app');\r\n\r\nexport const selectLoading = createSelector(selectAppstate, state => state.isLoading);\r\nexport const selectCatalogs = createSelector(selectAppstate, state => state.catalogs);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { ResponseLogin } from '../../interfaces/responseLogin';\r\nimport { ResetPasswordModel } from '../../interfaces/resetPasswordModel';\r\nexport const loginRequest = createAction('[Auth] Login Request', props<{ credentials: { email: string; password: string } }>());\r\nexport const dummyAction = createAction('[Auth dummy action]');\r\nexport const loginSuccess = createAction(\r\n '[Auth] Login Success',\r\n props<{\r\n loginSuccessResponse: ResponseLogin;\r\n redirect: boolean;\r\n password: string;\r\n }>()\r\n);\r\nexport const loginFailure = createAction('[Auth] Login Failure', props<{ error: string }>());\r\nexport const autoToken = createAction('[Auth] Generate AutoToken');\r\nexport const setAutoToken = createAction('[Auth] Set AutoToken', props<{ jwt: string }>());\r\nexport const updatePhoto = createAction('[Auth] Handle Profile Photo', props<{ photo: string }>());\r\nexport const setPhoto = createAction('[Auth] Update Profile Photo', props<{ photo: string }>());\r\nexport const updatePassword = createAction(\r\n '[Auth] Update Password',\r\n props<{\r\n password: {\r\n actualPassword: string;\r\n newPassword: string;\r\n };\r\n }>()\r\n);\r\n\r\nexport const resetForm = createAction('[Auth] Reset Form', props<{ clean: boolean }>());\r\n\r\nexport const forgotPassword = createAction('[Auth] Forgot Password', props<{ email: string }>());\r\nexport const autoLogin = createAction('[Auth] Auto Login');\r\nexport const redirect = createAction('[Auth] Redirect');\r\nexport const logout = createAction('[Auth] Logout', props<{ redirect: boolean }>());\r\nexport const resetPassword = createAction('[Auth] Reset Password', props<{ model: ResetPasswordModel }>());\r\n","import { Injectable, Pipe } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { catchError, exhaustMap, map, mergeMap, tap } from 'rxjs/operators';\r\nimport * as AuthActions from './auth.actions';\r\nimport { AuthenticationService } from '../../_services/auth.service';\r\nimport { of, throwError } from 'rxjs';\r\nimport { HelperService } from '../../_services/helper.service';\r\nimport {\r\n loginSuccess,\r\n loginError,\r\n photoSuccess,\r\n genericError,\r\n changePasswordSuccess,\r\n emailChangePassword,\r\n resetPassworMessage,\r\n} from '../../_helpers/messages';\r\nimport { Router } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport * as AppActions from './../app/app.actions';\r\nimport * as CardActions from './../cards/cards.actions';\r\nimport { delayedRetry, handleError } from '../../_helpers/helperFunctions';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\n@Injectable()\r\nexport class AuthEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private authService: AuthenticationService,\r\n private helperService: HelperService,\r\n private router: Router,\r\n private store: Store\r\n ) {}\r\n loginRequest$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(AuthActions.loginRequest),\r\n exhaustMap(action =>\r\n this.authService.login(action.credentials.email, action.credentials.password).pipe(\r\n delayedRetry(1000, 2),\r\n map(loginSuccessResponse => {\r\n if (loginSuccessResponse.code == '0000')\r\n return AuthActions.loginSuccess({\r\n loginSuccessResponse,\r\n redirect: true,\r\n password: btoa(action.credentials.password),\r\n });\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(loginSuccessResponse, loginSuccess, loginError);\r\n return AuthActions.dummyAction();\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(AuthActions.loginFailure({ error }));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n loginSuccess$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(AuthActions.loginSuccess),\r\n tap(({ loginSuccessResponse, redirect, password }) => {\r\n this.store.dispatch(CardActions.loadCards({ refresh: true }));\r\n if (!redirect) {\r\n return;\r\n }\r\n if (loginSuccessResponse != null && loginSuccessResponse.code == '0000') {\r\n this.authService.setUserInLocalStorage(loginSuccessResponse, password);\r\n return this.router.navigate(['/home']);\r\n } else if (loginSuccessResponse)\r\n return this.helperService.showAlert(loginSuccessResponse, loginSuccess, loginError);\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n loginFailure$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(AuthActions.loginFailure),\r\n tap(error => {\r\n return this.helperService.showAlert({ code: '', message: error.error }, loginSuccess, loginError);\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n autoToken$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.autoToken),\r\n exhaustMap(action => {\r\n return this.authService.getJWT('bgomez', '123456').pipe(\r\n map(jwt => {\r\n return AuthActions.setAutoToken({ jwt: jwt.Data.Jwt });\r\n })\r\n );\r\n })\r\n );\r\n });\r\n\r\n autoLogin$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.autoLogin),\r\n map(action => {\r\n const user = this.authService.getUserFromLocalStorage();\r\n if (!user || new Date(Number(localStorage.getItem('expDate'))).getTime() - new Date().getTime() <= 0)\r\n return AuthActions.logout({ redirect: false });\r\n return AuthActions.loginSuccess({\r\n loginSuccessResponse: user,\r\n redirect: false,\r\n password: user.password,\r\n });\r\n })\r\n );\r\n });\r\n logout$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.logout),\r\n map(action => {\r\n this.authService.removeUserFromLocalStorage();\r\n if (action.redirect) {\r\n this.router.navigate(['/auth']);\r\n }\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n updatePhoto$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.updatePhoto),\r\n mergeMap(({ photo }) => {\r\n return this.authService.uploadPhoto(photo).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, photoSuccess, genericError, '260');\r\n if (response.code == '0000') {\r\n return AuthActions.setPhoto({ photo });\r\n }\r\n })\r\n );\r\n })\r\n );\r\n });\r\n updatePassword$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.updatePassword),\r\n mergeMap(({ password }) => {\r\n return this.authService.updatePassword(password).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, changePasswordSuccess, genericError, '260');\r\n if (response.code == '0000') return AuthActions.resetForm({ clean: true });\r\n return AuthActions.resetForm({ clean: false });\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n {\r\n code: '9999',\r\n message: 'Hubo un error al procesar su solicitud',\r\n },\r\n '',\r\n genericError,\r\n '260'\r\n );\r\n return throwError(error);\r\n })\r\n );\r\n })\r\n );\r\n });\r\n forgotPassword$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.forgotPassword),\r\n mergeMap(({ email }) => {\r\n return this.authService.sendEmailForgotPassword(email).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, emailChangePassword, genericError, '260');\r\n if (response.code == '0000') return AuthActions.resetForm({ clean: true });\r\n return AuthActions.resetForm({ clean: false });\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError, '260');\r\n return throwError(error);\r\n })\r\n );\r\n })\r\n );\r\n });\r\n resetPassword$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(AuthActions.resetPassword),\r\n mergeMap(({ model }) => {\r\n return this.authService.resetPassword(model).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, resetPassworMessage, genericError, '260');\r\n if (response.code == '0000') {\r\n return AuthActions.resetForm({ clean: true });\r\n }\r\n return AuthActions.resetForm({ clean: false });\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n {\r\n code: '9999',\r\n message: 'Hubo un error al procesar su solicitud',\r\n },\r\n '',\r\n genericError,\r\n '260'\r\n );\r\n return throwError(error);\r\n })\r\n );\r\n })\r\n );\r\n });\r\n}\r\n","import { on, createReducer, createFeatureSelector, createSelector } from '@ngrx/store';\r\nimport { User } from 'src/app/interfaces/responseLogin';\r\nimport { loginSuccess, loginFailure, logout, autoToken, setAutoToken, setPhoto, resetForm } from './auth.actions';\r\n\r\nexport interface State {\r\n token: string;\r\n user: User;\r\n loginError?: string;\r\n resetForm: boolean;\r\n password: string;\r\n comision: number;\r\n //jwt: string\r\n}\r\n\r\nexport const initialState: State = {\r\n token: null,\r\n user: null,\r\n resetForm: false,\r\n password: null,\r\n comision: null,\r\n //jwt: null\r\n};\r\n\r\nconst _authReducer = createReducer(\r\n initialState,\r\n on(loginSuccess, (state, { loginSuccessResponse, password }) => {\r\n return {\r\n ...state,\r\n token: loginSuccessResponse?.data.jwt,\r\n user: loginSuccessResponse?.data.user,\r\n comision: loginSuccessResponse?.data.comission,\r\n password,\r\n };\r\n }),\r\n on(loginFailure, (state, { error }) => {\r\n return {\r\n ...state,\r\n loginError: error,\r\n token: null,\r\n user: null,\r\n };\r\n }),\r\n on(logout, state => {\r\n return {\r\n ...state,\r\n ...initialState,\r\n };\r\n }),\r\n on(setPhoto, (state, { photo }) => {\r\n return {\r\n ...state,\r\n user: { ...state.user, Photo: photo },\r\n };\r\n }),\r\n on(setPhoto, (state, { photo }) => {\r\n return {\r\n ...state,\r\n user: { ...state.user, Photo: photo },\r\n };\r\n }),\r\n on(resetForm, (state, { clean }) => {\r\n return {\r\n ...state,\r\n resetForm: clean,\r\n };\r\n })\r\n // on(setAutoToken, (state, { jwt }) => {\r\n // return {\r\n // ...state,\r\n // jwt\r\n // }\r\n // })\r\n);\r\n\r\nexport function authReducer(state, action) {\r\n return _authReducer(state, action);\r\n}\r\n\r\nexport const selectAuthState = createFeatureSelector('auth');\r\n\r\nexport const selectToken = createSelector(selectAuthState, state => state.token);\r\nexport const selectPassword = createSelector(selectAuthState, state => state.password);\r\nexport const selectComision = createSelector(selectAuthState, state => state.comision);\r\nexport const selectResetForm = createSelector(selectAuthState, state => state.resetForm);\r\n// export const selectAutoToken = createSelector(\r\n// selectAuthState,\r\n// (state) => state.jwt\r\n// )\r\nexport const selectUser = createSelector(selectAuthState, state => state.user);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { Charge } from 'src/app/interfaces/responseMovements';\r\nimport { ResponseCards, Card, Cards } from '../../interfaces/responseCards';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { CrearTarjeta } from '../../interfaces/responseNewUser';\r\nimport { GenericResponse } from '../../interfaces/responseCatalogs';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ChangeNipModalComponent } from 'src/app/components/modals/change-nip-modal/change-nip-modal.component';\r\nexport const loadCards = createAction('[Cards] Load Cards', props<{ refresh: boolean }>());\r\nexport const cardsSuccess = createAction('[Cards] Cards Success', props<{ cards: Cards[] }>());\r\nexport const cardsFailure = createAction('[Cards] Cards Failure', props<{ res: GenericResponse }>());\r\nexport const movementsFail = createAction('[Cards] Movements Failure', props<{ error: string }>());\r\nexport const setLoading = createAction('[Cards] Set Loading', props<{ isLoading: boolean }>());\r\nexport const setHasLoaded = createAction('[Cards] Set Loaded', props<{ loaded: boolean }>());\r\nexport const addCard = createAction('[Cards] Add Card', props<{ card: CrearTarjeta }>());\r\nexport const addCardFail = createAction('[Cards] Card Fail Add');\r\nexport const addCardSuccess = createAction('[Cards] Card Added Success');\r\nexport const clearState = createAction('[Cards] Clear Cards State');\r\nexport const changeStatusCard = createAction('[Cards] Change Status', props<{ card: Card; isVirtual: boolean }>());\r\nexport const changeStatusSuccess = createAction(\r\n '[Cards] Change Status Success',\r\n props<{ cardId: number; isVirtual: boolean }>()\r\n);\r\nexport const changeStatusFail = createAction('[Cards] Change Status Failed', props<{ cardId: number; isVirtual: boolean }>());\r\nexport const setSelectMovements = createAction('[Cards] Set Select Movements', props<{ movements: Charge[] }>());\r\nexport const selectMonth = createAction(\r\n '[Cards] Month Selected',\r\n props<{ month: number; monthV: number; year: number; reload: boolean }>()\r\n);\r\nexport const cardSelected = createAction('[Cards] Card Selected', props<{ cardIndex: number }>());\r\nexport const paySelected = createAction('[Cards] Pay Selected', props<{ cardIndex: number }>());\r\nexport const deleteCard = createAction('[Cards] Delete Card');\r\nexport const deleteCardSuccess = createAction('[Cards] Delete Card From State', props<{ idCard: number }>());\r\nexport const deleteCardFail = createAction('[Cards] Delete Card have a error');\r\nexport const changeTypeCard = createAction('[Cards] Change Type Card', props<{ isVirtual: boolean }>());\r\nexport const getNip = createAction('[Cards] Get Nip');\r\nexport const getNipFail = createAction('[Cards] Get Nip Fail', props<{ error: string }>());\r\nexport const setNip = createAction('[Cards] Set Nip', props<{ nip: string | null }>());\r\nexport const clearNip = createAction('[Cards] Clear Nip');\r\nexport const ChangeStatusCanal = createAction('[Cards] Change status canal', props<{ status: boolean }>());\r\nexport const SetStatusCanal = createAction('[Cards] Set status canal', props<{ idCard: number }>());\r\nexport const GetCvv = createAction('[Cards] Get Cvv');\r\nexport const GetCvvFail = createAction('[Cards] Get Cvv Fail', props<{ error: string }>());\r\nexport const SetCvv = createAction('[Cards] Set CVV', props<{ cvv: string; cvvTime: number; isCVVShowing: boolean }>());\r\nexport const GenerateBill = createAction('[Cards] Generate Bill', props<{ startDate: string; endDate: string }>());\r\n\r\nexport const getLimit = createAction('[Cards] Get Limit');\r\n\r\nexport const setLimit = createAction('[Cards] Set Limit', props<{ limit: number; administraEmpresa: boolean }>());\r\nexport const downloadMovements = createAction('[Cards] Download Movements', props<{ Month: number }>());\r\nexport const downloadMovementsSuccsess = createAction('[Cards] Download Movements Succsess');\r\nexport const downloadMovementsFail = createAction('[Cards] Download Movements Fail');\r\nexport const updateLimit = createAction(\r\n '[Cards] Update Limit',\r\n props<{\r\n // numCard: string,\r\n // administraEmpresa: boolean,\r\n limiteCompra: number;\r\n }>()\r\n);\r\n\r\nexport const changeNip = createAction(\r\n '[Cards] Change Nip',\r\n props<{\r\n card: string;\r\n nip: string;\r\n }>()\r\n);\r\nexport const changeNipSuccess = createAction('[Cards] Change Nip Success');\r\n\r\nexport const changeNipFail = createAction('[Cards] Change Nip Fail', props<{ error: string }>());\r\n\r\nexport const transferCard = createAction(\r\n '[Cards] Transfer To Card',\r\n props<{\r\n originCard: string;\r\n destinationCard: string;\r\n amount: number;\r\n }>()\r\n);\r\nexport const transferCardSuccess = createAction('[Cards] Transfer To Card Success');\r\n\r\nexport const transferCardFail = createAction('[Cards] Transfer To Card Fail', props<{ error: string }>());\r\n","\r\nimport { of } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { catchError, delay, exhaustMap, map, mergeMap, switchMap, tap, withLatestFrom, } from 'rxjs/operators';\r\n\r\nimport * as fromCards from './cards.reducer';\r\nimport * as CardsActions from './cards.actions';\r\nimport * as AppActions from '../app/app.actions';\r\nimport { CardsService } from '../../_services/cards.service';\r\nimport {\r\n genericError,\r\n registerCardSucess,\r\n changeStatusCardSuccess,\r\n removeCardSuccess,\r\n changeStatusCanalSuccess,\r\n changeNipSuccessM,\r\n transferCardSuccess,\r\n} from 'src/app/_helpers/messages';\r\nimport { setHasLoaded } from './cards.actions';\r\nimport { selectAuthState } from '../auth/auth.reducer';\r\nimport { loadServices } from '../recharge/recharge.actions';\r\nimport { dummyAction, getCatalogs } from '../app/app.actions';\r\nimport { HelperService } from '../../_services/helper.service';\r\nimport { delayedRetry, handleError } from 'src/app/_helpers/helperFunctions';\r\n\r\n@Injectable()\r\nexport class CardsEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private cardsService: CardsService,\r\n private store: Store,\r\n private helperService: HelperService\r\n ) { }\r\n\r\n loadCards$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(CardsActions.loadCards),\r\n delay(20),\r\n withLatestFrom(this.store.select(fromCards.selectCards), this.store.select(selectAuthState)),\r\n mergeMap(([action, cards, auth]) => {\r\n if ((cards.length != 0 || !auth.token) && !action.refresh) return of(dummyAction());\r\n return this.cardsService.getCards().pipe(\r\n tap(res => {\r\n if (!res.data) {\r\n throw 'Reitentar PeticiĆ³n';\r\n }\r\n }),\r\n map(res => {\r\n if (res.data.length == 0) {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.store.dispatch(setHasLoaded({ loaded: true }));\r\n }\r\n this.store.dispatch(CardsActions.cardSelected({ cardIndex: 0 }));\r\n return CardsActions.cardsSuccess({ cards: res.data });\r\n }),\r\n delayedRetry(1000, 3),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n { code: '', message: 'Hubo un error al obtener tarjetas' },\r\n '',\r\n genericError\r\n );\r\n return of(CardsActions.cardsSuccess({ cards: null }));\r\n })\r\n );\r\n })\r\n );\r\n });\r\n\r\n cardsFailure$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.cardsFailure),\r\n tap(({ res }) => {\r\n this.store.dispatch(CardsActions.setHasLoaded({ loaded: true }));\r\n return this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n //return this.helperService.showAlert(res, '', genericError);\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n loadMovements$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.cardsSuccess, CardsActions.cardSelected),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n if (state.cards && state.cards.length > 0) {\r\n return this.cardsService.getLastMovements(state.cards[state.cardSelected.cardIndexSelected].accountID).pipe(\r\n switchMap(charge => {\r\n if (action.type === '[Cards] Cards Success') {\r\n return [CardsActions.setSelectMovements({ movements: charge }), getCatalogs(), loadServices()];\r\n } else if (action.type === '[Cards] Card Selected') {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return [CardsActions.setSelectMovements({ movements: charge })];\r\n }\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(CardsActions.movementsFail({ error }));\r\n })\r\n );\r\n }\r\n return of(dummyAction());\r\n })\r\n )\r\n );\r\n\r\n loadMonthMovements$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.selectMonth),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n return this.cardsService\r\n .getMonthMovements(\r\n action.year,\r\n action.monthV,\r\n state.cards[state.cardSelected.cardIndexSelected].accountID\r\n )\r\n .pipe(\r\n map(movements => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.store.dispatch(CardsActions.setSelectMovements({ movements }));\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(CardsActions.movementsFail({ error }));\r\n })\r\n );\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n addCard$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(CardsActions.addCard),\r\n switchMap(action =>\r\n this.cardsService.addCard(action.card).pipe(\r\n switchMap(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n if (response.code === '0000') {\r\n this.helperService.showAlert(response, registerCardSucess, genericError, '260');\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return [CardsActions.addCardSuccess(), CardsActions.loadCards({ refresh: true })];\r\n }\r\n this.helperService.showAlert({ code: response.code, message: response.message }, '', genericError);\r\n return [CardsActions.addCardFail()];\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError);\r\n return of(CardsActions.addCardFail());\r\n })\r\n )\r\n )\r\n );\r\n });\r\n\r\n changeStatusCard$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(CardsActions.changeStatusCard),\r\n switchMap(action =>\r\n this.cardsService.changeStatusCard(action.card).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, changeStatusCardSuccess, genericError, '260');\r\n if (response.code === '0000') {\r\n return CardsActions.changeStatusSuccess({\r\n cardId: action.card.idCard,\r\n isVirtual: action.isVirtual,\r\n });\r\n }\r\n return CardsActions.changeStatusFail({\r\n cardId: action.card.idCard,\r\n isVirtual: action.isVirtual,\r\n });\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n {\r\n code: '9999',\r\n message: 'Hubo un error al procesar su solicitud',\r\n },\r\n '',\r\n genericError\r\n );\r\n return of(\r\n CardsActions.changeStatusFail({\r\n cardId: action.card.idCard,\r\n isVirtual: action.isVirtual,\r\n })\r\n );\r\n })\r\n )\r\n )\r\n );\r\n });\r\n\r\n deleteCard$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(CardsActions.deleteCard),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) =>\r\n this.cardsService.deleteCard(state.cards[state.cardSelected.cardIndexSelected].fisica).pipe(\r\n map(response => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(response, removeCardSuccess, genericError, '260');\r\n if (response.code === '0000') {\r\n this.store.dispatch(CardsActions.cardSelected({ cardIndex: 0 }));\r\n return CardsActions.deleteCardSuccess({\r\n idCard: state.cards[state.cardSelected.cardIndexSelected].fisica.idCard,\r\n });\r\n }\r\n return CardsActions.deleteCardFail();\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n {\r\n code: '9999',\r\n message: 'Hubo un error al procesar su solicitud',\r\n },\r\n '',\r\n genericError\r\n );\r\n return of(CardsActions.deleteCardFail());\r\n })\r\n )\r\n )\r\n );\r\n });\r\n\r\n getNip$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.getNip),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: true }));\r\n return this.cardsService\r\n .getNip({\r\n cardID: state.cards[state.cardSelected.cardIndexSelected].accountID,\r\n })\r\n .pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n if (res.code != '0000') {\r\n this.helperService.showAlert(res, '', genericError, '260');\r\n return CardsActions.getNipFail({ error: res.message });\r\n }\r\n return CardsActions.setNip({ nip: res.data });\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(CardsActions.getNipFail({ error: handleError(error) }));\r\n })\r\n );\r\n })\r\n )\r\n );\r\n changeNip$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.changeNip),\r\n exhaustMap(({ card, nip }) =>\r\n this.cardsService.changeNip(card, nip).pipe(\r\n map(data => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(data, changeNipSuccessM, genericError, '260');\r\n return CardsActions.changeNipSuccess();\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError);\r\n return of(CardsActions.changeNipFail({ error: handleError(error) }));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n transferCard$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.transferCard),\r\n exhaustMap(transferCardCommand =>\r\n this.cardsService.transferCard(transferCardCommand).pipe(\r\n map(data => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(data, transferCardSuccess, genericError, '260');\r\n return CardsActions.transferCardSuccess();\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError);\r\n return of(CardsActions.transferCardFail({ error: handleError(error) }));\r\n })\r\n )\r\n )\r\n )\r\n );\r\n ChangeStatusCanal$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.ChangeStatusCanal),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n return this.cardsService\r\n .ChangeStatusCanal(state.cards[state.cardSelected.cardIndexSelected].fisica.numCard, action.status)\r\n .pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(res, changeStatusCanalSuccess, genericError, '260');\r\n if (res.code == '0000') {\r\n return this.store.dispatch(\r\n CardsActions.SetStatusCanal({\r\n idCard: state.cards[state.cardSelected.cardIndexSelected].fisica.idCard,\r\n })\r\n );\r\n }\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(dummyAction());\r\n })\r\n );\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n GetCvv$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.GetCvv),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n return this.cardsService.getCvv(state.cards[state.cardSelected.cardIndexSelected].virtual.numCard).pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return CardsActions.SetCvv({\r\n cvv: res.data.cvv,\r\n cvvTime: res.data.time,\r\n isCVVShowing: true,\r\n });\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '', message: handleError(error) }, '', genericError);\r\n return of(CardsActions.GetCvvFail({ error: handleError(error) }));\r\n })\r\n );\r\n })\r\n )\r\n );\r\n GenerateBill$ = createEffect(\r\n () =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.GenerateBill),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([{ startDate, endDate }, { cardSelected, cards }]) => {\r\n return this.cardsService\r\n .downloadBill({\r\n startDate,\r\n endDate,\r\n idCard: cards[cardSelected.cardIndexSelected].fisica.idCard,\r\n card: cards[cardSelected.cardIndexSelected].accountID,\r\n })\r\n .pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n if (res) {\r\n var file = new Blob([res], { type: 'application/pdf' });\r\n var fileURL = URL.createObjectURL(file);\r\n window.open(fileURL);\r\n }\r\n }),\r\n catchError(error => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n {\r\n code: '9999',\r\n message: 'Hubo un error al procesar su solicitud',\r\n },\r\n '',\r\n genericError\r\n );\r\n return of(dummyAction());\r\n })\r\n );\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n \r\n \r\n //reports\r\n downloadPdf$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(CardsActions.downloadMovements),\r\n withLatestFrom(this.store.select(fromCards.selectCardsState)),\r\n mergeMap(([action, state]) => {\r\n // return of(this.catalogsService.downloadPdf(reports))\r\n return this.cardsService\r\n .downloadMovements({\r\n Month: action.Month,\r\n Year: new Date().getFullYear(),\r\n cardID: state.cards[state.cardSelected.cardIndexSelected].fisica.cardID.replace(/\\s/g, ''),\r\n })\r\n .pipe(\r\n map(blob => {\r\n const url = window.URL.createObjectURL(blob);\r\n const a = document.createElement('a');\r\n a.href = url;\r\n const date = new Date(new Date().getFullYear(), action.Month - 1);\r\n const options: Intl.DateTimeFormatOptions = {\r\n year: 'numeric',\r\n month: 'long',\r\n };\r\n let formatedDate = new Intl.DateTimeFormat('es-mx', options).format(date);\r\n a.download = `Estado de Cuenta ${formatedDate}`;\r\n a.click();\r\n window.URL.revokeObjectURL(url);\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return CardsActions.downloadMovementsSuccsess();\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of(CardsActions.downloadMovementsFail());\r\n })\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { createFeatureSelector, createReducer, createSelector, on } from '@ngrx/store';\r\nimport { Card, Cards, NameLock } from '../../interfaces/responseCards';\r\nimport {\r\n cardsSuccess,\r\n cardsFailure,\r\n setLoading,\r\n setHasLoaded,\r\n addCardSuccess,\r\n clearState,\r\n changeStatusSuccess,\r\n changeStatusFail,\r\n cardSelected,\r\n selectMonth,\r\n deleteCardSuccess,\r\n setSelectMovements,\r\n clearNip,\r\n getLimit,\r\n updateLimit,\r\n setLimit,\r\n downloadMovementsFail,\r\n downloadMovementsSuccsess,\r\n changeNip,\r\n} from './cards.actions';\r\n// import {UpdateChargeCompSuccess, UpdateChargeComp, UpdateChargeCompFail} from './cards.actions';\r\nimport { Charge } from '../../interfaces/responseMovements';\r\nimport { paySelected, changeTypeCard, setNip, SetStatusCanal, SetCvv } from './cards.actions';\r\n\r\nexport interface cardSelected {\r\n cardIndexSelected: number;\r\n monthSelected: number;\r\n movementsSelected: Charge[];\r\n isVirtual: boolean;\r\n nip: string | null;\r\n cvv: string | null;\r\n cvvTime: number | null;\r\n expired: boolean;\r\n pan: string | null;\r\n name: string | null;\r\n limit: number | null;\r\n administraEmpresa: boolean;\r\n isCVVShowing: boolean;\r\n}\r\nexport interface State {\r\n errorMessage?: string;\r\n cards: Cards[];\r\n loading: boolean;\r\n hasLoaded: boolean;\r\n clearForm: boolean;\r\n cardSelected: cardSelected;\r\n}\r\n\r\nexport const initialState: State = {\r\n cards: [],\r\n loading: false,\r\n hasLoaded: false,\r\n clearForm: false,\r\n cardSelected: {\r\n administraEmpresa: false,\r\n cardIndexSelected: 0,\r\n monthSelected: 0,\r\n movementsSelected: [],\r\n isVirtual: false,\r\n nip: null,\r\n cvv: null,\r\n cvvTime: null,\r\n expired: false,\r\n name: null,\r\n pan: null,\r\n limit: null,\r\n isCVVShowing: false,\r\n },\r\n};\r\n\r\nconst _cardsReducer = createReducer(\r\n initialState,\r\n on(cardsSuccess, (state, { cards }) => {\r\n return {\r\n ...state,\r\n cards: cards,\r\n errorMessage: null,\r\n };\r\n }),\r\n on(cardsFailure, (state, { res }) => {\r\n return {\r\n ...state,\r\n errorMessage: res.message,\r\n };\r\n }),\r\n\r\n on(setLoading, (state, { isLoading }) => {\r\n return {\r\n ...state,\r\n loading: isLoading,\r\n };\r\n }),\r\n on(setHasLoaded, (state, { loaded }) => {\r\n return {\r\n ...state,\r\n hasLoaded: loaded,\r\n };\r\n }),\r\n on(addCardSuccess, state => {\r\n return {\r\n ...state,\r\n clearForm: true,\r\n };\r\n }),\r\n on(clearState, state => {\r\n return {\r\n ...state,\r\n ...initialState,\r\n };\r\n }),\r\n\r\n on(changeStatusSuccess, (state, { cardId, isVirtual }) => {\r\n if (isVirtual)\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, isVirtual: false },\r\n cards: state.cards.map(card =>\r\n card.virtual.idCard === cardId\r\n ? {\r\n ...card,\r\n virtual: {\r\n ...card.virtual,\r\n idStatus: card.virtual.idStatus == 1 ? 2 : 1,\r\n },\r\n }\r\n : card\r\n ),\r\n };\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, isVirtual: false },\r\n cards: state.cards.map(card =>\r\n card.fisica.idCard === cardId\r\n ? {\r\n ...card,\r\n fisica: {\r\n ...card.fisica,\r\n idStatus: card.fisica.idStatus == 1 ? 2 : 1,\r\n },\r\n }\r\n : card\r\n ),\r\n };\r\n }),\r\n\r\n on(changeStatusFail, (state, { cardId, isVirtual }) => {\r\n if (isVirtual)\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, isVirtual: false },\r\n cards: state.cards.map(card =>\r\n card.virtual.idCard === cardId\r\n ? {\r\n ...card,\r\n virtual: { ...card.virtual, idStatus: card.virtual.idStatus },\r\n }\r\n : card\r\n ),\r\n };\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, isVirtual: false },\r\n cards: state.cards.map(card =>\r\n card.fisica.idCard === cardId\r\n ? {\r\n ...card,\r\n fisica: { ...card.fisica, idStatus: card.fisica.idStatus },\r\n }\r\n : card\r\n ),\r\n };\r\n }),\r\n on(selectMonth, (state, { month }) => {\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, monthSelected: month },\r\n };\r\n }),\r\n on(cardSelected, (state, { cardIndex }) => {\r\n return {\r\n ...state,\r\n cardSelected: {\r\n ...state.cardSelected,\r\n cardIndexSelected: cardIndex,\r\n nip: null,\r\n expired: true,\r\n name: state.cardSelected.isVirtual\r\n ? state.cards[cardIndex]?.virtual?.cardName\r\n : state.cards[cardIndex]?.fisica?.cardName,\r\n pan: state.cardSelected.isVirtual\r\n ? state.cards[cardIndex]?.virtual?.numCard\r\n : state.cards[cardIndex]?.fisica?.numCard,\r\n },\r\n };\r\n }),\r\n on(paySelected, (state, { cardIndex }) => {\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, cardIndexSelected: cardIndex },\r\n };\r\n }),\r\n on(deleteCardSuccess, (state, { idCard }) => {\r\n return {\r\n ...state,\r\n cards: state.cards.filter(cardState => cardState.fisica.idCard != idCard),\r\n };\r\n }),\r\n on(setSelectMovements, (state, { movements }) => {\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, movementsSelected: movements },\r\n };\r\n }),\r\n on(changeTypeCard, (state, { isVirtual }) => {\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, isVirtual },\r\n };\r\n }),\r\n on(setNip, (state, { nip }) => {\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, nip: nip },\r\n };\r\n }),\r\n on(SetStatusCanal, (state, { idCard }) => {\r\n return {\r\n ...state,\r\n cards: state.cards.map(card =>\r\n card.fisica.idCard === idCard\r\n ? {\r\n ...card,\r\n fisica: {\r\n ...card.fisica,\r\n Canales: card.fisica.canales.map(c =>\r\n c.NameLock == NameLock.lockInternet ? { ...c, estatus: !c.estatus } : c\r\n ),\r\n },\r\n }\r\n : card\r\n ),\r\n };\r\n }),\r\n on(SetCvv, (state, { cvv, isCVVShowing }) => {\r\n return {\r\n ...state,\r\n cardSelected: {\r\n ...state.cardSelected,\r\n cvv: cvv,\r\n isCVVShowing: isCVVShowing,\r\n },\r\n };\r\n }),\r\n on(clearNip, state => {\r\n // debugger;\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, nip: null },\r\n };\r\n }),\r\n on(getLimit, state => {\r\n // debugger;\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n }),\r\n on(changeNip, state => {\r\n // debugger;\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n }),\r\n on(setLimit, (state, { limit, administraEmpresa }) => {\r\n return {\r\n ...state,\r\n cardSelected: {\r\n ...state.cardSelected,\r\n limit: limit,\r\n administraEmpresa: administraEmpresa,\r\n },\r\n loading: false,\r\n };\r\n }),\r\n on(updateLimit, (state, { limiteCompra }) => {\r\n // debugger;\r\n return {\r\n ...state,\r\n cardSelected: { ...state.cardSelected, limit: limiteCompra },\r\n };\r\n }),\r\n on(downloadMovementsSuccsess, downloadMovementsFail, state => {\r\n // debugger;\r\n return {\r\n ...state,\r\n loading: false,\r\n };\r\n })\r\n);\r\n\r\nexport function cardsReducer(state, action) {\r\n return _cardsReducer(state, action);\r\n}\r\n\r\nexport const selectCardsState = createFeatureSelector('cards');\r\n\r\nexport const selectCards = createSelector(selectCardsState, state => state.cards);\r\nexport const selectLoading = createSelector(selectCardsState, state => state.loading);\r\nexport const selectHasLoaded = createSelector(selectCardsState, state => state.hasLoaded);\r\nexport const selectClearForm = createSelector(selectCardsState, state => state.clearForm);\r\nexport const selectCardSelected = createSelector(selectCardsState, state => state.cardSelected);\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\nimport { Product, Item } from 'src/app/interfaces/product';\r\nimport { CategoryService } from 'src/app/interfaces/services';\r\n\r\nexport const loadServices = createAction('[Recharge] Load Services');\r\nexport const loadServicesSuccess = createAction('[Recharge] load services success', props<{ services: CategoryService[] }>());\r\nexport const loadProductSelectedSuccess = createAction(\r\n '[Recharge] Set loadProductSelected',\r\n props<{ productServices: Product[] }>()\r\n);\r\nexport const selectCompany = createAction('[Recharge] Select company', props<{ company: Item[] }>());\r\nexport const selectService = createAction('[Recharge] Select Service to pay', props<{ service: Item[] }>());\r\nexport const selectItem = createAction('[Recharge] Select item', props<{ item: Item }>());\r\nexport const verifyAmount = createAction('[Recharge] Verify amount');\r\nexport const indexRechargeSelected = createAction('[Recharge] Specific index recharge', props<{ index: number }>());\r\nexport const doRecharge = createAction('[Recharge] Do Recharge', props<{ phone: string }>());\r\nexport const doRechargeFail = createAction('[Recharge] Recharge Failed');\r\nexport const loadCategorySelected = createAction('[Recharge] Load category selected', props<{ id: number }>());\r\nexport const loadCategorySelectedSuccess = createAction(\r\n '[Recharge] Set items category selected',\r\n props<{ products: Product[] }>()\r\n);\r\nexport const clearState = createAction('[Recharge] Clear recharge State');\r\nexport const indexServiceSelected = createAction('[Recharge] Specific index service', props<{ index: number }>());\r\nexport const selectItemService = createAction('[Recharge] Specific item selected', props<{ item: Item }>());\r\nexport const payService = createAction('[Recharge] pay service', props<{ ref: string; total: number }>());\r\n","import { of } from 'rxjs';\r\nimport { Store } from '@ngrx/store';\r\nimport { Router } from '@angular/router';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { catchError, delay, exhaustMap, map, mergeMap, withLatestFrom, switchMap } from 'rxjs/operators';\r\n\r\nimport { delayedRetry } from 'src/app/_helpers/helperFunctions';\r\nimport { environment } from 'src/environments/environment.prod';\r\n\r\nimport * as AppActions from '../app/app.actions';\r\nimport { setHasLoaded } from '../cards/cards.actions';\r\nimport { selectCardsState } from '../cards/cards.reducer';\r\nimport { HelperService } from '../../_services/helper.service';\r\nimport { RechargeServiceModel } from '../../interfaces/recharge';\r\nimport * as RechargeActions from './../recharge/recharge.actions';\r\nimport { RechargeService } from '../../_services/recharge.service';\r\nimport { genericError, rechargeSuccess, serviceSuccess } from '../../_helpers/messages';\r\nimport { selectServices, selectRechargeState, selectItemSelected, selectRechargeList } from './recharge.reducer';\r\n\r\n@Injectable()\r\nexport class RechargeEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private store: Store,\r\n private router: Router,\r\n private rechargeService: RechargeService,\r\n private helperService: HelperService\r\n ) { }\r\n\r\n loadServices$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(RechargeActions.loadServices),\r\n withLatestFrom(this.store.select(selectServices)),\r\n mergeMap(([action, services]) => {\r\n if (services.length != 0 || !environment.isShowingServices) {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n setHasLoaded({ loaded: true });\r\n this.store.dispatch(setHasLoaded({ loaded: true }));\r\n return of();\r\n }\r\n return this.rechargeService.getServices().pipe(\r\n map(res => {\r\n return RechargeActions.loadServicesSuccess({ services: res.data });\r\n }),\r\n delayedRetry(1000, 3),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of();\r\n // return of(CardsActions.cardsFailure({ res: { code: '9999', message: '', data: '', Total: 0 } }))\r\n })\r\n );\r\n })\r\n );\r\n });\r\n loadRechargeList$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(RechargeActions.loadServicesSuccess),\r\n withLatestFrom(this.store.select(selectRechargeList), this.store.select(selectServices)),\r\n mergeMap(([action, product, services]) => {\r\n if (product.length != 0 || services == null) {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.store.dispatch(setHasLoaded({ loaded: true }));\r\n return of(AppActions.dummyAction());\r\n }\r\n const id = services.find(x => x.serviceName == 'Recargas').id;\r\n return this.rechargeService.getProductServices(id).pipe(\r\n delay(1200),\r\n switchMap(res => {\r\n return [\r\n RechargeActions.loadProductSelectedSuccess({ productServices: res.data }),\r\n AppActions.setLoading({ loading: false }),\r\n setHasLoaded({ loaded: true }),\r\n ];\r\n }),\r\n delayedRetry(1000, 3),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return [\r\n // RechargeActions.loadProductSelectedSuccess({ productServices: res.data }),\r\n AppActions.setLoading({ loading: false }),\r\n setHasLoaded({ loaded: true }),\r\n ];\r\n // return of(CardsActions.cardsFailure({ res: { code: '9999', message: '', data: '', Total: 0 } }))\r\n })\r\n );\r\n })\r\n );\r\n });\r\n loadCategorySelected$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(RechargeActions.loadCategorySelected),\r\n exhaustMap(({ id }) => {\r\n return this.rechargeService.getProductServices(id).pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return RechargeActions.loadCategorySelectedSuccess({ products: res.data });\r\n }),\r\n delayedRetry(1000, 3),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n return of();\r\n })\r\n );\r\n })\r\n );\r\n });\r\n\r\n doRecharge$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(RechargeActions.doRecharge),\r\n withLatestFrom(this.store.select(selectCardsState), this.store.select(selectItemSelected)),\r\n mergeMap(([action, cState, item]) => {\r\n const recharge: RechargeServiceModel = new RechargeServiceModel({\r\n sku: item.sku,\r\n monto: item.amount,\r\n nombreProducto: item.productName,\r\n referencia: action.phone,\r\n tarjeta: cState.cards[cState.cardSelected.cardIndexSelected].fisica.numCard.replace(/ /g, ''),\r\n });\r\n return this.rechargeService.doRecharge(recharge).pipe(\r\n map(res => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n { code: res.code, message: 'Hubo un error al procesar su solicitud, intente de nuevo' },\r\n rechargeSuccess(res.data, recharge.monto, recharge.referencia),\r\n genericError,\r\n '260'\r\n );\r\n if (res.code != '0000') {\r\n return RechargeActions.doRechargeFail();\r\n }\r\n this.router.navigate(['/recharge-services']);\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n { code: '9999', message: 'Hubo un error al procesar su solicitud, intente de nuevo' },\r\n '',\r\n genericError,\r\n '260'\r\n );\r\n return of(RechargeActions.doRechargeFail());\r\n })\r\n );\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n doService$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(RechargeActions.payService),\r\n withLatestFrom(this.store.select(selectCardsState), this.store.select(selectRechargeState)),\r\n mergeMap(([action, cState, rState]) => {\r\n const service: RechargeServiceModel = new RechargeServiceModel({\r\n sku: rState.itemService.sku,\r\n monto: action.total,\r\n nombreProducto: rState.itemService.productName,\r\n referencia: action.ref,\r\n tarjeta: cState.cards[cState.cardSelected.cardIndexSelected].fisica.numCard.replace(/ /g, ''),\r\n });\r\n return this.rechargeService.DoPagoServicio(service).pipe(\r\n map(res => {\r\n const productName = rState.serviceList[rState.indexServiceSelected].productName;\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert(\r\n { code: res.code, message: 'Hubo un error al procesar su solicitud, intente de nuevo' },\r\n serviceSuccess(res.data, service.monto, productName),\r\n genericError,\r\n '260'\r\n );\r\n if (res.code != '0000') {\r\n return RechargeActions.doRechargeFail();\r\n }\r\n this.router.navigate(['/recharge-services']);\r\n }),\r\n catchError((error: HttpErrorResponse) => {\r\n this.store.dispatch(AppActions.setLoading({ loading: false }));\r\n this.helperService.showAlert({ code: '9999', message: '' }, genericError, '260');\r\n return of(RechargeActions.doRechargeFail());\r\n })\r\n );\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","import { createReducer, createFeatureSelector, createSelector, on } from '@ngrx/store';\r\nimport { CategoryService } from '../../interfaces/services';\r\nimport {\r\n loadServicesSuccess,\r\n loadProductSelectedSuccess,\r\n selectCompany,\r\n selectItem,\r\n indexRechargeSelected,\r\n loadCategorySelectedSuccess,\r\n clearState,\r\n indexServiceSelected,\r\n selectService,\r\n selectItemService,\r\n} from './recharge.actions';\r\nimport { Item, Product } from '../../interfaces/product';\r\nimport { Card } from '../../interfaces/responseCards';\r\n\r\nexport interface State {\r\n hasLoaded: boolean;\r\n services: CategoryService[];\r\n rechargeList: Product[];\r\n serviceList: Product[];\r\n companySelected: Item[];\r\n serviceSelected: Item[];\r\n item: Item;\r\n itemService: Item;\r\n indexRechargeSelected: number;\r\n indexServiceSelected: number;\r\n}\r\n\r\nexport const initialState: State = {\r\n hasLoaded: false,\r\n services: [],\r\n rechargeList: [],\r\n serviceList: [],\r\n companySelected: [],\r\n item: null,\r\n itemService: null,\r\n indexRechargeSelected: null,\r\n indexServiceSelected: null,\r\n serviceSelected: [],\r\n};\r\n\r\nconst _rechargeReducer = createReducer(\r\n initialState,\r\n on(loadServicesSuccess, (state, { services }) => {\r\n return {\r\n ...state,\r\n services,\r\n };\r\n }),\r\n on(loadProductSelectedSuccess, (state, { productServices }) => {\r\n return {\r\n ...state,\r\n rechargeList: productServices,\r\n };\r\n }),\r\n on(selectCompany, (state, { company }) => {\r\n return {\r\n ...state,\r\n companySelected: company,\r\n };\r\n }),\r\n on(clearState, state => {\r\n return {\r\n ...state,\r\n ...initialState,\r\n };\r\n }),\r\n on(selectItem, (state, { item }) => {\r\n return {\r\n ...state,\r\n item,\r\n };\r\n }),\r\n on(indexRechargeSelected, (state, { index }) => {\r\n return {\r\n ...state,\r\n indexRechargeSelected: index,\r\n };\r\n }),\r\n on(loadCategorySelectedSuccess, (state, { products }) => {\r\n return {\r\n ...state,\r\n serviceList: products,\r\n };\r\n }),\r\n on(indexServiceSelected, (state, { index }) => {\r\n return {\r\n ...state,\r\n indexServiceSelected: index,\r\n };\r\n }),\r\n on(selectService, (state, { service }) => {\r\n return {\r\n ...state,\r\n serviceSelected: service,\r\n };\r\n }),\r\n on(selectItemService, (state, { item }) => {\r\n return {\r\n ...state,\r\n itemService: item,\r\n };\r\n })\r\n);\r\n\r\nexport function rechargeReducer(state, action) {\r\n return _rechargeReducer(state, action);\r\n}\r\n\r\nexport const selectRechargeState = createFeatureSelector('recharge');\r\n\r\nexport const selectServices = createSelector(selectRechargeState, state => state.services);\r\nexport const selectRechargeList = createSelector(selectRechargeState, state => state.rechargeList);\r\nexport const selectServiceList = createSelector(selectRechargeState, state => state.serviceList);\r\nexport const selectCompanySelected = createSelector(selectRechargeState, state => state.companySelected);\r\n\r\nexport const selectItemSelected = createSelector(selectRechargeState, state => state.item);\r\nexport const selectItemServiceSelected = createSelector(selectRechargeState, state => state.itemService);\r\n","export const environment = {\r\n production: false,\r\n apiUrL: 'https://cap-api.azurewebsites.net/api',\r\n isShowingServices: false,\r\n};\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n apiUrL: 'https://cap-api.azurewebsites.net/api',\r\n isShowingServices: false,\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"names":["Subject","fromAuth","AppActions","AuthActions","CardsActions","clearState","UserLogin","AuthenticationService","constructor","httpClient","store","env","select","selectUser","emitChangeSource","asObservable","apiUrl","headers","login","email","password","user","post","getJWT","UserApi","PassApi","sendEmailForgotPassword","Email","resetPassword","model","updatePassword","newPassword","put","validateRegEx","updateNip","res","NumCard","NewNip","httpOptions","toPromise","uploadPhoto","image","emitChange","next","setUserInLocalStorage","response","todayDate","Date","getTime","timeAdded","localStorage","setItem","JSON","stringify","toString","runTimeoutInterval","expireDate","Number","getItem","timeoutInterval","setTimeout","dispatch","logout","redirect","clearTimeout","forEach","action","getUserFromLocalStorage","userDataString","userData","parse","removeUserFromLocalStorage","removeItem","createUser","command","i0","factory","providedIn","take","NgZone","fader","logoutSuccess","genericError","fromApp","autoLogin","AppComponent","device","authService","helpService","router","ngZone","user$","isMobile","isTablet","selectLoading","lastAction","now","check","initListener","initInterval","ngOnInit","sideBarToggler","sideBarOpen","prepareRoute","outlet","activatedRouteData","getLastAction","value","runOutsideAngular","document","body","addEventListener","reset","setInterval","pipe","subscribe","timeLeft","parseInt","diff","isTimeout","run","showAlert","code","message","navigate","selectors","decls","vars","consts","template","fromCards","paySelected","CarouselCardsComponent","selectCards","selectCardSelected","setEvent","e","self","event","to","cardIndex","ngOnDestroy","subscription","map","sub","unsubscribe","viewQuery","MAT_DIALOG_DATA","ConfigUserComponent","dialog","u","createDate","getFullYear","openDialog","dialogRef","open","ModalTerms","width","height","data","text","openContact","ModalContact","ctx","url","close","ModalIframe","panelClass","whats","supportNumber","window","location","href","callUS","mailUS","sendMail","link","encodeURIComponent","LayoutComponent","UntypedFormControl","Validators","GenerateBill","BillModalComponent","formBuilder","title","dateRangeForm","group","fromDate","required","toDate","onFormSubmit","valid","startDate","toISOString","slice","endDate","BillDialogModel","first","ofType","FormControl","selectPassword","changeNip","changeNipFail","changeNipSuccess","ChangeNipModalComponent","helperService","actions$","minLength","selectCardsState","s","cards","cardSelected","cardIndexSelected","control","newNip","get","confirmNewNip","passwordMismatch","nipForm","validator","passwordMatchValidator","checkPassword","password$","pass","btoa","step","submitForm","x","type","card$","card","fisica","numCard","nip","ChangeNipDialogModel","Subscription","ChargeControlComponent","sant","IdMovimiento","charge","id","cards$","IdTarjeta","idTarjeta","onConfirm","btn","fileUploader","nativeElement","click","succeded","onDismiss","handleFileInput","files","file","item","bypassSecurityTrustHtml","URL","createObjectURL","Submit","convertedFile","convert2Base64","splited","split","reduce","prev","current","cFile","Promise","resolve","reject","reader","FileReader","readAsDataURL","onloadend","t","result","onerror","ChargeControlDialogModel","getLimit","getNip","getNipFail","setLimit","setNip","updateLimit","ctx_r3","ControlModalComponent","limit","selectedCard$","limiteCompra","checkNip","error","patchValue","ControlDialogModel","ShowCvvModalComponent","cvv","interval","minutes","Math","floor","distance","seconds","countDown","clearInterval","ShowCvvDialogModel","clearNip","ShowNipModalComponent","cardSelected$","c","ShowNipDialogModel","transferCard","transferCardFail","transferCardSuccess","FormBuilder","FormGroup","selectComision","combineLatest","TransferCardModalComponent","transferForm","originCard","destinationCard","amount","comission","total","comission$","replace","valueChanges","calcularTotal","cantidad","TransferCardDialogModel"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}