119 lines
8.1 KiB
TypeScript
119 lines
8.1 KiB
TypeScript
/* Metro module 13184; source: modules/user_profile/native/UserProfileEditBannerButton.tsx; dependencies: [31, 27, 33, 4501, 697, 6771, 8514, 8743, 5278, 1244, 4573, 9646, 8752, 8507, 2] */
|
|
import Native from '../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
|
|
import UseAnalyticsLocations from '../../app_analytics/useAnalyticsLocations.tsx'; /* Metro dependency 6771 */
|
|
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 IndexNativeModule from '../../../intl/index.native.tsx'; /* Metro dependency 1244 */
|
|
import * as PressablesModule from '../../../design/void/Pressables/native/Pressables.tsx'; /* Metro dependency 5278 */
|
|
import * as UserProfileAnalyticsContextModule from '../UserProfileAnalyticsContext.tsx'; /* Metro dependency 8514 */
|
|
import * as PencilIconModule from '../../../design/components/Icon/native/redesign/generated/PencilIcon.tsx'; /* Metro dependency 9646 */
|
|
|
|
function _fun100636(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#100636, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13374:6, offset: 0x021f1243, size: 375 bytes, params: 8, frame: 22
|
|
const env0_0 = require;
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = JsxRuntimeModule;
|
|
const env0_5 = value.jsx;
|
|
const env0_6 = value.jsxs;
|
|
value = require(4501) /* metro dependency 4501: createStyles */;
|
|
const createStyles = value.createStyles;
|
|
object = {};
|
|
object.container = {position: 'relative'};
|
|
const object3 = {'position': 'absolute', 'top': 12, 'right': 12, 'width': 28, 'height': 28, 'alignItems': 'center',
|
|
'justifyContent': 'center'};
|
|
let CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT;
|
|
object3.backgroundColor = CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT;
|
|
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
|
object.editButton = object3;
|
|
const object4 = {'position': 'absolute', 'justifyContent': 'center', 'minHeight': 28, 'top': 12, 'right': 48,
|
|
'paddingVertical': 4, 'paddingHorizontal': 12, 'borderRadius': null, 'backgroundColor': null, 'zIndex': 1};
|
|
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
|
|
CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT;
|
|
object4.backgroundColor = CONTROL_OVERLAY_SECONDARY_BACKGROUND_DEFAULT;
|
|
object.previewButton = object4;
|
|
const env0_7 = Reflect.apply(createStyles, value, [object]);
|
|
(FileImportTrackerModule).fileFinishedImporting('modules/user_profile/native/UserProfileEditBannerButton.tsx');
|
|
exports.default = UserProfileEditBannerButton;
|
|
function ProfilePreviewButton({userId}) { // fn#100637, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13374:673, offset: 0x021f13ba, size: 352 bytes, params: 2, frame: 22
|
|
var r0;
|
|
var PressableOpacity;
|
|
const intl = (IndexNativeModule).intl;
|
|
const t = (IndexNativeModule).t;
|
|
const styles = useStyles();
|
|
const analyticsLocations = (UseAnalyticsLocations)().analyticsLocations;
|
|
const useUserProfileAnalyticsContext = UserProfileAnalyticsContextModule.useUserProfileAnalyticsContext;
|
|
const context = Reflect.apply(useUserProfileAnalyticsContext, UserProfileAnalyticsContextModule, []).context;
|
|
const useCallback = ReactModule.useCallback;
|
|
if (userId == null) {
|
|
r0 = null;
|
|
} else {
|
|
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
|
|
r0 = (
|
|
<PressableOpacity
|
|
style={styles.previewButton}
|
|
onPress={Reflect.apply(useCallback, ReactModule, [_fun100638, [userId, context, analyticsLocations]])}
|
|
accessibilityRole="button"
|
|
accessibilityLabel={intl.string(t['3Qcx6K'])}
|
|
>
|
|
{((Text) => <Text variant="text-sm/semibold" color="always-white">{intl.string(t['3Qcx6K'])}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
|
|
</PressableOpacity>
|
|
);
|
|
}
|
|
return r0;
|
|
function _fun100638() { // fn#100638, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13374:824, offset: 0x021f151a, size: 97 bytes, params: 1, frame: 15
|
|
var value2;
|
|
var defaultImport;
|
|
var object;
|
|
if (userId != null) {
|
|
value2 = environment.__proto__;
|
|
defaultImport = importDefault(8743) /* metro dependency 8743: showUserProfileActionSheet */;
|
|
object = {};
|
|
copyDataProperties(object, context, undefined);
|
|
object['userId'] = userId;
|
|
object['isPreviewingChanges'] = true;
|
|
object['sourceAnalyticsLocations'] = analyticsLocations;
|
|
defaultImport(object);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
function EditButton({onPress, accessibilityLabel, disabled}) { // fn#100639, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13374:1219, offset: 0x021f157b, size: 180 bytes, params: 2, frame: 21
|
|
disabled = !(disabled === undefined) && disabled;
|
|
const styles = useStyles();
|
|
const PressableOpacity = (PressablesModule).PressableOpacity;
|
|
const PencilIcon = (PencilIconModule).PencilIcon;
|
|
const WHITE = (Native).colors.WHITE;
|
|
return (
|
|
<PressableOpacity
|
|
accessibilityRole="button"
|
|
accessibilityLabel={accessibilityLabel}
|
|
onPress={onPress}
|
|
disabled={disabled}
|
|
style={styles.editButton}
|
|
>
|
|
<PencilIcon size="xs" color={WHITE} />
|
|
</PressableOpacity>
|
|
);
|
|
}
|
|
|
|
function UserProfileEditBannerButton({user, displayProfile, pendingBanner, pendingAvatarSrc, pendingThemeColors, pendingAccentColor, bannerSafeArea, showProfilePreviewButton, showEditButton, onPressEdit, editButtonAccessibilityLabel, editDisabled}) { // fn#100640, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13374:1597, offset: 0x021f162f, size: 292 bytes, params: 2, frame: 31
|
|
showEditButton = showEditButton === undefined || showEditButton;
|
|
editDisabled = !(editDisabled === undefined) && editDisabled;
|
|
const styles = useStyles();
|
|
return (
|
|
<View style={styles.container}>
|
|
{((Component) => <Component user={user} displayProfile={displayProfile} pendingBanner={pendingBanner} pendingAvatarSrc={pendingAvatarSrc} pendingThemeColors={pendingThemeColors} pendingAccentColor={pendingAccentColor} bannerHeight={(importDefault(8752) /* metro dependency 8752: useUserProfileBannerHeight */)()} bannerSafeArea={bannerSafeArea} />)(importDefault(8507) /* metro dependency 8507: UserProfileBanner */)}
|
|
{showProfilePreviewButton && <ProfilePreviewButton userId={user.id} />}
|
|
{showEditButton && <EditButton onPress={onPressEdit} accessibilityLabel={editButtonAccessibilityLabel} disabled={editDisabled} />}
|
|
</View>
|
|
);
|
|
}
|
|
|
|
}
|
|
|
|
global.__d(_fun100636, 13184, [31, 27, 33, 4501, 697, 6771, 8514, 8743, 5278, 1244, 4573, 9646, 8752, 8507,
|
|
2]) /* metro module 13184, dependencies: [31, 27, 33, 4501, 697, 6771, 8514, 8743, 5278, 1244, 4573, 9646, 8752, 8507, 2] */;
|