decord/source/design/components/SegmentedControl/native/SegmentedControlState.native.tsx

152 lines
5.4 KiB
TypeScript
Raw Normal View History

2026-08-24 06:08:38 +00:00
// Module ID: 8836
// Function ID: 8837
2026-07-20 16:05:17 +00:00
// Name: useSegmentedControlState
2026-08-24 06:08:38 +00:00
// Dependencies: [19, 712, 1356, 4119, 4347, 4727, 2]
2026-07-20 16:05:17 +00:00
// Exports: useSegmentedControlState
2026-08-24 06:08:38 +00:00
// Module 8836 (useSegmentedControlState)
import closure_3 from "noop" /* 19 */;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-20 16:05:17 +00:00
let closure_4 = { code: "function SegmentedControlStateNativeTsx1(index,dimensions){const{itemDimensions,itemCount}=this.__closure;itemDimensions.get()[index]=dimensions;itemDimensions.set([...itemDimensions.get()].slice(0,itemCount));}" };
2026-08-24 06:08:38 +00:00
let result = require("set").fileFinishedImporting("design/components/SegmentedControl/native/SegmentedControlState.native.tsx");
2026-07-20 16:05:17 +00:00
export const useSegmentedControlState = function useSegmentedControlState(items) {
items = items.items;
const pageWidth = items.pageWidth;
let num = items.defaultIndex;
if (num === undefined) {
num = 0;
}
let PX_24 = items.itemSpacing;
if (PX_24 === undefined) {
2026-07-23 10:11:24 +00:00
PX_24 = pageWidth(PX_24[1]).space.PX_24;
2026-07-20 16:05:17 +00:00
}
const onPageChange = items.onPageChange;
const onPageChangeStart = items.onPageChangeStart;
const onSetActiveIndex = items.onSetActiveIndex;
let enabled;
let sharedValue;
let sharedValue1;
let sharedValue2;
let sharedValue3;
let sharedValue4;
let sharedValue5;
let animatedRef;
let sharedValue6;
2026-08-24 06:08:38 +00:00
closure_15 = undefined;
2026-07-20 16:05:17 +00:00
let callback;
let length;
let callback1;
2026-07-23 10:11:24 +00:00
enabled = onPageChange.useContext(items(PX_24[2]).AccessibilityPreferencesContext).reducedMotion.enabled;
sharedValue = items(PX_24[3]).useSharedValue([]);
let obj = items(PX_24[3]);
sharedValue1 = items(PX_24[3]).useSharedValue(-1);
2026-07-29 08:29:29 +00:00
const obj2 = items(PX_24[3]);
2026-07-23 10:11:24 +00:00
sharedValue2 = items(PX_24[3]).useSharedValue(0);
2026-07-29 08:29:29 +00:00
let obj3 = items(PX_24[3]);
2026-07-23 10:11:24 +00:00
sharedValue3 = items(PX_24[3]).useSharedValue(0);
const obj4 = items(PX_24[3]);
sharedValue4 = items(PX_24[3]).useSharedValue(num);
const obj5 = items(PX_24[3]);
2026-07-20 16:05:17 +00:00
const items1 = [num, num];
2026-07-23 10:11:24 +00:00
sharedValue5 = items(PX_24[3]).useSharedValue(items1);
const obj6 = items(PX_24[3]);
animatedRef = items(PX_24[3]).useAnimatedRef();
const obj7 = items(PX_24[3]);
sharedValue6 = items(PX_24[3]).useSharedValue(-1);
closure_15 = onPageChange.useRef(onPageChange);
2026-07-20 16:05:17 +00:00
const items2 = [onPageChange];
2026-07-23 10:11:24 +00:00
const layoutEffect = onPageChange.useLayoutEffect(() => {
2026-07-20 16:05:17 +00:00
closure_15.current = onPageChange;
}, items2);
const items3 = [sharedValue4, onPageChangeStart, pageWidth, sharedValue1, animatedRef, enabled, onSetActiveIndex];
2026-07-23 10:11:24 +00:00
callback = onPageChange.useCallback((arg0) => {
2026-08-24 06:08:38 +00:00
closure_0 = arg0;
2026-07-29 08:29:29 +00:00
let flag = arg1;
2026-07-20 16:05:17 +00:00
if (arg1 === undefined) {
flag = true;
}
2026-07-29 08:29:29 +00:00
let flag2 = arg2;
if (arg2 === undefined) {
2026-07-20 16:05:17 +00:00
flag2 = false;
}
if (flag) {
flag = sharedValue4.get() !== arg0;
}
if (flag) {
2026-07-23 10:11:24 +00:00
let obj = items(PX_24[4]);
2026-07-29 08:29:29 +00:00
let result = obj.triggerHapticFeedback(items(PX_24[4]).HapticFeedbackTypes.IMPACT_MEDIUM);
2026-07-20 16:05:17 +00:00
}
if (arg0 !== sharedValue4.get()) {
if (null != onPageChangeStart) {
2026-07-29 08:29:29 +00:00
tmp14(arg0, () => {
2026-08-24 06:08:38 +00:00
const result = closure_1_11.set(closure_0);
2026-07-29 08:29:29 +00:00
const result1 = closure_0 * flag2;
2026-08-24 06:08:38 +00:00
const result2 = closure_1_8.set(result1);
2026-07-29 08:29:29 +00:00
let tmp5 = !flag2;
if (!flag2) {
2026-08-24 06:08:38 +00:00
tmp5 = !closure_1_6;
2026-07-29 08:29:29 +00:00
}
if (tmp5) {
let obj = items(PX_24[5]);
tmp5 = !obj.getIsScreenReaderEnabled();
}
2026-08-24 06:08:38 +00:00
if (closure_1_13 != null) {
const current = closure_1_13.current;
2026-07-29 08:29:29 +00:00
if (current != null) {
obj = { x: null, animated: null };
obj[0] = result1;
obj[1] = tmp5;
current.scrollTo(obj);
}
}
2026-08-24 06:08:38 +00:00
if (closure_1_5 != null) {
2026-07-29 08:29:29 +00:00
tmp10(closure_0);
}
2026-07-20 16:05:17 +00:00
});
} else {
2026-07-29 08:29:29 +00:00
let result1 = sharedValue4.set(arg0);
let result2 = arg0 * flag2;
const result3 = sharedValue1.set(result2);
let tmp8 = !flag2;
if (!flag2) {
tmp8 = !enabled;
}
if (tmp8) {
tmp8 = !items(PX_24[5]).getIsScreenReaderEnabled();
const obj3 = items(PX_24[5]);
}
if (animatedRef != null) {
let current = animatedRef.current;
if (current != null) {
obj = { x: null, animated: null };
obj[0] = result2;
obj[1] = tmp8;
current.scrollTo(obj);
}
}
if (onSetActiveIndex != null) {
onSetActiveIndex(arg0);
}
2026-07-20 16:05:17 +00:00
}
}
}, items3);
length = items.length;
class M {
constructor(arg0, arg1) {
2026-08-24 06:08:38 +00:00
closure_7.get()[items] = arg1;
items = [...closure_7.get()];
result = closure_7.set(items.slice(0, length));
2026-07-20 16:05:17 +00:00
return;
}
}
M.__closure = { itemDimensions: sharedValue, itemCount: length };
M.__workletHash = 9501406272062;
2026-07-23 10:11:24 +00:00
M.__initData = onPageChangeStart;
2026-07-20 16:05:17 +00:00
const items4 = [sharedValue, length];
2026-07-23 10:11:24 +00:00
callback1 = onPageChange.useCallback(M, items4);
2026-07-20 16:05:17 +00:00
const items5 = [sharedValue4, sharedValue5, animatedRef, sharedValue1, sharedValue2, sharedValue3, items, sharedValue, PX_24, pageWidth, sharedValue6, callback, callback1, enabled];
2026-07-23 10:11:24 +00:00
return onPageChange.useMemo(() => ({ activeIndex: sharedValue4, visiblePageRange: sharedValue5, pagerRef: animatedRef, scrollTarget: sharedValue1, scrollOverflow: sharedValue2, scrollOffset: sharedValue3, items, itemDimensions: sharedValue, itemSpacing: PX_24, pageWidth, pressedIndex: sharedValue6, onPageChangeRef: closure_15, setActiveIndex: callback, setItemDimensions: callback1, useReducedMotion: enabled }), items5);
2026-07-20 16:05:17 +00:00
};