decord/source/modules/guild_themes/native/GuildThemePreviewArt.tsx

87 lines
3.7 KiB
TypeScript
Raw Normal View History

2026-08-24 06:08:38 +00:00
// Module ID: 15489
// Function ID: 15490
2026-07-20 16:05:17 +00:00
// Name: PreviewOverlay
2026-08-24 06:08:38 +00:00
// Dependencies: [19, 17, 21, 4668, 712, 4230, 15490, 4314, 4761, 2]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-08-24 06:08:38 +00:00
// Module 15489 (PreviewOverlay)
import ThemesDefault from "Themes" /* 712 */;
import useThemeDefault from "useTheme" /* 4314 */;
import LinearGradientDefault from "LinearGradient" /* 4761 */;
import GuildThemePreviewOverlayDefault from "GuildThemePreviewOverlay" /* 15490 */;
import closure_3 from "noop" /* 19 */;
import { View } from "get ActivityIndicator" /* 17 */;
import { jsx } from "jsxProd" /* 21 */;
import createCacheKey from "createCacheKey" /* 4668 */;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-20 16:05:17 +00:00
function PreviewOverlay() {
2026-08-24 06:08:38 +00:00
return <View pointerEvents="none" style={callback().previewOverlay}>{jsx(GuildThemePreviewOverlayDefault, {})}</View>;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
createCacheKey = { previewArt: null, previewOverlay: null };
2026-08-24 06:08:38 +00:00
createCacheKey = { position: "relative", width: 256, aspectRatio: 1.5705521472392638, overflow: "hidden", borderRadius: ThemesDefault.radii.md, backgroundColor: ThemesDefault.colors.BACKGROUND_SURFACE_HIGH };
2026-07-29 08:29:29 +00:00
createCacheKey[0] = createCacheKey;
createCacheKey[1] = { position: "absolute", top: 7.314, left: 7.461, width: 259.862, height: 154.514 };
2026-08-24 06:08:38 +00:00
let closure_6 = createCacheKey.createStyles(createCacheKey);
const result = require("set").fileFinishedImporting("modules/guild_themes/native/GuildThemePreviewArt.tsx");
2026-07-20 16:05:17 +00:00
export default function GuildThemePreviewArt(themeSettings) {
themeSettings = themeSettings.themeSettings;
2026-08-24 06:08:38 +00:00
importDefault = undefined;
const tmp4 = useThemeDefault();
2026-07-29 08:29:29 +00:00
importDefault = tmp4;
let items = [themeSettings, tmp4];
const memo = React.useMemo(() => {
let tmp3 = null;
if (null != themeSettings) {
const customUserThemeSettings = tmp.customUserThemeSettings;
2026-07-20 16:05:17 +00:00
if (null != customUserThemeSettings) {
const first = customUserThemeSettings.colors[0];
if (null != first) {
2026-07-29 08:29:29 +00:00
let obj = { colors: null, angle: null };
2026-07-20 16:05:17 +00:00
const items = [];
2026-08-24 06:08:38 +00:00
HermesBuiltin.arraySpread(themeSettings(closure_1_2[5]).getSingleColorGuildThemeGradientColors(first, tmp2), 0);
2026-07-29 08:29:29 +00:00
obj[0] = items;
let num2 = customUserThemeSettings.gradientAngle;
if (num2 == null) {
num2 = 0;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
obj[1] = num2;
tmp3 = obj;
2026-08-24 06:08:38 +00:00
const obj5 = themeSettings(closure_1_2[5]);
2026-07-20 16:05:17 +00:00
}
}
2026-08-24 06:08:38 +00:00
obj = themeSettings(closure_1_2[5]);
2026-07-29 08:29:29 +00:00
const guildThemePreset = obj.getGuildThemePreset(tmp.presetId);
tmp3 = null;
2026-07-20 16:05:17 +00:00
if (null != guildThemePreset) {
2026-08-24 06:08:38 +00:00
const guildThemePresetAppearance = themeSettings(closure_1_2[5]).getGuildThemePresetAppearance(guildThemePreset, tmp2);
2026-07-29 08:29:29 +00:00
obj = { colors: null, locations: null, angle: null };
2026-07-20 16:05:17 +00:00
const colors = guildThemePresetAppearance.colors;
2026-07-29 08:29:29 +00:00
obj[0] = colors.map((hex) => hex.hex);
2026-07-20 16:05:17 +00:00
const colors1 = guildThemePresetAppearance.colors;
2026-07-29 08:29:29 +00:00
obj[1] = colors1.map((stop) => stop.stop / 100);
obj[2] = guildThemePresetAppearance.angle;
tmp3 = obj;
2026-08-24 06:08:38 +00:00
const obj2 = themeSettings(closure_1_2[5]);
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
return tmp3;
}, items);
2026-08-24 06:08:38 +00:00
const items1 = [callback().previewArt, themeSettings.style];
2026-07-20 16:05:17 +00:00
if (null == memo) {
2026-07-29 08:29:29 +00:00
let obj = { style: null, children: null };
obj[0] = items1;
obj[1] = <PreviewOverlay />;
let tmp9 = <View style={null}>{null}</View>;
2026-07-20 16:05:17 +00:00
} else {
2026-07-29 08:29:29 +00:00
obj = { colors: null, locations: null, useAngle: true, angle: null, style: null, children: null };
({ colors: obj[0], locations: obj[1], angle: obj[3] } = memo);
obj[4] = items1;
obj[5] = <PreviewOverlay />;
2026-08-24 06:08:38 +00:00
tmp9 = jsx(LinearGradientDefault, { colors: null, locations: null, useAngle: true, angle: null, style: null, children: null });
const tmp2Result = LinearGradientDefault;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return tmp9;
2026-07-20 16:05:17 +00:00
};