@linzjs/lui 21.26.0 → 21.26.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.
- package/CHANGELOG.md +14 -0
- package/dist/index.js +40 -22
- package/dist/index.js.map +1 -1
- package/dist/lui.esm.js +40 -22
- package/dist/lui.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/lui.esm.js
CHANGED
|
@@ -58733,6 +58733,15 @@ var animateSeparator = function (separatorRef, animate) {
|
|
|
58733
58733
|
}
|
|
58734
58734
|
};
|
|
58735
58735
|
|
|
58736
|
+
var useSetValueNow_static = function (setValueNow, separator) {
|
|
58737
|
+
var _a = useState(0), count = _a[0], setCount = _a[1];
|
|
58738
|
+
useEffect(function () { return transition(separator).resume(); }, [count]);
|
|
58739
|
+
return useCallback(function (val, config) {
|
|
58740
|
+
transition(separator).stop();
|
|
58741
|
+
setValueNow(val, config);
|
|
58742
|
+
setCount(function (p) { return p + 1; });
|
|
58743
|
+
}, [setValueNow]);
|
|
58744
|
+
};
|
|
58736
58745
|
/**
|
|
58737
58746
|
* Moves separator as per ratio changes. Centers on first render if ratio is undefined.
|
|
58738
58747
|
*/
|
|
@@ -58753,8 +58762,7 @@ var useRatioEffect = function (setValueNow, separator, ratio, startAt) {
|
|
|
58753
58762
|
* Re-arranges the splitter if the limits or orientation change.
|
|
58754
58763
|
*/
|
|
58755
58764
|
var useConfigEffect = function (setValueNow, separator) {
|
|
58756
|
-
var
|
|
58757
|
-
useEffect(function () { return transition(separator).resume(); }, [count]);
|
|
58765
|
+
var setValueNow_static = useSetValueNow_static(setValueNow, separator);
|
|
58758
58766
|
useEffect(function () {
|
|
58759
58767
|
var callback = function (attr) {
|
|
58760
58768
|
return function (_a) {
|
|
@@ -58771,20 +58779,26 @@ var useConfigEffect = function (setValueNow, separator) {
|
|
|
58771
58779
|
// In such case, the newValueNow is moved along with the delimiter.
|
|
58772
58780
|
var newValueNow = !wasInBoundary ? valueNow : newValue;
|
|
58773
58781
|
if (wasInBoundary || valueMax < valueNow || valueMin > valueNow) {
|
|
58774
|
-
|
|
58775
|
-
setValueNow(newValueNow, { min: valueMin, max: valueMax });
|
|
58776
|
-
setCount(function (p) { return p + 1; });
|
|
58782
|
+
setValueNow_static(newValueNow, { min: valueMin, max: valueMax });
|
|
58777
58783
|
}
|
|
58778
58784
|
else {
|
|
58785
|
+
var threshold = 0.01;
|
|
58779
58786
|
var dim = values.orientation === 'vertical' ? 'width' : 'height';
|
|
58780
|
-
var
|
|
58781
|
-
var
|
|
58782
|
-
var
|
|
58783
|
-
var
|
|
58784
|
-
var
|
|
58785
|
-
var
|
|
58786
|
-
|
|
58787
|
-
|
|
58787
|
+
var abs = values.orientation === 'vertical' ? 'left' : 'top';
|
|
58788
|
+
var separatorRect = target.getBoundingClientRect();
|
|
58789
|
+
var gap = separatorRect[dim];
|
|
58790
|
+
var offset = gap / 2;
|
|
58791
|
+
var splitterEl = target.parentElement;
|
|
58792
|
+
var splitterRect = splitterEl.getBoundingClientRect();
|
|
58793
|
+
var container = splitterRect[dim];
|
|
58794
|
+
var primary = Math.max(separatorRect[abs] - splitterRect[abs], 0);
|
|
58795
|
+
var secondary = Math.max(container - primary - gap, 0);
|
|
58796
|
+
if (primary < threshold || secondary < threshold) {
|
|
58797
|
+
return;
|
|
58798
|
+
}
|
|
58799
|
+
var newVal = ((primary + offset) / container) * 100;
|
|
58800
|
+
if (Math.abs(newVal - valueNow) >= threshold) {
|
|
58801
|
+
setValueNow_static(newVal, { min: valueMin, max: valueMax });
|
|
58788
58802
|
}
|
|
58789
58803
|
}
|
|
58790
58804
|
};
|
|
@@ -58851,25 +58865,29 @@ var getGridTemplate = function (separator) {
|
|
|
58851
58865
|
var dimension = orientation === 'horizontal' ? 'height' : 'width';
|
|
58852
58866
|
var seperatorAbsolutePx = (rect[dimension] / 100) * valueNow;
|
|
58853
58867
|
var offset = gap / 2;
|
|
58868
|
+
var clamp = function (val, type) {
|
|
58869
|
+
return "clamp(".concat(offset, "px, ").concat(val).concat(type, ", calc(100% - ").concat(offset, "px))");
|
|
58870
|
+
};
|
|
58854
58871
|
if (boundary === 'keep-primary') {
|
|
58872
|
+
var grid = Math.max(seperatorAbsolutePx - offset, 0);
|
|
58855
58873
|
return {
|
|
58856
|
-
grid: "".concat(
|
|
58857
|
-
primary:
|
|
58874
|
+
grid: "".concat(grid, "px 1fr"),
|
|
58875
|
+
primary: clamp(seperatorAbsolutePx, 'px'),
|
|
58858
58876
|
secondary: ''
|
|
58859
58877
|
};
|
|
58860
58878
|
}
|
|
58861
58879
|
if (boundary === 'keep-secondary') {
|
|
58880
|
+
var grid = Math.max(rect[dimension] - seperatorAbsolutePx - offset, 0);
|
|
58862
58881
|
return {
|
|
58863
|
-
grid: "1fr ".concat(
|
|
58882
|
+
grid: "1fr ".concat(grid, "px"),
|
|
58864
58883
|
primary: '',
|
|
58865
|
-
secondary:
|
|
58884
|
+
secondary: clamp(rect[dimension] - seperatorAbsolutePx, 'px')
|
|
58866
58885
|
};
|
|
58867
58886
|
}
|
|
58868
|
-
var primary = "clamp(".concat(offset, "px, ").concat(valueNow, "%, calc(100% - ").concat(offset, "px))");
|
|
58869
58887
|
return {
|
|
58870
58888
|
grid: "min(calc(".concat(valueNow, "% - ").concat(gap / 2, "px), calc(100% - ").concat(gap, "px)) 1fr"),
|
|
58871
|
-
primary:
|
|
58872
|
-
secondary: "calc(100% - ".concat(
|
|
58889
|
+
primary: clamp(valueNow, '%'),
|
|
58890
|
+
secondary: "calc(100% - ".concat(clamp(valueNow, '%'), ")")
|
|
58873
58891
|
};
|
|
58874
58892
|
};
|
|
58875
58893
|
|
|
@@ -59084,7 +59102,7 @@ var useBoundary = function (separator, boundaries) {
|
|
|
59084
59102
|
}
|
|
59085
59103
|
};
|
|
59086
59104
|
|
|
59087
|
-
var
|
|
59105
|
+
var cancelEvent = function (e) {
|
|
59088
59106
|
if (e.currentTarget !== e.target) {
|
|
59089
59107
|
e.preventDefault();
|
|
59090
59108
|
e.stopPropagation();
|
|
@@ -59113,7 +59131,7 @@ var Separator = forwardRef$1(function (_a, forwardRef) {
|
|
|
59113
59131
|
}
|
|
59114
59132
|
(_a = props === null || props === void 0 ? void 0 : props.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(props, e);
|
|
59115
59133
|
}, className: clsx('Separator', props.className) }),
|
|
59116
|
-
React__default.createElement("span", __assign({}, parts === null || parts === void 0 ? void 0 : parts.container, { className: clsx('Separator-arrows', (_b = parts === null || parts === void 0 ? void 0 : parts.container) === null || _b === void 0 ? void 0 : _b.className), onMouseDown:
|
|
59134
|
+
React__default.createElement("span", __assign({}, parts === null || parts === void 0 ? void 0 : parts.container, { className: clsx('Separator-arrows', (_b = parts === null || parts === void 0 ? void 0 : parts.container) === null || _b === void 0 ? void 0 : _b.className), onMouseDown: cancelEvent, onTouchStart: cancelEvent }),
|
|
59117
59135
|
React__default.createElement(Control, __assign({}, parts === null || parts === void 0 ? void 0 : parts.primary, { side: "primary", onClick: function (e) {
|
|
59118
59136
|
var _a, _b;
|
|
59119
59137
|
setValueNow(controlClickHandler(e, 'primary'));
|