Files
discord-decomp/sources/modules/premium/native/trials/PremiumTrialOfferActionSheetContent.tsx
2026-07-28 01:06:53 +03:00

109 lines
7.0 KiB
TypeScript

/* Metro module 14232; source: modules/premium/native/trials/PremiumTrialOfferActionSheetContent.tsx; dependencies: [31, 27, 33, 4501, 697, 11441, 1244, 9395, 6685, 5473, 4573, 3802, 14233, 4578, 7954, 2] */
import Native from '../../../../external/discord_common/js/packages/tokens/native.tsx'; /* Metro dependency 697 */
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 CreateStylesModule from '../../../../design/components/Styles/native/createStyles.tsx'; /* Metro dependency 4501 */
import * as TextModule from '../../../../design/components/Text/native/Text.tsx'; /* Metro dependency 4573 */
import * as ButtonNativeModule from '../../../../design/components/Button/native/Button.native.tsx'; /* Metro dependency 4578 */
import * as NativeModule from '../../../../design/assets/native.tsx'; /* Metro dependency 5473 */
import * as FolderIconModule from '../../../../design/components/Icon/native/redesign/generated/FolderIcon.tsx'; /* Metro dependency 6685 */
import * as NitroWheelIconModule from '../../../../design/components/Icon/native/redesign/generated/NitroWheelIcon.tsx'; /* Metro dependency 7954 */
import * as ChatSmileIconModule from '../../../../design/components/Icon/native/redesign/generated/ChatSmileIcon.tsx'; /* Metro dependency 9395 */
import * as UserIconModule from '../../../../design/components/Icon/native/redesign/generated/UserIcon.tsx'; /* Metro dependency 11441 */
function _fun107644(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#107644, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14429:6, offset: 0x02303940, size: 310 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ReactModule;
const createStyles = CreateStylesModule.createStyles;
const BACKGROUND_BASE_LOW = (Native).colors.BACKGROUND_BASE_LOW;
const env0_6 = Reflect.apply(createStyles, CreateStylesModule, [{contentContainer: {'paddingHorizontal': 36,
'paddingTop': 18, 'paddingBottom': 36, 'width': '100%', 'backgroundColor': null, 'alignItems': 'flex-start',
'display': 'flex', 'flexDirection': 'column', 'gap': 0, backgroundColor: BACKGROUND_BASE_LOW},
buttonContainer: {'marginVertical': 6, 'width': '100%', 'height': 48}, title: {'width': '100%',
'textAlign': 'center'}, heroIllustrationContainer: {'alignItems': 'center', 'justifyContent': 'center',
'height': 188, 'width': '100%'}}]);
value = value.memo(PremiumTrialOfferActionSheetContent);
(FileImportTrackerModule).fileFinishedImporting('modules/premium/native/trials/PremiumTrialOfferActionSheetContent.tsx');
exports.default = value;
function PremiumTrialOfferActionSheetContent({trialOffer, intervalDuration, onConfirm}) { // fn#107645, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14429:585, offset: 0x02303a76, size: 964 bytes, params: 2, frame: 33
var r17;
var moduleValue;
const styles = useStyles();
const subscription_trial = trialOffer?.subscription_trial;
let object = {};
const UserIcon = (UserIconModule).UserIcon;
object.IconComponent = UserIcon;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.kpMomJ);
object.description = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.uVUtPw);
const items3 = [object];
object = {};
const ChatSmileIcon = (ChatSmileIconModule).ChatSmileIcon;
object.IconComponent = ChatSmileIcon;
object.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R2IV/Q']);
object.description = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3SUJLd']);
items3[1] = object;
object = {};
const FolderIcon = (FolderIconModule).FolderIcon;
object.IconComponent = FolderIcon;
object.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['u/NJKc']);
object.description = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.i1UuMk);
items3[2] = object;
const NitroWumpusFlightRight3dIllustration = (NativeModule).NitroWumpusFlightRight3dIllustration;
const items2 = [
<View style={styles.heroIllustrationContainer}>
<NitroWumpusFlightRight3dIllustration width={180} height={180} />
</View>,
];
const Text = (TextModule).Text;
let formatToPlainString = intl.formatToPlainString;
const q8eMc0 = (require(1244) /* metro dependency 1244: indexNative */).t.q8eMc0;
if (subscription_trial?.sku_id != null) {
moduleValue = require(3802) /* metro dependency 3802: PremiumUtils */;
r17 = moduleValue.getDisplayNameFromSku(subscription_trial?.sku_id);
} else {
r17 = null;
}
items2[1] = (
<Text
variant="heading-xl/bold"
color="mobile-text-heading-primary"
style={styles.title}
>
{Reflect.apply(formatToPlainString, intl, [q8eMc0, {displayName: r17, duration: intervalDuration}])}
</Text>
);
items2[2] = ((Component) => <Component perks={items3} />)(importDefault(14233) /* metro dependency 14233: PremiumPerksList */);
const Button = (ButtonNativeModule).Button;
formatToPlainString = intl.formatToPlainString;
const xASjq5 = (require(1244) /* metro dependency 1244: indexNative */).t.xASjq5;
const object4 = {duration: intervalDuration};
const NitroWheelIcon = (NitroWheelIconModule).NitroWheelIcon;
const WHITE = (Native).unsafe_rawColors.WHITE;
items2[3] = (
<View style={styles.buttonContainer}>
<Button
size="lg"
text={Reflect.apply(formatToPlainString, intl, [xASjq5, object4])}
onPress={onConfirm}
grow
icon={<NitroWheelIcon size="md" color={WHITE} />}
/>
</View>
);
return (
<View style={styles.contentContainer}>
{items2}
</View>
);
}
}
global.__d(_fun107644, 14232, [31, 27, 33, 4501, 697, 11441, 1244, 9395, 6685, 5473, 4573, 3802, 14233, 4578, 7954,
2]) /* metro module 14232, dependencies: [31, 27, 33, 4501, 697, 11441, 1244, 9395, 6685, 5473, 4573, 3802, 14233, 4578, 7954, 2] */;