decord/source/modules/settings/native/renderer/SettingSegmentedControlRenderer.tsx

116 lines
4.2 KiB
TypeScript
Raw Normal View History

2026-08-04 21:03:28 +00:00
// Module ID: 14831
// Function ID: 14832
2026-07-29 08:29:29 +00:00
// Name: SettingSegmentedControl
2026-08-04 21:03:28 +00:00
// Dependencies: [32, 19, 17, 13795, 10362, 21, 4285, 712, 14822, 13800, 38, 13798, 8878, 9063, 9480, 2]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-08-04 21:03:28 +00:00
// Module 14831 (SettingSegmentedControl)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
2026-07-29 08:29:29 +00:00
import noop from "noop";
2026-07-23 10:11:24 +00:00
import { View } from "get ActivityIndicator";
import zustandStore from "zustandStore";
import { NodeType } from "GUILD_SELECT_ALL_SERVERS_OPTION_ID";
import jsxProd from "jsxProd";
2026-07-29 08:29:29 +00:00
import createCacheKey from "createCacheKey";
2026-07-23 10:11:24 +00:00
2026-07-29 08:29:29 +00:00
let c10;
let c9;
let metroImportAll;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-29 08:29:29 +00:00
({ jsx: metroImportAll, Fragment: c9, jsxs: c10 } = jsxProd);
createCacheKey = { controlContainer: null, pageContainer: null };
createCacheKey = { paddingHorizontal: require("Themes").space.PX_16, paddingTop: require("Themes").space.PX_16, paddingBottom: require("Themes").space.PX_8 };
createCacheKey[0] = createCacheKey;
createCacheKey[1] = { flex: 1 };
createCacheKey = createCacheKey.createStyles(createCacheKey);
2026-07-23 10:11:24 +00:00
const result = require("get ActivityIndicator").fileFinishedImporting("modules/settings/native/renderer/SettingSegmentedControlRenderer.tsx");
2026-07-20 16:05:17 +00:00
export default function SettingSegmentedControl(node) {
2026-07-29 08:29:29 +00:00
let c0;
let c2;
2026-07-20 16:05:17 +00:00
let settings;
let tmp3;
let tmp5;
2026-07-29 08:29:29 +00:00
let _require;
settings = undefined;
let dependencyMap;
({ defaultIndex: c0, settings } = node.node);
let tmp = createCacheKey();
[tmp3, c2] = callback(React.useState(0), 2);
2026-07-23 10:11:24 +00:00
let tmp2 = callback(React.useState(0), 2);
2026-07-29 08:29:29 +00:00
[tmp5, r10021] = callback(React.useState(() => {
2026-07-23 10:11:24 +00:00
const field = outer1_6.getField("selected");
2026-07-20 16:05:17 +00:00
if (null != field) {
const index = settings.indexOf(field);
if (-1 !== index) {
return index;
} else {
2026-07-29 08:29:29 +00:00
const ancestors = settings(_undefined[8]).getAncestors(field);
for (const item10020 of ancestors) {
let tmp9 = settings;
let index1 = settings.indexOf(item10020);
let tmp11 = index1;
if (-1 !== index1) {
let tmp12 = obj2;
obj2.return();
return index1;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
const obj = settings(_undefined[8]);
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
return c0;
2026-07-20 16:05:17 +00:00
}), 2);
2026-07-23 10:11:24 +00:00
let items = [settings];
callback = React.useCallback((nativeEvent) => {
2026-07-29 08:29:29 +00:00
_undefined(nativeEvent.nativeEvent.layout.width);
2026-07-20 16:05:17 +00:00
}, []);
const memo = React.useMemo(() => {
const items = [];
2026-07-29 08:29:29 +00:00
const item = settings.forEach((closure_0) => {
const tmp = items(outer1_2[9]).SETTING_RENDERER_CONFIG[closure_0];
outer1_1(outer1_2[10])(tmp.type === outer1_7.ROUTE, "Invalid setting type for segmented control: " + closure_0);
2026-07-20 16:05:17 +00:00
const screen = tmp.screen;
2026-07-29 08:29:29 +00:00
const obj = { label: null, id: null, page: null };
2026-07-20 16:05:17 +00:00
const component = screen.getComponent();
2026-07-29 08:29:29 +00:00
const tmp2 = outer1_1(outer1_2[10]);
obj[0] = items(outer1_2[11]).getSettingTitle(closure_0);
obj[1] = closure_0;
obj[2] = outer1_8(component, {});
2026-07-20 16:05:17 +00:00
items.push(obj);
});
return items;
}, items);
2026-08-04 08:36:32 +00:00
let obj = _require(8878);
2026-07-20 16:05:17 +00:00
const segmentedControlState = obj.useSegmentedControlState({ items: memo, pageWidth: tmp3, defaultIndex: tmp5 });
2026-07-29 08:29:29 +00:00
obj = { children: null };
2026-08-04 08:36:32 +00:00
obj = { style: tmp.controlContainer, onLayout: callback, children: callback2(_require(9063).SegmentedControl, { state: segmentedControlState }) };
2026-07-20 16:05:17 +00:00
const items1 = [callback2(View, obj), ];
const tmp4 = callback(React.useState(() => {
2026-07-23 10:11:24 +00:00
const field = outer1_6.getField("selected");
2026-07-20 16:05:17 +00:00
if (null != field) {
const index = settings.indexOf(field);
if (-1 !== index) {
return index;
} else {
2026-07-29 08:29:29 +00:00
const ancestors = settings(_undefined[8]).getAncestors(field);
for (const item10020 of ancestors) {
let tmp9 = settings;
let index1 = settings.indexOf(item10020);
let tmp11 = index1;
if (-1 !== index1) {
let tmp12 = obj2;
obj2.return();
return index1;
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
const obj = settings(_undefined[8]);
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
return c0;
2026-07-20 16:05:17 +00:00
}), 2);
2026-08-04 08:36:32 +00:00
items1[1] = callback2(View, { style: tmp.pageContainer, children: callback2(_require(9480).SegmentedControlPages, { state: segmentedControlState }) });
2026-07-29 08:29:29 +00:00
obj[0] = items1;
2026-07-20 16:05:17 +00:00
return callback3(closure_9, obj);
};