{"version":3,"file":"obelisco-angular-progress-bar.mjs","sources":["../../../projects/obelisco-angular/progress-bar/o-progress-bar.component.ts","../../../projects/obelisco-angular/progress-bar/o-progress-bar.component.html","../../../projects/obelisco-angular/progress-bar/o-progress-bar.module.ts","../../../projects/obelisco-angular/progress-bar/obelisco-angular-progress-bar.ts"],"sourcesContent":["import {\n  Component,\n  EventEmitter,\n  Input,\n  OnDestroy,\n  OnInit,\n  Output,\n} from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { AbstractStep } from 'obelisco-angular/core/abstracts';\nimport { ProgressBarTypes } from 'obelisco-angular/core/models';\nimport { StepService } from 'obelisco-angular/core/services';\n\nconst MAX_WIDTH: number = 100;\nconst INICIAL_STEP: number = 0;\n\n@Component({\n  selector: 'o-progress-bar',\n  templateUrl: './o-progress-bar.component.html',\n  styleUrls: ['./o-progress-bar.component.scss'],\n})\nexport class OProgressBarComponent\n  extends AbstractStep\n  implements OnInit, OnDestroy\n{\n  public percentage: number = 0;\n  public aux: number = 0;\n\n  @Input() public description!: string;\n  @Input() public type: ProgressBarTypes = 'primary';\n  @Input() public currentStep: number = 0;\n  @Input() public totalSteps: number = 10;\n  @Input() public customClasses: string = '';\n\n  @Output() public override stopSteps = new EventEmitter<boolean>();\n\n  private onDestroy$ = new Subject<void>();\n\n  constructor(private readonly progressBarService: StepService) {\n    super(progressBarService);\n  }\n\n  public ngOnInit(): void {\n    this.progressBarService.getNext\n      .pipe(takeUntil(this.onDestroy$))\n      .subscribe(() => {\n        this.nextStep();\n      });\n    this.progressBarService.getPrevious\n      .pipe(takeUntil(this.onDestroy$))\n      .subscribe(() => {\n        this.previousStep();\n      });\n    this.aux = MAX_WIDTH / this.totalSteps;\n    for (let i = 0; i < this.currentStep; i++) {\n      this.percentage += this.aux;\n    }\n  }\n\n  public previousStep(): void {\n    this.setpsService.isFirstStep.emit(false);\n\n    if (this.currentStep > INICIAL_STEP) {\n      this.percentage -= this.aux;\n      this.currentStep--;\n    }\n\n    if (this.currentStep === 0) {\n      this.setpsService.isFirstStep.emit(true);\n      return;\n    }\n  }\n\n  public nextStep(): void {\n    this.setpsService.isFirstStep.emit(false);\n    if (this.currentStep < this.totalSteps) {\n      this.percentage += this.aux;\n      this.currentStep++;\n    }\n    if (this.currentStep === this.totalSteps) {\n      this.stopSteps.emit(true);\n      this.setpsService.stopEmmiter.emit(true);\n      this.progressBarService.stop();\n    }\n  }\n\n  public ngOnDestroy(): void {\n    this.onDestroy$.next();\n    this.onDestroy$.complete();\n  }\n}\n","<p class=\"steps\" *ngIf=\"description\">{{ description }}</p>\n<div class=\"progress\" [ngClass]=\"customClasses\">\n  <div\n    class=\"progress-bar\"\n    role=\"progressbar\"\n    [ngClass]=\"'bg-' + type\"\n    [attr.aria-valuenow]=\"percentage | number\"\n    [style.width.%]=\"percentage | number\"\n  ></div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OProgressBarComponent } from './o-progress-bar.component';\n\n@NgModule({\n  declarations: [OProgressBarComponent],\n  imports: [CommonModule],\n  exports: [OProgressBarComponent]\n})\nexport class OProgressBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}