{"version":3,"file":"primeng-progressbar.mjs","sources":["../../src/progressbar/style/progressbarstyle.ts","../../src/progressbar/progressbar.ts","../../src/progressbar/primeng-progressbar.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/progressbar';\nimport { BaseStyle } from 'primeng/base';\n\nconst classes = {\n    root: ({ instance }) => [\n        'p-progressbar p-component',\n        {\n            'p-progressbar-determinate': instance.mode == 'determinate',\n            'p-progressbar-indeterminate': instance.mode == 'indeterminate'\n        }\n    ],\n    value: 'p-progressbar-value',\n    label: 'p-progressbar-label'\n};\n\n@Injectable()\nexport class ProgressBarStyle extends BaseStyle {\n    name = 'progressbar';\n\n    style = style;\n\n    classes = classes;\n}\n\n/**\n *\n * ProgressBar is a process status indicator.\n *\n * [Live Demo](https://www.primeng.org/progressbar)\n *\n * @module progressbarstyle\n *\n */\nexport enum ProgressBarClasses {\n    /**\n     * Class name of the root element\n     */\n    root = 'p-progressbar',\n    /**\n     * Class name of the value element\n     */\n    value = 'p-progressbar-value',\n    /**\n     * Class name of the label element\n     */\n    label = 'p-progressbar-label'\n}\n\nexport interface ProgressBarStyle extends BaseStyle {}\n","import { CommonModule } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, inject, InjectionToken, Input, NgModule, numberAttribute, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent, PARENT_INSTANCE } from 'primeng/basecomponent';\nimport { Bind } from 'primeng/bind';\nimport { ProgressBarContentTemplateContext, ProgressBarPassThrough } from 'primeng/types/progressbar';\nimport { ProgressBarStyle } from './style/progressbarstyle';\n\nconst PROGRESSBAR_INSTANCE = new InjectionToken<ProgressBar>('PROGRESSBAR_INSTANCE');\n\n/**\n * ProgressBar is a process status indicator.\n * @group Components\n */\n@Component({\n    selector: 'p-progressBar, p-progressbar, p-progress-bar',\n    standalone: true,\n    imports: [CommonModule, SharedModule, Bind],\n    template: `\n        <div *ngIf=\"mode === 'determinate'\" [class]=\"cn(cx('value'), valueStyleClass)\" [pBind]=\"ptm('value')\" [style.width]=\"value + '%'\" [style.display]=\"'flex'\" [style.background]=\"color\" [attr.data-p]=\"dataP\">\n            <div [class]=\"cx('label')\" [pBind]=\"ptm('label')\" [attr.data-p]=\"dataP\">\n                <div *ngIf=\"showValue && !contentTemplate && !_contentTemplate\" [style.display]=\"value != null && value !== 0 ? 'flex' : 'none'\">{{ value }}{{ unit }}</div>\n                <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate; context: { $implicit: value }\"></ng-container>\n            </div>\n        </div>\n        <div *ngIf=\"mode === 'indeterminate'\" [class]=\"cn(cx('value'), valueStyleClass)\" [pBind]=\"ptm('value')\" [style.background]=\"color\" [attr.data-p]=\"dataP\"></div>\n    `,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    providers: [ProgressBarStyle, { provide: PROGRESSBAR_INSTANCE, useExisting: ProgressBar }, { provide: PARENT_INSTANCE, useExisting: ProgressBar }],\n    host: {\n        role: 'progressbar',\n        '[attr.aria-valuemin]': '0',\n        '[attr.aria-valuenow]': 'value',\n        '[attr.aria-valuemax]': '100',\n        '[attr.aria-level]': 'value + unit',\n        '[class]': \"cn(cx('root'), styleClass)\",\n        '[attr.data-p]': 'dataP'\n    },\n    hostDirectives: [Bind]\n})\nexport class ProgressBar extends BaseComponent<ProgressBarPassThrough> {\n    componentName = 'ProgressBar';\n\n    $pcProgressBar: ProgressBar | undefined = inject(PROGRESSBAR_INSTANCE, { optional: true, skipSelf: true }) ?? undefined;\n\n    bindDirectiveInstance = inject(Bind, { self: true });\n\n    /**\n     * Current value of the progress.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) value: number | undefined;\n    /**\n     * Whether to display the progress bar value.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) showValue: boolean = true;\n    /**\n     * Style class of the element.\n     * @deprecated since v20.0.0, use `class` instead.\n     * @group Props\n     */\n    @Input() styleClass: string | undefined;\n    /**\n     * Style class of the value element.\n     * @group Props\n     */\n    @Input() valueStyleClass: string | undefined;\n    /**\n     * Unit sign appended to the value.\n     * @group Props\n     */\n    @Input() unit: string = '%';\n    /**\n     * Defines the mode of the progress\n     * @defaultValue 'determinate'\n     * @group Props\n     */\n    @Input() mode: 'determinate' | 'indeterminate' = 'determinate';\n    /**\n     * Color for the background of the progress.\n     * @group Props\n     */\n    @Input() color: string | undefined;\n    /**\n     * Template of the content.\n     * @param {ProgressBarContentTemplateContext} context - content context.\n     * @see {@link ProgressBarContentTemplateContext}\n     * @group Templates\n     */\n    @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<ProgressBarContentTemplateContext> | undefined;\n\n    onAfterViewChecked(): void {\n        this.bindDirectiveInstance.setAttrs(this.ptms(['host', 'root']));\n    }\n\n    _componentStyle = inject(ProgressBarStyle);\n\n    @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n    _contentTemplate: TemplateRef<ProgressBarContentTemplateContext> | undefined;\n\n    onAfterContentInit() {\n        this.templates?.forEach((item) => {\n            switch (item.getType()) {\n                case 'content':\n                    this._contentTemplate = item.template;\n                    break;\n                default:\n                    this._contentTemplate = item.template;\n            }\n        });\n    }\n\n    get dataP() {\n        return this.cn({\n            determinate: this.mode === 'determinate',\n            indeterminate: this.mode === 'indeterminate'\n        });\n    }\n}\n\n@NgModule({\n    imports: [ProgressBar, SharedModule],\n    exports: [ProgressBar, SharedModule]\n})\nexport class ProgressBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}