{"version":3,"sources":["webpack:///src/app/modules/home/pages/home.component.ts","webpack:///src/app/modules/home/pages/home.component.html","webpack:///src/app/modules/home/pages/home.component.scss","webpack:///src/app/modules/home/home.guard.ts","webpack:///src/app/modules/home/home-routing.module.ts","webpack:///src/app/modules/home/home.module.ts"],"names":["HomeComponent","router","authService","notification","prescriptionService","this","user","userType","window","location","href","articleIsOnView","articleEl","nativeElement","scrollIntoView","behavior","block","target","visible","localStorage","getItem","query","document","getElementById","value","length","getPrescription","toPromise","then","res","navigate","notify","getPrescriptionsPatient","static","a","nativeAsync","selector","template","HomeGuard","themeService","next","state","getActiveTheme","name","providedIn","routes","path","component","canActivate","HomeRoutingModule","imports","forChild","exports","HomeModule","declarations"],"mappings":"0OAaaA,EAAa,MAIxB,YACUC,EACAC,EACAC,EACAC,GAHA,KAAAH,SACA,KAAAC,cACA,KAAAC,eACA,KAAAC,sBAIV,iBACMC,KAAKC,OACoB,UAAvBD,KAAKC,KAAKC,SACZC,OAAOC,SAASC,KAAO,SAEvBF,OAAOC,SAASC,KAAO,cAK7B,WACE,OAAOL,KAAKH,YAAYI,OAG1B,yBACE,OAAOD,KAAKM,gBAGd,WACGN,KAAKO,UAAUC,cAA8BC,eAAe,CAAEC,SAAU,SAAUC,MAAO,QAG5F,gBAAe,OAAEC,EAAM,QAAEC,IACvBb,KAAKM,gBAAkBO,EAGzB,uBACE,GAAyC,aAArCC,aAAaC,QAAQ,YAA4B,CACnD,MAAMC,EAA2BC,SAASC,eAAe,SAAUC,MAC9C,KAAjBH,EAAMI,OACRpB,KAAKD,oBACFsB,gBAAgBL,GAChBM,YACAC,KAAKC,IACQ,OAARA,EACFxB,KAAKJ,OAAO6B,SAAS,CAAC,8BAA8BT,MAEpDhB,KAAKF,aAAa4B,OAChB,UACA,gBACA,mEAKR1B,KAAKD,oBACF4B,wBAAwBX,GACxBM,YACAC,KAAKC,IAEyB,IADFA,EACTJ,OAChBpB,KAAKJ,OAAO6B,SAAS,CAAC,uCAAuCT,MAE7DhB,KAAKF,aAAa4B,OAChB,UACA,gBACA,8DAMV1B,KAAKF,aAAa4B,OAAO,UAAW,mBAAiB,wD,4BAtFlD,K,MACA,K,MAIA,K,MAHA,M,mCAWN,KAAS,MAAC,UAAW,CAAEE,QAAQ,OAWhC,SAAAC,EAAA,EADCC,EAAA,E,+IAXUnC,EAAa,aALzB,YAAU,CACToC,SAAU,WACVC,SCVa,y4K,QCAA,q8F,iCFkBK,IACK,IACC,IACO,OARpBrC,G,oBGCAsC,EAAS,MACpB,YAAoBrC,EAAwBsC,GAAxB,KAAAtC,SAAwB,KAAAsC,eAE5C,YACEC,EACAC,GAEA,MAAgD,0BAA5CpC,KAAKkC,aAAaG,iBAAiBC,OACrCtC,KAAKJ,OAAO6B,SAAS,CAAC,iBACf,K,4BAnBX,K,MAIO,MAMIQ,EAAS,aAHrB,YAAW,CACVM,WAAY,S,iCAGgB,IAA8B,OAD/CN,GCTb,MAAMO,EAAiB,CAAC,CAAEC,KAAM,GAAIC,UAAW/C,EAAegD,YAAa,CAACV,K,IAM/DW,EAAiB,QAAjBA,EAAiB,aAJ7B,YAAS,CACRC,QAAS,CAAC,IAAaC,SAASN,IAChCO,QAAS,CAAC,QAECH,G,oBCDAI,EAAU,QAAVA,EAAU,aAJtB,YAAS,CACRH,QAAS,CAAC,IAAcD,GACxBK,aAAc,CAACtD,MAEJqD","file":"x","sourcesContent":["import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from '@app/core/services/auth.service';\r\nimport { PrescriptionService } from '@app/modules/document/services/prescription.service';\r\nimport { nativeAsync } from '@app/shared/decorators/nativeAsync';\r\nimport { User } from '@app/shared/models/decodedLoginToken';\r\nimport { AppToastService } from '@app/shared/services/app-toast.service';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss']\r\n})\r\nexport class HomeComponent implements OnInit {\r\n @ViewChild('article', { static: true })\r\n articleEl: ElementRef;\r\n private articleIsOnView: boolean;\r\n constructor(\r\n private router: Router,\r\n private authService: AuthService,\r\n private notification: AppToastService,\r\n private prescriptionService: PrescriptionService\r\n ) {}\r\n\r\n @nativeAsync\r\n async ngOnInit() {\r\n if (this.user) {\r\n if (this.user.userType === 'admin') {\r\n window.location.href = '/admin';\r\n } else {\r\n window.location.href = '/dashboard';\r\n }\r\n }\r\n }\r\n\r\n get user(): User {\r\n return this.authService.user();\r\n }\r\n\r\n get articleElIsVisible(): boolean {\r\n return this.articleIsOnView;\r\n }\r\n\r\n scrollTo(): void {\r\n (this.articleEl.nativeElement as HTMLElement).scrollIntoView({ behavior: 'smooth', block: 'end' });\r\n }\r\n\r\n onIntersection({ target, visible }: { target: Element; visible: boolean }) {\r\n this.articleIsOnView = visible;\r\n }\r\n\r\n validatePrescription() {\r\n if (localStorage.getItem('userType') === 'pharmacy') {\r\n const query = (<HTMLInputElement>document.getElementById('query')).value;\r\n if (query.length === 16) {\r\n this.prescriptionService\r\n .getPrescription(query)\r\n .toPromise()\r\n .then(res => {\r\n if (res !== null) {\r\n this.router.navigate([`/prescription/confirmation/${query}`]);\r\n } else {\r\n this.notification.notify(\r\n 'warning',\r\n 'Atenção',\r\n 'Esse código não está associado à nenhuma receita!'\r\n );\r\n }\r\n });\r\n } else {\r\n this.prescriptionService\r\n .getPrescriptionsPatient(query)\r\n .toPromise()\r\n .then(res => {\r\n const prescriptions: any = res;\r\n if (prescriptions.length !== 0) {\r\n this.router.navigate([`/prescription/listing-prescriptions/${query}`]);\r\n } else {\r\n this.notification.notify(\r\n 'warning',\r\n 'Atenção',\r\n 'Não há receitas prescritas para este paciente'\r\n );\r\n }\r\n });\r\n }\r\n } else {\r\n this.notification.notify('warning', 'Não permitido', 'Função diponÃvel apenas para farmácias');\r\n }\r\n }\r\n}\r\n","export default \"<section class=\\\"tiles full-height\\\">\\n <div class=\\\"row\\\">\\n <div class=\\\"col-sm-4 bg-primary d-flex pt-50\\\">\\n <div class=\\\"disclaimer container-fluid\\\">\\n <h1>Para Médicos e Dentistas</h1>\\n <p>\\n Prescreva já e teste nossa plataforma! Mais segurança, menos trabalho. Use seu e-CRM na Receita\\n Digital! Traga suas prescrições para o futuro! Venha para a Receita Digital!\\n <br />\\n <a class=\\\"see-more\\\" href=\\\"#\\\"\\n >Saiba <sup><i class=\\\"fa fa-plus\\\"></i></sup\\n ></a>\\n </p>\\n <a [routerLink]=\\\"user ? '/dashboard' : '/entry/login'\\\" class=\\\"btn btn-default mt-50\\\">\\n Prescreva agora!\\n </a>\\n </div>\\n </div>\\n <div class=\\\"col-sm-4 bg-success d-flex pt-50\\\">\\n <div class=\\\"disclaimer container-fluid\\\">\\n <h1>Para Farmácias</h1>\\n <p>\\n Venda sem papel, integração com o SNGPC, gestão automatizada, consulta por CPF! Deixe a Receita\\n Digital fazer mais por você. Com a Receita Digital você otimiza tempo e dinheiro.\\n <br />\\n <a class=\\\"see-more\\\" href=\\\"#\\\"\\n >Saiba <sup><i class=\\\"fa fa-plus\\\"></i></sup\\n ></a>\\n </p>\\n <a [routerLink]=\\\"user ? '/dashboard' : '/entry/login'\\\" class=\\\"btn btn-default mt-50\\\">\\n Começar Agora\\n </a>\\n </div>\\n <br />\\n </div>\\n <div class=\\\"col-sm-4 bg-white d-flex pt-50\\\">\\n <div class=\\\"disclaimer container-fluid\\\">\\n <h1 class=\\\"text-primary\\\">Para Pacientes</h1>\\n <p class=\\\"text-primary\\\">\\n Tenha todas as suas prescrições ao seu alcance, onde você estiver. Com a Receita Digital o seu\\n tratamento está a um clique. Com a Receita Digital você otimiza tempo e dinheiro.\\n <br />\\n <a class=\\\"see-more text-primary\\\" href=\\\"#\\\"\\n >Saiba <sup><i class=\\\"fa fa-plus\\\"></i></sup\\n ></a>\\n </p>\\n <a [routerLink]=\\\"user ? '/dashboard' : '/entry/login'\\\" class=\\\"btn btn-primary text-white mt-50\\\">\\n Começar Agora\\n </a>\\n </div>\\n </div>\\n <!-- </div> -->\\n </div>\\n</section>\\n<section class=\\\"secondary-section\\\">\\n <div class=\\\"more\\\">\\n <div class=\\\"heading\\\">\\n <div [class.animate]=\\\"!articleElIsVisible\\\" class=\\\"scroll-to-wrapper\\\">\\n <button (click)=\\\"scrollTo()\\\" class=\\\"btn btn-success\\\" type=\\\"button\\\" theme>\\n <i class=\\\"fa fa-arrow-down\\\"></i>\\n </button>\\n </div>\\n <div class=\\\"row\\\">\\n <div class=\\\"heading-text pl-2x w-100\\\">\\n <h1 class=\\\"title-extra-light font-xl-50 text-primary\\\">\\n Saiba mais sobre a Receita Digital!\\n </h1>\\n </div>\\n </div>\\n </div>\\n <article\\n #article\\n (inViewportAction)=\\\"onIntersection($event)\\\"\\n [inViewportOptions]=\\\"{ threshold: [0] }\\\"\\n class=\\\"stacks p-3\\\"\\n inViewport\\n >\\n <div class=\\\"row\\\">\\n <div class=\\\"col-sm-6\\\">\\n <div class=\\\"w-75\\\">\\n <p>\\n Você já se perguntou porquê toda a sua vida é digital e as receitas médicas ainda são em\\n papel? <br />\\n A Receita Digital faz parte de um grupo de empresas inovadoras que está trabalhando pra\\n trazer mais segurança e praticidade através das prescrições médicas digitais no Brasil.\\n <br />\\n Sempre consulte seu médico!\\n </p>\\n <div class=\\\"article-footer\\\">\\n <h6 class=\\\"title text-primary\\\">\\n O documento é digital, mas a atenção é pessoal!\\n <!-- <span class=\\\"float-right text-primary d-flex align-items-center\\\">\\n <i class=\\\"fa fa-globe-americas\\\"></i>\\n <small class=\\\"font-sm-12 text-lowercase\\\">webpage</small>\\n </span> -->\\n </h6>\\n </div>\\n </div>\\n </div>\\n <div class=\\\"col-sm-6\\\">\\n <div class=\\\"card w-85\\\">\\n <img alt=\\\"Card image cap\\\" class=\\\"card-img-top\\\" src=\\\"assets/img/pharmacist.jpg\\\" />\\n <div class=\\\"card-body d-flex flex-column align-items-center pl-5 bg-primary\\\">\\n <div class=\\\"media\\\">\\n <!-- <div class=\\\"media-icon text-primary mr-5\\\">\\n <i class=\\\"fa fa-user-solid\\\"></i>\\n </div> -->\\n <div class=\\\"media-body text-white\\\">\\n <h5 class=\\\"mt-0 mb-0 title text-white text-capitalize\\\">MAIS SEGURANÇA</h5>\\n <p class=\\\"w-75\\\">\\n Escrever um monte de informações cada vez que fizer uma prescrição? Tentar entender o\\n que está escrito em uma receita em papel? Precisar da sua receita médica e não estar\\n com ela à mão? Não ter certeza se a prescrição foi fraudada ou adulterada? Se você já\\n se viveu alguma dessas situações, você precisa conhecer a Receita Digital.\\n </p>\\n </div>\\n </div>\\n </div>\\n </div>\\n </div>\\n </div>\\n <div class=\\\"row\\\">\\n <div class=\\\"col-sm-6\\\">\\n <picture>\\n <img alt=\\\"\\\" class=\\\"img-fluid\\\" src=\\\"assets/img/doctor-with-patient.jpg\\\" />\\n </picture>\\n </div>\\n </div>\\n </article>\\n </div>\\n</section>\\n\";","export default \".tiles .disclaimer {\\n display: flex;\\n flex-direction: column;\\n justify-content: space-between;\\n}\\n.tiles .disclaimer a {\\n width: 173px;\\n margin: 20px 0px;\\n}\\n.tiles .disclaimer h1,\\n.tiles .disclaimer p {\\n color: white;\\n}\\n.tiles .disclaimer p {\\n font-size: 20px;\\n text-align: justify;\\n}\\n.tiles .disclaimer h1 {\\n font-family: \\\"problack\\\", sans-serif;\\n font-size: 51px;\\n margin-bottom: 0;\\n line-height: normal;\\n}\\n.tiles .disclaimer .btn {\\n font-family: \\\"problack\\\", sans-serif;\\n color: #0b6054;\\n}\\n.other-options {\\n max-height: 200px;\\n}\\n.other-options *:not(.text-white):not(.form-control) {\\n color: #000;\\n}\\n.other-options p {\\n line-height: normal;\\n}\\n.other-options input {\\n font-size: 10px;\\n}\\n.other-options input::-moz-placeholder {\\n color: #1b403a;\\n}\\n.other-options input::placeholder, .other-options input {\\n color: #1b403a;\\n}\\n.other-options input::-moz-placeholder {\\n text-transform: uppercase;\\n}\\n.other-options input::placeholder {\\n text-transform: uppercase;\\n}\\n.other-options .input-group-append i {\\n color: white;\\n}\\n.other-options .text-underline {\\n font-family: \\\"prosemibold\\\", sans-serif;\\n}\\n.other-options .text-underline:hover {\\n text-decoration: underline;\\n}\\n.secondary-section {\\n position: relative;\\n padding-bottom: 6%;\\n}\\n.secondary-section .scroll-to-wrapper {\\n position: absolute;\\n right: 0;\\n display: flex;\\n height: 80px;\\n top: 15.6%;\\n}\\n.secondary-section .scroll-to-wrapper.animate {\\n animation: action 1s infinite alternate;\\n}\\n.secondary-section .scroll-to-wrapper.animate:hover {\\n animation-play-state: paused;\\n}\\n.secondary-section .scroll-to-wrapper .btn {\\n width: 40px;\\n border-radius: 0;\\n padding-top: 0;\\n display: flex;\\n justify-content: center;\\n}\\n.secondary-section .scroll-to-wrapper .btn i {\\n position: absolute;\\n top: 0;\\n font-size: 1.263rem;\\n color: #3c3c3c;\\n}\\n@keyframes action {\\n 0% {\\n transform: translateY(0);\\n }\\n 100% {\\n transform: translateY(-10px);\\n }\\n}\\n.secondary-section .more .heading {\\n display: flex;\\n text-transform: none;\\n flex-direction: column;\\n letter-spacing: normal;\\n}\\n.secondary-section .more .heading .heading-text {\\n height: 150px;\\n display: flex;\\n align-items: flex-end;\\n background-color: #c7c7c7;\\n}\\n.secondary-section .more .stacks {\\n position: relative;\\n}\\n.secondary-section .more .stacks .card {\\n position: absolute;\\n transform: translateY(-16%);\\n border-radius: 0;\\n}\\n.secondary-section .more .stacks .card img {\\n border-radius: 0;\\n}\\n.media-icon {\\n width: 73px;\\n height: 73px;\\n border-radius: 50%;\\n background-color: white;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.see-more {\\n color: white;\\n font-size: 16px;\\n border-bottom: 3px solid white;\\n font-family: \\\"prolight\\\";\\n padding: 2px;\\n}\\n.see-more.text-primary {\\n border-bottom-color: #0b6054;\\n}\\n.see-more sup {\\n top: -0.2em;\\n}\\n.see-more i {\\n font-size: 11px;\\n}\";","import { Injectable } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivate,\n Router,\n RouterStateSnapshot,\n UrlTree\n} from '@angular/router';\nimport { ThemeService } from '@app/theme';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HomeGuard implements CanActivate {\n constructor(private router: Router, private themeService: ThemeService) {}\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree {\n if (this.themeService.getActiveTheme().name !== 'theme-receita-digital') {\n this.router.navigate(['entry/login']);\n return false;\n }\n return true;\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { HomeComponent } from './pages/home.component';\r\nimport { HomeGuard } from './home.guard';\r\n\r\nconst routes: Routes = [{ path: '', component: HomeComponent, canActivate: [HomeGuard] }];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class HomeRoutingModule {}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { HomeRoutingModule } from './home-routing.module';\r\nimport { HomeComponent } from './pages/home.component';\r\nimport { SharedModule } from '@app/shared';\r\n\r\n@NgModule({\r\n imports: [SharedModule, HomeRoutingModule],\r\n declarations: [HomeComponent]\r\n})\r\nexport class HomeModule {}\r\n"]}