{"version":3,"sources":["./src/app/app.component.html","./src/app/pages/alterar-senha/alterar-senha.component.html","./src/app/pages/comparacao-precos/comparacaoPreco.component.html","./src/app/pages/dashboard/dashboard.component.html","./src/app/pages/esqueci-minha-senha/esqueci-minha-senha.component.html","./src/app/pages/home/home.component.html","./src/app/pages/layout/layout.component.html","./src/app/pages/login/login.component.html","./src/app/pages/registre-se/registre-se.component.html","./src/app/pages/vitrine/vitrine.component.html","./src/app/pages/voucher/voucher.component.html","./node_modules/tslib/tslib.es6.js","./src/$_lazy_route_resource lazy namespace object","./src/app/_guards/AuthGuard.ts","./src/app/_guards/authGuard.ts","./src/app/actions/beneficiary.actions.ts","./src/app/actions/state.actions.ts","./src/app/actions/token.actions.ts","./src/app/actions/user.actions.ts","./src/app/app.component.css","./src/app/app.component.ts","./src/app/app.config.ts","./src/app/app.module.ts","./src/app/app.routes.ts","./src/app/model/beneficiary.ts","./src/app/model/chain.ts","./src/app/model/pre-authorization.ts","./src/app/model/product.ts","./src/app/model/state.ts","./src/app/model/token.ts","./src/app/model/user.ts","./src/app/modules/modals/alert-window.ts","./src/app/modules/modals/confirm-window.ts","./src/app/modules/modals/discount.coupon.window.module.ts","./src/app/modules/modals/envia-email-window.ts","./src/app/modules/modals/generic-window.module.ts","./src/app/pages/alterar-senha/alterar-senha.component.css","./src/app/pages/alterar-senha/alterar-senha.component.ts","./src/app/pages/comparacao-precos/comparacaoPreco.component.css","./src/app/pages/comparacao-precos/comparacaoPreco.component.ts","./src/app/pages/dashboard/dashboard.component.css","./src/app/pages/dashboard/dashboard.component.ts","./src/app/pages/esqueci-minha-senha/esqueci-minha-senha.component.css","./src/app/pages/esqueci-minha-senha/esqueci-minha-senha.component.ts","./src/app/pages/home/home.component.css","./src/app/pages/home/home.component.ts","./src/app/pages/layout/layout.component.css","./src/app/pages/layout/layout.component.ts","./src/app/pages/login/login.component.css","./src/app/pages/login/login.component.ts","./src/app/pages/registre-se/registre-se.component.css","./src/app/pages/registre-se/registre-se.component.ts","./src/app/pages/vitrine/vitrine.component.css","./src/app/pages/vitrine/vitrine.component.ts","./src/app/pages/voucher/voucher.component.css","./src/app/pages/voucher/voucher.component.ts","./src/app/providers/CustomHttpClient.ts","./src/app/reducers/beneficiary.reducers.ts","./src/app/reducers/index.ts","./src/app/reducers/state.reducers.ts","./src/app/reducers/token.reducers.ts","./src/app/reducers/user.reducers.ts","./src/app/service/authentication/authentication.service.ts","./src/app/service/data/data.service.ts","./src/app/service/home/home.service.ts","./src/app/service/product/product.service.ts","./src/app/service/usuario/usuario.service.ts","./src/app/service/util/util.service.ts","./src/app/service/voucher/voucher.service.ts","./src/environments/environment.prod.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n

Carregando...

\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
REDEFINIR SENHA
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Senha obrigatória\\r\\n Insira uma combinação com no mínimo 6 letras e números\\r\\n
\\r\\n
\\r\\n \\r\\n Repita a senha\\r\\n Senhas não são iguais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Compare os preços

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{product.productName}}

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

\\r\\n Principio ativo: {{activeIngredient.name}}
\\r\\n Apresentação: {{product.presentationName}}
\\r\\n Indústria farmacêutica: {{product.industryName}}
\\r\\n

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

{{rede.name}}

\\r\\n
\\r\\n
\\r\\n
Economia de {{math.max(rede.maximumDiscount, product.standardDiscounts).toString().replace('.', ',')}}%
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Pesquisar preços:

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

Meus Vouchers

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

Selecione as datas de geração do seu cupom

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

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

Selecione o status do seu cupom

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

Nenhum registro encontrado

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

usado

\\r\\n

voucher

\\r\\n
\\r\\n
25; else templateElse\\\">\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n


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

Olá
{{user.name.toString().split(' ')[0]}}

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

\\r\\n Valor acumulado de
\\r\\n vouchers utilizados:

R${{vouchersAcumulados}}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Meus dados
\\r\\n
\\r\\n
\\r\\n

CPF

\\r\\n

{{cpf}}

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

Nome completo

\\r\\n

{{user.name}}

\\r\\n

E-mail

\\r\\n

{{user.email}}

\\r\\n

Celular

\\r\\n

{{mobilePhoneNumber}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Nome obrigatório\\r\\n Nome inválido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Email obrigatório\\r\\n Email inválido, favor informar um email válido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Celular inválido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
ESQUECEU SUA SENHA?
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n CPF não cadastrado
\\r\\n CPF obrigatório
\\r\\n CPF Inválido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Email obrigatório
\\r\\n E-mail não confere com o e-mail cadastrado
\\r\\n E-mail inválido, favor informar um email valido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Compare preços e\\r\\n obtenha os melhores\\r\\n Cupons de Desconto\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n

\\r\\n Pesquise
\\r\\n medicamentos\\r\\n

\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n

\\r\\n Compare
\\r\\n preços\\r\\n

\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n

\\r\\n Obtenha
\\r\\n seu voucher\\r\\n

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

Baixe nosso App

\\r\\n

Com o aplicativo da Epharma você tem acesso ao localizador de Redes credenciadas da Epharma, além de\\r\\n poder consultar listagem de medicamentos com descontos.

\\r\\n \\\"\\\"\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n

Carregando...

\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Redes sociais
\\r\\n
    \\r\\n
  • \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

ePharma © 2020. Todos os direitos Reservados

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
ENTRAR NA CONTA
\\r\\n
\\r\\n \\r\\n CPF obrigatório \\r\\n CPF inválido \\r\\n
\\r\\n
\\r\\n \\r\\n Senha obrigatória\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{content}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
REGISTRE-SE
\\r\\n
\\r\\n
\\r\\n \\r\\n CPF obrigatório\\r\\n CPF inválido\\r\\n CPF já possui cadastro\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Nome obrigatório\\r\\n Nome inválido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Email obrigatório\\r\\n Email inválido, favor informar um email válido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Celular inválido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Senha obrigatória\\r\\n Insira uma combinação com no mínimo 6 letras e números\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Repita a senha\\r\\n Senhas não são iguais\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Resultado para \\\"{{pesquisa}}\\\"

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

Nenhum registro encontrado

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
15; else templateElse\\\">\\r\\n
\\r\\n

{{ item.productName.substring(0, 15) }}...

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

{{ item.productName }}

\\r\\n
\\r\\n
17; else templateElsePresentation\\\">\\r\\n
\\r\\n
{{ item.presentationName.substring(0, 17) }}...
\\r\\n
\\r\\n
\\r\\n \\r\\n
{{ item.presentationName }}
\\r\\n
\\r\\n
{{ ingredient.name }}
\\r\\n A partir de R$ {{ (item.pmc[0].maximumPrice - ((item.pmc[0].maximumPrice / 100) * item.discount)).toFixed(2).toString().replace('.', ',') }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

voucher de desconto

\\r\\n
\\r\\n
25; else templateElse\\\">\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { Component, OnInit, Injectable } from '@angular/core';\r\nimport { CanActivate, Router, ActivatedRoute, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { AuthenticationService } from '../service/authentication/authentication.service';\r\nimport { Token } from '../model/token';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { IsValidToken } from '../actions/token.actions';\r\nimport { Observable } from 'rxjs';\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n\r\n currentToken: Token;\r\n\r\n constructor(private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private authenticationService: AuthenticationService,\r\n private tokenStore: Store) {\r\n\r\n authenticationService.getCurrentToken().subscribe(token => this.currentToken = token);\r\n\r\n }\r\n\r\n canActivate(next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n this.tokenStore.dispatch(IsValidToken());\r\n if (this.currentToken.isValidToken)\r\n return true;\r\n\r\n this.authenticationService.logout();\r\n\r\n return false;\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Injectable } from '@angular/core';\r\nimport { CanActivate, Router, ActivatedRoute, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { AuthenticationService } from '../service/authentication/authentication.service';\r\nimport { Token } from '../model/token';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { IsValidToken } from '../actions/token.actions';\r\nimport { Observable } from 'rxjs';\r\n\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n\r\n currentToken: Token;\r\n\r\n constructor(private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private authenticationService: AuthenticationService,\r\n private tokenStore: Store) {\r\n\r\n authenticationService.getCurrentToken().subscribe(token => this.currentToken = token);\r\n\r\n }\r\n\r\n canActivate(next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean {\r\n this.tokenStore.dispatch(IsValidToken());\r\n if (this.currentToken.isValidToken)\r\n return true;\r\n\r\n this.authenticationService.logout();\r\n\r\n return false;\r\n }\r\n\r\n}\r\n","import { Action } from '@ngrx/store';\r\nimport { Beneficiary } from '../model/beneficiary';\r\n\r\nexport enum BeneficiaryActionTypes {\r\n Add = 'ADD_BENEFICIARY',\r\n Clear = 'CLEAR_BENEFICIARY'\r\n}\r\n\r\nexport const AddBeneficiary = (beneficiary: Beneficiary) => { type: BeneficiaryActionTypes.Add, payload: beneficiary };\r\nexport const ClearBeneficiary = () => { type: BeneficiaryActionTypes.Clear, payload: null };\r\n","import { Action } from '@ngrx/store';\r\nimport { State } from '../model/state';\r\n\r\nexport enum StateActionTypes {\r\n Add = 'ADD_STATE',\r\n Clear = 'CLEAR_STATE'\r\n}\r\n\r\nexport const AddState = (token: State) => { type: StateActionTypes.Add, payload: token };\r\nexport const ClearState = () => { type: StateActionTypes.Clear, payload: null };\r\n","import { Action } from '@ngrx/store';\r\nimport { Token } from '../model/token';\r\n\r\nexport enum TokenActionTypes {\r\n Add = 'ADD_TOKEN',\r\n Clear = 'CLEAR_TOKEN',\r\n IsValid = 'IS_VALID_TOKEN'\r\n}\r\n\r\nexport const AddToken = (token: Token) => { type: TokenActionTypes.Add, payload: token };\r\nexport const ClearToken = () => { type: TokenActionTypes.Clear, payload: null };\r\nexport const IsValidToken = () => { type: TokenActionTypes.IsValid, payload: null };\r\n","import { Action } from '@ngrx/store';\r\nimport { User } from '../model/user';\r\n\r\nexport enum UserActionTypes {\r\n Add = 'ADD_USER',\r\n Clear = 'CLEAR_USER'\r\n}\r\n\r\nexport const AddUser = (user: User) => { type: UserActionTypes.Add, payload: user };\r\nexport const ClearUser = () => { type: UserActionTypes.Clear, payload: null };\r\n\r\n","export default \".menu-inline {\\r\\n \\r\\n}\\r\\n \\r\\n@media only screen and (max-width: 480px) {\\r\\n \\r\\n .menu-inline div li a{\\r\\n margin-left: 10px;\\r\\n }\\r\\n .menu-inline div li {\\r\\n display: grid;\\r\\n }\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYXBwLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUE7O0FBRUE7O0lBRUk7UUFDSSxpQkFBaUI7SUFDckI7R0FDRDtLQUNFLGFBQWE7R0FDZjtBQUNIIiwiZmlsZSI6InNyYy9hcHAvYXBwLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubWVudS1pbmxpbmUge1xyXG4gICAgXHJcbn1cclxuIFxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAgXHJcbiAgICAubWVudS1pbmxpbmUgZGl2IGxpIGF7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB9XHJcbiAgIC5tZW51LWlubGluZSBkaXYgbGkge1xyXG4gICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgIH1cclxufVxyXG4iXX0= */\"","import { Component, AfterViewInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DataService } from './service/data/data.service';\r\nimport { User } from './model/user';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { Observable } from 'rxjs';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { Token } from './model/token';\r\nimport { State } from './model/state';\r\nimport { AuthenticationService } from './service/authentication/authentication.service';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { Beneficiary } from './model/beneficiary';\r\nimport { ClearState } from './actions/state.actions';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements AfterViewInit {\r\n idPlano: number;\r\n title = 'Portal Cupom de Desconto';\r\n footerPosition = 'relative';\r\n user: User = new User();\r\n isLogado: boolean = false;\r\n idUser: any;\r\n\r\n state$: Observable;\r\n beneficiary$: Observable;\r\n loggedUser: Observable;\r\n currentState: State;\r\n\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private dataService: DataService,\r\n private router: Router,\r\n private authenticationService: AuthenticationService,\r\n private stateStore: Store,\r\n private userStore: Store,\r\n private beneficiaryStore: Store) {\r\n\r\n this.state$ = stateStore.pipe(select('state'))\r\n this.loggedUser = userStore.pipe(select('user'))\r\n\r\n this.beneficiary$ = beneficiaryStore.pipe(select('beneficiary'))\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.state$.pipe(debounceTime(100)).subscribe(state => this.currentState = state);\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n }\r\n\r\n changeState(){\r\n this.stateStore.dispatch(ClearState());\r\n }\r\n\r\n logout() {\r\n this.authenticationService.logout();\r\n }\r\n searchClickGlobal(e: any) {\r\n var pesquisa = $(\"#searchGlobal\").val();\r\n var estado;\r\n\r\n if (e.which == 13) {\r\n e.preventDefault();\r\n\r\n this.state$.subscribe((state) => {\r\n estado = state.name\r\n });\r\n\r\n this.router.navigate([`/vitrine/${pesquisa}/${estado}`]);\r\n\r\n }\r\n }\r\n\r\n}\r\n","export const baseApiUrl = \"\";\r\n","import { AuthenticationService } from './service/authentication/authentication.service';\r\nimport { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\r\nimport { NgxMaskModule } from 'ngx-mask';\r\nimport { HttpClientModule, HttpClient } from '@angular/common/http';\r\nimport { NgxSpinnerModule, NgxSpinnerService } from 'ngx-spinner';\r\nimport { CustomHttpClient, CustomHttpClientCreator } from './providers/CustomHttpClient';\r\nimport { PasswordStrengthMeterModule } from 'angular-password-strength-meter';\r\n\r\n\r\n \r\nimport { NgxUploaderModule } from 'ngx-uploader';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { routing } from './app.routes';\r\n \r\nimport { AppComponent } from './app.component';\r\nimport { LayoutComponent } from './pages/layout/layout.component';\r\nimport { HomeComponent, ModalContentStateComponent } from './pages/home/home.component';\r\nimport { AuthGuard } from './_guards/AuthGuard';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { AlterarSenhaComponent } from './pages/alterar-senha/alterar-senha.component';\r\nimport { DiscountCouponWindowModule } from './modules/modals/discount.coupon.window.module';\r\nimport { DataTableModule } from \"angular-6-datatable\";\r\nimport { BsDatepickerModule } from \"ngx-bootstrap/datepicker\";\r\nimport { NgxPaginationModule } from 'ngx-pagination';\r\nimport { HomeService } from './service/home/home.service';\r\nimport { EsqueciMinhaSenhaComponent } from './pages/esqueci-minha-senha/esqueci-minha-senha.component';\r\nimport { RegistreSeComponent } from './pages/registre-se/registre-se.component';\r\nimport { DashboardComponent } from './pages/dashboard/dashboard.component';\r\nimport { ComparacaoPrecoComponent } from './pages/comparacao-precos/comparacaoPreco.component';\r\nimport { VitrineComponent } from './pages/vitrine/vitrine.component';\r\nimport { ProductService } from './service/product/product.service';\r\nimport { UsuarioService } from './service/usuario/usuario.service';\r\nimport { VoucherService } from './service/voucher/voucher.service';\r\nimport { VoucherComponent } from './pages/voucher/voucher.component';\r\nimport { DataService } from './service/data/data.service';\r\nimport { UtilService } from './service/util/util.service';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { storageSyncMetaReducer } from 'ngrx-store-persist';\r\n\r\nimport { userReducer, tokenReducer, stateReducer, beneficiaryReducer } from './reducers/';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n \r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n RegistreSeComponent,\r\n LayoutComponent,\r\n HomeComponent,\r\n ModalContentStateComponent,\r\n LoginComponent,\r\n AlterarSenhaComponent,\r\n EsqueciMinhaSenhaComponent,\r\n DashboardComponent,\r\n ComparacaoPrecoComponent,\r\n VitrineComponent,\r\n VoucherComponent\r\n ],\r\n entryComponents: [ModalContentStateComponent],\r\n imports: [\r\n BrowserModule,\r\n RouterModule, \r\n FormsModule, \r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n NgxSpinnerModule,\r\n NgxUploaderModule,\r\n NgSelectModule,\r\n PasswordStrengthMeterModule,\r\n NgxPaginationModule,\r\n ModalModule.forRoot(), \r\n NgxMaskModule.forRoot(),\r\n BsDatepickerModule.forRoot(),\r\n DiscountCouponWindowModule.forRoot(),\r\n TooltipModule.forRoot(),\r\n routing,\r\n DataTableModule,\r\n StoreModule.forRoot({\r\n user: userReducer,\r\n token: tokenReducer,\r\n state: stateReducer,\r\n beneficiary: beneficiaryReducer\r\n }, { metaReducers: [storageSyncMetaReducer], })\r\n ],\r\n providers: [AuthGuard, HomeService, ProductService, UsuarioService, VoucherService, DataService, AuthenticationService, UtilService,\r\n\r\n {\r\n provide: CustomHttpClient,\r\n useFactory: CustomHttpClientCreator,\r\n deps: [HttpClient, NgxSpinnerService]\r\n }],\r\n bootstrap: [AppComponent]\r\n})\r\n\r\n\r\nexport class AppModule {\r\n\r\n \r\n }\r\n","import { LoginComponent } from './pages/login/login.component';\r\nimport { AuthGuard } from './_guards/authGuard';\r\nimport { HomeComponent } from './pages/home/home.component';\r\nimport { LayoutComponent } from './pages/layout/layout.component';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\n//import { CupomComponent } from './pages/cupom/cupom.component';\r\nimport { AlterarSenhaComponent } from './pages/alterar-senha/alterar-senha.component';\r\nimport { EsqueciMinhaSenhaComponent } from './pages/esqueci-minha-senha/esqueci-minha-senha.component';\r\nimport { RegistreSeComponent } from './pages/registre-se/registre-se.component';\r\nimport { DashboardComponent } from './pages/dashboard/dashboard.component';\r\nimport { ComparacaoPrecoComponent } from './pages/comparacao-precos/comparacaoPreco.component';\r\nimport { VitrineComponent } from './pages/vitrine/vitrine.component';\r\nimport { VoucherComponent } from './pages/voucher/voucher.component';\r\n\r\n\r\nconst appRoutes: Routes = [\r\n {\r\n path: '',\r\n component: LayoutComponent, \r\n children: [\r\n //{ path: 'home', component: HomeComponent, pathMatch: 'full' },\r\n { path: '', redirectTo: '/home', pathMatch: 'full' },\r\n { path: 'home', component: HomeComponent },\r\n { path: 'vitrine/:termoPesquisa/:stateCode', component: VitrineComponent },\r\n { path: 'compararPrecos/:id/:stateCode', component: ComparacaoPrecoComponent },\r\n ]\r\n },\r\n { path: '', redirectTo: '/home', pathMatch: 'full' },\r\n { path: 'home', component: HomeComponent },\r\n { path: 'home/:termoPesquisa', component: HomeComponent },\r\n { path: 'login', component: LoginComponent},\r\n { path: 'alterarSenha', component: AlterarSenhaComponent },\r\n { path: 'alterarSenha/:hash', component: AlterarSenhaComponent },\r\n { path: 'esqueciMinhaSenha', component: EsqueciMinhaSenhaComponent },\r\n { path: 'registreSe/:id', component: RegistreSeComponent },\r\n { path: 'registreSe', component: RegistreSeComponent },\r\n {\r\n path: 'dashboard/:id',\r\n component: DashboardComponent,\r\n canActivate: [AuthGuard]\r\n },\r\n {\r\n path: 'voucher',\r\n component: VoucherComponent,\r\n canActivate: [AuthGuard]\r\n }\r\n];\r\n\r\nexport const routing = RouterModule.forRoot(appRoutes, { useHash: true });\r\n","import { User } from \"./user\";\r\nimport { System } from \"./system\";\r\nimport { Card } from \"./card\";\r\n\r\nexport class Beneficiary { \r\n\r\n id: number;\r\n benefitId: number;\r\n name: string;\r\n startDate: Date;\r\n endDate: Date;\r\n cardholderNumber: string;\r\n mainCardholderNumber: string; \r\n birthDate: Date; \r\n cpf: string; \r\n lastName: string;\r\n email1: string; \r\n mobilePhoneNumber: string;\r\n transferStatus: string; \r\n gender: string; \r\n registrationType: number;\r\n updatedInfo: string;\r\n dataWarehouseDate: Date;\r\n dataWarehouseError: Date; \r\n addressType: string;\r\n addressLine: string;\r\n addressNumber: string;\r\n addressComplement: string;\r\n addressNeighborhood: string;\r\n addressCity: string; \r\n addressState: string; \r\n addressZipCode: string;\r\n blocked: boolean; \r\n limit: number; \r\n limitDate: Date;\r\n cardGeneratedDate: Date; \r\n companyRegister: string; \r\n dependentDegree: string; \r\n structureCode: string; \r\n cardDisplayName: string; \r\n status: number; \r\n beneficiaryHolderId: number; \r\n firedControl: string; \r\n updatedUser: string; \r\n updatedDate: Date; \r\n createdDate: Date; \r\n internalUpdatedDate: string; \r\n documentNumber: string; \r\n documentIssuer: string; \r\n migrationStatus: string; \r\n migrationDate: Date; \r\n reactivationDate: Date; \r\n allowanceRangeId: number; \r\n email2: string; \r\n splashScreenViewed: number; \r\n phoneNumber1: string; \r\n phoneNumber2: string; \r\n personId: number;\r\n //cards\r\n cards: Card[];\r\n user: User;\r\n system: System;\r\n\r\n}\r\n","import { ProductDiscount } from \"./product-discount\";\r\n\r\nexport class Chain {\r\n chainId: number;\r\n name: string;\r\n uf: string;\r\n differentiatedDiscountByChain: Array;\r\n differentiatedDiscountSku: Array;\r\n}\r\n\r\n","import { ItemsAuthorization } from \"./items-authorization\";\r\n\r\nexport class PreAuthorization {\r\n beneficiaryIdentifier: string;\r\n prescriptionScanning: number;\r\n authorizationId: number;\r\n expirationDate: Date;\r\n items: Array;\r\n beneficiaries: Array;\r\n code: number;\r\n storeId: number;\r\n storeSequenceId: number;\r\n message: string;\r\n}\r\n\r\n","import { ActiveIngredients } from \"./active-ingredients\";\r\nimport { ProductDiscount } from \"./product-discount\";\r\nimport { Chain } from \"./chain\";\r\n\r\nexport class Product {\r\n productName: string;\r\n presentationId: number;\r\n activeIngredients: Array;\r\n standardDiscounts: Array;\r\n chains: Array;\r\n presentationName: string;\r\n industryName: string;\r\n lowestPrice: string;\r\n}\r\n\r\n","export class State {\r\n id: number;\r\n name: string; \r\n}\r\n","export class Token {\r\n accessToken: string;\r\n expires: string;\r\n isValidToken: boolean;\r\n}\r\n","import { System } from \"./system\";\r\nimport { SecurityKeyUser } from \"./securityKeyUser\";\r\n\r\nexport class User {\r\n\r\n id: number;\r\n login: string;\r\n password: string;\r\n mobilePhoneNumber: string;\r\n email: string;\r\n cpf: string;\r\n name: string;\r\n lastName: string;\r\n startDate: Date;\r\n endDate: Date;\r\n phoneNumber: number;\r\n pingDate: Date;\r\n gender: string;\r\n birthDate: Date;\r\n status: number;\r\n type: number;\r\n requireNewPassword: boolean; \r\n rg: string;\r\n addressLine: string;\r\n addressZipCode: string;\r\n addressNeighborhood: string;\r\n addressComplement: string;\r\n addressCity: string;\r\n addressState: string;\r\n loginAttemptsNumber: number;\r\n systems: System[];\r\n securityKey: SecurityKeyUser\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, ModalModule } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\n\r\n@Component({\r\n selector: 'modal-alert-component',\r\n template: '',\r\n})\r\nexport class ModalAlertService {\r\n bsModalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n show(title: string, message: string) {\r\n const initialState = {\r\n title: title,\r\n message: message\r\n };\r\n this.bsModalRef = this.modalService.show(ModalAlertComponent, { initialState });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-content',\r\n template: `\r\n
\r\n

{{title}}

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

{{message}}

\r\n \r\n
\r\n `\r\n})\r\nexport class ModalAlertComponent {\r\n constructor(public bsModalRef: BsModalRef) { }\r\n\r\n confirm() {\r\n this.bsModalRef.hide();\r\n }\r\n}","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, ModalModule } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\n\r\n@Component({\r\n selector: 'modal-confirm-component',\r\n template: '',\r\n})\r\nexport class ModalConfirmService {\r\n bsModalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n show(title: string, message: string, confirmClicked: Function, declineClicked?: Function) {\r\n const initialState = {\r\n title: title,\r\n message: message,\r\n confirm: () => { this.bsModalRef.hide(); if (confirmClicked) confirmClicked(); },\r\n decline: () => { this.bsModalRef.hide(); if (declineClicked) declineClicked(); }\r\n };\r\n this.bsModalRef = this.modalService.show(ModalConfirmContentComponent, { initialState });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-content',\r\n template: `\r\n
\r\n

{{title}}

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

{{message}}

\r\n \r\n \r\n
\r\n `\r\n})\r\nexport class ModalConfirmContentComponent {\r\n constructor(public bsModalRef: BsModalRef) { }\r\n} ","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from '@angular/common';\r\nimport { ModalConfirmContentComponent, ModalConfirmService } from \"./confirm-window\";\r\nimport { ModalAlertComponent, ModalAlertService } from \"./alert-window\";\r\nimport { ModalEnviaEmailComponent, ModalEnviaEmailService } from \"./envia-email-window\";\r\nimport { ModalGenericComponent, ModalGenenericService } from \"./generic-window.module\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\n\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule],\r\n declarations: [\r\n ModalConfirmContentComponent,\r\n ModalConfirmService,\r\n ModalAlertComponent,\r\n ModalAlertService,\r\n ModalEnviaEmailComponent,\r\n ModalEnviaEmailService,\r\n ModalGenericComponent,\r\n ModalGenenericService\r\n \r\n ],\r\n entryComponents: [ModalConfirmContentComponent, ModalAlertComponent, ModalEnviaEmailComponent, ModalGenericComponent],\r\n exports: [ModalConfirmContentComponent, ModalAlertComponent, ModalEnviaEmailComponent, ModalGenericComponent]\r\n})\r\nexport class DiscountCouponWindowModule {\r\n\r\n static forRoot() {\r\n return {\r\n ngModule: DiscountCouponWindowModule,\r\n providers: [ModalConfirmService, ModalAlertService, ModalEnviaEmailService, ModalGenenericService]\r\n }\r\n\r\n }\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, ModalModule } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'modal-envia-email-component',\r\n template: '',\r\n})\r\nexport class ModalEnviaEmailService {\r\n bsModalRef: BsModalRef;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n show(title: string, message: string) {\r\n const initialState = {\r\n title: title,\r\n message: message\r\n };\r\n this.bsModalRef = this.modalService.show(ModalEnviaEmailComponent, {\r\n initialState,\r\n ignoreBackdropClick: true,\r\n keyboard: false\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-content',\r\n template: `
\r\n

{{title}}

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

{{message}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n `,\r\n styles: [`\r\n .btn-ok {\r\n background:#075e9c;\r\n color:#fff !important;\r\n padding:5px 20px;\r\n border-radius:20px;\r\n text-transform: uppercase;\r\n font-size: 14px;\r\n font-family: 'Montserrat', sans-serif; \r\n }\r\n `]\r\n})\r\n\r\nexport class ModalEnviaEmailComponent { \r\n\r\n constructor(public bsModalRef: BsModalRef, \r\n private alertModalService: ModalAlertService,\r\n private router: Router\r\n ) { }\r\n\r\n onRedireciona() {\r\n this.bsModalRef.hide();\r\n this.router.navigate(['login']);\r\n }\r\n}\r\n","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { BsModalService, ModalModule } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'modal-generic-component',\r\n template: '',\r\n})\r\nexport class ModalGenenericService {\r\n bsModalRef: BsModalRef;\r\n public static route: string;\r\n constructor(private modalService: BsModalService) { }\r\n\r\n show(title: string, message: string, route: string) {\r\n const initialState = {\r\n title: title,\r\n message: message\r\n };\r\n ModalGenenericService.route = route;\r\n\r\n this.bsModalRef = this.modalService.show(ModalGenericComponent, {\r\n initialState,\r\n ignoreBackdropClick: true,\r\n keyboard: false\r\n });\r\n this.bsModalRef.content.closeBtnName = 'Close';\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'modal-content',\r\n template: `
\r\n

{{title}}

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

{{message}}

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n `,\r\n styles: [`\r\n .btn-ok {\r\n background:#075e9c;\r\n\t color:#fff !important;\r\n padding:5px 20px;\r\n\t border-radius:20px;\r\n text-transform: uppercase;\r\n font-size: 14px;\r\n font-family: 'Montserrat', sans-serif; \r\n }\r\n `]\r\n})\r\n\r\nexport class ModalGenericComponent { \r\n\r\n constructor(public bsModalRef: BsModalRef, \r\n private alertModalService: ModalAlertService,\r\n private router: Router\r\n ) { }\r\n\r\n onRedireciona(route: string) {\r\n this.bsModalRef.hide(); \r\n this.router.navigate([ModalGenenericService.route]);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2FsdGVyYXItc2VuaGEvYWx0ZXJhci1zZW5oYS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { tap } from 'rxjs/operators';\r\nimport { FormGroup, FormControl, Validators, AbstractControl } from '@angular/forms';\r\nimport { User } from '../../model/user';\r\nimport { ModalGenenericService } from '../../modules/modals/generic-window.module';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './alterar-senha.component.html',\r\n styleUrls: ['./alterar-senha.component.css']\r\n})\r\nexport class AlterarSenhaComponent implements OnInit {\r\n beneficiary: Beneficiary = new Beneficiary();\r\n user: User = new User();\r\n passwordPattern = \"/([A-Za-z]{1,}).*(\\d{1,}).*|(\\d{1,}).*([A-Za-z]{1,}).*/\";\r\n show: boolean;\r\n mensagem: string;\r\n showRedefinir: boolean;\r\n mensagemRedefinir: string;\r\n hashKeyNotFound: boolean = true;\r\n repeatPassword: string;\r\n\r\n perfilFormGroup = new FormGroup({\r\n password: new FormControl('', [Validators.required, GenericValidator.validatePassword()]),\r\n repeatPassword: new FormControl('', [Validators.required]),\r\n });\r\n\r\n constructor(private authenticationService: AuthenticationService,\r\n private route: Router,\r\n private activatedRoute: ActivatedRoute, \r\n private modalGeneric: ModalGenenericService,\r\n private modalAlert: ModalAlertService) { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('alterar-senha');\r\n this.show = false;\r\n localStorage.removeItem('userId');\r\n\r\n this.activatedRoute.params.subscribe(params => {\r\n if (Object.getOwnPropertyNames(params).length > 0) {\r\n this.authenticationService.securityKey(params.hash).subscribe((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n if (result.success) {\r\n //Adicionado no dataService o usuario atual do sistema\r\n this.user.id = result.data.id;\r\n this.user.securityKey = result.data.securityKey;\r\n this.user.login = result.data.login;\r\n this.user.cpf = result.data.cpf;\r\n }\r\n else {\r\n this.openModalNotFound();\r\n }\r\n\r\n });\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n openModalNotFound() {\r\n this.modalGeneric.show('Redefinição de senha', 'Link de alteração de senha vencida! clique em OK para solicitar uma nova redefinição.', 'esqueciMinhaSenha');\r\n }\r\n\r\n openModalSuccess() {\r\n this.modalGeneric.show('Redefinição de senha', 'Senha Alterada com sucesso', 'login');\r\n }\r\n\r\n openModalAlert() {\r\n this.modalAlert.show('Alerta', 'Ocorreu um erro na solicitação tente novamente mais tarde!');\r\n }\r\n\r\n onPasswordReset() {\r\n\r\n this.authenticationService.changePassword(this.user).then((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n if (result.success) {\r\n this.openModalSuccess();\r\n }\r\n else {\r\n console.error(result.error);\r\n this.openModalAlert();\r\n }\r\n\r\n },\r\n (err: any) => {\r\n console.error(err);\r\n this.openModalAlert();\r\n });\r\n }\r\n\r\n public cssObrigatorio(nomecampo) {\r\n if (this.perfilFormGroup.controls[nomecampo].invalid && (this.perfilFormGroup.controls[nomecampo].touched || this.perfilFormGroup.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.perfilFormGroup.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n\r\n public ativaTooltipSenha(component) {\r\n\r\n var ativa = false;\r\n\r\n var senhaOriginal = this.perfilFormGroup.controls[\"password\"].value;\r\n var senhaRepetida = this.perfilFormGroup.controls[\"repeatPassword\"].value;\r\n\r\n if (senhaOriginal != \"\" && senhaRepetida != \"\") {\r\n if (senhaOriginal != senhaRepetida) {\r\n ativa = true;\r\n }\r\n }\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component) {\r\n\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.perfilFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component) {\r\n\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var patterninvalido = false;\r\n var senhainvalida = false;\r\n if (ativa) {\r\n senhainvalida = this.perfilFormGroup.controls[nomecampo].errors.passwordNotValid;\r\n patterninvalido = this.perfilFormGroup.controls[nomecampo].errors.pattern;\r\n senhainvalida = (senhainvalida !== null && senhainvalida) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (patterninvalido || senhainvalida);\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n}\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n\r\n if (control.value) {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n public static passwordPattern = /([A-Za-z]{1,}).*(\\d{1,}).*|(\\d{1,}).*([A-Za-z]{1,}).*/;\r\n static validatePassword() {\r\n return (control: AbstractControl): Validators => {\r\n\r\n let result = {};\r\n\r\n if (control.value != null) {\r\n const password = control.value.toString().replace(/\\.|\\-/g, '');\r\n if (password && password.length > 0) {\r\n if (!password.match(this.passwordPattern) || password.length < 8) {\r\n return { passwordNotValid: true };\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2NvbXBhcmFjYW8tcHJlY29zL2NvbXBhcmFjYW9QcmVjby5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { ProductService } from '../../service/product/product.service';\r\nimport { Product } from '../../model/product';\r\nimport { Chain } from '../../model/chain';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { VoucherService } from '../../service/voucher/voucher.service';\r\nimport { PreAuthorization } from '../../model/pre-authorization';\r\nimport { DataService } from '../../service/data/data.service';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { User } from '../../model/user';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-comparacaoPreco',\r\n templateUrl: './comparacaoPreco.component.html',\r\n styleUrls: ['./comparacaoPreco.component.css']\r\n})\r\n\r\nexport class ComparacaoPrecoComponent implements OnInit {\r\n product: Product = new Product();\r\n math = Math;\r\n chain: Chain = new Chain();\r\n public chains: any[];\r\n public static selectedVoucher: any;\r\n user: User = new User();\r\n beneficiary: Beneficiary = new Beneficiary();\r\n\r\n constructor(private productService: ProductService,\r\n private route: Router,\r\n private dataService: DataService,\r\n private voucherService: VoucherService,\r\n private activatedRoute: ActivatedRoute,\r\n private modalAlert: ModalAlertService,\r\n private authenticationService: AuthenticationService)\r\n { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('comparacaoPreco');\r\n this.LoadPrice();\r\n }\r\n\r\n public LoadProduct() {\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.id) {\r\n this.productService.GetProduct(param.id).subscribe((result: any) => {\r\n if (result) {\r\n var retorno = JSON.parse(result.result).data;\r\n this.product = retorno[0];\r\n }\r\n });\r\n }\r\n });\r\n }\r\n\r\n public LoadPrice() {\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.id && param.stateCode) {\r\n this.productService.GetProductPrice(param.id, param.stateCode).subscribe((result: any) => {\r\n var retorno = result.data;\r\n this.product = retorno;\r\n });\r\n }\r\n });\r\n }\r\n\r\n public gerarVoucher(pmc, maximumDiscount) {\r\n\r\n var beneficiaryId;\r\n var paramId;\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.id && param.stateCode) {\r\n paramId = param.id;\r\n }\r\n });\r\n \r\n //this.authenticationService.getCurrentUser().subscribe(us => this.user = us);\r\n this.authenticationService.getCurrentBeneficiary().subscribe(b => this.beneficiary = b);\r\n\r\n var logado = (this.beneficiary.id != null) ? true : false;\r\n //caso logado\r\n if (logado) {\r\n\r\n var obj = {\r\n skuId: paramId,\r\n pmc: pmc,\r\n maximumDiscount: maximumDiscount,\r\n beneficiaryId: this.beneficiary.cpf\r\n };\r\n\r\n this.voucherService.CreateVoucher(obj).then((result: any) => {\r\n if (result != null && result.success) { \r\n this.dataService.changeVoucher(result.data);\r\n this.route.navigate(['voucher']);\r\n }\r\n else {\r\n this.openModalVourcherError(result.message);\r\n }\r\n });\r\n } else {\r\n\r\n ComparacaoPrecoComponent.selectedVoucher = {\r\n hasSelectedVoucher: true,\r\n voucher: {\r\n id: paramId,\r\n pmc: pmc,\r\n maximumDiscount: maximumDiscount\r\n }\r\n };\r\n\r\n this.route.navigate(['login']);\r\n }\r\n }\r\n\r\n openModalVourcherError(message) {\r\n this.modalAlert.show('Alerta', message);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit, AfterViewInit } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { HomeService } from '../../service/home/home.service';\r\nimport { State } from '../../model/state';\r\nimport { FormControl, Validators, FormGroup, AbstractControl } from '@angular/forms';\r\nimport { Router, ActivatedRoute, Params } from '@angular/router';\r\nimport { UsuarioService } from '../../service/usuario/usuario.service';\r\nimport { VoucherService } from '../../service/voucher/voucher.service';\r\nimport { Voucher } from '../../model/voucher';\r\nimport { moment } from 'ngx-bootstrap/chronos/test/chain';\r\nimport { of, Observable } from 'rxjs';\r\nimport { User } from '../../model/user';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\nimport { DataService } from '../../service/data/data.service';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { UtilService } from '../../service/util/util.service';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { Store, select } from '@ngrx/store';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\nexport class DashboardComponent implements OnInit, AfterViewInit {\r\n periodInvalid: boolean = false;\r\n moment = moment;\r\n user: User = new User();\r\n beneficiary: Beneficiary = new Beneficiary();\r\n cpf: string;\r\n mobilePhoneNumber: string;\r\n dataInicio: any;\r\n dataFim: any;\r\n voucherList: Voucher[] = [];\r\n collection = { count: 0, data: [] };\r\n totalItemsPage: number = 3;\r\n total: number = 0;\r\n page: number = 1;\r\n asyncVoucher: Observable;\r\n vouchersAcumulados: any;\r\n usado: boolean = false;\r\n todos: boolean = false;\r\n emailPattern = \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$\";\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n passwordPattern = \"/([A-Za-z]{1,}).*(\\d{1,}).*|(\\d{1,}).*([A-Za-z]{1,}).*/\";\r\n\r\n state$: Observable;\r\n\r\n public static states: State[] = [];\r\n modalRef: BsModalRef;\r\n\r\n perfilFormGroup = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, Validators.pattern(this.cpfPattern), GenericValidator.isValidCpf()]),\r\n name: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n mobilePhoneNumber: new FormControl('', [Validators.minLength(13)]),\r\n password: new FormControl('', [Validators.required, Validators.pattern(this.passwordPattern)]),\r\n repeatPassword: new FormControl('', [Validators.required]),\r\n });\r\n\r\n filtroDashboardFormGroup = new FormGroup({\r\n dataInicio: new FormControl('', [Validators.required]),\r\n dataFim: new FormControl('', [Validators.required])\r\n });\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private homeService: HomeService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private usuarioService: UsuarioService,\r\n private voucherService: VoucherService,\r\n private authenticationService: AuthenticationService,\r\n private dataService: DataService,\r\n private modalAlert: ModalAlertService,\r\n private utilService: UtilService,\r\n private stateStore: Store\r\n ) {\r\n this.state$ = stateStore.pipe(select('state'))\r\n }\r\n\r\n ngOnInit() {\r\n\r\n $(\r\n function () {\r\n var options = $.extend({},\r\n $.datepicker.regional[\"pt\"], {\r\n dateFormat: \"dd/mm/yy\",\r\n changeMonth: true,\r\n changeYear: true,\r\n highlightWeek: true,\r\n maxDate: new Date()\r\n }\r\n );\r\n\r\n $(\".data\").datepicker(options);\r\n\r\n }\r\n );\r\n\r\n LayoutComponent.ShowHeaderInput('dashboard');\r\n\r\n this.HideForm();\r\n let user = new User();\r\n this.authenticationService.getCurrentUser().subscribe(us => user = us);\r\n this.user = user;\r\n this.mobilePhoneNumber = this.formatarMobilePhoneNumber(user.mobilePhoneNumber);\r\n this.cpf = this.formatarCPF(user.cpf);\r\n\r\n this.dataInicio = moment().subtract(14, \"days\").format('DD/MM/YYYY');\r\n this.dataFim = moment().format('DD/MM/YYYY');\r\n\r\n //this.LoadInformacoesUsuario();\r\n //this.LoadInformacoesVoucher(1, true);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.LoadInformacoesUsuario();\r\n this.LoadInformacoesVoucher(1, true);\r\n\r\n }\r\n public HideForm() {\r\n $(\"#divFormulario\").hide();\r\n }\r\n\r\n onUpdate() {\r\n\r\n this.authenticationService.getCurrentBeneficiary().subscribe(b => this.beneficiary = b);\r\n\r\n this.beneficiary.name = this.user.name;\r\n this.beneficiary.email1 = this.user.email;\r\n this.beneficiary.user = this.user;\r\n\r\n if (this.mobilePhoneNumber != null) {\r\n this.beneficiary.user.mobilePhoneNumber = this.mobilePhoneNumber.replace(/\\(|\\)|\\s/g, '');\r\n this.beneficiary.mobilePhoneNumber = this.beneficiary.user.mobilePhoneNumber;\r\n } \r\n\r\n this.authenticationService.update(this.beneficiary).then((res: any) => {\r\n\r\n if (res.success) {\r\n let token;\r\n this.authenticationService.getCurrentToken().subscribe(t => token = t); \r\n\r\n this.authenticationService.storeData(this.user, token, res.data);\r\n \r\n this.resetDetail();\r\n this.openModalSuccess();\r\n }\r\n });\r\n\r\n }\r\n\r\n openModalSuccess() {\r\n this.modalAlert.show('Alteração de cadastro', 'Cadastro alterado com sucesso!');\r\n }\r\n\r\n editarClick(event: Event) {\r\n $(\"#divDetalhes\").hide();\r\n $(\"#divFormulario\").show();\r\n }\r\n\r\n resetDetail() {\r\n $(\"#divFormulario\").hide();\r\n $(\"#divDetalhes\").show();\r\n }\r\n\r\n searchClick(event: Event) {\r\n var pesquisa = $(\"#search\").val();\r\n var estado;\r\n\r\n this.state$.subscribe((state) => {\r\n estado = state.name\r\n });\r\n\r\n this.router.navigate([`/vitrine/${pesquisa}/${estado}`]);\r\n }\r\n\r\n public cssObrigatorio(nomecampo, formulario) {\r\n if (formulario == 'filtroDashboard') {\r\n if (this.filtroDashboardFormGroup.controls[nomecampo].invalid && (this.filtroDashboardFormGroup.controls[nomecampo].touched || this.filtroDashboardFormGroup.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.filtroDashboardFormGroup.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n else {\r\n if (this.perfilFormGroup.controls[nomecampo].invalid && (this.perfilFormGroup.controls[nomecampo].touched || this.perfilFormGroup.controls[nomecampo].dirty)) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.perfilFormGroup.controls[nomecampo].valid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n }\r\n\r\n public ativaTooltipSenha(component) {\r\n\r\n var ativa = false;\r\n\r\n var senhaOriginal = this.perfilFormGroup.controls[\"password\"].value;\r\n var senhaRepetida = this.perfilFormGroup.controls[\"repeatPassword\"].value;\r\n\r\n if (senhaOriginal != \"\" && senhaRepetida != \"\") {\r\n if (senhaOriginal != senhaRepetida) {\r\n ativa = true;\r\n }\r\n }\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component, formulario) {\r\n if (formulario == 'filtroDashboard') {\r\n var ativa = this.filtroDashboardFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.filtroDashboardFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n else {\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.perfilFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component, formulario) {\r\n if (formulario == 'filtroDashboard') {\r\n\r\n var ativa = this.filtroDashboardFormGroup.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var dataInvalida = false;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n cpfinvalido = this.filtroDashboardFormGroup.controls[nomecampo].errors.cpfNotValid;\r\n dataInvalida = this.filtroDashboardFormGroup.controls[nomecampo].errors.dataNotValid;\r\n patterninvalido = this.filtroDashboardFormGroup.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n }\r\n else {\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n patterninvalido = this.perfilFormGroup.controls[nomecampo].errors.pattern;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n }\r\n ativa = ativa || patterninvalido;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n public LoadInformacoesUsuario() {\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.id) {\r\n this.usuarioService.GetVouchersAcumulados(param.id).subscribe((result: any) => {\r\n var sucesso = JSON.parse(result.result).success;\r\n if (sucesso) {\r\n var retorno = JSON.parse(result.result).data;\r\n this.vouchersAcumulados = retorno.discount.toString().replace('.', ',');\r\n }\r\n else {\r\n this.vouchersAcumulados = \"0,00\";\r\n }\r\n });\r\n\r\n }\r\n });\r\n }\r\n\r\n public RetornaOpcaoFiltro(usado: boolean, todos: boolean) {\r\n this.usado = usado;\r\n this.todos = todos;\r\n\r\n this.LoadInformacoesVoucher(1, false);\r\n }\r\n\r\n public LoadInformacoesVoucher(page: number, validado: boolean) {\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.id) {\r\n if (this.todos == true) {\r\n $(\"#todos\").addClass('buttonSelecionado');\r\n $(\"#disponiveis\").removeClass('buttonSelecionado');\r\n $(\"#usados\").removeClass('buttonSelecionado');\r\n }\r\n else if (this.usado == true) {\r\n $(\"#usados\").addClass('buttonSelecionado');\r\n $(\"#todos\").removeClass('buttonSelecionado');\r\n $(\"#disponiveis\").removeClass('buttonSelecionado');\r\n }\r\n else {\r\n $(\"#disponiveis\").addClass('buttonSelecionado');\r\n $(\"#usados\").removeClass('buttonSelecionado');\r\n $(\"#todos\").removeClass('buttonSelecionado');\r\n }\r\n\r\n if (validado == false && (this.ValidPeriod() || ($(\"#dataInicio\").val() == \"\" || $(\"#dataFim\").val() == \"\"))) {\r\n this.modalAlert.show('', 'Período inválido');\r\n return false;\r\n }\r\n var dataInicial = this.retornaDataFormatada($(\"#dataInicio\").val());\r\n var dataFinal = this.retornaDataFormatada($(\"#dataFim\").val()); \r\n\r\n this.voucherService.ReadVouchers(param.id, this.totalItemsPage, page, this.usado, this.todos, dataInicial, dataFinal).subscribe((result: any) => {\r\n var sucesso = JSON.parse(result.result).success;\r\n\r\n if (sucesso) {\r\n var retorno = JSON.parse(result.result).data;\r\n var pagination = JSON.parse(result.result).pagination;\r\n this.total = pagination.totalItems;\r\n this.page = page;\r\n this.voucherList = retorno;\r\n\r\n this.collection.count = this.total;\r\n this.collection.data = this.voucherList;\r\n }\r\n else {\r\n this.total = 0;\r\n this.page = page;\r\n\r\n this.collection.count = this.total;\r\n this.collection.data = [];\r\n }\r\n\r\n });\r\n }\r\n });\r\n }\r\n\r\n retornaDataFormatada(data: string) {\r\n var retorno = \"\";\r\n\r\n if (data == \"\") {\r\n retorno = \"null\";\r\n }\r\n else {\r\n var arrayData = data.split(\"/\");\r\n\r\n var dia = arrayData[0];\r\n var mes = arrayData[1];\r\n var ano = arrayData[2];\r\n\r\n retorno = ano + \"-\" + mes + \"-\" + dia;\r\n }\r\n\r\n return retorno;\r\n }\r\n generatePDF(e: any, voucher: any) {\r\n e.preventDefault();\r\n this.utilService.generatePDF(this.user, voucher);\r\n }\r\n\r\n sendSms(e: any, authorizationId: string) {\r\n e.preventDefault();\r\n this.utilService.sendSms(this.user.mobilePhoneNumber, authorizationId);\r\n }\r\n\r\n sendEmail(e: any, voucher: any) {\r\n e.preventDefault(); \r\n this.utilService.sendEmail(this.user, voucher);\r\n }\r\n\r\n public formatarCPF(v) {\r\n if (v != undefined) {\r\n if (v.length <= 14) {\r\n v = v.replace(/(\\d{3})(\\d)/, \"$1.$2\")\r\n v = v.replace(/(\\d{3})(\\d)/, \"$1.$2\")\r\n v = v.replace(/(\\d{3})(\\d{1,2})$/, \"$1-$2\")\r\n return v;\r\n }\r\n }\r\n }\r\n\r\n public formatarMobilePhoneNumber(v) {\r\n v = v.replace(/\\D/g, \"\"); \r\n v = v.replace(/^(\\d{2})(\\d)/g, \"($1) $2\"); \r\n return v;\r\n }\r\n\r\n ValidPeriod() {\r\n var inicio = $(\"#dataInicio\").val();\r\n var fim = $(\"#dataFim\").val();\r\n\r\n if (inicio && fim) {\r\n\r\n var dataIni = new Date(inicio.split(\"/\")[2], inicio.split(\"/\")[1], inicio.split(\"/\")[0]);\r\n var dataFim = new Date(fim.split(\"/\")[2], fim.split(\"/\")[1], fim.split(\"/\")[0]);\r\n\r\n if (dataFim < dataIni) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n}\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n console.log(cpf);\r\n if (cpf) {\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2VzcXVlY2ktbWluaGEtc2VuaGEvZXNxdWVjaS1taW5oYS1zZW5oYS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\nimport { Router } from '@angular/router';\r\nimport { tap } from 'rxjs/operators';\r\nimport { ModalEnviaEmailService } from '../../modules/modals/envia-email-window';\r\nimport { FormGroup, FormControl, Validators, AbstractControl } from '@angular/forms';\r\nimport { User } from '../../model/user';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './esqueci-minha-senha.component.html',\r\n styleUrls: ['./esqueci-minha-senha.component.css']\r\n})\r\nexport class EsqueciMinhaSenhaComponent implements OnInit {\r\n user: User = new User();\r\n emailPattern = \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$\";\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n show: boolean;\r\n mensagem: string;\r\n showRedefinir: boolean;\r\n mensagemRedefinir: string;\r\n errorCpf: boolean = false;\r\n errorEmail: boolean = false;\r\n notFoundCpf: boolean = false;\r\n conflictEmail: boolean = false;\r\n\r\n esqueciMinhaSenhaFormGroup = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, GenericValidator.isValidCpf()]),\r\n email: new FormControl('', [Validators.pattern(this.emailPattern)]),\r\n });\r\n\r\n constructor(private authenticationService: AuthenticationService,\r\n private enviaEmailModalService: ModalEnviaEmailService,\r\n private route: Router) { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('esqueci-minha-senha');\r\n this.show = false;\r\n localStorage.removeItem('idUser');\r\n }\r\n\r\n public ShowSearchBar() {\r\n $(\"#searchBar\").css('visibility', 'visible');\r\n }\r\n\r\n public cssObrigatorio(nomecampo, forceInvalid = false) {\r\n if (this.esqueciMinhaSenhaFormGroup.controls[nomecampo].invalid && (this.esqueciMinhaSenhaFormGroup.controls[nomecampo].touched || this.esqueciMinhaSenhaFormGroup.controls[nomecampo].dirty) || forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.esqueciMinhaSenhaFormGroup.controls[nomecampo].valid && !forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component) {\r\n\r\n var ativa = this.esqueciMinhaSenhaFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.esqueciMinhaSenhaFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component) {\r\n\r\n var ativa = this.esqueciMinhaSenhaFormGroup.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var patterninvalido = false;\r\n\r\n if (ativa) {\r\n cpfinvalido = this.esqueciMinhaSenhaFormGroup.controls[nomecampo].errors.cpfNotValid;\r\n patterninvalido = this.esqueciMinhaSenhaFormGroup.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (cpfinvalido || patterninvalido);\r\n\r\n if (ativa) {\r\n var componentAux = (this.errorCpf) ? document.querySelector('#notFoundCpf') : document.querySelector('#conflictEmail');\r\n this.errorCpf = false;\r\n this.errorEmail = false;\r\n this.ativaTooltip(!ativa, componentAux);\r\n }\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n\r\n public OpenModal() {\r\n this.enviaEmailModalService.show(\"Esqueci Minha Senha\", \"Você receberá uma mensagem em seu e-mail cadastrado. Siga as instruções para recuperar a sua senha.\");\r\n }\r\n\r\n onReset() {\r\n var obj = new User();\r\n obj.cpf = this.user.cpf.replace(/\\.|\\-/g, '');\r\n obj.email = this.user.email;\r\n\r\n this.notFoundCpf = false;\r\n this.conflictEmail = false;\r\n\r\n this.authenticationService.forgotPassword(obj).then((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n\r\n if (result.success) {\r\n this.OpenModal();\r\n }\r\n else {\r\n if (result.error.code == 404) {\r\n this.errorCpf = true;\r\n this.cssObrigatorio('cpf', true);\r\n this.ativaTooltip(true, document.querySelector('#notFoundCpf'));\r\n this.notFoundCpf = true;\r\n }\r\n else if (result.error.code == 409) {\r\n this.errorEmail = true;\r\n this.cssObrigatorio('email', true);\r\n this.ativaTooltip(true, document.querySelector('#conflictEmail'));\r\n this.conflictEmail = true;\r\n }\r\n }\r\n\r\n });\r\n }\r\n}\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n\r\n if (control.value) {\r\n const cpf = control.value.replace(/\\.|\\-/g, '');\r\n\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2hvbWUvaG9tZS5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit, AfterViewInit } from \"@angular/core\";\r\nimport { BsModalService } from \"ngx-bootstrap/modal\";\r\nimport { BsModalRef } from \"ngx-bootstrap/modal/bs-modal-ref.service\";\r\nimport { HomeService } from \"../../service/home/home.service\";\r\nimport { State } from \"../../model/state\";\r\nimport { Router, ActivatedRoute } from \"@angular/router\";\r\nimport { Store, select } from \"@ngrx/store\";\r\nimport { AddState } from \"../../actions/state.actions\";\r\nimport { Observable , pipe, combineLatest } from \"rxjs\";\r\nimport { delay, debounceTime } from \"rxjs/operators\";\r\nimport { LayoutComponent } from \"../layout/layout.component\";\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: \"app-home\",\r\n templateUrl: \"./home.component.html\",\r\n styleUrls: [\"./home.component.css\"],\r\n})\r\nexport class HomeComponent implements OnInit, AfterViewInit {\r\n public static states: State[] = [];\r\n modalRef: BsModalRef;\r\n selectedState: State;\r\n state$: Observable;\r\n\r\n constructor(\r\n private modalService: BsModalService,\r\n private homeService: HomeService,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private stateStore: Store\r\n ) {\r\n this.state$ = this.stateStore.pipe(select(\"state\"));\r\n const $lastState = this.state$.subscribe((state) => {\r\n this.loadState(state)\r\n \r\n });\r\n }\r\n\r\n ngAfterViewInit() {}\r\n\r\n loadState(state) {\r\n this.homeService.getState(null).then((res: any) => {\r\n if (res) {\r\n HomeComponent.states = JSON.parse(res.result).data;\r\n }\r\n if ((state && !state.name) && ($('.modalState').length == 0)) this.openModalState();\r\n });\r\n //this.LoadSearch();\r\n }\r\n\r\n ngOnInit() {\r\n this.state$.take(1).toPromise();\r\n LayoutComponent.ShowHeaderInput(\"home\");\r\n this.LoadSearch();\r\n }\r\n\r\n public LoadSearch() {\r\n this.activatedRoute.params.subscribe((param) => {\r\n if (param.termoPesquisa) {\r\n $(\"#search\").val(param.termoPesquisa);\r\n }\r\n });\r\n }\r\n\r\n searchClick(event: Event) {\r\n var pesquisa = $(\"#search\").val();\r\n var estado;\r\n\r\n this.state$.subscribe((state) => {\r\n estado = state.name\r\n });\r\n\r\n this.router.navigate([`/vitrine/${pesquisa}/${estado}`]);\r\n }\r\n\r\n openModalState() {\r\n const initialState = {\r\n title: \"QUAL ESTADO VOCÊ ESTÁ?\",\r\n message: \"\",\r\n closeBtnName: \"Fechar\",\r\n };\r\n\r\n this.modalRef = this.modalService.show(ModalContentStateComponent, {\r\n initialState,\r\n class: \"modal-sm\",\r\n ignoreBackdropClick: true,\r\n keyboard: false,\r\n });\r\n this.modalRef.content.closeBtnName = \"Close\";\r\n }\r\n}\r\n\r\n@Component({\r\n selector: \"modal-content\",\r\n template: `\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 Continuar\r\n \r\n
\r\n
\r\n `,\r\n styles: [\r\n `\r\n .btn-cont {\r\n background: #075e9c;\r\n color: #fff !important;\r\n padding: 5px 20px;\r\n border-radius: 20px;\r\n text-transform: uppercase;\r\n font-size: 14px;\r\n font-family: \"Montserrat\", sans-serif;\r\n }\r\n\r\n #stateSelect {\r\n webkit-appearance: none !important; /* Remove estilo padrão do Chrome */\r\n border-top: none !important;\r\n border-right: none !important;\r\n border-bottom: solid 1px #075e9c !important;\r\n border-left: none !important;\r\n color: #075e9c;\r\n }\r\n #stateSelect option:hover {\r\n background-color: #075e9c !important;\r\n }\r\n #titleModal {\r\n color: #075e9c;\r\n }\r\n `,\r\n ],\r\n})\r\nexport class ModalContentStateComponent {\r\n modalRef: BsModalRef;\r\n public static stateSelected: string;\r\n states: State[] = HomeComponent.states;\r\n\r\n constructor(\r\n public bsModalRef: BsModalRef,\r\n private stateStore: Store\r\n ) {}\r\n\r\n onSubmit() {\r\n if (ModalContentStateComponent.stateSelected != undefined) {\r\n let selected = new State();\r\n selected.name = ModalContentStateComponent.stateSelected;\r\n\r\n this.stateStore.dispatch(AddState(selected));\r\n this.bsModalRef.hide();\r\n }\r\n }\r\n\r\n onChange(value: any) {\r\n ModalContentStateComponent.stateSelected = value;\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2xheW91dC9sYXlvdXQuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, OnInit, ViewChild, AfterViewInit, HostListener } from '@angular/core';\r\nimport { LoginComponent } from '../login/login.component';\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.css']\r\n})\r\nexport class LayoutComponent implements OnInit, AfterViewInit { \r\n\r\n constructor() {\r\n }\r\n ngAfterViewInit() {\r\n\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n public static ShowHeaderInput(target: string) {\r\n\r\n if (target == 'home' || target == 'dashboard') {\r\n $(\"#searchBar\").css('visibility', 'visible');\r\n $(\"#searchBar\").addClass('input');\r\n }\r\n else if (target == 'vitrine' || target == 'voucher' || target == 'comparacaoPreco') {\r\n $(\"#searchBar\").css('visibility', 'visible');\r\n $(\"#searchBar\").removeClass('input');\r\n }\r\n else {\r\n $(\"#searchBar\").css('visibility', 'hidden');\r\n }\r\n\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2xvZ2luL2xvZ2luLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { Usuario } from './../../model/usuario';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\nimport { Router } from '@angular/router';\r\nimport { tap } from 'rxjs/operators';\r\nimport { ModalEnviaEmailService } from '../../modules/modals/envia-email-window';\r\nimport { FormGroup, Validators, FormControl, AbstractControl } from '@angular/forms';\r\nimport { ModalGenenericService } from '../../modules/modals/generic-window.module';\r\nimport { DataService } from '../../service/data/data.service';\r\nimport { User } from '../../model/user';\r\nimport { Token } from '../../model/token';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { ComparacaoPrecoComponent } from '../comparacao-precos/comparacaoPreco.component';\r\nimport { VoucherService } from '../../service/voucher/voucher.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\nimport { Store } from '@ngrx/store';\r\nimport { AddUser, ClearUser } from '../../actions/user.actions';\r\nimport { AddToken, ClearToken } from '../../actions/token.actions';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { ClearBeneficiary } from '../../actions/beneficiary.actions';\r\nimport { UtilService } from '../../service/util/util.service';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n user: User = new User();\r\n public static beneficiary: any;\r\n show: boolean;\r\n mensagem: string;\r\n showRedefinir: boolean;\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n mensagemRedefinir: string;\r\n public exibeMsgCpf: boolean = false;\r\n public exibeMsgCpfGerar: boolean = false;\r\n attempts: number = 4;\r\n cpfLogin: string;\r\n password: string;\r\n content: string;\r\n\r\n loginFormGroup = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, GenericValidator.isValidCpf()]),\r\n password: new FormControl('', [Validators.required]),\r\n });\r\n\r\n constructor(private authenticationService: AuthenticationService,\r\n private route: Router,\r\n private utilService: UtilService,\r\n private modalGeneric: ModalGenenericService,\r\n private modalAlert: ModalAlertService,\r\n private spinner: NgxSpinnerService,\r\n private userStore: Store,\r\n private tokenStore: Store,\r\n private beneficiaryStore: Store) { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('login'); \r\n }\r\n\r\n private OnEnd(): void {\r\n this.hideLoader();\r\n }\r\n\r\n private showLoader(): void {\r\n this.spinner.show();\r\n }\r\n\r\n private hideLoader(): void {\r\n this.spinner.hide();\r\n }\r\n\r\n logout() {\r\n this.tokenStore.dispatch(ClearToken());\r\n this.userStore.dispatch(ClearUser());\r\n this.beneficiaryStore.dispatch(ClearBeneficiary());\r\n }\r\n\r\n isValidCPF = () => this.loginFormGroup.controls['cpf'].valid;\r\n\r\n onLogin(e: any) {\r\n e.preventDefault();\r\n\r\n this.content = '';\r\n this.user.cpf = this.cpfLogin.replace(/\\.|\\-/g, '');\r\n this.user.password = this.password;\r\n\r\n this.authenticationService.login(this.user).then((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n if (result.success) {\r\n\r\n const { token, user } = result.data;\r\n\r\n this.authenticationService.beneficiaryByCpf(this.user.cpf).subscribe((res: any) => {\r\n\r\n var aux = JSON.parse(res.result);\r\n\r\n if (aux.success) {\r\n //Store user data login\r\n this.authenticationService.storeData(user, token, aux.data);\r\n this.showLoader();\r\n if (this.utilService.hasVoucher()) {\r\n this.route.navigate(['voucher']);\r\n }\r\n else {\r\n this.route.navigate(['dashboard', aux.data.id]);\r\n }\r\n }\r\n else {\r\n console.error(aux.error);\r\n this.OnEnd();\r\n this.openModalAlert();\r\n }\r\n\r\n },\r\n (err: any) => {\r\n console.error(err);\r\n this.openModalAlert();\r\n });\r\n }\r\n else {\r\n //Diminui as tentativas do usuario;\r\n if (result.error.code == 404) {\r\n this.attempts--;\r\n this.content = `CPF e/ou senha incorreto(s). Você tem mais ${this.attempts} tentativas.`;\r\n\r\n if (this.attempts == 0) {\r\n this.openModalBlocked();\r\n }\r\n //Alteração do bloqueio do botão\r\n } else if (result.error.code == 403) {\r\n this.openModalBlocked();\r\n }\r\n }\r\n }, (err: any) => {\r\n console.error(err);\r\n this.openModalAlert();\r\n });\r\n }\r\n\r\n openModalBlocked() {\r\n this.utilService.openModalRedirect('Login', 'Acesso bloqueado, solicite uma nova senha', 'esqueciMinhaSenha');\r\n }\r\n openModalAlert() {\r\n this.modalAlert.show('Alerta', 'Ocorreu um erro na solicitação tente novamente mais tarde!');\r\n }\r\n\r\n openModalVourcherError(message) {\r\n this.modalAlert.show('Alerta', message);\r\n }\r\n\r\n public cssObrigatorio(nomecampo, forceInvalid = false) {\r\n\r\n if (this.loginFormGroup.controls[nomecampo].invalid && (this.loginFormGroup.controls[nomecampo].touched || this.loginFormGroup.controls[nomecampo].dirty) || forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.loginFormGroup.controls[nomecampo].valid && !forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component) {\r\n\r\n var ativa = this.loginFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.loginFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component) {\r\n\r\n var ativa = this.loginFormGroup.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var patterninvalido = false;\r\n if (ativa) {\r\n cpfinvalido = this.loginFormGroup.controls[nomecampo].errors.cpfNotValid;\r\n patterninvalido = this.loginFormGroup.controls[nomecampo].errors.pattern;\r\n cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (cpfinvalido || patterninvalido);\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipError(component) {\r\n this.ativaTooltip((this.attempts < 3), component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n}\r\n\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => {\r\n if (control.value) {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3JlZ2lzdHJlLXNlL3JlZ2lzdHJlLXNlLmNvbXBvbmVudC5jc3MifQ== */\"","\r\nimport { Component, OnInit, EventEmitter, ElementRef, ViewChild } from '@angular/core';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\nimport { Router } from '@angular/router';\r\nimport { tap, delay } from 'rxjs/operators';\r\nimport { ModalEnviaEmailService } from '../../modules/modals/envia-email-window';\r\nimport { FormGroup, FormControl, Validators, AbstractControl } from '@angular/forms';\r\nimport { User } from '../../model/user';\r\nimport { ModalGenenericService } from '../../modules/modals/generic-window.module';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { ComparacaoPrecoComponent } from '../comparacao-precos/comparacaoPreco.component';\r\nimport { VoucherService } from '../../service/voucher/voucher.service';\r\nimport { LoginComponent } from '../login/login.component';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { UtilService } from '../../service/util/util.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './registre-se.component.html',\r\n styleUrls: ['./registre-se.component.css']\r\n})\r\nexport class RegistreSeComponent implements OnInit {\r\n user: User = new User();\r\n emailPattern = \"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$\";\r\n cpfPattern = \"^[0-9]{3}\\.[0-9]{3}\\.[0-9]{3}\\-[0-9]{2}$\";\r\n passwordPattern = \"/([A-Za-z]{1,}).*(\\d{1,}).*|(\\d{1,}).*([A-Za-z]{1,}).*/\"; \r\n showRedefinir: boolean;\r\n mensagemRedefinir: string;\r\n cpf: string;\r\n password: string;\r\n repeatPassword: string;\r\n hasCpf: boolean = false;\r\n mobilePhoneNumber: string;\r\n\r\n perfilFormGroup = new FormGroup({\r\n cpf: new FormControl('', [Validators.required, GenericValidator.isValidCpf()]),\r\n name: new FormControl('', [Validators.required, Validators.pattern(\"^[A-Za-záàâãéèêíïóôõöúçñÁÀÂÃÉÈÍÏÓÔÕÖÚÇÑ ]+$\")]),\r\n email: new FormControl('', [Validators.required, Validators.pattern(this.emailPattern)]),\r\n mobilePhoneNumber: new FormControl('', [Validators.minLength(13)]),\r\n password: new FormControl('', [Validators.required, GenericValidator.validatePassword()]),\r\n repeatPassword: new FormControl('', [Validators.required]),\r\n });\r\n\r\n constructor(private authenticationService: AuthenticationService, \r\n private route: Router,\r\n private utilService: UtilService,\r\n private modalGeneric: ModalGenenericService,\r\n private modalAlert: ModalAlertService, \r\n private spinner: NgxSpinnerService) { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('registre-se'); \r\n }\r\n\r\n onRegister(e: any) {\r\n e.preventDefault();\r\n\r\n this.user.cpf = this.cpf.replace(/\\.|\\-/g, '');\r\n this.user.password = this.password;\r\n this.user.login = this.user.cpf;\r\n\r\n if (this.mobilePhoneNumber)\r\n {\r\n this.user.mobilePhoneNumber = this.mobilePhoneNumber.replace(/\\(|\\)|\\s/g, '');\r\n }\r\n this.authenticationService.insert(this.user).then((res: any) => { \r\n if (res.success) {\r\n\r\n this.authenticationService.login(this.user).then((response: any) => {\r\n\r\n var resultAuth = JSON.parse(response.result);\r\n\r\n const { token, user } = resultAuth.data;\r\n //Store user data login\r\n this.authenticationService.storeData(user, token, res.data);\r\n\r\n if (this.utilService.hasVoucher()) {\r\n this.route.navigate(['voucher']);\r\n }\r\n else {\r\n this.route.navigate(['dashboard', res.data.id]);\r\n return true;\r\n }\r\n\r\n });\r\n }\r\n else if (!res.success && res.messages[0].message.indexOf('cadastrado') > -1) {\r\n this.hasCpf = true;\r\n this.ativaTooltip('cpf', $('#hasCpfRegister'));\r\n this.cssObrigatorio('cpf', true);\r\n return false;\r\n \r\n }\r\n else {\r\n\r\n this.openModalAlert();\r\n \r\n }\r\n\r\n },\r\n (err: any) => { \r\n console.error(err);\r\n this.openModalAlert();\r\n });\r\n\r\n }\r\n\r\n openModalAlert() {\r\n this.modalAlert.show('Alerta', 'Ocorreu um erro na solicitação tente novamente mais tarde!');\r\n }\r\n\r\n openModalVourcherError(message) {\r\n this.modalAlert.show('Alerta', message);\r\n }\r\n\r\n public cssObrigatorio(nomecampo, forceInvalid = false) {\r\n if (this.perfilFormGroup.controls[nomecampo].invalid && (this.perfilFormGroup.controls[nomecampo].touched || this.perfilFormGroup.controls[nomecampo].dirty) || forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#a94442\");\r\n }\r\n if (this.perfilFormGroup.controls[nomecampo].valid && !forceInvalid) {\r\n $(\"#\" + nomecampo).css(\"border-color\", \"#003a75\");\r\n }\r\n }\r\n \r\n public ativaTooltipSenha(component) {\r\n\r\n var ativa = false;\r\n\r\n var senhaOriginal = this.perfilFormGroup.controls[\"password\"].value;\r\n var senhaRepetida = this.perfilFormGroup.controls[\"repeatPassword\"].value;\r\n\r\n if (senhaOriginal != \"\" && senhaRepetida != \"\") {\r\n if (senhaOriginal != senhaRepetida) {\r\n ativa = true;\r\n }\r\n }\r\n \r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipObrigatorio(nomecampo, component) {\r\n\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var campoObrigatorioerror = false;\r\n if (ativa) {\r\n campoObrigatorioerror = this.perfilFormGroup.controls[nomecampo].errors.required;\r\n campoObrigatorioerror = (campoObrigatorioerror !== null && campoObrigatorioerror) ? true : false;\r\n }\r\n\r\n ativa = ativa && campoObrigatorioerror;\r\n \r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltipcampos(nomecampo, component) {\r\n\r\n var ativa = this.perfilFormGroup.controls[nomecampo].invalid;\r\n var cpfinvalido = false;\r\n var patterninvalido = false;\r\n var senhainvalida = false;\r\n if (ativa) {\r\n //cpfinvalido = this.perfilFormGroup.controls[nomecampo].errors.cpfNotValid;\r\n senhainvalida = this.perfilFormGroup.controls[nomecampo].errors.passwordNotValid;\r\n patterninvalido = this.perfilFormGroup.controls[nomecampo].errors.pattern;\r\n // cpfinvalido = (cpfinvalido !== null && cpfinvalido) ? true : false;\r\n patterninvalido = (patterninvalido !== null && patterninvalido) ? true : false;\r\n }\r\n\r\n ativa = ativa && (patterninvalido || senhainvalida);\r\n\r\n var change = false;\r\n if (this.cpf != null && (this.user.cpf != null || this.user.cpf != undefined)) {\r\n change = (this.cpf.replace(/\\.|\\-/g, '') != this.user.cpf);\r\n }\r\n\r\n if (ativa || change) { \r\n this.hasCpf = false; \r\n this.ativaTooltip(this.hasCpf, $('#hasCpfRegister'));\r\n }\r\n\r\n this.ativaTooltip(ativa, component);\r\n }\r\n\r\n public ativaTooltip(ativa, component) {\r\n\r\n var acao1 = ativa ? 'enable' : 'hide';\r\n var acao2 = ativa ? 'show' : 'disable';\r\n $(component).tooltip(acao1);\r\n $(component).tooltip(acao2);\r\n }\r\n \r\n}\r\n\r\n\r\n\r\nexport class GenericValidator {\r\n constructor() { }\r\n\r\n /**\r\n * Valida se a data é valida\r\n */\r\n static validateDate() {\r\n return (control: AbstractControl): Validators => {\r\n var RegExPattern = /^((((0?[1-9]|[12]\\d|3[01])[\\.\\-\\/](0?[13578]|1[02]) [\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|[12]\\d|30)[\\.\\-\\/](0?[13456789]|1[012])[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|((0?[1-9]|1\\d|2[0-8])[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?\\d{2}))|(29[\\.\\-\\/]0?2[\\.\\-\\/]((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|[12]\\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\\d)?\\d{2}))|((0[1-9]|1\\d|2[0-8])02((1[6-9]|[2-9]\\d)?\\d{2}))|(2902((1[6-9]|[2-9]\\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;\r\n if (control.value.toString()) {\r\n if (!((control.value.match(RegExPattern)) && (control.value != ''))) {\r\n return { dataNotValid: true };\r\n }\r\n else\r\n return null;\r\n }\r\n\r\n return null;\r\n };\r\n }\r\n\r\n\r\n /**\r\n * Valida se o CPF é valido\r\n */\r\n static isValidCpf() {\r\n return (control: AbstractControl): Validators => { \r\n if (control.value) {\r\n const cpf = control.value.toString().replace(/\\.|\\-/g, '');\r\n let numbers, digits, sum, i, result, equalDigits;\r\n equalDigits = 1;\r\n if (cpf.length < 11) {\r\n return null;\r\n }\r\n\r\n for (i = 0; i < cpf.length - 1; i++) {\r\n if (cpf.charAt(i) !== cpf.charAt(i + 1)) {\r\n equalDigits = 0;\r\n break;\r\n }\r\n }\r\n\r\n if (!equalDigits) {\r\n numbers = cpf.substring(0, 9);\r\n digits = cpf.substring(9);\r\n sum = 0;\r\n for (i = 10; i > 1; i--) {\r\n sum += numbers.charAt(10 - i) * i;\r\n }\r\n\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(0))) {\r\n return { cpfNotValid: true };\r\n }\r\n numbers = cpf.substring(0, 10);\r\n sum = 0;\r\n\r\n for (i = 11; i > 1; i--) {\r\n sum += numbers.charAt(11 - i) * i;\r\n }\r\n result = sum % 11 < 2 ? 0 : 11 - (sum % 11);\r\n\r\n if (result !== Number(digits.charAt(1))) {\r\n return { cpfNotValid: true };\r\n }\r\n return null;\r\n } else {\r\n return { cpfNotValid: true };\r\n }\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n public static passwordPattern = /([A-Za-z]{1,}).*(\\d{1,}).*|(\\d{1,}).*([A-Za-z]{1,}).*/;\r\n static validatePassword() {\r\n return (control: AbstractControl): Validators => { \r\n let result = {};\r\n\r\n if (control.value != null) {\r\n const password = control.value.toString().replace(/\\.|\\-/g, '');\r\n if (password && password.length > 0) {\r\n if (!password.match(this.passwordPattern) || password.length < 8) {\r\n return { passwordNotValid: true };\r\n }\r\n }\r\n }\r\n return null;\r\n\r\n }\r\n }\r\n\r\n}\r\n","export default \"\\r\\n#container {\\r\\n display: grid;\\r\\n grid: auto-flow 350px/ repeat(3, 300px);\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.imgbox {\\r\\n width: 143px;\\r\\n height: 153px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n#vitrine h4 {\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n#vitrine h5 {\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.topdiv{\\r\\n background-color:lightblue;\\r\\n }\\r\\n\\r\\n\\r\\n\\r\\n.vitrineContainer {\\r\\n padding: 50px 0px 0px 0px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n#topVitrine {\\r\\n background: #e5eef5;\\r\\n padding: 40px 0px;\\r\\n}\\r\\n\\r\\n\\r\\n\\r\\n.button {\\r\\n border-radius: 25px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvdml0cmluZS92aXRyaW5lLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0VBQ0UsYUFBYTtFQUNiLHVDQUF1QztBQUN6Qzs7OztBQUlBO0VBQ0UsWUFBWTtFQUNaLGFBQWE7RUFDYixrQkFBa0I7QUFDcEI7Ozs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7OztBQUVBO0VBQ0Usa0JBQWtCO0FBQ3BCOzs7O0FBRUU7SUFDRSwwQkFBMEI7RUFDNUI7Ozs7QUFFRjtFQUNFLHlCQUF5QjtBQUMzQjs7OztBQUdBO0VBQ0UsbUJBQW1CO0VBQ25CLGlCQUFpQjtBQUNuQjs7OztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvdml0cmluZS92aXRyaW5lLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuI2NvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkOiBhdXRvLWZsb3cgMzUwcHgvIHJlcGVhdCgzLCAzMDBweCk7XHJcbn1cclxuXHJcblxyXG5cclxuLmltZ2JveCB7XHJcbiAgd2lkdGg6IDE0M3B4O1xyXG4gIGhlaWdodDogMTUzcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4jdml0cmluZSBoNCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4jdml0cmluZSBoNSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4gIC50b3BkaXZ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOmxpZ2h0Ymx1ZTtcclxuICB9XHJcblxyXG4udml0cmluZUNvbnRhaW5lciB7XHJcbiAgcGFkZGluZzogNTBweCAwcHggMHB4IDBweDtcclxufVxyXG5cclxuXHJcbiN0b3BWaXRyaW5lIHtcclxuICBiYWNrZ3JvdW5kOiAjZTVlZWY1O1xyXG4gIHBhZGRpbmc6IDQwcHggMHB4O1xyXG59XHJcblxyXG4uYnV0dG9uIHtcclxuICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit, TemplateRef, HostListener } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { Location } from '@angular/common';\r\nimport { ActivatedRoute, Router, Params } from '@angular/router';\r\nimport { ProductService } from '../../service/product/product.service';\r\nimport { Product } from '../../model/product';\r\nimport { Observable, of } from 'rxjs';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-vitrine',\r\n templateUrl: './vitrine.component.html',\r\n styleUrls: ['./vitrine.component.css']\r\n})\r\n\r\nexport class VitrineComponent implements OnInit {\r\n math = Math;\r\n productsList: Product[] = [];\r\n totalItemsPage: number = 21;\r\n page: number = 1;\r\n total: number;\r\n innerWidth: number;\r\n public pesquisa: string;\r\n\r\n constructor(private modalService: BsModalService,\r\n private productService: ProductService,\r\n private activatedRoute: ActivatedRoute,\r\n private location: Location) { }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('vitrine');\r\n\r\n this.LoadProducts(this.page);\r\n }\r\n\r\n public LoadProducts(page: number) {\r\n this.activatedRoute.params.subscribe(param => {\r\n if (param.termoPesquisa && param.stateCode) {\r\n this.pesquisa = param.termoPesquisa;\r\n this.productService.ReadProducts(param.termoPesquisa, param.stateCode).subscribe((result: any) => {\r\n var sucesso = JSON.parse(result.result).success;\r\n\r\n if (sucesso) {\r\n var retorno = JSON.parse(result.result).data;\r\n this.productsList = retorno;\r\n }\r\n\r\n this.total = this.productsList.length;\r\n\r\n });\r\n }\r\n });\r\n }\r\n\r\n backPageClick() {\r\n this.location.back();\r\n }\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3ZvdWNoZXIvdm91Y2hlci5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { BsModalService } from 'ngx-bootstrap/modal';\r\nimport { BsModalRef } from 'ngx-bootstrap/modal/bs-modal-ref.service';\r\nimport { State } from '../../model/state';\r\nimport { FormControl, Validators, FormGroup, AbstractControl } from '@angular/forms';\r\nimport { Usuario } from '../../model/usuario';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { UsuarioService } from '../../service/usuario/usuario.service';\r\nimport { VoucherService } from '../../service/voucher/voucher.service';\r\nimport { Voucher } from '../../model/voucher';\r\nimport { DataService } from '../../service/data/data.service';\r\nimport { PreAuthorization } from '../../model/pre-authorization';\r\nimport { User } from '../../model/user';\r\nimport { UtilService } from '../../service/util/util.service';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { moment } from 'ngx-bootstrap/chronos/test/chain';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { LayoutComponent } from '../layout/layout.component';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { Observable } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\nimport { AuthenticationService } from '../../service/authentication/authentication.service';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './voucher.component.html',\r\n styleUrls: ['./voucher.component.css']\r\n})\r\nexport class VoucherComponent implements OnInit {\r\n moment = moment;\r\n user: User = new User();\r\n voucher: PreAuthorization = new PreAuthorization();\r\n\r\n beneficiary$ :Observable;\r\n\r\n public static states: State[] = [];\r\n modalRef: BsModalRef;\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private utilService: UtilService,\r\n private modalAlert: ModalAlertService,\r\n private spinner: NgxSpinnerService,\r\n private router: Router,\r\n private beneficiaryStore: Store,\r\n private voucherService: VoucherService,\r\n private authenticationService: AuthenticationService\r\n )\r\n {\r\n this.beneficiary$ = beneficiaryStore.pipe(select('beneficiary'))\r\n }\r\n\r\n ngOnInit() {\r\n LayoutComponent.ShowHeaderInput('voucher');\r\n this.authenticationService.getCurrentUser().subscribe(us => this.user = us);\r\n\r\n if (this.utilService.hasVoucher()) {\r\n\r\n var obj = this.utilService.voucherSelected(this.user.cpf);\r\n\r\n this.voucherService.CreateVoucher(obj).then((res: any) => {\r\n if (res.success) {\r\n\r\n this.dataService.changeVoucher(res.data);\r\n\r\n this.utilService.clearSelectedVoucher();\r\n\r\n this.LoadInformacoesVoucher();\r\n }\r\n else {\r\n this.utilService.OpenModalGenericAlert('Voucher', res.message);\r\n }\r\n });\r\n } else {\r\n this.LoadInformacoesVoucher();\r\n }\r\n \r\n }\r\n\r\n public LoadInformacoesVoucher() {\r\n\r\n this.dataService.currentVoucher.subscribe(result => this.voucher = result); \r\n this.dataService.currentVoucher.subscribe(result => {\r\n this.voucher = result;\r\n });\r\n }\r\n\r\n private OnEnd(): void {\r\n this.hideLoader();\r\n }\r\n\r\n private showLoader(): void {\r\n this.spinner.show();\r\n }\r\n\r\n private hideLoader(): void {\r\n this.spinner.hide();\r\n }\r\n\r\n generatePDF(e: any) {\r\n e.preventDefault(); \r\n this.utilService.generatePDF(this.user, this.voucher);\r\n }\r\n\r\n sendSms(e: any, authorizationId: string) {\r\n e.preventDefault(); \r\n this.utilService.sendSms(this.user.mobilePhoneNumber, authorizationId); \r\n }\r\n\r\n sendEmail(e: any, voucher: any) {\r\n e.preventDefault();\r\n this.utilService.sendEmail(this.user, voucher);\r\n }\r\n\r\n}\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { Observable } from 'rxjs';\r\nimport 'rxjs/Rx';\r\n\r\n\r\n\r\n\r\n\r\nexport interface IRequestOptions {\r\n headers?: HttpHeaders;\r\n observe?: 'body';\r\n params?: HttpParams;\r\n reportProgress?: boolean;\r\n responseType?: 'json';\r\n withCredentials?: boolean;\r\n body?: any;\r\n}\r\n\r\n\r\nexport function CustomHttpClientCreator(http: HttpClient, spinner: NgxSpinnerService) {\r\n return new CustomHttpClient(http, spinner);\r\n}\r\n\r\n@Injectable()\r\nexport class CustomHttpClient {\r\n constructor(private http: HttpClient,\r\n private spinner: NgxSpinnerService) { }\r\n \r\n public Get(endPoint: string, options?: IRequestOptions): Observable {\r\n this.showLoader();\r\n return this.http.get(endPoint, this.addJwt(options))\r\n .catch(this.handleError)\r\n .finally(() => this.OnEnd());\r\n }\r\n\r\n public Post(endPoint: string, body: any, options?: IRequestOptions): Observable {\r\n this.showLoader();\r\n\r\n return this.http.post(endPoint, body, this.addJwt(options))\r\n .catch(this.handleError)\r\n .finally(() => this.OnEnd());\r\n } \r\n\r\n private OnEnd(): void {\r\n this.hideLoader();\r\n }\r\n\r\n private showLoader(): void {\r\n this.spinner.show();\r\n }\r\n\r\n private hideLoader(): void {\r\n this.spinner.hide();\r\n }\r\n\r\n private handleError(error: any) {\r\n return Observable.throw(error.error);\r\n }\r\n\r\n private addJwt(options?: IRequestOptions): IRequestOptions {\r\n let requestOptions: IRequestOptions = { headers: new HttpHeaders() };\r\n options = options || requestOptions;\r\n return options;\r\n }\r\n\r\n}\r\n","import { BeneficiaryActionTypes } from \"../actions/beneficiary.actions\";\r\nimport { Beneficiary } from \"../model/beneficiary\";\r\nimport { ActionModel } from \"../model/action\";\r\n\r\nexport const beneficiary = new Beneficiary();\r\n\r\nexport const beneficiaryReducer = (state = beneficiary, action: ActionModel) => {\r\n switch (action.type) {\r\n case BeneficiaryActionTypes.Add: {\r\n state = action.payload;\r\n return state;\r\n }\r\n case BeneficiaryActionTypes.Clear: {\r\n return new Beneficiary();\r\n }\r\n default:\r\n return state;\r\n }\r\n\r\n}\r\n","import { combineReducers } from \"@ngrx/store\";\r\n\r\nexport { beneficiaryReducer } from \"./beneficiary.reducers\";\r\nexport { userReducer } from \"./user.reducers\";\r\nexport { tokenReducer } from \"./token.reducers\";\r\nexport { stateReducer } from \"./state.reducers\"; \r\n\r\n \r\n","import { StateActionTypes } from \"../actions/state.actions\";\r\nimport { State } from \"../model/state\";\r\nimport { ActionModel } from \"../model/action\";\r\n\r\nexport const stateModel = new State();\r\n\r\nexport const stateReducer = (state = stateModel, action: ActionModel) => {\r\n switch (action.type) {\r\n case StateActionTypes.Add: {\r\n state = action.payload;\r\n return state;\r\n }\r\n case StateActionTypes.Clear: {\r\n return new State();\r\n }\r\n default:\r\n return state;\r\n }\r\n\r\n}\r\n","import { TokenActionTypes } from \"../actions/token.actions\";\r\nimport { Token } from \"../model/token\";\r\nimport { ActionModel } from \"../model/action\";\r\n\r\nexport const token = new Token();\r\n\r\nexport const tokenReducer = (state = token, action: ActionModel) => {\r\n switch (action.type) {\r\n case TokenActionTypes.Add: {\r\n state = action.payload;\r\n return state;\r\n }\r\n case TokenActionTypes.Clear: {\r\n state = new Token();\r\n return state;\r\n }\r\n case TokenActionTypes.IsValid: {\r\n return {\r\n ...state,\r\n isValidToken: (state != null && Date.parse(state.expires) > Date.now())\r\n }\r\n }\r\n default:\r\n return state;\r\n }\r\n\r\n}\r\n","import { UserActionTypes } from \"../actions/user.actions\";\r\nimport { User } from \"../model/user\";\r\nimport { ActionModel } from \"../model/action\";\r\n\r\nexport const user = new User();\r\n\r\nexport const userReducer = (state = user, action: ActionModel) => {\r\n switch (action.type) {\r\n case UserActionTypes.Add: {\r\n state = action.payload;\r\n return state;\r\n }\r\n case UserActionTypes.Clear: {\r\n return new User();\r\n }\r\n default:\r\n return state;\r\n }\r\n\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { User } from '../../model/user';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { baseApiUrl } from '../../app.config';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { Token } from '../../model/token';\r\nimport { AddUser, ClearUser } from '../../actions/user.actions';\r\nimport { AddToken, ClearToken, IsValidToken } from '../../actions/token.actions';\r\nimport { AddBeneficiary, ClearBeneficiary } from '../../actions/beneficiary.actions';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService {\r\n\r\n user$: Observable;\r\n token$: Observable;\r\n beneficiary$: Observable;\r\n\r\n constructor(private http: CustomHttpClient,\r\n private userStore: Store,\r\n private tokenStore: Store,\r\n private beneficiaryStore: Store\r\n ) {\r\n\r\n this.user$ = this.userStore.pipe(select('user'));\r\n this.token$ = this.tokenStore.pipe(select('token'));\r\n this.beneficiary$ = this.beneficiaryStore.pipe(select('beneficiary'));\r\n }\r\n\r\n\r\n storeData(user: User, token: Token, beneficiary: Beneficiary) {\r\n this.tokenStore.dispatch(AddToken(token))\r\n this.userStore.dispatch(AddUser(user));\r\n this.beneficiaryStore.dispatch(AddBeneficiary(beneficiary));\r\n }\r\n \r\n getCurrentToken(){\r\n return this.token$;\r\n }\r\n\r\n getCurrentUser() {\r\n return this.user$;\r\n }\r\n\r\n getCurrentBeneficiary() {\r\n return this.beneficiary$;\r\n }\r\n\r\n logout() {\r\n this.tokenStore.dispatch(ClearToken())\r\n this.userStore.dispatch(ClearUser());\r\n this.beneficiaryStore.dispatch(ClearBeneficiary());\r\n }\r\n\r\n login(user: User) {\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/authentication/Login`, user).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n insert(user: any) {\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/authentication/Insert`, user).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n forgotPassword(user: User) {\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/authentication/ForgotPassword`, user).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n update(beneficiary: Beneficiary) {\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/authentication/Update`, beneficiary).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n changePassword(user: User) {\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/authentication/ChangePassword`, user).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n\r\n securityKey(key: string) {\r\n return this.http.Get(`${baseApiUrl}api/authentication/SecurityKey/` + key);\r\n }\r\n\r\n beneficiaryByCpf(cpf: string) {\r\n return this.http.Get(`${baseApiUrl}api/authentication/BeneficiaryByCpf/` + cpf);\r\n }\r\n\r\n ExistsRegister(cpf: string) {\r\n \r\n return this.http.Get(`${baseApiUrl}api/authentication/ExistsRegister/` + cpf);\r\n }\r\n\r\n \r\n\r\n \r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { User } from '../../model/user';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { PreAuthorization } from '../../model/pre-authorization';\r\n\r\n@Injectable()\r\nexport class DataService {\r\n \r\n private user = new BehaviorSubject(new User());\r\n currentUser = this.user.asObservable();\r\n\r\n private beneficiary = new BehaviorSubject(new Beneficiary());\r\n currentBeneficiary = this.beneficiary.asObservable();\r\n\r\n private voucher = new BehaviorSubject(new PreAuthorization());\r\n currentVoucher = this.voucher.asObservable();\r\n\r\n constructor() { }\r\n\r\n changeUser(user: User) {\r\n console.log('Entrei no user data: ', new Date());\r\n this.user.next(user);\r\n }\r\n\r\n changeBeneficiary(benef: Beneficiary) {\r\n console.log('Entrei no user data: ', new Date());\r\n this.beneficiary.next(benef);\r\n }\r\n\r\n changeVoucher(voucher: PreAuthorization) {\r\n console.log('Entrei no user data: ', new Date());\r\n this.voucher.next(voucher);\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { baseApiUrl } from '../../app.config';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HomeService {\r\n\r\n constructor(private http: CustomHttpClient) { }\r\n\r\n ngOnInit() { \r\n \r\n }\r\n\r\n getState(filter: string) {\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.Get(`${baseApiUrl}api/home/GetState`).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n \r\n }\r\n\r\n \r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { Product } from '../../model/product';\r\nimport { Router } from '@angular/router';\r\nimport { baseApiUrl } from '../../app.config';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProductService {\r\n router: Router;\r\n\r\n constructor(private http: CustomHttpClient, router: Router)\r\n {\r\n this.router = router;\r\n }\r\n\r\n public ReadProducts(term: string, uf: string) {\r\n return this.http.Get(`${baseApiUrl}api/product/ReadProducts/` + term + \"/\" + uf);\r\n }\r\n\r\n public GetProduct(skuId: number) {\r\n return this.http.Get(`${baseApiUrl}api/product/GetProduct/` + skuId);\r\n }\r\n\r\n public GetProductPrice(skuId: number, uf: string) {\r\n return this.http.Get(`${baseApiUrl}api/product/GetProductPrice/` + skuId + \"/\" + uf);\r\n }\r\n \r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { Product } from '../../model/product';\r\nimport { Router } from '@angular/router';\r\nimport { baseApiUrl } from '../../app.config';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UsuarioService {\r\n router: Router;\r\n\r\n constructor(private http: CustomHttpClient, router: Router)\r\n {\r\n this.router = router;\r\n }\r\n\r\n public GetVouchersAcumulados(id: number) {\r\n return this.http.Get(`${baseApiUrl}api/usuario/GetVouchersAcumulados/` + id);\r\n }\r\n\r\n public GetUsuario(id: number) {\r\n return this.http.Get(`${baseApiUrl}api/usuario/GetUsuario/` + id);\r\n }\r\n \r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { User } from '../../model/user';\r\nimport { Beneficiary } from '../../model/beneficiary';\r\nimport { baseApiUrl } from '../../app.config';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ModalAlertService } from '../../modules/modals/alert-window';\r\nimport { ComparacaoPrecoComponent } from '../../pages/comparacao-precos/comparacaoPreco.component';\r\nimport { ModalGenenericService } from '../../modules/modals/generic-window.module';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilService {\r\n\r\n constructor(private http: CustomHttpClient, private spinner: NgxSpinnerService,\r\n private modalAlert: ModalAlertService,\r\n private modalGeneric: ModalGenenericService) { }\r\n\r\n private OnEnd(): void {\r\n this.hideLoader();\r\n }\r\n\r\n private showLoader(): void {\r\n this.spinner.show();\r\n }\r\n\r\n private hideLoader(): void {\r\n this.spinner.hide();\r\n }\r\n\r\n openModalRedirect(title: string, message: string, route: string) {\r\n this.modalGeneric.show(title, message, route);\r\n }\r\n\r\n OpenModalGenericAlert(title: string, message: string) {\r\n this.modalAlert.show(title, message);\r\n }\r\n\r\n OpenModalWithoutPhoneNumber() {\r\n this.modalAlert.show('Sms', 'Atualize o seu cadastro com o número de telefone para recebimento do voucher via sms!');\r\n }\r\n\r\n openModalSuccess(typeMessage: number) {\r\n if (typeMessage == 1)\r\n this.modalAlert.show('Sms', 'Sms enviado com sucesso, em instantes você receberá a mensagem no seu celular!');\r\n else\r\n this.modalAlert.show('E-mail', 'E-mail enviado com sucesso, em instantes você receberá a mensagem!');\r\n }\r\n\r\n openModalError(typeMessage: number) {\r\n if (typeMessage == 1)\r\n this.modalAlert.show('Sms', 'Ocorreu um erro ao enviar o sms, tente novamente mais tarde!');\r\n else\r\n this.modalAlert.show('E-mail', 'Ocorreu um erro ao enviar o e-mail, tente novamente mais tarde!');\r\n }\r\n\r\n sendSms(mobilePhoneNumber: string, authorizationId: string) {\r\n this.showLoader();\r\n\r\n if (!(mobilePhoneNumber.length > 0)) {\r\n this.OpenModalWithoutPhoneNumber();\r\n return;\r\n }\r\n\r\n var obj = {};\r\n\r\n obj = {\r\n MobilePhoneNumber: mobilePhoneNumber.replace(/\\(|\\)|\\s/g, ''),\r\n AuthorizationId: authorizationId\r\n };\r\n\r\n this.sms(obj).then((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n this.OnEnd();\r\n\r\n if (result.success) {\r\n this.openModalSuccess(1);\r\n }\r\n else {\r\n this.openModalError(1);\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n sendEmail(user: any, voucher: any) {\r\n this.showLoader();\r\n\r\n var obj = {};\r\n\r\n obj = {\r\n Name: user.name,\r\n Email: user.email,\r\n ProductName: voucher.items[0].productName.replace('+', ' ').replace('/', ' '),\r\n Price: this.valuePrice(voucher).toString().replace('.', ','),\r\n AuthorizationId: this.valueAuthorizationId(voucher)\r\n };\r\n\r\n this.email(obj).then((res: any) => {\r\n var result = JSON.parse(res.result);\r\n\r\n this.OnEnd();\r\n\r\n if (result.success) {\r\n this.openModalSuccess(2);\r\n }\r\n else {\r\n this.openModalError(2);\r\n }\r\n });\r\n }\r\n\r\n generatePDF(user: any, voucher: any) {\r\n this.showLoader();\r\n var obj = {};\r\n //Alterar\r\n\r\n obj = {\r\n Name: user.name,\r\n Email: user.email,\r\n ProductName: voucher.items[0].productName.replace('+', ' ').replace('/', ' '),\r\n Price: this.valuePrice(voucher).toString().replace('.', ','),\r\n AuthorizationId: this.valueAuthorizationId(voucher)\r\n };\r\n\r\n var json = JSON.stringify(obj);\r\n\r\n this.gerarPDF(json);\r\n\r\n this.OnEnd();\r\n }\r\n\r\n valuePrice(voucher: any) {\r\n\r\n return (parseFloat(voucher.items[0].salePrice) > 0) ? voucher.items[0].salePrice : voucher.items[0].referencePrice;\r\n }\r\n\r\n valueAuthorizationId(voucher: any) {\r\n return (voucher.authorizationId != undefined) ? voucher.authorizationId : voucher.externalId;\r\n }\r\n\r\n sms(obj: any) {\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/util/SendSms`, obj).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n email(obj: any) {\r\n\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/util/SendEmail`, obj).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n }\r\n\r\n gerarPDF(json: any) {\r\n window.open(`${baseApiUrl}api/util/GerarPDF/` + json);\r\n }\r\n\r\n hasVoucher() {\r\n if (ComparacaoPrecoComponent.selectedVoucher != undefined) {\r\n if (ComparacaoPrecoComponent.selectedVoucher.hasSelectedVoucher) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n clearSelectedVoucher() {\r\n ComparacaoPrecoComponent.selectedVoucher = null;\r\n }\r\n\r\n voucherSelected(cpf: any) {\r\n var voucher = ComparacaoPrecoComponent.selectedVoucher.voucher;\r\n\r\n var obj = {\r\n skuId: voucher.id,\r\n pmc: voucher.pmc,\r\n maximumDiscount: voucher.maximumDiscount,\r\n beneficiaryId: cpf\r\n };\r\n\r\n return obj;\r\n \r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { CustomHttpClient, IRequestOptions } from './../../providers/CustomHttpClient';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { Voucher } from '../../model/voucher';\r\nimport { Router } from '@angular/router';\r\nimport { baseApiUrl } from '../../app.config';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VoucherService {\r\n router: Router;\r\n\r\n constructor(private http: CustomHttpClient, router: Router)\r\n {\r\n this.router = router;\r\n }\r\n\r\n public ReadVouchers(id: number, itensPerPage: number, page: number, usado: boolean, todos: boolean, fromDate: any, toDate: any) {\r\n return this.http.Get(`${baseApiUrl}api/voucher/ReadVouchers/${id}/${itensPerPage}/${page}/${usado}/${todos}/${fromDate}/${toDate}`);\r\n }\r\n\r\n public GetVoucher(id: number) {\r\n return this.http.Get(`${baseApiUrl}api/voucher/GetVoucher/` + id);\r\n }\r\n\r\n public CreateVoucher(obj: any) {\r\n return new Promise((resolve, reject) => {\r\n this.http.Post(`${baseApiUrl}api/voucher/CreateVoucher`, obj).subscribe((res) => {\r\n resolve(res);\r\n }, (err) => {\r\n reject(err);\r\n });\r\n });\r\n //return this.http.Get(\"api/voucher/CreateVoucher/\" + skuId + \"/\" + pmc + \"/\" + maximumDiscount + \"/\" + beneficiaryId);\r\n }\r\n\r\n}\r\n","export const environment = {\r\n production: true\r\n};\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.prod';\r\nimport {\r\n storageSyncMetaReducer,\r\n getAllDataFromLocalForage,\r\n default as localForage,\r\n} from 'ngrx-store-persist';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\ngetAllDataFromLocalForage({\r\n keys: [\r\n 'beneficiary',\r\n 'user',\r\n 'token',\r\n 'state'\r\n ],\r\n}).then(() => {\r\n platformBrowserDynamic()\r\n .bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n}); \r\n"],"sourceRoot":"webpack:///"}