survey-angular-ui
Version:
A free MIT-licensed Angular UI component that renders dynamic, interactive JSON-based forms and surveys. You can use it to collect responses from users and send them to your own database.
34 lines • 6.45 kB
JavaScript
import { Component, Input } from "@angular/core";
import { BaseAngular } from "../../base-angular";
import { AngularComponentFactory } from "../../component-factory";
import * as i0 from "@angular/core";
import * as i1 from "../svg-icon/svg-icon.component";
export class RatingItemStarComponent extends BaseAngular {
onClick(event) {
this.model.setValueFromClick(event.target.value);
event.stopPropagation();
}
getModel() {
return this.item;
}
}
RatingItemStarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RatingItemStarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
RatingItemStarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: RatingItemStarComponent, selector: "sv-ng-rating-item-star", inputs: { element: "element", model: "model", item: "item", index: "index" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <label [class]=\"model.getItemClass(item.itemValue, item.highlight)\" (mouseover)=\"model.onItemMouseIn(item)\" (mouseout)=\"model.onItemMouseOut(item)\" (mousedown)=\"model.onMouseDown()\" [title]=\"item.text\">\n <input type=\"radio\"\n class=\"sv-visuallyhidden\"\n [attr.name]=\"model.questionName\" [attr.id]=\"model.getInputId(index)\" [value]=\"item.value\" [attr.aria-label]=\"model.ariaLabel\"\n [disabled]=\"model.isDisabledAttr\" [readonly]=\"model.isReadOnlyAttr\" [checked]=\"model.value === item.value\" (click)=\"onClick($event)\"\n />\n <svg [iconName]=\"model.itemStarIcon\" [size]=\"'auto'\" [class]=\"'sv-star'\" sv-ng-svg-icon></svg>\n <svg [iconName]=\"model.itemStarIconAlt\" [size]=\"'auto'\" [class]=\"'sv-star-2'\" sv-ng-svg-icon></svg>\n </label>\n</ng-template>", styles: [":host{display:none}\n"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: RatingItemStarComponent, decorators: [{
type: Component,
args: [{
selector: "sv-ng-rating-item-star",
templateUrl: "./rating-item-star.component.html",
styleUrls: ["../../hide-host.scss"],
}]
}], propDecorators: { element: [{
type: Input
}], model: [{
type: Input
}], item: [{
type: Input
}], index: [{
type: Input
}] } });
AngularComponentFactory.Instance.registerComponent("sv-rating-item-star", RatingItemStarComponent);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0aW5nLWl0ZW0tc3Rhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9yYXRpbmcvcmF0aW5nLWl0ZW0tc3Rhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9yYXRpbmcvcmF0aW5nLWl0ZW0tc3Rhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUFRbEUsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFdBQStCO0lBTTFFLE9BQU8sQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7cUhBYlUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsbUtDWHBDLG0xQkFVYzs0RkRDRCx1QkFBdUI7a0JBTm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsV0FBVyxFQUFFLG1DQUFtQztvQkFDaEQsU0FBUyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDOzhCQUdVLE9BQU87c0JBQWYsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSzs7QUFZUix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLEVBQUUsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTGlzdE1vZGVsLCBBY3Rpb24sIFF1ZXN0aW9uUmF0aW5nTW9kZWwsIFJlbmRlcmVkUmF0aW5nSXRlbSB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi4vLi4vYmFzZS1hbmd1bGFyXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCIuLi8uLi9jb21wb25lbnQtZmFjdG9yeVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3YtbmctcmF0aW5nLWl0ZW0tc3RhclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3JhdGluZy1pdGVtLXN0YXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuLi8uLi9oaWRlLWhvc3Quc2Nzc1wiXSxcbn0pXG5cbmV4cG9ydCBjbGFzcyBSYXRpbmdJdGVtU3RhckNvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFJlbmRlcmVkUmF0aW5nSXRlbT4ge1xuICBASW5wdXQoKSBlbGVtZW50OiBhbnk7XG4gIEBJbnB1dCgpIG1vZGVsITogUXVlc3Rpb25SYXRpbmdNb2RlbDtcbiAgQElucHV0KCkgaXRlbSE6IFJlbmRlcmVkUmF0aW5nSXRlbTtcbiAgQElucHV0KCkgaW5kZXghOiBudW1iZXI7XG5cbiAgb25DbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC5zZXRWYWx1ZUZyb21DbGljayhldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgZ2V0TW9kZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcInN2LXJhdGluZy1pdGVtLXN0YXJcIiwgUmF0aW5nSXRlbVN0YXJDb21wb25lbnQpOyIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxsYWJlbCBbY2xhc3NdPVwibW9kZWwuZ2V0SXRlbUNsYXNzKGl0ZW0uaXRlbVZhbHVlLCBpdGVtLmhpZ2hsaWdodClcIiAobW91c2VvdmVyKT1cIm1vZGVsLm9uSXRlbU1vdXNlSW4oaXRlbSlcIiAobW91c2VvdXQpPVwibW9kZWwub25JdGVtTW91c2VPdXQoaXRlbSlcIiAobW91c2Vkb3duKT1cIm1vZGVsLm9uTW91c2VEb3duKClcIiBbdGl0bGVdPVwiaXRlbS50ZXh0XCI+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiXG4gICAgICBjbGFzcz1cInN2LXZpc3VhbGx5aGlkZGVuXCJcbiAgICAgIFthdHRyLm5hbWVdPVwibW9kZWwucXVlc3Rpb25OYW1lXCIgW2F0dHIuaWRdPVwibW9kZWwuZ2V0SW5wdXRJZChpbmRleClcIiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwibW9kZWwuYXJpYUxhYmVsXCJcbiAgICAgIFtkaXNhYmxlZF09XCJtb2RlbC5pc0Rpc2FibGVkQXR0clwiIFtyZWFkb25seV09XCJtb2RlbC5pc1JlYWRPbmx5QXR0clwiIFtjaGVja2VkXT1cIm1vZGVsLnZhbHVlID09PSBpdGVtLnZhbHVlXCIgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICAvPlxuICAgICAgPHN2ZyBbaWNvbk5hbWVdPVwibW9kZWwuaXRlbVN0YXJJY29uXCIgW3NpemVdPVwiJ2F1dG8nXCIgW2NsYXNzXT1cIidzdi1zdGFyJ1wiIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgICAgPHN2ZyBbaWNvbk5hbWVdPVwibW9kZWwuaXRlbVN0YXJJY29uQWx0XCIgW3NpemVdPVwiJ2F1dG8nXCIgW2NsYXNzXT1cIidzdi1zdGFyLTInXCIgc3Ytbmctc3ZnLWljb24+PC9zdmc+XG4gIDwvbGFiZWw+XG48L25nLXRlbXBsYXRlPiJdfQ==