{"version":3,"file":"pv-frontend-pv-shared-directives-pipes-countdown.mjs","sources":["../../../projects/pv-shared-directives/pipes/countdown/countdown.pipe.ts","../../../projects/pv-shared-directives/pipes/countdown/countdown.pipe.module.ts","../../../projects/pv-shared-directives/pipes/countdown/pv-frontend-pv-shared-directives-pipes-countdown.ts"],"sourcesContent":["import { DecimalPipe } from '@angular/common';\nimport { Pipe, PipeTransform } from '@angular/core';\nimport { convertSeconds } from '@pv-frontend/pv-shared-services/utils/time';\n\n@Pipe({\n  name: 'countdownFormat',\n  pure: true,\n})\nexport class PvCountdownFormatPipe implements PipeTransform {\n  public constructor(private decimalPipe: DecimalPipe) {}\n\n  public transform(\n    secondsValue: number,\n    showZeroHours: boolean = false,\n    showZeroMinutes: boolean = true,\n    showSuffix?: boolean\n  ): string {\n    const { days, hours, minutes, seconds } = convertSeconds(secondsValue);\n\n    const daysFragment = this.evaluateAndFormat(\n      days,\n      showZeroHours,\n      showSuffix ? 'd' : ''\n    );\n    const hoursFragment = this.evaluateAndFormat(\n      hours,\n      showZeroHours,\n      showSuffix ? 'h' : ''\n    );\n    const minutesFragment = this.evaluateAndFormat(\n      minutes,\n      showZeroMinutes,\n      showSuffix ? 'm' : ''\n    );\n\n    const secondsFragment = `${this.formatValue(seconds)}${\n      showSuffix ? 's' : ''\n    }`;\n\n    return `${daysFragment}${hoursFragment}${minutesFragment}${secondsFragment}`;\n  }\n\n  private formatValue(value: number): string {\n    return this.decimalPipe.transform(value, '2.0') ?? '';\n  }\n\n  private evaluateAndFormat(\n    value: number,\n    showZeroValue: boolean,\n    suffix: string\n  ): string {\n    if ((value === 0 && showZeroValue) || value !== 0) {\n      return `${this.formatValue(value)}${suffix ? `${suffix} ` : ':'}`;\n    }\n\n    return '';\n  }\n}\n","import { DecimalPipe } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { PvCountdownFormatPipe } from './countdown.pipe';\n\n@NgModule({\n  declarations: [PvCountdownFormatPipe],\n  providers: [DecimalPipe],\n  exports: [PvCountdownFormatPipe],\n})\nexport class PvCountdownPipeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAQa,qBAAqB,CAAA;AAChC,IAAA,WAAA,CAA2B,WAAwB,EAAA;QAAxB,IAAW,CAAA,WAAA,GAAX,WAAW,CAAa;KAAI;IAEhD,SAAS,CACd,YAAoB,EACpB,aAAA,GAAyB,KAAK,EAC9B,eAAA,GAA2B,IAAI,EAC/B,UAAoB,EAAA;AAEpB,QAAA,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;QAEvE,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CACzC,IAAI,EACJ,aAAa,EACb,UAAU,GAAG,GAAG,GAAG,EAAE,CACtB,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAC1C,KAAK,EACL,aAAa,EACb,UAAU,GAAG,GAAG,GAAG,EAAE,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAC5C,OAAO,EACP,eAAe,EACf,UAAU,GAAG,GAAG,GAAG,EAAE,CACtB,CAAC;QAEF,MAAM,eAAe,GAAG,CAAG,EAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA,EAClD,UAAU,GAAG,GAAG,GAAG,EACrB,EAAE,CAAC;QAEH,OAAO,CAAA,EAAG,YAAY,CAAG,EAAA,aAAa,GAAG,eAAe,CAAA,EAAG,eAAe,CAAA,CAAE,CAAC;KAC9E;AAEO,IAAA,WAAW,CAAC,KAAa,EAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;KACvD;AAEO,IAAA,iBAAiB,CACvB,KAAa,EACb,aAAsB,EACtB,MAAc,EAAA;AAEd,QAAA,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,aAAa,KAAK,KAAK,KAAK,CAAC,EAAE;YACjD,OAAO,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,CAAA,EAAG,MAAM,CAAG,CAAA,CAAA,GAAG,GAAG,EAAE,CAAC;SACnE;AAED,QAAA,OAAO,EAAE,CAAC;KACX;8GAhDU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAArB,qBAAqB,EAAA,IAAA,EAAA,iBAAA,EAAA,CAAA,CAAA,EAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,iBAAiB;AACvB,oBAAA,IAAI,EAAE,IAAI;AACX,iBAAA,CAAA;;;MCGY,qBAAqB,CAAA;8GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAArB,qBAAqB,EAAA,YAAA,EAAA,CAJjB,qBAAqB,CAAA,EAAA,OAAA,EAAA,CAE1B,qBAAqB,CAAA,EAAA,CAAA,CAAA,EAAA;+GAEpB,qBAAqB,EAAA,SAAA,EAHrB,CAAC,WAAW,CAAC,EAAA,CAAA,CAAA,EAAA;;2FAGb,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,qBAAqB,CAAC;oBACrC,SAAS,EAAE,CAAC,WAAW,CAAC;oBACxB,OAAO,EAAE,CAAC,qBAAqB,CAAC;AACjC,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}