Initial commit
This commit is contained in:
commit
af3b49f756
16065 files changed
+2938410
No files matched your search
@@ -0,0 +1,53 @@
|
||||
/* Metro module 1905; source: modules/collectibles/nameplates/constants.tsx; dependencies: [1906, 2] */
|
||||
function _fun20881(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#20881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2032:6, offset: 0x00ede6c9, size: 931 bytes, params: 8, frame: 20
|
||||
var object2;
|
||||
let Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
object2 = {};
|
||||
const PaletteKeys = (require(1906) /* metro dependency 1906: types */).PaletteKeys;
|
||||
const Crimson = PaletteKeys.Crimson;
|
||||
const Crimson2 = PaletteKeys.Crimson;
|
||||
object2[Crimson] = {'darkBackground': '#900007', 'lightBackground': '#E7040F', name: Crimson2};
|
||||
const Berry = PaletteKeys.Berry;
|
||||
const Berry2 = PaletteKeys.Berry;
|
||||
object2[Berry] = {'darkBackground': '#893A99', 'lightBackground': '#B11FCF', name: Berry2};
|
||||
const Sky = PaletteKeys.Sky;
|
||||
const Sky2 = PaletteKeys.Sky;
|
||||
object2[Sky] = {'darkBackground': '#0080B7', 'lightBackground': '#56CCFF', name: Sky2};
|
||||
const Teal = PaletteKeys.Teal;
|
||||
const Teal2 = PaletteKeys.Teal;
|
||||
object2[Teal] = {'darkBackground': '#086460', 'lightBackground': '#7DEED7', name: Teal2};
|
||||
const Forest = PaletteKeys.Forest;
|
||||
const Forest2 = PaletteKeys.Forest;
|
||||
object2[Forest] = {'darkBackground': '#2D5401', 'lightBackground': '#6AA624', name: Forest2};
|
||||
const BubbleGum = PaletteKeys.BubbleGum;
|
||||
const BubbleGum2 = PaletteKeys.BubbleGum;
|
||||
object2[BubbleGum] = {'darkBackground': '#DC3E97', 'lightBackground': '#F957B3', name: BubbleGum2};
|
||||
const Violet = PaletteKeys.Violet;
|
||||
const Violet2 = PaletteKeys.Violet;
|
||||
object2[Violet] = {'darkBackground': '#730BC8', 'lightBackground': '#972FED', name: Violet2};
|
||||
const Cobalt = PaletteKeys.Cobalt;
|
||||
const Cobalt2 = PaletteKeys.Cobalt;
|
||||
object2[Cobalt] = {'darkBackground': '#0131C2', 'lightBackground': '#4278FF', name: Cobalt2};
|
||||
const Clover = PaletteKeys.Clover;
|
||||
const Clover2 = PaletteKeys.Clover;
|
||||
object2[Clover] = {'darkBackground': '#047B20', 'lightBackground': '#63CD5A', name: Clover2};
|
||||
const Lemon = PaletteKeys.Lemon;
|
||||
const Lemon2 = PaletteKeys.Lemon;
|
||||
object2[Lemon] = {'darkBackground': '#F6CD12', 'lightBackground': '#FED400', name: Lemon2};
|
||||
const White = PaletteKeys.White;
|
||||
const White2 = PaletteKeys.White;
|
||||
object2[White] = {'darkBackground': '#FFFFFF', 'lightBackground': '#FFFFFF', name: White2};
|
||||
const Black = PaletteKeys.Black;
|
||||
const Black2 = PaletteKeys.Black;
|
||||
object2[Black] = {'darkBackground': '#000000', 'lightBackground': '#000000', name: Black2};
|
||||
Object = global.Object;
|
||||
const value = Object.values(object2);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/constants.tsx');
|
||||
exports.NAMEPLATE_PALETTES = object2;
|
||||
exports.INVALID_PALETTE_KEY = 'invalid_palette';
|
||||
exports.CUSTOM_PALETTE_KEY = 'custom_palette';
|
||||
exports.INVALID_NAMEPLATE_PALETTE = {'name': 'invalid_palette', 'darkBackground': '', 'lightBackground': ''};
|
||||
exports.PaletteMetadata = value;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
/* Metro module 13222; source: modules/collectibles/nameplates/hooks/useFetchNameplate.tsx; dependencies: [8461, 1904, 1901, 2] */
|
||||
function _fun100862(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100862, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13412:6, offset: 0x021fd610, size: 96 bytes, params: 8, frame: 18
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/hooks/useFetchNameplate.tsx');
|
||||
exports.useFetchNameplate = useFetchNameplate;
|
||||
}
|
||||
|
||||
function useFetchNameplate(a0) { // fn#100863, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13412:205, offset: 0x021fd670, size: 188 bytes, params: 2, frame: 17
|
||||
const value2 = undefined;
|
||||
const {product,
|
||||
isFetching} = (require(8461) /* metro dependency 8461: useFetchCollectiblesProduct */).useFetchCollectiblesProduct(a0);
|
||||
const type = product == null || product.items[0] == null ? value2 : product.items[0].type;
|
||||
const CollectiblesItemType = (require(1904) /* metro dependency 1904: CollectiblesItemType */).CollectiblesItemType;
|
||||
const NAMEPLATE = CollectiblesItemType.NAMEPLATE;
|
||||
const r4 = type !== NAMEPLATE ? value2 : product.items[0];
|
||||
const object2 = {nameplateProduct: product, nameplateRecord: r4};
|
||||
object2.nameplateData = (require(1901) /* metro dependency 1901: utils */).getNameplateData(r4);
|
||||
object2.isFetching = isFetching;
|
||||
return object2;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
/* Metro module 12122; source: modules/collectibles/nameplates/hooks/useNameplate.tsx; dependencies: [31, 1945, 566, 1901, 2] */
|
||||
function _fun93036(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#93036, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12308:6, offset: 0x020a3e95, size: 133 bytes, params: 8, frame: 18
|
||||
let env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_2 = importAll(31) /* metro dependency 31 */;
|
||||
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/hooks/useNameplate.tsx');
|
||||
exports.useNameplate = function(a0) {
|
||||
var user = a0.user;
|
||||
var env0_0 = user;
|
||||
var env0_1 = a0.guildId;
|
||||
var value2 = require(dependencyMap[2]).useStateFromStores([GuildMemberStore], _fun93038);
|
||||
return value2.useMemo(_fun93039, [value2, user]);
|
||||
};
|
||||
}
|
||||
|
||||
function useNameplate({user, guildId}) { // fn#93037, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12308:219, offset: 0x020a3f1a, size: 118 bytes, params: 2, frame: 16
|
||||
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun93038);
|
||||
return value2.useMemo(_fun93039, [value2, user]);
|
||||
}
|
||||
|
||||
function _fun93038() { // fn#93038, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12308:299, offset: 0x020a3f90, size: 65 bytes, params: 1, frame: 14
|
||||
const guildIdBinding = guildId;
|
||||
const value2 = null;
|
||||
return value2 != guildIdBinding && value2 != user ? GuildMemberStore.getMember(guildId, user.id) : value2;
|
||||
}
|
||||
|
||||
function _fun93039() { // fn#93039, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12308:365, offset: 0x020a3fd1, size: 107 bytes, params: 1, frame: 16
|
||||
var value2;
|
||||
var value3;
|
||||
var moduleValue;
|
||||
if (user != null) {
|
||||
value2 = environment.__proto__;
|
||||
value3 = undefined;
|
||||
moduleValue = require(1901) /* metro dependency 1901: utils */;
|
||||
return moduleValue.getNameplateData(env0_2 == null || env0_2.collectibles == null ? value3 : env0_2.collectibles.nameplate) ?? user.nameplate;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
/* Metro module 13225; source: modules/collectibles/nameplates/native/EditNameplateSection.tsx; dependencies: [31, 27, 1902, 33, 4501, 8409, 13224, 8410, 6789, 1901, 8483, 2] */
|
||||
function _fun100881(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100881, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13415:6, offset: 0x021fe675, size: 368 bytes, params: 8, frame: 22
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
let value = importAll(31) /* metro dependency 31 */;
|
||||
const env0_4 = (require(27) /* metro dependency 27 */).View;
|
||||
const env0_5 = (require(1902) /* metro dependency 1902: NameplateRecord */).isNameplateRecord;
|
||||
const value2 = require(33) /* metro dependency 33 */;
|
||||
const env0_6 = value2.jsx;
|
||||
const env0_7 = value2.Fragment;
|
||||
const env0_8 = value2.jsxs;
|
||||
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
|
||||
const createStyles = createStylesModule.createStyles;
|
||||
const GUTTER_SIZE = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).GUTTER_SIZE;
|
||||
const env0_9 = Reflect.apply(createStyles, createStylesModule, [{row: {'flexDirection': 'row',
|
||||
'alignItems': 'center', 'justifyContent': 'space-between', paddingHorizontal: GUTTER_SIZE},
|
||||
rowSpacer: {height: GUTTER_SIZE}, nameplate: {overflow: 'hidden'}}]);
|
||||
const value4 = value.memo(_fun100882);
|
||||
value4.displayName = 'EditNameplateRow';
|
||||
value = value.memo(_fun100885);
|
||||
value.displayName = 'EditNameplateItem';
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/EditNameplateSection.tsx');
|
||||
exports.EditNameplateRow = value4;
|
||||
}
|
||||
|
||||
function _fun100882({items, selectedSkuId, setSelectedNameplate, guildId, size}) { // fn#100882, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13415:409, offset: 0x021fe7e5, size: 269 bytes, params: 2, frame: 25
|
||||
const styles = useStyles();
|
||||
const env0_4 = size.useCallback(function() {
|
||||
setSelectedNameplate(null);
|
||||
}, [setSelectedNameplate]);
|
||||
const jsxRuntimeEnv0_7Binding = jsxRuntimeEnv0_7;
|
||||
const items2 = [];
|
||||
const value2 = arraySpread(items2, items, 0, undefined);
|
||||
items2[value2] = null;
|
||||
items2[value2 + 1] = null;
|
||||
const slice = items2.slice;
|
||||
const ROW_SIZE = (require(8409) /* metro dependency 8409: useCollectibleListLayout */).ROW_SIZE;
|
||||
let value = Reflect.apply(slice, items2, [0, ROW_SIZE]);
|
||||
value = <View style={styles.row}>{value.map(_fun100884)}</View>;
|
||||
return (
|
||||
<>
|
||||
{value}
|
||||
<View style={styles.rowSpacer} />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
function _fun100885({nameplate, isSelected, setSelectedNameplate, size}) { // fn#100885, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13415:1126, offset: 0x021fea62, size: 257 bytes, params: 2, frame: 22
|
||||
const styles = useStyles();
|
||||
const binding = env0_3;
|
||||
const value2 = binding.useMemo(_fun100886, [nameplate]);
|
||||
const value3 = binding.useCallback(function() {
|
||||
setSelectedNameplate(nameplate);
|
||||
}, [setSelectedNameplate, nameplate]);
|
||||
const EditCollectiblesListItemProduct = (require(8410) /* metro dependency 8410: CollectiblesEditUserProfileListItems */).EditCollectiblesListItemProduct;
|
||||
return (
|
||||
<EditCollectiblesListItemProduct
|
||||
skuId={nameplate.skuId}
|
||||
isSelected={isSelected}
|
||||
onPress={value3}
|
||||
size={size}
|
||||
accessibilityLabel={nameplate.label}
|
||||
>
|
||||
{((Component) => <Component nameplate={value2} fullOpacity isSquarePreview style={[styles.nameplate,
|
||||
{borderRadius: 6}]} />)(importDefault(8483) /* metro dependency 8483: Nameplate */)}
|
||||
</EditCollectiblesListItemProduct>
|
||||
);
|
||||
}
|
||||
|
||||
function _fun100884(a0, a1) { // fn#100884, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13415:622, offset: 0x021fe8f2, size: 368 bytes, params: 3, frame: 20
|
||||
var selectedSkuIdBinding;
|
||||
var skuId;
|
||||
var binding;
|
||||
const NONE_ITEM = (require(13224) /* metro dependency 13224: useNameplateSections */).NONE_ITEM;
|
||||
if (a0 === NONE_ITEM) {
|
||||
const EditCollectiblesListItemNone = (require(8410) /* metro dependency 8410: CollectiblesEditUserProfileListItems */).EditCollectiblesListItemNone;
|
||||
return (
|
||||
<EditCollectiblesListItemNone
|
||||
size={size}
|
||||
onPress={env0_4}
|
||||
isSelected={selectedSkuId == null}
|
||||
asDefault={guildId != null}
|
||||
key="none"
|
||||
/>
|
||||
);
|
||||
}
|
||||
const SHOP_ITEM = (require(13224) /* metro dependency 13224: useNameplateSections */).SHOP_ITEM;
|
||||
if (a0 === SHOP_ITEM) {
|
||||
const EditCollectiblesListItemShop = (require(8410) /* metro dependency 8410: CollectiblesEditUserProfileListItems */).EditCollectiblesListItemShop;
|
||||
return (
|
||||
<EditCollectiblesListItemShop
|
||||
size={size}
|
||||
analyticsSource={(importDefault(6789) /* metro dependency 6789: AnalyticsLocation */).EDIT_NAMEPLATE_SHEET}
|
||||
key="shop"
|
||||
/>
|
||||
);
|
||||
}
|
||||
if (isNameplateRecord(a0)) {
|
||||
selectedSkuIdBinding = selectedSkuId;
|
||||
skuId = a0.skuId;
|
||||
binding = env1_10;
|
||||
var bindingProps = {nameplate: a0, isSelected: selectedSkuIdBinding === skuId,
|
||||
setSelectedNameplate: setSelectedNameplate, size: size};
|
||||
skuId = a0.skuId;
|
||||
return ((Component) => <Component {...bindingProps} key={skuId} />)(binding);
|
||||
}
|
||||
const sizeBinding = size;
|
||||
return <View style={{height: sizeBinding, width: sizeBinding}} key={a1} />;
|
||||
}
|
||||
|
||||
function _fun100886() { // fn#100886, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13415:1210, offset: 0x021feb63, size: 45 bytes, params: 1, frame: 11
|
||||
const value = environment.__proto__;
|
||||
return (require(1901) /* metro dependency 1901: utils */).getNameplateData(nameplate);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,127 @@
|
||||
/* Metro module 8483; source: modules/collectibles/nameplates/native/Nameplate.tsx; dependencies: [31, 4502, 33, 4501, 566, 4048, 4017, 4504, 1901, 8484, 4589, 477, 7897, 5475, 2] */
|
||||
function _fun67328(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67328, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8668:6, offset: 0x01c1e520, size: 227 bytes, params: 8, frame: 19
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = importAll(31) /* metro dependency 31 */;
|
||||
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
|
||||
const value = require(33) /* metro dependency 33 */;
|
||||
const env0_5 = value.jsx;
|
||||
const env0_6 = value.jsxs;
|
||||
const env0_7 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun67329);
|
||||
object = {code: 'function NameplateTsx1(){const{opacity}=this.__closure;return{opacity:opacity.get()};}'};
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/Nameplate.tsx');
|
||||
exports.default = _default_67334;
|
||||
}
|
||||
|
||||
function _fun67329(a0, a1, a2, a3, a4) { // fn#67329, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8668:167, offset: 0x01c1e603, size: 239 bytes, params: 6, frame: 13
|
||||
const value = 1;
|
||||
return {container: {'position': 'absolute', 'overflow': 'hidden', 'top': 0, 'bottom': 0, 'left': 0, 'right': 0},
|
||||
gradient: {'position': 'absolute', 'width': '100%', 'height': '100%',
|
||||
opacity: a0 ? value : a3 ? a2 ? a1 ? a4 ? 0.3 : 0.6 : a2 ? 0.8 : 0.4 : 0 : a1 ? a4 ? 0.3 : 0.6 : a2 ? 0.8 : 0.4},
|
||||
img: {'position': 'absolute', 'height': '100%', 'right': 0, 'aspectRatio': 5.333333333333333,
|
||||
opacity: a0 ? value : a3 ? a2 ? a1 ? a4 ? 0.4 : 0.5 : a2 ? 0.8 : 0.6 : 0.1 : a1 ? a4 ? 0.4 : 0.5 : a2 ? 0.8 : 0.6}};
|
||||
}
|
||||
|
||||
function NameplateInner({nameplate, isPressed, isFocused, isMuted, fullOpacity, isSquarePreview, invertPressOpacity, fadeIn, animate, style}) { // fn#67330, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8668:592, offset: 0x01c1e6f2, size: 807 bytes, params: 2, frame: 31
|
||||
var r5;
|
||||
var r7;
|
||||
var defaultImport;
|
||||
var value12;
|
||||
isPressed = !(isPressed === undefined) && isPressed;
|
||||
isFocused = !(isFocused === undefined) && isFocused;
|
||||
isMuted = !(isMuted === undefined) && isMuted;
|
||||
fullOpacity = !(fullOpacity === undefined) && fullOpacity;
|
||||
isSquarePreview = !(isSquarePreview === undefined) && isSquarePreview;
|
||||
invertPressOpacity = !(invertPressOpacity === undefined) && invertPressOpacity;
|
||||
fadeIn = !(fadeIn === undefined) && fadeIn;
|
||||
animate = !(animate === undefined) && animate;
|
||||
var value;
|
||||
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
|
||||
function() {
|
||||
return AccessibilityStore.useReducedMotion;
|
||||
});
|
||||
const styles = useStyles(fullOpacity, isPressed, isFocused, isMuted, invertPressOpacity);
|
||||
const value2 = (importDefault(4048) /* metro dependency 4048: useTheme */)();
|
||||
const value5 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(fadeIn ? 0 : 1);
|
||||
env0_3.useEffect(_fun67332, [value5, fadeIn]);
|
||||
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
|
||||
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
|
||||
const closure = NameplateInnerJ;
|
||||
closure.__closure = {opacity: value5};
|
||||
closure.__workletHash = 15588901070870;
|
||||
closure.__initData = env0_8;
|
||||
const value6 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
|
||||
const backgroundGradientColors = (require(1901) /* metro dependency 1901: utils */).getBackgroundGradientColors(nameplate.palette,
|
||||
value2);
|
||||
const {staticImageUrl,
|
||||
animatedImageUrl} = (require(8484) /* metro dependency 8484: NameplateUtils */).getNameplateAssets(nameplate);
|
||||
const r10 = (animate && !useReducedMotion ? animatedImageUrl : staticImageUrl) ?? '';
|
||||
const View = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
|
||||
const items2 = [styles.container, style, value6];
|
||||
if (backgroundGradientColors != null) {
|
||||
defaultImport = importDefault(4589) /* metro dependency 4589 */;
|
||||
value12 = 0;
|
||||
r7 = ((Component) => <Component style={styles.gradient} start={{x: isSquarePreview ? -2 : value12,
|
||||
y: value12}} end={{'x': 1, 'y': 0}} colors={[backgroundGradientColors.left,
|
||||
backgroundGradientColors.right]} />)(defaultImport);
|
||||
} else {
|
||||
r7 = null;
|
||||
}
|
||||
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
|
||||
if (platformUtilsModule.isAndroid()) {
|
||||
if (r5) {
|
||||
const APNGPlayer = (require(7897) /* metro dependency 7897: APNGPlayerAndroid */).APNGPlayer;
|
||||
r5 = <APNGPlayer url={r10} style={styles.img} autoplay />;
|
||||
} else {
|
||||
value = importDefault(5475) /* metro dependency 5475: FastImage */;
|
||||
value = ((Component) => <Component source={{uri: r10}} style={styles.img} accessibilityRole="image" />)(value);
|
||||
r5 = value;
|
||||
}
|
||||
} else {
|
||||
value = importDefault(5475) /* metro dependency 5475: FastImage */;
|
||||
value = ((Component) => <Component source={{uri: r10}} style={styles.img} accessibilityRole="image" />)(value);
|
||||
r5 = value;
|
||||
}
|
||||
return (
|
||||
<View style={items2}>
|
||||
{r7}
|
||||
{r5}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
function _default_67334(a0) { // fn#67334, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8668:1610, offset: 0x01c1eab4, size: 89 bytes, params: 2, frame: 16
|
||||
var r0;
|
||||
const nameplate = a0.nameplate;
|
||||
const value = null;
|
||||
const value2 = Object.create(value);
|
||||
value2.nameplate = 0;
|
||||
if (value == nameplate) {
|
||||
r0 = value;
|
||||
} else {
|
||||
var nameplateInnerBindingProps = {nameplate: nameplate, ...copyDataProperties({}, a0, value2, nameplate)};
|
||||
nameplateInnerBindingProps['aria-hidden'] = true;
|
||||
r0 = <NameplateInner {...nameplateInnerBindingProps} />;
|
||||
}
|
||||
return r0;
|
||||
}
|
||||
|
||||
function _fun67332() { // fn#67332, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8668:885, offset: 0x01c1ea19, size: 131 bytes, params: 1, frame: 20
|
||||
var binding;
|
||||
var set;
|
||||
var withTiming;
|
||||
var object2;
|
||||
var value;
|
||||
if (fadeIn) {
|
||||
binding = env0_1;
|
||||
set = binding.set;
|
||||
value = environment.__proto__;
|
||||
value = require(4504) /* metro dependency 4504: timing */;
|
||||
withTiming = value.withTiming;
|
||||
object2 = {duration: 100};
|
||||
object2.easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing.in((require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing.ease);
|
||||
Reflect.apply(set, binding, [Reflect.apply(withTiming, value, [1, object2])]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
/* Metro module 10050; source: modules/collectibles/nameplates/native/NameplateCardPreview.tsx; dependencies: [27, 33, 4501, 697, 44, 1904, 1901, 8482, 1305, 2] */
|
||||
function _fun78595(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#78595, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10236:6, offset: 0x01e2d16a, size: 322 bytes, params: 8, frame: 23
|
||||
var object2;
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = (require(27) /* metro dependency 27 */).View;
|
||||
let value = require(33) /* metro dependency 33 */;
|
||||
const env0_4 = value.jsx;
|
||||
const env0_5 = value.jsxs;
|
||||
value = require(4501) /* metro dependency 4501: createStyles */;
|
||||
const createStyles = value.createStyles;
|
||||
object2 = {};
|
||||
const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object2.nameplatePreviewContainer = {'position': 'absolute', 'justifyContent': 'center', 'alignItems': 'center',
|
||||
'width': '100%', 'height': '100%', paddingHorizontal: PX_8};
|
||||
const object4 = {width: '100%'};
|
||||
const BACKGROUND_BASE_LOWER = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWER;
|
||||
object4.backgroundColor = BACKGROUND_BASE_LOWER;
|
||||
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
||||
object2.nameplateContainer = object4;
|
||||
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
|
||||
object2.nameplate = {backgroundColor: BACKGROUND_MOD_MUTED};
|
||||
const env0_6 = Reflect.apply(createStyles, value, [object2]);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/NameplateCardPreview.tsx');
|
||||
exports.default = _default_78596;
|
||||
}
|
||||
|
||||
function _default_78596({item, animate}) { // fn#78596, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10236:510, offset: 0x01e2d2ac, size: 619 bytes, params: 2, frame: 27
|
||||
animate = !(animate === undefined) && animate;
|
||||
const styles = useStyles();
|
||||
const defaultImport = importDefault(44) /* metro dependency 44 */;
|
||||
const type = item.type;
|
||||
const CollectiblesItemType = (require(1904) /* metro dependency 1904: CollectiblesItemType */).CollectiblesItemType;
|
||||
const NAMEPLATE = CollectiblesItemType.NAMEPLATE;
|
||||
defaultImport(type === NAMEPLATE, 'Item must be Nameplate');
|
||||
const nameplateData = (require(1901) /* metro dependency 1901: utils */).getNameplateData(item);
|
||||
const NameplateDummyUserPreview = (require(8482) /* metro dependency 8482: NameplateDummyUserPreview */).NameplateDummyUserPreview;
|
||||
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
|
||||
let XSMALL = AvatarSizes.XSMALL;
|
||||
const items2 = [<NameplateDummyUserPreview width={34} avatarSize={XSMALL} hideAvatar style={[{opacity: 0.6}]} />];
|
||||
XSMALL = AvatarSizes.XSMALL;
|
||||
items2[1] = <NameplateDummyUserPreview width={44} avatarSize={XSMALL} hideAvatar style={[{opacity: 0.6}]} />;
|
||||
XSMALL = AvatarSizes.XSMALL;
|
||||
items2[2] = <View style={styles.nameplateContainer}><NameplateDummyUserPreview width={54} avatarSize={XSMALL} nameplate={nameplateData} style={styles.nameplate} animate={animate} /></View>;
|
||||
XSMALL = AvatarSizes.XSMALL;
|
||||
items2[3] = <NameplateDummyUserPreview width={44} avatarSize={XSMALL} hideAvatar style={[{opacity: 0.6}]} />;
|
||||
XSMALL = AvatarSizes.XSMALL;
|
||||
items2[4] = <NameplateDummyUserPreview width={34} avatarSize={XSMALL} hideAvatar style={[{opacity: 0.6}]} />;
|
||||
return (
|
||||
<View style={styles.nameplatePreviewContainer}>
|
||||
{items2}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
/* Metro module 8482; source: modules/collectibles/nameplates/native/NameplateDummyUserPreview.tsx; dependencies: [31, 27, 1310, 33, 1305, 697, 4501, 566, 3866, 8483, 8485, 8486, 2] */
|
||||
function _fun67324(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67324, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8667:6, offset: 0x01c1e071, size: 442 bytes, params: 8, frame: 23
|
||||
var object4;
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
importAll(31) /* metro dependency 31 */;
|
||||
const env0_3 = (require(27) /* metro dependency 27 */).View;
|
||||
const themeStore = importDefault(1310) /* metro dependency 1310: ThemeStore */;
|
||||
const value = require(33) /* metro dependency 33 */;
|
||||
const env0_5 = value.jsx;
|
||||
const env0_6 = value.jsxs;
|
||||
object4 = {};
|
||||
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
|
||||
const XSMALL_20 = AvatarSizes.XSMALL_20;
|
||||
const object5 = {};
|
||||
let PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
|
||||
object5.padding = PX_4;
|
||||
PX_4 = (importDefault(697) /* metro dependency 697: native */).space.PX_4;
|
||||
object5.avatarMarginRight = PX_4;
|
||||
object5.placeholderBarHeight = 6;
|
||||
object4[XSMALL_20] = object5;
|
||||
const XSMALL = AvatarSizes.XSMALL;
|
||||
object4[XSMALL] = {'padding': 6, 'avatarMarginRight': 6, 'placeholderBarHeight': 8};
|
||||
const NORMAL = AvatarSizes.NORMAL;
|
||||
const object6 = {};
|
||||
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object6.padding = PX_8;
|
||||
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object6.avatarMarginRight = PX_8;
|
||||
object6.placeholderBarHeight = 14;
|
||||
object4[NORMAL] = object6;
|
||||
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun67325);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/NameplateDummyUserPreview.tsx');
|
||||
exports.NAMEPLATE_DUMMY_USER_PREVIEW_CONFIG = object4;
|
||||
exports.NameplateDummyUserPreview = NameplateDummyUserPreview;
|
||||
}
|
||||
|
||||
function _fun67325(a0, a1) { // fn#67325, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8667:508, offset: 0x01c1e22b, size: 297 bytes, params: 3, frame: 18
|
||||
const property = env0_7[a0];
|
||||
const object4 = {};
|
||||
const object7 = {'padding': null, 'flexDirection': 'row', 'alignItems': 'center', 'justifyContent': 'flex-start',
|
||||
'width': '100%', 'position': 'relative'};
|
||||
object7.padding = property.padding;
|
||||
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
||||
object4.container = object7;
|
||||
const object8 = {};
|
||||
object8.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
||||
object8.marginRight = property.avatarMarginRight;
|
||||
let BORDER_STRONG = a1 ? (importDefault(697) /* metro dependency 697: native */).colors.BORDER_STRONG : 'transparent';
|
||||
object8.backgroundColor = BORDER_STRONG;
|
||||
object4.avatarContainer = object8;
|
||||
object4.avatar = {opacity: a1 ? 0 : 0.5};
|
||||
const object9 = {};
|
||||
object9.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.md;
|
||||
object9.height = property.placeholderBarHeight;
|
||||
BORDER_STRONG = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_STRONG;
|
||||
object9.backgroundColor = BORDER_STRONG;
|
||||
object4.placeholderBar = object9;
|
||||
const object10 = {};
|
||||
object10.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
|
||||
object4.nameplate = object10;
|
||||
return object4;
|
||||
}
|
||||
|
||||
function NameplateDummyUserPreview({width, hideAvatar, avatarSize = require(dependencyMap[4]).AvatarSizes.NORMAL, nameplate, style, animate}) { // fn#67326, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8667:1202, offset: 0x01c1e354, size: 412 bytes, params: 2, frame: 27
|
||||
hideAvatar = !(hideAvatar === undefined) && hideAvatar;
|
||||
animate = !(animate === undefined) && animate;
|
||||
const styles = useStyles(avatarSize, hideAvatar);
|
||||
const value2 = require(dependencyMap[7]).useStateFromStores([ThemeStore], function() {
|
||||
return require(dependencyMap[8]).isThemeDark(ThemeStore.theme);
|
||||
});
|
||||
const items3 = [styles.container, style];
|
||||
const items2 = [((Component) => <Component nameplate={nameplate} fullOpacity style={styles.nameplate} animate={animate} />)(importDefault(dependencyMap[9]))];
|
||||
const Avatar = require(dependencyMap[4]).Avatar;
|
||||
const avatarProps = {source: importDefault(value2 ? dependencyMap[10] : dependencyMap[11]), size: avatarSize};
|
||||
avatarProps['aria-hidden'] = true;
|
||||
avatarProps.style = styles.avatar;
|
||||
items2[1] = <View style={styles.avatarContainer}><Avatar {...avatarProps} /></View>;
|
||||
items2[2] = <View style={[styles.placeholderBar, {width: width}]} />;
|
||||
return (
|
||||
<View style={items3}>
|
||||
{items2}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
/* Metro module 10507; source: modules/collectibles/nameplates/native/NameplatePreview.tsx; dependencies: [31, 27, 4502, 1945, 33, 4501, 697, 1901, 4618, 8398, 566, 3995, 4635, 1305, 8483, 8696, 8697, 4573, 2] */
|
||||
function _fun81230(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#81230, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10693:6, offset: 0x01e9f56b, size: 237 bytes, params: 8, frame: 19
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = importAll(31) /* metro dependency 31 */;
|
||||
const env0_4 = (require(27) /* metro dependency 27 */).View;
|
||||
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
|
||||
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
|
||||
const value = require(33) /* metro dependency 33 */;
|
||||
const env0_7 = value.jsx;
|
||||
const env0_8 = value.jsxs;
|
||||
const env0_9 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun81231);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/NameplatePreview.tsx');
|
||||
exports.NameplatePreview = NameplatePreview_81232;
|
||||
}
|
||||
|
||||
function _fun81231(a0) { // fn#81231, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10693:192, offset: 0x01e9f658, size: 281 bytes, params: 2, frame: 18
|
||||
const object3 = {};
|
||||
const object5 = {'borderRadius': null, 'padding': null, 'flexDirection': 'row', 'alignItems': 'center',
|
||||
'width': '100%'};
|
||||
const value = 0;
|
||||
object5.borderRadius = a0 ? (importDefault(697) /* metro dependency 697: native */).radii.sm : value;
|
||||
let PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object5.padding = PX_8;
|
||||
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
|
||||
object5.backgroundColor = BACKGROUND_BASE_LOWEST;
|
||||
object3.container = object5;
|
||||
object3.nameplate = {borderRadius: a0 ? (importDefault(697) /* metro dependency 697: native */).radii.sm : value};
|
||||
const object6 = {};
|
||||
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
||||
PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object6.marginRight = PX_8;
|
||||
object3.avatar = object6;
|
||||
const PX_40 = (importDefault(697) /* metro dependency 697: native */).space.PX_40;
|
||||
object3.content = {flex: 1, paddingRight: PX_40};
|
||||
return object3;
|
||||
}
|
||||
|
||||
function NameplatePreview_81232(a0) { // fn#81232, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10693:663, offset: 0x01e9f771, size: 813 bytes, params: 2, frame: 31
|
||||
var object2;
|
||||
const nameplate = a0.nameplate;
|
||||
const nameplateData = a0.nameplateData;
|
||||
const user = a0.user;
|
||||
let hasRoundedCorners = a0.hasRoundedCorners;
|
||||
const value = undefined;
|
||||
hasRoundedCorners = hasRoundedCorners === value || hasRoundedCorners;
|
||||
let animate = a0.animate;
|
||||
animate = !(animate === value) && animate;
|
||||
const guildId = a0.guildId;
|
||||
const pendingDisplayNameStyles = a0.pendingDisplayNameStyles;
|
||||
const pendingGlobalName = a0.pendingGlobalName;
|
||||
const property = a0['aria-hidden'];
|
||||
const styles = useStyles(hasRoundedCorners);
|
||||
const r17 = nameplate == null ? nameplateData : (require(1901) /* metro dependency 1901: utils */).getNameplateData(nameplate);
|
||||
const value6 = (require(4618) /* metro dependency 4618: useAvatarDecoration */).useAvatarDecoration(user, guildId);
|
||||
const pendingAvatarDecoration = (importDefault(8398) /* metro dependency 8398: usePendingAvatarSettings */)({guildId: guildId}).pendingAvatarDecoration;
|
||||
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
|
||||
function() {
|
||||
return AccessibilityStore.useReducedMotion;
|
||||
});
|
||||
const env0_3 = useReducedMotion;
|
||||
const value7 = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun81234);
|
||||
const r11 = pendingGlobalName ?? (guildId == null || (value7 == null ? value : value7.nick) == null ? (importDefault(3995) /* metro dependency 3995: UserUtils */).useName(user) : value7 == null ? value : value7.nick);
|
||||
const r19 = value === pendingAvatarDecoration ? value6 : pendingAvatarDecoration;
|
||||
const value9 = (importDefault(4635) /* metro dependency 4635: useDisplayNameStyles */)({userId: user.id,
|
||||
guildId: guildId, pendingDisplayNameStyles: pendingDisplayNameStyles});
|
||||
const value10 = env0_3.useMemo(_fun81235, [styles.avatar, user, guildId, r19, useReducedMotion]);
|
||||
object2 = {style: styles.container};
|
||||
object2['aria-hidden'] = property;
|
||||
const items2 = [((Component) => <Component nameplate={r17} style={styles.nameplate} fullOpacity animate={animate} />)(importDefault(8483) /* metro dependency 8483: Nameplate */)];
|
||||
items2[1] = <View style={styles.avatar}>{value10}</View>;
|
||||
items2[2] = <View style={styles.content}>{value9 != null && ((Component) => <Component userId={user.id} guildId={guildId} userName={r11} variant="text-md/semibold" effectDisplayType={(require(8697) /* metro dependency 8697: types */).EffectDisplayType.STATIC} lineClamp={1} pendingDisplayNameStyles={pendingDisplayNameStyles} />)(importDefault(8696) /* metro dependency 8696: UsernameWithEffects */)}{value9 == null && ((Text) => <Text lineClamp={1} variant="text-md/semibold" color="mobile-text-heading-primary">{r11}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}</View>;
|
||||
return (
|
||||
<View {...object2}>
|
||||
{items2}
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
function _fun81234() { // fn#81234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10693:1041, offset: 0x01e9fa9e, size: 65 bytes, params: 1, frame: 14
|
||||
const guildIdBinding = guildId;
|
||||
const value2 = null;
|
||||
return value2 != guildIdBinding && value2 != user ? GuildMemberStore.getMember(guildId, user.id) : value2;
|
||||
}
|
||||
|
||||
function _fun81235() { // fn#81235, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10693:1279, offset: 0x01e9fadf, size: 136 bytes, params: 1, frame: 18
|
||||
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
|
||||
const avatarProps = {style: styles.avatar, user: user, guildId: guildId};
|
||||
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
|
||||
const NORMAL = AvatarSizes.NORMAL;
|
||||
avatarProps.size = NORMAL;
|
||||
avatarProps.avatarDecoration = env0_4;
|
||||
avatarProps.animate = !useReducedMotion;
|
||||
avatarProps.autoStatusCutout = true;
|
||||
avatarProps['aria-hidden'] = true;
|
||||
return <Avatar {...avatarProps} />;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,166 @@
|
||||
/* Metro module 10096; source: modules/collectibles/nameplates/native/NameplateProductPreview.tsx; dependencies: [31, 27, 4502, 33, 4501, 697, 7609, 1901, 1244, 4573, 4589, 7594, 8418, 8402, 566, 3995, 4635, 8696, 8697, 1305, 10097, 6238, 2] */
|
||||
function _fun78857(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#78857, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10282:6, offset: 0x01e384ee, size: 363 bytes, params: 8, frame: 22
|
||||
var object2;
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = importAll(31) /* metro dependency 31 */;
|
||||
const env0_4 = (require(27) /* metro dependency 27 */).View;
|
||||
const accessibilityStore = importDefault(4502) /* metro dependency 4502: AccessibilityStore */;
|
||||
let value = require(33) /* metro dependency 33 */;
|
||||
const env0_6 = value.jsx;
|
||||
const env0_7 = value.jsxs;
|
||||
value = require(4501) /* metro dependency 4501: createStyles */;
|
||||
const createStyles = value.createStyles;
|
||||
object2 = {container: {'position': 'relative', 'flex': 1, 'justifyContent': 'center', 'overflow': 'hidden'}};
|
||||
const PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
|
||||
object2.memberListContainer = {paddingHorizontal: PX_16};
|
||||
const PX_8 = (importDefault(697) /* metro dependency 697: native */).space.PX_8;
|
||||
object2.memberListTitle = {paddingVertical: PX_8};
|
||||
const MOBILE_ACTIONSHEET_BACKGROUND = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_ACTIONSHEET_BACKGROUND;
|
||||
object2.memberListGradient = {'position': 'absolute', 'right': 0, 'left': 0, 'top': 0, 'bottom': 0,
|
||||
color: MOBILE_ACTIONSHEET_BACKGROUND};
|
||||
const env0_8 = Reflect.apply(createStyles, value, [object2]);
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/NameplateProductPreview.tsx');
|
||||
exports.default = _default_78862;
|
||||
}
|
||||
|
||||
function NameplateUser({previewNameplate, previewAvatarDecoration}) { // fn#78858, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10282:514, offset: 0x01e38659, size: 450 bytes, params: 2, frame: 23
|
||||
const value3 = (require(7594) /* metro dependency 7594: useCurrentUser */).useCurrentUser();
|
||||
const defaultImport = importDefault(8418) /* metro dependency 8418: useAvatarDecorationIfNotExpired */;
|
||||
const profileCustomizationUtilsModule = require(8402) /* metro dependency 8402: ProfileCustomizationUtils */;
|
||||
const getProfilePreviewValue = profileCustomizationUtilsModule.getProfilePreviewValue;
|
||||
const object2 = {pendingValue: previewAvatarDecoration};
|
||||
object2.userValue = value3?.avatarDecoration;
|
||||
const value4 = defaultImport(Reflect.apply(getProfilePreviewValue, profileCustomizationUtilsModule, [object2]));
|
||||
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
|
||||
function() {
|
||||
return AccessibilityStore.useReducedMotion;
|
||||
});
|
||||
const name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(value3);
|
||||
const defaultImport3 = importDefault(4635) /* metro dependency 4635: useDisplayNameStyles */;
|
||||
({}).userId = value3.id;
|
||||
const r4 = defaultImport3(object2) == null ? name : ((Component) => <Component userId={value3.id} userName={name} effectDisplayType={(require(8697) /* metro dependency 8697: types */).EffectDisplayType.STATIC} lineClamp={1} variant="text-md/semibold" />)(importDefault(8696) /* metro dependency 8696: UsernameWithEffects */);
|
||||
const value7 = env0_3.useMemo(_fun78860, [value3, value4, useReducedMotion]);
|
||||
const UserNameplateRow = (require(10097) /* metro dependency 10097: UserNameplateRow */).UserNameplateRow;
|
||||
return (
|
||||
<UserNameplateRow
|
||||
nameplate={previewNameplate}
|
||||
icon={value7}
|
||||
label={r4}
|
||||
isPreviewRow
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
function PlaceholderUser({user, start, end}) { // fn#78861, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10282:1224, offset: 0x01e38891, size: 170 bytes, params: 2, frame: 23
|
||||
start = !(start === undefined) && start;
|
||||
end = !(end === undefined) && end;
|
||||
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
|
||||
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
|
||||
const avatarProps = {source: {uri: user.avatarSrc}};
|
||||
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
|
||||
const NORMAL = AvatarSizes.NORMAL;
|
||||
avatarProps.size = NORMAL;
|
||||
avatarProps['aria-hidden'] = true;
|
||||
return (
|
||||
<TableRow
|
||||
icon={<Avatar {...avatarProps} />}
|
||||
label={user.name}
|
||||
start={start}
|
||||
end={end}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
||||
function _default_78862({product}) { // fn#78862, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10282:1416, offset: 0x01e3893b, size: 901 bytes, params: 2, frame: 33
|
||||
var r0;
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
|
||||
var items2;
|
||||
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
|
||||
var memberListTitle;
|
||||
var string;
|
||||
var items4;
|
||||
var object;
|
||||
var memberListGradient;
|
||||
var color;
|
||||
var items5;
|
||||
var object2;
|
||||
var items6;
|
||||
var value;
|
||||
const styles = useStyles();
|
||||
const {firstNameplate,
|
||||
firstAvatarDecoration} = (require(7609) /* metro dependency 7609: useShopProductItems */).useShopProductItems(product);
|
||||
const nameplateData = (require(1901) /* metro dependency 1901: utils */).getNameplateData(firstNameplate);
|
||||
const nameplateSampleUsers = (require(1901) /* metro dependency 1901: utils */).getNameplateSampleUsers();
|
||||
if (nameplateData == null) {
|
||||
r0 = null;
|
||||
} else {
|
||||
var viewProps = {'style': null, 'pointerEvents': 'box-none', 'accessibilityLabel': null,
|
||||
'accessibilityRole': 'image', 'accessible': true, style: styles.container,
|
||||
accessibilityLabel: intl.formatToPlainString(t.YJig7C, {a11y_text: nameplateData.imgAlt})};
|
||||
var viewBindingProps2 = {style: styles.memberListContainer};
|
||||
items2 = [<PlaceholderUser user={nameplateSampleUsers.mallow} end />];
|
||||
memberListTitle = styles.memberListTitle;
|
||||
string = intl.string;
|
||||
items2[1] = <Text maxFontSizeMultiplier={2} variant="text-sm/semibold" accessibilityRole="header" color="interactive-text-default" style={memberListTitle}>{Reflect.apply(string,
|
||||
|
||||
intl, [t['yzW/fZ']])}{' — 3'}</Text>;
|
||||
items2[2] = <PlaceholderUser user={nameplateSampleUsers.phibi} start />;
|
||||
items2[3] = <NameplateUser previewNameplate={nameplateData} previewAvatarDecoration={firstAvatarDecoration} />;
|
||||
items2[4] = <PlaceholderUser user={nameplateSampleUsers.locke} end />;
|
||||
memberListTitle = styles.memberListTitle;
|
||||
string = intl.string;
|
||||
items2[5] = <Text maxFontSizeMultiplier={2} variant="text-sm/semibold" accessibilityRole="header" color="interactive-text-default" style={memberListTitle}>{Reflect.apply(string,
|
||||
|
||||
intl, [t['NG43/6']])}{' — 12'}</Text>;
|
||||
items2[6] = <PlaceholderUser user={nameplateSampleUsers.boom} start />;
|
||||
items4 = [<View {...viewBindingProps2}>{items2}</View>];
|
||||
value = importDefault(4589) /* metro dependency 4589 */;
|
||||
object = {};
|
||||
memberListGradient = styles.memberListGradient;
|
||||
object.style = memberListGradient;
|
||||
object.start = {'x': 0, 'y': 0};
|
||||
object.end = {'x': 0, 'y': 0.4};
|
||||
memberListGradient = styles.memberListGradient;
|
||||
color = memberListGradient.color;
|
||||
items5 = [color];
|
||||
memberListGradient = styles.memberListGradient;
|
||||
color = memberListGradient.color;
|
||||
items5[1] = '' + color + '00';
|
||||
object.colors = items5;
|
||||
items4[1] = ((Component) => <Component {...object} />)(value);
|
||||
value = importDefault(4589) /* metro dependency 4589 */;
|
||||
object2 = {};
|
||||
memberListGradient = styles.memberListGradient;
|
||||
object2.style = memberListGradient;
|
||||
object2.start = {'x': 0, 'y': 0.6};
|
||||
object2.end = {'x': 0, 'y': 1};
|
||||
memberListGradient = styles.memberListGradient;
|
||||
color = memberListGradient.color;
|
||||
items6 = ['' + color + '00'];
|
||||
memberListGradient = styles.memberListGradient;
|
||||
color = memberListGradient.color;
|
||||
items6[1] = color;
|
||||
object2.colors = items6;
|
||||
items4[2] = ((Component) => <Component {...object2} />)(value);
|
||||
value = <View {...viewProps}>{items4}</View>;
|
||||
r0 = value;
|
||||
}
|
||||
return r0;
|
||||
}
|
||||
|
||||
function _fun78860() { // fn#78860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10282:969, offset: 0x01e3881b, size: 118 bytes, params: 1, frame: 18
|
||||
const Avatar = (require(1305) /* metro dependency 1305: native */).Avatar;
|
||||
const avatarProps = {user: env0_0, guildId: undefined};
|
||||
const AvatarSizes = (require(1305) /* metro dependency 1305: native */).AvatarSizes;
|
||||
const NORMAL = AvatarSizes.NORMAL;
|
||||
avatarProps.size = NORMAL;
|
||||
avatarProps.avatarDecoration = env0_1;
|
||||
avatarProps.animate = !useReducedMotion;
|
||||
avatarProps.autoStatusCutout = true;
|
||||
avatarProps['aria-hidden'] = true;
|
||||
return <Avatar {...avatarProps} />;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
/* Metro module 8484; source: modules/collectibles/nameplates/native/NameplateUtils.tsx; dependencies: [1859, 2] */
|
||||
function _fun67335(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67335, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8669:6, offset: 0x01c1eb0d, size: 96 bytes, params: 8, frame: 18
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/native/NameplateUtils.tsx');
|
||||
exports.getNameplateAssets = getNameplateAssets;
|
||||
}
|
||||
|
||||
function getNameplateAssets({skuId}) { // fn#67336, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8669:204, offset: 0x01c1eb6d, size: 141 bytes, params: 2, frame: 18
|
||||
const object3 = {};
|
||||
let value = require(1859) /* metro dependency 1859: CollectiblesAssetUtils */;
|
||||
let getCollectiblesItemAssetUrl = value.getCollectiblesItemAssetUrl;
|
||||
const object4 = {skuId: skuId};
|
||||
const CollectiblesItemAssetFormat = (require(1859) /* metro dependency 1859: CollectiblesAssetUtils */).CollectiblesItemAssetFormat;
|
||||
const STATIC = CollectiblesItemAssetFormat.STATIC;
|
||||
object4.assetFormat = STATIC;
|
||||
object3.staticImageUrl = Reflect.apply(getCollectiblesItemAssetUrl, value, [object4]);
|
||||
value = require(1859) /* metro dependency 1859: CollectiblesAssetUtils */;
|
||||
getCollectiblesItemAssetUrl = value.getCollectiblesItemAssetUrl;
|
||||
const ANIMATED = CollectiblesItemAssetFormat.ANIMATED;
|
||||
object3.animatedImageUrl = Reflect.apply(getCollectiblesItemAssetUrl, value, [{skuId: skuId,
|
||||
assetFormat: ANIMATED}]);
|
||||
return object3;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
/* Metro module 1906; source: modules/collectibles/nameplates/types.tsx; dependencies: [2] */
|
||||
function _fun20882(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#20882, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2033:6, offset: 0x00edea6c, size: 288 bytes, params: 8, frame: 17
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/types.tsx');
|
||||
exports.PaletteKeys = {None: 'none', Crimson: 'crimson', Berry: 'berry', Sky: 'sky', Teal: 'teal', Forest: 'forest',
|
||||
BubbleGum: 'bubble_gum', Violet: 'violet', Cobalt: 'cobalt', Clover: 'clover', Lemon: 'lemon', White: 'white',
|
||||
Black: 'black'};
|
||||
exports.NameplatePlacements = {ACCOUNT: 'account', CHANNEL: 'channel', MEMBER_LIST: 'member_list',
|
||||
PREVIEW: 'preview', MINI_PREVIEW: 'mini_preview'};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
/* Metro module 13224; source: modules/collectibles/nameplates/useNameplateSections.tsx; dependencies: [57, 31, 5121, 5145, 632, 5134, 1244, 2] */
|
||||
function _fun100874(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100874, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13414:6, offset: 0x021fe265, size: 251 bytes, params: 8, frame: 19
|
||||
const env0_0 = require;
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_2 = importDefault(57) /* metro dependency 57 */;
|
||||
const env0_3 = (require(31) /* metro dependency 31 */).useMemo;
|
||||
const collectiblesCategoryStore = importDefault(5121) /* metro dependency 5121: CollectiblesCategoryStore */;
|
||||
const collectiblesPurchaseStore = importDefault(5145) /* metro dependency 5145: CollectiblesPurchaseStore */;
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/useNameplateSections.tsx');
|
||||
exports.default = _default_100875;
|
||||
exports.Section = {PURCHASE: 'purchase', PREMIUM_PURCHASE: 'premium_purchase', PREVIEW: 'preview'};
|
||||
exports.NONE_ITEM = {skuId: 'None'};
|
||||
exports.SHOP_ITEM = {skuId: 'Shop'};
|
||||
}
|
||||
|
||||
function _default_100875() { // fn#100875, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13414:295, offset: 0x021fe360, size: 170 bytes, params: 1, frame: 19
|
||||
const purchases = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([CollectiblesPurchaseStore],
|
||||
function() {
|
||||
return CollectiblesPurchaseStore.purchases;
|
||||
});
|
||||
const useStateFromStoresModule = require(632) /* metro dependency 632: useStateFromStores */;
|
||||
const useStateFromStoresArray = useStateFromStoresModule.useStateFromStoresArray;
|
||||
const value3 = env0_2(Reflect.apply(useStateFromStoresArray, useStateFromStoresModule, [[CollectiblesCategoryStore],
|
||||
function() {
|
||||
return [CollectiblesCategoryStore.categories, CollectiblesCategoryStore.products];
|
||||
}]), 2);
|
||||
return useMemo(_fun100878, [value3[0], purchases, value3[1]]);
|
||||
}
|
||||
|
||||
function _fun100878() { // fn#100878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13414:460, offset: 0x021fe40a, size: 403 bytes, params: 1, frame: 23
|
||||
var object2;
|
||||
const value4 = (require(5134) /* metro dependency 5134: CollectiblesUtils */).getNameplates(purchases,
|
||||
env0_1).reduce(_fun100879, {purchase: [], premium_purchase: [], preview: []});
|
||||
object2 = {};
|
||||
const binding = env1_6;
|
||||
const PURCHASE = binding.PURCHASE;
|
||||
object2.section = PURCHASE;
|
||||
const items3 = [env1_7, env1_8];
|
||||
arraySpread(items3, value4.purchase, 2, undefined);
|
||||
object2.items = items3;
|
||||
object2.height = 12;
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
let string = intl.string;
|
||||
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
|
||||
const WfGV52 = t.WfGV52;
|
||||
object2.header = Reflect.apply(string, intl, [WfGV52]);
|
||||
const items2 = [object2];
|
||||
const PREMIUM_PURCHASE = binding.PREMIUM_PURCHASE;
|
||||
string = intl.string;
|
||||
const TiLCgw = t.TiLCgw;
|
||||
items2[1] = {section: PREMIUM_PURCHASE, items: value4.premium_purchase, height: 12, header: Reflect.apply(string,
|
||||
intl, [TiLCgw])};
|
||||
object2 = {};
|
||||
const PREVIEW = binding.PREVIEW;
|
||||
object2.section = PREVIEW;
|
||||
object2.items = value4.preview;
|
||||
object2.height = 12;
|
||||
object2.header = intl.string(t['1vbbee']);
|
||||
items2[2] = object2;
|
||||
return items2.filter(function(a0) {
|
||||
return a0.items.length > 0;
|
||||
});
|
||||
}
|
||||
|
||||
function _fun100879(a0, a1) { // fn#100879, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13414:506, offset: 0x021fe59d, size: 216 bytes, params: 3, frame: 17
|
||||
let value = environment.__proto__;
|
||||
const value2 = purchases.get(a1.skuId);
|
||||
value = env1_2.get(a1.skuId);
|
||||
const r5 = value2 != null ? (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesPurchase(value2) : (require(5134) /* metro dependency 5134: CollectiblesUtils */).isPremiumCollectiblesProduct(value);
|
||||
const isCategoryReward = value?.isCategoryReward;
|
||||
if (r5) {
|
||||
a0.premium_purchase.push(a1);
|
||||
} else if (value2 != null) {
|
||||
a0.purchase.push(a1);
|
||||
} else if (!(isCategoryReward != null && isCategoryReward)) {
|
||||
a0.preview.push(a1);
|
||||
}
|
||||
return a0;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
/* Metro module 1901; source: modules/collectibles/nameplates/utils.tsx; dependencies: [1902, 482, 1905, 1907, 1244, 2] */
|
||||
function _fun20855(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#20855, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:6, offset: 0x00eddbcf, size: 237 bytes, params: 8, frame: 20
|
||||
const env0_0 = require;
|
||||
const closure = getNameplateData;
|
||||
const closure2 = isValidPalette;
|
||||
const isValidHex_20858 = function(a0) {
|
||||
return RegExp('^#([0-9a-fA-F]{6})$', '').test(a0);
|
||||
};
|
||||
const Object = global.Object;
|
||||
Object.defineProperty(exports, '__esModule', {value: true});
|
||||
const env0_3 = (require(1902) /* metro dependency 1902: NameplateRecord */).isNameplateRecord;
|
||||
const env0_4 = (require(482) /* metro dependency 482: Constants */).ThemeTypes;
|
||||
const closure3 = function(a0) {
|
||||
var property = require(dependencyMap[2]).NAMEPLATE_PALETTES;
|
||||
property = property[a0];
|
||||
return property ?? require(dependencyMap[2]).INVALID_NAMEPLATE_PALETTE;
|
||||
};
|
||||
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/collectibles/nameplates/utils.tsx');
|
||||
exports.getNameplateData = closure;
|
||||
exports.getNameplateDataFromProductRecord = getNameplateDataFromProductRecord;
|
||||
exports.getBackgroundGradientColors = function(a0, a1) {
|
||||
var r4;
|
||||
if (isValidPalette(a0)) {
|
||||
r4 = a1 === ThemeTypes.LIGHT ? a0.lightBackground : a0.darkBackground;
|
||||
return {left: '' + r4 + '00', right: '' + r4 + '4D'};
|
||||
}
|
||||
};
|
||||
exports.isValidPalette = closure2;
|
||||
exports.getNameplatePalette = closure3;
|
||||
exports.parseFirstFrame = parseFirstFrame;
|
||||
exports.getNameplateSampleUsers = getNameplateSampleUsers;
|
||||
}
|
||||
|
||||
function getNameplateData(a0) { // fn#20856, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:145, offset: 0x00eddcbc, size: 74 bytes, params: 2, frame: 13
|
||||
var r0;
|
||||
var object2;
|
||||
const value = null;
|
||||
if (value == a0) {
|
||||
r0 = value;
|
||||
} else {
|
||||
object2 = {};
|
||||
object2.skuId = a0.skuId;
|
||||
object2.src = a0.asset;
|
||||
object2.imgAlt = a0.label;
|
||||
object2.palette = getNameplatePalette(a0.palette);
|
||||
r0 = object2;
|
||||
}
|
||||
return r0;
|
||||
}
|
||||
|
||||
function isValidPalette(a0) { // fn#20857, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:276, offset: 0x00eddd06, size: 122 bytes, params: 2, frame: 16
|
||||
const name = a0.name;
|
||||
const INVALID_PALETTE_KEY = (require(1905) /* metro dependency 1905: constants */).INVALID_PALETTE_KEY;
|
||||
return name !== INVALID_PALETTE_KEY && (a0.name !== (require(1905) /* metro dependency 1905: constants */).CUSTOM_PALETTE_KEY || isValidHex_20858(a0.darkBackground) && isValidHex_20858(a0.lightBackground));
|
||||
}
|
||||
|
||||
function getNameplateDataFromProductRecord(a0) { // fn#20860, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:771, offset: 0x00eddde2, size: 64 bytes, params: 2, frame: 13
|
||||
if (a0.items.length === 0) {
|
||||
return null;
|
||||
}
|
||||
const property = a0.items[0];
|
||||
return isNameplateRecord(property) ? getNameplateData(property) : null;
|
||||
}
|
||||
|
||||
function parseFirstFrame(a0) { // fn#20862, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:1184, offset: 0x00edde94, size: 226 bytes, params: 2, frame: 18
|
||||
let value = importDefault(1907) /* metro dependency 1907 */;
|
||||
value = value.decode(a0);
|
||||
const property = (importDefault(1907) /* metro dependency 1907 */).toRGBA8(value)[0];
|
||||
const element = global.document.createElement('canvas');
|
||||
element.width = value.width;
|
||||
element.height = value.height;
|
||||
const context = element.getContext('2d');
|
||||
const ImageData = global.ImageData;
|
||||
const Uint8ClampedArray = global.Uint8ClampedArray;
|
||||
context.putImageData(new ImageData(new Uint8ClampedArray(property), value.width, value.height), 0, 0);
|
||||
return element.toDataURL('image/png');
|
||||
}
|
||||
|
||||
function getNameplateSampleUsers() { // fn#20863, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:2028:1494, offset: 0x00eddf76, size: 362 bytes, params: 1, frame: 17
|
||||
const object2 = {};
|
||||
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
|
||||
const string = intl.string;
|
||||
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
|
||||
const SbKDHi = t.SbKDHi;
|
||||
object2.mallow = {name: Reflect.apply(string, intl, [SbKDHi]),
|
||||
avatarSrc: 'https://cdn.discordapp.com/assets/content/6dcafe1231097505560fd098f0e6698990f0082369d34c35d8c3ee9615709f84.png'};
|
||||
const object4 = {};
|
||||
object4.name = intl.string(t['LMSo+F']);
|
||||
object4.avatarSrc = 'https://cdn.discordapp.com/assets/content/17ae2ee3b8476755370ca9fa4d776d0bb811e50962409a7ae2dedd1b96c95eab.png';
|
||||
object2.phibi = object4;
|
||||
object2.locke = {name: intl.string(t.g5Dumi),
|
||||
avatarSrc: 'https://cdn.discordapp.com/assets/content/a82a9daadc5c7842f183c0f61966b07d3aeeea478b7c8a4b8af48334eb1ce15f.png'};
|
||||
object2.cherry = {name: intl.string(t.p5Z3Ol),
|
||||
avatarSrc: 'https://cdn.discordapp.com/assets/content/afc2e8306ce540dccac7da1ca0871684d0bf67e77967ff0f679be84a0a6e51b7.png'};
|
||||
object2.boom = {name: intl.string(t.ncslie),
|
||||
avatarSrc: 'https://cdn.discordapp.com/assets/content/e264a2b0b8d963edd255c223abf1c0554f00a2f3a38640e509a38bc03d73b606.png'};
|
||||
return object2;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user