@nok-integration/storefront-react 0.19.4 → 0.19.5
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.
- package/dist/index.mjs +14 -0
- package/dist/standalone/storefront.mjs +14 -0
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -5410,6 +5410,7 @@ const styles$M = {
|
|
|
5410
5410
|
surface: surface$1,
|
|
5411
5411
|
fill
|
|
5412
5412
|
};
|
|
5413
|
+
const SETTLE_MS$1 = 150;
|
|
5413
5414
|
function offsetFromViewportTop(el) {
|
|
5414
5415
|
let top = el.getBoundingClientRect().top;
|
|
5415
5416
|
for (let node = el.parentElement; node; node = node.parentElement) {
|
|
@@ -5423,17 +5424,30 @@ function useTopOffset(ref, property, enabled = true) {
|
|
|
5423
5424
|
useEffect(() => {
|
|
5424
5425
|
const el = ref.current;
|
|
5425
5426
|
if (!el || !enabled) return;
|
|
5427
|
+
let timer2;
|
|
5426
5428
|
const measure = () => {
|
|
5427
5429
|
el.style.setProperty(property, `${offsetFromViewportTop(el)}px`);
|
|
5428
5430
|
};
|
|
5431
|
+
const settle = () => {
|
|
5432
|
+
if (timer2) clearTimeout(timer2);
|
|
5433
|
+
timer2 = setTimeout(measure, SETTLE_MS$1);
|
|
5434
|
+
};
|
|
5429
5435
|
measure();
|
|
5430
5436
|
window.addEventListener("resize", measure);
|
|
5431
5437
|
window.addEventListener("orientationchange", measure);
|
|
5438
|
+
document.addEventListener("scroll", settle, {
|
|
5439
|
+
capture: true,
|
|
5440
|
+
passive: true
|
|
5441
|
+
});
|
|
5432
5442
|
const observer = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(measure);
|
|
5433
5443
|
if (observer && el.parentElement) observer.observe(el.parentElement);
|
|
5434
5444
|
return () => {
|
|
5445
|
+
if (timer2) clearTimeout(timer2);
|
|
5435
5446
|
window.removeEventListener("resize", measure);
|
|
5436
5447
|
window.removeEventListener("orientationchange", measure);
|
|
5448
|
+
document.removeEventListener("scroll", settle, {
|
|
5449
|
+
capture: true
|
|
5450
|
+
});
|
|
5437
5451
|
observer?.disconnect();
|
|
5438
5452
|
};
|
|
5439
5453
|
}, [ref, property, enabled]);
|
|
@@ -5410,6 +5410,7 @@ const styles$M = {
|
|
|
5410
5410
|
surface: surface$1,
|
|
5411
5411
|
fill
|
|
5412
5412
|
};
|
|
5413
|
+
const SETTLE_MS$1 = 150;
|
|
5413
5414
|
function offsetFromViewportTop(el) {
|
|
5414
5415
|
let top = el.getBoundingClientRect().top;
|
|
5415
5416
|
for (let node = el.parentElement; node; node = node.parentElement) {
|
|
@@ -5423,17 +5424,30 @@ function useTopOffset(ref, property, enabled = true) {
|
|
|
5423
5424
|
useEffect(() => {
|
|
5424
5425
|
const el = ref.current;
|
|
5425
5426
|
if (!el || !enabled) return;
|
|
5427
|
+
let timer2;
|
|
5426
5428
|
const measure = () => {
|
|
5427
5429
|
el.style.setProperty(property, `${offsetFromViewportTop(el)}px`);
|
|
5428
5430
|
};
|
|
5431
|
+
const settle = () => {
|
|
5432
|
+
if (timer2) clearTimeout(timer2);
|
|
5433
|
+
timer2 = setTimeout(measure, SETTLE_MS$1);
|
|
5434
|
+
};
|
|
5429
5435
|
measure();
|
|
5430
5436
|
window.addEventListener("resize", measure);
|
|
5431
5437
|
window.addEventListener("orientationchange", measure);
|
|
5438
|
+
document.addEventListener("scroll", settle, {
|
|
5439
|
+
capture: true,
|
|
5440
|
+
passive: true
|
|
5441
|
+
});
|
|
5432
5442
|
const observer = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(measure);
|
|
5433
5443
|
if (observer && el.parentElement) observer.observe(el.parentElement);
|
|
5434
5444
|
return () => {
|
|
5445
|
+
if (timer2) clearTimeout(timer2);
|
|
5435
5446
|
window.removeEventListener("resize", measure);
|
|
5436
5447
|
window.removeEventListener("orientationchange", measure);
|
|
5448
|
+
document.removeEventListener("scroll", settle, {
|
|
5449
|
+
capture: true
|
|
5450
|
+
});
|
|
5437
5451
|
observer?.disconnect();
|
|
5438
5452
|
};
|
|
5439
5453
|
}, [ref, property, enabled]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nok-integration/storefront-react",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.5",
|
|
4
4
|
"description": "Mountable React storefront components: catalogue, product detail and cart, mounted directly into a host DOM tree. No iframe.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"publishConfig": {
|