decord/source/modules/launchpad/native/LaunchPad.tsx

889 lines
31 KiB
TypeScript
Raw Normal View History

2026-07-24 07:16:23 +00:00
// Module ID: 15697
// Function ID: 121008
2026-07-20 16:05:17 +00:00
// Name: _createForOfIteratorHelperLoose
2026-07-24 07:16:23 +00:00
// Dependencies: [57, 31, 27, 3823, 6757, 5722, 5039, 1352, 1194, 1348, 6960, 6878, 12729, 4142, 4970, 4325, 4146, 653, 33, 689, 4130, 4660, 4126, 566, 3991, 3989, 5772, 1212, 11960, 10234, 14454, 477, 13556, 11837, 7104, 3981, 7105, 7093, 1450, 1557, 7094, 10840, 675, 15698, 15705, 13557, 15724, 15725, 2]
2026-07-20 16:05:17 +00:00
2026-07-24 07:16:23 +00:00
// Module 15697 (_createForOfIteratorHelperLoose)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
import importAllResult from "set";
import { View } from "getSystemLocale";
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
import closure_7 from "_isNativeReflectConstruct";
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
import closure_12 from "_isNativeReflectConstruct";
import _callSuper from "_callSuper";
import closure_15 from "_isNativeReflectConstruct";
import closure_16 from "_isNativeReflectConstruct";
import closure_17 from "_isNativeReflectConstruct";
import closure_18 from "_isNativeReflectConstruct";
import closure_19 from "_isNativeReflectConstruct";
import closure_20 from "_isNativeReflectConstruct";
import closure_21 from "_isNativeReflectConstruct";
import closure_22 from "_isNativeReflectConstruct";
import closure_23 from "_isNativeReflectConstruct";
import { AnalyticEvents } from "ME";
import jsxProd from "hideLaunchPad";
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose";
let closure_10;
let closure_11;
let closure_13;
let closure_14;
let closure_25;
let closure_26;
let closure_8;
let closure_9;
const require = arg1;
function _createForOfIteratorHelperLoose(iterable) {
let closure_0 = iterable;
iterable = "undefined" !== typeof Symbol;
if (iterable) {
2026-07-20 16:05:17 +00:00
const _Symbol = Symbol;
2026-07-23 10:11:24 +00:00
iterable = iterable[Symbol.iterator];
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if (!iterable) {
iterable = iterable[Symbol.iterator];
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if (iterable) {
const iter = iterable.call(iterable);
2026-07-20 16:05:17 +00:00
const next = iter.next;
return next.bind(iter);
} else {
const _Array = Array;
2026-07-23 10:11:24 +00:00
let tmp = iterable;
if (!Array.isArray(iterable)) {
2026-07-20 16:05:17 +00:00
let tmp2;
2026-07-23 10:11:24 +00:00
if (iterable) {
if ("string" === typeof iterable) {
tmp2 = _arrayLikeToArray(iterable, undefined);
2026-07-20 16:05:17 +00:00
} else {
const toString = {}.toString;
2026-07-23 10:11:24 +00:00
const substr = toString.call(iterable).slice(8, -1);
2026-07-20 16:05:17 +00:00
let name = substr;
if (tmp3) {
2026-07-23 10:11:24 +00:00
name = iterable.constructor.name;
2026-07-20 16:05:17 +00:00
}
if ("Map" !== name) {
if ("Set" !== name) {
if ("Arguments" === name) {
2026-07-23 10:11:24 +00:00
let arr = _arrayLikeToArray(iterable, undefined);
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/;
2026-07-20 16:05:17 +00:00
}
}
tmp2 = arr;
}
const _Array2 = Array;
2026-07-23 10:11:24 +00:00
arr = Array.from(iterable);
const callResult = toString.call(iterable);
tmp3 = "Object" === substr && iterable.constructor;
2026-07-20 16:05:17 +00:00
}
}
tmp = tmp2;
if (!tmp2) {
const _TypeError = TypeError;
const typeError = new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
throw typeError;
}
}
if (tmp) {
2026-07-23 10:11:24 +00:00
closure_0 = tmp;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let c1 = 0;
2026-07-20 16:05:17 +00:00
return () => {
2026-07-23 10:11:24 +00:00
if (closure_1 >= length.length) {
2026-07-20 16:05:17 +00:00
let obj = { done: true };
} else {
obj = { done: false };
closure_1 = tmp3 + 1;
2026-07-23 10:11:24 +00:00
obj.value = length[+closure_1];
2026-07-20 16:05:17 +00:00
}
return obj;
};
}
}
function _arrayLikeToArray(arg0, arg1) {
let length;
if (tmp) {
length = arg0.length;
}
const ArrayResult = Array(length);
for (let num = 0; num < length; num = num + 1) {
ArrayResult[num] = arg0[num];
}
return ArrayResult;
}
function TabButton(selected) {
let accessibilityLabel;
let icon;
let onPress;
let style;
selected = selected.selected;
({ onPress, icon, accessibilityLabel, style } = selected);
2026-07-23 10:11:24 +00:00
const tmp = callback3();
2026-07-20 16:05:17 +00:00
const obj = { onPress };
const items = [tmp.tab, style, ];
let tabSelected;
if (selected) {
tabSelected = tmp.tabSelected;
}
items[2] = tabSelected;
obj.style = items;
obj.accessibilityLabel = accessibilityLabel;
obj.accessibilityRole = "tab";
obj.accessibilityState = { selected };
2026-07-23 10:11:24 +00:00
const colors = importDefault(689).colors;
2026-07-20 16:05:17 +00:00
obj.children = icon(selected ? colors.INTERACTIVE_TEXT_ACTIVE : colors.INTERACTIVE_TEXT_DEFAULT);
2026-07-23 10:11:24 +00:00
return closure_25(require(4660) /* PressableBase */.PressableHighlight, obj);
2026-07-20 16:05:17 +00:00
}
function TabHeader(text) {
2026-07-23 10:11:24 +00:00
const obj = { style: callback3().subheader, variant: "heading-md/extrabold", maxFontSizeMultiplier: 1.75, accessibilityRole: "header", children: text.text };
return callback2(require(4126) /* Text */.Text, obj);
2026-07-20 16:05:17 +00:00
}
function createAndAppendChannel(arg0, has, arr) {
if (!has.has(arg0)) {
2026-07-24 07:16:23 +00:00
const tmp3 = importDefault(7104)(arg0);
2026-07-20 16:05:17 +00:00
if (null != tmp3) {
arr.push(tmp3);
has.add(arg0);
}
}
}
function useInitialResults(disabled) {
disabled = disabled.disabled;
const visible = disabled.visible;
2026-07-23 10:11:24 +00:00
let obj = disabled(selectedGuildFromRoute[35]);
selectedGuildFromRoute = obj.getSelectedGuildFromRoute();
const selectedChannelFromRoute = disabled(selectedGuildFromRoute[35]).getSelectedChannelFromRoute();
const tmp3 = selectedChannelFromRoute(first.useState(undefined), 2);
first = tmp3[0];
2026-07-20 16:05:17 +00:00
const View = tmp5;
2026-07-23 10:11:24 +00:00
let items = [visible];
const effect = first.useEffect(() => {
2026-07-20 16:05:17 +00:00
if (!visible) {
tmp5(undefined);
}
}, items);
2026-07-23 10:11:24 +00:00
let _isNativeReflectConstruct = first.useRef([]);
const obj2 = disabled(selectedGuildFromRoute[35]);
let items1 = [closure_19];
const stateFromStores = disabled(selectedGuildFromRoute[23]).useStateFromStores(items1, () => {
2026-07-20 16:05:17 +00:00
if (visible) {
2026-07-23 10:11:24 +00:00
let current = outer1_19.getUnreadPrivateChannelIds();
2026-07-20 16:05:17 +00:00
} else {
current = ref.current;
}
return current;
});
2026-07-23 10:11:24 +00:00
const effect1 = first.useEffect(() => {
_isNativeReflectConstruct.current = stateFromStores;
2026-07-20 16:05:17 +00:00
});
2026-07-23 10:11:24 +00:00
let closure_8 = first.useRef([]);
const obj3 = disabled(selectedGuildFromRoute[23]);
let items2 = [closure_18, closure_21];
let items3 = [visible, selectedGuildFromRoute];
const stateFromStoresArray = disabled(selectedGuildFromRoute[23]).useStateFromStoresArray(items2, () => {
2026-07-20 16:05:17 +00:00
let iter2;
if (visible) {
const items = [];
const items1 = [];
2026-07-23 10:11:24 +00:00
const tmp4 = outer1_36(outer1_21.getFlattenedGuildIds());
2026-07-20 16:05:17 +00:00
let iter = tmp4();
if (!iter.done) {
do {
let value = iter.value;
2026-07-23 10:11:24 +00:00
let tmp5 = selectedGuildFromRoute;
if (value !== selectedGuildFromRoute) {
let tmp6 = outer1_18;
if (outer1_18.getMentionCount(value) > 0) {
2026-07-20 16:05:17 +00:00
let arr = items.push(value);
} else {
2026-07-23 10:11:24 +00:00
let tmp7 = outer1_18;
if (outer1_18.hasUnread(value)) {
2026-07-20 16:05:17 +00:00
arr = items1.push(value);
}
}
}
iter2 = tmp4();
iter = iter2;
} while (!iter2.done);
}
const push = items.push;
const items2 = [];
HermesBuiltin.arraySpread(items1, 0);
HermesBuiltin.apply(items2, items);
return items;
} else {
return ref2.current;
}
}, items3);
2026-07-23 10:11:24 +00:00
const effect2 = first.useEffect(() => {
2026-07-20 16:05:17 +00:00
closure_8.current = stateFromStoresArray;
});
2026-07-23 10:11:24 +00:00
let closure_10 = first.useRef([]);
const obj4 = disabled(selectedGuildFromRoute[23]);
let items4 = [stateFromStores, closure_23, closure_20, closure_22, closure_12];
let items5 = [disabled, selectedGuildFromRoute, visible, first];
const stateFromStoresArray1 = disabled(selectedGuildFromRoute[23]).useStateFromStoresArray(items4, () => {
let tmp = null != first ? first : items2;
if (!items) {
2026-07-20 16:05:17 +00:00
if (null != tmp) {
2026-07-23 10:11:24 +00:00
if (items1) {
items = [];
items1 = [];
items2 = [];
2026-07-20 16:05:17 +00:00
const items3 = [];
const _Object = Object;
const values = Object.values(ref4.getActiveJoinedUnreadThreadsForGuild(tmp));
for (let num2 = 0; num2 < values.length; num2 = num2 + 1) {
let tmp5 = values[num2];
let tmp6 = tmp5;
for (const key10024 in tmp5) {
let tmp31 = key10024;
let arr = items1.push(key10024);
2026-07-23 10:11:24 +00:00
continue;
2026-07-20 16:05:17 +00:00
}
}
const guildChannels = stateFromStores.getGuild(tmp).guildChannels;
guildChannels.forEachChannel((type) => {
2026-07-23 10:11:24 +00:00
const tmp = callback(type.type);
2026-07-20 16:05:17 +00:00
if (tmp) {
2026-07-23 10:11:24 +00:00
if (!outer2_22.isChannelMuted(type.guild_id, type.id)) {
2026-07-20 16:05:17 +00:00
if (null == type.parent_id) {
let num = 0;
2026-07-23 10:11:24 +00:00
if (outer2_20.getMentionCount(type.id) > 0) {
2026-07-20 16:05:17 +00:00
items.push(type.id);
} else {
if (!tmp) {
2026-07-23 10:11:24 +00:00
num = disabled(selectedGuildFromRoute[36]).getHasImportantUnread(type);
2026-07-20 16:05:17 +00:00
if (num) {
items1.push(type.id);
}
2026-07-23 10:11:24 +00:00
const obj = disabled(selectedGuildFromRoute[36]);
2026-07-20 16:05:17 +00:00
}
if (tmp) {
const keys = Object.keys();
if (keys !== undefined) {
if (keys[num] !== undefined) {
items3.push(type.id);
}
}
2026-07-23 10:11:24 +00:00
} else if (outer2_20.hasUnread(type.id)) {
2026-07-20 16:05:17 +00:00
items2.push(type.id);
}
}
}
}
}
2026-07-23 10:11:24 +00:00
}, { ignoreRecents: true, withThreads: true });
2026-07-20 16:05:17 +00:00
const push = items.push;
const items4 = [];
HermesBuiltin.arraySpread(items1, 0);
HermesBuiltin.apply(items4, items);
const push2 = items.push;
const items5 = [];
HermesBuiltin.arraySpread(items3, 0);
HermesBuiltin.apply(items5, items);
const push3 = items.push;
const items6 = [];
HermesBuiltin.arraySpread(items2, 0);
HermesBuiltin.apply(items6, items);
return items;
} else {
return ref3.current;
}
}
}
return [];
}, items5);
2026-07-23 10:11:24 +00:00
const effect3 = first.useEffect(() => {
2026-07-20 16:05:17 +00:00
closure_10.current = stateFromStoresArray1;
});
2026-07-23 10:11:24 +00:00
closure_12 = first.useRef([]);
let items6 = [disabled, visible, selectedGuildFromRoute, stateFromStoresArray];
const memo = first.useMemo(() => {
2026-07-20 16:05:17 +00:00
if (!disabled) {
if (visible) {
const _Set = Set;
const set = new Set(stateFromStoresArray);
if (null != selectedGuildFromRoute) {
set.add(selectedGuildFromRoute);
}
let arr = ref3();
const items = [];
const _Set2 = Set;
const set1 = new Set();
let diff = arr.length - 1;
if (diff >= 0) {
while (null != arr[diff]) {
let tmp26 = closure_8;
if (obj3.startsWith(closure_8)) {
2026-07-23 10:11:24 +00:00
let tmp18 = outer1_16;
2026-07-20 16:05:17 +00:00
let tmp19 = stateFromStoresArray;
2026-07-23 10:11:24 +00:00
let channel = outer1_16.getChannel(stateFromStoresArray(obj3));
2026-07-20 16:05:17 +00:00
let guild_id;
if (null != channel) {
guild_id = channel.guild_id;
}
let tmp17 = guild_id;
let tmp22 = channel;
} else {
let tmp16 = stateFromStoresArray;
tmp17 = stateFromStoresArray(obj3);
}
let tmp23 = null == tmp17 || set.has(tmp17) || set1.has(tmp17);
if (!tmp23) {
let addResult1 = set1.add(tmp17);
arr = items.push(tmp17);
}
if (items.length >= 20) {
break;
} else {
diff = diff - 1;
if (diff < 0) {
break;
}
}
}
}
return items;
}
}
return ref4.current;
}, items6);
2026-07-23 10:11:24 +00:00
const effect4 = first.useEffect(() => {
2026-07-20 16:05:17 +00:00
closure_12.current = memo;
});
2026-07-23 10:11:24 +00:00
let closure_14 = first.useRef(undefined);
2026-07-20 16:05:17 +00:00
const items7 = [disabled, visible, stateFromStoresArray1, selectedChannelFromRoute, first];
2026-07-23 10:11:24 +00:00
const memo1 = first.useMemo(() => {
2026-07-20 16:05:17 +00:00
let done;
let done2;
if (!disabled) {
if (visible) {
let arr = ref3();
if (null != selectedChannelFromRoute) {
const _HermesInternal = HermesInternal;
const combined = "" + closure_8 + selectedChannelFromRoute;
}
const items = [];
let diff = arr.length - 1;
if (diff >= 0) {
let obj = arr[diff];
while (null != obj) {
let tmp10 = stateFromStoresArray1;
if (!obj.startsWith(stateFromStoresArray1)) {
if (obj !== combined) {
let tmp11 = stateFromStoresArray;
arr = items.push(stateFromStoresArray(obj));
if (items.length >= 20) {
break;
}
}
break;
}
diff = diff - 1;
if (diff < 0) {
break;
}
}
}
const items1 = [];
const items2 = [];
if (null == first) {
const _Set = Set;
const set = new Set();
2026-07-23 10:11:24 +00:00
const tmp20 = outer1_36(items);
2026-07-20 16:05:17 +00:00
let iter = tmp20();
if (!iter.done) {
do {
2026-07-23 10:11:24 +00:00
let tmp21 = outer1_40;
let tmp22 = stateFromStoresArray;
let tmp23 = outer1_40(stateFromStoresArray(iter.value), set, items2);
2026-07-20 16:05:17 +00:00
let iter2 = tmp20();
iter = iter2;
done = iter2.done;
} while (!done);
}
}
const _Set2 = Set;
const set1 = new Set();
if (stateFromStoresArray1.length > 0) {
2026-07-23 10:11:24 +00:00
const tmp32 = outer1_36(stateFromStoresArray1);
2026-07-20 16:05:17 +00:00
let iter3 = tmp32();
if (!iter3.done) {
do {
2026-07-23 10:11:24 +00:00
let tmp33 = outer1_40;
let tmp34 = outer1_40(iter3.value, set1, items1);
2026-07-20 16:05:17 +00:00
let iter4 = tmp32();
iter3 = iter4;
done2 = iter4.done;
} while (!done2);
}
}
if (items2.length > 0) {
obj = { channelHistory: items2, unreads: items1 };
const tmp35 = obj;
}
return tmp35;
} else {
return ref5.current;
}
}
}, items7);
2026-07-23 10:11:24 +00:00
const effect5 = first.useEffect(() => {
2026-07-20 16:05:17 +00:00
closure_14.current = memo1;
});
2026-07-23 10:11:24 +00:00
obj = { initialResults: first.useDeferredValue(memo1), unreadPrivateChannelIds: stateFromStores, unreadGuilds: stateFromStoresArray, guildHistory: memo, selectedUnreadGuild: first, setSelectedUnreadGuild: tmp5 };
2026-07-20 16:05:17 +00:00
return obj;
}
2026-07-23 10:11:24 +00:00
({ CHANNEL_PREFIX: closure_8, getIdFromHistoryItem: closure_9, getNavigationHistory: closure_10, GUILD_PREFIX: closure_11 } = _createForOfIteratorHelperLoose);
({ isGuildSelectableChannelType: closure_13, isGuildVocalChannelType: closure_14 } = _callSuper);
({ jsx: closure_25, jsxs: closure_26 } = jsxProd);
const md = require("_createForOfIteratorHelperLoose").radii.md;
2026-07-20 16:05:17 +00:00
let obj = {};
2026-07-23 10:11:24 +00:00
obj = { flexGrow: 0, marginHorizontal: 16, marginBottom: 16, flexShrink: 1, borderRadius: 24, backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW, flexDirection: "column", justifyContent: "flex-start", alignItems: "stretch", overflow: "hidden" };
2026-07-20 16:05:17 +00:00
obj.wrapper = obj;
2026-07-23 10:11:24 +00:00
obj.launchPadContent = { flex: -1, overflow: "hidden", borderBottomLeftRadius: 24, borderBottomRightRadius: 24 };
obj.header = { paddingHorizontal: 16, paddingTop: 16, flexDirection: "row", flexShrink: 0, flexGrow: 0 };
obj.subheader = { flexGrow: 1, flexShrink: 1, flexDirection: "row", alignItems: "center", alignSelf: "center", paddingStart: 8 };
_createForOfIteratorHelperLoose = { marginStart: 8, flexDirection: "row", flexShrink: 0, backgroundColor: require("_createForOfIteratorHelperLoose").colors.INPUT_BACKGROUND_DEFAULT, borderRadius: md, padding: 5, alignItems: "stretch", justifyContent: "center", gap: 5, borderWidth: 1, borderColor: require("_createForOfIteratorHelperLoose").colors.INPUT_BORDER_DEFAULT };
obj.tabs = _createForOfIteratorHelperLoose;
let obj2 = { width: 32, height: 32, borderRadius: md - 5, alignItems: "center", justifyContent: "center" };
2026-07-20 16:05:17 +00:00
obj.tab = obj2;
2026-07-23 10:11:24 +00:00
obj.tabSelected = { backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW };
let closure_27 = _createForOfIteratorHelperLoose.createStyles(obj);
2026-07-20 16:05:17 +00:00
let closure_28 = { SEARCH: 0, [0]: "SEARCH", MEMBERS: 1, [1]: "MEMBERS", NOTIFICATIONS: 2, [2]: "NOTIFICATIONS", DEV_TOOLS: 3, [3]: "DEV_TOOLS" };
let closure_29 = { code: "function LaunchPadTsx1(){const{sharedState}=this.__closure;return sharedState.get();}" };
let closure_30 = { code: "function LaunchPadTsx2(sharedState){const{keyboardShown,runOnJS,setFocused}=this.__closure;if(!keyboardShown.get()&&sharedState>0.75){runOnJS(setFocused)(true);}else if(keyboardShown.get()&&sharedState<=0){runOnJS(setFocused)(false);}}" };
let closure_31 = importAllResult.memo((tab) => {
2026-07-23 10:11:24 +00:00
let importDefault;
2026-07-20 16:05:17 +00:00
let sharedState;
tab = tab.tab;
2026-07-23 10:11:24 +00:00
({ setTab: importDefault, sharedState } = tab);
2026-07-20 16:05:17 +00:00
const searchRef = tab.searchRef;
2026-07-23 10:11:24 +00:00
let tmp = callback3();
let obj = tab(sharedState[23]);
2026-07-20 16:05:17 +00:00
const items = [closure_17];
2026-07-23 10:11:24 +00:00
const stateFromStores = obj.useStateFromStores(items, () => outer1_17.isDeveloper);
importAllResult = importAllResult.useRef(false);
let obj1 = tab(sharedState[24]);
2026-07-20 16:05:17 +00:00
const sharedValue = obj1.useSharedValue(false);
2026-07-23 10:11:24 +00:00
let _isNativeReflectConstruct = importAllResult.useRef(tab);
const effect = importAllResult.useEffect(() => {
_isNativeReflectConstruct.current = tab;
2026-07-20 16:05:17 +00:00
});
const items1 = [sharedValue, searchRef];
2026-07-23 10:11:24 +00:00
const callback = importAllResult.useCallback((arg0, arg1) => {
2026-07-20 16:05:17 +00:00
if (arg0) {
2026-07-23 10:11:24 +00:00
if (ref2.current === outer1_28.SEARCH) {
2026-07-20 16:05:17 +00:00
let isFocusedResult;
const bestActiveInput = tab(sharedState[25]).getBestActiveInput();
if (null != bestActiveInput) {
isFocusedResult = bestActiveInput.isFocused();
}
ref.current = true === isFocusedResult;
if (null != searchRef.current) {
const result = sharedValue.set(true);
const current2 = searchRef.current;
if (null != current2) {
current2.focus();
}
}
const obj3 = tab(sharedState[25]);
const tmp15 = ref;
}
}
if (!arg0) {
if (ref.current) {
if (!arg1) {
const bestActiveInput1 = tab(sharedState[25]).getBestActiveInput();
if (null != bestActiveInput1) {
bestActiveInput1.focus();
}
const obj = tab(sharedState[25]);
}
}
const current = searchRef.current;
if (null != current) {
current.blur();
}
ref.current = false;
const result1 = sharedValue.set(false);
}
}, items1);
2026-07-23 10:11:24 +00:00
let obj2 = tab(sharedState[23]);
const items2 = [_isNativeReflectConstruct];
2026-07-20 16:05:17 +00:00
const stateFromStores1 = obj2.useStateFromStores(items2, () => ref2.isOpen());
const items3 = [stateFromStores1, callback];
2026-07-23 10:11:24 +00:00
const effect1 = importAllResult.useEffect(() => {
2026-07-20 16:05:17 +00:00
callback(!stateFromStores1, stateFromStores1);
}, items3);
const items4 = [tab, sharedState, callback];
2026-07-23 10:11:24 +00:00
const effect2 = importAllResult.useEffect(() => {
let tmp = tab === outer1_28.SEARCH;
2026-07-20 16:05:17 +00:00
if (tmp) {
tmp = 1 === sharedState.get();
}
if (tmp) {
callback(true);
}
}, items4);
2026-07-23 10:11:24 +00:00
let obj3 = tab(sharedState[24]);
2026-07-20 16:05:17 +00:00
const fn = function v() {
return sharedState.get();
};
fn.__closure = { sharedState };
fn.__workletHash = 17067823098320;
fn.__initData = closure_29;
class S {
constructor(arg0) {
if (!closure_5.get()) {
num = 0.75;
if (tab > 0.75) {
tmp = tab;
tmp2 = sharedState;
num2 = 24;
obj = tab(sharedState[24]);
tmp3 = closure_7;
flag = true;
tmp4 = obj.runOnJS(closure_7)(true);
}
return;
}
value = closure_5.get();
if (value) {
num3 = 0;
value = tab <= 0;
}
if (value) {
tmp6 = tab;
tmp7 = sharedState;
num4 = 24;
obj2 = tab(sharedState[24]);
tmp8 = closure_7;
flag2 = false;
tmp9 = obj2.runOnJS(closure_7)(false);
}
return;
}
}
2026-07-23 10:11:24 +00:00
obj = { keyboardShown: sharedValue, runOnJS: tab(sharedState[24]).runOnJS, setFocused: callback };
2026-07-20 16:05:17 +00:00
S.__closure = obj;
S.__workletHash = 3784684686013;
S.__initData = closure_30;
const animatedReaction = obj3.useAnimatedReaction(fn, S);
obj = { style: tmp.header };
if (tab === constants.SEARCH) {
2026-07-23 10:11:24 +00:00
obj1 = { size: "md", returnKeyType: "done", ref: searchRef, onChange: tab.updateQuery, autoComplete: "off", spellCheck: false, autoFocus: false };
let tmp15 = callback2(tab(sharedState[26]).SearchField, obj1);
2026-07-20 16:05:17 +00:00
} else if (tab === constants.MEMBERS) {
obj2 = {};
2026-07-23 10:11:24 +00:00
const intl2 = tab(sharedState[27]).intl;
obj2.text = intl2.string(tab(sharedState[27]).t["9Oq93m"]);
tmp15 = callback2(TabHeader, obj2);
2026-07-20 16:05:17 +00:00
} else if (tab === constants.NOTIFICATIONS) {
obj3 = {};
2026-07-23 10:11:24 +00:00
const intl = tab(sharedState[27]).intl;
obj3.text = intl.string(tab(sharedState[27]).t.HcoRu0);
tmp15 = callback2(TabHeader, obj3);
2026-07-20 16:05:17 +00:00
} else {
const obj4 = { text: "Dev Tools" };
2026-07-23 10:11:24 +00:00
tmp15 = callback2(TabHeader, obj4);
2026-07-20 16:05:17 +00:00
}
const items5 = [tmp15, ];
const obj5 = { style: tmp.tabs };
const obj6 = {
icon(color) {
2026-07-23 10:11:24 +00:00
return outer1_25(tab(sharedState[28]).FlashIcon, { size: "sm", color });
2026-07-20 16:05:17 +00:00
}
};
2026-07-23 10:11:24 +00:00
const intl3 = tab(sharedState[27]).intl;
obj6.accessibilityLabel = intl3.string(tab(sharedState[27]).t.JqV7IC);
2026-07-20 16:05:17 +00:00
obj6.onPress = function onPress() {
2026-07-23 10:11:24 +00:00
callback(outer1_28.SEARCH);
2026-07-20 16:05:17 +00:00
const current = searchRef.current;
if (null != current) {
current.focus();
}
};
obj6.selected = tab === constants.SEARCH;
2026-07-23 10:11:24 +00:00
const items6 = [callback2(TabButton, obj6), , ];
2026-07-20 16:05:17 +00:00
const obj7 = {
icon(color) {
2026-07-23 10:11:24 +00:00
return outer1_25(tab(sharedState[29]).BellIcon, { size: "sm", color });
2026-07-20 16:05:17 +00:00
}
};
2026-07-23 10:11:24 +00:00
const intl4 = tab(sharedState[27]).intl;
obj7.accessibilityLabel = intl4.string(tab(sharedState[27]).t.HcoRu0);
2026-07-20 16:05:17 +00:00
obj7.onPress = function onPress() {
2026-07-23 10:11:24 +00:00
callback(outer1_28.NOTIFICATIONS);
2026-07-20 16:05:17 +00:00
const current = searchRef.current;
if (null != current) {
current.blur();
}
};
obj7.selected = tab === constants.NOTIFICATIONS;
2026-07-23 10:11:24 +00:00
items6[1] = callback2(TabButton, obj7);
2026-07-20 16:05:17 +00:00
let tmp29 = null;
if (stateFromStores) {
const obj8 = {
icon(color) {
2026-07-23 10:11:24 +00:00
return outer1_25(tab(sharedState[30]).StaffBadgeIcon, { size: "sm", color });
2026-07-20 16:05:17 +00:00
},
accessibilityLabel: "Dev Tools",
selected: tab === constants.DEV_TOOLS,
onPress() {
if (obj.isAndroid()) {
tab(sharedState[32]).navigateToDevTools();
2026-07-23 10:11:24 +00:00
outer1_1(sharedState[33])();
2026-07-20 16:05:17 +00:00
const obj2 = tab(sharedState[32]);
} else {
2026-07-23 10:11:24 +00:00
callback(outer1_28.DEV_TOOLS);
2026-07-20 16:05:17 +00:00
}
const current = searchRef.current;
if (null != current) {
current.blur();
}
}
};
2026-07-23 10:11:24 +00:00
tmp29 = callback2(TabButton, obj8);
2026-07-20 16:05:17 +00:00
}
items6[2] = tmp29;
obj5.children = items6;
2026-07-23 10:11:24 +00:00
items5[1] = closure_26(sharedValue, obj5);
2026-07-20 16:05:17 +00:00
obj.children = items5;
2026-07-23 10:11:24 +00:00
return closure_26(sharedValue, obj);
2026-07-20 16:05:17 +00:00
});
let closure_32 = [];
2026-07-23 10:11:24 +00:00
let items = [require("sortByMatchScore").AutocompleterResultTypes.GUILD, require("sortByMatchScore").AutocompleterResultTypes.TEXT_CHANNEL, require("sortByMatchScore").AutocompleterResultTypes.GROUP_DM, require("sortByMatchScore").AutocompleterResultTypes.VOICE_CHANNEL, require("sortByMatchScore").AutocompleterResultTypes.USER];
2026-07-20 16:05:17 +00:00
let closure_34 = { code: "function LaunchPadTsx3(){const{sharedState}=this.__closure;return sharedState.get()===0;}" };
let closure_35 = { code: "function LaunchPadTsx4(hidden,prevHidden){const{runOnJS,clearQuery,cancelTimeout}=this.__closure;if(hidden===prevHidden)return;if(hidden&&hidden!==prevHidden){runOnJS(clearQuery)();}else if(!hidden&&hidden!==prevHidden){runOnJS(cancelTimeout)();}}" };
2026-07-23 10:11:24 +00:00
let obj3 = { backgroundColor: require("_createForOfIteratorHelperLoose").colors.BACKGROUND_BASE_LOW };
2026-07-20 16:05:17 +00:00
const memoResult = importAllResult.memo(function LaunchPad(arg0) {
let guildHistory;
let initialResults;
let queryResults;
let selectedUnreadGuild;
let setSelectedUnreadGuild;
let sharedState;
let tmp11;
let tmp12;
let unreadGuilds;
let unreadPrivateChannelIds;
let updateQuery;
let visible;
({ visible, sharedState } = arg0);
2026-07-23 10:11:24 +00:00
let tmp2 = callback(importAllResult.useState(false), 2);
const _require = tmp2[1];
2026-07-20 16:05:17 +00:00
callback = importAllResult.useCallback(() => callback((arg0) => !arg0), []);
const ref = importAllResult.useRef(null);
2026-07-23 10:11:24 +00:00
const tmp5 = (function useAutocompleterResults(visible) {
2026-07-20 16:05:17 +00:00
let closure_0 = visible;
2026-07-23 10:11:24 +00:00
let tmp = tmp9(outer1_4.useState(""), 2);
2026-07-20 16:05:17 +00:00
let closure_1 = tmp[1];
2026-07-23 10:11:24 +00:00
const tmp2 = tmp9(outer1_4.useState(outer1_32), 2);
2026-07-20 16:05:17 +00:00
let closure_2 = tmp2[1];
2026-07-23 10:11:24 +00:00
const first = tmp9(outer1_4.useState(() => {
let tmp = str(first[40]);
2026-07-20 16:05:17 +00:00
tmp = new tmp((arg0, str) => {
if ("" === str.trim()) {
2026-07-23 10:11:24 +00:00
outer1_2(outer3_32);
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
outer1_2(arg0);
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
}, outer2_33, undefined, { frecencyBoosters: true });
2026-07-20 16:05:17 +00:00
return tmp;
}), 1)[0];
2026-07-23 10:11:24 +00:00
let items = [first];
const effect = outer1_4.useEffect(() => () => outer1_3.clean(), items);
2026-07-20 16:05:17 +00:00
const items1 = [first];
2026-07-23 10:11:24 +00:00
const effect1 = outer1_4.useEffect(() => str(first[41]).addRouteChangeListener(() => {
const items = ["user:" + outer3_15.getId()];
2026-07-20 16:05:17 +00:00
const set = new Set(items);
2026-07-23 10:11:24 +00:00
const selectedGuildFromRoute = callback(first[35]).getSelectedGuildFromRoute();
2026-07-20 16:05:17 +00:00
if (null != selectedGuildFromRoute) {
const _HermesInternal = HermesInternal;
set.add("guild:" + selectedGuildFromRoute);
}
2026-07-23 10:11:24 +00:00
outer1_3.setOptions({ blacklist: set }, true);
2026-07-20 16:05:17 +00:00
}), items1);
const items2 = [visible, first];
2026-07-23 10:11:24 +00:00
const effect2 = outer1_4.useEffect(() => {
if (closure_0) {
2026-07-20 16:05:17 +00:00
obj.resume();
} else {
obj.pause();
}
}, items2);
const items3 = [first];
return {
queryResults: tmp2[0],
query: tmp[0],
2026-07-23 10:11:24 +00:00
updateQuery: outer1_4.useCallback((arg0) => {
2026-07-20 16:05:17 +00:00
callback(arg0);
first.search(arg0);
}, items3)
};
2026-07-23 10:11:24 +00:00
})(visible);
const str = tmp5.query;
2026-07-20 16:05:17 +00:00
({ updateQuery, queryResults } = tmp5);
let obj = { disabled: str.trim().length > 0, visible };
const tmp6 = useInitialResults(obj);
({ initialResults, selectedUnreadGuild } = tmp6);
({ unreadPrivateChannelIds, unreadGuilds, guildHistory, setSelectedUnreadGuild } = tmp6);
2026-07-23 10:11:24 +00:00
const tmp7 = callback(importAllResult.useState(false), 2);
let first = tmp7[0];
callback = tmp9;
let tmp = callback3();
[tmp11, tmp12] = callback(importAllResult.useState(constants.SEARCH), 2);
let items = [str, tmp7[1], first];
const tmp10 = callback(importAllResult.useState(constants.SEARCH), 2);
let effect = importAllResult.useEffect(() => {
2026-07-20 16:05:17 +00:00
if (str.length > 0) {
if (!first) {
2026-07-23 10:11:24 +00:00
str(first[42]).track(outer1_24.LAUNCHPAD_SEARCHED);
2026-07-20 16:05:17 +00:00
tmp9(true);
const obj = str(first[42]);
}
}
if (0 === str.length) {
2026-07-23 10:11:24 +00:00
tmp9 = tmp9(false);
2026-07-20 16:05:17 +00:00
}
}, items);
2026-07-23 10:11:24 +00:00
(function useDeferredQueryClear(updateQuery, ref, sharedState) {
2026-07-20 16:05:17 +00:00
let callback = updateQuery;
2026-07-23 10:11:24 +00:00
let closure_1 = ref;
let closure_2 = sharedState;
let _slicedToArray = outer1_4.useRef(-1);
2026-07-20 16:05:17 +00:00
const items = [updateQuery, ref];
2026-07-23 10:11:24 +00:00
callback = outer1_4.useCallback(() => {
2026-07-20 16:05:17 +00:00
clearTimeout(ref.current);
ref.current = setTimeout(() => {
2026-07-23 10:11:24 +00:00
clearTimeout(outer1_3.current);
outer1_0("");
const current = outer1_1.current;
2026-07-20 16:05:17 +00:00
if (null != current) {
current.setText("");
}
}, 100);
}, items);
2026-07-23 10:11:24 +00:00
const callback1 = outer1_4.useCallback(() => {
2026-07-20 16:05:17 +00:00
clearTimeout(ref.current);
}, []);
2026-07-23 10:11:24 +00:00
const effect = outer1_4.useEffect(() => () => clearTimeout(outer1_3.current), []);
2026-07-20 16:05:17 +00:00
let obj = callback(first[24]);
const fn = function u() {
2026-07-23 10:11:24 +00:00
return 0 === sharedState.get();
2026-07-20 16:05:17 +00:00
};
fn.__closure = { sharedState };
fn.__workletHash = 7315121230879;
2026-07-23 10:11:24 +00:00
fn.__initData = outer1_34;
2026-07-20 16:05:17 +00:00
const fn2 = function a(arg0, arg1) {
if (arg0 !== arg1) {
if (arg0) {
if (tmp) {
2026-07-23 10:11:24 +00:00
updateQuery(first[24]).runOnJS(callback)();
const obj2 = updateQuery(first[24]);
2026-07-20 16:05:17 +00:00
}
}
let tmp2 = arg0;
if (!arg0) {
tmp2 = arg0 === arg1;
}
if (!tmp2) {
2026-07-23 10:11:24 +00:00
updateQuery(first[24]).runOnJS(callback1)();
const obj = updateQuery(first[24]);
2026-07-20 16:05:17 +00:00
}
}
};
obj = { runOnJS: callback(first[24]).runOnJS, clearQuery: callback, cancelTimeout: callback1 };
fn2.__closure = obj;
fn2.__workletHash = 6379173436444;
2026-07-23 10:11:24 +00:00
fn2.__initData = outer1_35;
2026-07-20 16:05:17 +00:00
const animatedReaction = obj.useAnimatedReaction(fn, fn2);
2026-07-23 10:11:24 +00:00
})(updateQuery, ref, sharedState);
2026-07-20 16:05:17 +00:00
obj = {
2026-07-23 10:11:24 +00:00
style: (function useWrapperStyles() {
const tmp = outer1_27();
2026-07-20 16:05:17 +00:00
let closure_0 = tmp;
const height = str(first[38])().height;
const rect = str(first[39])();
const top = rect.top;
const bottom = rect.bottom;
2026-07-23 10:11:24 +00:00
let items = [height, top, bottom, tmp];
return outer1_4.useMemo(() => {
2026-07-20 16:05:17 +00:00
const items = [tmp.wrapper, { maxHeight: height - top - bottom - 16 }];
return items;
}, items);
2026-07-23 10:11:24 +00:00
})()
2026-07-20 16:05:17 +00:00
};
2026-07-23 10:11:24 +00:00
const tmp13 = (function useWrapperStyles() {
const tmp = outer1_27();
2026-07-20 16:05:17 +00:00
let closure_0 = tmp;
const height = str(first[38])().height;
const rect = str(first[39])();
const top = rect.top;
const bottom = rect.bottom;
2026-07-23 10:11:24 +00:00
let items = [height, top, bottom, tmp];
return outer1_4.useMemo(() => {
2026-07-20 16:05:17 +00:00
const items = [tmp.wrapper, { maxHeight: height - top - bottom - 16 }];
return items;
}, items);
2026-07-23 10:11:24 +00:00
})();
let items1 = [callback2(closure_31, { tab: tmp11, setTab: tmp12, updateQuery, searchRef: ref, sharedState }), , ];
2026-07-20 16:05:17 +00:00
let tmp19 = 0 === str.trim().length;
if (tmp19) {
tmp19 = tmp11 === constants.SEARCH;
}
if (tmp19) {
obj = { selectedGuildId: selectedUnreadGuild, setSelectedGuild: setSelectedUnreadGuild, unreadPrivateChannelIds, unreadGuilds, guildHistory, visible };
2026-07-23 10:11:24 +00:00
tmp19 = callback2(str(first[43]), obj);
2026-07-20 16:05:17 +00:00
}
items1[1] = tmp19;
const obj1 = { style: tmp.launchPadContent };
if (tmp11 === constants.SEARCH) {
if (tmp16) {
2026-07-23 10:11:24 +00:00
let obj2 = { results: queryResults, query: str };
let tmp37Result = callback2(_require(first[44]).SearchResults, obj2);
const tmp42 = callback2;
2026-07-20 16:05:17 +00:00
}
obj1.children = tmp37Result;
items1[2] = tmp24(tmp25, obj1);
obj.children = items1;
return closure_26(View, obj);
}
if (tmp11 === constants.SEARCH) {
const obj3 = { selectedGuildId: selectedUnreadGuild };
let unreads;
if (null != initialResults) {
unreads = initialResults.unreads;
}
if (null == unreads) {
unreads = closure_32;
}
obj3.unreads = unreads;
let channelHistory;
if (null != initialResults) {
channelHistory = initialResults.channelHistory;
}
if (null == channelHistory) {
channelHistory = closure_32;
}
obj3.history = channelHistory;
obj3.expandedHistory = tmp2[0];
obj3.toggleExpandedHistory = callback;
2026-07-23 10:11:24 +00:00
tmp37Result = callback2(_require(first[44]).InitialResults, obj3);
const tmp37 = callback2;
2026-07-20 16:05:17 +00:00
} else if (tmp11 === constants.DEV_TOOLS) {
2026-07-23 10:11:24 +00:00
tmp37Result = callback2(str(first[45]), {});
2026-07-20 16:05:17 +00:00
} else if (tmp11 === constants.MEMBERS) {
2026-07-23 10:11:24 +00:00
tmp37Result = callback2(str(first[46]), {});
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
tmp37Result = callback2(str(first[47]), {});
2026-07-20 16:05:17 +00:00
}
});
2026-07-23 10:11:24 +00:00
let result = require("get ActivityIndicator").fileFinishedImporting("modules/launchpad/native/LaunchPad.tsx");
2026-07-20 16:05:17 +00:00
export default memoResult;