@total_onion/onion-modalcontroller 1.1.0 → 1.1.2

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.
@@ -9,6 +9,7 @@ export default class modalController {
9
9
  closeDelay: 0,
10
10
  closingClass: "",
11
11
  activateDelay: 0,
12
+ lenis: false,
12
13
  };
13
14
  this.scanForNewTriggers();
14
15
 
@@ -24,7 +25,7 @@ export default class modalController {
24
25
 
25
26
  scanForNewTriggers() {
26
27
  this.globalModalTriggers = document.body.querySelectorAll(
27
- "[data-modalpopuptrigger]"
28
+ "[data-modalpopuptrigger]",
28
29
  );
29
30
  }
30
31
  handleBgClicks() {
@@ -39,7 +40,7 @@ export default class modalController {
39
40
  return;
40
41
  }
41
42
  const closeButtons = modalPopup.querySelectorAll(
42
- this.globalSettings.closeSelector || "#modal-controller-popup__close-btn"
43
+ this.globalSettings.closeSelector || "#modal-controller-popup__close-btn",
43
44
  );
44
45
  closeButtons.forEach((closeButton) => {
45
46
  if (closeButton.dataset.modalpopupCloseBound === "true") {
@@ -76,14 +77,14 @@ export default class modalController {
76
77
  }
77
78
 
78
79
  const popupContent = document.querySelector(
79
- ".modal-controller-popup__content"
80
+ ".modal-controller-popup__content",
80
81
  );
81
82
  if (!popupContent) {
82
83
  return;
83
84
  }
84
85
 
85
86
  const modalPopupContent = document.querySelector(
86
- `[data-modalpopupcontent=${triggerName}]`
87
+ `[data-modalpopupcontent=${triggerName}]`,
87
88
  );
88
89
 
89
90
  if (modalPopupContent) {
@@ -104,6 +105,9 @@ export default class modalController {
104
105
  requestAnimationFrame(() => {
105
106
  modalPopup.classList.add("open");
106
107
  document.documentElement.classList.add("lock-position");
108
+ if (this.globalSettings.lenis) {
109
+ document.body.dataset.lenisPrevent = "true";
110
+ }
107
111
  });
108
112
  this.handleCloseButtonClicks();
109
113
  } else {
@@ -116,13 +120,16 @@ export default class modalController {
116
120
  }
117
121
  modalPopup.classList.remove("open");
118
122
  document.documentElement.classList.remove("lock-position");
123
+ if (this.globalSettings.lenis) {
124
+ delete document.body.dataset.lenisPrevent;
125
+ }
119
126
  const popupContent = modalPopup.querySelector(
120
- ".modal-controller-popup__content"
127
+ ".modal-controller-popup__content",
121
128
  );
122
129
 
123
130
  if (popupContent) {
124
131
  const activeContents = popupContent.querySelectorAll(
125
- "[data-modalpopupcontent].active"
132
+ "[data-modalpopupcontent].active",
126
133
  );
127
134
  const closeDelay = Number(this.globalSettings.closeDelay) || 0;
128
135
  const closingClass = this.globalSettings.closingClass;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@total_onion/onion-modalcontroller",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "Pop up modal controller",
5
5
  "main": "onion-modalcontroller.js",
6
6
  "scripts": {
@@ -17,8 +17,5 @@
17
17
  },
18
18
  "homepage": "https://github.com/TotalOnion/onion-modalcontroller#readme",
19
19
  "devDependencies": {},
20
- "dependencies": {
21
- "@total_onion/onion-loader": "^1.0.9",
22
- "@pernod-ricard-global-cms/cbllazyloader": "^2.2.1"
23
- }
20
+ "dependencies": {}
24
21
  }