{"version":3,"file":"mayvio-ui-angular-progress-bar.mjs","sources":["../../src/progress-bar/progress-bar.component.ts","../../src/progress-bar/mayvio-ui-angular-progress-bar.ts"],"sourcesContent":["import {\n  Component,\n  Input,\n  OnChanges,\n  ChangeDetectionStrategy,\n  signal,\n  computed,\n} from '@angular/core';\n\n@Component({\n  selector: 'mv-progress-bar',\n  standalone: true,\n  template: `\n    <div\n      [class]=\"hostClass()\"\n      role=\"progressbar\"\n      [attr.aria-valuemin]=\"0\"\n      [attr.aria-valuemax]=\"_max()\"\n      [attr.aria-valuenow]=\"ariaValueNow()\"\n    >\n      <div\n        [class]=\"\n          _indeterminate()\n            ? 'mv-progress-bar__track mv-progress-bar__track--indeterminate'\n            : 'mv-progress-bar__track'\n        \"\n      >\n        <div class=\"mv-progress-bar__fill\" [style.width]=\"fillWidth()\"></div>\n      </div>\n    </div>\n  `,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ProgressBarComponent implements OnChanges {\n  @Input() value = 0;\n  @Input() max = 100;\n  @Input() size: 'sm' | 'md' | 'lg' = 'md';\n  @Input() indeterminate = false;\n\n  readonly _value = signal<number>(0);\n  readonly _max = signal<number>(100);\n  readonly _size = signal<'sm' | 'md' | 'lg'>('md');\n  readonly _indeterminate = signal<boolean>(false);\n\n  ngOnChanges(): void {\n    this._value.set(this.value);\n    this._max.set(this.max);\n    this._size.set(this.size);\n    this._indeterminate.set(this.indeterminate);\n  }\n\n  readonly hostClass = computed(() => {\n    return `mv-progress-bar mv-progress-bar--${this._size()}`;\n  });\n\n  readonly percentage = computed(() => {\n    if (this._indeterminate()) return undefined;\n    const val = this._value();\n    const maxVal = this._max();\n    return Math.min(100, Math.max(0, (val / maxVal) * 100));\n  });\n\n  readonly fillWidth = computed(() => {\n    const pct = this.percentage();\n    return pct !== undefined ? `${pct}%` : undefined;\n  });\n\n  readonly ariaValueNow = computed(() => {\n    const pct = this.percentage();\n    return pct !== undefined ? this._value() : undefined;\n  });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAiCa,oBAAoB,CAAA;IACtB,KAAK,GAAG,CAAC;IACT,GAAG,GAAG,GAAG;IACT,IAAI,GAAuB,IAAI;IAC/B,aAAa,GAAG,KAAK;AAErB,IAAA,MAAM,GAAG,MAAM,CAAS,CAAC,6EAAC;AAC1B,IAAA,IAAI,GAAG,MAAM,CAAS,GAAG,2EAAC;AAC1B,IAAA,KAAK,GAAG,MAAM,CAAqB,IAAI,4EAAC;AACxC,IAAA,cAAc,GAAG,MAAM,CAAU,KAAK,qFAAC;IAEhD,WAAW,GAAA;QACT,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;IAC7C;AAES,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AACjC,QAAA,OAAO,oCAAoC,IAAI,CAAC,KAAK,EAAE,EAAE;AAC3D,IAAA,CAAC,gFAAC;AAEO,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAK;QAClC,IAAI,IAAI,CAAC,cAAc,EAAE;AAAE,YAAA,OAAO,SAAS;AAC3C,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;AACzB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE;QAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,MAAM,IAAI,GAAG,CAAC,CAAC;AACzD,IAAA,CAAC,iFAAC;AAEO,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AACjC,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE;AAC7B,QAAA,OAAO,GAAG,KAAK,SAAS,GAAG,CAAA,EAAG,GAAG,CAAA,CAAA,CAAG,GAAG,SAAS;AAClD,IAAA,CAAC,gFAAC;AAEO,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACpC,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE;AAC7B,QAAA,OAAO,GAAG,KAAK,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS;AACtD,IAAA,CAAC,mFAAC;wGArCS,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,IAAA,EAAA,MAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EArBrB;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAGU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAxBhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;sBAEE;;sBACA;;sBACA;;sBACA;;;ACrCH;;AAEG;;;;"}