zcomponents-ui 1.5.14 → 1.5.16
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-8z2jr57w.js → index-CEYJinQe.js} +149 -8
- package/dist/index-CEYJinQe.js.map +1 -0
- package/dist/{index-BxoOD-Vf.js → index-DHpM-XvP.js} +149 -8
- package/dist/index-DHpM-XvP.js.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +2 -2
- package/dist/react-hook-form.cjs.js +1 -1
- package/dist/react-hook-form.esm.js +1 -1
- package/dist/zcomponents-ui.css +1 -1
- package/dist/zcomponents-ui.css.map +1 -1
- package/dist/zdrop.css +1 -1
- package/dist/zdrop.css.map +1 -1
- package/package.json +1 -1
- package/dist/index-8z2jr57w.js.map +0 -1
- package/dist/index-BxoOD-Vf.js.map +0 -1
|
@@ -106,7 +106,7 @@ const checkIsOptionSelected = (checkIsInputValueEqualToOptionValue, value, optio
|
|
|
106
106
|
const ZDropList = (props) => {
|
|
107
107
|
const { options = [], selectedValue, valueKey, labelKey, optionsRef, optionRenderer, onOptionClick, onOptionKeyDown, noDataContent, currentSearchedValue, listStyleClasses, isListWrapperEnabled, isAutoHeightEnabled, } = props;
|
|
108
108
|
const dropdownListClasses = classNames({
|
|
109
|
-
[styles["zd__list"]]: !isAutoHeightEnabled,
|
|
109
|
+
[styles["zd__list"]]: !isAutoHeightEnabled && !isListWrapperEnabled,
|
|
110
110
|
[styles["zd__list--auto-height-enabled"]]: isAutoHeightEnabled,
|
|
111
111
|
[styles["zd__list--reference-wrapper-enabled"]]: isListWrapperEnabled,
|
|
112
112
|
}, listStyleClasses === null || listStyleClasses === void 0 ? void 0 : listStyleClasses.list);
|
|
@@ -395,6 +395,26 @@ const ZDropListWrapper = (props) => {
|
|
|
395
395
|
const lastAnimatedHeightRef = react.useRef(-1);
|
|
396
396
|
const previousOptionsCountRef = react.useRef(optionsCount);
|
|
397
397
|
const wrapperClasses = classNames(styles["zd__list-wrapper"], className);
|
|
398
|
+
const cssGapPxRef = react.useRef(0);
|
|
399
|
+
const [cssGapPx, setCssGapPx] = react.useState(0);
|
|
400
|
+
const readCssGapPx = react.useCallback(() => {
|
|
401
|
+
const wrapper = listWrapperRef.current;
|
|
402
|
+
if (!wrapper) {
|
|
403
|
+
return;
|
|
404
|
+
}
|
|
405
|
+
const prevInlineMT = wrapper.style.marginTop;
|
|
406
|
+
const prevInlineMB = wrapper.style.marginBottom;
|
|
407
|
+
wrapper.style.marginTop = "";
|
|
408
|
+
wrapper.style.marginBottom = "";
|
|
409
|
+
const cs = window.getComputedStyle(wrapper);
|
|
410
|
+
const mt = parseFloat(cs.marginTop || "0") || 0;
|
|
411
|
+
wrapper.style.marginTop = prevInlineMT;
|
|
412
|
+
wrapper.style.marginBottom = prevInlineMB;
|
|
413
|
+
if (cssGapPxRef.current !== mt) {
|
|
414
|
+
cssGapPxRef.current = mt;
|
|
415
|
+
setCssGapPx(mt);
|
|
416
|
+
}
|
|
417
|
+
}, []);
|
|
398
418
|
const getWrapperVerticalSpacing = react.useCallback(() => {
|
|
399
419
|
const wrapper = listWrapperRef.current;
|
|
400
420
|
if (!wrapper) {
|
|
@@ -556,6 +576,9 @@ const ZDropListWrapper = (props) => {
|
|
|
556
576
|
setMeasuredContentHeight(next);
|
|
557
577
|
}
|
|
558
578
|
}, [updateMaxSpaces, measureContentHeightPx]);
|
|
579
|
+
react.useLayoutEffect(() => {
|
|
580
|
+
readCssGapPx();
|
|
581
|
+
}, [readCssGapPx, className]);
|
|
559
582
|
react.useLayoutEffect(() => {
|
|
560
583
|
const wrapper = listWrapperRef.current;
|
|
561
584
|
if (!wrapper) {
|
|
@@ -571,11 +594,9 @@ const ZDropListWrapper = (props) => {
|
|
|
571
594
|
let ro = null;
|
|
572
595
|
let mo = null;
|
|
573
596
|
const attachResizeObserver = () => {
|
|
574
|
-
var _a;
|
|
575
597
|
ro === null || ro === void 0 ? void 0 : ro.disconnect();
|
|
576
598
|
ro = new ResizeObserver(() => schedule());
|
|
577
|
-
|
|
578
|
-
ro.observe(target);
|
|
599
|
+
ro.observe(wrapper);
|
|
579
600
|
};
|
|
580
601
|
mo = new MutationObserver(() => {
|
|
581
602
|
attachResizeObserver();
|
|
@@ -653,6 +674,46 @@ const ZDropListWrapper = (props) => {
|
|
|
653
674
|
cancelAnimationFrame(raf2);
|
|
654
675
|
};
|
|
655
676
|
}, [children, optionsCount, runMeasureTick]);
|
|
677
|
+
react.useLayoutEffect(() => {
|
|
678
|
+
let isCancelled = false;
|
|
679
|
+
const wrapper = listWrapperRef.current;
|
|
680
|
+
if (wrapper) {
|
|
681
|
+
if (optionsCount === 0) {
|
|
682
|
+
const img = wrapper.querySelector("img");
|
|
683
|
+
if (img) {
|
|
684
|
+
const remeasure = () => {
|
|
685
|
+
if (isCancelled) {
|
|
686
|
+
return;
|
|
687
|
+
}
|
|
688
|
+
requestAnimationFrame(() => {
|
|
689
|
+
if (!isCancelled) {
|
|
690
|
+
runMeasureTick();
|
|
691
|
+
}
|
|
692
|
+
});
|
|
693
|
+
};
|
|
694
|
+
if (img.complete) {
|
|
695
|
+
remeasure();
|
|
696
|
+
}
|
|
697
|
+
img.addEventListener("load", remeasure);
|
|
698
|
+
img.addEventListener("error", remeasure);
|
|
699
|
+
if ("decode" in img) {
|
|
700
|
+
img
|
|
701
|
+
.decode()
|
|
702
|
+
.then(() => remeasure())
|
|
703
|
+
.catch(() => { });
|
|
704
|
+
}
|
|
705
|
+
return () => {
|
|
706
|
+
isCancelled = true;
|
|
707
|
+
img.removeEventListener("load", remeasure);
|
|
708
|
+
img.removeEventListener("error", remeasure);
|
|
709
|
+
};
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
return () => {
|
|
714
|
+
isCancelled = true;
|
|
715
|
+
};
|
|
716
|
+
}, [optionsCount, runMeasureTick]);
|
|
656
717
|
const hasTopSpace = maxSpaceAbove > minUsableHeight;
|
|
657
718
|
const hasBottomSpace = maxSpaceBelow > minUsableHeight;
|
|
658
719
|
let finalPosition;
|
|
@@ -682,14 +743,17 @@ const ZDropListWrapper = (props) => {
|
|
|
682
743
|
setAnimatedWrapperHeightPx(nextHeightPx);
|
|
683
744
|
}
|
|
684
745
|
}, [finalHeight]);
|
|
685
|
-
const elementVerticalSpacing = getWrapperVerticalSpacing();
|
|
686
746
|
const wrapperStyle = {
|
|
687
747
|
position: "absolute",
|
|
688
748
|
height: `${animatedWrapperHeightPx}px`,
|
|
689
749
|
maxHeight: `${animatedWrapperHeightPx}px`,
|
|
690
750
|
...(finalPosition === "top"
|
|
691
|
-
? { top:
|
|
692
|
-
: { top: "100%" }),
|
|
751
|
+
? { top: "auto", bottom: "100%" }
|
|
752
|
+
: { bottom: "auto", top: "100%" }),
|
|
753
|
+
...(finalPosition === "top"
|
|
754
|
+
? { marginTop: 0, marginBottom: `${cssGapPx}px` }
|
|
755
|
+
: { marginBottom: 0, marginTop: `${cssGapPx}px` }),
|
|
756
|
+
transitionProperty: "height, max-height",
|
|
693
757
|
};
|
|
694
758
|
return (jsxRuntime.jsx("div", { className: wrapperClasses, ref: listWrapperRef, style: wrapperStyle, children: children }));
|
|
695
759
|
};
|
|
@@ -726,6 +790,9 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
726
790
|
const [forcedPositionY, setForcedPositionY] = react.useState();
|
|
727
791
|
const [maxAllowedHeightPx, setMaxAllowedHeightPx] = react.useState(0);
|
|
728
792
|
const [measuredContentHeightPx, setMeasuredContentHeightPx] = react.useState(0);
|
|
793
|
+
// NEW: keep a single "gap" value and mirror it on flip (margin-top <-> margin-bottom)
|
|
794
|
+
const cssGapPxRef = react.useRef(0);
|
|
795
|
+
const [cssGapPx, setCssGapPx] = react.useState(0);
|
|
729
796
|
const wrapperClasses = classNames(styles["zd__list"], styles["zd__list-auto-height-wrapper"], className);
|
|
730
797
|
const setForcedPositionYIfChanged = react.useCallback((next) => {
|
|
731
798
|
setForcedPositionY((prev) => (shallowEqualPos(prev, next) ? prev : next));
|
|
@@ -733,6 +800,25 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
733
800
|
const setMaxAllowedHeightIfChanged = react.useCallback((next) => {
|
|
734
801
|
setMaxAllowedHeightPx((prev) => (prev === next ? prev : next));
|
|
735
802
|
}, []);
|
|
803
|
+
// NEW: read "gap" from CSS (we treat margin-top as the canonical gap)
|
|
804
|
+
const readCssGapPx = react.useCallback(() => {
|
|
805
|
+
const el = wrapperRef.current;
|
|
806
|
+
if (!el)
|
|
807
|
+
return;
|
|
808
|
+
const prevInlineMT = el.style.marginTop;
|
|
809
|
+
const prevInlineMB = el.style.marginBottom;
|
|
810
|
+
// temporarily remove inline margins to read CSS-defined spacing
|
|
811
|
+
el.style.marginTop = "";
|
|
812
|
+
el.style.marginBottom = "";
|
|
813
|
+
const cs = window.getComputedStyle(el);
|
|
814
|
+
const mt = parseFloat(cs.marginTop || "0") || 0;
|
|
815
|
+
el.style.marginTop = prevInlineMT;
|
|
816
|
+
el.style.marginBottom = prevInlineMB;
|
|
817
|
+
if (cssGapPxRef.current !== mt) {
|
|
818
|
+
cssGapPxRef.current = mt;
|
|
819
|
+
setCssGapPx(mt);
|
|
820
|
+
}
|
|
821
|
+
}, []);
|
|
736
822
|
const measureVisualContentHeightPx = react.useCallback(() => {
|
|
737
823
|
const el = wrapperRef.current;
|
|
738
824
|
if (!el) {
|
|
@@ -914,6 +1000,9 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
914
1000
|
return prev === next ? prev : next;
|
|
915
1001
|
});
|
|
916
1002
|
}, [optionsCount, maxAllowedHeightPx, measureVisualContentHeightPx]);
|
|
1003
|
+
react.useLayoutEffect(() => {
|
|
1004
|
+
readCssGapPx();
|
|
1005
|
+
}, [readCssGapPx, className]);
|
|
917
1006
|
react.useLayoutEffect(() => {
|
|
918
1007
|
preventFromOverflowY();
|
|
919
1008
|
requestAnimationFrame(() => {
|
|
@@ -962,13 +1051,65 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
962
1051
|
window.removeEventListener("resize", onResize);
|
|
963
1052
|
};
|
|
964
1053
|
}, [preventFromOverflowY, reCalcHeightFromContent]);
|
|
1054
|
+
react.useLayoutEffect(() => {
|
|
1055
|
+
let isCancelled = false;
|
|
1056
|
+
const wrapper = wrapperRef.current;
|
|
1057
|
+
if (wrapper) {
|
|
1058
|
+
if (optionsCount === 0) {
|
|
1059
|
+
const img = wrapper.querySelector("img");
|
|
1060
|
+
if (img) {
|
|
1061
|
+
const remeasure = () => {
|
|
1062
|
+
if (isCancelled) {
|
|
1063
|
+
return;
|
|
1064
|
+
}
|
|
1065
|
+
requestAnimationFrame(() => {
|
|
1066
|
+
if (!isCancelled) {
|
|
1067
|
+
preventFromOverflowY();
|
|
1068
|
+
reCalcHeightFromContent();
|
|
1069
|
+
}
|
|
1070
|
+
});
|
|
1071
|
+
};
|
|
1072
|
+
if (img.complete) {
|
|
1073
|
+
remeasure();
|
|
1074
|
+
}
|
|
1075
|
+
img.addEventListener("load", remeasure);
|
|
1076
|
+
img.addEventListener("error", remeasure);
|
|
1077
|
+
if ("decode" in img) {
|
|
1078
|
+
img
|
|
1079
|
+
.decode()
|
|
1080
|
+
.then(() => remeasure())
|
|
1081
|
+
.catch(() => { });
|
|
1082
|
+
}
|
|
1083
|
+
return () => {
|
|
1084
|
+
isCancelled = true;
|
|
1085
|
+
img.removeEventListener("load", remeasure);
|
|
1086
|
+
img.removeEventListener("error", remeasure);
|
|
1087
|
+
};
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
1091
|
+
return () => {
|
|
1092
|
+
isCancelled = true;
|
|
1093
|
+
};
|
|
1094
|
+
}, [optionsCount, preventFromOverflowY, reCalcHeightFromContent]);
|
|
965
1095
|
const baseY = position.includes("top")
|
|
966
1096
|
? { top: "auto", bottom: "100%" }
|
|
967
1097
|
: { top: "100%", bottom: "auto" };
|
|
1098
|
+
// Decide final orientation after applying forcedPositionY
|
|
1099
|
+
(forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.top) !== undefined
|
|
1100
|
+
? forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.top
|
|
1101
|
+
: baseY.top;
|
|
1102
|
+
const mergedBottom = (forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.bottom) !== undefined
|
|
1103
|
+
? forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.bottom
|
|
1104
|
+
: baseY.bottom;
|
|
1105
|
+
const isFinalTop = mergedBottom === "100%";
|
|
968
1106
|
const positionStyles = {
|
|
969
1107
|
position: "absolute",
|
|
970
1108
|
...baseY,
|
|
971
1109
|
...(forcedPositionY !== null && forcedPositionY !== void 0 ? forcedPositionY : {}),
|
|
1110
|
+
...(isFinalTop
|
|
1111
|
+
? { marginTop: 0, marginBottom: `${cssGapPx}px` }
|
|
1112
|
+
: { marginBottom: 0, marginTop: `${cssGapPx}px` }),
|
|
972
1113
|
...(maxAllowedHeightPx ? { maxHeight: `${maxAllowedHeightPx}px` } : {}),
|
|
973
1114
|
...(measuredContentHeightPx > 0
|
|
974
1115
|
? { height: `${measuredContentHeightPx}px` }
|
|
@@ -1325,4 +1466,4 @@ exports.ZDropField = ZDropField;
|
|
|
1325
1466
|
exports.classNames = classNames;
|
|
1326
1467
|
exports.getElementVerticalBorders = getElementVerticalBorders;
|
|
1327
1468
|
exports.useOutsideClose = useOutsideClose;
|
|
1328
|
-
//# sourceMappingURL=index-
|
|
1469
|
+
//# sourceMappingURL=index-CEYJinQe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CEYJinQe.js","sources":["../src/helpers/classNames.ts","../src/hooks/useOutsideClose.ts","../src/components/ZDrop/components/ZDropLabel/index.tsx","../src/components/ZDrop/components/ZDropList/ZDropListItem/index.tsx","../src/components/ZDrop/components/ZDropList/ZDropListNoData/index.tsx","../src/components/ZDrop/helpers/checkIsValueEqualToOption.ts","../src/components/ZDrop/helpers/checkIsOptionSelected.ts","../src/components/ZDrop/components/ZDropList/index.tsx","../src/components/ZDrop/components/ZDropListVisibilityToggle/index.tsx","../src/components/ZDrop/helpers/checkIsClearButtonHidden.ts","../src/components/ZDrop/components/ZDropClearButton/index.tsx","../src/components/ZDrop/components/ZDropInput/ZDropMultipleInputValue/index.tsx","../src/components/ZDrop/components/ZDropInput/ZDropMultipleInput/index.tsx","../src/components/ZDrop/components/ZDropInput/ZDropSingleInputValue/index.tsx","../src/components/ZDrop/helpers/getLabelFromOption.ts","../src/components/ZDrop/components/ZDropInput/ZDropSingleInput/index.tsx","../src/components/ZDrop/components/ZDropInput/index.tsx","../src/components/ZDrop/helpers/findOption.ts","../src/components/ZDrop/helpers/searchFilter.ts","../src/components/ZDrop/helpers/getCurrentMultipleValue.ts","../src/components/ZDrop/helpers/getElementOffsetTop.ts","../src/helpers/getElementVerticalMargins.ts","../src/helpers/getElementVerticalBorders.ts","../src/components/ZDrop/components/ZDropList/ZDropListWrapper/index.tsx","../src/components/ZDrop/helpers/checkIsValueEqualToSelectedValue.ts","../src/components/ZDrop/components/ZDropList/ZDropListAutoHeightWrapper/index.tsx","../src/components/ZDrop/index.tsx","../src/components/ZDrop/integrations/react-hook-form/ZDropField/index.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["useEffect","_jsx","_jsxs","_Fragment","useState","ZDropSingleInputValue","useRef","useCallback","useLayoutEffect","Controller"],"mappings":"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"}
|
|
@@ -104,7 +104,7 @@ const checkIsOptionSelected = (checkIsInputValueEqualToOptionValue, value, optio
|
|
|
104
104
|
const ZDropList = (props) => {
|
|
105
105
|
const { options = [], selectedValue, valueKey, labelKey, optionsRef, optionRenderer, onOptionClick, onOptionKeyDown, noDataContent, currentSearchedValue, listStyleClasses, isListWrapperEnabled, isAutoHeightEnabled, } = props;
|
|
106
106
|
const dropdownListClasses = classNames({
|
|
107
|
-
[styles["zd__list"]]: !isAutoHeightEnabled,
|
|
107
|
+
[styles["zd__list"]]: !isAutoHeightEnabled && !isListWrapperEnabled,
|
|
108
108
|
[styles["zd__list--auto-height-enabled"]]: isAutoHeightEnabled,
|
|
109
109
|
[styles["zd__list--reference-wrapper-enabled"]]: isListWrapperEnabled,
|
|
110
110
|
}, listStyleClasses === null || listStyleClasses === void 0 ? void 0 : listStyleClasses.list);
|
|
@@ -393,6 +393,26 @@ const ZDropListWrapper = (props) => {
|
|
|
393
393
|
const lastAnimatedHeightRef = useRef(-1);
|
|
394
394
|
const previousOptionsCountRef = useRef(optionsCount);
|
|
395
395
|
const wrapperClasses = classNames(styles["zd__list-wrapper"], className);
|
|
396
|
+
const cssGapPxRef = useRef(0);
|
|
397
|
+
const [cssGapPx, setCssGapPx] = useState(0);
|
|
398
|
+
const readCssGapPx = useCallback(() => {
|
|
399
|
+
const wrapper = listWrapperRef.current;
|
|
400
|
+
if (!wrapper) {
|
|
401
|
+
return;
|
|
402
|
+
}
|
|
403
|
+
const prevInlineMT = wrapper.style.marginTop;
|
|
404
|
+
const prevInlineMB = wrapper.style.marginBottom;
|
|
405
|
+
wrapper.style.marginTop = "";
|
|
406
|
+
wrapper.style.marginBottom = "";
|
|
407
|
+
const cs = window.getComputedStyle(wrapper);
|
|
408
|
+
const mt = parseFloat(cs.marginTop || "0") || 0;
|
|
409
|
+
wrapper.style.marginTop = prevInlineMT;
|
|
410
|
+
wrapper.style.marginBottom = prevInlineMB;
|
|
411
|
+
if (cssGapPxRef.current !== mt) {
|
|
412
|
+
cssGapPxRef.current = mt;
|
|
413
|
+
setCssGapPx(mt);
|
|
414
|
+
}
|
|
415
|
+
}, []);
|
|
396
416
|
const getWrapperVerticalSpacing = useCallback(() => {
|
|
397
417
|
const wrapper = listWrapperRef.current;
|
|
398
418
|
if (!wrapper) {
|
|
@@ -554,6 +574,9 @@ const ZDropListWrapper = (props) => {
|
|
|
554
574
|
setMeasuredContentHeight(next);
|
|
555
575
|
}
|
|
556
576
|
}, [updateMaxSpaces, measureContentHeightPx]);
|
|
577
|
+
useLayoutEffect(() => {
|
|
578
|
+
readCssGapPx();
|
|
579
|
+
}, [readCssGapPx, className]);
|
|
557
580
|
useLayoutEffect(() => {
|
|
558
581
|
const wrapper = listWrapperRef.current;
|
|
559
582
|
if (!wrapper) {
|
|
@@ -569,11 +592,9 @@ const ZDropListWrapper = (props) => {
|
|
|
569
592
|
let ro = null;
|
|
570
593
|
let mo = null;
|
|
571
594
|
const attachResizeObserver = () => {
|
|
572
|
-
var _a;
|
|
573
595
|
ro === null || ro === void 0 ? void 0 : ro.disconnect();
|
|
574
596
|
ro = new ResizeObserver(() => schedule());
|
|
575
|
-
|
|
576
|
-
ro.observe(target);
|
|
597
|
+
ro.observe(wrapper);
|
|
577
598
|
};
|
|
578
599
|
mo = new MutationObserver(() => {
|
|
579
600
|
attachResizeObserver();
|
|
@@ -651,6 +672,46 @@ const ZDropListWrapper = (props) => {
|
|
|
651
672
|
cancelAnimationFrame(raf2);
|
|
652
673
|
};
|
|
653
674
|
}, [children, optionsCount, runMeasureTick]);
|
|
675
|
+
useLayoutEffect(() => {
|
|
676
|
+
let isCancelled = false;
|
|
677
|
+
const wrapper = listWrapperRef.current;
|
|
678
|
+
if (wrapper) {
|
|
679
|
+
if (optionsCount === 0) {
|
|
680
|
+
const img = wrapper.querySelector("img");
|
|
681
|
+
if (img) {
|
|
682
|
+
const remeasure = () => {
|
|
683
|
+
if (isCancelled) {
|
|
684
|
+
return;
|
|
685
|
+
}
|
|
686
|
+
requestAnimationFrame(() => {
|
|
687
|
+
if (!isCancelled) {
|
|
688
|
+
runMeasureTick();
|
|
689
|
+
}
|
|
690
|
+
});
|
|
691
|
+
};
|
|
692
|
+
if (img.complete) {
|
|
693
|
+
remeasure();
|
|
694
|
+
}
|
|
695
|
+
img.addEventListener("load", remeasure);
|
|
696
|
+
img.addEventListener("error", remeasure);
|
|
697
|
+
if ("decode" in img) {
|
|
698
|
+
img
|
|
699
|
+
.decode()
|
|
700
|
+
.then(() => remeasure())
|
|
701
|
+
.catch(() => { });
|
|
702
|
+
}
|
|
703
|
+
return () => {
|
|
704
|
+
isCancelled = true;
|
|
705
|
+
img.removeEventListener("load", remeasure);
|
|
706
|
+
img.removeEventListener("error", remeasure);
|
|
707
|
+
};
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
}
|
|
711
|
+
return () => {
|
|
712
|
+
isCancelled = true;
|
|
713
|
+
};
|
|
714
|
+
}, [optionsCount, runMeasureTick]);
|
|
654
715
|
const hasTopSpace = maxSpaceAbove > minUsableHeight;
|
|
655
716
|
const hasBottomSpace = maxSpaceBelow > minUsableHeight;
|
|
656
717
|
let finalPosition;
|
|
@@ -680,14 +741,17 @@ const ZDropListWrapper = (props) => {
|
|
|
680
741
|
setAnimatedWrapperHeightPx(nextHeightPx);
|
|
681
742
|
}
|
|
682
743
|
}, [finalHeight]);
|
|
683
|
-
const elementVerticalSpacing = getWrapperVerticalSpacing();
|
|
684
744
|
const wrapperStyle = {
|
|
685
745
|
position: "absolute",
|
|
686
746
|
height: `${animatedWrapperHeightPx}px`,
|
|
687
747
|
maxHeight: `${animatedWrapperHeightPx}px`,
|
|
688
748
|
...(finalPosition === "top"
|
|
689
|
-
? { top:
|
|
690
|
-
: { top: "100%" }),
|
|
749
|
+
? { top: "auto", bottom: "100%" }
|
|
750
|
+
: { bottom: "auto", top: "100%" }),
|
|
751
|
+
...(finalPosition === "top"
|
|
752
|
+
? { marginTop: 0, marginBottom: `${cssGapPx}px` }
|
|
753
|
+
: { marginBottom: 0, marginTop: `${cssGapPx}px` }),
|
|
754
|
+
transitionProperty: "height, max-height",
|
|
691
755
|
};
|
|
692
756
|
return (jsx("div", { className: wrapperClasses, ref: listWrapperRef, style: wrapperStyle, children: children }));
|
|
693
757
|
};
|
|
@@ -724,6 +788,9 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
724
788
|
const [forcedPositionY, setForcedPositionY] = useState();
|
|
725
789
|
const [maxAllowedHeightPx, setMaxAllowedHeightPx] = useState(0);
|
|
726
790
|
const [measuredContentHeightPx, setMeasuredContentHeightPx] = useState(0);
|
|
791
|
+
// NEW: keep a single "gap" value and mirror it on flip (margin-top <-> margin-bottom)
|
|
792
|
+
const cssGapPxRef = useRef(0);
|
|
793
|
+
const [cssGapPx, setCssGapPx] = useState(0);
|
|
727
794
|
const wrapperClasses = classNames(styles["zd__list"], styles["zd__list-auto-height-wrapper"], className);
|
|
728
795
|
const setForcedPositionYIfChanged = useCallback((next) => {
|
|
729
796
|
setForcedPositionY((prev) => (shallowEqualPos(prev, next) ? prev : next));
|
|
@@ -731,6 +798,25 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
731
798
|
const setMaxAllowedHeightIfChanged = useCallback((next) => {
|
|
732
799
|
setMaxAllowedHeightPx((prev) => (prev === next ? prev : next));
|
|
733
800
|
}, []);
|
|
801
|
+
// NEW: read "gap" from CSS (we treat margin-top as the canonical gap)
|
|
802
|
+
const readCssGapPx = useCallback(() => {
|
|
803
|
+
const el = wrapperRef.current;
|
|
804
|
+
if (!el)
|
|
805
|
+
return;
|
|
806
|
+
const prevInlineMT = el.style.marginTop;
|
|
807
|
+
const prevInlineMB = el.style.marginBottom;
|
|
808
|
+
// temporarily remove inline margins to read CSS-defined spacing
|
|
809
|
+
el.style.marginTop = "";
|
|
810
|
+
el.style.marginBottom = "";
|
|
811
|
+
const cs = window.getComputedStyle(el);
|
|
812
|
+
const mt = parseFloat(cs.marginTop || "0") || 0;
|
|
813
|
+
el.style.marginTop = prevInlineMT;
|
|
814
|
+
el.style.marginBottom = prevInlineMB;
|
|
815
|
+
if (cssGapPxRef.current !== mt) {
|
|
816
|
+
cssGapPxRef.current = mt;
|
|
817
|
+
setCssGapPx(mt);
|
|
818
|
+
}
|
|
819
|
+
}, []);
|
|
734
820
|
const measureVisualContentHeightPx = useCallback(() => {
|
|
735
821
|
const el = wrapperRef.current;
|
|
736
822
|
if (!el) {
|
|
@@ -912,6 +998,9 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
912
998
|
return prev === next ? prev : next;
|
|
913
999
|
});
|
|
914
1000
|
}, [optionsCount, maxAllowedHeightPx, measureVisualContentHeightPx]);
|
|
1001
|
+
useLayoutEffect(() => {
|
|
1002
|
+
readCssGapPx();
|
|
1003
|
+
}, [readCssGapPx, className]);
|
|
915
1004
|
useLayoutEffect(() => {
|
|
916
1005
|
preventFromOverflowY();
|
|
917
1006
|
requestAnimationFrame(() => {
|
|
@@ -960,13 +1049,65 @@ const ZDropListAutoHeightWrapper = (props) => {
|
|
|
960
1049
|
window.removeEventListener("resize", onResize);
|
|
961
1050
|
};
|
|
962
1051
|
}, [preventFromOverflowY, reCalcHeightFromContent]);
|
|
1052
|
+
useLayoutEffect(() => {
|
|
1053
|
+
let isCancelled = false;
|
|
1054
|
+
const wrapper = wrapperRef.current;
|
|
1055
|
+
if (wrapper) {
|
|
1056
|
+
if (optionsCount === 0) {
|
|
1057
|
+
const img = wrapper.querySelector("img");
|
|
1058
|
+
if (img) {
|
|
1059
|
+
const remeasure = () => {
|
|
1060
|
+
if (isCancelled) {
|
|
1061
|
+
return;
|
|
1062
|
+
}
|
|
1063
|
+
requestAnimationFrame(() => {
|
|
1064
|
+
if (!isCancelled) {
|
|
1065
|
+
preventFromOverflowY();
|
|
1066
|
+
reCalcHeightFromContent();
|
|
1067
|
+
}
|
|
1068
|
+
});
|
|
1069
|
+
};
|
|
1070
|
+
if (img.complete) {
|
|
1071
|
+
remeasure();
|
|
1072
|
+
}
|
|
1073
|
+
img.addEventListener("load", remeasure);
|
|
1074
|
+
img.addEventListener("error", remeasure);
|
|
1075
|
+
if ("decode" in img) {
|
|
1076
|
+
img
|
|
1077
|
+
.decode()
|
|
1078
|
+
.then(() => remeasure())
|
|
1079
|
+
.catch(() => { });
|
|
1080
|
+
}
|
|
1081
|
+
return () => {
|
|
1082
|
+
isCancelled = true;
|
|
1083
|
+
img.removeEventListener("load", remeasure);
|
|
1084
|
+
img.removeEventListener("error", remeasure);
|
|
1085
|
+
};
|
|
1086
|
+
}
|
|
1087
|
+
}
|
|
1088
|
+
}
|
|
1089
|
+
return () => {
|
|
1090
|
+
isCancelled = true;
|
|
1091
|
+
};
|
|
1092
|
+
}, [optionsCount, preventFromOverflowY, reCalcHeightFromContent]);
|
|
963
1093
|
const baseY = position.includes("top")
|
|
964
1094
|
? { top: "auto", bottom: "100%" }
|
|
965
1095
|
: { top: "100%", bottom: "auto" };
|
|
1096
|
+
// Decide final orientation after applying forcedPositionY
|
|
1097
|
+
(forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.top) !== undefined
|
|
1098
|
+
? forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.top
|
|
1099
|
+
: baseY.top;
|
|
1100
|
+
const mergedBottom = (forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.bottom) !== undefined
|
|
1101
|
+
? forcedPositionY === null || forcedPositionY === void 0 ? void 0 : forcedPositionY.bottom
|
|
1102
|
+
: baseY.bottom;
|
|
1103
|
+
const isFinalTop = mergedBottom === "100%";
|
|
966
1104
|
const positionStyles = {
|
|
967
1105
|
position: "absolute",
|
|
968
1106
|
...baseY,
|
|
969
1107
|
...(forcedPositionY !== null && forcedPositionY !== void 0 ? forcedPositionY : {}),
|
|
1108
|
+
...(isFinalTop
|
|
1109
|
+
? { marginTop: 0, marginBottom: `${cssGapPx}px` }
|
|
1110
|
+
: { marginBottom: 0, marginTop: `${cssGapPx}px` }),
|
|
970
1111
|
...(maxAllowedHeightPx ? { maxHeight: `${maxAllowedHeightPx}px` } : {}),
|
|
971
1112
|
...(measuredContentHeightPx > 0
|
|
972
1113
|
? { height: `${measuredContentHeightPx}px` }
|
|
@@ -1319,4 +1460,4 @@ const ZDropField = (props) => {
|
|
|
1319
1460
|
};
|
|
1320
1461
|
|
|
1321
1462
|
export { ZDropField as Z, ZDrop as a, classNames as c, getElementVerticalBorders as g, useOutsideClose as u };
|
|
1322
|
-
//# sourceMappingURL=index-
|
|
1463
|
+
//# sourceMappingURL=index-DHpM-XvP.js.map
|