magaya-cai-number-honduras 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release.yaml +37 -0
- package/.vscode/launch.json +18 -0
- package/.whitesource +30 -0
- package/LICENSE +21 -0
- package/README.md +1 -0
- package/combined.log +0 -0
- package/error.log +0 -0
- package/extension.config.json +58 -0
- package/index.js +220 -0
- package/package.json +56 -0
- package/src/integration/helpers/dbHelper.js +12 -0
- package/src/integration/helpers/initilize.js +111 -0
- package/src/integration/index.js +1053 -0
- package/src/integration/jobs/creditmemo.js +155 -0
- package/src/integration/jobs/debitnote.js +155 -0
- package/src/integration/jobs/invoices.js +176 -0
- package/src/integration/jobs/transactionlog.js +65 -0
- package/src/util/db/db.js +62 -0
- package/src/util/email/email.js +75 -0
- package/src/util/email/index.js +124 -0
- package/src/util/email/logo/logo.jpg +0 -0
- package/src/util/email/settingsEmail.js +33 -0
- package/src/util/files/uploadHelper.js +11 -0
- package/src/util/gateway.js +23 -0
- package/src/util/setting.js +25 -0
- package/static/assets/img/honduras-flag-icon.svg +214 -0
- package/static/fa-brands-400.eot +0 -0
- package/static/fa-brands-400.svg +1100 -0
- package/static/fa-brands-400.ttf +0 -0
- package/static/fa-brands-400.woff +0 -0
- package/static/fa-brands-400.woff2 +0 -0
- package/static/fa-regular-400.eot +0 -0
- package/static/fa-regular-400.svg +368 -0
- package/static/fa-regular-400.ttf +0 -0
- package/static/fa-regular-400.woff +0 -0
- package/static/fa-regular-400.woff2 +0 -0
- package/static/fa-solid-900.eot +0 -0
- package/static/fa-solid-900.svg +1892 -0
- package/static/fa-solid-900.ttf +0 -0
- package/static/fa-solid-900.woff +0 -0
- package/static/fa-solid-900.woff2 +0 -0
- package/static/favicon.ico +0 -0
- package/static/index.html +21 -0
- package/static/main.js +2436 -0
- package/static/main.js.map +1 -0
- package/static/polyfills.js +5793 -0
- package/static/polyfills.js.map +1 -0
- package/static/runtime.js +154 -0
- package/static/runtime.js.map +1 -0
- package/static/scripts.js +18 -0
- package/static/scripts.js.map +1 -0
- package/static/styles.js +776 -0
- package/static/styles.js.map +1 -0
- package/static/vendor.js +98718 -0
- package/static/vendor.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["webpack:///./src/$_lazy_route_resource lazy namespace object","webpack:///./src/app/apiconfig/api.service.ts","webpack:///./src/app/apiconfig/apiconfig.component.html","webpack:///./src/app/apiconfig/apiconfig.component.scss","webpack:///./src/app/apiconfig/apiconfig.component.ts","webpack:///./src/app/apiconfig/model.ts","webpack:///./src/app/app-routing.module.ts","webpack:///./src/app/app.module.ts","webpack:///./src/app/config/config.component.html","webpack:///./src/app/config/config.component.scss","webpack:///./src/app/config/config.component.ts","webpack:///./src/app/config/config.service.ts","webpack:///./src/app/config/configModel.ts","webpack:///./src/app/email/emailconfig.service.ts","webpack:///./src/app/email/emailconfig/emailconfig.component.html","webpack:///./src/app/email/emailconfig/emailconfig.component.scss","webpack:///./src/app/email/emailconfig/emailconfig.component.ts","webpack:///./src/app/email/emailpanel/emailpanel.component.html","webpack:///./src/app/email/emailpanel/emailpanel.component.scss","webpack:///./src/app/email/emailpanel/emailpanel.component.ts","webpack:///./src/app/email/model.ts","webpack:///./src/app/ftpconfig/ftpconfig.component.html","webpack:///./src/app/ftpconfig/ftpconfig.component.scss","webpack:///./src/app/ftpconfig/ftpconfig.component.ts","webpack:///./src/app/ftpconfig/ftpconfig.service.ts","webpack:///./src/app/ftpconfig/model.ts","webpack:///./src/app/invoice-number/creditmemo/creditmemo.component.html","webpack:///./src/app/invoice-number/creditmemo/creditmemo.component.scss","webpack:///./src/app/invoice-number/creditmemo/creditmemo.component.ts","webpack:///./src/app/invoice-number/debitnote/debitnote.component.html","webpack:///./src/app/invoice-number/debitnote/debitnote.component.scss","webpack:///./src/app/invoice-number/debitnote/debitnote.component.ts","webpack:///./src/app/invoice-number/invoice/invoice.component.html","webpack:///./src/app/invoice-number/invoice/invoice.component.scss","webpack:///./src/app/invoice-number/invoice/invoice.component.ts","webpack:///./src/app/invoice-number/setting/setting.component.html","webpack:///./src/app/invoice-number/setting/setting.component.scss","webpack:///./src/app/invoice-number/setting/setting.component.ts","webpack:///./src/app/invoice-number/settings.service.ts","webpack:///./src/app/invoice-number/settings.ts","webpack:///./src/app/invoice-number/status/status.component.html","webpack:///./src/app/invoice-number/status/status.component.scss","webpack:///./src/app/invoice-number/status/status.component.ts","webpack:///./src/app/pgpsettings/pgpsettings.component.html","webpack:///./src/app/pgpsettings/pgpsettings.component.scss","webpack:///./src/app/pgpsettings/pgpsettings.component.ts","webpack:///./src/app/pgpsettings/pgpsettings.service.ts","webpack:///./src/app/pgpsettings/pgpsettings.ts","webpack:///./src/app/root/root.component.html","webpack:///./src/app/root/root.component.scss","webpack:///./src/app/root/root.component.ts","webpack:///./src/app/root/root.service.ts","webpack:///./src/environments/environment.ts","webpack:///./src/main.ts","webpack:///ws (ignored)"],"names":[],"mappings":"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","file":"main.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(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 { Injectable } from '@angular/core';\r\nimport { Model } from './model';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApiService {\r\n loadConfig(): Observable<Model> {\r\n return this.http.get<Model>('./api/api/config');\r\n }\r\n constructor(private http: HttpClient) { }\r\n\r\n saveConfig(api: Model): Observable<Model> {\r\n return this.http.post<Model>('./api/api/config', { apiConfig: api });\r\n }\r\n\r\n testConfig(api: Model): Observable<Model> {\r\n return this.http.post<Model>('./api/api/test', { apiConfig: api });\r\n }\r\n\r\n}\r\n","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"saved\\\">\\r\\n Configuration was saved succesfully.\\r\\n </div>\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"testSuccesfully\\\">\\r\\n Test connection completed! API available!\\r\\n </div>\\r\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"testError\\\">\\r\\n Test connection failed! Wrong configuration!\\r\\n <br>\\r\\n {{error.message}}\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h5>API configuration</h5>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"server\\\">API Server or IP</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"server\\\" #server=\\\"ngModel\\\" [(ngModel)]=\\\"api.host\\\">\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"port\\\">Port</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"port\\\" #port=\\\"ngModel\\\" [(ngModel)]=\\\"api.port\\\">\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"username\\\">User</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"username\\\" #username=\\\"ngModel\\\" [(ngModel)]=\\\"api.username\\\">\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"password\\\">Password</span>\\r\\n </div>\\r\\n <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password\\\" #password=\\\"ngModel\\\" [(ngModel)]=\\\"api.password\\\">\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-end\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-warning\\\" (click)=\\\"test()\\\">Test Connection</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Save</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancel</button>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FwaWNvbmZpZy9hcGljb25maWcuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Model } from './model';\r\nimport { ApiService } from './api.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-apiconfig',\r\n templateUrl: './apiconfig.component.html',\r\n styleUrls: ['./apiconfig.component.scss']\r\n})\r\nexport class ApiconfigComponent implements OnInit {\r\n\r\n api: Model;\r\n saved: Boolean = false;\r\n testSuccesfully: Boolean = false;\r\n testError: Boolean = false;\r\n cantSave: Boolean = true;\r\n error;\r\n\r\n constructor(private router: Router, private apiSrv: ApiService) {\r\n this.api = new Model();\r\n }\r\n\r\n ngOnInit() {\r\n this.apiSrv.loadConfig()\r\n .subscribe((conf) => {\r\n if (conf) {\r\n this.api = conf;\r\n } else {\r\n this.api = new Model();\r\n }\r\n });\r\n }\r\n\r\n save() {\r\n this.saved = false;\r\n this.testSuccesfully = false;\r\n this.testError = false;\r\n this.apiSrv.saveConfig(this.api).subscribe((res) => {\r\n if (res) {\r\n this.saved = true;\r\n }\r\n });\r\n }\r\n\r\n\r\n test() {\r\n this.saved = false;\r\n this.testSuccesfully = false;\r\n this.testError = false;\r\n this.cantSave = true;\r\n this.apiSrv.testConfig(this.api).subscribe((response) => {\r\n if (response) {\r\n this.testError = false;\r\n this.testSuccesfully = true;\r\n this.cantSave = false;\r\n }\r\n }, (err) => {\r\n if (err) {\r\n this.testSuccesfully = false;\r\n this.testError = true;\r\n this.error = err.error;\r\n }\r\n });\r\n }\r\n\r\n cancel() {\r\n this.router.navigate(['']);\r\n }\r\n\r\n}\r\n","export class Model {\r\n host: String;\r\n port: String;\r\n username: String;\r\n password: String;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ConfigComponent } from './config/config.component';\r\nimport { FtpconfigComponent } from './ftpconfig/ftpconfig.component';\r\nimport { ApiconfigComponent } from './apiconfig/apiconfig.component';\r\nimport { PgpsettingsComponent } from './pgpsettings/pgpsettings.component';\r\nimport { EmailconfigComponent } from './email/emailconfig/emailconfig.component';\r\nimport { SettingComponent } from './invoice-number/setting/setting.component';\r\nimport { InvoiceComponent } from './invoice-number/invoice/invoice.component';\r\nimport { CreditmemoComponent } from './invoice-number/creditmemo/creditmemo.component';\r\nimport { DebitnoteComponent } from './invoice-number/debitnote/debitnote.component';\r\nimport { StatusComponent } from './invoice-number/status/status.component';\r\n\r\nconst routes: Routes = [\r\n { path: 'config', component: ConfigComponent },\r\n { path: 'api', component: ApiconfigComponent },\r\n { path: 'ftp', component: FtpconfigComponent },\r\n { path: 'email', component: EmailconfigComponent },\r\n { path: 'security', component: PgpsettingsComponent },\r\n {\r\n path: 'inv-setting', component: SettingComponent,\r\n children: [\r\n { path: 'status', component: StatusComponent },\r\n { path: 'invoice', component: InvoiceComponent },\r\n { path: 'debitnote', component: DebitnoteComponent },\r\n { path: 'creditmemo', component: CreditmemoComponent },\r\n { path: 'email', component: EmailconfigComponent },\r\n { path: '**', component: StatusComponent },\r\n ]\r\n },\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { useHash: true })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ArchwizardModule } from 'ng2-archwizard';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { RootComponent } from './root/root.component';\r\nimport { ConfigComponent } from './config/config.component';\r\nimport { ConfigService } from './config/config.service';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { FtpconfigComponent } from './ftpconfig/ftpconfig.component';\r\nimport { ApiconfigComponent } from './apiconfig/apiconfig.component';\r\nimport { PgpsettingsComponent } from './pgpsettings/pgpsettings.component';\r\nimport { EmailconfigComponent } from './email/emailconfig/emailconfig.component';\r\nimport { EmailpanelComponent } from './email/emailpanel/emailpanel.component';\r\nimport { SettingComponent } from './invoice-number/setting/setting.component';\r\nimport { InvoiceComponent } from './invoice-number/invoice/invoice.component';\r\nimport { CreditmemoComponent } from './invoice-number/creditmemo/creditmemo.component';\r\nimport { DebitnoteComponent } from './invoice-number/debitnote/debitnote.component';\r\nimport { StatusComponent } from './invoice-number/status/status.component';\r\nimport {NgxMaskModule} from 'ngx-mask';\r\n\r\n@NgModule({\r\n declarations: [\r\n RootComponent,\r\n ConfigComponent,\r\n FtpconfigComponent,\r\n ApiconfigComponent,\r\n PgpsettingsComponent,\r\n EmailconfigComponent,\r\n EmailpanelComponent,\r\n SettingComponent,\r\n InvoiceComponent,\r\n CreditmemoComponent,\r\n DebitnoteComponent,\r\n StatusComponent\r\n ],\r\n imports: [\r\n BrowserModule,\r\n AppRoutingModule,\r\n FormsModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n ArchwizardModule,\r\n NgxMaskModule.forRoot()\r\n ],\r\n providers: [ConfigService],\r\n bootstrap: [RootComponent],\r\n exports: [RootComponent]\r\n})\r\nexport class AppModule { }\r\n","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"saved\\\">\\r\\n Configuration was saved succesfully.\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-center mb-2\\\">\\r\\n <h5>Configuration</h5>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row\\\">\\r\\n\\r\\n <div class=\\\"col-sm-6 border-top border-left border-right border-bottom\\\">\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h6>Credenciales API</h6>\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"ipAddress\\\" class=\\\"col-sm-2 col-form-label\\\">Servidor/IP:</label>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <input type=\\\"text\\\" id=\\\"ipAddress\\\" class=\\\"form-control ml-2 mt-1\\\" placeholder=\\\"\\\" [(ngModel)]=\\\"config.server\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"port\\\" class=\\\"col-sm-2 col-form-label\\\">Puerto:</label>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <input type=\\\"text\\\" id=\\\"port\\\" class=\\\"form-control ml-2 mt-1\\\" placeholder=\\\"0\\\" [(ngModel)]=\\\"config.port\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"user\\\" class=\\\"col-sm-2 col-form-label\\\">Usuario:</label>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <input type=\\\"text\\\" id=\\\"user\\\" class=\\\"form-control ml-2 mt-1\\\" placeholder=\\\"\\\" [(ngModel)]=\\\"config.username\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"password\\\" class=\\\"col-sm-2 col-form-label\\\">Contraseña:</label>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <input type=\\\"password\\\" id=\\\"password\\\" class=\\\"form-control ml-2 mt-1\\\" placeholder=\\\"\\\" [(ngModel)]=\\\"config.password\\\">\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n </div>\\r\\n <div class=\\\"col-sm-6 border-top border-left border-right border-bottom\\\">\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col-sm-12 align-self-center border-bottom\\\">\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h6>Calendario de procesamiento</h6>\\r\\n </div>\\r\\n <div class=\\\"row ml-2\\\">\\r\\n\\r\\n <div class=\\\"form-check-inline\\\">\\r\\n <input type=\\\"radio\\\" id=\\\"dailyHourR\\\" class=\\\"form-check-input\\\" [(checked)]=\\\"config.dailySchedule\\\"\\r\\n (click)=\\\"scheduleMode($event)\\\" /><label class=\\\"form-check-label\\\" for=\\\"dailyHourR\\\">Diaria,\\r\\n a las:</label>\\r\\n <div class=\\\"col-auto\\\">\\r\\n <input type=\\\"time\\\" id=\\\"dailyHourSet\\\" class=\\\"form-control\\\" [(disabled)]=\\\"!config.dailySchedule\\\"\\r\\n [(ngModel)]=\\\"config.dailyScheduleValue\\\">\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row ml-2\\\">\\r\\n\\r\\n <div class=\\\"form-check-inline mt-2 mb-2\\\">\\r\\n <input type=\\\"radio\\\" id=\\\"dailyIntervalR\\\" class=\\\"form-check-input\\\" [(checked)]=\\\"config.intervalSchedule\\\"\\r\\n (click)=\\\"scheduleMode($event)\\\" /><label for=\\\"dailyIntervalR\\\" class=\\\"form-check-label\\\">A\\r\\n intervalos de:</label>\\r\\n <div class=\\\"col-auto\\\">\\r\\n <input type=\\\"number\\\" id=\\\"dailyIntervalSet\\\" class=\\\"form-control\\\" [(disabled)]=\\\"!config.intervalSchedule\\\"\\r\\n [(ngModel)]=\\\"config.intervalScheduleValue\\\">\\r\\n </div>\\r\\n <label for=\\\"dailyIntervalSet\\\" class=\\\"form-check-label\\\">segundos</label>\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h6>Ejecución y credenciales FE</h6>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col-sm-3\\\">\\r\\n <div class=\\\"form-inline m-2\\\">\\r\\n <div class=\\\"form-check\\\">\\r\\n <label class=\\\"form-check-label mr-5\\\">\\r\\n <input type=\\\"radio\\\" class=\\\"form-check-input\\\" id=\\\"productionRadio\\\" [(checked)]=\\\"config.productionRadio\\\"\\r\\n (click)=\\\"executionAndCredentials($event)\\\">\\r\\n Producción\\r\\n </label>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"areaText\\\" class=\\\"col-sm-3 col-form-label\\\">Area:</label>\\r\\n <div class=\\\"col-auto\\\">\\r\\n <input type=\\\"text\\\" id=\\\"areaText\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"config.area\\\">\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col-sm-3\\\">\\r\\n <div class=\\\"form-inline m-2\\\">\\r\\n <div class=\\\"form-check\\\">\\r\\n <label class=\\\"form-check-label mr-5\\\">\\r\\n <input type=\\\"radio\\\" class=\\\"form-check-input\\\" id=\\\"testRadio\\\" [(checked)]=\\\"config.testRadio\\\"\\r\\n (click)=\\\"executionAndCredentials($event)\\\">\\r\\n Prueba\\r\\n </label>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"col-sm-9\\\">\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"areaPassword\\\" class=\\\"col-sm-3 col-form-label\\\">Contraseña:</label>\\r\\n <div class=\\\"col-auto\\\">\\r\\n <input type=\\\"password\\\" id=\\\"areaPassword\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"config.areaPassword\\\">\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col border\\\">\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h6>Servicio WEB Factura Electónica</h6>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"form-group row\\\">\\r\\n <label for=\\\"wsURL\\\" class=\\\"col-sm-2 col-form-label\\\">Servicio Web URL:</label>\\r\\n <div class=\\\"col-sm-10\\\">\\r\\n <input type=\\\"text\\\" id=\\\"wsURL\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"config.wsURL\\\">\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n </div>\\r\\n <div class=\\\"row\\\">\\r\\n <div class=\\\"col border\\\">\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h6>Modalidad de Impuesto</h6>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"form-row mb-2\\\">\\r\\n <div class=\\\"form-check-inline\\\">\\r\\n <label class=\\\"form-check-label\\\">\\r\\n <input type=\\\"radio\\\" class=\\\"form-check-input\\\" id=\\\"magayaTax\\\" [(checked)]=\\\"config.magayaTax\\\"\\r\\n (click)=\\\"taxMode($event)\\\">\\r\\n Usar Impuestos Magaya\\r\\n </label>\\r\\n </div>\\r\\n <div class=\\\"form-check-inline ml-5\\\">\\r\\n <label class=\\\"form-check-label\\\">\\r\\n <input type=\\\"radio\\\" class=\\\"form-check-input\\\" id=\\\"priceWithTax\\\" [(checked)]=\\\"config.taxIncluded\\\"\\r\\n (click)=\\\"taxMode($event)\\\">\\r\\n Precio incluye Impuesto\\r\\n </label>\\r\\n </div>\\r\\n <div class=\\\"form-check-inline ml-5\\\">\\r\\n <label for=\\\"ivaValue\\\" class=\\\"col-sm-4 col-form-label\\\">Valor IVA:</label>\\r\\n <input type=\\\"text\\\" id=\\\"ivaValue\\\" class=\\\"form-control\\\" placeholder=\\\"0.00\\\" [(ngModel)]=\\\"config.ivaTax\\\">\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row mt-3\\\">\\r\\n <div class=\\\"col\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-primary\\\">\\r\\n Set Correlativos\\r\\n </button>\\r\\n </div>\\r\\n <div class=\\\"col d-flex justify-content-end\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success\\\" (click)=\\\"save()\\\">\\r\\n Guardar\\r\\n </button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-danger\\\" (click)=\\\"cancel()\\\">\\r\\n Cancelar\\r\\n </button>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbmZpZy9jb25maWcuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Config } from './configModel';\r\nimport { ConfigService } from './config.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-config',\r\n templateUrl: './config.component.html',\r\n styleUrls: ['./config.component.scss']\r\n})\r\nexport class ConfigComponent implements OnInit {\r\n\r\n config: Config;\r\n saved: Boolean = false;\r\n\r\n constructor(private router: Router, private configSrv: ConfigService) {\r\n this.config = new Config();\r\n }\r\n\r\n ngOnInit() {\r\n this.configSrv.loadConfig()\r\n .subscribe((conf) => {\r\n if (conf) {\r\n this.config = conf;\r\n } else {\r\n this.config = new Config();\r\n }\r\n });\r\n }\r\n\r\n taxMode(event) {\r\n if (event.target.id === 'magayaTax' && event.returnValue) {\r\n this.config.magayaTax = event.returnValue;\r\n this.config.taxIncluded = false;\r\n } else if (event.target.id === 'priceWithTax' && event.returnValue) {\r\n this.config.taxIncluded = event.returnValue;\r\n this.config.magayaTax = false;\r\n }\r\n }\r\n\r\n scheduleMode(event) {\r\n if (event.target.id === 'dailyHourR' && event.returnValue) {\r\n this.config.dailySchedule = event.returnValue;\r\n this.config.intervalSchedule = false;\r\n } else if (event.target.id === 'dailyIntervalR' && event.returnValue) {\r\n this.config.intervalSchedule = event.returnValue;\r\n this.config.dailySchedule = false;\r\n }\r\n }\r\n\r\n executionAndCredentials(event) {\r\n if (event.target.id === 'productionRadio' && event.returnValue) {\r\n this.config.productionRadio = event.returnValue;\r\n this.config.testRadio = false;\r\n } else if (event.target.id === 'testRadio' && event.returnValue) {\r\n this.config.testRadio = event.returnValue;\r\n this.config.productionRadio = false;\r\n }\r\n }\r\n\r\n setCorrelativos() { }\r\n\r\n save() {\r\n this.configSrv.saveConfig(this.config).subscribe((resp) => {\r\n if (resp) {\r\n this.saved = true;\r\n }\r\n });\r\n }\r\n\r\n\r\n cancel() {\r\n this.router.navigate(['']);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Config } from './configModel';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfigService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n saveConfig(config: Config): Observable<Config> {\r\n return this.http.post<Config>('/api/config/save', {config: config });\r\n }\r\n\r\n loadConfig(): Observable<Config> {\r\n return this.http.get<Config>('/api/config/load');\r\n }\r\n\r\n}\r\n","import { Time } from '@angular/common';\r\n\r\nexport class Config {\r\n server: String = '192.168.1.25';\r\n port: String = '8080';\r\n username: String = 'yarrastia@magaya.com';\r\n password: String = '123456';\r\n wsURL: String = 'https://localhost:6110/magaya.wsdl';\r\n\r\n dailySchedule: Boolean = true;\r\n dailyScheduleValue: String = '00:00:00';\r\n\r\n intervalSchedule: Boolean = false;\r\n intervalScheduleValue: String = '60';\r\n\r\n productionRadio: Boolean = false;\r\n testRadio: Boolean = true;\r\n area: String = 'Area1';\r\n areaPassword: String = 'prueba';\r\n\r\n magayaTax: Boolean = false;\r\n taxIncluded: Boolean = true;\r\n ivaTax: String = '0.00';\r\n\r\n constructor() { }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { EmailConfigModel } from './model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmailConfigService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n saveConfig(emailConfig: EmailConfigModel): Observable<EmailConfigModel> {\r\n return this.http.post<EmailConfigModel>('./api/email/config', { emailConfig: emailConfig });\r\n }\r\n testConfig(emailConfig: EmailConfigModel): Observable<EmailConfigModel> {\r\n return this.http.post<EmailConfigModel>('./api/email/test', { emailConfig: emailConfig });\r\n }\r\n loadConfig(): Observable<EmailConfigModel> {\r\n return this.http.get<EmailConfigModel>('./api/email/config');\r\n }\r\n}\r\n","module.exports = \"<div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"saved\\\">\\r\\n La configuración fue guardad satisfactoriamente.\\r\\n</div>\\r\\n<div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h4>Configuración de correo electrónico</h4>\\r\\n</div>\\r\\n<wizard>\\r\\n <wizard-step stepTitle=\\\"Información de seguridad\\\">\\r\\n <div class=\\\"row mt-5\\\">\\r\\n <div class=\\\"col\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"server\\\">Servidor de correo</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"server\\\" #server=\\\"ngModel\\\" [(ngModel)]=\\\"emailConfig.server\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"col\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"port\\\">Puerto</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"port\\\" #port=\\\"ngModel\\\" [(ngModel)]=\\\"emailConfig.port\\\">\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"form-check mt-2\\\">\\r\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"tsl\\\" [(ngModel)]=\\\"emailConfig.tslSSL\\\">\\r\\n <label class=\\\"form-check-label\\\" for=\\\"tsl\\\">Requiere TSL/SSL</label>\\r\\n </div>\\r\\n <div class=\\\"form-check mt-2\\\">\\r\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"credential\\\" [(ngModel)]=\\\"emailConfig.credentials\\\">\\r\\n <label class=\\\"form-check-label\\\" for=\\\"credential\\\">Usar credenciales para la autenticación en el servidor</label>\\r\\n </div>\\r\\n <div class=\\\"row mt-3\\\" *ngIf=\\\"emailConfig.credentials\\\">\\r\\n <div class=\\\"col\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"user\\\">Usuario</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" id=\\\"user\\\" #user=\\\"ngModel\\\" [(ngModel)]=\\\"emailConfig.username\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"col\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"password\\\">Contraseña</span>\\r\\n </div>\\r\\n <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"password\\\" #password=\\\"ngModel\\\"\\r\\n [(ngModel)]=\\\"emailConfig.password\\\">\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-end mr-3\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-primary\\\" nextStep>Siguiente <i class=\\\"fa fa-step-forward\\\"\\r\\n aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n </div>\\r\\n </wizard-step>\\r\\n <wizard-step stepTitle=\\\"Receptores de notificación\\\" [canExit]=\\\"validateEmails()\\\">\\r\\n\\r\\n <div class=\\\"container-fluid mt-2\\\">\\r\\n\\r\\n <div class=\\\"form-check mb-2\\\">\\r\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"sendEmailsToCustomers\\\"\\r\\n [(ngModel)]=\\\"emailConfig.sendEmailsToCustomers\\\">\\r\\n <label class=\\\"form-check-label\\\" for=\\\"sendEmailsToCustomers\\\">Le gustaría recibir notificaciones del proceso?</label>\\r\\n </div>\\r\\n\\r\\n <div [formGroup]=\\\"emailForm\\\" *ngIf=\\\"emailConfig.sendEmailsToCustomers\\\">\\r\\n <div formArrayName=\\\"emails\\\" *ngFor=\\\"let email of emailForm.get('emails').controls; index as i;\\\">\\r\\n <div [formGroupName]=\\\"i\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\">Dirección de correo electrónico *</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" style=\\\"border-radius: 5px;\\\" formControlName=\\\"email\\\" class=\\\"form-control\\\"\\r\\n [ngClass]=\\\"{ 'is-invalid':submitted && f.at(i).get('email').errors }\\\" />\\r\\n <div *ngIf=\\\"submitted && f.at(i).get('email').errors\\\" class=\\\"invalid-feedback\\\">\\r\\n <div *ngIf=\\\"submitted && f.at(i).get('email').errors.required\\\">Dirección de correo electrónico es obligatoria</div>\\r\\n </div>\\r\\n <div class=\\\"input-group-append\\\" *ngIf=\\\"(emailForm.get('emails').length === i+1)\\\">\\r\\n <button type=\\\"button\\\" style=\\\"border-radius: 5px;\\\" class=\\\"btn btn-primary ml-1\\\"\\r\\n (click)=\\\"addNewEmail()\\\"><i class=\\\"fa fa-plus\\\" aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n <div class=\\\"input-group-append\\\" *ngIf=\\\"(emailForm.get('emails').length > 1)\\\">\\r\\n <button type=\\\"button\\\" style=\\\"border-radius: 5px;\\\" class=\\\"btn btn-danger ml-1\\\"\\r\\n (click)=\\\"deleteEmailField(i)\\\"><i class=\\\"fa fa-minus\\\" aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row d-flex justify-content-end mr-3\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-secondary\\\" previousStep><i class=\\\"fa fa-step-backward\\\"\\r\\n aria-hidden=\\\"true\\\"></i> Anterior</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-primary\\\" (click)=\\\"setSubmitted()\\\" nextStep>Siguiente <i\\r\\n class=\\\"fa fa-step-forward\\\" aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n </div>\\r\\n </wizard-step>\\r\\n <wizard-step stepTitle=\\\"Notificación a Magaya\\\">\\r\\n\\r\\n <div class=\\\"container-fluid mt-2\\\">\\r\\n\\r\\n <div class=\\\"form-check mt-2 mb-2\\\">\\r\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"feedbackToMagaya\\\"\\r\\n [(ngModel)]=\\\"emailConfig.feedbackToMagaya\\\">\\r\\n <label class=\\\"form-check-label\\\" for=\\\"feedbackToMagaya\\\">Desea enviar notificación de estados a Magaya?</label>\\r\\n </div>\\r\\n\\r\\n <div [formGroup]=\\\"magayaContactForm\\\" *ngIf=\\\"emailConfig.feedbackToMagaya\\\">\\r\\n <div formArrayName=\\\"contacts\\\" *ngFor=\\\"let contact of magayaContactForm.get('contacts').controls; index as i;\\\">\\r\\n <div [formGroupName]=\\\"i\\\">\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\">Dirección de correo electrónico *</span>\\r\\n </div>\\r\\n <input type=\\\"text\\\" style=\\\"border-radius: 5px;\\\" formControlName=\\\"contact\\\" class=\\\"form-control\\\"\\r\\n [ngClass]=\\\"{ 'is-invalid':magayaContact && g.at(i).get('contact').errors }\\\" />\\r\\n <div *ngIf=\\\"magayaContact && g.at(i).get('contact').errors\\\" class=\\\"invalid-feedback\\\">\\r\\n <div *ngIf=\\\"magayaContact && g.at(i).get('contact').errors.required\\\">Dirección de correo electrónico es obligatoria</div>\\r\\n </div>\\r\\n <div class=\\\"input-group-append\\\" *ngIf=\\\"(magayaContactForm.get('contacts').length === i+1)\\\">\\r\\n <button type=\\\"button\\\" style=\\\"border-radius: 5px;\\\" class=\\\"btn btn-primary ml-1\\\"\\r\\n (click)=\\\"addNewMagayaEmail()\\\"><i class=\\\"fa fa-plus\\\" aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n <div class=\\\"input-group-append\\\" *ngIf=\\\"(magayaContactForm.get('contacts').length > 1)\\\">\\r\\n <button type=\\\"button\\\" style=\\\"border-radius: 5px;\\\" class=\\\"btn btn-danger ml-1\\\"\\r\\n (click)=\\\"deleteContactField(i)\\\"><i class=\\\"fa fa-minus\\\" aria-hidden=\\\"true\\\"></i></button>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"row d-flex justify-content-end mr-3\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-secondary\\\" previousStep><i class=\\\"fa fa-step-backward\\\"\\r\\n aria-hidden=\\\"true\\\"></i> Anterior</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-warning ml-1\\\" (click)=\\\"testEmailConfiguration()\\\"><i class=\\\"fa fa-check\\\"\\r\\n aria-hidden=\\\"true\\\"></i> Probar</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-1\\\" (click)=\\\"saveEmailConfiguration()\\\"><i class=\\\"fa fa-save\\\"\\r\\n aria-hidden=\\\"true\\\"></i> Guardar</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-1\\\" (click)=\\\"sendEmailConfiguration()\\\"><i\\r\\n class=\\\"fa fa-check-circle\\\" aria-hidden=\\\"true\\\"></i> Finalizar</button>\\r\\n </div>\\r\\n </div>\\r\\n </wizard-step>\\r\\n</wizard>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2VtYWlsL2VtYWlsY29uZmlnL2VtYWlsY29uZmlnLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit, OnChanges } from '@angular/core';\r\nimport { FormControl, FormGroup, FormBuilder, Validators, FormArray } from '@angular/forms';\r\nimport { EmailConfigModel } from '../model';\r\nimport { EmailConfigService } from '../emailconfig.service';\r\n\r\n@Component({\r\n selector: 'app-emailconfig',\r\n templateUrl: './emailconfig.component.html',\r\n styleUrls: ['./emailconfig.component.scss']\r\n})\r\nexport class EmailconfigComponent implements OnInit {\r\n\r\n emailForm: FormGroup;\r\n magayaContactForm: FormGroup;\r\n emailAddress: FormArray;\r\n submitted: Boolean = false;\r\n magayaContact: Boolean = false;\r\n saved: Boolean = false;\r\n tested: Boolean = false;\r\n emailConfig: EmailConfigModel;\r\n\r\n constructor(private emailFormBuilder: FormBuilder, private emailSrv: EmailConfigService) {\r\n this.emailConfig = new EmailConfigModel();\r\n this.emailForm = this.emailFormBuilder.group({\r\n emails: this.emailFormBuilder.array([this.createEmailField()]),\r\n });\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array([this.createMagayaEmailField()]),\r\n });\r\n }\r\n ngOnInit() {\r\n this.emailSrv.loadConfig()\r\n .subscribe(conf => {\r\n if (conf) {\r\n this.emailConfig = conf;\r\n const emailFields = this.emailConfig.customerEmails.split(',');\r\n const contactFields = this.emailConfig.magayaContacts.split(',');\r\n if (emailFields.length > 0) {\r\n let fields = [];\r\n for (const fieldValue of emailFields) {\r\n fields.push(this.createEmailField(fieldValue));\r\n }\r\n this.emailForm = this.emailFormBuilder.group({\r\n emails: this.emailFormBuilder.array(fields)\r\n });\r\n } else {\r\n this.emailForm = this.emailFormBuilder.group({\r\n emails: this.emailFormBuilder.array([this.createEmailField()]),\r\n });\r\n }\r\n if (contactFields.length > 0) {\r\n let fields = [];\r\n for (const fieldValue of contactFields) {\r\n fields.push(this.createMagayaEmailField(fieldValue));\r\n }\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array(fields),\r\n });\r\n } else {\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array([this.createMagayaEmailField()]),\r\n });\r\n }\r\n } else {\r\n this.emailConfig = new EmailConfigModel();\r\n const contactFields = this.emailConfig.magayaContacts.split(',');\r\n this.emailForm = this.emailFormBuilder.group({\r\n emails: this.emailFormBuilder.array([this.createEmailField()]),\r\n });\r\n if (contactFields.length > 0) {\r\n let fields = [];\r\n for (const fieldValue of contactFields) {\r\n fields.push(this.createMagayaEmailField(fieldValue));\r\n }\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array(fields),\r\n });\r\n } else {\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array([this.createMagayaEmailField()]),\r\n });\r\n }\r\n }\r\n }, err => {\r\n this.emailConfig = new EmailConfigModel();\r\n const contactFields = this.emailConfig.magayaContacts.split(',');\r\n this.emailForm = this.emailFormBuilder.group({\r\n emails: this.emailFormBuilder.array([this.createEmailField()]),\r\n });\r\n if (contactFields.length > 0) {\r\n let fields = [];\r\n for (const fieldValue of contactFields) {\r\n fields.push(this.createMagayaEmailField(fieldValue));\r\n }\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array(fields),\r\n });\r\n } else {\r\n this.magayaContactForm = this.emailFormBuilder.group({\r\n contacts: this.emailFormBuilder.array([this.createMagayaEmailField()]),\r\n });\r\n }\r\n });\r\n }\r\n createEmailField(value = ''): FormGroup {\r\n return this.emailFormBuilder.group({\r\n email: [value, Validators.required]\r\n });\r\n }\r\n createMagayaEmailField(value = ''): FormGroup {\r\n return this.emailFormBuilder.group({\r\n contact: [value, Validators.required]\r\n });\r\n }\r\n get f() {\r\n const fields = this.emailForm.get('emails') as FormArray;\r\n return fields;\r\n }\r\n get g() {\r\n const fields = this.magayaContactForm.get('contacts') as FormArray;\r\n return fields;\r\n }\r\n addNewEmail() {\r\n this.emailAddress = this.emailForm.get('emails') as FormArray;\r\n this.emailAddress.push(this.createEmailField());\r\n }\r\n addNewMagayaEmail() {\r\n this.emailAddress = this.magayaContactForm.get('contacts') as FormArray;\r\n this.emailAddress.push(this.createMagayaEmailField());\r\n }\r\n setSubmitted() {\r\n this.submitted = true;\r\n }\r\n validateEmails() {\r\n if (this.emailConfig.sendEmailsToCustomers) {\r\n const emails = this.emailForm.get('emails') as FormArray;\r\n if (emails) {\r\n for (let i = 0; i < emails.length; i++) {\r\n if (emails.at(i).value.email === '' || emails.at(i).value.email === ' ') {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n }\r\n validateContacts() {\r\n if (this.emailConfig.feedbackToMagaya) {\r\n const contacts = this.magayaContactForm.get('contacts') as FormArray;\r\n for (let i = 0; i < contacts.length; i++) {\r\n if (contacts.at(i).value.contact === '' || contacts.at(i).value.contact === ' ') {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n }\r\n saveCustomersEmail() {\r\n const emails = this.emailForm.get('emails') as FormArray;\r\n this.emailConfig.customerEmails = '';\r\n for (let i = 0; i < emails.length; i++) {\r\n const cont = emails.at(i).value.email;\r\n if (cont && cont !== '' && cont !== ' ') {\r\n this.emailConfig.customerEmails += cont;\r\n if (emails.length !== i + 1 && emails.at(i + 1).value.email\r\n && emails.at(i + 1).value.email !== '' && emails.at(i + 1).value.email !== '') {\r\n this.emailConfig.customerEmails += ',';\r\n }\r\n }\r\n }\r\n }\r\n saveMagayaEmail() {\r\n const contacts = this.magayaContactForm.get('contacts') as FormArray;\r\n this.emailConfig.magayaContacts = '';\r\n for (let i = 0; i < contacts.length; i++) {\r\n const cont = contacts.at(i).value.contact;\r\n if (cont && cont !== '' && cont !== ' ') {\r\n this.emailConfig.magayaContacts += cont;\r\n if (contacts.length !== i + 1 && contacts.at(i + 1).value.contact\r\n && contacts.at(i + 1).value.contact !== '' && contacts.at(i + 1).value.contact !== '') {\r\n this.emailConfig.magayaContacts += ',';\r\n }\r\n }\r\n }\r\n }\r\n deleteEmailField(idx: number) {\r\n const emails = this.emailForm.get('emails') as FormArray;\r\n emails.removeAt(idx);\r\n }\r\n deleteContactField(idx: number) {\r\n const contacts = this.magayaContactForm.get('contacts') as FormArray;\r\n contacts.removeAt(idx);\r\n }\r\n saveEmailConfiguration() {\r\n this.magayaContact = false;\r\n if (this.validateContacts()) {\r\n this.saveCustomersEmail();\r\n this.saveMagayaEmail();\r\n } else {\r\n this.magayaContact = true;\r\n }\r\n }\r\n sendEmailConfiguration() {\r\n this.magayaContact = false;\r\n if (this.validateContacts()) {\r\n this.saveCustomersEmail();\r\n this.saveMagayaEmail();\r\n this.saved = false;\r\n this.tested = false;\r\n this.emailSrv.saveConfig(this.emailConfig)\r\n .subscribe(result => {\r\n if (result) {\r\n this.saved = true;\r\n }\r\n });\r\n } else {\r\n this.magayaContact = true;\r\n }\r\n }\r\n testEmailConfiguration() {\r\n this.saveCustomersEmail();\r\n this.saveMagayaEmail();\r\n this.tested = false;\r\n this.saved = false;\r\n this.emailSrv.testConfig(this.emailConfig)\r\n .subscribe(result => {\r\n if (result) {\r\n this.tested = true;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","module.exports = \"<p>\\n emailpanel works!\\n</p>\\n\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2VtYWlsL2VtYWlscGFuZWwvZW1haWxwYW5lbC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-emailpanel',\n templateUrl: './emailpanel.component.html',\n styleUrls: ['./emailpanel.component.scss']\n})\nexport class EmailpanelComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export class EmailConfigModel {\r\n\r\n server: String = '';\r\n username: String = '';\r\n password: String = '';\r\n port: Number = 25;\r\n customerEmails: String = '';\r\n magayaContacts: String = 'yarrastia@magaya.com, rcachoeira@magaya.com, integration_issues@magaya.com, yrodriguez@magaya.com';\r\n feedbackToMagaya: Boolean = false;\r\n sendEmailsToCustomers: Boolean = true;\r\n tslSSL: Boolean = false;\r\n credentials: Boolean = false;\r\n\r\n}\r\n","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"saved\\\">\\r\\n Configuration was saved succesfully.\\r\\n </div>\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"testSuccesfully\\\">\\r\\n Test connection completed! FTP available!\\r\\n </div>\\r\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"testError\\\">\\r\\n Test connection failed! Wrong configuration!\\r\\n <br>\\r\\n {{error.message}}\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h5>FTP Server configuration</h5>\\r\\n </div>\\r\\n \\r\\n <div class=\\\"form-group row\\\">\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Host</label>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #host=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.host\\\">\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">User</label>\\r\\n </div>\\r\\n <input type=\\\"text\\\" #username=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"ftp.username\\\">\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Password</label>\\r\\n </div>\\r\\n <input type=\\\"password\\\" #password=\\\"ngModel\\\" class=\\\"form-control\\\" [(ngModel)]=\\\"ftp.password\\\">\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n\\r\\n <div class=\\\"form-group row\\\">\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Protocol</label>\\r\\n </div>\\r\\n <select class=\\\"custom-select\\\" id=\\\"protocol\\\" #protocol=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.protocol\\\">\\r\\n <option selected>Choose...</option>\\r\\n <option value=\\\"ftp\\\">FTP</option>\\r\\n <option value=\\\"ftps\\\">FTPS</option>\\r\\n <option value=\\\"sftp\\\">SFTP</option>\\r\\n </select>\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Port</label>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #port=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.port\\\">\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Retries</label>\\r\\n </div>\\r\\n <input type=\\\"number\\\" class=\\\"form-control\\\" #retries=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.retries\\\">\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"form-group row\\\">\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Time</label>\\r\\n </div>\\r\\n <input type=\\\"number\\\" class=\\\"form-control\\\" #timeout=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.time\\\">\\r\\n <select class=\\\"custom-select\\\" id=\\\"timeoutUnit\\\" #timeoutUnit=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.tunit\\\">\\r\\n <option selected>Choose..</option>\\r\\n <option value=\\\"second\\\">Sec</option>\\r\\n <option value=\\\"minutes\\\">Min</option>\\r\\n <option value=\\\"hours\\\">Hr</option>\\r\\n </select>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Retry Interval</label>\\r\\n </div>\\r\\n <input type=\\\"number\\\" class=\\\"form-control\\\" #retryInterval=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.retryInterval\\\">\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <div class=\\\"input-group-text\\\">\\r\\n <input type=\\\"checkbox\\\" aria-label=\\\"Checkbox for following text input\\\" (change)=\\\"sshKeyClick()\\\">\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">SSH Key</label>\\r\\n </div>\\r\\n <input type=\\\"text\\\" class=\\\"form-control\\\" aria-label=\\\"Text input with checkbox\\\" #requireSSHKey=\\\"ngModel\\\"\\r\\n [(disabled)]=\\\"!ftp.requireSSHKey\\\" [(ngModel)]=\\\"ftp.sshKeyPath\\\">\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-end\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-warning\\\" (click)=\\\"test()\\\">Test Connection</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Save</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-primary ml-2\\\" (click)=\\\"start()\\\" [(disabled)]=\\\"cantStart\\\" *ngIf=\\\"!isStarted\\\">Start</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-dark ml-2\\\" (click)=\\\"stop()\\\" *ngIf=\\\"isStarted\\\">Stop</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancel</button>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n <!--\\r\\n <div *ngIf=\\\"canSelectPath\\\">\\r\\n\\r\\n <div class=\\\"form-group row\\\">\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">In Path</label>\\r\\n </div>\\r\\n <select class=\\\"custom-select\\\" id=\\\"inPath\\\" #inPath=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.inPath\\\">\\r\\n <option selected>Choose...</option>\\r\\n <option value=\\\"ftp\\\">FTP</option>\\r\\n <option value=\\\"ftps\\\">FTPS</option>\\r\\n <option value=\\\"sftp\\\">SFTP</option>\\r\\n </select>\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3 col\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Out Path</label>\\r\\n </div>\\r\\n <select class=\\\"custom-select\\\" id=\\\"outPath\\\" #outPath=\\\"ngModel\\\" [(ngModel)]=\\\"ftp.outPath\\\">\\r\\n <option selected>Choose...</option>\\r\\n <option value=\\\"ftp\\\">FTP</option>\\r\\n <option value=\\\"ftps\\\">FTPS</option>\\r\\n <option value=\\\"sftp\\\">SFTP</option>\\r\\n </select>\\r\\n </div>\\r\\n\\r\\n </div>\\r\\n </div> \\r\\n\\r\\n<div>{{ftp.tunit}}</div>\\r\\n-->\\r\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2Z0cGNvbmZpZy9mdHBjb25maWcuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { FTPConfigModel } from './model';\r\nimport { Router } from '@angular/router';\r\nimport { FtpconfigService } from './ftpconfig.service';\r\n\r\n@Component({\r\n selector: 'app-ftpconfig',\r\n templateUrl: './ftpconfig.component.html',\r\n styleUrls: ['./ftpconfig.component.scss']\r\n})\r\nexport class FtpconfigComponent implements OnInit {\r\n\r\n ftp: FTPConfigModel;\r\n saved: Boolean = false;\r\n testSuccesfully: Boolean = false;\r\n testError: Boolean = false;\r\n canSelectPath: Boolean = false;\r\n cantSave: Boolean = true;\r\n cantStart: Boolean = true;\r\n isStarted: Boolean = false;\r\n error;\r\n\r\n constructor(private router: Router, private ftpSrv: FtpconfigService) {\r\n this.ftp = new FTPConfigModel();\r\n }\r\n\r\n ngOnInit() {\r\n this.ftpSrv.loadConfig()\r\n .subscribe((conf) => {\r\n if (conf) {\r\n this.ftp = conf;\r\n } else {\r\n this.ftp = new FTPConfigModel();\r\n }\r\n });\r\n this.ftpSrv.getProcessStatus().subscribe(status => {\r\n this.isStarted = status.isStarted;\r\n });\r\n }\r\n stop() {\r\n this.ftpSrv.stopProcess().subscribe((result) => {\r\n this.isStarted = false;\r\n });\r\n }\r\n\r\n sshKeyClick() {\r\n if (this.ftp.requireSSHKey) {\r\n this.ftp.requireSSHKey = false;\r\n } else {\r\n this.ftp.requireSSHKey = true;\r\n }\r\n }\r\n\r\n save() {\r\n this.saved = false;\r\n this.isStarted = false;\r\n this.cantStart = true;\r\n this.testSuccesfully = false;\r\n this.testError = false;\r\n this.canSelectPath = false;\r\n this.cantStart = false;\r\n this.ftpSrv.saveConfig(this.ftp).subscribe((res) => {\r\n if (res) {\r\n this.saved = true;\r\n this.cantStart = false;\r\n }\r\n });\r\n }\r\n\r\n start() {\r\n this.isStarted = true;\r\n this.saved = false;\r\n this.testSuccesfully = false;\r\n this.testError = false;\r\n this.canSelectPath = false;\r\n this.save();\r\n this.ftpSrv.startProcess().subscribe((res) => {\r\n if (res) {\r\n this.saved = true;\r\n }\r\n });\r\n }\r\n\r\n test() {\r\n this.isStarted = false;\r\n this.saved = false;\r\n this.testSuccesfully = false;\r\n this.testError = false;\r\n this.cantSave = true;\r\n this.cantStart = true;\r\n this.canSelectPath = false;\r\n this.ftpSrv.testConfig(this.ftp).subscribe((response) => {\r\n if (response) {\r\n this.testError = false;\r\n this.testSuccesfully = true;\r\n this.cantSave = false;\r\n this.cantStart = false;\r\n this.canSelectPath = true;\r\n }\r\n }, (err) => {\r\n if (err) {\r\n this.testSuccesfully = false;\r\n this.testError = true;\r\n this.error = err.error;\r\n }\r\n });\r\n }\r\n\r\n cancel() {\r\n window.close();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { FTPConfigModel } from './model';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FtpconfigService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n saveConfig(ftpConfig: FTPConfigModel): Observable<FTPConfigModel> {\r\n return this.http.post<FTPConfigModel>('./api/ftp/config', { ftpConfig: ftpConfig });\r\n }\r\n startProcess(): Observable<any> {\r\n return this.http.get<any>('./integration/start-process-ftp');\r\n }\r\n stopProcess(): Observable<any> {\r\n return this.http.get<any>('./integration/stop-process-ftp');\r\n }\r\n loadConfig(): Observable<FTPConfigModel> {\r\n return this.http.get<FTPConfigModel>('./api/ftp/config');\r\n }\r\n testConfig(ftpConfig: FTPConfigModel): Observable<FTPConfigModel> {\r\n return this.http.post<FTPConfigModel>('./api/ftp/test', { ftpConfig: ftpConfig });\r\n }\r\n getProcessStatus(): Observable<any> {\r\n return this.http.get<any>('./integration/get-status-process');\r\n }\r\n}\r\n","export class FTPConfigModel {\r\n\r\n host: String = '';\r\n username: String = '';\r\n password: String = '';\r\n protocol: String = 'ftp';\r\n port: Number = 22;\r\n escape: Boolean = true;\r\n retries: Number = 2;\r\n time: Number = 10;\r\n retryInterval: Number = 5;\r\n retryMultiplier: Number = 1;\r\n requiresPassword: Boolean = true;\r\n autoConfirm: Boolean = true;\r\n cwd: String = '';\r\n additionalLftpCommands: String = '';\r\n requireSSHKey: Boolean = false;\r\n sshKeyPath: String = '';\r\n tunit: String = 'second';\r\n inPath: String = '/36016/in';\r\n outPath: String = '/36016/out';\r\n urlList: String = '';\r\n}\r\n","module.exports = \"<div class=\\\"container-fluid\\\">\\n\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Csaved\\\">\\n Configuración guardada satisfactoriamente.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Cerror\\\">\\n Falló el intento de guardad la configuración.\\n <br>\\n {{error.message}}\\n </div>\\n\\n <div class=\\\"row d-flex justify-content-center\\\">\\n <h5>Configuración de las Notas de Créditos</h5>\\n </div>\\n\\n <div class=\\\"form-check mt-2 mb-3\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"creditMemoCanStart\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoCanStart\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"creditMemoCanStart\\\">Habilitar configuración de Notas de Crédito</label>\\n </div>\\n\\n <div *ngIf=\\\"invSrv.setting.creditMemoCanStart\\\">\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">CAI</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #cainumber=\\\"ngModel\\\" [(ngModel)]=\\\"invSrv.setting.creditMemoCAI\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Fecha límite de emisión</span>\\n </div>\\n <input type=\\\"date\\\" class=\\\"form-control\\\" #expdate=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoPackageExpirationDate\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número inicial</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #stnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoPackageNumberStart\\\" (ngModelChange)=\\\"onChangeStart($event)\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número final</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #endnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoPackageNumberEnd\\\" (ngModelChange)=\\\"onChangeEnd($event)\\\">\\n </div>\\n\\n <div class=\\\"form-check mt-2\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"cemail\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoPackageEmailNotificationActive\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"cemail\\\">Habilitar notificación por correo electrónico</label>\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\" *ngIf=\\\"invSrv.setting.creditMemoPackageEmailNotificationActive\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Notificar faltando</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #notnumber=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.creditMemoPackageEmailNotificationNumber\\\">\\n </div>\\n </div>\\n\\n <div class=\\\"mb-3\\\">\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.cdmCSaved\\\">\\n Asignación del número siguiente de forma satisfactoria.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.cdmCError\\\">\\n No se pudo asignar el número siguiente.\\n <br>\\n {{error.message}}\\n </div>\\n <div class=\\\"input-group mb-3 mt-2\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <div class=\\\"input-group-text\\\">\\n <input type=\\\"checkbox\\\" aria-label=\\\"\\\" [(disabled)] = \\\"invSrv.isCreditMemoStarted\\\" (change)=\\\"selectCurrent()\\\">\\n </div>\\n </div>\\n <div class=\\\"input-group-prepend\\\">\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Siguiente número para Notas de Crédito</label>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #cdmcurrent=\\\"ngModel\\\" [(disabled)]=\\\"!activateCurrent\\\"\\n [(ngModel)]=\\\"invSrv.setting.CDMCurrent\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"setCurrent()\\\"\\n [(disabled)]=\\\"!activateCurrent\\\">Asignar</button>\\n </div>\\n </div>\\n\\n\\n\\n\\n <div class=\\\"row d-flex justify-content-end mr-1\\\">\\n <div class=\\\"form-group\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Guardar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancelar</button>\\n </div>\\n </div>\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2ludm9pY2UtbnVtYmVyL2NyZWRpdG1lbW8vY3JlZGl0bWVtby5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, Output, OnDestroy } from '@angular/core';\nimport { SettingsService } from '../settings.service';\nimport { Subscriber, Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-creditmemo',\n templateUrl: './creditmemo.component.html',\n styleUrls: ['./creditmemo.component.scss']\n})\nexport class CreditmemoComponent implements OnInit, OnDestroy {\n\n activateCurrent: Boolean = false;\n sub: Subscription;\n\n constructor(private invSrv: SettingsService) { }\n ngOnDestroy() {\n this.sub.unsubscribe();\n }\n ngOnInit() {\n this.invSrv.loadConfig().subscribe(result => {\n if (result) {\n this.invSrv.setting = result;\n }\n });\n this.invSrv.loadCDMCurrent().subscribe(result => {\n if (result) {\n this.invSrv.setting.CDMCurrent = result;\n }\n });\n\n this.sub = this.invSrv.getCursors()\n .subscribe((data) => {\n });\n this.invSrv.Isaved = false;\n this.invSrv.Csaved = false;\n this.invSrv.Dsaved = false;\n\n this.invSrv.Ierror = false;\n this.invSrv.Cerror = false;\n this.invSrv.Derror = false;\n\n this.invSrv.invCSaved = false;\n this.invSrv.dbnCSaved = false;\n this.invSrv.cdmCSaved = false;\n\n this.invSrv.invCError = false;\n this.invSrv.dbnCError = false;\n this.invSrv.cdmCError = false;\n }\n onChangeStart(event) {\n const st = this.invSrv.setting.creditMemoPackageNumberStart;\n this.invSrv.setting.creditMemoPackageNumberStart = `${st.slice(0, 3)}-${st.slice(3, 6)}-${st.slice(6, 8)}-${st.slice(8, st.length)}`;\n }\n onChangeEnd(event) {\n const end = this.invSrv.setting.creditMemoPackageNumberEnd;\n this.invSrv.setting.creditMemoPackageNumberEnd = `${end.slice(0, 3)}-${end.slice(3, 6)}-${end.slice(6, 8)}-${end.slice(8, end.length)}`;\n }\n save() {\n this.invSrv.saveConfig().subscribe(result => {\n this.invSrv.Csaved = false;\n this.invSrv.Cerror = false;\n if (result) {\n this.invSrv.Csaved = result.resp;\n this.invSrv.Cerror = false;\n } else {\n this.invSrv.Csaved = false;\n this.invSrv.Cerror = false;\n }\n }, err => {\n if (err) {\n this.invSrv.Cerror = true;\n this.invSrv.Csaved = false;\n }\n });\n }\n\n cancel() {\n window.close();\n }\n\n setCurrent() {\n this.invSrv.cdmCError = false;\n this.invSrv.cdmCSaved = false;\n this.invSrv.saveCDMCurrent().subscribe(result => {\n if (result) {\n this.invSrv.cdmCSaved = result.resp;\n this.invSrv.cdmCError = false;\n } else {\n this.invSrv.cdmCError = false;\n this.invSrv.cdmCSaved = false;\n }\n }, err => {\n if (err) {\n this.invSrv.cdmCSaved = false;\n this.invSrv.cdmCError = true;\n }\n });\n }\n selectCurrent() {\n if (this.activateCurrent) {\n this.activateCurrent = false;\n } else {\n this.activateCurrent = true;\n }\n }\n\n}\n","module.exports = \"<div class=\\\"container-fluid\\\">\\n\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Dsaved\\\">\\n Configuración guardada satisfactoriamente.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Derror\\\">\\n Falló el intento de guardad la configuración.\\n <br>\\n {{error.message}}\\n </div>\\n\\n <div class=\\\"row d-flex justify-content-center\\\">\\n <h5>Configuración de Notas de Débito</h5>\\n </div>\\n <div class=\\\"form-check mt-2 mb-3\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"debitNoteCanStart\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNoteCanStart\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"debitNoteCanStart\\\">Habilitar configuración de Notas de Débitos</label>\\n </div>\\n\\n <div *ngIf=\\\"invSrv.setting.debitNoteCanStart\\\">\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">CAI</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #cainumber=\\\"ngModel\\\" [(ngModel)]=\\\"invSrv.setting.debitNoteCAI\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Fecha límite de emisión</span>\\n </div>\\n <input type=\\\"date\\\" class=\\\"form-control\\\" #expdate=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNotePackageExpirationDate\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número inicial</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #stnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNotePackageNumberStart\\\" (ngModelChange)=\\\"onChangeStart($event)\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número final</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #endnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNotePackageNumberEnd\\\" (ngModelChange)=\\\"onChangeEnd($event)\\\">\\n </div>\\n\\n\\n <div class=\\\"form-check mt-2\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"demail\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNotePackageEmailNotificationActive\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"demail\\\">Habilitar notificación por correo electrónico</label>\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\" *ngIf=\\\"invSrv.setting.debitNotePackageEmailNotificationActive\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Notificar faltando</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #notnumber=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.debitNotePackageEmailNotificationNumber\\\">\\n </div>\\n </div>\\n\\n <div class=\\\"mb-3\\\">\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.dbnCSaved\\\">\\n Asignación del número siguiente de forma satisfactoria.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.dbnCError\\\">\\n No se pudo asignar el número siguiente.\\n <br>\\n {{error.message}}\\n </div>\\n <div class=\\\"input-group mb-3 mt-2\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <div class=\\\"input-group-text\\\">\\n <input type=\\\"checkbox\\\" aria-label=\\\"\\\" [(disabled)] = \\\"invSrv.isDebitNoteStarted\\\" (change)=\\\"selectCurrent()\\\">\\n </div>\\n </div>\\n <div class=\\\"input-group-prepend\\\">\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Siguiente número para Notas de Débito</label>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #dbncurrent=\\\"ngModel\\\" [(disabled)]=\\\"!activateCurrent\\\"\\n [(ngModel)]=\\\"invSrv.setting.DBNCurrent\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"setCurrent()\\\"\\n [(disabled)]=\\\"!activateCurrent\\\">Asignar</button>\\n </div>\\n </div>\\n\\n\\n <div class=\\\"row d-flex justify-content-end mr-1\\\">\\n <div class=\\\"form-group\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Guardar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancelar</button>\\n </div>\\n </div>\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2ludm9pY2UtbnVtYmVyL2RlYml0bm90ZS9kZWJpdG5vdGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, Output, OnDestroy } from '@angular/core';\nimport { SettingsService } from '../settings.service';\nimport { Subscriber, Subscription } from 'rxjs';\n\n\n@Component({\n selector: 'app-debitnote',\n templateUrl: './debitnote.component.html',\n styleUrls: ['./debitnote.component.scss']\n})\nexport class DebitnoteComponent implements OnInit, OnDestroy {\n\n activateCurrent: Boolean = false;\n sub: Subscription;\n\n constructor(private invSrv: SettingsService) { }\n ngOnDestroy() {\n this.sub.unsubscribe();\n }\n ngOnInit() {\n this.invSrv.loadConfig().subscribe(result => {\n if (result) {\n this.invSrv.setting = result;\n }\n });\n this.invSrv.loadDBNCurrent().subscribe(result => {\n if (result) {\n this.invSrv.setting.DBNCurrent = result;\n }\n });\n\n this.sub = this.invSrv.getCursors()\n .subscribe((data) => {\n });\n this.invSrv.Isaved = false;\n this.invSrv.Csaved = false;\n this.invSrv.Dsaved = false;\n\n this.invSrv.Ierror = false;\n this.invSrv.Cerror = false;\n this.invSrv.Derror = false;\n\n this.invSrv.invCSaved = false;\n this.invSrv.dbnCSaved = false;\n this.invSrv.cdmCSaved = false;\n\n this.invSrv.invCError = false;\n this.invSrv.dbnCError = false;\n this.invSrv.cdmCError = false;\n }\n onChangeStart(event) {\n const st = this.invSrv.setting.debitNotePackageNumberStart;\n this.invSrv.setting.debitNotePackageNumberStart = `${st.slice(0, 3)}-${st.slice(3, 6)}-${st.slice(6, 8)}-${st.slice(8, st.length)}`;\n }\n onChangeEnd(event) {\n const end = this.invSrv.setting.debitNotePackageNumberEnd;\n this.invSrv.setting.debitNotePackageNumberEnd = `${end.slice(0, 3)}-${end.slice(3, 6)}-${end.slice(6, 8)}-${end.slice(8, end.length)}`;\n }\n save() {\n this.invSrv.saveConfig().subscribe(result => {\n this.invSrv.Dsaved = false;\n this.invSrv.Derror = false;\n if (result) {\n this.invSrv.Dsaved = result.resp;\n this.invSrv.Derror = false;\n } else {\n this.invSrv.Dsaved = false;\n this.invSrv.Derror = false;\n }\n }, err => {\n if (err) {\n this.invSrv.Derror = true;\n this.invSrv.Dsaved = false;\n }\n });\n }\n\n cancel() {\n window.close();\n }\n\n setCurrent() {\n this.invSrv.dbnCError = false;\n this.invSrv.dbnCSaved = false;\n this.invSrv.saveDBNCurrent().subscribe(result => {\n if (result) {\n this.invSrv.dbnCSaved = result.resp;\n this.invSrv.dbnCError = false;\n } else {\n this.invSrv.dbnCError = false;\n this.invSrv.dbnCSaved = false;\n }\n }, err => {\n if (err) {\n this.invSrv.dbnCSaved = false;\n this.invSrv.dbnCError = true;\n }\n });\n }\n selectCurrent() {\n if (this.activateCurrent) {\n this.activateCurrent = false;\n } else {\n this.activateCurrent = true;\n }\n }\n\n}\n","module.exports = \"<div class=\\\"container-fluid\\\">\\n\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Isaved\\\">\\n Configuración guardada satisfactoriamente.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.Ierror\\\">\\n Falló el intento de guardad la configuración.\\n <br>\\n {{error.message}}\\n </div>\\n\\n\\n <div class=\\\"row d-flex justify-content-center\\\">\\n <h5>Configuración de Facturas</h5>\\n </div>\\n\\n <div class=\\\"form-check mt-2 mb-3\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"invoiceCanStart\\\" [(ngModel)]=\\\"invSrv.setting.invoiceCanStart\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"invoiceCanStart\\\">Habilitar configuración de Facturas</label>\\n </div>\\n\\n <div *ngIf=\\\"invSrv.setting.invoiceCanStart\\\">\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">CAI</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #cainumber=\\\"ngModel\\\" [(ngModel)]=\\\"invSrv.setting.invoiceCAI\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Fecha límite de emisión</span>\\n </div>\\n <input type=\\\"date\\\" class=\\\"form-control\\\" #expdate=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.invoicePackageExpirationDate\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número inicial</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #stnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.invoicePackageNumberStart\\\" (ngModelChange)=\\\"onChangeStart($event)\\\">\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Número final</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #endnumber=\\\"ngModel\\\" mask=\\\"000-000-00-00000000\\\" [showMaskTyped]=\\\"true\\\"\\n [(ngModel)]=\\\"invSrv.setting.invoicePackageNumberEnd\\\" (ngModelChange)=\\\"onChangeEnd($event)\\\">\\n </div>\\n\\n <div class=\\\"form-check mt-2\\\">\\n <input type=\\\"checkbox\\\" class=\\\"form-check-input\\\" id=\\\"iemail\\\"\\n [(ngModel)]=\\\"invSrv.setting.invoicePackageEmailNotificationActive\\\">\\n <label class=\\\"form-check-label\\\" for=\\\"iemail\\\">Habilitar notificación por correo electrónico</label>\\n </div>\\n\\n <div class=\\\"input-group mb-3\\\" *ngIf=\\\"invSrv.setting.invoicePackageEmailNotificationActive\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <span class=\\\"input-group-text\\\">Notificar faltando</span>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #notnumber=\\\"ngModel\\\"\\n [(ngModel)]=\\\"invSrv.setting.invoicePackageEmailNotificationNumber\\\">\\n </div>\\n </div>\\n\\n <div class=\\\"mb-3\\\">\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.invCSaved\\\">\\n Asignación del número siguiente de forma satisfactoria.\\n </div>\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"invSrv.invCError\\\">\\n No se pudo asignar el número siguiente.\\n <br>\\n {{error.message}}\\n </div>\\n <div class=\\\"input-group mb-3 mt-2\\\">\\n <div class=\\\"input-group-prepend\\\">\\n <div class=\\\"input-group-text\\\">\\n <input type=\\\"checkbox\\\" aria-label=\\\"\\\" [(disabled)] = \\\"invSrv.isInvoiceStarted\\\" (change)=\\\"selectCurrent()\\\">\\n </div>\\n </div>\\n <div class=\\\"input-group-prepend\\\">\\n <label class=\\\"input-group-text\\\" for=\\\"protocol\\\">Siguiente número para Facturas de Cobro</label>\\n </div>\\n <input type=\\\"text\\\" class=\\\"form-control\\\" #invcurrent=\\\"ngModel\\\" [(disabled)]=\\\"!activateCurrent\\\"\\n [(ngModel)]=\\\"invSrv.setting.InvCurrent\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"setCurrent()\\\"\\n [(disabled)]=\\\"!activateCurrent\\\">Asignar</button>\\n </div>\\n </div>\\n <div class=\\\"row d-flex justify-content-end mr-1\\\">\\n <div class=\\\"form-group\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Guardar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancelar</button>\\n </div>\\n </div>\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2ludm9pY2UtbnVtYmVyL2ludm9pY2UvaW52b2ljZS5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, Output, OnDestroy } from '@angular/core';\nimport { SettingsService } from '../settings.service';\nimport { Subscriber, Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-invoice',\n templateUrl: './invoice.component.html',\n styleUrls: ['./invoice.component.scss']\n})\nexport class InvoiceComponent implements OnInit, OnDestroy {\n\n activateCurrent: Boolean = false;\n sub: Subscription;\n\n constructor(private invSrv: SettingsService) { }\n ngOnDestroy() {\n this.sub.unsubscribe();\n }\n ngOnInit() {\n this.invSrv.loadConfig().subscribe(result => {\n if (result) {\n this.invSrv.setting = result;\n }\n });\n this.invSrv.loadINVCurrent().subscribe(result => {\n if (result) {\n this.invSrv.setting.InvCurrent = result;\n }\n });\n\n this.sub = this.invSrv.getCursors()\n .subscribe((data) => {\n });\n this.invSrv.Isaved = false;\n this.invSrv.Csaved = false;\n this.invSrv.Dsaved = false;\n\n this.invSrv.Ierror = false;\n this.invSrv.Cerror = false;\n this.invSrv.Derror = false;\n\n this.invSrv.invCSaved = false;\n this.invSrv.dbnCSaved = false;\n this.invSrv.cdmCSaved = false;\n\n this.invSrv.invCError = false;\n this.invSrv.dbnCError = false;\n this.invSrv.cdmCError = false;\n }\n onChangeStart(event) {\n const st = this.invSrv.setting.invoicePackageNumberStart;\n this.invSrv.setting.invoicePackageNumberStart = `${st.slice(0, 3)}-${st.slice(3, 6)}-${st.slice(6, 8)}-${st.slice(8, st.length)}`;\n }\n onChangeEnd(event) {\n const end = this.invSrv.setting.invoicePackageNumberEnd;\n this.invSrv.setting.invoicePackageNumberEnd = `${end.slice(0, 3)}-${end.slice(3, 6)}-${end.slice(6, 8)}-${end.slice(8, end.length)}`;\n }\n save() {\n this.invSrv.saveConfig().subscribe(result => {\n this.invSrv.Isaved = false;\n this.invSrv.Ierror = false;\n if (result) {\n this.invSrv.Isaved = result.resp;\n this.invSrv.Ierror = false;\n } else {\n this.invSrv.Isaved = false;\n this.invSrv.Ierror = false;\n }\n }, err => {\n if (err) {\n this.invSrv.Isaved = false;\n this.invSrv.Ierror = true;\n }\n });\n }\n setCurrent() {\n this.invSrv.invCError = false;\n this.invSrv.invCSaved = false;\n this.invSrv.saveINVCurrent().subscribe(result => {\n if (result) {\n this.invSrv.invCSaved = result.resp;\n this.invSrv.invCError = false;\n } else {\n this.invSrv.invCError = false;\n this.invSrv.invCSaved = false;\n }\n }, err => {\n if (err) {\n this.invSrv.invCSaved = false;\n this.invSrv.invCError = true;\n }\n });\n }\n selectCurrent() {\n if (this.activateCurrent) {\n this.activateCurrent = false;\n } else {\n this.activateCurrent = true;\n }\n }\n cancel() {\n window.close();\n }\n\n}\n","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n <ul class=\\\"nav nav-tabs pills mb-5\\\" id=\\\"nav-tab\\\" role=\\\"tablist\\\">\\r\\n \\r\\n <li class=\\\"nav-item\\\">\\r\\n <a class=\\\"nav-link\\\" [ngClass]=\\\"{'active': tab === 'status'}\\\" id=\\\"status\\\" [routerLink]=\\\"['./status']\\\" (click)=\\\"onClick($event)\\\">Estado de procesos</a>\\r\\n </li>\\r\\n \\r\\n <li class=\\\"nav-item\\\">\\r\\n <a class=\\\"nav-link\\\" [ngClass]=\\\"{'active': tab === 'invoice'}\\\" id=\\\"invoice\\\" [routerLink]=\\\"['./invoice']\\\" (click)=\\\"onClick($event)\\\">Facturas</a>\\r\\n </li>\\r\\n \\r\\n <li class=\\\"nav-item\\\">\\r\\n <a class=\\\"nav-link\\\" [ngClass]=\\\"{'active': tab === 'dbni'}\\\" id=\\\"dbni\\\" [routerLink]=\\\"['./debitnote']\\\" (click)=\\\"onClick($event)\\\">Notas Débito</a>\\r\\n </li>\\r\\n \\r\\n <li class=\\\"nav-item\\\">\\r\\n <a class=\\\"nav-link\\\" [ngClass]=\\\"{'active': tab === 'cdm'}\\\" id=\\\"cdm\\\" [routerLink]=\\\"['./creditmemo']\\\" (click)=\\\"onClick($event)\\\">Notas Crédito</a>\\r\\n </li>\\r\\n \\r\\n <li class=\\\"nav-item\\\"\\r\\n *ngIf=\\\"invSrv.setting.invoicePackageEmailNotificationActive || invSrv.setting.debitNotePackageEmailNotificationActive || invSrv.setting.creditMemoPackageEmailNotificationActive\\\">\\r\\n <a class=\\\"nav-link\\\" [ngClass]=\\\"{'active': tab === 'email'}\\\" id=\\\"email\\\" [routerLink]=\\\"['./email']\\\" (click)=\\\"onClick($event)\\\">Correo electrónico</a>\\r\\n </li>\\r\\n </ul>\\r\\n <router-outlet></router-outlet>\\r\\n </div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2ludm9pY2UtbnVtYmVyL3NldHRpbmcvc2V0dGluZy5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, Output, OnDestroy } from '@angular/core';\nimport { InvoiceSettings } from '../settings';\nimport { SettingsService } from '../settings.service';\nimport { Router } from '@angular/router';\nimport { throttleTime } from 'rxjs/operators';\nimport { Subscriber, Subscription } from 'rxjs';\n\n@Component({\n selector: 'app-setting',\n templateUrl: './setting.component.html',\n styleUrls: ['./setting.component.scss']\n})\nexport class SettingComponent implements OnInit, OnDestroy {\n\n tab: String = 'status';\n sub: Subscription;\n\n constructor(private invSrv: SettingsService, private router: Router) {\n }\n\n ngOnInit() {\n this.router.navigateByUrl('inv-setting');\n this.invSrv.loadConfig().subscribe(result => {\n if (result) {\n this.invSrv.setting = result;\n }\n });\n this.sub = this.invSrv.getCursors()\n .subscribe((data) => {\n });\n }\n ngOnDestroy() {\n this.sub.unsubscribe();\n }\n\n onClick($e) {\n // console.log($e.target.id);\n this.tab = $e.target.id;\n }\n\n}\n","import { Injectable } from '@angular/core';\nimport { InvoiceSettings } from './settings';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, Observer } from 'rxjs';\n\nimport * as io from 'socket.io-client';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SettingsService {\n\n setting: InvoiceSettings;\n Isaved: Boolean = false;\n Csaved: Boolean = false;\n Dsaved: Boolean = false;\n\n Ierror: Boolean = false;\n Cerror: Boolean = false;\n Derror: Boolean = false;\n\n invCSaved: Boolean = false;\n dbnCSaved: Boolean = false;\n cdmCSaved: Boolean = false;\n\n invCError: Boolean = false;\n dbnCError: Boolean = false;\n cdmCError: Boolean = false;\n\n socket: io;\n\n isInvoiceStarted: Boolean = false;\n isCreditMemoStarted: Boolean = false;\n isDebitNoteStarted: Boolean = false;\n\n url: String;\n\n\n constructor(private http: HttpClient) {\n this.setting = new InvoiceSettings();\n this.http.get<any>('./getURL').subscribe((data) => {\n this.url = data.url;\n });\n }\n\n getCursors(): Observable<any> {\n return Observable.create((observer) => {\n this.socket = io(this.url);\n this.socket.on('InvCurrent', (InvCurrent) => {\n this.setting.InvCurrent = InvCurrent;\n observer.next(InvCurrent);\n });\n this.socket.on('DBNCurrent', (DBNCurrent) => {\n this.setting.DBNCurrent = DBNCurrent;\n observer.next(DBNCurrent);\n });\n this.socket.on('CDMCurrent', (CDMCurrent) => {\n this.setting.CDMCurrent = CDMCurrent;\n observer.next(CDMCurrent);\n });\n });\n }\n\n saveConfig(): Observable<any> {\n return this.http.post<InvoiceSettings>('./integration/setting', { setting: this.setting });\n }\n loadConfig(): Observable<InvoiceSettings> {\n return this.http.get<InvoiceSettings>('./integration/setting');\n }\n saveINVCurrent(): Observable<any> {\n return this.http.post<InvoiceSettings>('./integration/invcurrent', { current: this.setting.InvCurrent });\n }\n saveDBNCurrent(): Observable<any> {\n return this.http.post<InvoiceSettings>('./integration/dbncurrent', { current: this.setting.DBNCurrent });\n }\n saveCDMCurrent(): Observable<any> {\n return this.http.post<InvoiceSettings>('./integration/cdmcurrent', { current: this.setting.CDMCurrent });\n }\n loadINVCurrent(): Observable<Number> {\n return this.http.get<Number>('./integration/invcurrent');\n }\n loadDBNCurrent(): Observable<Number> {\n return this.http.get<Number>('./integration/dbncurrent');\n }\n loadCDMCurrent(): Observable<Number> {\n return this.http.get<Number>('./integration/cdmcurrent');\n }\n startProcess(): Observable<any> {\n return this.http.get<any>('./integration/start-process');\n }\n stopProcess(): Observable<any> {\n return this.http.get<any>('./integration/stop-process');\n }\n checkProcessStatuss(): Observable<any> {\n return this.http.get<any>('./integration/get-status-process');\n }\n startINV(): Observable<any> {\n return this.http.get<any>('./integration/start-inv-process');\n }\n stopINV(): Observable<any> {\n return this.http.get<any>('./integration/stop-inv-process');\n }\n startDBN(): Observable<any> {\n return this.http.get<any>('./integration/start-dbn-process');\n }\n stopDBN(): Observable<any> {\n return this.http.get<any>('./integration/stop-dbn-process');\n }\n startCDM(): Observable<any> {\n return this.http.get<any>('./integration/start-cdm-process');\n }\n stopCDM(): Observable<any> {\n return this.http.get<any>('./integration/stop-cdm-process');\n }\n\n\n\n}\n","export class InvoiceSettings {\n\n invoiceCanStart: Boolean = false;\n debitNoteCanStart: Boolean = false;\n creditMemoCanStart: Boolean = false;\n\n invoicePackageNumberStart: String = '0';\n invoiceCAI: String = '';\n invoicePackageNumberEnd: String = '0';\n invoicePackageEmailNotificationActive: Boolean = false;\n invoicePackageEmailNotificationNumber: Number = 0;\n invoicePackageExpirationDate: Date = new Date();\n invoiceFactorExcecutionTime: String = 'min';\n invoiceValueExcecutionTime: Number = 1;\n InvCurrent: Number;\n\n debitNotePackageNumberStart: String = '0';\n debitNoteCAI: String = '';\n debitNotePackageNumberEnd: String = '0';\n debitNotePackageEmailNotificationActive: Boolean = false;\n debitNotePackageEmailNotificationNumber: Number = 0;\n debitNotePackageExpirationDate: Date = new Date();\n debitNoteFactorExcecutionTime: String = 'min';\n debitNoteValueExcecutionTime: Number = 1;\n DBNCurrent: Number;\n\n creditMemoPackageNumberStart: String = '0';\n creditMemoCAI: String = '';\n creditMemoPackageNumberEnd: String = '0';\n creditMemoPackageEmailNotificationActive: Boolean = false;\n creditMemoPackageEmailNotificationNumber: Number = 0;\n creditMemoPackageExpirationDate: Date = new Date();\n creditMemoFactorExcecutionTime: String = 'min';\n creditMemoValueExcecutionTime: Number = 1;\n CDMCurrent: Number;\n\n}\n","module.exports = \"<div class=\\\"container-fluid\\\">\\n <!-- <div class=\\\"tab-pane\\\">\\n <div role=\\\"tabpanel\\\" class=\\\"tab-pane\\\" id=\\\"status\\\" aria-labelledby=\\\"status-tab\\\"> -->\\n <div class=\\\"row\\\">\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-dark\\\" role=\\\"alert\\\">Proceso de Facturas de Cobro</div>\\n </div>\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-success d-flex justify-content-center\\\" *ngIf=\\\"invSrv.isInvoiceStarted\\\">\\n En ejecución\\n </div>\\n <div class=\\\"alert alert-danger d-flex justify-content-center\\\" *ngIf=\\\"!invSrv.isInvoiceStarted\\\">\\n Detenido\\n </div>\\n </div>\\n <div class=\\\"col flex-column justify-content-center\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-primary btn-lg\\\" (click)=\\\"startInvoice()\\\"\\n [(disabled)]=\\\"!invSrv.setting.invoiceCanStart\\\" *ngIf=\\\"!invSrv.isInvoiceStarted\\\">Iniciar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger btn-lg\\\" (click)=\\\"stopInvoice()\\\"\\n *ngIf=\\\"invSrv.isInvoiceStarted\\\">Detener</button>\\n </div>\\n </div>\\n\\n <div class=\\\"row\\\">\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-dark\\\" role=\\\"alert\\\">Proceso Notas de Débito</div>\\n </div>\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-success d-flex justify-content-center\\\" *ngIf=\\\"invSrv.isDebitNoteStarted\\\">\\n En ejecución\\n </div>\\n <div class=\\\"alert alert-danger d-flex justify-content-center\\\" *ngIf=\\\"!invSrv.isDebitNoteStarted\\\">\\n Detenido\\n </div>\\n </div>\\n <div class=\\\"col flex-column justify-content-center\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-primary btn-lg\\\" (click)=\\\"startDBN()\\\"\\n [(disabled)]=\\\"!invSrv.setting.debitNoteCanStart\\\" *ngIf=\\\"!invSrv.isDebitNoteStarted\\\">Iniciar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger btn-lg\\\" (click)=\\\"stopDBN()\\\"\\n *ngIf=\\\"invSrv.isDebitNoteStarted\\\">Detener</button>\\n </div>\\n </div>\\n\\n <div class=\\\"row\\\">\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-dark\\\" role=\\\"alert\\\">Proceso Notas de Crédito</div>\\n </div>\\n <div class=\\\"col\\\">\\n <div class=\\\"alert alert-success d-flex justify-content-center\\\" *ngIf=\\\"invSrv.isCreditMemoStarted\\\">\\n En ejecución\\n </div>\\n <div class=\\\"alert alert-danger d-flex justify-content-center\\\" *ngIf=\\\"!invSrv.isCreditMemoStarted\\\">\\n Detenido\\n </div>\\n </div>\\n <div class=\\\"col flex-column justify-content-center\\\">\\n <button type=\\\"button\\\" class=\\\"btn btn-primary btn-lg\\\" (click)=\\\"startCDM()\\\"\\n [(disabled)]=\\\"!invSrv.setting.creditMemoCanStart\\\" *ngIf=\\\"!invSrv.isCreditMemoStarted\\\">Iniciar</button>\\n <button type=\\\"button\\\" class=\\\"btn btn-danger btn-lg\\\" (click)=\\\"stopCDM()\\\"\\n *ngIf=\\\"invSrv.isCreditMemoStarted\\\">Detener</button>\\n </div>\\n </div>\\n </div>\\n <!-- </div>\\n</div> -->\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2ludm9pY2UtbnVtYmVyL3N0YXR1cy9zdGF0dXMuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { SettingsService } from '../settings.service';\n\n@Component({\n selector: 'app-status',\n templateUrl: './status.component.html',\n styleUrls: ['./status.component.scss']\n})\nexport class StatusComponent implements OnInit {\n\n constructor(private invSrv: SettingsService) { }\n\n ngOnInit() {\n this.readStatus();\n }\n readStatus() {\n this.invSrv.checkProcessStatuss().subscribe(result => {\n this.invSrv.isInvoiceStarted = result.isInvoiceStarted;\n this.invSrv.isDebitNoteStarted = result.isDebitNoteStarted;\n this.invSrv.isCreditMemoStarted = result.isCreditMemoStarted;\n });\n }\n startInvoice() {\n this.invSrv.startINV().subscribe(result => {\n if (result) {\n this.invSrv.isInvoiceStarted = result.success;\n }\n });\n }\n stopInvoice() {\n this.invSrv.stopINV().subscribe(result => {\n if (result) {\n this.invSrv.isInvoiceStarted = result.isInvoiceStarted;\n }\n this.readStatus();\n });\n }\n startDBN() {\n this.invSrv.startDBN().subscribe(result => {\n if (result) {\n this.invSrv.isDebitNoteStarted = result.success;\n }\n this.readStatus();\n });\n }\n stopDBN() {\n this.invSrv.stopDBN().subscribe(result => {\n if (result) {\n this.invSrv.isDebitNoteStarted = result.isDebitNoteStarted;\n }\n this.readStatus();\n });\n }\n startCDM() {\n this.invSrv.startCDM().subscribe(result => {\n if (result) {\n this.invSrv.isCreditMemoStarted = result.success;\n }\n this.readStatus();\n });\n }\n stopCDM() {\n this.invSrv.stopCDM().subscribe(result => {\n if (result) {\n this.invSrv.isCreditMemoStarted = result.isCreditMemoStarted;\n }\n this.readStatus();\n });\n }\n\n}\n","module.exports = \"<div class=\\\"container-fluid\\\">\\r\\n\\r\\n <div class=\\\"alert alert-success\\\" role=\\\"alert\\\" *ngIf=\\\"success\\\">\\r\\n Configuration was saved succesfully.\\r\\n </div>\\r\\n <div class=\\\"alert alert-danger\\\" role=\\\"alert\\\" *ngIf=\\\"error\\\">\\r\\n Configuration was not saved successfully.\\r\\n </div>\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-center\\\">\\r\\n <h5>PGP Security configuration</h5>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"inputGroupFilePubkeyFile\\\">PGP Public Key</span>\\r\\n </div>\\r\\n <div class=\\\"custom-file\\\">\\r\\n <input type=\\\"file\\\" class=\\\"custom-file-input\\\" id=\\\"pubkeyFile\\\" aria-describedby=\\\"inputGroupFilePubkeyFile\\\" (change)=\\\"keysFile($event)\\\">\\r\\n <label class=\\\"custom-file-label\\\" for=\\\"pubkeyFile\\\">{{pgpSettings.pubkeyFileName}}</label>\\r\\n </div>\\r\\n </div>\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"inputGroupFilePrivkeyFile\\\">PGP Private Key</span>\\r\\n </div>\\r\\n <div class=\\\"custom-file\\\">\\r\\n <input type=\\\"file\\\" class=\\\"custom-file-input\\\" id=\\\"privkeyFile\\\" aria-describedby=\\\"inputGroupFilePrivkeyFile\\\"\\r\\n (change)=\\\"keysFile($event)\\\">\\r\\n <label class=\\\"custom-file-label\\\" for=\\\"privkeyFile\\\" aria-placeholder=\\\"Choose file\\\">{{pgpSettings.privkeyFileName}}</label>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"input-group mb-3\\\">\\r\\n <div class=\\\"input-group-prepend\\\">\\r\\n <span class=\\\"input-group-text\\\" id=\\\"username\\\">Passphrase</span>\\r\\n </div>\\r\\n <input type=\\\"password\\\" class=\\\"form-control\\\" id=\\\"username\\\" #username=\\\"ngModel\\\" [(ngModel)]=\\\"pgpSettings.passphrase\\\">\\r\\n </div>\\r\\n\\r\\n\\r\\n <div class=\\\"row d-flex justify-content-end\\\">\\r\\n <div class=\\\"form-group\\\">\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-success ml-2\\\" (click)=\\\"save()\\\" [(disabled)]=\\\"cantSave\\\">Save</button>\\r\\n <button type=\\\"button\\\" class=\\\"btn btn-danger ml-2\\\" (click)=\\\"cancel()\\\">Cancel</button>\\r\\n </div>\\r\\n </div>\\r\\n\\r\\n <div>{{pgpSettings.pubkeyFilePath}}</div>\\r\\n\\r\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BncHNldHRpbmdzL3BncHNldHRpbmdzLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FileUploader } from 'ng2-file-upload/ng2-file-upload';\r\nimport { PgpsettingsModel } from './pgpsettings';\r\nimport { PgpsettingsService } from './pgpsettings.service';\r\n\r\n@Component({\r\n selector: 'app-pgpsettings',\r\n templateUrl: './pgpsettings.component.html',\r\n styleUrls: ['./pgpsettings.component.scss']\r\n})\r\nexport class PgpsettingsComponent implements OnInit {\r\n\r\n pgpSettings: PgpsettingsModel = new PgpsettingsModel();\r\n saved: Boolean = false;\r\n pbkUploaded: Boolean = false;\r\n pvkUploaded: Boolean = false;\r\n\r\n error: Boolean = false;\r\n success: Boolean = false;\r\n\r\n constructor(private pgpSrv: PgpsettingsService) { }\r\n\r\n ngOnInit() {\r\n this.pgpSrv.loadConfig()\r\n .subscribe((conf) => {\r\n if (conf) {\r\n this.pgpSettings = conf;\r\n } else {\r\n this.pgpSettings = new PgpsettingsModel();\r\n }\r\n });\r\n }\r\n\r\n keysFile(event) {\r\n this.saved = false;\r\n this.pbkUploaded = false;\r\n this.pvkUploaded = false;\r\n\r\n this.error = false;\r\n this.success = false;\r\n\r\n if (event.currentTarget.id === 'pubkeyFile') {\r\n this.pgpSettings.pubkeyFileName = event.target.files[0].name;\r\n this.pgpSettings.pubkeyFile = event.target.files[0];\r\n this.pgpSrv.pushPGPFile(this.pgpSettings, event.currentTarget.id).subscribe(response => {\r\n this.pbkUploaded = true;\r\n }, error => {\r\n this.error = true;\r\n this.pbkUploaded = false;\r\n });\r\n } else if (event.currentTarget.id === 'privkeyFile') {\r\n this.pgpSettings.privkeyFileName = event.target.files[0].name;\r\n this.pgpSettings.privkeyFile = event.target.files[0];\r\n this.pgpSrv.pushPGPFile(this.pgpSettings, event.currentTarget.id).subscribe(response => {\r\n this.pvkUploaded = true;\r\n }, error => {\r\n this.error = true;\r\n this.pvkUploaded = false;\r\n });\r\n }\r\n }\r\n\r\n save() {\r\n this.saved = false;\r\n this.pbkUploaded = false;\r\n this.pvkUploaded = false;\r\n\r\n this.error = false;\r\n this.success = false;\r\n this.pgpSrv.PGPSend(this.pgpSettings).subscribe(response => {\r\n this.saved = response;\r\n if (this.saved && this.pbkUploaded && this.pvkUploaded) {\r\n this.success = true;\r\n }\r\n }, error => {\r\n this.saved = false;\r\n this.error = true;\r\n });\r\n }\r\n\r\n cancel() {\r\n window.close();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpEvent, HttpRequest, HttpClient } from '@angular/common/http';\r\nimport { PgpsettingsModel } from './pgpsettings';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PgpsettingsService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n pushPGPFile(pgpSetting: PgpsettingsModel, fieldname): Observable<HttpEvent<{}>> {\r\n const formdata: FormData = new FormData();\r\n if (fieldname === 'pubkeyFile') {\r\n formdata.append('file', pgpSetting.pubkeyFile, pgpSetting.pubkeyFileName);\r\n } else if (fieldname === 'privkeyFile') {\r\n formdata.append('file', pgpSetting.privkeyFile, pgpSetting.privkeyFileName);\r\n }\r\n\r\n const req = new HttpRequest('POST', './api/pgp/upload', formdata, {\r\n reportProgress: true,\r\n responseType: 'text'\r\n });\r\n\r\n return this.http.request(req);\r\n }\r\n\r\n PGPSend(pgpSetting: PgpsettingsModel): Observable<any> {\r\n return this.http.post<any>('./api/pgp/save', { pgpSetting: pgpSetting });\r\n }\r\n\r\n loadConfig(): Observable<PgpsettingsModel> {\r\n return this.http.get<PgpsettingsModel>('./api/pgp/config');\r\n }\r\n}\r\n","export class PgpsettingsModel {\r\n passphrase: string = '';\r\n pubkeyFileName: string = '';\r\n pubkeyFile: File;\r\n privkeyFileName: string = '';\r\n privkeyFile: File;\r\n}\r\n","module.exports = \"<div class=\\\"container mt-5\\\">\\r\\n <div class=\\\"row\\\" *ngIf=\\\"showNavbar\\\">\\r\\n\\r\\n <nav class=\\\"navbar navbar-expand-lg navbar-light bg-light\\\">\\r\\n <button class=\\\"navbar-toggler\\\" type=\\\"button\\\" data-toggle=\\\"collapse\\\" data-target=\\\"#navbarSupportedContent\\\"\\r\\n aria-controls=\\\"navbarSupportedContent\\\" aria-expanded=\\\"false\\\" aria-label=\\\"Toggle navigation\\\">\\r\\n <span class=\\\"navbar-toggler-icon\\\"></span>\\r\\n </button>\\r\\n\\r\\n <div class=\\\"collapse navbar-collapse\\\" id=\\\"navbarSupportedContent\\\">\\r\\n <ul class=\\\"navbar-nav mr-auto\\\">\\r\\n\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#\\\"><i class=\\\"fa fa-home\\\" aria-hidden=\\\"true\\\"></i> Home</a>\\r\\n </li>\\r\\n\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#config\\\"><i class=\\\"fa fa-wrench\\\" aria-hidden=\\\"true\\\"></i> Setting</a>\\r\\n </li>\\r\\n\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#ftp\\\"><i class=\\\"fa fa-wrench\\\" aria-hidden=\\\"true\\\"></i> FTP Setting</a>\\r\\n </li>\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#api\\\"><i class=\\\"fa fa-wrench\\\" aria-hidden=\\\"true\\\"></i> API Setting</a>\\r\\n </li>\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#email\\\"><i class=\\\"fa fa-wrench\\\" aria-hidden=\\\"true\\\"></i> Email Setting</a>\\r\\n </li>\\r\\n <li class=\\\"nav-item active\\\">\\r\\n <a class=\\\"nav-link\\\" href=\\\"#inv-setting\\\"><i class=\\\"fa fa-wrench\\\" aria-hidden=\\\"true\\\"></i> Invoice Number\\r\\n Setting</a>\\r\\n </li>\\r\\n </ul>\\r\\n </div>\\r\\n </nav>\\r\\n </div>\\r\\n\\r\\n <div class=\\\"jumbotron jumbotron-fluid\\\">\\r\\n <router-outlet></router-outlet>\\r\\n </div>\\r\\n</div>\"","module.exports = \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3Jvb3Qvcm9vdC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { RootService } from './root.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './root.component.html',\r\n styleUrls: ['./root.component.scss']\r\n})\r\nexport class RootComponent implements OnInit {\r\n\r\n showNavbar: Boolean = false;\r\n\r\n constructor(private rootSrv: RootService) { }\r\n\r\n ngOnInit() {\r\n this.rootSrv.testEnviroment().subscribe(result => {\r\n if (result.env === 'dev') {\r\n this.showNavbar = true;\r\n } else {\r\n this.showNavbar = false;\r\n }\r\n });\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RootService {\n\n constructor(private http: HttpClient) { }\n\n testEnviroment(): Observable<any> {\n return this.http.get('./test');\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","/* (ignored) */"],"sourceRoot":""}
|