{"version":3,"file":"verben-workflow-ui-src-lib-components-form-timer.mjs","sources":["../../../projects/verben-workflow-ui/src/lib/components/form-timer/form-timer.component.ts","../../../projects/verben-workflow-ui/src/lib/components/form-timer/form-timer.component.html","../../../projects/verben-workflow-ui/src/lib/components/form-timer/form-timer.module.ts","../../../projects/verben-workflow-ui/src/lib/components/form-timer/verben-workflow-ui-src-lib-components-form-timer.ts"],"sourcesContent":["import { Component, Input, OnInit, OnDestroy } from '@angular/core';\nimport { interval, Subscription } from 'rxjs';\n\n@Component({\n  selector: 'app-form-timer',\n  templateUrl: './form-timer.component.html',\n  styleUrls: ['./form-timer.component.css']\n})\nexport class FormTimerComponent implements OnInit, OnDestroy {\n  @Input() expiryDate: string='2025-02-12'\n  remainingTime: any;\n  private subscription!: Subscription;\n\n  ngOnInit(): void {\n    if (this.expiryDate) {\n      this.startCountdown(new Date(this.expiryDate).getTime());\n    } else {\n      console.error('expiryDate is required');\n    }\n  }\n\n  private startCountdown(targetTime: number): void {\n    this.subscription = interval(1000).subscribe(() => {\n      const now = new Date().getTime();\n      const timeLeft = targetTime - now;\n\n      if (timeLeft <= 0) {\n        this.remainingTime = { days: 0, hours: 0, minutes: 0, seconds: 0 };\n        this.subscription.unsubscribe();\n        return;\n      }\n\n      this.remainingTime = this.calculateTimeUnits(timeLeft);\n    });\n  }\n\n  private calculateTimeUnits(timeLeft: number): any {\n    const days = Math.floor(timeLeft / (1000 * 60 * 60 * 24));\n    const hours = Math.floor((timeLeft % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\n    const minutes = Math.floor((timeLeft % (1000 * 60 * 60)) / (1000 * 60));\n    const seconds = Math.floor((timeLeft % (1000 * 60)) / 1000);\n\n    return { days, hours, minutes, seconds };\n  }\n\n  ngOnDestroy(): void {\n    if (this.subscription) {\n      this.subscription.unsubscribe();\n    }\n  }\n}\n\n","<div class=\"bg-[#fff] flex justify-center gap-4 p-6\" *ngIf=\"remainingTime\">\n  <h2 class=\"mt-3 text-lg\">Form closes in</h2>\n  <div class=\"flex items-center gap-4\">\n    <div>\n        <div class=\"flex gap-1 items-center\">\n      <p\n        class=\"bg-[#FFE681] w-[50px] font-bold text-[20px] flex items-center justify-center h-[40px] rounded-md\"\n      >\n        {{ remainingTime.days }}\n      </p>\n      <span class=\"ml-2 font-bold text-2xl\">:</span>\n      </div>\n      <span>Days</span>\n    </div>\n    <div>\n     <div class=\"flex gap-1 items-center\">\n        <p\n        class=\"bg-[#FFE681] w-[50px] font-bold text-[20px] flex items-center justify-center h-[40px] rounded-md\"\n      >\n        {{ remainingTime.hours }}\n      </p>\n      <span class=\"ml-2 font-bold text-2xl\">:</span>\n     </div>\n      <span>Hours</span>\n      \n    </div>\n    <div>\n        <div class=\"flex gap-1 items-center\">\n      <p\n        class=\"bg-[#FFE681] w-[50px] font-bold text-[20px] flex items-center justify-center h-[40px] rounded-md\"\n      >\n        {{ remainingTime.minutes }}\n      </p>\n      <span class=\"ml-2 font-bold text-2xl\">:</span>\n    </div>\n      <span>Minutes</span>\n    </div>\n    <div>\n      <p\n        class=\"bg-[#FFE681] w-[50px] font-bold text-[20px] flex items-center justify-center h-[40px] rounded-md\"\n      >\n        {{ remainingTime.seconds }}\n      </p>\n      <span>Seconds</span>\n    </div>\n  </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FormTimerComponent } from './form-timer.component';\n\n@NgModule({\n  declarations: [FormTimerComponent],\n  imports: [\n    CommonModule,\n    FormsModule,\n    ReactiveFormsModule,\n   \n   \n    \n  ],\n  exports: [FormTimerComponent],\n})\nexport class FormTimerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}