UNPKG

coveo-search-ui

Version:

Coveo JavaScript Search Framework

49 lines (37 loc) 1.58 kB
import { Dom } from '../../utils/Dom'; import { ResponsiveDropdownContent } from './ResponsiveDropdown/ResponsiveDropdownContent'; export class ResponsiveComponentsUtils { private static smallTabsClassName: string = 'coveo-small-tabs'; private static smallFacetClassName: string = 'coveo-small-facets'; private static smallRecommendationClassName: string = 'coveo-small-recommendation'; static shouldDrawFacetSlider(root: Dom, facetSliderElement: Dom): boolean { return ResponsiveDropdownContent.isTargetInsideOpenedDropdown(facetSliderElement) || !this.isSmallFacetActivated(root); } static isSmallTabsActivated(root: Dom): boolean { return root.hasClass(this.smallTabsClassName); } static isSmallFacetActivated(root: Dom): boolean { return root.hasClass(this.smallFacetClassName); } static isSmallRecommendationActivated(root: Dom): boolean { return root.hasClass(this.smallRecommendationClassName); } static activateSmallTabs(root: Dom): void { root.addClass(this.smallTabsClassName); } static deactivateSmallTabs(root: Dom): void { root.removeClass(this.smallTabsClassName); } static activateSmallFacet(root: Dom): void { root.addClass(this.smallFacetClassName); } static deactivateSmallFacet(root: Dom): void { root.removeClass(this.smallFacetClassName); } static activateSmallRecommendation(root: Dom): void { root.addClass(this.smallRecommendationClassName); } static deactivateSmallRecommendation(root: Dom): void { root.removeClass(this.smallRecommendationClassName); } }