1 | (function (global, factory) {
|
2 | typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
3 | typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
4 | (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.htwoo = global.htwoo || {}, global.htwoo.pivot = {})));
|
5 | }(this, (function (exports) { 'use strict';
|
6 |
|
7 | const elemPivotBar = '.hoo-pivotbar';
|
8 | const elemPivotButton = '.hoo-button-pivot';
|
9 | const dropDownPivotButton = '.hoo-navitem-text';
|
10 | const stateIsActive = 'is-active';
|
11 |
|
12 | const changePivot = (event) => {
|
13 | event.preventDefault();
|
14 |
|
15 | console.log(event.target);
|
16 |
|
17 | let currentButton = event.target.classList.contains(elemPivotButton.substr(1)) ? event.target : event.target.closest(elemPivotButton);
|
18 | if (!currentButton) {
|
19 | currentButton = event.target.classList.contains(dropDownPivotButton.substr(1)) ? event.target : event.target.closest(dropDownPivotButton);
|
20 | }
|
21 |
|
22 | const currentPivotBar = event.target.closest(elemPivotBar);
|
23 |
|
24 | const allButtons = currentPivotBar.querySelectorAll(elemPivotButton);
|
25 |
|
26 | allButtons.forEach(item => {
|
27 | item.classList.remove(stateIsActive);
|
28 | });
|
29 |
|
30 | currentButton.classList.add(stateIsActive);
|
31 |
|
32 | };
|
33 |
|
34 |
|
35 | const initPivot = () => {
|
36 |
|
37 |
|
38 | const pivotBarsButtons = document.querySelectorAll(`${elemPivotBar} ${elemPivotButton}`);
|
39 | pivotBarsButtons.forEach(pivotBarsButton => {
|
40 | pivotBarsButton.dataset.ref = pivotBarsButton.textContent.trim();
|
41 | pivotBarsButton.addEventListener('click', changePivot);
|
42 | });
|
43 |
|
44 | };
|
45 |
|
46 | exports.initPivot = initPivot;
|
47 |
|
48 | Object.defineProperty(exports, '__esModule', { value: true });
|
49 |
|
50 | })));
|