{"version":3,"file":"primeng-rating.umd.js","sources":["../../src/app/components/rating/rating.ts","../../src/app/components/rating/primeng-rating.ts"],"sourcesContent":["import {NgModule,Component,OnInit,Input,Output,EventEmitter,forwardRef,ChangeDetectorRef,ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\n\nexport const RATING_VALUE_ACCESSOR: any = {\n  provide: NG_VALUE_ACCESSOR,\n  useExisting: forwardRef(() => Rating),\n  multi: true\n};\n\n@Component({\n    selector: 'p-rating',\n    template: `\n        <div class=\"p-rating\" [ngClass]=\"{'p-readonly': readonly, 'p-disabled': disabled}\">\n            <span [attr.tabindex]=\"(disabled || readonly) ? null : '0'\" *ngIf=\"cancel\" (click)=\"clear($event)\" (keydown.enter)=\"clear($event)\" class=\"p-rating-icon p-rating-cancel\" [ngClass]=\"iconCancelClass\" [ngStyle]=\"iconCancelStyle\"></span>\n            <span *ngFor=\"let star of starsArray;let i=index\" class=\"p-rating-icon\" [attr.tabindex]=\"(disabled || readonly) ? null : '0'\"  (click)=\"rate($event,i)\" (keydown.enter)=\"rate($event,i)\"\n                [ngClass]=\"(!value || i >= value) ? iconOffClass : iconOnClass\"\n                [ngStyle]=\"(!value || i >= value) ? iconOffStyle : iconOnStyle\"></span>\n        </div>\n    `,\n    providers: [RATING_VALUE_ACCESSOR],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    styleUrls: ['./rating.css']\n})\nexport class Rating implements OnInit,ControlValueAccessor {\n\n    @Input() disabled: boolean;\n\n    @Input() readonly: boolean;\n\n    @Input() stars: number = 5;\n\n    @Input() cancel: boolean = true;\n\n    @Input() iconOnClass: string = 'pi pi-star';\n\n    @Input() iconOnStyle: any;\n\n    @Input() iconOffClass: string = 'pi pi-star-o';\n\n    @Input() iconOffStyle: any;\n\n    @Input() iconCancelClass: string = 'pi pi-ban';\n\n    @Input() iconCancelStyle: any;\n\n    @Output() onRate: EventEmitter<any> = new EventEmitter();\n\n    @Output() onCancel: EventEmitter<any> = new EventEmitter();\n\n    constructor(private cd: ChangeDetectorRef) {} \n    \n    value: number;\n    \n    onModelChange: Function = () => {};\n    \n    onModelTouched: Function = () => {};\n    \n    public starsArray: number[];\n    \n    ngOnInit() {\n        this.starsArray = [];\n        for(let i = 0; i < this.stars; i++) {\n            this.starsArray[i] = i;\n        }\n    }\n    \n    rate(event, i: number): void {\n        if (!this.readonly&&!this.disabled) {\n            this.value = (i + 1);\n            this.onModelChange(this.value);\n            this.onModelTouched();\n            this.onRate.emit({\n                originalEvent: event,\n                value: (i+1)\n            });\n        }\n        event.preventDefault();        \n    }\n    \n    clear(event): void {\n        if (!this.readonly&&!this.disabled) {\n            this.value = null;\n            this.onModelChange(this.value);\n            this.onModelTouched();\n            this.onCancel.emit(event);\n        }\n        event.preventDefault();\n    }\n    \n    writeValue(value: any) : void {\n        this.value = value;\n        this.cd.detectChanges();\n    }\n    \n    registerOnChange(fn: Function): void {\n        this.onModelChange = fn;\n    }\n\n    registerOnTouched(fn: Function): void {\n        this.onModelTouched = fn;\n    }\n    \n    setDisabledState(val: boolean): void {\n        this.disabled = val;\n        this.cd.markForCheck();\n    }\n}\n\n@NgModule({\n    imports: [CommonModule],\n    exports: [Rating],\n    declarations: [Rating]\n})\nexport class RatingModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["NG_VALUE_ACCESSOR","forwardRef","EventEmitter","Component","ChangeDetectionStrategy","ViewEncapsulation","Input","Output","CommonModule","NgModule"],"mappings":"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"}