/* Metro module 12810; source: design/void/Badge/native/Badge.tsx; dependencies: [31, 27, 1949, 661, 1307, 33, 4501, 697, 477, 566, 8002, 1856, 2] */ import LocaleStore from '../../../../modules/user_settings/LocaleStore.tsx'; /* Metro dependency 1949 */ import * as FileImportTrackerModule from '../../../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ReactNativeModule from '../../../../by-id/module-00027-ReactNative.js'; /* Metro dependency 27 */ import * as ReactModule from '../../../../by-id/module-00031-React.js'; /* Metro dependency 31 */ import * as JsxRuntimeModule from '../../../../by-id/module-00033-JsxRuntime.js'; /* Metro dependency 33 */ import * as PlatformUtilsModule from '../../../../utils/PlatformUtils.tsx'; /* Metro dependency 477 */ import * as FluxModule from '../../../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */ import * as ConstantsModule from '../../../../Constants.tsx'; /* Metro dependency 661 */ import * as BadgeConstantsModule from '../../BadgeConstants/native/BadgeConstants.tsx'; /* Metro dependency 1307 */ import * as CreateStylesModule from '../../../components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */ function _fun97686(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97686, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13000:6, offset: 0x0218d77a, size: 721 bytes, params: 8, frame: 29 const env0_0 = require; const Badge_976872 = Badge_97687; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const value = undefined; const Fonts = (ConstantsModule).Fonts; const BADGE_PADDING = BadgeConstantsModule.BADGE_PADDING; const BADGE_SIZE = BadgeConstantsModule.BADGE_SIZE; const createStyles = CreateStylesModule.createStyles; object = {}; object.badgeMask = {position: 'absolute', bottom: -BADGE_PADDING, right: -BADGE_PADDING, padding: BADGE_PADDING, zIndex: 1}; const object3 = {'paddingLeft': null, 'paddingRight': null, 'borderRadius': null, 'justifyContent': 'center', 'alignItems': 'center', 'overflow': 'hidden'}; object3.paddingLeft = BADGE_PADDING; object3.paddingRight = BADGE_PADDING; let space = (importDefault(697) /* metro dependency 697: native */).space; const PX_8 = space.PX_8; object3.borderRadius = PX_8; const value4 = 'center'; object.badge = object3; const object4 = {minWidth: BADGE_SIZE - 2 * BADGE_PADDING}; let WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE; object4.color = WHITE; object4.fontSize = 12; const isAndroid2 = PlatformUtilsModule.isAndroid(); space = (importDefault(697) /* metro dependency 697: native */).space; object4.lineHeight = isAndroid2 ? space.PX_12 : space.PX_16; const PRIMARY_BOLD = Fonts.PRIMARY_BOLD; object4.fontFamily = PRIMARY_BOLD; object4.textAlign = value4; object4.textAlignVertical = PlatformUtilsModule.isAndroid() ? value4 : value; object.badgeText = object4; WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE; object.noCount = {'width': 5, 'height': 5, 'borderRadius': 2.5, backgroundColor: WHITE}; const MOBILE_LEGACY_BUTTON_SECONDARY_BORDER_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_LEGACY_BUTTON_SECONDARY_BORDER_DEFAULT; object.unread = {backgroundColor: MOBILE_LEGACY_BUTTON_SECONDARY_BORDER_DEFAULT}; const BACKGROUND_FEEDBACK_NOTIFICATION = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_FEEDBACK_NOTIFICATION; object.mention = {backgroundColor: BACKGROUND_FEEDBACK_NOTIFICATION}; let BACKGROUND_MOD_STRONG = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_STRONG; object.lowImportanceMention = {backgroundColor: BACKGROUND_MOD_STRONG}; BACKGROUND_MOD_STRONG = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_STRONG; object.eventsMentionBadge = {backgroundColor: BACKGROUND_MOD_STRONG}; const env0_11 = Reflect.apply(createStyles, CreateStylesModule, [object]); (FileImportTrackerModule).fileFinishedImporting('design/void/Badge/native/Badge.tsx'); exports.default = Badge_976872; exports.MaskedBadge = MaskedBadge_97690; return value; function Badge_97687({value, style, dotStyle, textStyle, accessible, accessibilityLabel, accessibilityElementsHidden, importantForAccessibility, hideCount, maxValue, unreadIndicator, eventsMentionBadge, isMentionLowImportance}) { // fn#97687, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13000:1127, offset: 0x0218da4b, size: 512 bytes, params: 2, frame: 31 var r6; var r5; var r0; var defaultImport; var moduleValue2; var humanizeValue; var Math; accessibilityElementsHidden = !(accessibilityElementsHidden === undefined) && accessibilityElementsHidden; importantForAccessibility = importantForAccessibility === undefined ? 'auto' : importantForAccessibility; hideCount = !(hideCount === undefined) && hideCount; maxValue = maxValue === undefined ? Infinity : maxValue; unreadIndicator = !(unreadIndicator === undefined) && unreadIndicator; eventsMentionBadge = !(eventsMentionBadge === undefined) && eventsMentionBadge; const eventsMentionBadge2 = eventsMentionBadge; isMentionLowImportance = !(isMentionLowImportance === undefined) && isMentionLowImportance; const styles = useStyles(); const useStateFromStores = FluxModule.useStateFromStores; let object = [LocaleStore]; const locale = Reflect.apply(useStateFromStores, FluxModule, [object, function() { return LocaleStore.locale; }]); const value10 = eventsMentionBadge2.useMemo(_fun97689, [styles, style, unreadIndicator, value, eventsMentionBadge, isMentionLowImportance]); if (value > 0) { object = {pointerEvents: 'none', style: value10, accessible: accessible, accessibilityLabel: accessibilityLabel, accessibilityElementsHidden: accessibilityElementsHidden, importantForAccessibility: importantForAccessibility}; if (unreadIndicator) { if (value === 0) { r5 = null; } else { if (hideCount) { r6 = ; } else { defaultImport = importDefault(8002) /* metro dependency 8002: LegacyText */; var defaultImportProps = {'style': null, 'numberOfLines': 1, 'allowFontScaling': false, style: [styles.badgeText, textStyle]}; moduleValue2 = require(1856) /* metro dependency 1856: NumberUtils */; humanizeValue = moduleValue2.humanizeValue; Math = global.Math; value = ((Component) => {Reflect.apply(humanizeValue, moduleValue2, [Math.min(value, maxValue), locale])})(defaultImport); r6 = value; } r5 = r6; } } else { if (hideCount) { r6 = ; } else { defaultImport = importDefault(8002) /* metro dependency 8002: LegacyText */; var defaultImportProps = {'style': null, 'numberOfLines': 1, 'allowFontScaling': false, style: [styles.badgeText, textStyle]}; moduleValue2 = require(1856) /* metro dependency 1856: NumberUtils */; humanizeValue = moduleValue2.humanizeValue; Math = global.Math; value = ((Component) => {Reflect.apply(humanizeValue, moduleValue2, [Math.min(value, maxValue), locale])})(defaultImport); r6 = value; } r5 = r6; } value = ( {r5} ); r0 = value; } else if (unreadIndicator) { object = {pointerEvents: 'none', style: value10, accessible: accessible, accessibilityLabel: accessibilityLabel, accessibilityElementsHidden: accessibilityElementsHidden, importantForAccessibility: importantForAccessibility}; if (unreadIndicator) { if (value === 0) { r5 = null; } else { if (hideCount) { r6 = ; } else { defaultImport = importDefault(8002) /* metro dependency 8002: LegacyText */; var defaultImportProps = {'style': null, 'numberOfLines': 1, 'allowFontScaling': false, style: [styles.badgeText, textStyle]}; moduleValue2 = require(1856) /* metro dependency 1856: NumberUtils */; humanizeValue = moduleValue2.humanizeValue; Math = global.Math; value = ((Component) => {Reflect.apply(humanizeValue, moduleValue2, [Math.min(value, maxValue), locale])})(defaultImport); r6 = value; } r5 = r6; } } else { if (hideCount) { r6 = ; } else { defaultImport = importDefault(8002) /* metro dependency 8002: LegacyText */; var defaultImportProps = {'style': null, 'numberOfLines': 1, 'allowFontScaling': false, style: [styles.badgeText, textStyle]}; moduleValue2 = require(1856) /* metro dependency 1856: NumberUtils */; humanizeValue = moduleValue2.humanizeValue; Math = global.Math; value = ((Component) => {Reflect.apply(humanizeValue, moduleValue2, [Math.min(value, maxValue), locale])})(defaultImport); r6 = value; } r5 = r6; } value = ( {r5} ); r0 = value; } else { r0 = null; } return r0; function _fun97689() { // fn#97689, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13000:1461, offset: 0x0218dc4b, size: 158 bytes, params: 1, frame: 5 const r3 = unreadIndicator && value === 0 ? BADGE_SIZE_UNREAD : BADGE_SIZE; return [styles.badge, {height: r3, minWidth: r3}, unreadIndicator && value === 0 ? styles.unread : isMentionLowImportance ? styles.lowImportanceMention : styles.mention, eventsMentionBadge && styles.eventsMentionBadge, style]; } } function MaskedBadge_97690({style, maskStyle, dotStyle, textStyle, value, maxValue, accessibilityLabel, accessibilityElementsHidden, importantForAccessibility, onLayout, hideCount, unreadIndicator, isMentionLowImportance}) { // fn#97690, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13000:2038, offset: 0x0218dce9, size: 280 bytes, params: 2, frame: 29 var r0; unreadIndicator = !(unreadIndicator === undefined) && unreadIndicator; const styles = useStyles(); const value4 = styles.useMemo(function() { var r4; r4 = unreadIndicator && value === 0 ? BADGE_MASK_UNREAD_SIZE : BADGE_MASK_SIZE; return [styles.badgeMask, {minWidth: r4, height: r4, borderRadius: r4 / 2}, maskStyle]; }, [styles, maskStyle, unreadIndicator, view]); if (view > 0) { view = ( ); r0 = view; } else if (unreadIndicator) { view = ( ); r0 = view; } else { r0 = null; } return r0; } } global.__d(_fun97686, 12810, [31, 27, 1949, 661, 1307, 33, 4501, 697, 477, 566, 8002, 1856, 2]) /* metro module 12810, dependencies: [31, 27, 1949, 661, 1307, 33, 4501, 697, 477, 566, 8002, 1856, 2] */;