decord/source/modules/badges/PendingBadgeSettings.tsx
2026-08-25 06:04:03 +00:00

253 lines
8.7 KiB
TypeScript

// Module ID: 14124
// Function ID: 14125
// Name: getSavedBadgeSettings
// Dependencies: [32, 1922, 8937, 9671, 709, 8938, 2]
// Exports: applyPendingBadgeSettings, applyPendingBadgeSettingsToProfileBadges, moveBadgeInDisplayOrder, resetPendingBadgeSettings, setPendingBadgeDisplayOrder, setPendingBadgeHiddenBadges
// Module 14124 (getSavedBadgeSettings)
import dispatcherDefault from "dispatcher" /* 709 */;
import getProfileBadgeIconUrl from "getProfileBadgeIconUrl" /* 9671 */;
import closure_3 from "_slicedToArray" /* 32 */;
import closure_4 from "mergeGuildAvatar" /* 1922 */;
import closure_5 from "initialize" /* 8937 */;
require = arg1;
function getSavedBadgeSettings() {
currentUser = currentUser.getCurrentUser();
let id;
if (currentUser != null) {
id = currentUser.id;
}
if (null != id) {
if (closure_5.hasCatalogFor(id)) {
const items = [];
const _Set = Set;
const set = new Set();
const badges = obj3.getBadges(id);
for (const item10020 of badges) {
let tmp10 = item10020;
let tmp11 = require;
let tmp12 = dependencyMap;
let NON_CUSTOMIZABLE_BADGE_IDS = getProfileBadgeIconUrl.NON_CUSTOMIZABLE_BADGE_IDS;
if (!NON_CUSTOMIZABLE_BADGE_IDS.has(item10020.badge_id)) {
let tmp13 = item10020;
if (tmp10.owned) {
let tmp14 = item10020;
if (tmp10.hidden) {
let tmp17 = item10020;
let addResult = set.add(tmp10.badge_id);
} else {
let tmp15 = item10020;
let arr = items.push(tmp10.badge_id);
}
}
}
continue;
}
const obj = { displayOrder: null, hiddenBadges: null };
obj[0] = items;
obj[1] = set;
return obj;
}
obj3 = closure_5;
}
return null;
}
function moveBadgeInDisplayOrder(value, index, clampResult) {
if (index !== clampResult) {
if (index >= 0) {
if (index < value.length) {
const items = [];
HermesBuiltin.arraySpread(value, 0);
const _Math = Math;
const _Math2 = Math;
items.splice(Math.min(Math.max(clampResult, 0), items.length), 0, callback(items.splice(index, 1), 1)[0]);
return items;
}
}
}
return value;
}
moveBadgeInDisplayOrder.__closure = {};
moveBadgeInDisplayOrder.__workletHash = 15133920248237;
moveBadgeInDisplayOrder.__initData = { code: "function moveBadgeInDisplayOrder_PendingBadgeSettingsTsx1(badgeIds,fromIndex,toIndex){if(fromIndex===toIndex||fromIndex<0||fromIndex>=badgeIds.length){return badgeIds;}const next=[...badgeIds];const[moved]=next.splice(fromIndex,1);next.splice(Math.min(Math.max(toIndex,0),next.length),0,moved);return next;}" };
let result = require("set").fileFinishedImporting("modules/badges/PendingBadgeSettings.tsx");
export const setPendingBadgeDisplayOrder = function setPendingBadgeDisplayOrder(arr) {
const tmp = getSavedBadgeSettings();
let tmp2 = null != tmp;
if (tmp2) {
const displayOrder = tmp.displayOrder;
tmp2 = arr.length === displayOrder.length && arr.every((arg0, arg1) => arg0 === displayOrder[arg1]);
const tmp3 = arr.length === displayOrder.length && arr.every((arg0, arg1) => arg0 === displayOrder[arg1]);
}
let tmp4;
if (!tmp2) {
const items = [];
HermesBuiltin.arraySpread(arr, 0);
tmp4 = items;
}
dispatcherDefault.dispatch({ type: "USER_PROFILE_SETTINGS_SET_PENDING_CHANGES", pendingBadgeDisplayOrder: tmp4 });
};
export const setPendingBadgeHiddenBadges = function setPendingBadgeHiddenBadges(items) {
const tmp = getSavedBadgeSettings();
let tmp2 = null != tmp;
if (tmp2) {
const hiddenBadges = tmp.hiddenBadges;
tmp2 = items.length === hiddenBadges.size && items.every((arg0) => hiddenBadges.has(arg0));
const tmp3 = items.length === hiddenBadges.size && items.every((arg0) => hiddenBadges.has(arg0));
}
let tmp4;
if (!tmp2) {
items = [];
HermesBuiltin.arraySpread(items, 0);
tmp4 = items;
}
dispatcherDefault.dispatch({ type: "USER_PROFILE_SETTINGS_SET_PENDING_CHANGES", pendingBadgeHiddenBadges: tmp4 });
};
export const resetPendingBadgeSettings = function resetPendingBadgeSettings() {
dispatcherDefault.dispatch({ type: "USER_PROFILE_SETTINGS_SET_PENDING_CHANGES", pendingBadgeDisplayOrder: "accessible", pendingBadgeHiddenBadges: "user" });
};
export const applyPendingBadgeSettings = function applyPendingBadgeSettings(stateFromStoresArray, arg1) {
({ pendingBadgeDisplayOrder, pendingBadgeHiddenBadges } = arg1);
let set;
set = null;
if (null != pendingBadgeHiddenBadges) {
const _Set = Set;
set = new Set(pendingBadgeHiddenBadges);
}
if (null == set) {
const items = [];
let arraySpreadResult = HermesBuiltin.arraySpread(stateFromStoresArray, 0);
let mapped = items;
} else {
mapped = stateFromStoresArray.map((badge_id) => {
const NON_CUSTOMIZABLE_BADGE_IDS = set(closure_1_2[3]).NON_CUSTOMIZABLE_BADGE_IDS;
let tmp = badge_id;
if (!NON_CUSTOMIZABLE_BADGE_IDS.has(badge_id.badge_id)) {
const obj = {};
const merged = Object.assign(badge_id);
obj.hidden = set.has(badge_id.badge_id);
tmp = obj;
}
return tmp;
});
}
if (null == pendingBadgeDisplayOrder) {
return mapped;
} else {
const items1 = [];
const _Map = Map;
const map = new Map();
for (const item10026 of mapped) {
let tmp11 = item10026;
let tmp12 = set;
let tmp13 = dependencyMap;
let NON_CUSTOMIZABLE_BADGE_IDS = set(9671).NON_CUSTOMIZABLE_BADGE_IDS;
if (NON_CUSTOMIZABLE_BADGE_IDS.has(item10026.badge_id)) {
let tmp16 = item10026;
let arr = items1.push(tmp11);
} else {
let tmp14 = item10026;
let result = map.set(tmp11.badge_id, tmp11);
}
continue;
}
const items2 = [];
for (const item10049 of pendingBadgeDisplayOrder) {
let tmp20 = item10049;
let value = map.get(item10049);
if (null != value) {
let tmp23 = value;
arr = items2.push(tmp22);
let tmp25 = item10049;
let deleteResult = map.delete(tmp20);
}
continue;
}
const items3 = [];
arraySpreadResult = HermesBuiltin.arraySpread(items2, HermesBuiltin.arraySpread(items1, 0));
HermesBuiltin.arraySpread(map.values(), arraySpreadResult);
return items3;
}
};
export const applyPendingBadgeSettingsToProfileBadges = function applyPendingBadgeSettingsToProfileBadges(arr2, arg1) {
({ pendingBadgeDisplayOrder, pendingBadgeHiddenBadges } = arg1);
let set;
if (null == pendingBadgeDisplayOrder) {
if (null == pendingBadgeHiddenBadges) {
const items = [];
HermesBuiltin.arraySpread(arr2, 0);
return items;
}
}
set = null;
if (null != pendingBadgeHiddenBadges) {
const _Set = Set;
set = new Set(pendingBadgeHiddenBadges);
}
if (null == set) {
const items1 = [];
HermesBuiltin.arraySpread(arr2, 0);
let found = items1;
} else {
found = arr2.filter((id) => {
const profileBadgeId = set(closure_1_2[5]).resolveProfileBadgeId(id.id);
let hasItem = null == profileBadgeId;
if (!hasItem) {
const NON_CUSTOMIZABLE_BADGE_IDS = set(closure_1_2[3]).NON_CUSTOMIZABLE_BADGE_IDS;
hasItem = NON_CUSTOMIZABLE_BADGE_IDS.has(profileBadgeId);
}
if (!hasItem) {
hasItem = !set.has(profileBadgeId);
}
return hasItem;
});
}
if (null == pendingBadgeDisplayOrder) {
return found;
} else {
const items2 = [];
const _Map = Map;
const map = new Map();
for (const item10027 of found) {
let tmp11 = item10027;
let tmp12 = set;
let tmp13 = dependencyMap;
let obj = set(8938);
let profileBadgeId = obj.resolveProfileBadgeId(item10027.id);
let tmp15 = profileBadgeId;
if (null != profileBadgeId) {
let NON_CUSTOMIZABLE_BADGE_IDS = tmp12(9671).NON_CUSTOMIZABLE_BADGE_IDS;
let tmp16 = profileBadgeId;
if (!NON_CUSTOMIZABLE_BADGE_IDS.has(tmp15)) {
let tmp17 = profileBadgeId;
if (!map.has(tmp15)) {
let tmp18 = profileBadgeId;
let tmp19 = item10027;
let result = map.set(tmp15, tmp11);
}
continue;
}
}
let tmp21 = item10027;
let arr = items2.push(tmp11);
}
const items3 = [];
for (const item10059 of pendingBadgeDisplayOrder) {
let tmp25 = item10059;
let value = map.get(item10059);
if (null != value) {
let tmp28 = value;
arr = items3.push(tmp27);
let tmp30 = item10059;
let deleteResult = map.delete(tmp25);
}
continue;
}
const items4 = [];
HermesBuiltin.arraySpread(map.values(), HermesBuiltin.arraySpread(items3, HermesBuiltin.arraySpread(items2, 0)));
return items4;
}
};
export { moveBadgeInDisplayOrder };