coveo-search-ui-extensions
Version:
Small generic components to extend the functionality of Coveo's Search UI framework.
30 lines • 1.42 kB
JavaScript
export class ToggleDeactivatedState {
constructor(toggleableButton) {
this.name = 'ToggleDeactivatedState';
this.icon = toggleableButton.options.activateIcon;
this.tooltip = toggleableButton.options.activateTooltip;
this.click = () => toggleableButton.onClick();
}
}
export class ToggleActivatedState {
constructor(toggleableButton) {
this.name = 'ToggleActivatedState';
this.onStateEntry = function () {
var _a;
this.element.classList.add(ToggleActivatedState.ACTIVATED_CLASS_NAME);
this.element.setAttribute('aria-pressed', 'true');
(_a = toggleableButton.options.activate) === null || _a === void 0 ? void 0 : _a.apply(toggleableButton);
};
this.onStateExit = function () {
var _a;
this.element.classList.remove(ToggleActivatedState.ACTIVATED_CLASS_NAME);
this.element.setAttribute('aria-pressed', 'false');
(_a = toggleableButton.options.deactivate) === null || _a === void 0 ? void 0 : _a.apply(toggleableButton);
};
this.click = () => toggleableButton.onClick();
this.icon = toggleableButton.options.deactivateIcon;
this.tooltip = toggleableButton.options.deactivateTooltip;
}
}
ToggleActivatedState.ACTIVATED_CLASS_NAME = 'coveo-toggleactionbutton-activated';
//# sourceMappingURL=ToggleableButton.js.map