Files
discord-decomp/modules/guild_themes/guildThemeSerialization.tsx
T
2026-11-01 12:12:55 +02:00

205 lines
6.0 KiB
TypeScript

// Metro module 1861 (f1862).
export function cloneGuildThemeSettings(a0) {
const r3 = a0 == null;
let r4 = null;
if (!r3) {
const customUserThemeSettings = a0.customUserThemeSettings;
const r14 = customUserThemeSettings != null;
let customUserThemeSettings2 = void 0;
if (r14) {
const colors = [...customUserThemeSettings.colors];
let gradientColorStops = customUserThemeSettings.gradientColorStops;
if (gradientColorStops == null) {
gradientColorStops = [];
}
customUserThemeSettings2 = {
colors,
gradientColorStops: [...gradientColorStops],
gradientAngle: customUserThemeSettings.gradientAngle,
baseMix: customUserThemeSettings.baseMix
};
}
r4 = {
presetId: a0.presetId,
customUserThemeSettings: customUserThemeSettings2
};
}
return r4;
}
export function cloneGuildTheme(a0) {
const r3 = a0 == null;
let r4 = null;
if (!r3) {
const themeSettings = a0.themeSettings;
const r16 = themeSettings == null;
let themeSettings2 = null;
if (!r16) {
const customUserThemeSettings = themeSettings.customUserThemeSettings;
const r19 = customUserThemeSettings != null;
let customUserThemeSettings2 = void 0;
if (r19) {
const colors = [...customUserThemeSettings.colors];
let gradientColorStops = customUserThemeSettings.gradientColorStops;
if (gradientColorStops == null) {
gradientColorStops = [];
}
customUserThemeSettings2 = {
colors,
gradientColorStops: [...gradientColorStops],
gradientAngle: customUserThemeSettings.gradientAngle,
baseMix: customUserThemeSettings.baseMix
};
}
themeSettings2 = {
presetId: themeSettings.presetId,
customUserThemeSettings: customUserThemeSettings2
};
}
r4 = {
enabled: a0.enabled,
themeSettings: themeSettings2
};
}
return r4;
}
export function toServerGuildThemeSettings(a0) {
let r4;
if (a0 == null) {
r4 = {
preset_id: null,
custom_user_theme_settings: null
};
} else {
let presetId = a0.presetId;
if (presetId == null) {
presetId = null;
}
const customUserThemeSettings = a0.customUserThemeSettings;
const r3 = customUserThemeSettings == null;
let custom_user_theme_settings = null;
if (!r3) {
const colors = [...customUserThemeSettings.colors];
const gradient_color_stops = customUserThemeSettings.gradientColorStops != null ? [...customUserThemeSettings.gradientColorStops] : [];
let gradientAngle = customUserThemeSettings.gradientAngle;
if (gradientAngle == null) {
gradientAngle = 0;
}
let baseMix = customUserThemeSettings.baseMix;
if (baseMix == null) {
baseMix = 0;
}
custom_user_theme_settings = {
colors,
gradient_color_stops,
gradient_angle: gradientAngle,
base_mix: baseMix
};
}
r4 = {
preset_id: presetId,
custom_user_theme_settings
};
}
return r4;
}
export function fromServerGuildThemeSettings(a0) {
let r3;
L14: {
const r2 = a0 == null;
r3 = null;
if (!r2) {
if (a0.preset_id == null) {
const r10 = a0.custom_user_theme_settings == null;
r3 = null;
if (r10) {
break L14;
}
}
const presetId = a0.preset_id == null ? void 0 : a0.preset_id;
const custom_user_theme_settings = a0.custom_user_theme_settings;
const r15 = custom_user_theme_settings != null;
let customUserThemeSettings = void 0;
if (r15) {
let gradient_color_stops = custom_user_theme_settings.gradient_color_stops;
if (gradient_color_stops == null) {
gradient_color_stops = [];
}
let gradient_angle = custom_user_theme_settings.gradient_angle;
if (gradient_angle == null) {
gradient_angle = 0;
}
let base_mix = custom_user_theme_settings.base_mix;
if (base_mix == null) {
base_mix = 0;
}
customUserThemeSettings = {
colors: custom_user_theme_settings.colors,
gradientColorStops: gradient_color_stops,
gradientAngle: gradient_angle,
baseMix: base_mix
};
}
r3 = {
presetId,
customUserThemeSettings
};
}
}
return r3;
}
export function fromServerGuildTheme(a0) {
let r4, themeSettings;
const r2 = a0 == null;
let r3 = null;
if (!r2) {
L15: {
r4 = {
enabled: a0.enabled,
themeSettings: null
};
const r11 = a0 == null;
themeSettings = null;
if (!r11) {
if (a0.preset_id == null) {
const r14 = a0.custom_user_theme_settings == null;
themeSettings = null;
if (r14) {
break L15;
}
}
const presetId = a0.preset_id == null ? void 0 : a0.preset_id;
const custom_user_theme_settings = a0.custom_user_theme_settings;
const r19 = custom_user_theme_settings != null;
let customUserThemeSettings = void 0;
if (r19) {
let gradient_color_stops = custom_user_theme_settings.gradient_color_stops;
if (gradient_color_stops == null) {
gradient_color_stops = [];
}
let gradient_angle = custom_user_theme_settings.gradient_angle;
if (gradient_angle == null) {
gradient_angle = 0;
}
let base_mix = custom_user_theme_settings.base_mix;
if (base_mix == null) {
base_mix = 0;
}
customUserThemeSettings = {
colors: custom_user_theme_settings.colors,
gradientColorStops: gradient_color_stops,
gradientAngle: gradient_angle,
baseMix: base_mix
};
}
themeSettings = {
presetId,
customUserThemeSettings
};
}
}
r4.themeSettings = themeSettings;
r3 = r4;
}
return r3;
}