@newtonedev/components 0.1.10 → 0.1.12
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/composites/range-inputs/HueSlider/HueSlider.d.ts.map +1 -1
- package/dist/composites/range-inputs/Slider/Slider.d.ts.map +1 -1
- package/dist/index.cjs +29 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +29 -10
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/composites/range-inputs/ColorScaleSlider/ColorScaleSlider.tsx +5 -5
- package/src/composites/range-inputs/HueSlider/HueSlider.tsx +5 -2
- package/src/composites/range-inputs/Slider/Slider.tsx +21 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HueSlider.d.ts","sourceRoot":"","sources":["../../../../src/composites/range-inputs/HueSlider/HueSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQxD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,aAAa,EACb,GAAO,EACP,GAAS,EACT,KAAK,EACL,SAAiB,EACjB,aAAqB,EACrB,QAAgB,EAChB,KAAK,GACN,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"HueSlider.d.ts","sourceRoot":"","sources":["../../../../src/composites/range-inputs/HueSlider/HueSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQxD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,aAAa,EACb,GAAO,EACP,GAAS,EACT,KAAK,EACL,SAAiB,EACjB,aAAqB,EACrB,QAAgB,EAChB,KAAK,GACN,EAAE,cAAc,qBAkHhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../../src/composites/range-inputs/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIlD,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,aAAa,EACb,GAAO,EACP,GAAS,EACT,IAAQ,EACR,KAAK,EACL,SAAiB,EACjB,aAAqB,EACrB,QAAgB,EAChB,KAAK,GACN,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../../../src/composites/range-inputs/Slider/Slider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAIlD,wBAAgB,MAAM,CAAC,EACrB,KAAK,EACL,aAAa,EACb,GAAO,EACP,GAAS,EACT,IAAQ,EACR,KAAK,EACL,SAAiB,EACjB,aAAqB,EACrB,QAAgB,EAChB,KAAK,GACN,EAAE,WAAW,qBAyHb"}
|
package/dist/index.cjs
CHANGED
|
@@ -2498,6 +2498,7 @@ function Slider({
|
|
|
2498
2498
|
const trackRef = React14__default.default.useRef(null);
|
|
2499
2499
|
const trackWidth = React14__default.default.useRef(0);
|
|
2500
2500
|
const trackPageX = React14__default.default.useRef(0);
|
|
2501
|
+
const [layoutWidth, setLayoutWidth] = React14__default.default.useState(0);
|
|
2501
2502
|
const onValueChangeRef = React14__default.default.useRef(onValueChange);
|
|
2502
2503
|
const minRef = React14__default.default.useRef(min);
|
|
2503
2504
|
const maxRef = React14__default.default.useRef(max);
|
|
@@ -2538,9 +2539,21 @@ function Slider({
|
|
|
2538
2539
|
})
|
|
2539
2540
|
).current;
|
|
2540
2541
|
const ratio = max > min ? (value - min) / (max - min) : 0;
|
|
2541
|
-
const usableWidth = Math.max(0,
|
|
2542
|
+
const usableWidth = Math.max(0, layoutWidth - THUMB_SIZE2);
|
|
2542
2543
|
const thumbLeft = ratio * usableWidth;
|
|
2543
|
-
const
|
|
2544
|
+
const isCenterOrigin = min < 0 && max > 0;
|
|
2545
|
+
let fillLeft;
|
|
2546
|
+
let fillWidth;
|
|
2547
|
+
if (isCenterOrigin) {
|
|
2548
|
+
const centerRatio = (0 - min) / (max - min);
|
|
2549
|
+
const centerX = centerRatio * usableWidth + THUMB_SIZE2 / 2;
|
|
2550
|
+
const thumbCenterX = thumbLeft + THUMB_SIZE2 / 2;
|
|
2551
|
+
fillLeft = Math.min(centerX, thumbCenterX);
|
|
2552
|
+
fillWidth = Math.abs(thumbCenterX - centerX);
|
|
2553
|
+
} else {
|
|
2554
|
+
fillLeft = 0;
|
|
2555
|
+
fillWidth = thumbLeft + THUMB_SIZE2 / 2;
|
|
2556
|
+
}
|
|
2544
2557
|
const handleValueTextSubmit = React14__default.default.useCallback(
|
|
2545
2558
|
(text) => {
|
|
2546
2559
|
const raw = Number(text);
|
|
@@ -2573,7 +2586,9 @@ function Slider({
|
|
|
2573
2586
|
ref: trackRef,
|
|
2574
2587
|
style: styles.trackContainer,
|
|
2575
2588
|
onLayout: (e) => {
|
|
2576
|
-
|
|
2589
|
+
const w = e.nativeEvent.layout.width;
|
|
2590
|
+
trackWidth.current = w;
|
|
2591
|
+
setLayoutWidth(w);
|
|
2577
2592
|
trackRef.current?.measure((_x, _y, _w, _h, pageX) => {
|
|
2578
2593
|
if (pageX != null) trackPageX.current = pageX;
|
|
2579
2594
|
});
|
|
@@ -2581,7 +2596,7 @@ function Slider({
|
|
|
2581
2596
|
...panResponder.panHandlers
|
|
2582
2597
|
},
|
|
2583
2598
|
/* @__PURE__ */ React14__default.default.createElement(reactNative.View, { style: styles.trackRail }),
|
|
2584
|
-
/* @__PURE__ */ React14__default.default.createElement(reactNative.View, { style: [styles.trackFill, { width: fillWidth }] }),
|
|
2599
|
+
/* @__PURE__ */ React14__default.default.createElement(reactNative.View, { style: [styles.trackFill, { left: fillLeft, width: fillWidth }] }),
|
|
2585
2600
|
/* @__PURE__ */ React14__default.default.createElement(reactNative.View, { style: [styles.thumb, { left: thumbLeft }] })
|
|
2586
2601
|
));
|
|
2587
2602
|
}
|
|
@@ -2716,6 +2731,7 @@ function HueSlider({
|
|
|
2716
2731
|
const trackRef = React14__default.default.useRef(null);
|
|
2717
2732
|
const trackWidth = React14__default.default.useRef(0);
|
|
2718
2733
|
const trackPageX = React14__default.default.useRef(0);
|
|
2734
|
+
const [layoutWidth, setLayoutWidth] = React14__default.default.useState(0);
|
|
2719
2735
|
const onValueChangeRef = React14__default.default.useRef(onValueChange);
|
|
2720
2736
|
const minRef = React14__default.default.useRef(min);
|
|
2721
2737
|
const maxRef = React14__default.default.useRef(max);
|
|
@@ -2753,7 +2769,7 @@ function HueSlider({
|
|
|
2753
2769
|
).current;
|
|
2754
2770
|
const sliderValue = max > 359 && value < min ? value + 360 : value;
|
|
2755
2771
|
const ratio = max > min ? (sliderValue - min) / (max - min) : 0;
|
|
2756
|
-
const usableWidth = Math.max(0,
|
|
2772
|
+
const usableWidth = Math.max(0, layoutWidth - THUMB_SIZE3);
|
|
2757
2773
|
const thumbLeft = ratio * usableWidth;
|
|
2758
2774
|
const handleValueTextSubmit = React14__default.default.useCallback(
|
|
2759
2775
|
(text) => {
|
|
@@ -2787,7 +2803,9 @@ function HueSlider({
|
|
|
2787
2803
|
ref: trackRef,
|
|
2788
2804
|
style: styles.trackContainer,
|
|
2789
2805
|
onLayout: (e) => {
|
|
2790
|
-
|
|
2806
|
+
const w = e.nativeEvent.layout.width;
|
|
2807
|
+
trackWidth.current = w;
|
|
2808
|
+
setLayoutWidth(w);
|
|
2791
2809
|
trackRef.current?.measure((_x, _y, _w, _h, pageX) => {
|
|
2792
2810
|
if (pageX != null) trackPageX.current = pageX;
|
|
2793
2811
|
});
|
|
@@ -2875,6 +2893,7 @@ function ColorScaleSlider({
|
|
|
2875
2893
|
const trackPageX = React14__default.default.useRef(0);
|
|
2876
2894
|
const isDragging = React14__default.default.useRef(false);
|
|
2877
2895
|
const thumbAnim = React14__default.default.useRef(new reactNative.Animated.Value(0)).current;
|
|
2896
|
+
const [layoutWidth, setLayoutWidth] = React14__default.default.useState(0);
|
|
2878
2897
|
const onValueChangeRef = React14__default.default.useRef(onValueChange);
|
|
2879
2898
|
const disabledRef = React14__default.default.useRef(disabled);
|
|
2880
2899
|
const colorsLengthRef = React14__default.default.useRef(colors.length);
|
|
@@ -2936,7 +2955,7 @@ function ColorScaleSlider({
|
|
|
2936
2955
|
const range = maxNV - minNV;
|
|
2937
2956
|
const clampedValue = value !== void 0 ? Math.min(maxNV, Math.max(minNV, value)) : (maxNV + minNV) / 2;
|
|
2938
2957
|
const ratio = range > 0 ? (maxNV - clampedValue) / range : 0.5;
|
|
2939
|
-
const usableWidth = Math.max(0,
|
|
2958
|
+
const usableWidth = Math.max(0, layoutWidth - THUMB_SIZE4);
|
|
2940
2959
|
const thumbLeft = ratio * usableWidth;
|
|
2941
2960
|
React14__default.default.useEffect(() => {
|
|
2942
2961
|
if (isDragging.current || !animateValue) {
|
|
@@ -2955,9 +2974,9 @@ function ColorScaleSlider({
|
|
|
2955
2974
|
ref: trackRef,
|
|
2956
2975
|
style: styles.trackContainer,
|
|
2957
2976
|
onLayout: (e) => {
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2977
|
+
const w = e.nativeEvent.layout.width;
|
|
2978
|
+
trackWidth.current = w;
|
|
2979
|
+
setLayoutWidth(w);
|
|
2961
2980
|
trackRef.current?.measure((_x, _y, _w, _h, pageX) => {
|
|
2962
2981
|
if (pageX != null) trackPageX.current = pageX;
|
|
2963
2982
|
});
|