@appartmint/mint 0.12.16 → 0.12.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -114,6 +114,10 @@ export declare class mintHeader {
114
114
  * @param e - Mouse event
115
115
  */
116
116
  eToggleMenu(e: MouseEvent): void;
117
+ /**
118
+ * Runs after the mobile menu transitions
119
+ */
120
+ eTransitionEnd(): void;
117
121
  }
118
122
  export default mintHeader;
119
123
  //# sourceMappingURL=header.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/components/header.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,UAAU;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAA0B;IAE3C;;OAEG;IACH,EAAE,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAA;KAAC,CAAM;IAE7C;;OAEG;gBACU,QAAQ,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC;IAc5C;;OAEG;IACH,cAAc,IAAM,IAAI;IAQxB;;OAEG;IACH,YAAY,IAAM,IAAI;IAmBtB;;OAEG;IACH,UAAU,IAAM,IAAI;IAMpB;;;OAGG;IACH,aAAa,CAAE,IAAI,GAAE,OAAe,GAAI,IAAI;IAkD5C;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAI1B;;;;OAIG;IACH,OAAO,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,EAC3B,IAAI,GAAE,OAAe,GAAI,IAAI;IActC;;;OAGG;IACH,UAAU,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAI/C;;;OAGG;IACH,aAAa,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAWlD;;;OAGG;IACH,iBAAiB,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAUtD;;OAEG;IACH,aAAa,IAAM,IAAI;IAOvB;;OAEG;IACH,eAAe,IAAM,IAAI;IAezB;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAc1B;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAQ3B;;OAEG;IACH,aAAa,CAAE,CAAC,EAAE,KAAK,GAAI,IAAI;IAS/B;;OAEG;IACH,aAAa,IAAM,IAAI;IAIvB;;;OAGG;IACH,QAAQ,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IASlC;;;OAGG;IACH,qBAAqB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAsB/C;;;OAGG;IACH,mBAAmB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAgB7C;;;OAGG;IACH,eAAe,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAezC;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAI3B;;;OAGG;IACH,WAAW,CAAE,CAAC,EAAE,UAAU,GAAI,IAAI;CAKrC;AACD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../src/ts/imports/components/header.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,qBAAa,UAAU;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAA0B;IAE3C;;OAEG;IACH,EAAE,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAA;KAAC,CAAM;IAE7C;;OAEG;gBACU,QAAQ,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC;IAc5C;;OAEG;IACH,cAAc,IAAM,IAAI;IAQxB;;OAEG;IACH,YAAY,IAAM,IAAI;IAoBtB;;OAEG;IACH,UAAU,IAAM,IAAI;IAMpB;;;OAGG;IACH,aAAa,CAAE,IAAI,GAAE,OAAe,GAAI,IAAI;IA4C5C;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAI1B;;;;OAIG;IACH,OAAO,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,EAC3B,IAAI,GAAE,OAAe,GAAI,IAAI;IActC;;;OAGG;IACH,UAAU,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAI/C;;;OAGG;IACH,aAAa,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAWlD;;;OAGG;IACH,iBAAiB,CAAE,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAI,IAAI;IAUtD;;OAEG;IACH,aAAa,IAAM,IAAI;IAOvB;;OAEG;IACH,eAAe,IAAM,IAAI;IAezB;;OAEG;IACH,gBAAgB,IAAM,IAAI;IAc1B;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAQ3B;;OAEG;IACH,aAAa,CAAE,CAAC,EAAE,KAAK,GAAI,IAAI;IAQ/B;;OAEG;IACH,aAAa,IAAM,IAAI;IAIvB;;;OAGG;IACH,QAAQ,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IASlC;;;OAGG;IACH,qBAAqB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAwB/C;;;OAGG;IACH,mBAAmB,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAiB7C;;;OAGG;IACH,eAAe,CAAE,CAAC,EAAE,aAAa,GAAI,IAAI;IAezC;;OAEG;IACH,iBAAiB,IAAM,IAAI;IAI3B;;;OAGG;IACH,WAAW,CAAE,CAAC,EAAE,UAAU,GAAI,IAAI;IAMlC;;OAEG;IACH,cAAc,IAAM,IAAI;CAK3B;AACD,eAAe,UAAU,CAAC"}
package/dist/js/index.js CHANGED
@@ -78,7 +78,7 @@ class mintHeader {
78
78
  * Adds events to the dom
79
79
  */
80
80
  attachEvents() {
81
- var _a, _b, _c;
81
+ var _a, _b, _c, _d;
82
82
  //window.addEventListener('resize', mintUtil.throttleEvent(this.eHandleResize.bind(this), mintSettings.delay.default, { trailing: false }));
83
83
  window.addEventListener('scroll', util_1.default.throttleEvent(this.eHandleScroll.bind(this), settings_1.default.delay.default, {
84
84
  trailing: false
@@ -91,13 +91,14 @@ class mintHeader {
91
91
  });
92
92
  let menuButtons = (_b = this.el.header) === null || _b === void 0 ? void 0 : _b.querySelectorAll(selectors_1.default.controls() + selectors_1.default.neg(selectors_1.default.controls(selectors_1.default.ids.wrapper)));
93
93
  menuButtons === null || menuButtons === void 0 ? void 0 : menuButtons.forEach(menuButton => {
94
- menuButton.addEventListener('mousedown', util_1.default.throttleEvent(this.eToggleMenu.bind(this), settings_1.default.delay.slow, {
94
+ menuButton.addEventListener('click', util_1.default.throttleEvent(this.eToggleMenu.bind(this), settings_1.default.delay.slow, {
95
95
  trailing: false
96
96
  }));
97
97
  });
98
- (_c = this.el.mobileButton) === null || _c === void 0 ? void 0 : _c.addEventListener('mousedown', util_1.default.throttleEvent(this.eToggleMobileMenu.bind(this), settings_1.default.delay.slow, {
98
+ (_c = this.el.mobileButton) === null || _c === void 0 ? void 0 : _c.addEventListener('click', util_1.default.throttleEvent(this.eToggleMobileMenu.bind(this), settings_1.default.delay.slow, {
99
99
  trailing: false
100
100
  }));
101
+ (_d = this.el.wrapper) === null || _d === void 0 ? void 0 : _d.addEventListener('transitionend', this.eTransitionEnd.bind(this));
101
102
  }
102
103
  /**
103
104
  * Adds classes that inform the styles
@@ -114,7 +115,7 @@ class mintHeader {
114
115
  */
115
116
  setMobileMenu() {
116
117
  let open = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
117
- var _a, _b, _c;
118
+ var _a;
118
119
  let ariaExpanded = open ? 'true' : 'false',
119
120
  ariaLabel = open ? 'close menu' : 'open menu';
120
121
  (_a = this.el.mobileButton) === null || _a === void 0 ? void 0 : _a.setAttribute('aria-expanded', ariaExpanded);
@@ -146,18 +147,10 @@ class mintHeader {
146
147
  if (this.el.html) {
147
148
  this.el.html.style.overflow = 'auto';
148
149
  }
149
- (_b = this.el.wrapper) === null || _b === void 0 ? void 0 : _b.classList.remove(selectors_1.default.getClass('open'));
150
- const onTransitionEnd = () => {
151
- if (this.el.wrapper) {
152
- this.el.wrapper.style.display = 'none';
153
- this.el.wrapper.removeEventListener('transitionend', onTransitionEnd);
154
- }
155
- };
156
- if (typeof ((_c = this.el.wrapper) === null || _c === void 0 ? void 0 : _c.style.transition) !== 'undefined') {
157
- this.el.wrapper.addEventListener('transitionend', onTransitionEnd);
158
- } else {
159
- setTimeout(onTransitionEnd, settings_1.default.delay.default);
160
- }
150
+ requestAnimationFrame(() => {
151
+ var _a;
152
+ (_a = this.el.wrapper) === null || _a === void 0 ? void 0 : _a.classList.remove(selectors_1.default.getClass('open'));
153
+ });
161
154
  this.closeAllMenus();
162
155
  }
163
156
  }
@@ -282,7 +275,6 @@ class mintHeader {
282
275
  * Closes the mobile menu when the window resizes
283
276
  */
284
277
  eHandleResize(e) {
285
- //console.log(e, window.innerWidth, mintUtil.windowWidth(), this.lastWidth);
286
278
  // Also check if resized from mobile to desktop
287
279
  if (util_1.default.windowWidth() !== this.lastWidth) {
288
280
  this.setMobileMenu();
@@ -315,7 +307,7 @@ class mintHeader {
315
307
  eHandleButtonKeypress(e) {
316
308
  var _a;
317
309
  let target = e.target,
318
- subMenu = target.closest('li');
310
+ subMenu = target === null || target === void 0 ? void 0 : target.closest('li');
319
311
  switch (e.key.toLowerCase()) {
320
312
  case 'escape':
321
313
  if (subMenu === null || subMenu === void 0 ? void 0 : subMenu.classList.contains(selectors_1.default.classes.open)) {
@@ -328,9 +320,11 @@ class mintHeader {
328
320
  this.closeClosestMenu();
329
321
  break;
330
322
  case 'arrowright':
323
+ this.openClosestMenu();
331
324
  break;
332
325
  case 'enter':
333
326
  case 'space':
327
+ target === null || target === void 0 ? void 0 : target.click();
334
328
  break;
335
329
  }
336
330
  }
@@ -339,6 +333,7 @@ class mintHeader {
339
333
  * @param e - Keyboard event
340
334
  */
341
335
  eHandleLinkKeypress(e) {
336
+ let target = e.target;
342
337
  switch (e.key.toLowerCase()) {
343
338
  case 'escape':
344
339
  case 'arrowleft':
@@ -349,7 +344,7 @@ class mintHeader {
349
344
  break;
350
345
  case 'enter':
351
346
  case 'space':
352
- this.toggleClosestMenu();
347
+ target === null || target === void 0 ? void 0 : target.click();
353
348
  break;
354
349
  }
355
350
  }
@@ -361,7 +356,7 @@ class mintHeader {
361
356
  if (e.key.toLowerCase() !== 'tab') {
362
357
  e.preventDefault();
363
358
  }
364
- let target = e.target;
359
+ const target = e.target;
365
360
  switch (target === null || target === void 0 ? void 0 : target.tagName.toLowerCase()) {
366
361
  case 'a':
367
362
  this.eHandleLinkKeypress(e);
@@ -386,6 +381,15 @@ class mintHeader {
386
381
  this.closeSiblingMenus(target);
387
382
  this.toggleMenu(target);
388
383
  }
384
+ /**
385
+ * Runs after the mobile menu transitions
386
+ */
387
+ eTransitionEnd() {
388
+ var _a;
389
+ if (((_a = this.el.wrapper) === null || _a === void 0 ? void 0 : _a.classList.contains(selectors_1.default.getClass('open'))) === false) {
390
+ this.el.wrapper.style.display = 'none';
391
+ }
392
+ }
389
393
  }
390
394
  exports.mintHeader = mintHeader;
391
395
  exports["default"] = mintHeader;
@@ -1514,8 +1518,7 @@ class mintUtil {
1514
1518
  * @returns the width of the window
1515
1519
  */
1516
1520
  static windowWidth() {
1517
- let body = document.getElementsByTagName('body')[0],
1518
- decimal = body.getBoundingClientRect().width % 1;
1521
+ const decimal = document.body.getBoundingClientRect().width % 1;
1519
1522
  return window.innerWidth + decimal;
1520
1523
  }
1521
1524
  /**