@progress/telerik-jquery-report-viewer
Version:
Progress® Telerik® Report Viewer for jQuery
39 lines (36 loc) • 1.31 kB
JavaScript
import { BaseComponent } from '../base-component.js';
var __defProp = Object.defineProperty;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __publicField = (obj, key, value) => {
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
return value;
};
class LinkButton extends BaseComponent {
// #endregion
// #region constructor
constructor(element, options) {
super(element, options);
// #region fields
__publicField(this, "cmd");
var dataCommand = this.$element.attr("data-command");
if (dataCommand) {
this.cmd = this.options.commands[dataCommand];
}
if (this.cmd) {
this.$element.on("click", (event) => {
if (this.cmd.enabled()) {
this.cmd.exec($(this).attr("data-command-parameter"));
} else {
event.preventDefault();
}
});
$(this.cmd).on("enabledChanged", (event) => {
(this.cmd.enabled() ? $.fn.removeClass : $.fn.addClass).call(this.$element, "disabled");
}).on("checkedChanged", (event) => {
(this.cmd.checked() ? $.fn.addClass : $.fn.removeClass).call(this.$element, "checked");
});
}
}
// #endregion
}
export { LinkButton };