survey-angular-ui
Version:
survey.js is a JavaScript Survey Library. It is a modern way to add a survey to your website. It uses JSON for survey metadata and results.
60 lines • 9.28 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 "../../utils/ng-key2click.directive";
import * as i2 from "../../utils/ng-show.directive";
import * as i3 from "@angular/common";
import * as i4 from "../../utils/dynamic.directive";
export class ListItemComponent extends BaseAngular {
get elementId() {
var _a;
return (_a = this.model) === null || _a === void 0 ? void 0 : _a.elementId;
}
get ariaSelected() {
return this.listModel.getA11yItemAriaSelected(this.model);
}
get ariaChecked() {
return this.listModel.getA11yItemAriaChecked(this.model);
}
get class() {
return this.listModel.getItemClass(this.model);
}
get itemStyle() {
return this.listModel.getItemStyle(this.model);
}
click(event) {
this.listModel.onItemClick(this.model);
event.stopPropagation();
}
pointerdown(event) {
this.listModel.onPointerDown(event, this.model);
}
get itemComponent() {
return this.model.component || this.listModel.itemComponent;
}
getModel() {
return this.model;
}
ngAfterViewInit() {
this.listModel.onLastItemRended(this.model);
}
}
ListItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
ListItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ListItemComponent, selector: "sv-ng-list-item, '[sv-ng-list-item]'", inputs: { element: "element", model: "model", listModel: "listModel" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <li [attr.role]=\"listModel.listItemRole\" [key2click]=\"{ processEsc: false, disableTabStop: model.disableTabStop }\" [visible]=\"listModel.isItemVisible(model)\" [class]=\"class\" \n [attr.id]=\"elementId\" [attr.aria-selected]=\"ariaSelected\" [attr.aria-checked]=\"ariaChecked\" (click)=\"click($event)\" (pointerdown)=\"pointerdown($event)\">\n <ng-container *ngIf=\"model.needSeparator\">\n <div [class]=\"listModel.cssClasses.itemSeparator\"></div>\n </ng-container>\n <div [class]=\"listModel.cssClasses.itemBody\" [style]=\"itemStyle\" [attr.title]=\"model.getTooltip()\"\n (mouseover)=\"listModel.onItemHover(model)\"\n (mouseleave)=\"listModel.onItemLeave(model)\">\n <ng-template [component]=\"{ name: itemComponent, data: { model: model, listModel: listModel } }\"></ng-template>\n </div>\n </li>\n</ng-template>", styles: [":host{display:none}\n"], directives: [{ type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i2.VisibleDirective, selector: "[visible]", inputs: ["visible"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ListItemComponent, decorators: [{
type: Component,
args: [{
selector: "sv-ng-list-item, '[sv-ng-list-item]'",
templateUrl: "./list-item.component.html",
styleUrls: ["../../hide-host.scss"],
}]
}], propDecorators: { element: [{
type: Input
}], model: [{
type: Input
}], listModel: [{
type: Input
}] } });
AngularComponentFactory.Instance.registerComponent("sv-list-item", ListItemComponent);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2xpc3QvbGlzdC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2xpc3QvbGlzdC1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQVFsRSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsV0FBVztJQUtoRCxJQUFJLFNBQVM7O1FBQ1gsT0FBTyxNQUFDLElBQUksQ0FBQyxLQUFpQiwwQ0FBRSxTQUFTLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUNELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFDRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBQ0QsS0FBSyxDQUFDLEtBQVU7UUFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFDRCxXQUFXLENBQUMsS0FBVTtRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQzlELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7K0dBdENVLGlCQUFpQjttR0FBakIsaUJBQWlCLDJLQ1g5QixnM0JBWWM7NEZEREQsaUJBQWlCO2tCQU43QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQ0FBc0M7b0JBQ2hELFdBQVcsRUFBRSw0QkFBNEI7b0JBQ3pDLFNBQVMsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNwQzs4QkFHVSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7O0FBc0NSLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTGlzdE1vZGVsLCBBY3Rpb24sIElBY3Rpb24gfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IEJhc2VBbmd1bGFyIH0gZnJvbSBcIi4uLy4uL2Jhc2UtYW5ndWxhclwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnkgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50LWZhY3RvcnlcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LW5nLWxpc3QtaXRlbSwgJ1tzdi1uZy1saXN0LWl0ZW1dJ1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL2xpc3QtaXRlbS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4uLy4uL2hpZGUtaG9zdC5zY3NzXCJdLFxufSlcblxuZXhwb3J0IGNsYXNzIExpc3RJdGVtQ29tcG9uZW50IGV4dGVuZHMgQmFzZUFuZ3VsYXIgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgZWxlbWVudDogYW55O1xuICBASW5wdXQoKSBtb2RlbCE6IEFjdGlvbjtcbiAgQElucHV0KCkgbGlzdE1vZGVsITogTGlzdE1vZGVsO1xuXG4gIGdldCBlbGVtZW50SWQoKSB7XG4gICAgcmV0dXJuICh0aGlzLm1vZGVsIGFzIElBY3Rpb24pPy5lbGVtZW50SWQ7XG4gIH1cblxuICBnZXQgYXJpYVNlbGVjdGVkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubGlzdE1vZGVsLmdldEExMXlJdGVtQXJpYVNlbGVjdGVkKHRoaXMubW9kZWwpO1xuICB9XG4gIGdldCBhcmlhQ2hlY2tlZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmxpc3RNb2RlbC5nZXRBMTF5SXRlbUFyaWFDaGVja2VkKHRoaXMubW9kZWwpO1xuICB9XG4gIGdldCBjbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmxpc3RNb2RlbC5nZXRJdGVtQ2xhc3ModGhpcy5tb2RlbCk7XG4gIH1cbiAgZ2V0IGl0ZW1TdHlsZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmxpc3RNb2RlbC5nZXRJdGVtU3R5bGUodGhpcy5tb2RlbCk7XG4gIH1cbiAgY2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMubGlzdE1vZGVsLm9uSXRlbUNsaWNrKHRoaXMubW9kZWwpO1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG4gIHBvaW50ZXJkb3duKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RNb2RlbC5vblBvaW50ZXJEb3duKGV2ZW50LCB0aGlzLm1vZGVsKTtcbiAgfVxuICBnZXQgaXRlbUNvbXBvbmVudCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLmNvbXBvbmVudCB8fCB0aGlzLmxpc3RNb2RlbC5pdGVtQ29tcG9uZW50O1xuICB9XG5cbiAgZ2V0TW9kZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0TW9kZWwub25MYXN0SXRlbVJlbmRlZCh0aGlzLm1vZGVsKTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcInN2LWxpc3QtaXRlbVwiLCBMaXN0SXRlbUNvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGxpIFthdHRyLnJvbGVdPVwibGlzdE1vZGVsLmxpc3RJdGVtUm9sZVwiIFtrZXkyY2xpY2tdPVwieyBwcm9jZXNzRXNjOiBmYWxzZSwgZGlzYWJsZVRhYlN0b3A6IG1vZGVsLmRpc2FibGVUYWJTdG9wIH1cIiBbdmlzaWJsZV09XCJsaXN0TW9kZWwuaXNJdGVtVmlzaWJsZShtb2RlbClcIiBbY2xhc3NdPVwiY2xhc3NcIiBcbiAgW2F0dHIuaWRdPVwiZWxlbWVudElkXCIgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJhcmlhU2VsZWN0ZWRcIiBbYXR0ci5hcmlhLWNoZWNrZWRdPVwiYXJpYUNoZWNrZWRcIiAoY2xpY2spPVwiY2xpY2soJGV2ZW50KVwiIChwb2ludGVyZG93bik9XCJwb2ludGVyZG93bigkZXZlbnQpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsLm5lZWRTZXBhcmF0b3JcIj5cbiAgICA8ZGl2IFtjbGFzc109XCJsaXN0TW9kZWwuY3NzQ2xhc3Nlcy5pdGVtU2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdiBbY2xhc3NdPVwibGlzdE1vZGVsLmNzc0NsYXNzZXMuaXRlbUJvZHlcIiBbc3R5bGVdPVwiaXRlbVN0eWxlXCIgW2F0dHIudGl0bGVdPVwibW9kZWwuZ2V0VG9vbHRpcCgpXCJcbiAgICAobW91c2VvdmVyKT1cImxpc3RNb2RlbC5vbkl0ZW1Ib3Zlcihtb2RlbClcIlxuICAgIChtb3VzZWxlYXZlKT1cImxpc3RNb2RlbC5vbkl0ZW1MZWF2ZShtb2RlbClcIj5cbiAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6IGl0ZW1Db21wb25lbnQsIGRhdGE6IHsgbW9kZWw6IG1vZGVsLCBsaXN0TW9kZWw6IGxpc3RNb2RlbCB9IH1cIj48L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L2xpPlxuPC9uZy10ZW1wbGF0ZT4iXX0=