Initial commit

This commit is contained in:
janisslsm committed 2026-07-27 16:20:00 +03:00
commit af3b49f756
16065 files changed
+2938410

No files matched your search

@@ -0,0 +1,79 @@
/* Metro module 13676; source: modules/guild_role_subscriptions/GroupListingsFetchContext.tsx; dependencies: [57, 31, 4257, 3778, 33, 632, 6845, 2] */
function _fun104480(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104480, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13873:6, offset: 0x02296cf3, size: 237 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const value = importAll(31) /* metro dependency 31 */;
const gatewayConnectionStore = importDefault(4257) /* metro dependency 4257: GatewayConnectionStore */;
const guildRoleSubscriptionsStore = importDefault(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */;
const env0_7 = (require(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */).FetchState;
const env0_8 = (require(33) /* metro dependency 33 */).jsx;
const env0_9 = value.createContext(undefined);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GroupListingsFetchContext.tsx');
exports.useGroupListingsFetchContext = useGroupListingsFetchContext;
exports.GroupListingsFetchContextProvider = GroupListingsFetchContextProvider;
}
function useGroupListingsFetchContext(a0) { // fn#104481, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13873:324, offset: 0x02296de0, size: 152 bytes, params: 2, frame: 17
var Error;
let value = a0;
const value3 = env0_4.useContext(env0_9);
if (value3 == null) {
Error = global.Error;
value = '' + (value ?? 'useGroupListingsFetchContext') + ' must be used within a GroupListingsFetchContextProvider';
throw new Error(value);
}
const listingsLoaded = value3.listingsLoaded;
env0_4.useEffect(function() {
fetchGroupListingsForGuild();
}, [value3.fetchGroupListingsForGuild]);
return listingsLoaded;
}
function GroupListingsFetchContextProvider({guildId, children, refetchOnMount, includeSoftDeleted, countryCode, dontFetchWhileTrue}) { // fn#104483, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13873:646, offset: 0x02296e78, size: 317 bytes, params: 2, frame: 25
const env0_3 = dontFetchWhileTrue;
const value2 = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([GatewayConnectionStore],
function() {
return GatewayConnectionStore.isConnected();
});
const env0_4 = value2;
const value3 = (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([GuildRoleSubscriptionsStore],
_fun104485);
const binding = env0_4;
const [property, env0_6] = env0_3(binding.useState(refetchOnMount === true), 2);
const value6 = binding.useCallback(_fun104486, [value2, guildId, includeSoftDeleted, countryCode,
dontFetchWhileTrue, property]);
const FETCHED = FetchState.FETCHED;
const r7 = value3 === FETCHED && !property;
const Provider = env0_9.Provider;
return (
<Provider value={{listingsLoaded: r7, fetchGroupListingsForGuild: value6}}>
{children}
</Provider>
);
}
function _fun104485() { // fn#104485, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13873:880, offset: 0x02296fb5, size: 52 bytes, params: 1, frame: 12
return guildId != null ? GuildRoleSubscriptionsStore.getSubscriptionGroupListingsForGuildFetchState(guildId) : FetchState.FETCHED;
}
function _fun104486() { // fn#104486, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13873:1017, offset: 0x02296fe9, size: 155 bytes, params: 1, frame: 15
var value2;
var moduleValue;
if (guildId != null) {
if (env0_4) {
if (dontFetchWhileTrue !== true) {
value2 = environment.__proto__;
if (env0_5 || GuildRoleSubscriptionsStore.getSubscriptionGroupListingsForGuildFetchState(guildId) === FetchState.NOT_FETCHED) {
env0_6(false);
moduleValue = importAll(6845) /* metro dependency 6845: GuildRoleSubscriptionsActionCreators */;
moduleValue.fetchAllSubscriptionListingsDataForGuild(guildId,
{includeSoftDeleted: includeSoftDeleted,
countryCode: countryCode});
}
}
}
}
}
@@ -0,0 +1,41 @@
/* Metro module 8236; source: modules/guild_role_subscriptions/GuildRoleSubscriptionSystemMessageConstants.tsx; dependencies: [1244, 4785, 2] */
function _fun65876(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#65876, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8421:6, offset: 0x01be3a1c, size: 347 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const StickerFormat = (require(4785) /* metro dependency 4785: StickersTypes */).StickerFormat;
let APNG = StickerFormat.APNG;
const items2 = [{'id': '781323471249604648', 'format_type': null,
'description': 'Cheerful Choco jumps out of gift box', 'name': 'Surprise', format_type: APNG}];
APNG = StickerFormat.APNG;
items2[1] = {'id': '781324642736144424', 'format_type': null, 'description': 'Cheerful Choco preens against window',
'name': 'Affection', format_type: APNG};
APNG = StickerFormat.APNG;
items2[2] = {'id': '781323769960202280', 'format_type': null, 'description': 'Cheerful Choco sparkles',
'name': 'OMG', format_type: APNG};
APNG = StickerFormat.APNG;
items2[3] = {'id': '781324722394103808', 'format_type': null, 'description': 'Cheerful Choco cheers',
'name': 'Cheer', format_type: APNG};
APNG = StickerFormat.APNG;
items2[4] = {'id': '813951723822645278', 'format_type': null, 'description': 'Cheerful Choco gives thumbs up',
'name': 'Nice', format_type: APNG};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionSystemMessageConstants.tsx');
exports.getJoinButtonLabels = getJoinButtonLabels;
exports.getRenewButtonLabels = getRenewButtonLabels;
exports.STICKERS = items2;
}
function getJoinButtonLabels() { // fn#65877, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8421:851, offset: 0x01be3b77, size: 121 bytes, params: 1, frame: 15
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
return [Reflect.apply(string, intl, [t.b6wEe6]), intl.string(t.i8o9hX)];
}
function getRenewButtonLabels() { // fn#65878, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8421:956, offset: 0x01be3bf0, size: 121 bytes, params: 1, frame: 15
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
return [Reflect.apply(string, intl, [t.vqnToc]), intl.string(t['9yh+dM'])];
}
@@ -0,0 +1,117 @@
/* Metro module 8235; source: modules/guild_role_subscriptions/GuildRoleSubscriptionSystemMessageUtils.tsx; dependencies: [1867, 1878, 8236, 661, 21, 1244, 6841, 4863, 2] */
function _fun65864(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#65864, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:6, offset: 0x01be339f, size: 336 bytes, params: 8, frame: 19
const env0_0 = require;
const identityHook = function(a0) {
return a0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
let value = require(8236) /* metro dependency 8236: GuildRoleSubscriptionSystemMessageConstants */;
const env0_5 = value.getJoinButtonLabels;
const env0_6 = value.getRenewButtonLabels;
const env0_7 = value.STICKERS;
value = require(661) /* metro dependency 661: Constants */;
const env0_8 = value.AnalyticEvents;
const env0_9 = value.NOOP;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionSystemMessageUtils.tsx');
exports.pickRoleSubscriptionPurchaseSticker = pickRoleSubscriptionPurchaseSticker;
exports.getRoleSubscriptionPurchaseStickerCTA = getRoleSubscriptionPurchaseStickerCTA;
exports.getRoleSubscriptionPurchaseSystemMessageFormattedContent = function({username, usernameOnClickHandler,
roleSubscriptionOnClickHandler, guildId, roleSubscriptionData}) {
var value2 = getRoleSubscriptionPurchaseSystemMessageContent({username: username,
usernameOnClickHandler: usernameOnClickHandler,
roleSubscriptionOnClickHandler: roleSubscriptionOnClickHandler,
guildId: guildId, roleSubscriptionData: roleSubscriptionData});
username = value2.content;
return require(dependencyMap[5]).intl.format(username, value2.formatParams);
};
exports.getRoleSubscriptionPurchaseSystemMessageAstFormattedContent = function({username, usernameOnClickHandler,
roleSubscriptionOnClickHandler, guildId, roleSubscriptionData}) {
var value2 = getRoleSubscriptionPurchaseSystemMessageContent({username: username,
usernameOnClickHandler: usernameOnClickHandler,
roleSubscriptionOnClickHandler: roleSubscriptionOnClickHandler,
guildId: guildId, roleSubscriptionData: roleSubscriptionData});
username = value2.content;
return require(dependencyMap[5]).intl.formatToParts(username, value2.formatParams);
};
exports.getRoleSubscriptionPurchaseSystemMessageContentMobile = getRoleSubscriptionPurchaseSystemMessageContentMobile;
exports.isEligibleForRoleSubscriptionPurchaseSystemMessageSettings = isEligibleForRoleSubscriptionPurchaseSystemMessageSettings;
exports.trackRoleSubscriptionPurchaseMessageTierClick = trackRoleSubscriptionPurchaseMessageTierClick;
exports.getRoleSubscriptionPurchaseSystemMessageEventProperties = getRoleSubscriptionPurchaseSystemMessageEventProperties;
}
function getRoleSubscriptionPurchaseContentCommonData(a0, a1) { // fn#65866, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:260, offset: 0x01be34ef, size: 109 bytes, params: 3, frame: 16
const guild = GuildStore.getGuild(a0);
const value2 = undefined;
const total_months_subscribed = a1 == null ? value2 : a1.total_months_subscribed;
const value3 = 0;
const r4 = total_months_subscribed ?? value3;
const is_renewal = a1 == null ? value2 : a1.is_renewal;
return {guild: guild, totalMonthsSubscribed: r4, showWithDuration: r4 > value3,
isRenewal: is_renewal != null && is_renewal};
}
function getRoleSubscriptionPurchaseSystemMessageContent({username, usernameOnClickHandler = identityHook, roleSubscriptionOnClickHandler = NOOP, guildId, roleSubscriptionData}) { // fn#65867, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:512, offset: 0x01be355c, size: 245 bytes, params: 2, frame: 22
const {guild, totalMonthsSubscribed, showWithDuration,
isRenewal} = getRoleSubscriptionPurchaseContentCommonData(guildId, roleSubscriptionData);
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
return {content: showWithDuration ? isRenewal ? t.Iy66M7 : t.eCgb2W : isRenewal ? t.mPTTdv : t.mYjFFx,
formatParams: {username: username, usernameHook: usernameOnClickHandler, guildName: guild?.name,
handleGuildNameClick: roleSubscriptionOnClickHandler, tierName: roleSubscriptionData?.tier_name,
months: totalMonthsSubscribed}};
}
function pickRoleSubscriptionPurchaseSticker(a0) { // fn#65868, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:1195, offset: 0x01be3651, size: 131 bytes, params: 2, frame: 15
const id = UserStore.getCurrentUser()?.id;
const r2 = id != null ? (importDefault(21) /* metro dependency 21: SnowflakeUtils */).extractTimestamp(id) : 0;
const defaultImport2 = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
return STICKERS[(r2 + defaultImport2.extractTimestamp(a0)) % STICKERS.length];
}
function getRoleSubscriptionPurchaseStickerCTA(a0, a1) { // fn#65869, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:1426, offset: 0x01be36d4, size: 82 bytes, params: 3, frame: 12
const r1 = a1 ? getRenewButtonLabels() : getJoinButtonLabels();
let value = importDefault(21) /* metro dependency 21: SnowflakeUtils */;
value = value.extractTimestamp(a0);
return r1[value % r1.length];
}
function getRoleSubscriptionPurchaseSystemMessageContentMobile({username, usernameOnClickHandler = identityHook, roleSubscriptionOnClickHandler = NOOP, guildId, roleSubscriptionData}) { // fn#65872, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:2513, offset: 0x01be3819, size: 268 bytes, params: 2, frame: 23
const {guild, totalMonthsSubscribed, showWithDuration,
isRenewal} = getRoleSubscriptionPurchaseContentCommonData(guildId, roleSubscriptionData);
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
return (require(1244) /* metro dependency 1244: indexNative */).intl.formatToParts(showWithDuration ? isRenewal ? t.OQ0OUy : t['+N9bxq'] : isRenewal ? t.OxP1NC : t['6Z1E+7'],
{guildName: guild?.name, tierName: roleSubscriptionData?.tier_name, username: username,
usernameOnClick: usernameOnClickHandler, roleSubscriptionOnClick: roleSubscriptionOnClickHandler,
months: totalMonthsSubscribed});
}
function isEligibleForRoleSubscriptionPurchaseSystemMessageSettings(a0) { // fn#65873, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:3140, offset: 0x01be3925, size: 41 bytes, params: 2, frame: 11
return (require(6841) /* metro dependency 6841: useIsCreatorMonetizationEnabledGuild */).isCreatorMonetizationEnabledGuild(a0);
}
function trackRoleSubscriptionPurchaseMessageTierClick(a0, a1, a2, a3) { // fn#65874, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:3312, offset: 0x01be394e, size: 115 bytes, params: 5, frame: 17
const value2 = undefined;
const defaultImport = importDefault(4863) /* metro dependency 4863: AppAnalyticsUtils */;
const trackWithMetadata = defaultImport.trackWithMetadata;
const ROLE_SUBSCRIPTION_PURCHASE_SYSTEM_MESSAGE_CLICKED = AnalyticEvents.ROLE_SUBSCRIPTION_PURCHASE_SYSTEM_MESSAGE_CLICKED;
const currentUser = UserStore.getCurrentUser();
Reflect.apply(trackWithMetadata, defaultImport, [ROLE_SUBSCRIPTION_PURCHASE_SYSTEM_MESSAGE_CLICKED, {guild_id: a0,
user_id: currentUser == null ? value2 : currentUser.id, channel_id: a1, message_id: a2,
role_subscription_listing_id: a3}]);
return value2;
}
function getRoleSubscriptionPurchaseSystemMessageEventProperties({guild_id, id}, {author, id}) { // fn#65875, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8420:3639, offset: 0x01be39c1, size: 91 bytes, params: 3, frame: 13
const object2 = {};
object2.guild_id = guild_id;
let id = UserStore.getCurrentUser()?.id;
object2.sender = id;
id = author.id;
object2.target_user = id;
object2.channel_id = id;
object2.message_id = id;
return object2;
}
@@ -0,0 +1,49 @@
/* Metro module 13694; source: modules/guild_role_subscriptions/GuildRoleSubscriptionTypeUtils.tsx; dependencies: [13668, 1880, 1244, 2] */
function _fun104648(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104648, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13891:6, offset: 0x0229c7da, size: 191 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionBenefitTypes;
const env0_3 = (require(1880) /* metro dependency 1880: PremiumConstants */).SubscriptionIntervalTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionTypeUtils.tsx');
exports.getBenefitKey = function(a0) {
return 'roles' in a0 ? 'emoji-' + a0.id : '' + a0.ref_type + '-' + a0.emoji_id + '-' + a0.name + '-' + a0.ref_id;
};
exports.formatPlanInterval = formatPlanInterval;
exports.formatPlanIntervalDuration = formatPlanIntervalDuration;
exports.isChannelBenefit = function({ref_type}) {
return ref_type === GuildRoleSubscriptionBenefitTypes.CHANNEL;
};
exports.isIntangibleBenefit = function({ref_type}) {
return ref_type === GuildRoleSubscriptionBenefitTypes.INTANGIBLE;
};
}
function formatPlanInterval({interval, interval_count}) { // fn#104650, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13891:427, offset: 0x0229c901, size: 202 bytes, params: 2, frame: 18
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const format = intl.format;
const DAY = SubscriptionIntervalTypes.DAY;
return Reflect.apply(format, intl,
[DAY === interval ? t['3rUmPQ'] : SubscriptionIntervalTypes.MONTH === interval ? t.zuN545 : SubscriptionIntervalTypes.YEAR !== interval ? undefined : t.cuSp8Q,
{count: interval_count}]);
}
function formatPlanIntervalDuration({interval, interval_count}) { // fn#104651, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13891:715, offset: 0x0229c9cb, size: 356 bytes, params: 2, frame: 18
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const DAY = SubscriptionIntervalTypes.DAY;
if (DAY === interval) {
return interval_count > 0 && interval_count % 7 === 0 ? intl.formatToPlainString(t.iVZYyl,
{weeks: interval_count / 7}) : intl.formatToPlainString(t.jzH70Z, {days: interval_count});
}
const MONTH = SubscriptionIntervalTypes.MONTH;
if (MONTH === interval) {
return intl.formatToPlainString(t.erUSmA, {months: interval_count});
}
const YEAR = SubscriptionIntervalTypes.YEAR;
if (YEAR === interval) {
return intl.formatToPlainString(t.IfYQVC, {years: interval_count});
}
}
@@ -0,0 +1,35 @@
/* Metro module 16076; source: modules/guild_role_subscriptions/GuildRoleSubscriptionsActionCreatorExtras.native.tsx; dependencies: [16066, 13668, 13690, 5080, 16077, 1962, 16109, 2] */
function _fun124115(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124115, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16284:6, offset: 0x025a8dea, size: 182 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
const guildRoleSubscriptionsConstantsModule = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_5 = guildRoleSubscriptionsConstantsModule.GUILD_ROLE_SUBSCRIPTION_TIER_CREATION_KEY;
const env0_6 = guildRoleSubscriptionsConstantsModule.GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionsActionCreatorExtras.native.tsx');
exports.NEW_LISTING_EDIT_STATE_ID = 'NEW_LISTING_EDIT_STATE_ID';
exports.openTierCreationModal = openTierCreationModal;
exports.openGroupSetupModal = openGroupSetupModal;
}
function openTierCreationModal(a0) { // fn#124116, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16284:409, offset: 0x025a8ea0, size: 144 bytes, params: 2, frame: 18
RoleTierEditStore.resetImperatively();
importAll(dependencyMap[2]).clearEditState('NEW_LISTING_EDIT_STATE_ID');
const defaultImport = importDefault(dependencyMap[3]);
const pushLazy = defaultImport.pushLazy;
const value2 = require(dependencyMap[5])(dependencyMap[4], dependencyMap.paths);
const object2 = {};
copyDataProperties(object2, a0, undefined);
object2['editStateId'] = 'NEW_LISTING_EDIT_STATE_ID';
Reflect.apply(pushLazy, defaultImport, [value2, object2, GUILD_ROLE_SUBSCRIPTION_TIER_CREATION_KEY]);
}
function openGroupSetupModal(a0) { // fn#124117, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16284:577, offset: 0x025a8f30, size: 137 bytes, params: 2, frame: 18
RoleTierEditStore.resetImperatively();
importAll(dependencyMap[2]).clearEditState('NEW_LISTING_EDIT_STATE_ID');
const defaultImport = importDefault(dependencyMap[3]);
defaultImport.pushLazy(require(dependencyMap[5])(dependencyMap[6], dependencyMap.paths), {guildId: a0,
editStateId: 'NEW_LISTING_EDIT_STATE_ID'}, GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY);
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,51 @@
/* Metro module 13668; source: modules/guild_role_subscriptions/GuildRoleSubscriptionsConstants.tsx; dependencies: [1880, 482, 2] */
function _fun104373(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13865:6, offset: 0x0229469e, size: 570 bytes, params: 8, frame: 25
let Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const SubscriptionIntervalTypes = (require(1880) /* metro dependency 1880: PremiumConstants */).SubscriptionIntervalTypes;
const PRIMARY_DOMAIN = (require(482) /* metro dependency 482: Constants */).PRIMARY_DOMAIN;
const object = {CHANNEL: 1};
object[1] = 'CHANNEL';
object.INTANGIBLE = 2;
object[2] = 'INTANGIBLE';
const object4 = {SOME_CHANNELS: 0};
object4[0] = 'SOME_CHANNELS';
object4.ALL_CHANNELS = 1;
object4[1] = 'ALL_CHANNELS';
let DAY = SubscriptionIntervalTypes.DAY;
const items2 = [{interval: DAY, interval_count: 1}];
DAY = SubscriptionIntervalTypes.DAY;
items2[1] = {interval: DAY, interval_count: 7};
const object5 = {NONE: 0};
object5[0] = 'NONE';
object5.IN_SUBSCRIPTION_SERVER = 1;
object5[1] = 'IN_SUBSCRIPTION_SERVER';
object5.SUBSCRIBED = 2;
object5[2] = 'SUBSCRIBED';
const value = 'https://' + PRIMARY_DOMAIN + '/creators';
Object = global.Object;
const value2 = Object.freeze({'MUST_READ_ARTICLES': 'https://discord.com/creators/5-must-read-articles-for-beginners',
'CREATOR_TO_ADMIN_101': 'https://discord.com/creators/creator-to-server-admin-101',
'CREATOR_TO_ADMIN_201': 'https://discord.com/creators/creator-to-server-admin-201'});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionsConstants.tsx');
exports.MAX_SUBSCRIPTION_TIERS = 3;
exports.MAX_SUBSCRIPTION_TIER_NAME_LENGTH = 100;
exports.MAX_SUBSCRIPTION_TIER_DESCRIPTION_LENGTH = 1500;
exports.MAX_SUBSCRIPTION_BENEFIT_NAME_LENGTH = 80;
exports.MAX_SUBSCRIPTION_BENEFIT_DESCRIPTION_LENGTH = 160;
exports.GUILD_ROLE_SUBSCRIPTION_TIER_CREATION_KEY = 'guild-role-subscription-tier-creation-key';
exports.GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY = 'guild-role-subscription-group-setup-key';
exports.RESPONSIVE_MOBILE_WIDTH_SIZE_QUERY = '(max-width: 485px)';
exports.RESPONSIVE_MOBILE_HEIGHT_SMALL_QUERY = '(max-height: 450px)';
exports.GuildRoleSubscriptionsTierScenes = {GATING: 'GATING', GROUP: 'GROUP', DETAILS: 'DETAILS',
BENEFITS: 'BENEFITS', CHANNEL_BENEFITS: 'CHANNEL_BENEFITS', INTANGIBLE_BENEFITS: 'INTANGIBLE_BENEFITS ',
DESIGN: 'DESIGN', CONFIRMATION: 'CONFIRMATION', MEMBERS: 'MEMBERS'};
exports.GuildRoleSubscriptionBenefitTypes = object;
exports.GuildRoleSubscriptionFormat = object4;
exports.TIER_TRIAL_INTERVALS = items2;
exports.UserGuildRoleSubscriptionRelationship = object5;
exports.CREATOR_REVENUE_PORTAL_URL = value;
exports.CREATOR_REVENUE_SHARE_PERCENTAGE = 90;
exports.SERVER_SUBSCRIPTIONS_PREMIUM_CHECKLIST_EDUCATIONAL_URLS = value2;
}
@@ -0,0 +1,45 @@
/* Metro module 12667; source: modules/guild_role_subscriptions/GuildRoleSubscriptionsExperimentUtils.tsx; dependencies: [1867, 661, 632, 2] */
function _fun97059(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97059, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12857:6, offset: 0x021717b3, size: 202 bytes, params: 8, frame: 18
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const GuildFeatures = (require(661) /* metro dependency 661: Constants */).GuildFeatures;
const ROLE_SUBSCRIPTIONS_ENABLED = GuildFeatures.ROLE_SUBSCRIPTIONS_ENABLED;
items = [ROLE_SUBSCRIPTIONS_ENABLED];
const CREATOR_MONETIZABLE = GuildFeatures.CREATOR_MONETIZABLE;
items[1] = CREATOR_MONETIZABLE;
const CREATOR_MONETIZABLE_PROVISIONAL = GuildFeatures.CREATOR_MONETIZABLE_PROVISIONAL;
items[2] = CREATOR_MONETIZABLE_PROVISIONAL;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionsExperimentUtils.tsx');
exports.hasEnabledMonetization = hasEnabledMonetization;
exports.isGuildEligibleForTierTemplates = isGuildEligibleForTierTemplates;
exports.useGuildEligibleForTierTemplates = function(a0) {
var env0_0 = a0;
return require(dependencyMap[2]).useStateFromStores([GuildStore], _fun97064);
};
}
function hasEnabledMonetization(a0) { // fn#97060, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12857:352, offset: 0x0217187d, size: 45 bytes, params: 2, frame: 12
const env0_0 = a0;
return a0 != null && env0_4.some(_fun97061);
}
function isGuildEligibleForTierTemplates(a0) { // fn#97062, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12857:429, offset: 0x021718aa, size: 70 bytes, params: 2, frame: 13
const guild = GuildStore.getGuild(a0);
const r1 = guild == null ? undefined : guild.features.has(GuildFeatures.ROLE_SUBSCRIPTIONS_ENABLED);
return r1 != null && r1;
}
function useGuildEligibleForTierTemplates(a0) { // fn#97063, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12857:611, offset: 0x021718f0, size: 66 bytes, params: 2, frame: 14
const env0_0 = a0;
return (require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([GuildStore], _fun97064);
}
function _fun97064() { // fn#97064, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12857:695, offset: 0x02171932, size: 74 bytes, params: 1, frame: 13
const value = environment.__proto__;
const guild = GuildStore.getGuild(env0_0);
const r1 = guild == null ? undefined : guild.features.has(GuildFeatures.ROLE_SUBSCRIPTIONS_ENABLED);
return r1 != null && r1;
}
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,51 @@
/* Metro module 16088; source: modules/guild_role_subscriptions/GuildRoleSubscriptionsModalActionCreators.native.tsx; dependencies: [16089, 5080, 16090, 1962, 16096, 2] */
function _fun124214(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124214, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16296:6, offset: 0x025ac396, size: 147 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildRoleSubscriptionBenefitEditorModalStateStoreModule = importAll(16089) /* metro dependency 16089: GuildRoleSubscriptionBenefitEditorModalStateStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionsModalActionCreators.native.tsx');
exports.showCreateBenefitModal = showCreateBenefitModal;
exports.showEditBenefitModal = showEditBenefitModal;
exports.showEditEmojisModal = showEditEmojisModal;
}
function showCreateBenefitModal({guildId, listingId, type, onSave}) { // fn#124215, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16296:294, offset: 0x025ac429, size: 140 bytes, params: 2, frame: 20
GuildRoleSubscriptionBenefitEditorModalStateStore.resetImperatively();
const defaultImport = importDefault(dependencyMap[1]);
const pushLazy = defaultImport.pushLazy;
let value = require(dependencyMap[3]);
value = value(dependencyMap[2], dependencyMap.paths);
Reflect.apply(pushLazy, defaultImport, [value, {benefitType: type, guildId: guildId, onSave: onSave,
listingId: listingId}, 'GuildRoleSubscriptionBenefitEditorModal']);
}
function showEditBenefitModal({guildId, benefit, listingId, onDelete, onSave}) { // fn#124216, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16296:502, offset: 0x025ac4b5, size: 159 bytes, params: 2, frame: 21
GuildRoleSubscriptionBenefitEditorModalStateStore.initializeImperatively(benefit);
const defaultImport = importDefault(dependencyMap[1]);
const pushLazy = defaultImport.pushLazy;
let value = require(dependencyMap[3]);
value = value(dependencyMap[2], dependencyMap.paths);
Reflect.apply(pushLazy, defaultImport, [value, {benefitType: benefit.ref_type, guildId: guildId, onDelete: onDelete,
onSave: onSave, listingId: listingId}, 'GuildRoleSubscriptionBenefitEditorModal']);
}
function showEditEmojisModal({guildId, subscriptionRoleId, listingId, initialTierEmojiIds, onSave}) { // fn#124217, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16296:747, offset: 0x025ac554, size: 172 bytes, params: 2, frame: 21
var r7;
var set;
const defaultImport = importDefault(dependencyMap[1]);
const pushLazy = defaultImport.pushLazy;
let value = require(dependencyMap[3]);
value = value(dependencyMap[4], dependencyMap.paths);
const object2 = {guildId: guildId, subscriptionRoleId: subscriptionRoleId};
if (initialTierEmojiIds != null) {
r7 = initialTierEmojiIds;
} else {
set = new global.Set();
}
object2.initialTierEmojiIds = r7;
object2.listingId = listingId;
object2.onSave = onSave;
Reflect.apply(pushLazy, defaultImport, [value, object2, 'GuildRoleSubscriptionEmojiEditorModal']);
}
@@ -0,0 +1,516 @@
/* Metro module 3778; source: modules/guild_role_subscriptions/GuildRoleSubscriptionsStore.tsx; dependencies: [6, 7, 15, 17, 18, 3779, 3780, 44, 566, 694, 2] */
function _fun28590(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#28590, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6, offset: 0x00f7e29e, size: 850 bytes, params: 8, frame: 23
var object2;
const _arrayLikeToArray_28596 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const makeGroupListingIndexGuildTag = function(a0) {
return 'guild:' + a0;
};
const makeGroupListingIndexSubscriptionListingTag = function(a0) {
return 'subscription_listing:' + a0;
};
const makeListingIndexApplicationTag = function(a0) {
return 'application:' + a0;
};
const makeListingIndexPlanTag = function(a0) {
return 'plan:' + a0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const env0_4 = importDefault(15) /* metro dependency 15 */;
const env0_5 = importDefault(17) /* metro dependency 17 */;
const env0_6 = importDefault(18) /* metro dependency 18 */;
const env0_7 = (require(3779) /* metro dependency 3779: CreatorMonetizationReviewConstants */).DefaultCreatorMonetizationRestrictions;
object2 = {NOT_FETCHED: 0};
object2[0] = 'NOT_FETCHED';
object2.FETCHING = 1;
object2[1] = 'FETCHING';
object2.FETCHED = 2;
object2[2] = 'FETCHED';
const SecondaryIndexMap = (require(3780) /* metro dependency 3780: SecondaryIndexMap */).SecondaryIndexMap;
let secondaryIndexMap = new SecondaryIndexMap(_fun28605, function(a0) {
return a0.id;
});
secondaryIndexMap = new SecondaryIndexMap(function(a0) {
var items = [makeListingIndexApplicationTag(a0.application_id)];
items[1] = makeListingIndexPlanTag(a0.subscription_plans[0].id);
return items;
}, function(a0) {
return a0.id;
});
const env0_11 = {};
const Set = global.Set;
const set = new Set();
const env0_13 = {};
const env0_14 = {};
const env0_15 = {};
const env0_16 = {};
let Map = global.Map;
let map = new Map();
Map = global.Map;
map = new Map();
const env0_19 = [];
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
_fun28609(Store).displayName = 'GuildRoleSubscriptionsStore';
map = new map(importDefault(694) /* metro dependency 694: Dispatcher */, {CONNECTION_OPEN: CONNECTION_OPEN_28625,
GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTIONS_SETTINGS: GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTIONS_SETTINGS,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS: GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_SUCCESS: GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_SUCCESS,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_FAILURE: GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_FAILURE,
GUILD_ROLE_SUBSCRIPTIONS_UPDATE_GROUP_LISTING: function({listing}) {
saveGroupListing(listing);
if (listing.benefit_channels != null) {
saveBenefitChannels(listing.benefit_channels);
}
}, GUILD_ROLE_SUBSCRIPTIONS_DELETE_GROUP_LISTING: GUILD_ROLE_SUBSCRIPTIONS_DELETE_GROUP_LISTING,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTING_FOR_PLAN: GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTING_FOR_PLAN,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTING_FOR_PLAN_SUCCESS: function({groupListing}) {
saveGroupListing(groupListing);
}, GUILD_ROLE_SUBSCRIPTIONS_CREATE_LISTING: function({listing, groupListing}) {
saveListing(listing);
saveGroupListing(groupListing);
}, GUILD_ROLE_SUBSCRIPTIONS_UPDATE_LISTING: function({listing}) {
saveListing(listing);
}, GUILD_ROLE_SUBSCRIPTIONS_DELETE_LISTING: GUILD_ROLE_SUBSCRIPTIONS_DELETE_LISTING,
GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTION_TRIAL: GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTION_TRIAL,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS: GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_SUCCESS: GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_SUCCESS_28639,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_FAILURE: GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_FAILURE_28640,
GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_ABORTED: GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_ABORTED});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/GuildRoleSubscriptionsStore.tsx');
exports.default = map;
exports.FetchState = object2;
}
function _isNativeReflectConstruct_28591() { // fn#28591, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:200, offset: 0x00f7e5f0, size: 94 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_28591_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _createForOfIteratorHelperLoose_28594(a0, a1) { // fn#28594, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:393, offset: 0x00f7e64e, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun28595;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_28596(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_28596(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_28596(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun28595;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function _getSubscriptionGroupListingsForGuild(a0) { // fn#28601, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2079, offset: 0x00f7e834, size: 33 bytes, params: 2, frame: 13
const binding = env0_9;
return binding.values(makeGroupListingIndexGuildTag(a0));
}
function saveGroupListing(a0) { // fn#28602, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2179, offset: 0x00f7e855, size: 122 bytes, params: 2, frame: 15
var r1;
var r2;
var saveListingBinding;
var value4;
var value5;
let binding = env0_9;
binding.set(a0.id, a0);
binding = env0_17;
binding.set(a0.guild_id, a0.application_id);
const _createForOfIteratorHelperLoose_28594Binding = _createForOfIteratorHelperLoose_28594;
const subscription_listings = a0.subscription_listings;
reducibleJoin2: while (true) {
if (subscription_listings != null) {
r1 = subscription_listings;
break reducibleJoin2;
}
r1 = [];
break reducibleJoin2;
}
const value2 = _createForOfIteratorHelperLoose_28594Binding(r1);
const value3 = value2();
let done = value3.done;
if (!done) {
r2 = value3;
reducibleLoop3: while (true) {
saveListingBinding = saveListing;
value4 = r2.value;
saveListingBinding(value4);
value5 = value2();
done = value5.done;
if (done) {
break reducibleLoop3;
}
r2 = value5;
continue reducibleLoop3;
}
}
}
function saveListing(a0) { // fn#28603, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2385, offset: 0x00f7e8cf, size: 30 bytes, params: 2, frame: 13
const binding = env0_10;
binding.set(a0.id, a0);
}
function saveBenefitChannels(a0) { // fn#28604, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2423, offset: 0x00f7e8ed, size: 71 bytes, params: 2, frame: 17
var r2;
var value4;
var binding;
var set;
var id;
var value5;
const value2 = _createForOfIteratorHelperLoose_28594(a0);
const value3 = value2();
let done = value3.done;
if (!done) {
for (r2 = value3; true; r2 = value5) {
value4 = r2.value;
binding = env0_18;
set = binding.set;
id = value4.id;
Reflect.apply(set, binding, [id, value4]);
value5 = value2();
done = value5.done;
if (done) {
break;
}
}
}
}
function _fun28605({guild_id, subscription_listings_ids}) { // fn#28605, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:1732, offset: 0x00f7e934, size: 62 bytes, params: 2, frame: 15
const makeGroupListingIndexGuildTagBinding = makeGroupListingIndexGuildTag;
const items2 = [makeGroupListingIndexGuildTagBinding(guild_id)];
arraySpread(items2, subscription_listings_ids.map(makeGroupListingIndexSubscriptionListingTag), 1,
makeGroupListingIndexGuildTagBinding);
return items2;
}
function _fun28609(a0) { // fn#28609, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2558, offset: 0x00f7e9b1, size: 377 bytes, params: 2, frame: 16
const closure = GuildRoleSubscriptionsStore;
env0_6(closure, a0);
return env0_3(closure, [{key: 'getSubscriptionGroupListingsForGuildFetchState', value: value_28611},
{key: 'getDidFetchListingForSubscriptionPlanId', value: value_28612}, {key: 'getSubscriptionGroupListing',
value: value_28613}, {key: 'getSubscriptionGroupListingsForGuild', value: function(a0) {
return _getSubscriptionGroupListingsForGuild(a0);
}}, {key: 'getSubscriptionGroupListingForSubscriptionListing', value: value_28615}, {key: 'getSubscriptionListing',
value: value_28616}, {key: 'getSubscriptionListingsForGuild', value: value_28617},
{key: 'getSubscriptionListingForPlan', value: value_28618}, {key: 'getSubscriptionSettings',
value: value_28619}, {key: 'getSubscriptionTrial', value: value_28620}, {key: 'getMonetizationRestrictions',
value: value_28621}, {key: 'getMonetizationRestrictionsFetchState', value: value_28622},
{key: 'getApplicationIdForGuild', value: value_28623}, {key: 'getBenefitChannel', value: value_28624}]);
}
function CONNECTION_OPEN_28625() { // fn#28625, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:4471, offset: 0x00f7ed52, size: 107 bytes, params: 1, frame: 10
env0_9.clear();
env0_10.clear();
env0_11 = {};
env0_12.clear();
env0_13 = {};
env0_14 = {};
env0_15 = {};
env0_16 = {};
env0_17.clear();
env0_18.clear();
}
function GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTIONS_SETTINGS({settings}) { // fn#28626, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:4634, offset: 0x00f7edbd, size: 29 bytes, params: 2, frame: 3
env0_13[settings.guild_id] = settings;
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS({guildId}) { // fn#28627, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:4735, offset: 0x00f7edda, size: 163 bytes, params: 2, frame: 17
var r2;
var r5;
var value4;
var id;
var subscription_listings_ids;
var value5;
var value6;
var value7;
var value8;
var value9;
let binding = env0_11;
const FETCHING = env0_8.FETCHING;
binding[guildId] = FETCHING;
const value2 = _createForOfIteratorHelperLoose_28594(_getSubscriptionGroupListingsForGuild(guildId));
const value3 = value2();
let done = value3.done;
if (!done) {
r2 = value3;
reducibleLoop1: while (true) {
value4 = r2.value;
binding = env0_9;
id = value4.id;
binding.delete(id);
_createForOfIteratorHelperLoose_28594Binding = _createForOfIteratorHelperLoose_28594;
subscription_listings_ids = value4.subscription_listings_ids;
value5 = _createForOfIteratorHelperLoose_28594Binding(subscription_listings_ids);
value6 = value5();
done = value6.done;
if (!done) {
r5 = value6;
reducibleLoop2: while (true) {
value7 = r5.value;
binding = env0_10;
binding.delete(value7);
value8 = value5();
done = value8.done;
if (done) {
break reducibleLoop2;
}
r5 = value8;
continue reducibleLoop2;
}
}
value9 = value2();
done = value9.done;
if (done) {
break reducibleLoop1;
}
r2 = value9;
continue reducibleLoop1;
}
}
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_SUCCESS({guildId, groupListings, benefitChannels, settings, subscriptionTrials}) { // fn#28628, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:5090, offset: 0x00f7ee7d, size: 178 bytes, params: 2, frame: 18
var r7;
var r4;
var saveGroupListingBinding;
var value4;
var value5;
var value8;
var id;
var value9;
let binding = env0_11;
const FETCHED = env0_8.FETCHED;
binding[guildId] = FETCHED;
const value2 = _createForOfIteratorHelperLoose_28594(groupListings);
const value3 = value2();
let done = value3.done;
if (!done) {
for (r7 = value3; true; r7 = value5) {
saveGroupListingBinding = saveGroupListing;
value4 = r7.value;
saveGroupListingBinding(value4);
value5 = value2();
done = value5.done;
if (done) {
break;
}
}
}
env0_13[guildId] = settings;
const value6 = _createForOfIteratorHelperLoose_28594(subscriptionTrials);
const value7 = value6();
done = value7.done;
if (!done) {
for (r4 = value7; true; r4 = value9) {
value8 = r4.value;
binding = env0_14;
id = value8.id;
binding[id] = value8;
value9 = value6();
done = value9.done;
if (done) {
break;
}
}
}
saveBenefitChannels(benefitChannels);
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTINGS_FAILURE({guildId}) { // fn#28629, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:5475, offset: 0x00f7ef2f, size: 33 bytes, params: 2, frame: 3
const binding = env0_11;
const FETCHED = env0_8.FETCHED;
binding[guildId] = FETCHED;
}
function GUILD_ROLE_SUBSCRIPTIONS_DELETE_GROUP_LISTING({groupListingId}) { // fn#28631, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:5766, offset: 0x00f7ef84, size: 30 bytes, params: 2, frame: 11
env0_9.delete(groupListingId);
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_LISTING_FOR_PLAN({planId}) { // fn#28632, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:5881, offset: 0x00f7efa2, size: 30 bytes, params: 2, frame: 11
env0_12.add(planId);
}
function GUILD_ROLE_SUBSCRIPTIONS_DELETE_LISTING({listingId}) { // fn#28636, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6346, offset: 0x00f7f01a, size: 28 bytes, params: 2, frame: 11
return env0_10.delete(listingId);
}
function GUILD_ROLE_SUBSCRIPTIONS_UPDATE_SUBSCRIPTION_TRIAL({subscriptionTrial}) { // fn#28637, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6461, offset: 0x00f7f036, size: 29 bytes, params: 2, frame: 3
env0_14[subscriptionTrial.id] = subscriptionTrial;
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS({guildId}) { // fn#28638, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6578, offset: 0x00f7f053, size: 33 bytes, params: 2, frame: 3
const binding = env0_16;
const FETCHING = env0_8.FETCHING;
binding[guildId] = FETCHING;
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_SUCCESS_28639({guildId, restrictions}) { // fn#28639, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6693, offset: 0x00f7f074, size: 47 bytes, params: 2, frame: 4
env0_15[guildId] = restrictions;
const binding = env0_16;
const FETCHED = env0_8.FETCHED;
binding[guildId] = FETCHED;
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_FAILURE_28640({guildId}) { // fn#28640, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6836, offset: 0x00f7f0a3, size: 45 bytes, params: 2, frame: 4
const binding = env0_16;
const FETCHED = env0_8.FETCHED;
binding[guildId] = FETCHED;
env0_15[guildId] = DefaultCreatorMonetizationRestrictions;
}
function GUILD_ROLE_SUBSCRIPTIONS_FETCH_RESTRICTIONS_ABORTED({guildId}) { // fn#28641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:6964, offset: 0x00f7f0d0, size: 33 bytes, params: 2, frame: 3
const binding = env0_16;
const NOT_FETCHED = env0_8.NOT_FETCHED;
binding[guildId] = NOT_FETCHED;
}
function value_28611(a0) { // fn#28611, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:2959, offset: 0x00f7eb9b, size: 32 bytes, params: 2, frame: 3
return env1_11[a0] ?? env1_8.NOT_FETCHED;
}
function value_28615(a0) { // fn#28615, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:3346, offset: 0x00f7ebe7, size: 83 bytes, params: 2, frame: 15
const value = environment.__proto__;
const binding = env1_9;
const value2 = binding.values(makeGroupListingIndexSubscriptionListingTag(a0));
(importDefault(44) /* metro dependency 44 */)(value2.length <= 1, 'Found multiple group listings for listing');
return value2[0];
}
function value_28617(a0) { // fn#28617, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:3611, offset: 0x00f7ec50, size: 83 bytes, params: 2, frame: 14
const application_id = this.getSubscriptionGroupListingsForGuild(a0)[0]?.application_id;
return application_id != null ? env1_10.values(makeListingIndexApplicationTag(application_id)) : env1_19;
}
function value_28618(a0) { // fn#28618, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:3819, offset: 0x00f7eca3, size: 83 bytes, params: 2, frame: 15
const value = environment.__proto__;
const binding = env1_10;
const value2 = binding.values(makeListingIndexPlanTag(a0));
(importDefault(44) /* metro dependency 44 */)(value2.length <= 1, 'Found multiple listings for plan');
return value2[0];
}
function value_28622(a0) { // fn#28622, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:4185, offset: 0x00f7ed06, size: 32 bytes, params: 2, frame: 3
return env1_16[a0] ?? env1_8.NOT_FETCHED;
}
function value_28623(a0) { // fn#28623, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3905:4281, offset: 0x00f7ed26, size: 22 bytes, params: 2, frame: 11
return env1_17.get(a0);
}
@@ -0,0 +1,19 @@
/* Metro module 16059; source: modules/guild_role_subscriptions/ListingImageUtil.tsx; dependencies: [4141, 2] */
function _fun124004(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124004, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16267:6, offset: 0x025a4261, 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/guild_role_subscriptions/ListingImageUtil.tsx');
exports.getSource = getSource_124005;
}
function getSource_124005(a0) { // fn#124005, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16267:191, offset: 0x025a42c1, size: 97 bytes, params: 2, frame: 14
if (a0.image_asset == null) {
return {uri: ''};
}
var value;
const getAssetURL = (require(4141) /* metro dependency 4141: StoreUtils */).getAssetURL;
value = Reflect.apply(getAssetURL, value, [a0.application_id, a0.image_asset]);
return {uri: value ?? ''};
}
@@ -0,0 +1,14 @@
/* Metro module 3775; source: modules/guild_role_subscriptions/PremiumRoleUtils.tsx; dependencies: [2] */
function _fun28577(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#28577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3902:6, offset: 0x00f7dd8b, size: 96 bytes, params: 8, frame: 16
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/PremiumRoleUtils.tsx');
exports.isSubscriptionRole = function(a0) {
return (a0 == null || a0.tags == null ? undefined : a0.tags.subscription_listing_id) != null;
};
exports.isSubscriptionRoleAvailableForPurchase = function(a0) {
var value = undefined;
return value !== (a0 == null || a0.tags == null ? value : a0.tags.available_for_purchase);
};
}
@@ -0,0 +1,85 @@
/* Metro module 3776; source: modules/guild_role_subscriptions/RolePermissionUtils.tsx; dependencies: [1939, 661, 483, 2] */
function _fun28580(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#28580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3903:6, offset: 0x00f7de41, size: 166 bytes, params: 8, frame: 19
const closure = isChannelAccessDeniedBy;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(1939) /* metro dependency 1939: GuildRoleRecord */).hasPermission;
const env0_3 = (require(661) /* metro dependency 661: Constants */).Permissions;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/RolePermissionUtils.tsx');
exports.hasViewChannelPermission = function(a0) {
return hasPermission(a0, Permissions.VIEW_CHANNEL);
};
exports.isChannelAccessDeniedBy = closure;
exports.isChannelAccessGrantedBy = isChannelAccessGrantedBy;
}
function isChannelAccessDeniedBy(a0, a1) { // fn#28581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3903:142, offset: 0x00f7dee7, size: 144 bytes, params: 3, frame: 19
var r2;
var r1;
var r0;
var moduleValue;
var value2;
var isGuildVocal2;
var moduleValue2;
const value = a1 != null;
if (value) {
moduleValue = importAll(483) /* metro dependency 483: BigFlagUtils */;
value2 = moduleValue.has(a1.deny, Permissions.VIEW_CHANNEL);
if (value2) {
r1 = !!value2;
} else {
isGuildVocal2 = a0.isGuildVocal();
if (isGuildVocal2) {
moduleValue2 = importAll(483) /* metro dependency 483: BigFlagUtils */;
r2 = moduleValue2.has(a1.deny, Permissions.CONNECT);
} else {
r2 = isGuildVocal2;
}
r1 = r2;
}
r0 = r1;
} else {
r0 = value;
}
return r0;
}
function isChannelAccessGrantedBy(a0, a1) { // fn#28583, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3903:543, offset: 0x00f7df95, size: 169 bytes, params: 3, frame: 20
var r3;
var r2;
var r1;
var r0;
var isChannelAccessDeniedBy2;
var moduleValue;
var value3;
var isGuildVocal2;
var moduleValue2;
const value = a1 != null;
if (value) {
isChannelAccessDeniedBy2 = isChannelAccessDeniedBy(a0, a1);
if (isChannelAccessDeniedBy2) {
r1 = !isChannelAccessDeniedBy2;
} else {
moduleValue = importAll(483) /* metro dependency 483: BigFlagUtils */;
value3 = moduleValue.has(a1.allow, Permissions.VIEW_CHANNEL);
if (value3) {
isGuildVocal2 = a0.isGuildVocal();
if (isGuildVocal2) {
moduleValue2 = importAll(483) /* metro dependency 483: BigFlagUtils */;
r3 = moduleValue2.has(a1.allow, Permissions.CONNECT);
} else {
r3 = !isGuildVocal2;
}
r2 = r3;
} else {
r2 = !!value3;
}
r1 = r2;
}
r0 = r1;
} else {
r0 = value;
}
return r0;
}
@@ -0,0 +1,71 @@
/* Metro module 6545; source: modules/guild_role_subscriptions/RoleSubscriptionEmojiUtils.tsx; dependencies: [6541, 2] */
function _fun51622(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#51622, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6723:6, offset: 0x0123d349, size: 130 bytes, params: 8, frame: 18
const closure = isPurchasableRoleSubscriptionEmoji;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const subscriptionRoleStore = importDefault(6541) /* metro dependency 6541: SubscriptionRoleStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/RoleSubscriptionEmojiUtils.tsx');
exports.isRoleSubscriptionEmoji = isRoleSubscriptionEmoji;
exports.isPurchasableRoleSubscriptionEmoji = closure;
exports.isUnusableRoleSubscriptionEmoji = isUnusableRoleSubscriptionEmoji;
}
function isPurchasableRoleSubscriptionEmoji(a0) { // fn#51623, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6723:106, offset: 0x0123d3cb, size: 109 bytes, params: 2, frame: 13
if (a0?.roles == null) {
return false;
}
if (a0.roles.length === 0) {
return false;
}
if (a0.guildId == null) {
return false;
}
const env0_0 = SubscriptionRoleStore.getPurchasableSubscriptionRoles(a0.guildId);
return a0.roles.some(_fun51624);
}
function isRoleSubscriptionEmoji(a0, a1) { // fn#51625, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6723:442, offset: 0x0123d438, size: 100 bytes, params: 3, frame: 14
if (a0?.roles == null) {
return false;
}
if (a0.roles.length === 0) {
return false;
}
if (a1 == null) {
return false;
}
const env0_0 = SubscriptionRoleStore.getSubscriptionRoles(a1);
return a0.roles.some(_fun51626);
}
function isUnusableRoleSubscriptionEmoji(a0, a1) { // fn#51627, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6723:726, offset: 0x0123d49c, size: 171 bytes, params: 3, frame: 14
var r0;
var getUserSubscriptionRoles;
let value = undefined;
if ((a0 == null ? value : a0.roles) != null) {
if (a0.roles.length === 0) {
return false;
}
var guildId = a0.guildId;
if (guildId == null) {
return false;
}
if (isPurchasableRoleSubscriptionEmoji(a0)) {
getUserSubscriptionRoles = SubscriptionRoleStore.getUserSubscriptionRoles;
guildId = a0.guildId;
var env0_0 = Reflect.apply(getUserSubscriptionRoles, SubscriptionRoleStore, [guildId]);
value = a0.roles.some(_fun51628);
guildId = a0.guildId;
r0 = a1 === guildId && SubscriptionRoleStore.getUserIsAdmin(a0.guildId);
if (value) {
return false;
}
if (r0) {
return false;
}
return true;
}
}
return false;
}
@@ -0,0 +1,12 @@
/* Metro module 16061; source: modules/guild_role_subscriptions/RoleSubscriptionSettingsDisabledContext.tsx; dependencies: [2, 16062] */
function _fun124010(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124010, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16269:6, offset: 0x025a4787, size: 135 bytes, params: 8, frame: 17
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/RoleSubscriptionSettingsDisabledContext.tsx');
exports.default = importDefault(16062) /* metro dependency 16062: CreatorMonetizationSettingsDisabledContext */;
const useCreatorMonetizationSettingsDisabled = (require(16062) /* metro dependency 16062: CreatorMonetizationSettingsDisabledContext */).useCreatorMonetizationSettingsDisabled;
exports.useRoleSubscriptionSettingsDisabled = useCreatorMonetizationSettingsDisabled;
const CreatorMonetizationSettingsDisabledContextProvider = (require(16062) /* metro dependency 16062: CreatorMonetizationSettingsDisabledContext */).CreatorMonetizationSettingsDisabledContextProvider;
exports.RoleSubscriptionSettingsDisabledContextProvider = CreatorMonetizationSettingsDisabledContextProvider;
}
@@ -0,0 +1,462 @@
/* Metro module 6541; source: modules/guild_role_subscriptions/SubscriptionRoleStore.tsx; dependencies: [6, 7, 15, 17, 18, 1422, 1939, 1945, 1938, 1867, 1878, 661, 3775, 566, 694, 2] */
function _fun51560(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#51560, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:6, offset: 0x0123b8c5, size: 650 bytes, params: 8, frame: 23
const env0_0 = require;
const _arrayLikeToArray_51566 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const closure = CONNECTION_OPEN_51568;
const closure2 = GUILD_CREATE_51569;
const closure3 = GUILD_ROLE_CREATE_51570;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importDefault(6) /* metro dependency 6 */;
const env0_3 = importDefault(7) /* metro dependency 7 */;
const env0_4 = importDefault(15) /* metro dependency 15 */;
const env0_5 = importDefault(17) /* metro dependency 17 */;
const env0_6 = importDefault(18) /* metro dependency 18 */;
const env0_7 = (require(1422) /* metro dependency 1422: GuildRecord */).isGuildOwner;
const env0_8 = (require(1939) /* metro dependency 1939: GuildRoleRecord */).hasPermission;
const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */;
const guildRoleStore = importDefault(1938) /* metro dependency 1938: GuildRoleStore */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_13 = constantsModule.Permissions;
const env0_14 = constantsModule.GuildFeatures;
const Set = global.Set;
const set = new Set();
let Map = global.Map;
let map = new Map();
Map = global.Map;
map = new Map();
Map = global.Map;
map = new Map();
Map = global.Map;
map = new Map();
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
_fun51571(Store).displayName = 'SubscriptionRoleStore';
map = new map(importDefault(694) /* metro dependency 694: Dispatcher */, {CONNECTION_OPEN: closure, LOGOUT: closure,
GUILD_CREATE: closure2, GUILD_DELETE: GUILD_DELETE_51580, GUILD_UPDATE: closure2, GUILD_ROLE_CREATE: closure3,
GUILD_ROLE_UPDATE: closure3, GUILD_ROLE_DELETE: closure3, GUILD_MEMBER_UPDATE: GUILD_MEMBER_UPDATE_51581});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/SubscriptionRoleStore.tsx');
exports.default = map;
}
function _isNativeReflectConstruct_51561() { // fn#51561, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:286, offset: 0x0123bb4f, size: 94 bytes, params: 1, frame: 18
var Boolean;
var prototype;
var valueOf;
var call;
var Reflect;
var construct;
var closure;
var value;
var error;
try {
Boolean = global.Boolean;
prototype = Boolean.prototype;
valueOf = prototype.valueOf;
call = valueOf.call;
Reflect = global.Reflect;
construct = Reflect.construct;
Boolean = global.Boolean;
closure = function() {
};
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
value = Reflect.apply(call, valueOf, [value]);
var result = !value;
} catch (error) {
}
return (_isNativeReflectConstruct_51561_isNativeReflectConstruct = function() {
return !!result;
})();
}
function _createForOfIteratorHelperLoose_51564(a0, a1) { // fn#51564, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:479, offset: 0x0123bbad, size: 370 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun51565;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_51566(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_51566(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_51566(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun51565;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function computeRolesForGuild(a0) { // fn#51567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:1450, offset: 0x0123bd1f, size: 568 bytes, params: 2, frame: 24
var r4;
var r1;
var getMember;
var id;
var value11;
var _createForOfIteratorHelperLoose_51564Binding;
var getSortedRoles;
var value14;
var value15;
var done;
var value16;
var moduleValue;
var isSubscriptionRole;
var add;
var moduleValue2;
var isSubscriptionRoleAvailableForPurchase;
var value17;
var hasPermissionBinding;
var ADMINISTRATOR;
var hasPermission2;
var value18;
const currentUser = UserStore.getCurrentUser();
const guild = GuildStore.getGuild(a0);
if (guild == null) {
return false;
}
if (currentUser == null) {
return false;
}
let Set = global.Set;
let set = new Set();
Set = global.Set;
set = new Set();
Set = global.Set;
set = new Set();
let binding = env0_19;
set = binding.set;
const isGuildOwnerBinding = isGuildOwner;
const value10 = undefined;
Reflect.apply(set, binding, [a0, isGuildOwnerBinding(guild, currentUser)]);
const features = guild.features;
let has = features.has;
const ROLE_SUBSCRIPTIONS_ENABLED = GuildFeatures.ROLE_SUBSCRIPTIONS_ENABLED;
if (Reflect.apply(has, features, [ROLE_SUBSCRIPTIONS_ENABLED])) {
getMember = GuildMemberStore.getMember;
id = currentUser.id;
value11 = Reflect.apply(getMember, GuildMemberStore, [a0, id]);
Set = global.Set;
r4 = (value11 == null ? value10 : value11.roles) ?? [];
set = new Set();
_createForOfIteratorHelperLoose_51564Binding = _createForOfIteratorHelperLoose_51564;
getSortedRoles = GuildRoleStore.getSortedRoles;
id = guild.id;
value14 = _createForOfIteratorHelperLoose_51564Binding(Reflect.apply(getSortedRoles, GuildRoleStore, [id]));
value15 = value14();
done = value15.done;
if (!done) {
r4 = value15;
while (true) {
value16 = r4.value;
moduleValue = require(3775) /* metro dependency 3775: PremiumRoleUtils */;
isSubscriptionRole = moduleValue.isSubscriptionRole;
if (Reflect.apply(isSubscriptionRole, moduleValue, [value16])) {
add = set.add;
id = value16.id;
Reflect.apply(add, set, [id]);
moduleValue2 = require(3775) /* metro dependency 3775: PremiumRoleUtils */;
isSubscriptionRoleAvailableForPurchase = moduleValue2.isSubscriptionRoleAvailableForPurchase;
if (Reflect.apply(isSubscriptionRoleAvailableForPurchase, moduleValue2, [value16])) {
add = set.add;
id = value16.id;
Reflect.apply(add, set, [id]);
has = set.has;
id = value16.id;
if (Reflect.apply(has, set, [id])) {
set.add(value16.id);
break;
}
break;
}
break;
}
has = set.has;
id = value16.id;
value17 = Reflect.apply(has, set, [id]);
if (!value17) {
r1 = value17;
continue;
}
hasPermissionBinding = hasPermission;
ADMINISTRATOR = Permissions.ADMINISTRATOR;
hasPermission2 = hasPermissionBinding(value16, ADMINISTRATOR);
r1 = hasPermission2;
if (!r1) {
continue;
}
binding = env0_19;
binding.set(a0, true);
value18 = value14();
done = value18.done;
if (done) {
break;
}
r4 = value18;
continue;
}
}
}
env0_16.set(a0, set);
env0_18.set(a0, set);
env0_17.set(a0, set);
return true;
}
function CONNECTION_OPEN_51568() { // fn#51568, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:2051, offset: 0x0123bf57, size: 69 bytes, params: 1, frame: 10
env0_16.clear();
env0_18.clear();
env0_17.clear();
env0_19.clear();
}
function GUILD_CREATE_51569({guild}) { // fn#51569, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:2126, offset: 0x0123bf9c, size: 229 bytes, params: 2, frame: 14
var binding;
var Set;
var set;
var value6;
const id = guild.id;
if (env0_20 != null) {
var guild2 = GuildStore.getGuild(id);
if (guild2 == null) {
return false;
}
var features = guild2.features;
var has = features.has;
var ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE = GuildFeatures.ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE;
var value3 = Reflect.apply(has, features, [ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE]);
if (value3) {
binding = env0_20;
if (binding.has(id)) {
if (value3) {
return false;
}
binding = env0_20;
if (binding.has(id)) {
Set = global.Set;
binding = env0_20;
set = new Set();
set.delete(id);
env0_20 = set;
return true;
}
return false;
}
Set = global.Set;
binding = env0_20;
set = new Set();
set.add(id);
env0_20 = set;
return true;
}
if (value3) {
return false;
}
binding = env0_20;
has = binding.has;
if (Reflect.apply(has, binding, [id])) {
Set = global.Set;
binding = env0_20;
value6 = Object.create(Set.prototype, {constructor: {value: Set}});
set = new Set();
(set instanceof Object ? set : value6).delete(id);
return true;
}
}
return false;
}
function GUILD_ROLE_CREATE_51570({guildId}) { // fn#51570, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:2421, offset: 0x0123c081, size: 47 bytes, params: 2, frame: 12
const value2 = env0_16.has(guildId);
return value2 ? computeRolesForGuild(guildId) : !!value2;
}
function _fun51571(a0) { // fn#51571, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:2508, offset: 0x0123c0b0, size: 210 bytes, params: 2, frame: 16
const closure = SubscriptionRoleStore;
env0_6(closure, a0);
return env0_3(closure, [{key: 'initialize', value: function() {
this.waitFor(GuildStore, GuildRoleStore, UserStore, GuildMemberStore);
}}, {key: 'getGuildIdsWithPurchasableRoles', value: value_51574}, {key: 'buildRoles', value: value_51575},
{key: 'getSubscriptionRoles', value: value_51576}, {key: 'getPurchasableSubscriptionRoles', value: value_51577},
{key: 'getUserSubscriptionRoles', value: value_51578}, {key: 'getUserIsAdmin', value: value_51579}]);
}
function GUILD_DELETE_51580({guild}) { // fn#51580, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3867, offset: 0x0123c39a, size: 101 bytes, params: 2, frame: 14
const id = guild.id;
let binding = env0_20;
if (binding?.has(id) !== true) {
return false;
}
const Set = global.Set;
binding = env0_20;
const value4 = Object.create(Set.prototype, {constructor: {value: Set}});
const set = new Set(binding);
(set instanceof Object ? set : value4).delete(id);
}
function GUILD_MEMBER_UPDATE_51581({guildId, user}) { // fn#51581, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:4153, offset: 0x0123c3ff, size: 93 bytes, params: 2, frame: 15
return !(user.id !== UserStore.getCurrentUser()?.id || !env0_16.has(guildId)) && computeRolesForGuild(guildId);
}
function value_51574() { // fn#51574, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:2923, offset: 0x0123c21a, size: 160 bytes, params: 1, frame: 18
var r4;
var r0;
var guildsArray;
var set;
var value5;
var value6;
var done;
var value7;
var features;
var has;
var ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE;
var add;
var id;
var value8;
if (env1_20 == null) {
guildsArray = GuildStore.getGuildsArray();
set = new global.Set();
value5 = _createForOfIteratorHelperLoose_51564(guildsArray);
value6 = value5();
done = value6.done;
if (!done) {
r4 = value6;
while (true) {
value7 = r4.value;
features = value7.features;
has = features.has;
ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE = GuildFeatures.ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE;
if (Reflect.apply(has, features, [ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE])) {
add = set.add;
id = value7.id;
Reflect.apply(add, set, [id]);
}
value8 = value5();
done = value8.done;
if (done) {
break;
}
r4 = value8;
continue;
}
}
r0 = set;
} else {
r0 = env1_20;
}
return r0;
}
function value_51575(a0) { // fn#51575, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3219, offset: 0x0123c2ba, size: 38 bytes, params: 2, frame: 12
const binding = env1_16;
if (!binding.has(a0)) {
computeRolesForGuild(a0);
}
}
function value_51576(a0) { // fn#51576, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3301, offset: 0x0123c2e0, size: 46 bytes, params: 2, frame: 12
this.buildRoles(a0);
return env1_16.get(a0) ?? env1_15;
}
function value_51577(a0) { // fn#51577, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3415, offset: 0x0123c30e, size: 46 bytes, params: 2, frame: 12
this.buildRoles(a0);
return env1_17.get(a0) ?? env1_15;
}
function value_51578(a0) { // fn#51578, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3522, offset: 0x0123c33c, size: 46 bytes, params: 2, frame: 12
this.buildRoles(a0);
return env1_18.get(a0) ?? env1_15;
}
function value_51579(a0) { // fn#51579, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6719:3619, offset: 0x0123c36a, size: 48 bytes, params: 2, frame: 11
this.buildRoles(a0);
let value = environment.__proto__;
value = env1_19.get(a0);
return value != null && value;
}
@@ -0,0 +1,18 @@
/* Metro module 13693; source: modules/guild_role_subscriptions/edit_state/Contants.tsx; dependencies: [661, 1942, 2] */
function _fun104647(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104647, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13890:6, offset: 0x0229c715, size: 197 bytes, params: 8, frame: 19
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const Permissions = (require(661) /* metro dependency 661: Constants */).Permissions;
let value = require(1942) /* metro dependency 1942: GuildRoleRecordUtils */;
const constructGuildRoleInPlace = value.constructGuildRoleInPlace;
const SEND_MESSAGES = Permissions.SEND_MESSAGES;
value = Reflect.apply(constructGuildRoleInPlace, value, [{'id': '0', 'guildId': '0', 'name': '',
'mentionable': false, 'managed': false, 'position': 0, 'hoist': false, 'permissions': null, 'color': 0,
'colors': null, 'colorString': '0', 'colorStrings': null, 'icon': null, 'unicodeEmoji': null, 'flags': 0,
'description': null, permissions: SEND_MESSAGES, colors: {'primary_color': 0, 'secondary_color': null,
'tertiary_color': null}, colorStrings: {'primaryColor': '0', 'secondaryColor': null, 'tertiaryColor': null},
tags: {}, version: 0}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/edit_state/Contants.tsx');
exports.DEFAULT_PREVIEW_ROLE = value;
}
@@ -0,0 +1,33 @@
/* Metro module 16078; source: modules/guild_role_subscriptions/edit_state/EditStateContextProvider.tsx; dependencies: [31, 33, 2] */
function _fun124127(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124127, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16286:6, offset: 0x025a9370, size: 155 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const value = importAll(31) /* metro dependency 31 */;
const env0_1 = (require(33) /* metro dependency 33 */).jsx;
const env0_2 = value.createContext(undefined);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/edit_state/EditStateContextProvider.tsx');
exports.useEditStateContext = useEditStateContext;
exports.EditStateContextProvider = EditStateContextProvider;
}
function useEditStateContext() { // fn#124128, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16286:274, offset: 0x025a940b, size: 66 bytes, params: 1, frame: 11
const value = env0_0.useContext(env0_2);
if (value == null) {
throw new global.Error('No edit state; are you missing an <EditStateContextProvider />?');
}
return value;
}
function EditStateContextProvider(a0) { // fn#124129, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16286:458, offset: 0x025a944d, size: 68 bytes, params: 2, frame: 15
const children = a0.children;
let value = Object.create(null);
value.children = 0;
value = copyDataProperties({}, a0, value, undefined);
const Provider = env0_2.Provider;
return (
<Provider value={value}>
{children}
</Provider>
);
}
@@ -0,0 +1,66 @@
/* Metro module 13691; source: modules/guild_role_subscriptions/edit_state/GuildRoleSubscriptionEditStore.tsx; dependencies: [629, 690, 2] */
function _fun104636(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104636, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:6, offset: 0x0229c40e, size: 156 bytes, params: 8, frame: 18
var object2;
let env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
object2 = {ALL_CHANNELS_ACCESS: 0};
object2[0] = 'ALL_CHANNELS_ACCESS';
object2.SOME_CHANNELS_ACCESS = 1;
object2[1] = 'SOME_CHANNELS_ACCESS';
let value = require(629) /* metro dependency 629 */;
value = value.create(function(a0) {
var env0_0 = a0;
return {listings: {}, setListing: _fun104638, editStateIdsForGroup: {}, setEditStateIdsForGroup: _fun104641};
});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/edit_state/GuildRoleSubscriptionEditStore.tsx');
exports.AllChannelAccessOptions = object2;
exports.useEditStateStore = value;
}
function _fun104637(a0) { // fn#104637, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:242, offset: 0x0229c4aa, size: 51 bytes, params: 2, frame: 3
const env0_0 = a0;
return {listings: {}, setListing: setListing, editStateIdsForGroup: {},
setEditStateIdsForGroup: setEditStateIdsForGroup};
}
function setListing(a0, a1) { // fn#104638, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:270, offset: 0x0229c4dd, size: 61 bytes, params: 3, frame: 12
var environment;
const env0_0 = a0;
const env0_1 = a1;
const value = environment.__proto__;
return (require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun104639);
}
function setEditStateIdsForGroup(a0, a1) { // fn#104641, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:411, offset: 0x0229c56f, size: 61 bytes, params: 3, frame: 12
var environment;
const env0_0 = a0;
const env0_1 = a1;
const value = environment.__proto__;
return (require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun104642);
}
function _fun104639() { // fn#104639, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:299, offset: 0x0229c51a, size: 25 bytes, params: 1, frame: 11
return env1_0(_fun104640);
}
function _fun104642() { // fn#104642, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:440, offset: 0x0229c5ac, size: 25 bytes, params: 1, frame: 11
env1_0(_fun104643);
}
function _fun104640(a0) { // fn#104640, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:306, offset: 0x0229c533, size: 60 bytes, params: 2, frame: 15
const object = {};
copyDataProperties(object, a0.listings, undefined);
const binding = env1_0;
object[binding] = require(a0.listings[binding]);
return {listings: object};
}
function _fun104643(a0) { // fn#104643, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13888:448, offset: 0x0229c5c5, size: 60 bytes, params: 2, frame: 15
const object = {};
copyDataProperties(object, a0.editStateIdsForGroup, undefined);
const binding = env1_0;
object[binding] = require(a0.editStateIdsForGroup[binding]);
return {editStateIdsForGroup: object};
}
@@ -0,0 +1,125 @@
/* Metro module 6850; source: modules/guild_role_subscriptions/feature_gating/GuildRoleSubscriptionSettingUtils.tsx; dependencies: [1422, 3784, 1878, 661, 566, 6851, 6843, 2] */
function _fun54041(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#54041, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:6, offset: 0x0135b530, size: 323 bytes, params: 8, frame: 24
var object2;
let env0_0 = require;
const closure = canSeeGuildRoleSubscriptionSettingsContent;
const closure2 = computeGuildRoleSubscriptionSettingsVisibility;
const closure3 = useGuildRoleSubscriptionSettingsVisibility;
const closure4 = function(a0) {
var env0_0 = a0;
return require(dependencyMap[4]).useStateFromStores([PermissionStore], _fun54047, [a0]);
};
const closure5 = canManageGuildRoleSubscriptions;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = (require(1422) /* metro dependency 1422: GuildRecord */).isGuildOwner;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_5 = constantsModule.GuildFeatures;
const env0_6 = constantsModule.Permissions;
object2 = {NONE: 0};
object2[0] = 'NONE';
object2.VISIBLE = 1;
object2[1] = 'VISIBLE';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/feature_gating/GuildRoleSubscriptionSettingUtils.tsx');
exports.GuildRoleSubscriptionSettingsVisibility = object2;
exports.canSeeGuildRoleSubscriptionSettingsContent = closure;
exports.computeGuildRoleSubscriptionSettingsVisibility = closure2;
exports.canSeeGuildRoleSubscriptionSettings = canSeeGuildRoleSubscriptionSettings;
exports.useGuildRoleSubscriptionSettingsVisibility = closure3;
exports.getGuildRoleSubscriptionSettingsVisibility = getGuildRoleSubscriptionSettingsVisibility;
exports.useCanSeeGuildRoleSubscriptionSettings = useCanSeeGuildRoleSubscriptionSettings;
exports.useCanManageGuildRoleSubscriptions = closure4;
exports.canManageGuildRoleSubscriptions = closure5;
}
function canSeeGuildRoleSubscriptionSettingsContent({guild, isOwner, canManageGuildRoleSubscriptions, isUserInCreatorMonetizationEligibleCountry, shouldRestrictUpdatingRoleSubscriptionSettings}) { // fn#54042, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:255, offset: 0x0135b673, size: 181 bytes, params: 2, frame: 18
var r1;
var r0;
if (canManageGuildRoleSubscriptions) {
r1 = shouldRestrictUpdatingRoleSubscriptionSettings && !isOwner;
r1 = !r1 && (!guild.features.has(GuildFeatures.CREATOR_MONETIZABLE) && !guild.features.has(GuildFeatures.CREATOR_MONETIZABLE_PROVISIONAL) ? guild.features.has(GuildFeatures.COMMUNITY) ? isOwner && isUserInCreatorMonetizationEligibleCountry : !!guild.features.has(GuildFeatures.COMMUNITY) : !(!guild.features.has(GuildFeatures.CREATOR_MONETIZABLE) && !guild.features.has(GuildFeatures.CREATOR_MONETIZABLE_PROVISIONAL)));
r0 = r1;
} else {
r0 = !!canManageGuildRoleSubscriptions;
}
return r0;
}
function computeGuildRoleSubscriptionSettingsVisibility(a0) { // fn#54043, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:614, offset: 0x0135b728, size: 86 bytes, params: 2, frame: 13
var r0;
var canSeeGuildRoleSubscriptionSettingsContent2;
var binding;
const features = a0.guild.features;
const has = features.has;
const CREATOR_MONETIZABLE_DISABLED = GuildFeatures.CREATOR_MONETIZABLE_DISABLED;
if (Reflect.apply(has, features, [CREATOR_MONETIZABLE_DISABLED])) {
r0 = env0_7.NONE;
} else {
canSeeGuildRoleSubscriptionSettingsContent2 = canSeeGuildRoleSubscriptionSettingsContent(a0);
binding = env0_7;
r0 = canSeeGuildRoleSubscriptionSettingsContent2 ? binding.VISIBLE : binding.NONE;
}
return r0;
}
function useGuildRoleSubscriptionSettingsVisibility(a0) { // fn#54044, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:803, offset: 0x0135b77e, size: 191 bytes, params: 2, frame: 20
const env0_0 = a0;
const value2 = undefined;
const value3 = useCanManageGuildRoleSubscriptions(a0);
const value4 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], _fun54045);
const value5 = (require(6851) /* metro dependency 6851: CreatorMonetizationEligibilityExperimentUtils */).useIsUserInCreatorMonetizationEligibleCountry();
const creatorMonetizationRestrictionsHooksModule = require(6843) /* metro dependency 6843: CreatorMonetizationRestrictionsHooks */;
const useShouldRestrictUpdatingCreatorMonetizationSettings = creatorMonetizationRestrictionsHooksModule.useShouldRestrictUpdatingCreatorMonetizationSettings;
return a0 == null ? env0_7.NONE : computeGuildRoleSubscriptionSettingsVisibility({guild: a0, isOwner: value4,
canManageGuildRoleSubscriptions: value3, isUserInCreatorMonetizationEligibleCountry: value5,
shouldRestrictUpdatingRoleSubscriptionSettings: Reflect.apply(useShouldRestrictUpdatingCreatorMonetizationSettings,
creatorMonetizationRestrictionsHooksModule,
[a0 == null ? value2 : a0.id]).shouldRestrictUpdatingCreatorMonetizationSettings});
}
function useCanManageGuildRoleSubscriptions(a0) { // fn#54046, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:1402, offset: 0x0135b86f, size: 73 bytes, params: 2, frame: 16
const env0_0 = a0;
return (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun54047, [a0]);
}
function canManageGuildRoleSubscriptions(a0) { // fn#54048, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:1533, offset: 0x0135b8b8, size: 43 bytes, params: 2, frame: 14
return a0 != null && PermissionStore.can(Permissions.ADMINISTRATOR, a0);
}
function canSeeGuildRoleSubscriptionSettings(a0) { // fn#54049, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:2003, offset: 0x0135b8e3, size: 33 bytes, params: 2, frame: 12
const guildRoleSubscriptionSettingsVisibility = computeGuildRoleSubscriptionSettingsVisibility(a0);
const NONE = env0_7.NONE;
return guildRoleSubscriptionSettingsVisibility !== NONE;
}
function getGuildRoleSubscriptionSettingsVisibility(a0) { // fn#54050, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:2251, offset: 0x0135b904, size: 157 bytes, params: 2, frame: 17
if (a0 == null) {
return env0_7.NONE;
}
const currentUser = UserStore.getCurrentUser();
const computeGuildRoleSubscriptionSettingsVisibilityBinding = computeGuildRoleSubscriptionSettingsVisibility;
const object2 = {guild: a0};
object2.isOwner = isGuildOwner(a0, currentUser);
object2.canManageGuildRoleSubscriptions = canManageGuildRoleSubscriptions(a0);
object2.isUserInCreatorMonetizationEligibleCountry = (require(6851) /* metro dependency 6851: CreatorMonetizationEligibilityExperimentUtils */).isUserInCreatorMonetizationEligibleCountry();
const features = a0.features;
const has = features.has;
const CREATOR_MONETIZABLE_RESTRICTED = GuildFeatures.CREATOR_MONETIZABLE_RESTRICTED;
object2.shouldRestrictUpdatingRoleSubscriptionSettings = Reflect.apply(has, features,
[CREATOR_MONETIZABLE_RESTRICTED]);
return computeGuildRoleSubscriptionSettingsVisibilityBinding(object2);
}
function useCanSeeGuildRoleSubscriptionSettings(a0) { // fn#54051, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:2737, offset: 0x0135b9a1, size: 33 bytes, params: 2, frame: 12
const value2 = useGuildRoleSubscriptionSettingsVisibility(a0);
const NONE = env0_7.NONE;
return value2 !== NONE;
}
function _fun54045() { // fn#54045, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7028:936, offset: 0x0135b83d, size: 50 bytes, params: 1, frame: 14
const value = environment.__proto__;
return env0_0 != null && isGuildOwner(env0_0, UserStore.getCurrentUser());
}
@@ -0,0 +1,113 @@
/* Metro module 6579; source: modules/guild_role_subscriptions/feature_gating/IAPEligibility.tsx; dependencies: [31, 1867, 661, 477, 6580, 632, 2] */
function _fun51705(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#51705, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:6, offset: 0x012e31a5, size: 187 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importAll(31) /* metro dependency 31 */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const GuildFeatures = (require(661) /* metro dependency 661: Constants */).GuildFeatures;
const ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE = GuildFeatures.ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE;
object = [ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE];
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/feature_gating/IAPEligibility.tsx');
exports.canUseRoleSubscriptionIAP = canUseRoleSubscriptionIAP;
exports.useCanUseRoleSubscriptionIAP = useCanUseRoleSubscriptionIAP;
}
function compareVersions(a0, a1) { // fn#51706, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:199, offset: 0x012e3260, size: 169 bytes, params: 3, frame: 19
var r1;
var r7;
var r6;
var property;
var value6;
let value = a0.split('.');
let map = value.map;
let Number = global.Number;
value = Reflect.apply(map, value, [Number]);
const value2 = '13.2'.split('.');
map = value2.map;
Number = global.Number;
const value3 = Reflect.apply(map, value2, [Number]);
const Math = global.Math;
const value4 = Math.max(value.length, value3.length);
const value5 = 0;
if (value5 < value4) {
r1 = value5;
while (true) {
property = value[r1];
r7 = property ?? value5;
property = value3[r1];
if (property != null) {
r6 = property;
continue;
}
r6 = value5;
continue;
if (r7 < r6) {
return -1;
}
if (r7 > r6) {
return 1;
}
value6 = typeof r1 === 'bigint' ? r1 + 1n : +r1 + 1;
if (value6 < value4) {
r1 = value6;
continue;
}
break;
}
}
return value5;
}
function canUseRoleSubscriptionIAP(a0) { // fn#51707, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:553, offset: 0x012e3309, size: 167 bytes, params: 2, frame: 16
var systemVersion;
const platformUtilsModule = require(477) /* metro dependency 477: PlatformUtils */;
if (platformUtilsModule.isIOS()) {
systemVersion = (require(6580) /* metro dependency 6580: getSystemVersionNative */).getSystemVersion();
if (systemVersion == null) {
return false;
}
if (compareVersions(systemVersion, '13.2') === -1) {
return false;
}
return GuildStore.getGuild(a0) != null && !!env0_4.every(_fun51708);
}
return false;
}
function useCanUseRoleSubscriptionIAP(a0) { // fn#51709, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:802, offset: 0x012e33b0, size: 120 bytes, params: 2, frame: 16
const env0_0 = a0;
const binding = env0_2;
const value2 = binding.useMemo(_fun51710, []);
const value3 = binding.useMemo(_fun51711, []);
const useStateFromStoresModule = require(632) /* metro dependency 632: useStateFromStores */;
const useStateFromStores = useStateFromStoresModule.useStateFromStores;
return value3 && Reflect.apply(useStateFromStores, useStateFromStoresModule, [[GuildStore], _fun51712]) && value2;
}
function _fun51710() { // fn#51710, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:860, offset: 0x012e3428, size: 68 bytes, params: 1, frame: 14
var r0;
let value = environment.__proto__;
const systemVersion = (require(6580) /* metro dependency 6580: getSystemVersionNative */).getSystemVersion();
const value3 = systemVersion != null;
if (value3) {
value = compareVersions(systemVersion, '13.2');
value = value >= 0;
r0 = value;
} else {
r0 = value3;
}
return r0;
}
function _fun51711() { // fn#51711, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:957, offset: 0x012e346c, size: 37 bytes, params: 1, frame: 11
const value = environment.__proto__;
return (require(477) /* metro dependency 477: PlatformUtils */).isIOS();
}
function _fun51712() { // fn#51712, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6757:1016, offset: 0x012e3491, size: 62 bytes, params: 1, frame: 13
var environment;
const value = environment.__proto__;
return GuildStore.getGuild(env0_0) != null && env1_4.every(_fun51713);
}
@@ -0,0 +1,13 @@
/* Metro module 6580; source: modules/guild_role_subscriptions/feature_gating/getSystemVersion.native.tsx; dependencies: [4092, 2] */
function _fun51714(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#51714, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6758:6, offset: 0x012e34cf, size: 94 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/guild_role_subscriptions/feature_gating/getSystemVersion.native.tsx');
exports.getSystemVersion = getSystemVersion_51715;
}
function getSystemVersion_51715() { // fn#51715, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6758:220, offset: 0x012e352d, size: 36 bytes, params: 1, frame: 11
return (require(4092) /* metro dependency 4092: DeviceUtils */).getSystemVersion();
}
@@ -0,0 +1,16 @@
/* Metro module 16027; source: modules/guild_role_subscriptions/formatDurationFromDays.tsx; dependencies: [1244, 2] */
function _fun123899(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123899, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16235:6, offset: 0x0259fb1a, 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/guild_role_subscriptions/formatDurationFromDays.tsx');
exports.default = formatDurationFromDays;
}
function formatDurationFromDays(a0) { // fn#123900, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16235:195, offset: 0x0259fb7a, size: 158 bytes, params: 2, frame: 18
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
return a0 > 0 && a0 % 7 === 0 ? intl.formatToPlainString(t.EmoBD2,
{weeks: a0 / 7}) : intl.formatToPlainString(t['k2UNz+'], {days: a0});
}
@@ -0,0 +1,10 @@
/* Metro module 16117; source: modules/guild_role_subscriptions/getMaxRoleSubscriptionEmojiSlots.tsx; dependencies: [2] */
function _fun124414(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124414, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16325:6, offset: 0x025b5644, size: 87 bytes, params: 8, frame: 15
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/getMaxRoleSubscriptionEmojiSlots.tsx');
exports.default = function() {
return 25;
};
}
@@ -0,0 +1,102 @@
/* Metro module 13686; source: modules/guild_role_subscriptions/manage_subscriptions/useManageSubscriptionCardData.tsx; dependencies: [57, 31, 1867, 3778, 661, 3738, 5137, 1244, 13677, 566, 13675, 2] */
function _fun104521(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104521, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:6, offset: 0x02298f4f, size: 191 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const guildRoleSubscriptionsStore = importDefault(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */;
const env0_7 = (require(661) /* metro dependency 661: Constants */).SubscriptionStatusTypes;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/manage_subscriptions/useManageSubscriptionCardData.tsx');
exports.default = useManageSubscriptionCardData;
}
function useManageSubscriptionCardData(a0) { // fn#104522, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:302, offset: 0x0229900e, size: 657 bytes, params: 2, frame: 27
var r11;
var r1;
var subscription;
var value7;
var moduleValue6;
var value11;
var status;
var value12;
var PAST_DUE;
var hasActiveTrial;
var intl;
var string;
var t;
const value2 = undefined;
const env0_0 = (require(13677) /* metro dependency 13677: subscriptionUtils */).getRoleSubscriptionPlanId(a0);
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
let object = [GuildRoleSubscriptionsStore];
const subscriptionListingForPlan = Reflect.apply(useStateFromStores, fluxModule, [object, _fun104523]);
const value3 = fluxModule.useStateFromStores([GuildRoleSubscriptionsStore], _fun104524);
const guild = fluxModule.useStateFromStores([GuildStore], _fun104525);
const env0_3 = guild;
const binding = env0_4;
const [property, env0_5] = env0_3(binding.useState(false), 2);
const guildRoleSubscriptionsHooksModule = require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */;
const useFetchSubscriptionsSettings = guildRoleSubscriptionsHooksModule.useFetchSubscriptionsSettings;
binding.useEffect(_fun104526, [property, guild, Reflect.apply(useFetchSubscriptionsSettings,
guildRoleSubscriptionsHooksModule, []).fetchSubscriptionsSettings]);
if (subscriptionListingForPlan == null) {
r1 = value2;
} else {
subscription = ({subscription: a0}).subscription;
value7 = (importDefault(3738) /* metro dependency 3738 */)(subscription.currentPeriodEnd).format('M/D/YY');
if (subscription.price != null) {
moduleValue6 = require(5137) /* metro dependency 5137: PriceUtils */;
r11 = moduleValue6.formatPrice(subscription.price, subscription.currency);
} else {
r11 = '';
}
value11 = (importDefault(3738) /* metro dependency 3738 */)(subscription.createdAt).format('M/D/YY');
status = subscription.status;
value12 = status === SubscriptionStatusTypes.CANCELED;
status = subscription.status;
PAST_DUE = SubscriptionStatusTypes.PAST_DUE;
hasActiveTrial = subscription.hasActiveTrial;
object = {memberSince: value11, nextRenewalDate: value7};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
string = intl.string;
t = (require(1244) /* metro dependency 1244: indexNative */).t;
object.nextRenewalLabel = value12 ? Reflect.apply(string, intl, [t.UAfot2]) : Reflect.apply(string, intl,
[t.CVjLcM]);
object.subscriptionPrice = r11;
object.isCancelled = value12;
object.isPastDue = status === PAST_DUE;
object.isTrial = hasActiveTrial;
r1 = object;
}
return {guild: guild, expanded: property, handleToggleExpanded: handleToggleExpanded,
listing: subscriptionListingForPlan, groupListing: value3, subscriptionInfo: r1};
}
function _fun104523() { // fn#104523, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:421, offset: 0x0229929f, size: 29 bytes, params: 1, frame: 11
return GuildRoleSubscriptionsStore.getSubscriptionListingForPlan(env0_0);
}
function _fun104524() { // fn#104524, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:496, offset: 0x022992bc, size: 45 bytes, params: 1, frame: 12
const subscriptionListingForPlanBinding = subscriptionListingForPlan;
const value2 = null;
return value2 != subscriptionListingForPlanBinding ? GuildRoleSubscriptionsStore.getSubscriptionGroupListingForSubscriptionListing(subscriptionListingForPlan.id) : value2;
}
function _fun104525() { // fn#104525, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:607, offset: 0x022992e9, size: 47 bytes, params: 1, frame: 13
return GuildStore.getGuild(env0_2?.guild_id);
}
function _fun104526() { // fn#104526, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:774, offset: 0x02299318, size: 83 bytes, params: 1, frame: 13
if (env0_4 && guild != null && GuildRoleSubscriptionsStore.getSubscriptionSettings(guild.id) == null) {
fetchSubscriptionsSettings(guild.id);
}
}
function handleToggleExpanded() { // fn#104527, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13883:1395, owner: useManageSubscriptionCardData.handleToggleExpanded, offset: 0x0229936b, size: 25 bytes, params: 1, frame: 11
return env0_5(function(a0) {
return !a0;
});
}
@@ -0,0 +1,32 @@
/* Metro module 16075; source: modules/guild_role_subscriptions/native/GuildRoleSettingsActionCreators.tsx; dependencies: [16066, 661, 9112, 2] */
function _fun124112(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124112, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16283:6, offset: 0x025a8cb6, size: 152 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
const env0_3 = (require(661) /* metro dependency 661: Constants */).GuildSettingsSections;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/GuildRoleSettingsActionCreators.tsx');
exports.pushTierEditScene = pushTierEditScene;
exports.pushTierTemplateSelectionScene = pushTierTemplateSelectionScene;
}
function pushTierEditScene(a0, a1) { // fn#124113, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16283:267, offset: 0x025a8d4e, size: 85 bytes, params: 3, frame: 15
RoleTierEditStore.resetImperatively();
const push = a0.push;
let ROLE_SUBSCRIPTIONS_TIER_EDIT = GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIER_EDIT;
Reflect.apply(push, a0, [ROLE_SUBSCRIPTIONS_TIER_EDIT, a1]);
const value = importDefault(9112) /* metro dependency 9112: GuildSettingsActionCreators */;
const setSection = value.setSection;
ROLE_SUBSCRIPTIONS_TIER_EDIT = GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIER_EDIT;
Reflect.apply(setSection, value, [ROLE_SUBSCRIPTIONS_TIER_EDIT]);
}
function pushTierTemplateSelectionScene(a0, a1) { // fn#124114, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16283:447, offset: 0x025a8da3, size: 71 bytes, params: 3, frame: 15
const push = a0.push;
let ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION = GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION;
Reflect.apply(push, a0, [ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION, a1]);
const value = importDefault(9112) /* metro dependency 9112: GuildSettingsActionCreators */;
const setSection = value.setSection;
ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION = GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION;
Reflect.apply(setSection, value, [ROLE_SUBSCRIPTIONS_TIER_TEMPLATE_SELECTION]);
}
@@ -0,0 +1,21 @@
/* Metro module 16058; source: modules/guild_role_subscriptions/native/PreviewableListingImageUtil.tsx; dependencies: [16059, 2] */
function _fun124002(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124002, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16266:6, offset: 0x025a41c2, size: 99 bytes, params: 8, frame: 17
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/PreviewableListingImageUtil.tsx');
exports.getSource = getSource;
}
function getSource(a0) { // fn#124003, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16266:209, offset: 0x025a4225, size: 60 bytes, params: 2, frame: 12
var r0;
var value;
if (a0.imageLocal != null) {
r0 = a0.imageLocal;
} else {
value = importAll(16059) /* metro dependency 16059: ListingImageUtil */;
value = value.getSource(a0);
r0 = value;
}
return r0;
}
@@ -0,0 +1,36 @@
/* Metro module 8588; source: modules/guild_role_subscriptions/native/RoleSubscriptionUpsellUtils.tsx; dependencies: [31, 33, 4496, 8589, 1962, 2] */
function _fun67893(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67893, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8773:6, offset: 0x01c37181, size: 145 bytes, params: 8, frame: 18
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
object2 = {handleShowEmojiUpsellAlert: handleShowEmojiUpsellAlert};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/RoleSubscriptionUpsellUtils.tsx');
exports.default = object2;
}
function handleShowEmojiUpsellAlert({guildId}) { // fn#67894, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8773:152, offset: 0x01c37212, size: 66 bytes, params: 2, frame: 13
const alertActionCreators = importDefault(4496) /* metro dependency 4496: AlertActionCreators */;
alertActionCreators.openLazy({importer: importer_67895});
}
function handleShowEmojiUpsellAlertImporter() { // fn#67895, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8773:228, owner: handleShowEmojiUpsellAlert.importer, offset: 0x01c37254, size: 64 bytes, params: 1, frame: 13
var environment;
let value = environment.__proto__;
value = require(dependencyMap[4]);
value = value(dependencyMap[3], dependencyMap.paths);
return value.then(function({default: env0_0}) {
return _fun67897;
});
}
function _fun67896({default: env0_0}) { // fn#67896, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8773:260, offset: 0x01c37294, size: 23 bytes, params: 2, frame: 2
return _fun67897;
}
function _fun67897(a0) { // fn#67897, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8773:275, offset: 0x01c372ab, size: 52 bytes, params: 2, frame: 14
return ((Component) => <Component {...a0} {...{['guildId']: guildId}} />)(env0_0);
}
@@ -0,0 +1,519 @@
/* Metro module 16066; source: modules/guild_role_subscriptions/native/RoleTierEditStore.tsx; dependencies: [57, 5, 690, 685, 6846, 3769, 4594, 13675, 2] */
function _fun124020(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124020, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:6, offset: 0x025a52a2, size: 401 bytes, params: 8, frame: 21
var object2;
let env0_0 = require;
const _arrayLikeToArray_124023 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const keyUpdater = function(a0, a1) {
var env0_0 = a0;
var env0_1 = a1;
return _fun124025;
};
const closure = usePriceTiers;
let Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importDefault(5) /* metro dependency 5 */;
object2 = {IDLE: 0};
object2[0] = 'IDLE';
object2.LOADING = 1;
object2[1] = 'LOADING';
object2.ERROR = 2;
object2[2] = 'ERROR';
Object = global.Object;
const env0_7 = Object.freeze({'currentScene': null, 'groupCover': null, 'groupDescription': '',
'groupIsFullGate': false});
let value = require(685) /* metro dependency 685 */;
value = value.createWithEqualityFn(_fun124031);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/RoleTierEditStore.tsx');
exports.LoadingState = object2;
exports.useRoleTierEditStore = value;
exports.resetImperatively = resetImperatively;
exports.useCurrentTierEditScene = useCurrentTierEditScene;
exports.useResetTierEditState = useResetTierEditState;
exports.usePriceTiers = closure;
exports.usePriceTiersAvailableInGuild = usePriceTiersAvailableInGuild;
exports.useGroupCoverState = useGroupCoverState;
exports.useGroupDescriptionState = useGroupDescriptionState;
exports.useGroupIsFullGateState = useGroupIsFullGateState;
}
function _createForOfIteratorHelperLoose_124021(a0, a1) { // fn#124021, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:120, offset: 0x025a5433, size: 372 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun124022;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_124023(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_124023(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_124023(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun124022;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function keyUpdater(a0, a1) { // fn#124024, offset: 0x025a55a7, size: 25 bytes, params: 3, frame: 2
const env0_0 = a0;
const env0_1 = a1;
return _fun124025;
}
function usePriceTiers(a0) { // fn#124027, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1918, offset: 0x025a5618, size: 163 bytes, params: 2, frame: 18
const env0_0 = a0;
const value3 = env0_4(env0_8(function(a0) {
return [a0.priceTiers, a0.priceTierState, a0.loadPriceTiers];
}, (require(3769) /* metro dependency 3769 */).shallow), 3);
const property = value3[0];
const property2 = value3[1];
const env0_3 = value3[2];
const closure = onRefresh;
(importDefault(4594) /* metro dependency 4594: useMountEffect */)(_fun124030);
return {tiers: property, state: property2, onRefresh: closure, guildId: a0};
}
function _fun124031(a0) { // fn#124031, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1341, offset: 0x025a571e, size: 176 bytes, params: 2, frame: 17
const env0_0 = a0;
const object2 = {};
copyDataProperties(object2, env0_7, undefined);
object2['setScene'] = setScene;
const keyUpdaterBinding = keyUpdater;
object2['setGroupCover'] = keyUpdaterBinding(a0, 'groupCover');
object2['setGroupDescription'] = keyUpdaterBinding(a0, 'groupDescription');
object2['setGroupIsFullGate'] = keyUpdaterBinding(a0, 'groupIsFullGate');
object2['priceTiers'] = null;
const IDLE = env0_6.IDLE;
object2['priceTierState'] = IDLE;
object2['loadPriceTiers'] = loadPriceTiers;
object2['reset'] = reset_124040;
return object2;
}
function resetImperatively() { // fn#124042, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:2344, offset: 0x025a59d3, size: 31 bytes, params: 1, frame: 9
const binding = env0_8;
const getState = binding.getState;
Reflect.apply(getState, binding, []).reset();
}
function useCurrentTierEditScene() { // fn#124043, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:2426, offset: 0x025a59f2, size: 39 bytes, params: 1, frame: 10
const value = env0_8();
return [value.currentScene, value.setScene];
}
function useResetTierEditState() { // fn#124044, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:2531, offset: 0x025a5a19, size: 25 bytes, params: 1, frame: 11
return env0_8(function(a0) {
return a0.reset;
});
}
function usePriceTiersAvailableInGuild(a0) { // fn#124046, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:2652, offset: 0x025a5a3d, size: 214 bytes, params: 2, frame: 19
var r5;
var r3;
var value8;
var add;
var subscription_plans;
var price;
var value9;
var filter;
const value2 = undefined;
const {tiers, state, onRefresh} = usePriceTiers(a0);
const value4 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListingsForGuild(a0);
const Set = global.Set;
const set = new Set();
let value = _createForOfIteratorHelperLoose_124021(value4);
const value7 = value();
let done = value7.done;
if (!done) {
r5 = value7;
reducibleLoop1: while (true) {
value8 = r5.value;
add = set.add;
subscription_plans = value8.subscription_plans;
price = subscription_plans[0].price;
Reflect.apply(add, set, [price]);
value9 = value();
done = value9.done;
if (done) {
break reducibleLoop1;
}
r5 = value9;
continue reducibleLoop1;
}
}
reducibleJoin4: while (true) {
if (tiers == null) {
r3 = value2;
break reducibleJoin4;
}
filter = tiers.filter;
value = Reflect.apply(filter, tiers, [_fun124047]);
r3 = value;
break reducibleJoin4;
}
return {tiers: r3, state: state, onRefresh: onRefresh};
}
function useGroupCoverState() { // fn#124048, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:3014, offset: 0x025a5b13, size: 52 bytes, params: 1, frame: 13
return env0_8(function({groupCover, setGroupCover}) {
return [groupCover, setGroupCover];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useGroupDescriptionState() { // fn#124050, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:3142, offset: 0x025a5b66, size: 52 bytes, params: 1, frame: 13
return env0_8(function({groupDescription, setGroupDescription}) {
return [groupDescription, setGroupDescription];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useGroupIsFullGateState() { // fn#124052, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:3287, offset: 0x025a5bb9, size: 52 bytes, params: 1, frame: 13
return env0_8(function({groupIsFullGate, setGroupIsFullGate}) {
return [groupIsFullGate, setGroupIsFullGate];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function _fun124025(a0) { // fn#124025, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1251, offset: 0x025a55c0, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124026);
}
function onRefresh(a0) { // fn#124029, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:2064, owner: usePriceTiers.onRefresh, offset: 0x025a56e4, size: 58 bytes, params: 2, frame: 12
if (env0_1 == null && env0_2 !== env1_6.LOADING) {
env0_3(a0);
}
}
function setScene(a0) { // fn#124032, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1351, offset: 0x025a57ce, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124033);
}
function loadPriceTiers(a0) { // fn#124034, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1611, offset: 0x025a5822, size: 36 bytes, params: 2, frame: 11
const env0_0 = a0;
return env1_5(_fun124036)();
}
function reset_124040() { // fn#124040, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1871, offset: 0x025a598d, size: 47 bytes, params: 1, frame: 12
var environment;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124041);
}
function _fun124026() { // fn#124026, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1286, offset: 0x025a55f6, size: 34 bytes, params: 1, frame: 12
return env1_0({[require]: env0_0});
}
function _fun124033() { // fn#124033, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1386, offset: 0x025a5804, size: 30 bytes, params: 1, frame: 11
return env1_0({currentScene: env0_0});
}
function* _fun124036() { // fn#124036, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1617, offset: 0x025a5851, size: 196 bytes, params: 1, frame: 17
var environment;
var binding;
var binding2;
var property;
var value3;
var batchUpdates;
var closure;
var value4;
var getPriceTiers;
var value6;
var value7;
var value8;
var binding3;
var value9;
var error;
if (true) {
var env0_0;
value = environment.__proto__.__proto__.__proto__;
try {
binding = env3_0;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
binding2 = env3_3;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
property = binding2[2];
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
value3 = binding(property);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
batchUpdates = value3.batchUpdates;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
closure = _fun124037;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
Reflect.apply(batchUpdates, value3, [closure]);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
binding = env3_2;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
property = binding2[4];
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
value4 = binding(property);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
getPriceTiers = value4.getPriceTiers;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
binding = env1_0;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
value6 = Reflect.apply(getPriceTiers, value4, [binding]);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
yield value6;
try {
value7 = undefined;
value8 = false;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
if (value8) {
return value7;
}
try {
env0_0 = value7;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
binding = env3_0;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
binding3 = env3_3;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
property = binding3[2];
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
value9 = binding(property);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
batchUpdates = value9.batchUpdates;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
closure = _fun124038;
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
return undefined;
}
try {
Reflect.apply(batchUpdates, value9, [closure]);
} catch (error) {
binding = env3_0;
value = binding(env3_3[2]);
value.batchUpdates(_fun124039);
}
}
}
function _fun124041() { // fn#124041, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1902, offset: 0x025a59bc, size: 23 bytes, params: 1, frame: 11
return env1_0(env2_7);
}
function _fun124037() { // fn#124037, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1656, offset: 0x025a5915, size: 36 bytes, params: 1, frame: 11
const LOADING = env4_6.LOADING;
return require({priceTierState: LOADING});
}
function _fun124038() { // fn#124038, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1753, offset: 0x025a5939, size: 48 bytes, params: 1, frame: 11
const IDLE = env4_6.IDLE;
return require({priceTiers: env0_0, priceTierState: IDLE});
}
function _fun124039() { // fn#124039, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16274:1831, offset: 0x025a5969, size: 36 bytes, params: 1, frame: 11
const ERROR = env4_6.ERROR;
return require({priceTierState: ERROR});
}
@@ -0,0 +1,40 @@
/* Metro module 16113; source: modules/guild_role_subscriptions/native/components/ActionableNotice.tsx; dependencies: [31, 27, 33, 4501, 4573, 4578, 2] */
function _fun124396(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124396, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16321:6, offset: 0x025b4b54, size: 244 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(27) /* metro dependency 27 */).View;
const value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
const env0_5 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {'flexDirection': 'row',
'paddingVertical': 12, 'alignItems': 'center'}, message: {'marginEnd': 27, 'flex': 3},
actionButton: {'flexGrow': 0, 'alignSelf': 'center'}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/ActionableNotice.tsx');
exports.default = ActionableNotice;
}
function ActionableNotice({style, message, ctaMessage, onClick, submitting, disabled}) { // fn#124397, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16321:433, offset: 0x025b4c48, size: 247 bytes, params: 2, frame: 25
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const items2 = [style];
items2[1] = styles.container;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text style={styles.message} variant="text-sm/medium" color="text-default">{message}</Text>;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<View style={items2}>
{text}
<View style={styles.actionButton}>
<Button
size="sm"
onPress={onClick}
disabled={submitting || disabled}
text={ctaMessage}
/>
</View>
</View>
);
}
@@ -0,0 +1,112 @@
/* Metro module 16098; source: modules/guild_role_subscriptions/native/components/AllChannelsSwitch.tsx; dependencies: [31, 27, 13691, 661, 33, 4501, 697, 6597, 3874, 8792, 1305, 16099, 1244, 16100, 2] */
function _fun124305(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124305, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16306:6, offset: 0x025b00a2, size: 520 bytes, params: 8, frame: 28
var object5;
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 env0_4 = (require(13691) /* metro dependency 13691: GuildRoleSubscriptionEditStore */).AllChannelAccessOptions;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
let value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object5 = {};
const object6 = {};
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object6.backgroundColor = BACKGROUND_SURFACE_HIGH;
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object5.container = object6;
object5.row = {'alignSelf': 'stretch', 'alignItems': 'center', 'flexDirection': 'row',
'justifyContent': 'flex-start', 'padding': 16};
const object7 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
const PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_SUBTLE;
copyDataProperties(object7, textStyles(PRIMARY_MEDIUM, TEXT_SUBTLE, 16), undefined);
object7['flexShrink'] = 1;
object7['marginHorizontal'] = 16;
object5.rowLabel = object7;
const object8 = {};
const value3 = textStyles;
const PRIMARY_SEMIBOLD = Fonts.PRIMARY_SEMIBOLD;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
copyDataProperties(object8, value3(PRIMARY_SEMIBOLD, MOBILE_TEXT_HEADING_PRIMARY, 16), undefined);
object5.rowLabelSelected = object8;
object5.rowIndicator = {marginStart: 'auto'};
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
object5.separator = {'backgroundColor': null, 'height': 1, 'marginStart': 56, backgroundColor: BORDER_SUBTLE};
const env0_7 = Reflect.apply(createStyles, value, [object5]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/AllChannelsSwitch.tsx');
exports.default = AllChannelsSwitch;
}
function Row_124306({icon, label, onPress, selected, disabled}) { // fn#124306, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16306:738, offset: 0x025b02aa, size: 387 bytes, params: 2, frame: 25
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const {accessibilityRole,
accessibilityState} = (require(3874) /* metro dependency 3874: useA11yRolesNative */).useRadioA11yNative({selected: selected,
disabled: disabled});
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const r6 = selected || disabled;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
const items2 = [<Icon size={MEDIUM} source={icon} />];
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
items2[1] = <LegacyText style={[styles.rowLabel,
selected && styles.rowLabelSelected]} numberOfLines={1} ellipsizeMode="tail">{label}</LegacyText>;
const RadioIndicator = (require(1305) /* metro dependency 1305: native */).RadioIndicator;
items2[2] = <RadioIndicator style={styles.rowIndicator} active={selected} />;
return (
<TouchableHitBox
style={styles.row}
accessibilityRole={accessibilityRole}
accessibilityState={accessibilityState}
disabled={r6}
onPress={onPress}
>
{items2}
</TouchableHitBox>
);
}
function AllChannelsSwitch({channelAccessFormat, setChannelAccessFormat, style, disabled}) { // fn#124307, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16306:1371, offset: 0x025b042d, size: 391 bytes, params: 2, frame: 28
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const items3 = [styles.container, style];
const object = {disabled: disabled};
const row_124306Props = {icon: importDefault(16099) /* metro dependency 16099 */};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
row_124306Props.label = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['vs2T+B']);
const SOME_CHANNELS_ACCESS = AllChannelAccessOptions.SOME_CHANNELS_ACCESS;
row_124306Props.selected = channelAccessFormat === SOME_CHANNELS_ACCESS;
row_124306Props.onPress = function() {
return setChannelAccessFormat(AllChannelAccessOptions.SOME_CHANNELS_ACCESS);
};
row_124306Props.disabled = disabled;
const items2 = [<Row_124306 {...row_124306Props} />];
items2[1] = <View style={styles.separator} />;
const row_124306Props2 = {icon: importDefault(16100) /* metro dependency 16100 */,
label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t.l4Tr7X)};
const ALL_CHANNELS_ACCESS = AllChannelAccessOptions.ALL_CHANNELS_ACCESS;
row_124306Props2.selected = channelAccessFormat === ALL_CHANNELS_ACCESS;
row_124306Props2.onPress = function() {
return setChannelAccessFormat(AllChannelAccessOptions.ALL_CHANNELS_ACCESS);
};
row_124306Props2.disabled = disabled;
items2[2] = <Row_124306 {...row_124306Props2} />;
return (
<View
style={items3}
accessibilityRole="radiogroup"
accessibilityState={object}
>
{items2}
</View>
);
}
@@ -0,0 +1,365 @@
/* Metro module 16092; source: modules/guild_role_subscriptions/native/components/ChannelSelectorActionSheet.tsx; dependencies: [57, 31, 27, 1379, 5098, 3784, 661, 4865, 33, 4501, 697, 6597, 4805, 4080, 14536, 5475, 16029, 566, 6805, 4573, 1244, 6984, 5278, 5080, 9083, 1962, 9085, 9087, 1305, 12344, 6277, 2] */
function _fun124262(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:6, offset: 0x025adae2, size: 635 bytes, params: 8, frame: 26
var object2;
const env0_0 = require;
const _arrayLikeToArray_124265 = function(a0, a1) {
var r0;
var r1;
var r2;
var value3;
var length;
var value5;
var value = undefined;
var value2 = value == null;
reducibleJoin2: while (true) {
if (value2) {
r0 = value2;
break reducibleJoin2;
}
value3 = value > a0.length;
r0 = value3;
break reducibleJoin2;
}
reducibleJoin4: while (true) {
if (r0) {
length = a0.length;
r1 = length;
break reducibleJoin4;
}
r1 = value;
break reducibleJoin4;
}
value = (0, global.Array)(r1);
var value4 = 0;
if (value4 < r1) {
r2 = value4;
reducibleLoop5: while (true) {
value[r2] = a0[r2];
value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1;
if (value5 < r1) {
r2 = value5;
continue reducibleLoop5;
}
break reducibleLoop5;
}
}
return value;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const guildCategoryStore = importDefault(5098) /* metro dependency 5098: GuildCategoryStore */;
const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */;
let value = require(661) /* metro dependency 661: Constants */;
const env0_9 = value.Permissions;
const Fonts = value.Fonts;
const env0_10 = (require(4865) /* metro dependency 4865: ReadStateConstants */).UnreadSetting;
value = require(33) /* metro dependency 33 */;
const env0_11 = value.jsx;
const env0_12 = value.Fragment;
const env0_13 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object2.titleContainer = {'backgroundColor': null, 'padding': 16, 'width': '100%',
backgroundColor: BACKGROUND_BASE_LOWEST};
let BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.searchContainer = {'backgroundColor': null, 'padding': 16, 'width': '100%',
backgroundColor: BACKGROUND_SURFACE_HIGH};
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.createChannelButton = {'alignItems': 'center', 'backgroundColor': null, 'flexDirection': 'row',
'padding': 16, backgroundColor: BACKGROUND_SURFACE_HIGH};
const object3 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
const PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_LINK = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_LINK;
copyDataProperties(object3, textStyles(PRIMARY_MEDIUM, TEXT_LINK, 16), undefined);
object3['marginStart'] = 8;
object2.createChannelLabel = object3;
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.bodyContainer = {backgroundColor: BACKGROUND_SURFACE_HIGH};
object2.channelRow = {'paddingHorizontal': 8, 'paddingVertical': 4};
object2.selectedIcon = {'end': 16, 'top': 10, 'position': 'absolute'};
const env0_14 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/ChannelSelectorActionSheet.tsx');
exports.default = ChannelSelectorActionSheet;
}
function _createForOfIteratorHelperLoose_124263(a0, a1) { // fn#124263, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:270, offset: 0x025add5d, size: 372 bytes, params: 3, frame: 20
var r6;
var r9;
var r5;
var value3;
var regexp;
const env0_0 = a0;
const Symbol = global.Symbol;
let value = typeof Symbol !== 'undefined';
let r1 = value && a0[global.Symbol.iterator];
r1 = !r1 ? a0['@@iterator'] : r1;
if (r1) {
value = r1.call(a0);
return value.next.bind(value);
}
const Array = global.Array;
if (Array.isArray(a0)) {
if (r1) {
}
return _fun124264;
}
value = undefined;
if (a0) {
if (typeof a0 === 'string') {
value = _arrayLikeToArray_124265(a0, value);
r5 = value;
} else {
value3 = ({}).toString.call(a0).slice(8, -1);
r6 = value3 === 'Object' && a0.constructor;
r9 = r6 ? a0.constructor.name : value3;
if (r9 === 'Map') {
r6 = global.Array.from(a0);
} else if (r9 === 'Set') {
r6 = global.Array.from(a0);
} else if (r9 === 'Arguments') {
value = _arrayLikeToArray_124265(a0, value);
r6 = value;
} else {
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
if (regexp.test(r9)) {
value = _arrayLikeToArray_124265(a0, value);
r6 = value;
} else {
r6 = value;
}
}
r5 = r6;
}
} else {
r5 = value;
}
if (r5) {
if (r5) {
}
return _fun124264;
}
const TypeError = global.TypeError;
throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
}
function ChannelRow_124266({channel, onChannelSelected, selected}) { // fn#124266, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:1800, offset: 0x025aded1, size: 288 bytes, params: 2, frame: 24
var r5;
var value;
const styles = useStyles();
const value3 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(channel);
const value4 = env0_4.useCallback(_fun124267, [onChannelSelected, channel]);
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
const ChannelItem = importDefault(14536) /* metro dependency 14536: ChannelItem */;
const r12 = value3 ?? undefined;
const ONLY_MENTIONS = UnreadSetting.ONLY_MENTIONS;
const channelItem = <ChannelItem style={styles.channelRow} onPress={value4} accessible accessibilityLabel={r12} channel={channel} selected={selected} disableHighlightOnPress resolvedUnreadSetting={ONLY_MENTIONS} />;
if (selected) {
value = importDefault(5475) /* metro dependency 5475: FastImage */;
value = ((Component) => <Component style={styles.selectedIcon} source={importDefault(16029) /* metro dependency 16029 */} />)(value);
r5 = value;
} else {
r5 = selected;
}
return (
<>
{channelItem}
{r5}
</>
);
}
function ChannelSelectorActionSheet({guildId, onChannelSelected, selectedChannelId, title, hideCreateChannel}) { // fn#124268, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:2337, offset: 0x025ae026, size: 940 bytes, params: 2, frame: 37
var object2;
var r12;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var PressableOpacity;
var Icon;
var createChannelLabel;
var items3;
hideCreateChannel = !(hideCreateChannel === undefined) && hideCreateChannel;
const env0_3 = undefined;
const env0_4 = undefined;
const styles = useStyles();
const [property, property2] = env0_3(env0_4.useState(''), 2);
const value6 = env0_4.useRef(null);
const value7 = (require(566) /* metro dependency 566: flux */).useStateFromStoresArray([GuildCategoryStore,
PermissionStore], _fun124269, [guildId, property]);
const ActionSheet = (require(6805) /* metro dependency 6805: ActionSheetNative */).ActionSheet;
object2 = {scrollable: true, ref: value6};
const jsxRuntimeEnv0_12Binding = jsxRuntimeEnv0_12;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<View style={styles.titleContainer}><Text accessibilityRole="header" variant="text-md/bold" color="mobile-text-heading-primary">{title ?? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.PDn2fR)}</Text></View>];
const SearchField = (require(6984) /* metro dependency 6984: SearchFieldNative */).SearchField;
const string = intl.string;
const UTYBjS = (require(1244) /* metro dependency 1244: indexNative */).t.UTYBjS;
items2[1] = <View style={styles.searchContainer}><SearchField size="md" placeholder={Reflect.apply(string, intl,
[UTYBjS])} onChange={property2} onFocus={onFocus_124270} /></View>;
if (hideCreateChannel) {
r12 = !hideCreateChannel;
} else {
PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
var pressableOpacityProps = {style: styles.createChannelButton, accessibilityRole: 'button',
onPress: onPress_124271};
Icon = (require(1305) /* metro dependency 1305: native */).Icon;
createChannelLabel = styles.createChannelLabel;
items3 = [<Icon color={createChannelLabel.color?.toString()} source={importDefault(12344) /* metro dependency 12344 */} />];
createChannelLabel = styles.createChannelLabel;
items3[1] = <Text style={createChannelLabel} variant="text-md/medium" color="text-link">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.d7AN7W)}</Text>;
r12 = <PressableOpacity {...pressableOpacityProps}>{items3}</PressableOpacity>;
}
items2[2] = r12;
object2.header = <>{items2}</>;
const BottomSheetFlatList = (require(6277) /* metro dependency 6277 */).BottomSheetFlatList;
return (
<ActionSheet {...object2}>
<BottomSheetFlatList
style={styles.bodyContainer}
data={value7}
keyExtractor={function(a0) {
return a0.id;
}}
renderItem={renderItem_124274}
/>
</ActionSheet>
);
}
function _fun124267() { // fn#124267, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:1905, offset: 0x025adff1, size: 53 bytes, params: 1, frame: 11
const value = environment.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
onChannelSelected(channel);
}
function _fun124269() { // fn#124269, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:2569, offset: 0x025ae3d2, size: 243 bytes, params: 1, frame: 26
var r3;
var r10;
var r13;
var r1;
var value6;
var channel;
var id;
var value7;
var value8;
var value9;
var can;
var VIEW_CHANNEL;
var value10;
var value11;
var name;
var value12;
var push;
var value13;
var value14;
const items2 = [];
const categories = GuildCategoryStore.getCategories(guildId);
const value4 = _createForOfIteratorHelperLoose_124263(categories._categories);
const value5 = value4();
let done = value5.done;
if (!done) {
r3 = value5;
while (true) {
_createForOfIteratorHelperLoose_124263Binding = _createForOfIteratorHelperLoose_124263;
value6 = r3.value;
channel = value6.channel;
id = channel.id;
value7 = _createForOfIteratorHelperLoose_124263Binding(categories[id]);
value8 = value7();
done = value8.done;
if (!done) {
r10 = value8;
while (true) {
value9 = r10.value;
can = PermissionStore.can;
VIEW_CHANNEL = Permissions.VIEW_CHANNEL;
channel = value9.channel;
value10 = Reflect.apply(can, PermissionStore, [VIEW_CHANNEL, channel]);
if (value10) {
value11 = env0_3 === '';
if (value11) {
r13 = value11;
continue;
}
name = value9.channel.name;
value12 = name.includes(env0_3);
r13 = value12;
r1 = r13;
} else {
r1 = value10;
}
if (!r1) {
continue;
}
push = items2.push;
channel = value9.channel;
Reflect.apply(push, items2, [channel]);
value13 = value7();
done = value13.done;
if (done) {
break;
}
r10 = value13;
continue;
}
}
value14 = value4();
done = value14.done;
if (done) {
break;
}
r3 = value14;
continue;
}
}
return items2;
}
function ChannelSelectorActionSheetOnFocus() { // fn#124270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:3304, owner: ChannelSelectorActionSheet.onFocus, offset: 0x025ae4c5, size: 35 bytes, params: 1, frame: 10
return env0_4.current?.expandActionSheet();
}
function ChannelSelectorActionSheetOnPress() { // fn#124271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:3473, owner: ChannelSelectorActionSheet.onPress, offset: 0x025ae4e8, size: 170 bytes, params: 1, frame: 19
var environment;
let value = environment.__proto__;
importDefault(dependencyMap[13]).hideActionSheet();
const defaultImport2 = importDefault(dependencyMap[23]);
const pushLazy = defaultImport2.pushLazy;
value = require(dependencyMap[25]);
value = value(dependencyMap[24], dependencyMap.paths);
const object2 = {};
object2.guildId = guildId;
const CreateChannelMode = require(dependencyMap[26]).CreateChannelMode;
const PREMIUM_CHANNEL = CreateChannelMode.PREMIUM_CHANNEL;
object2.createMode = PREMIUM_CHANNEL;
object2.onChannelCreated = onChannelCreated_124272;
const CREATE_CHANNEL_MODAL_KEY = importDefault(dependencyMap[27]).CREATE_CHANNEL_MODAL_KEY;
Reflect.apply(pushLazy, defaultImport2, [value, object2, CREATE_CHANNEL_MODAL_KEY]);
}
function ChannelSelectorActionSheetRenderItem({item}) { // fn#124274, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:4085, owner: ChannelSelectorActionSheet.renderItem, offset: 0x025ae5da, size: 65 bytes, params: 2, frame: 15
return (
<ChannelRow_124266
channel={item}
onChannelSelected={onChannelSelected}
selected={item.id === selectedChannelId}
/>
);
}
function onPressOnChannelCreated_124272(a0) { // fn#124272, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16300:3631, owner: ChannelSelectorActionSheet.onPress.onChannelCreated, offset: 0x025ae592, size: 72 bytes, params: 2, frame: 12
var value2;
let value = environment.__proto__.__proto__;
(importDefault(9087) /* metro dependency 9087: CreateChannelModalActionCreators */).close();
value = ChannelStore.getChannel(a0);
if (value != null) {
value2 = environment.__proto__;
onChannelSelected(value);
}
}
@@ -0,0 +1,17 @@
/* Metro module 8590; source: modules/guild_role_subscriptions/native/components/CreatorRevenueButton.tsx; dependencies: [31, 33, 4501, 8591, 2] */
function _fun67904(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67904, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8775:6, offset: 0x01c376a3, size: 175 bytes, params: 8, frame: 20
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(33) /* metro dependency 33 */).jsx;
const env0_3 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {borderRadius: 3}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/CreatorRevenueButton.tsx');
exports.CreatorRevenueButton = CreatorRevenueButton;
}
function CreatorRevenueButton({disabled, text, onPress, style, loading}) { // fn#67905, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8775:303, offset: 0x01c37752, size: 114 bytes, params: 2, frame: 20
const styles = useStyles();
return ((Component) => <Component style={[styles.container,
style]} loading={loading} disabled={disabled} onPress={onPress} text={text} />)(importDefault(8591) /* metro dependency 8591: ShinyButton */);
}
@@ -0,0 +1,85 @@
/* Metro module 16028; source: modules/guild_role_subscriptions/native/components/EligibilityChecklist.tsx; dependencies: [31, 27, 33, 4501, 697, 5475, 16029, 16030, 4573, 4579, 1305, 13680, 2] */
function _fun123901(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16236:6, offset: 0x0259fc18, size: 435 bytes, params: 8, frame: 25
var object2;
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;
let value = require(33) /* metro dependency 33 */;
const env0_4 = value.jsx;
const env0_5 = value.jsxs;
const env0_6 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {row: {'paddingHorizontal': 24, 'paddingTop': 16, 'flex': 0, 'flexDirection': 'row'}};
object2.eligibleRow = {opacity: 0.8};
object2.rowStatusIcon = {'height': 20, 'width': 20, 'marginRight': 16};
object2.rowTextColumn = {'flex': 1, 'flexDirection': 'column'};
object2.rowLabel = {marginBottom: 4};
object2.actionButtonWrapper = {marginTop: 12};
const object3 = {};
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xl;
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
object3.borderColor = INTERACTIVE_TEXT_ACTIVE;
object3.borderWidth = 1;
object3.backgroundColor = 'transparent';
object2.actionButtonPill = object3;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.actionButtonText = {color: MOBILE_TEXT_HEADING_PRIMARY};
object2.divider = {marginHorizontal: 24};
const env0_7 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/EligibilityChecklist.tsx');
exports.default = EligibilityChecklist;
}
function EligibilityChecklistRow({isLast, item}) { // fn#123902, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16236:681, offset: 0x0259fdcb, size: 678 bytes, params: 2, frame: 36
var r5;
var value;
const styles = useStyles();
const jsxRuntimeEnv0_6Binding = jsxRuntimeEnv0_6;
const items2 = [styles.row];
items2[1] = item.checked && styles.eligibleRow;
const value2 = ((Component) => <Component style={styles.rowStatusIcon} source={item.checked ? importDefault(16029) /* metro dependency 16029 */ : importDefault(16030) /* metro dependency 16030 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items3 = [<Text style={styles.rowLabel} variant="text-md/semibold" color="mobile-text-heading-primary">{item.checked ? item.checkedLabel : item.uncheckedLabel}</Text>];
items3[1] = <Text variant="text-sm/normal" color="interactive-text-default">{item.description}</Text>;
items3[2] = item.actionHandler != null && item.actionLabel != null && <View style={styles.actionButtonWrapper}>{((BaseTextButton) => <BaseTextButton pillStyle={styles.actionButtonPill} textElement={<Text variant="text-md/semibold" style={styles.actionButtonText}>{item.actionLabel}</Text>} onPress={item.actionHandler} grow />)((require(4579) /* metro dependency 4579: BaseTextButtonNative */).BaseTextButton)}</View>;
const view = <View style={items2}>{value2}<View style={styles.rowTextColumn}>{items3}</View></View>;
if (isLast) {
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
r5 = <Spacer size={16} />;
} else {
value = importDefault(13680) /* metro dependency 13680: FormSeparator */;
value = ((Component) => <Component style={styles.divider} />)(value);
r5 = value;
}
return (
<>
{view}
{r5}
</>
);
}
function EligibilityChecklist({items, style}) { // fn#123903, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16236:1648, offset: 0x025a0071, size: 83 bytes, params: 2, frame: 14
if (items.length === 0) {
return null;
}
return (
<View style={style}>
{items.map(_fun123904)}
</View>
);
}
function _fun123904(a0, a1) { // fn#123904, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16236:1738, offset: 0x025a00c4, size: 68 bytes, params: 3, frame: 16
return (
<EligibilityChecklistRow
item={a0}
isLast={a1 === items.length - 1}
key={a0.checkedLabel}
/>
);
}
@@ -0,0 +1,30 @@
/* Metro module 16083; source: modules/guild_role_subscriptions/native/components/EmojiAlias.tsx; dependencies: [31, 27, 33, 4501, 4573, 2] */
function _fun124196(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124196, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16291:6, offset: 0x025abab0, size: 222 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(27) /* metro dependency 27 */).View;
const value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
const env0_5 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({emojiAlias: {'alignItems': 'center',
'flexDirection': 'row'}, emojiColon: {width: 4}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/EmojiAlias.tsx');
exports.default = EmojiAlias;
}
function EmojiAlias({name, style}) { // fn#124197, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16291:355, offset: 0x025abb8e, size: 231 bytes, params: 2, frame: 22
const styles = useStyles();
const items3 = [styles.emojiAlias, style];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text style={null} {...{'aria-hidden': true}} variant="text-md/medium" color="text-muted" children=":" style={styles.emojiColon} />];
items2[1] = <Text lineClamp={1} variant="text-md/bold" color="interactive-text-active">{name}</Text>;
items2[2] = <Text style={null} {...{'aria-hidden': true}} variant="text-md/medium" color="text-muted" children=":" style={styles.emojiColon} />;
return (
<View style={items3}>
{items2}
</View>
);
}
@@ -0,0 +1,52 @@
/* Metro module 13703; source: modules/guild_role_subscriptions/native/components/EmojiIcon.tsx; dependencies: [31, 33, 13704, 5475, 8592, 6739, 1423, 2] */
function _fun104728(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104728, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13900:6, offset: 0x0229ef17, size: 138 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/EmojiIcon.tsx');
exports.default = EmojiIcon_104729;
}
function EmojiIcon_104729({guildId, id, size, useFallbackIcon, fontSize, lineHeight = size + 4, style}) { // fn#104729, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13900:226, offset: 0x0229efa1, size: 399 bytes, params: 2, frame: 23
var r7;
var r1;
var r0;
var Emoji;
size = size === undefined ? 20 : size;
useFallbackIcon = useFallbackIcon === undefined || useFallbackIcon;
var value;
const value2 = (require(13704) /* metro dependency 13704: useEmojiByIdOrName */).useEmojiByIdOrName(guildId, id);
if (value2 == null) {
if (useFallbackIcon) {
value = importDefault(5475) /* metro dependency 5475: FastImage */;
value = ((Component) => <Component resizeMode="contain" style={{width: size,
height: size}} source={importDefault(8592) /* metro dependency 8592 */} />)(value);
r1 = value;
} else {
r1 = null;
}
r0 = r1;
} else {
Emoji = importDefault(6739) /* metro dependency 6739: Emoji */;
var emojiProps = {style: style, fastImageStyle: {width: size, height: size},
textEmojiStyle: {fontSize: fontSize ?? size, lineHeight: lineHeight}};
id = value2.id;
r7 = id != null ? value2.name : value2.surrogates ?? value2.name ?? '';
emojiProps.name = r7;
id = value2.id;
if (id != null) {
value = importDefault(1423) /* metro dependency 1423: AvatarUtils */;
value = value.getEmojiURL({id: value2.id, animated: value2.animated, size: size});
r7 = value;
} else {
r7 = value2.url;
}
emojiProps.src = r7;
value = <Emoji {...emojiProps} />;
r0 = value;
}
return r0;
}
@@ -0,0 +1,22 @@
/* Metro module 11744; source: modules/guild_role_subscriptions/native/components/ErrorBlock.tsx; dependencies: [31, 33, 11745, 2] */
function _fun90021(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#90021, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11930:6, offset: 0x02026df9, size: 138 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/ErrorBlock.tsx');
exports.default = ErrorBlock;
}
function ErrorBlock({children}) { // fn#90022, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11930:227, offset: 0x02026e83, size: 80 bytes, params: 2, frame: 17
const MessageBlock = importDefault(11745) /* metro dependency 11745: MessageBlock */;
const MessageBlockColors = (require(11745) /* metro dependency 11745: MessageBlock */).MessageBlockColors;
const RED = MessageBlockColors.RED;
return (
<MessageBlock color={RED}>
{children}
</MessageBlock>
);
}
@@ -0,0 +1,49 @@
/* Metro module 13699; source: modules/guild_role_subscriptions/native/components/FastAssetImage.tsx; dependencies: [57, 31, 33, 4141, 5475, 2] */
function _fun104710(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104710, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13896:6, offset: 0x0229dfc8, size: 158 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FastAssetImage.tsx');
exports.default = FastAssetImage;
}
function FastAssetImage({applicationId, asset, style}) { // fn#104711, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13896:243, offset: 0x0229e066, size: 188 bytes, params: 2, frame: 20
const binding = env0_4;
const value3 = env0_3(binding.useState(), 2);
return ((Component) => <Component style={style} onLayout={binding.useCallback(_fun104712,
[value3[1]])} source={binding.useMemo(_fun104713, [applicationId, asset,
value3[0]])} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
}
function _fun104712({nativeEvent}) { // fn#104712, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13896:361, offset: 0x0229e122, size: 36 bytes, params: 2, frame: 11
env0_3(nativeEvent.layout.width);
}
function _fun104713() { // fn#104713, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13896:415, offset: 0x0229e146, size: 132 bytes, params: 1, frame: 18
var r1;
var value4;
var moduleValue;
const r6 = asset?.application_id ?? applicationId;
assetBinding = asset;
const value3 = '';
if (assetBinding != null) {
if (r6 != null) {
if (env0_2 != null) {
value4 = environment.__proto__;
moduleValue = require(4141) /* metro dependency 4141: StoreUtils */;
r1 = moduleValue.getAssetURL(r6, asset, env0_2);
} else {
r1 = value3;
}
} else {
r1 = value3;
}
} else {
r1 = value3;
}
return {uri: r1};
}
@@ -0,0 +1,73 @@
/* Metro module 16063; source: modules/guild_role_subscriptions/native/components/FormBigRadioBox.tsx; dependencies: [31, 27, 33, 4501, 697, 3874, 8792, 1305, 4573, 2] */
function _fun124014(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124014, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16271:6, offset: 0x025a4950, size: 455 bytes, params: 8, frame: 24
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;
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;
object4 = {};
const object5 = {'backgroundColor': null, 'borderRadius': null, 'alignSelf': 'stretch', 'alignItems': 'flex-start',
'padding': 16};
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object5.backgroundColor = BACKGROUND_SURFACE_HIGH;
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object4.container = object5;
const object6 = {};
let BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object6.backgroundColor = BACKGROUND_BASE_LOWEST;
object6.borderWidth = 1;
const BACKGROUND_BRAND = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BRAND;
object6.borderColor = BACKGROUND_BRAND;
object4.containerSelected = object6;
object4.indicator = {'position': 'absolute', 'right': 18, 'top': 18};
BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object4.iconContainer = {'height': 40, 'width': 40, 'alignItems': 'center', 'backgroundColor': null,
'borderRadius': 20, 'justifyContent': 'center', 'marginBottom': 16, backgroundColor: BACKGROUND_BASE_LOWEST};
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object4.iconContainerSelected = {backgroundColor: BACKGROUND_BASE_LOW};
object4.title = {marginBottom: 2};
object4.disabled = {opacity: 0.5};
const env0_6 = Reflect.apply(createStyles, value, [object4]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormBigRadioBox.tsx');
exports.default = FormBigRadioBox;
}
function FormBigRadioBox({description, icon, title, selected, style, onPress, disabled}) { // fn#124015, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16271:903, offset: 0x025a4b17, size: 466 bytes, params: 2, frame: 27
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const {accessibilityRole,
accessibilityState} = (require(3874) /* metro dependency 3874: useA11yRolesNative */).useRadioA11yNative({selected: selected,
disabled: disabled});
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const items4 = [styles.container];
items4[1] = selected && styles.containerSelected;
items4[2] = disabled && styles.disabled;
items4[3] = style;
const r4 = disabled ? undefined : onPress;
const RadioIndicator = (require(1305) /* metro dependency 1305: native */).RadioIndicator;
const items2 = [<RadioIndicator style={styles.indicator} active={selected} />];
const items3 = [styles.iconContainer];
items3[1] = selected && styles.iconContainerSelected;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
items2[1] = <View style={items3}><Icon source={icon} /></View>;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
items2[2] = <Text style={styles.title} accessibilityRole="header" variant="text-md/semibold" color="interactive-text-default">{title}</Text>;
items2[3] = <Text variant="text-sm/medium" color="interactive-text-default">{description}</Text>;
return (
<TouchableHitBox
style={items4}
accessibilityRole={accessibilityRole}
accessibilityState={accessibilityState}
onPress={r4}
>
{items2}
</TouchableHitBox>
);
}
@@ -0,0 +1,64 @@
/* Metro module 16091; source: modules/guild_role_subscriptions/native/components/FormChannelPicker.tsx; dependencies: [31, 1379, 33, 4501, 12672, 566, 4805, 8792, 4080, 16092, 1962, 6647, 6691, 4573, 1244, 1305, 10787, 2] */
function _fun124257(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124257, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16299:6, offset: 0x025ad73c, size: 227 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
const value = require(33) /* metro dependency 33 */;
const env0_4 = value.jsx;
const env0_5 = value.jsxs;
const env0_6 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {'alignItems': 'center',
'flexDirection': 'row'}, content: {'marginStart': 8, 'flexGrow': 1}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormChannelPicker.tsx');
exports.default = FormChannelPicker;
}
function FormChannelPicker({channelId, guildId, onChange}) { // fn#124258, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16299:371, offset: 0x025ad81f, size: 576 bytes, params: 2, frame: 25
var r9;
var intl;
const value2 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const styles = useStyles();
const value3 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore], function() {
return ChannelStore.getChannel(channelId);
}, [channelId]);
const value4 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(value3);
const env0_3 = onChange ?? (function() {
});
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const touchableHitBoxProps = {style: [styles.container, value2.textInput], accessibilityRole: 'link',
onPress: onPress_124261};
const items3 = [value3 == null ? null : ((Component) => <Component size="sm" />)((require(6647) /* metro dependency 6647: ChannelUtils */).getChannelIconComponent(value3) ?? (require(6691) /* metro dependency 6691: TextIcon */).TextIcon)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const r11 = channelId != null ? 'text-default' : 'text-muted';
if (value4 != null) {
r9 = value4;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r9 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.r2ptsz);
}
items3[1] = <Text style={styles.content} variant="text-md/medium" color={r11}>{r9}</Text>;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
items3[2] = <Icon size={MEDIUM} source={importDefault(10787) /* metro dependency 10787 */} />;
return (
<TouchableHitBox {...touchableHitBoxProps}>
{items3}
</TouchableHitBox>
);
}
function FormChannelPickerOnPress() { // fn#124261, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16299:631, owner: FormChannelPicker.onPress, offset: 0x025ada5f, size: 131 bytes, params: 1, frame: 18
let value = environment.__proto__;
const value2 = undefined;
const defaultImport = importDefault(dependencyMap[8]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[10]);
value = value(dependencyMap[9], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'ChannelSelectorActionSheet', {guildId: guildId,
selectedChannelId: env0_2 == null ? value2 : env0_2.id, onChannelSelected: env0_3}]);
return value2;
}
@@ -0,0 +1,78 @@
/* Metro module 12670; source: modules/guild_role_subscriptions/native/components/FormDropdown.tsx; dependencies: [31, 661, 33, 4501, 6597, 697, 1305, 12671, 10787, 12672, 8792, 2] */
function _fun97078(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12860:6, offset: 0x02171e86, size: 379 bytes, params: 8, frame: 27
var object4;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
let value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
const createStyles = (require(4501) /* metro dependency 4501: createStyles */).createStyles;
object4 = {container: {'alignItems': 'center', 'flexDirection': 'row'}, content: {'marginStart': 8, 'flexGrow': 1}};
const object5 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
let PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED;
copyDataProperties(object5, textStyles(PRIMARY_MEDIUM, TEXT_MUTED, 16), undefined);
object4.placeholder = object5;
const object6 = {};
const value3 = textStyles;
PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
copyDataProperties(object6, value3(PRIMARY_MEDIUM, TEXT_DEFAULT, 16), undefined);
object4.text = object6;
value = Reflect.apply(createStyles, value, [object4]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormDropdown.tsx');
exports.default = FormDropdown;
exports.useFormDropdownStyles = value;
}
function LockedIcon() { // fn#97079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12860:399, offset: 0x02172001, size: 94 bytes, params: 1, frame: 17
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
return <Icon size={MEDIUM} source={importDefault(12671) /* metro dependency 12671 */} />;
}
function DropdownIcon() { // fn#97080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12860:492, offset: 0x0217205f, size: 125 bytes, params: 1, frame: 20
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
return (
<Icon
style={{transform: [{rotate: '90deg'}]}}
size={MEDIUM}
source={importDefault(10787) /* metro dependency 10787 */}
/>
);
}
function FormDropdown({disabled, label, leading, onPress, placeholder}) { // fn#97081, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12860:736, offset: 0x021720dc, size: 288 bytes, params: 2, frame: 25
const styles = useStyles();
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const value4 = ((Component) => <Component />)(disabled ? LockedIcon : DropdownIcon);
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const items2 = [styles.container];
items2[1] = value3.dropdownInput;
const r4 = disabled ? undefined : onPress;
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
return (
<TouchableHitBox
style={items2}
accessibilityRole="spinbutton"
disabled={disabled}
onPress={r4}
>
{leading}
<LegacyText style={[styles.content, label != null ? styles.text : styles.placeholder]}>
{label ?? placeholder}
</LegacyText>
{value4}
</TouchableHitBox>
);
}
@@ -0,0 +1,106 @@
/* Metro module 16094; source: modules/guild_role_subscriptions/native/components/FormEmojiPicker.tsx; dependencies: [31, 661, 1881, 33, 4501, 6597, 697, 12672, 3797, 13704, 13703, 5475, 16095, 8792, 8529, 1305, 3801, 1244, 10787, 2] */
function _fun124277(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124277, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16302:6, offset: 0x025aead0, size: 371 bytes, params: 8, frame: 27
var object4;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
const env0_3 = (require(1881) /* metro dependency 1881: EmojiConstants */).EmojiIntention;
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;
object4 = {container: {'alignItems': 'center', 'flexDirection': 'row'}, content: {'marginStart': 8, 'flexGrow': 1}};
const object5 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
let PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED;
copyDataProperties(object5, textStyles(PRIMARY_MEDIUM, TEXT_MUTED, 16), undefined);
object4.placeholder = object5;
const object6 = {};
const value3 = textStyles;
PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
copyDataProperties(object6, value3(PRIMARY_MEDIUM, TEXT_DEFAULT, 16), undefined);
object4.text = object6;
const env0_6 = Reflect.apply(createStyles, value, [object4]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormEmojiPicker.tsx');
exports.default = FormEmojiPicker;
}
function FormEmojiPicker(a0) { // fn#124278, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16302:539, offset: 0x025aec43, size: 624 bytes, params: 2, frame: 25
var r0;
var r10;
var defaultImport;
var intl;
const {emojiId, emojiName} = a0.emoji;
const guildId = a0.guildId;
const env0_1 = a0.onChange;
const styles = useStyles();
const value2 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
if (emojiId != null) {
r0 = emojiId;
} else {
defaultImport = importDefault(3797) /* metro dependency 3797: UnicodeEmojis */;
r0 = defaultImport.convertSurrogateToName(emojiName ?? '', false);
}
const value5 = (require(13704) /* metro dependency 13704: useEmojiByIdOrName */).useEmojiByIdOrName(guildId, r0);
const r6 = r0 != null ? ((Component) => <Component guildId={guildId} id={r0} />)(importDefault(13703) /* metro dependency 13703: EmojiIcon */) : ((Component) => <Component resizeMode="contain" source={importDefault(16095) /* metro dependency 16095 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const items4 = [styles.container];
items4[1] = value2.textInput;
const items2 = [r6];
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
const items3 = [styles.content];
items3[1] = value5 != null ? styles.text : styles.placeholder;
if (value5 != null) {
r10 = (require(3801) /* metro dependency 3801: EmojiUtils */).getAllEmojiNamesString(value5);
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r10 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.gXAN3P);
}
items2[1] = <LegacyText style={items3}>{r10}</LegacyText>;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const MEDIUM = Sizes.MEDIUM;
items2[2] = <Icon size={MEDIUM} source={importDefault(10787) /* metro dependency 10787 */} />;
return (
<TouchableHitBox
style={items4}
accessibilityRole="link"
onPress={function() {
require(dependencyMap[14]).openEmojiPickerActionSheet({guildId: guildId, onPressEmoji: _fun124280,
pickerIntention: EmojiIntention.GUILD_ROLE_BENEFIT_EMOJI});
}}
>
{items2}
</TouchableHitBox>
);
}
function FormEmojiPickerOnPress() { // fn#124279, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16302:908, owner: FormEmojiPicker.onPress, offset: 0x025aeeb3, size: 80 bytes, params: 1, frame: 14
const openEmojiPickerActionSheetModule = require(8529) /* metro dependency 8529: openEmojiPickerActionSheet */;
const openEmojiPickerActionSheet = openEmojiPickerActionSheetModule.openEmojiPickerActionSheet;
const GUILD_ROLE_BENEFIT_EMOJI = EmojiIntention.GUILD_ROLE_BENEFIT_EMOJI;
Reflect.apply(openEmojiPickerActionSheet, openEmojiPickerActionSheetModule, [{guildId: guildId,
onPressEmoji: onPressEmoji_124280, pickerIntention: GUILD_ROLE_BENEFIT_EMOJI}]);
}
function onPressOnPressEmoji(a0) { // fn#124280, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16302:973, owner: FormEmojiPicker.onPress.onPressEmoji, offset: 0x025aef03, size: 99 bytes, params: 2, frame: 13
var value;
if (a0.id != null) {
value = environment.__proto__;
if (onChange != null) {
onChange({emojiId: a0.id});
}
} else if (a0.optionallyDiverseSequence != null) {
value = environment.__proto__;
if (onChange != null) {
onChange({emojiName: a0.optionallyDiverseSequence});
}
}
}
@@ -0,0 +1,91 @@
/* Metro module 16060; source: modules/guild_role_subscriptions/native/components/FormGuildGatingModeSelector.tsx; dependencies: [31, 27, 33, 4501, 16061, 4496, 1244, 4573, 16063, 11427, 16064, 2] */
function _fun124006(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124006, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16268:6, offset: 0x025a4322, size: 248 bytes, params: 8, frame: 21
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 value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.Fragment;
const env0_7 = value.jsxs;
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {padding: 16},
space: {height: 8}, alertHeader: {paddingBottom: 16}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormGuildGatingModeSelector.tsx');
exports.default = FormGuildGatingModeSelector;
}
function FormGuildGatingModeSelector({isFullServerGating, onChange}) { // fn#124007, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16268:385, offset: 0x025a441a, size: 530 bytes, params: 2, frame: 29
const styles = useStyles();
const value2 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const binding = env0_3;
const value3 = binding.useCallback(function() {
onChange(false);
}, [onChange]);
const value4 = binding.useCallback(_fun124009, [onChange, isFullServerGating, styles]);
const object = {disabled: value2};
let value = importDefault(16063) /* metro dependency 16063: FormBigRadioBox */;
const object4 = {icon: importDefault(11427) /* metro dependency 11427 */};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object4.title = Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t.rXqxhF]);
object4.description = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.yQiJne);
object4.selected = !isFullServerGating;
object4.onPress = value3;
object4.disabled = value2;
value = ((Component) => <Component {...object4} />)(value);
const items2 = [value];
items2[1] = <View style={styles.space} />;
value = importDefault(16063) /* metro dependency 16063: FormBigRadioBox */;
const object6 = {icon: importDefault(16064) /* metro dependency 16064 */};
string = intl.string;
const WzC9s6 = (require(1244) /* metro dependency 1244: indexNative */).t.WzC9s6;
object6.title = Reflect.apply(string, intl, [WzC9s6]);
string = intl.string;
const WmagiB = (require(1244) /* metro dependency 1244: indexNative */).t.WmagiB;
object6.description = Reflect.apply(string, intl, [WmagiB]);
object6.selected = isFullServerGating;
object6.onPress = value4;
object6.disabled = value2;
items2[2] = ((Component) => <Component {...object6} />)(value);
return (
<View
style={styles.container}
accessibilityRole="radiogroup"
accessibilityState={object}
>
{items2}
</View>
);
}
function _fun124009() { // fn#124009, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16268:567, offset: 0x025a462c, size: 347 bytes, params: 1, frame: 27
var value2;
var defaultImport;
var show;
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var jsxRuntimeEnv1_6Binding;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var items2;
if (!isFullServerGating) {
value2 = environment.__proto__;
defaultImport = importDefault(4496) /* metro dependency 4496: AlertActionCreators */;
show = defaultImport.show;
object2 = {};
object2.confirmText = intl.string(t['NX+WJN']);
jsxRuntimeEnv1_6Binding = jsxRuntimeEnv1_6;
string = intl.string;
items2 = [<Text style={styles.alertHeader} variant="heading-lg/bold" color="mobile-text-heading-primary">{Reflect.apply(string,
intl, [t.dmVoOz])}</Text>];
string = intl.string;
items2[1] = <Text variant="text-md/normal">{Reflect.apply(string, intl, [t.mtwzdD])}</Text>;
object2.children = <>{items2}</>;
Reflect.apply(show, defaultImport, [object2]);
}
onChange(true);
}
@@ -0,0 +1,174 @@
/* Metro module 16067; source: modules/guild_role_subscriptions/native/components/FormImagePicker.tsx; dependencies: [5, 31, 27, 33, 4501, 697, 4660, 1457, 8792, 1244, 5475, 16068, 9646, 4573, 4578, 2] */
function _fun124054(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124054, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:6, offset: 0x025a5c0c, size: 579 bytes, params: 8, frame: 25
var object2;
const env0_0 = require;
const pickImage = function() {
return _pickImage.apply(this, arguments);
};
const closure = ImagePickerIcon;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
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 = {imageSelectionRow: {'flexDirection': 'row', 'justifyContent': 'space-between', 'marginHorizontal': 16},
buttonColumn: {'flex': 1, 'flexDirection': 'column', 'marginEnd': 16}, imageDescription: {'flexWrap': 'wrap',
'marginBottom': 16}, image: {'alignSelf': 'center', 'width': 84, 'height': 84},
imageCentered: {'alignSelf': 'center', 'width': 20, 'height': 20}};
object2.imageCircle = {borderRadius: 42};
const object4 = {};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object2.imageSquircle = object4;
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object2.imageContainerEmpty = {backgroundColor: BACKGROUND_BASE_LOWEST};
const object6 = {'alignItems': 'center', 'backgroundColor': null, 'borderRadius': null, 'top': 0, 'height': 24,
'justifyContent': 'center', 'right': 0, 'padding': 4, 'position': 'absolute', 'width': 24};
const INTERACTIVE_TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_DEFAULT;
object6.backgroundColor = INTERACTIVE_TEXT_DEFAULT;
object6.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.lg;
object2.editImageIcon = object6;
object2.standaloneIcon = {'top': -4, 'right': -4};
object2.disabled = {opacity: 0.3};
const env0_8 = Reflect.apply(createStyles, value, [object2]);
object2 = {CIRCLE: 0};
object2[0] = 'CIRCLE';
object2.SQUIRCLE = 1;
object2[1] = 'SQUIRCLE';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormImagePicker.tsx');
exports.default = FormImagePicker;
exports.PreviewShape = object2;
exports.ImagePickerIcon = closure;
}
function _pickImage() { // fn#124056, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:1039, offset: 0x025a5e4f, size: 50 bytes, params: 1, frame: 14
return env0_3(_fun124058).apply(this, arguments);
}
function ImagePickerIcon({style, image, imageUploadSize, setImage, previewResizeMode, previewShape, standalone, size, disabled}) { // fn#124059, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:1198, offset: 0x025a5eed, size: 607 bytes, params: 2, frame: 29
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const r19 = previewResizeMode === 'center' ? styles.imageCentered : styles.image;
const CIRCLE = env0_9.CIRCLE;
const r17 = previewShape === CIRCLE ? styles.imageCircle : styles.imageSquircle;
const value2 = env0_4.useMemo(_fun124060, [image, size]);
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const HNo5cG = (require(1244) /* metro dependency 1244: indexNative */).t.HNo5cG;
return (
<TouchableHitBox
accessibilityRole="button"
accessibilityLabel={Reflect.apply(string, intl, [HNo5cG])}
accessibilityState={{disabled: disabled}}
onPress={function() {
return pickImage(imageUploadSize, setImage);
}}
style={[styles.image, r17, styles.imageContainerEmpty, disabled && styles.disabled, style]}
disabled={disabled}
>
{image != null ? ((Component) => <Component style={[r19, style,
r17]} resizeMode={previewResizeMode ?? 'cover'} source={{uri: value2}} />)(importDefault(5475) /* metro dependency 5475: FastImage */) : ((ImagePlusIcon) => <ImagePlusIcon />)((require(16068) /* metro dependency 16068: ImagePlusIcon */).ImagePlusIcon)}
{image != null && !disabled && <View style={[styles.editImageIcon,
standalone && styles.standaloneIcon]}>{((PencilIcon) => <PencilIcon color="#292b30" size="sm" />)((require(9646) /* metro dependency 9646: PencilIcon */).PencilIcon)}</View>}
</TouchableHitBox>
);
}
function FormImagePicker(a0) { // fn#124062, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:2211, offset: 0x025a6225, size: 488 bytes, params: 2, frame: 32
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const description = a0.description;
const imageUploadSize = a0.imageUploadSize;
const image = a0.image;
const setImage = a0.setImage;
const disabled = a0.disabled;
const object2 = {'description': 0, 'imageUploadSize': 0, 'image': 0, 'setImage': 0, 'disabled': 0};
silentSetPrototypeOf(object2, null, undefined);
const value = copyDataProperties({}, a0, object2, undefined);
const styles = useStyles();
const r18 = image == null ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.bGPfSp) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0KOido']);
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text style={styles.imageDescription} variant="text-sm/medium" color="text-default">{description}</Text>;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<View style={styles.imageSelectionRow}>
<View style={styles.buttonColumn}>
{text}
<Button
text={r18}
variant="secondary"
onPress={function() {
return pickImage(imageUploadSize, setImage);
}}
size="md"
disabled={disabled}
/>
</View>
<ImagePickerIcon
{...value}
{...{['disabled']: disabled}}
{...{['imageUploadSize']: imageUploadSize}}
{...{['image']: image}}
{...{['setImage']: setImage}}
/>
</View>
);
}
function* _fun124058(a0, a1) { // fn#124058, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:1082, offset: 0x025a5e8c, size: 97 bytes, params: 3, frame: 14
if (true) {
value = environment.__proto__.__proto__;
value = env2_1(env2_2[6]);
yield value.openImagePicker({size: a0});
value = undefined;
if (false) {
return value;
}
var base64 = value.base64;
if (base64 != null) {
a1({uri: base64});
}
}
}
function _fun124060() { // fn#124060, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16275:1447, offset: 0x025a614c, size: 189 bytes, params: 1, frame: 18
var r0;
var sizeBinding;
var value3;
var moduleValue;
var getBestMediaProxySize;
var value;
let imageBinding = image;
const value2 = undefined;
let uri = imageBinding == null ? value2 : image.uri;
if (uri != null) {
uri = image.uri;
if (uri.startsWith('data:')) {
r0 = image.uri;
} else {
sizeBinding = size;
if (sizeBinding == null) {
r0 = image.uri;
} else {
imageBinding = image;
uri = imageBinding.uri;
value3 = environment.__proto__;
moduleValue = require(1457) /* metro dependency 1457: ImageLoaderUtils */;
getBestMediaProxySize = moduleValue.getBestMediaProxySize;
sizeBinding = size;
value = require(1457) /* metro dependency 1457: ImageLoaderUtils */;
value = Reflect.apply(getBestMediaProxySize, moduleValue, [sizeBinding * value.getDevicePixelRatio()]);
value = uri + ('?size=' + value);
imageBinding.uri = value;
r0 = value;
}
}
return r0;
}
return value2;
}
@@ -0,0 +1,91 @@
/* Metro module 16107; source: modules/guild_role_subscriptions/native/components/FormPriceTier.tsx; dependencies: [31, 16066, 661, 33, 1244, 12670, 5137, 44, 4080, 9059, 1962, 2] */
function _fun124343(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124343, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16315:6, offset: 0x025b2892, size: 192 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const roleTierEditStoreModule = require(16066) /* metro dependency 16066: RoleTierEditStore */;
const env0_3 = roleTierEditStoreModule.LoadingState;
const env0_4 = roleTierEditStoreModule.usePriceTiersAvailableInGuild;
const env0_5 = (require(661) /* metro dependency 661: Constants */).CurrencyCodes;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormPriceTier.tsx');
exports.default = FormPriceTier;
}
function FormPriceTier({disabled, guildId, price, onChange}) { // fn#124344, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16315:316, offset: 0x025b2952, size: 449 bytes, params: 2, frame: 23
var r5;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var LOADING;
var FormDropdown;
const value3 = usePriceTiersAvailableInGuild(guildId);
const tiers = value3.tiers;
const state = value3.state;
const env0_4 = value3.onRefresh;
const USD = CurrencyCodes.USD;
if (tiers == null) {
LOADING = LoadingState.LOADING;
r5 = state === LOADING ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ZTNur7) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t.R0RpRX);
FormDropdown = importDefault(12670) /* metro dependency 12670: FormDropdown */;
LOADING = LoadingState.LOADING;
return (
<FormDropdown
disabled={state === LOADING}
placeholder={r5}
onPress={function() {
return onRefresh(guildId);
}}
/>
);
}
const FormDropdown2 = importDefault(12670) /* metro dependency 12670: FormDropdown */;
return (
<FormDropdown2
label={price == null ? undefined : (require(5137) /* metro dependency 5137: PriceUtils */).formatPrice(price,
USD)}
disabled={disabled}
onPress={onPress_124346}
placeholder={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.nCOuYJ)}
/>
);
}
function FormPriceTierOnPress_124346() { // fn#124346, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16315:700, owner: FormPriceTier.onPress, offset: 0x025b2b13, size: 235 bytes, params: 1, frame: 24
var environment;
let value = environment.__proto__;
const value2 = undefined;
const defaultImport = importDefault(dependencyMap[7]);
const tiersBinding = tiers;
defaultImport(tiersBinding != null, 'handleSelectPrice must only be called if tiers != null');
const defaultImport2 = importDefault(dependencyMap[8]);
const openLazy = defaultImport2.openLazy;
value = require(dependencyMap[10]);
value = value(dependencyMap[9], dependencyMap.paths);
const object2 = {};
const intl = require(dependencyMap[4]).intl;
object2.title = intl.string(require(dependencyMap[4]).t.nCOuYJ);
object2.items = tiersBinding.map(_fun124347);
object2.onItemSelect = onItemSelect_124348;
object2.selectedItem = price ?? value2;
object2.hasIcons = false;
Reflect.apply(openLazy, defaultImport2, [value, 'GuildRoleSubscriptionPriceTierSelect', object2]);
return value2;
}
function _fun124347(a0) { // fn#124347, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16315:916, offset: 0x025b2bfe, size: 59 bytes, params: 2, frame: 14
const object2 = {};
const value = environment.__proto__.__proto__;
object2.label = (require(5137) /* metro dependency 5137: PriceUtils */).formatPrice(a0, USD);
object2.value = a0;
return object2;
}
function onPressOnItemSelect_124348(a0) { // fn#124348, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16315:964, owner: FormPriceTier.onPress.onItemSelect, offset: 0x025b2c39, size: 64 bytes, params: 2, frame: 11
let value = environment.__proto__;
if (onChange != null) {
onChange(a0);
}
value = environment.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
}
@@ -0,0 +1,21 @@
/* Metro module 16105; source: modules/guild_role_subscriptions/native/components/FormRoleColorPicker.tsx; dependencies: [31, 661, 33, 4501, 4080, 14392, 1962, 12670, 13187, 673, 2] */
function _fun124335(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124335, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16313:6, offset: 0x025b1f47, size: 211 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(661) /* metro dependency 661: Constants */).DEFAULT_ROLE_COLOR;
const env0_5 = (require(33) /* metro dependency 33 */).jsx;
const env0_6 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({rowColorBlock: {'marginHorizontal': 0,
'marginVertical': 0, 'marginRight': 8, 'minWidth': 24, 'height': 24, 'borderRadius': 3}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormRoleColorPicker.tsx');
exports.default = FormRoleColorPicker_124336;
}
function FormRoleColorPicker_124336({color = DEFAULT_ROLE_COLOR, disabled, onChange}) { // fn#124336, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16313:284, offset: 0x025b201a, size: 210 bytes, params: 2, frame: 22
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const value2 = env0_3.useCallback(_fun124337, [color, onChange]);
return ((Component) => <Component leading={((Component) => <Component color={color} style={styles.rowColorBlock} onSelect={value2} />)(importDefault(13187) /* metro dependency 13187: ColorBlock */)} label={(require(673) /* metro dependency 673: ColorUtils */).int2hex(color)} disabled={disabled} onPress={value2} />)(importDefault(12670) /* metro dependency 12670: FormDropdown */);
}
@@ -0,0 +1,25 @@
/* Metro module 13680; source: modules/guild_role_subscriptions/native/components/FormSeparator.tsx; dependencies: [31, 27, 33, 4501, 697, 2] */
function _fun104511(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104511, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13877:6, offset: 0x022985bb, size: 250 bytes, params: 8, frame: 21
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_0 = (require(27) /* metro dependency 27 */).View;
const env0_1 = (require(33) /* metro dependency 33 */).jsx;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
const env0_2 = Reflect.apply(createStyles, createStylesModule, [{container: {alignSelf: 'stretch'},
margins: {marginTop: 16}, separator: {'width': '100%', 'height': 1, backgroundColor: BORDER_SUBTLE}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormSeparator.tsx');
exports.default = FormSeparator_104512;
}
function FormSeparator_104512({style, withoutMargins}) { // fn#104512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13877:405, offset: 0x022986b5, size: 111 bytes, params: 2, frame: 19
const styles = useStyles();
return (
<View style={[styles.container, withoutMargins ? undefined : styles.margins, style]}>
<View style={styles.separator} />
</View>
);
}
@@ -0,0 +1,35 @@
/* Metro module 12672; source: modules/guild_role_subscriptions/native/components/FormStyles.tsx; dependencies: [661, 4501, 6597, 697, 2] */
function _fun97083(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#97083, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12862:6, offset: 0x02172242, size: 395 bytes, params: 8, frame: 27
var object4;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
object4 = {'padding': 16, 'flexGrow': 0, 'borderRadius': 8, 'marginHorizontal': 16};
let value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object6 = {header: {'marginTop': 24, 'paddingStart': 16}};
const object7 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
let PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
let INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
copyDataProperties(object7, textStyles(PRIMARY_MEDIUM, INTERACTIVE_TEXT_ACTIVE, 16), undefined);
copyDataProperties(object7, object4, undefined);
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object7['backgroundColor'] = BACKGROUND_BASE_LOWEST;
object6.textInput = object7;
let BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object6.disabledTextInput = {'padding': 16, 'width': '100%', backgroundColor: BACKGROUND_SURFACE_HIGH};
const object8 = {};
const value3 = textStyles;
PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
copyDataProperties(object8, value3(PRIMARY_MEDIUM, INTERACTIVE_TEXT_ACTIVE, 16), undefined);
copyDataProperties(object8, object4, undefined);
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object8['backgroundColor'] = BACKGROUND_SURFACE_HIGH;
object6.dropdownInput = object8;
value = Reflect.apply(createStyles, value, [object6]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormStyles.tsx');
exports.default = value;
}
@@ -0,0 +1,55 @@
/* Metro module 16085; source: modules/guild_role_subscriptions/native/components/FormTrialActiveUserLimitPicker.tsx; dependencies: [31, 33, 16086, 12670, 1244, 4080, 9059, 1962, 2] */
function _fun124202(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124202, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16293:6, offset: 0x025abec4, size: 138 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormTrialActiveUserLimitPicker.tsx');
exports.default = FormTrialActiveUserLimitPicker;
}
function FormTrialActiveUserLimitPicker({activeTrialUserlimit, onChange, disabled}) { // fn#124203, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16293:299, offset: 0x025abf4e, size: 180 bytes, params: 2, frame: 21
var r6;
var intl;
const env0_2 = (importDefault(16086) /* metro dependency 16086: useTrialActiveUserLimitOptions */)();
const FormDropdown = importDefault(12670) /* metro dependency 12670: FormDropdown */;
if (activeTrialUserlimit == null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r6 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.zHfL6o);
} else {
r6 = activeTrialUserlimit.toString();
}
return (
<FormDropdown
label={r6}
onPress={onPress_124204}
disabled={disabled}
/>
);
}
function FormTrialActiveUserLimitPickerOnPress() { // fn#124204, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16293:494, owner: FormTrialActiveUserLimitPicker.onPress, offset: 0x025ac002, size: 175 bytes, params: 1, frame: 20
var environment;
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[5]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[7]);
value = value(dependencyMap[6], dependencyMap.paths);
const object2 = {};
const intl = require(dependencyMap[4]).intl;
object2.title = intl.string(require(dependencyMap[4]).t['/JD9oe']);
object2.items = env0_2;
object2.onItemSelect = onItemSelect_124205;
object2.selectedItem = activeTrialUserlimit;
object2.hasIcons = false;
Reflect.apply(openLazy, defaultImport, [value, 'GuildRoleSubscriptionTrialActiveUserLimitSelect', object2]);
}
function onPressOnItemSelect_124205(a0) { // fn#124205, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16293:596, owner: FormTrialActiveUserLimitPicker.onPress.onItemSelect, offset: 0x025ac0b1, size: 59 bytes, params: 2, frame: 12
let value = environment.__proto__;
onChange(a0);
value = environment.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet('GuildRoleSubscriptionTrialActiveUserLimitSelect');
}
@@ -0,0 +1,61 @@
/* Metro module 16084; source: modules/guild_role_subscriptions/native/components/FormTrialIntervalPicker.tsx; dependencies: [31, 33, 12670, 1244, 13694, 4080, 9059, 1962, 2] */
function _fun124198(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124198, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16292:6, offset: 0x025abc75, size: 138 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/FormTrialIntervalPicker.tsx');
exports.default = FormTrialIntervalPicker;
}
function FormTrialIntervalPicker({interval, onChange, trialIntervalOptions, disabled}) { // fn#124199, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16292:285, offset: 0x025abcff, size: 194 bytes, params: 2, frame: 21
var r6;
var intl;
var value;
const FormDropdown = importDefault(12670) /* metro dependency 12670: FormDropdown */;
if (interval == null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r6 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.WZG1BU);
} else {
value = require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */;
value = value.formatPlanIntervalDuration(interval);
r6 = value;
}
return (
<FormDropdown
label={r6}
onPress={onPress_124200}
disabled={disabled}
/>
);
}
function FormTrialIntervalPickerOnPress() { // fn#124200, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16292:493, owner: FormTrialIntervalPicker.onPress, offset: 0x025abdc1, size: 188 bytes, params: 1, frame: 20
var environment;
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[5]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[7]);
value = value(dependencyMap[6], dependencyMap.paths);
const object2 = {};
const intl = require(dependencyMap[3]).intl;
object2.title = intl.string(require(dependencyMap[3]).t.m1KuWd);
object2.items = trialIntervalOptions;
object2.onItemSelect = onItemSelect_124201;
const intervalBinding = interval;
const value3 = null;
object2.selectedItem = value3 != intervalBinding ? interval : value3;
object2.hasIcons = false;
Reflect.apply(openLazy, defaultImport, [value, 'GuildRoleSubscriptionTrialIntervalSelect', object2]);
}
function onPressOnItemSelect_124201(a0) { // fn#124201, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16292:592, owner: FormTrialIntervalPicker.onPress.onItemSelect, offset: 0x025abe7d, size: 71 bytes, params: 2, frame: 12
let value = environment.__proto__;
if (onChange != null) {
onChange(a0);
}
value = environment.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet('GuildRoleSubscriptionTrialIntervalSelect');
}
@@ -0,0 +1,28 @@
/* Metro module 16103; source: modules/guild_role_subscriptions/native/components/GuildPremiumRoleSubscribeButton.tsx; dependencies: [31, 33, 4501, 8590, 1244, 2] */
function _fun124326(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124326, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16311:6, offset: 0x025b168a, size: 174 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(33) /* metro dependency 33 */).jsx;
const env0_3 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({crButton: {marginVertical: 16}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildPremiumRoleSubscribeButton.tsx');
exports.GuildPremiumRoleSubscribeButton = GuildPremiumRoleSubscribeButton;
}
function GuildPremiumRoleSubscribeButton({onPress}) { // fn#124327, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16311:327, offset: 0x025b1738, size: 132 bytes, params: 2, frame: 20
const styles = useStyles();
const CreatorRevenueButton = (require(8590) /* metro dependency 8590: CreatorRevenueButton */).CreatorRevenueButton;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const BEeXib = (require(1244) /* metro dependency 1244: indexNative */).t.BEeXib;
return (
<CreatorRevenueButton
text={Reflect.apply(string, intl, [BEeXib])}
onPress={onPress}
style={styles.crButton}
disabled
/>
);
}
@@ -0,0 +1,440 @@
/* Metro module 16090; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitEditorModal.tsx; dependencies: [5, 57, 31, 27, 3793, 1878, 16089, 13668, 661, 33, 4501, 697, 6597, 12672, 5278, 4071, 1305, 1244, 1585, 16091, 4805, 7972, 16093, 8127, 16094, 2] */
function _fun124244(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124244, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:6, offset: 0x025acb9d, size: 544 bytes, params: 8, frame: 27
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importDefault(57) /* metro dependency 57 */;
let value = importAll(31) /* metro dependency 31 */;
const value2 = require(27) /* metro dependency 27 */;
const env0_5 = value2.View;
const env0_6 = value2.ScrollView;
const relationshipStore = importDefault(3793) /* metro dependency 3793: RelationshipStore */;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
const guildRoleSubscriptionBenefitEditorModalStateStoreModule = importAll(16089) /* metro dependency 16089: GuildRoleSubscriptionBenefitEditorModalStateStore */;
const guildRoleSubscriptionsConstantsModule = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_10 = guildRoleSubscriptionsConstantsModule.GuildRoleSubscriptionBenefitTypes;
const env0_11 = guildRoleSubscriptionsConstantsModule.MAX_SUBSCRIPTION_BENEFIT_DESCRIPTION_LENGTH;
const env0_12 = guildRoleSubscriptionsConstantsModule.MAX_SUBSCRIPTION_BENEFIT_NAME_LENGTH;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
const value4 = require(33) /* metro dependency 33 */;
const env0_13 = value4.jsx;
const env0_14 = value4.jsxs;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object2 = {};
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object2.container = {'backgroundColor': null, 'display': 'flex', 'flexDirection': 'column',
'justifyContent': 'space-between', 'height': '100%', backgroundColor: BACKGROUND_BASE_LOW};
object2.scrollContainer = {flexGrow: 1};
object2.deleteButton = {'flexDirection': 'row', 'marginTop': 16, 'alignItems': 'center', 'justifyContent': 'center'};
object2.deleteIcon = {'width': 20, 'height': 20};
const object3 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
const PRIMARY_SEMIBOLD = Fonts.PRIMARY_SEMIBOLD;
const RED_400 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.RED_400;
copyDataProperties(object3, textStyles(PRIMARY_SEMIBOLD, RED_400, 16), undefined);
object3['marginStart'] = 8;
object3['lineHeight'] = 20;
object2.deleteLabel = object3;
const env0_15 = Reflect.apply(createStyles, createStylesModule, [object2]);
value = value.forwardRef(_fun124246);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitEditorModal.tsx');
exports.default = value;
}
function DeleteButton({onDelete}) { // fn#124245, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:810, offset: 0x025acdbd, size: 306 bytes, params: 2, frame: 22
const styles = useStyles();
const value2 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
const items2 = [value2.textInput];
items2[1] = styles.deleteButton;
const TrashIcon = (require(4071) /* metro dependency 4071: TrashIcon */).TrashIcon;
const RED_400 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.RED_400;
const trashIcon = <TrashIcon style={styles.deleteIcon} color={RED_400} size="custom" />;
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<PressableOpacity
style={items2}
accessibilityRole="button"
onPress={onDelete}
>
{trashIcon}
<LegacyText style={styles.deleteLabel}>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.p4Bh7f)}
</LegacyText>
</PressableOpacity>
);
}
function _fun124246(a0) { // fn#124246, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:1201, offset: 0x025aceef, size: 1637 bytes, params: 2, frame: 40
var r12;
var r14;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const FormInput = (require(7972) /* metro dependency 7972: native */).FormInput;
const env0_0 = a0;
const value2 = undefined;
const styles = useStyles();
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const value4 = GuildRoleSubscriptionBenefitEditorModalStateStore.useNameState();
const binding = env0_4;
const value5 = binding(value4, 2);
const value6 = 0;
const property = value5[value6];
const property2 = value5[1];
const useEmojiIdState = GuildRoleSubscriptionBenefitEditorModalStateStore.useEmojiIdState;
const value7 = binding(Reflect.apply(useEmojiIdState, GuildRoleSubscriptionBenefitEditorModalStateStore, []), 2);
const property3 = value7[value6];
var env0_4 = value7[1];
const useEmojiNameState = GuildRoleSubscriptionBenefitEditorModalStateStore.useEmojiNameState;
const value8 = binding(Reflect.apply(useEmojiNameState, GuildRoleSubscriptionBenefitEditorModalStateStore, []), 2);
const property4 = value8[value6];
const env0_6 = value8[1];
const useDescriptionState = GuildRoleSubscriptionBenefitEditorModalStateStore.useDescriptionState;
const value9 = binding(Reflect.apply(useDescriptionState, GuildRoleSubscriptionBenefitEditorModalStateStore, []), 2);
const property5 = value9[value6];
const property6 = value9[1];
const useRefIdState = GuildRoleSubscriptionBenefitEditorModalStateStore.useRefIdState;
const value10 = binding(Reflect.apply(useRefIdState, GuildRoleSubscriptionBenefitEditorModalStateStore, []), 2);
const property7 = value10[value6];
const env0_9 = value10[1];
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const value11 = null;
let length = value11 == property3 ? value2 : property3.length;
let r0 = value11 != length ? length : value6;
const value12 = r0 > value6;
if (value12) {
r12 = value12;
} else {
length = value11 == property4 ? value2 : property4.length;
r12 = (value11 != length ? length : value6) > value6;
}
if (r12) {
if (a0.benefitType === GuildRoleSubscriptionBenefitTypes.CHANNEL) {
r0 = value11 != property7;
} else {
length = value11 == property ? value2 : property.length;
r0 = value11 != length ? length : value6;
r0 = r0 > value6;
}
r12 = r0;
}
const value16 = _fun124247();
const value17 = _fun124251();
let benefitType = a0.benefitType;
let CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
const r21 = benefitType === CHANNEL ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.Odqwp9) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0rVUnI']);
benefitType = a0.benefitType;
CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
const r23 = benefitType === CHANNEL ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t.GK18KJ) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['kV54/Y']);
benefitType = a0.benefitType;
CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
const r16 = benefitType === CHANNEL ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t['DDUpp+']) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t.NNqncc);
benefitType = a0.benefitType;
CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
if (benefitType === CHANNEL) {
r14 = ((Component) => <Component channelId={property7} guildId={a0.guildId} onChange={onChange_124255} />)(importDefault(16091) /* metro dependency 16091: FormChannelPicker */);
} else {
r14 = <FormInput style={value3.textInput} showTopContainer={false} multiline={false} maxLength={MAX_SUBSCRIPTION_BENEFIT_NAME_LENGTH} value={property} placeholder={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['kV54/Y'])} onChange={property2} autoFocus clearButtonVisibility={(require(1305) /* metro dependency 1305: native */).ClearButtonVisibility.WITH_CONTENT} />;
}
const value26 = ((Component) => <Component title={r21} onClose={a0.onClose} canSave={r12} onSave={value16} listingId={a0.listingId} />)(importDefault(16093) /* metro dependency 16093: GuildRoleSubscriptionBenefitModalHeader */);
const items2 = [styles.scrollContainer];
items2[1] = {paddingBottom: bottom + 32 + 16};
const items3 = [((Component) => <Component style={value3.header}>{r23}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */),
r14];
items3[2] = ((Component) => <Component style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.sMOuuS)}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */);
items3[3] = ((Component) => <Component emoji={{emojiId: property3,
emojiName: property4}} guildId={a0.guildId} onChange={onChange_124256} />)(importDefault(16094) /* metro dependency 16094: FormEmojiPicker */);
items3[4] = ((Component) => <Component style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['74JctW'])}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */);
items3[5] = <FormInput style={value3.textInput} showTopContainer={false} multiline maxLength={MAX_SUBSCRIPTION_BENEFIT_DESCRIPTION_LENGTH} numberOfLines={3} value={property5} onChange={property6} placeholder={r16} />;
items3[6] = value11 == a0.onDelete ? value11 : <DeleteButton onDelete={value17} />;
return (
<View style={styles.container}>
{value26}
<ScrollView
keyboardShouldPersistTaps="handled"
showsVerticalScrollIndicator={false}
alwaysBounceVertical={false}
contentContainerStyle={items2}
>
{items3}
</ScrollView>
</View>
);
}
function _fun124247() { // fn#124247, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:1658, offset: 0x025ad554, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun124249);
return _fun124250;
}
function _fun124251() { // fn#124251, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:1951, offset: 0x025ad644, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun124253);
return _fun124254;
}
function onChange_124255(a0) { // fn#124255, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:2521, offset: 0x025ad6c7, size: 77 bytes, params: 2, frame: 17
let binding = env0_9;
binding(a0.id);
binding = env0_2;
const useChannelNameModule = require(4805) /* metro dependency 4805: useChannelName */;
binding(useChannelNameModule.computeChannelName(a0, UserStore, RelationshipStore));
}
function onChange_124256({emojiId, emojiName}) { // fn#124256, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:3297, offset: 0x025ad714, size: 40 bytes, params: 2, frame: 13
env0_4(emojiId);
env0_6(emojiName);
}
function* _fun124249() { // fn#124249, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:1678, offset: 0x025ad583, size: 193 bytes, params: 1, frame: 14
var RelationshipStore2;
var object2;
var binding;
var value5;
var onSave;
var value6;
var value7;
var value8;
var onClose;
var error;
if (true) {
reducibleJoin3: while (true) {
reduciblePort32: while (true) {
exceptionLanding31: while (true) {
value = environment.__proto__.__proto__;
if (env2_3 != null) {
break reducibleJoin3;
}
if (View == null) {
break reduciblePort32;
}
break reducibleJoin3;
}
break reduciblePort32;
}
return undefined;
}
var benefitType = require.benefitType;
var CHANNEL = env3_10.CHANNEL;
if (benefitType === CHANNEL) {
reducibleJoin5: while (true) {
if (UserStore == null) {
return undefined;
}
break reducibleJoin5;
}
}
try {
object2 = {};
} catch (error) {
break exceptionLanding31;
}
try {
} catch (error) {
break exceptionLanding31;
}
try {
object2.name = importDefault;
} catch (error) {
break exceptionLanding31;
}
try {
binding = env2_3;
} catch (error) {
break exceptionLanding31;
}
try {
object2.emoji_id = binding;
} catch (error) {
break exceptionLanding31;
}
try {
} catch (error) {
break exceptionLanding31;
}
try {
object2.emoji_name = View;
} catch (error) {
break exceptionLanding31;
}
try {
} catch (error) {
break exceptionLanding31;
}
var value4 = undefined;
try {
value5 = RelationshipStore === '';
} catch (error) {
break exceptionLanding31;
}
reducibleJoin16: while (true) {
if (value5) {
RelationshipStore2 = value4;
break reducibleJoin16;
}
try {
} catch (error) {
break exceptionLanding31;
}
RelationshipStore2 = RelationshipStore;
break reducibleJoin16;
}
try {
object2.description = RelationshipStore2;
} catch (error) {
break exceptionLanding31;
}
try {
} catch (error) {
break exceptionLanding31;
}
try {
benefitType = require.benefitType;
} catch (error) {
break exceptionLanding31;
}
try {
object2.ref_type = benefitType;
} catch (error) {
break exceptionLanding31;
}
try {
} catch (error) {
break exceptionLanding31;
}
try {
object2.ref_id = UserStore;
} catch (error) {
break exceptionLanding31;
}
try {
onSave = require.onSave;
} catch (error) {
break exceptionLanding31;
}
try {
value6 = Reflect.apply(onSave, require, [object2]);
} catch (error) {
break exceptionLanding31;
}
yield value6;
try {
value7 = undefined;
value8 = false;
} catch (error) {
break exceptionLanding31;
}
if (value8) {
return value7;
}
try {
} catch (error) {
break exceptionLanding31;
}
try {
onClose = require.onClose;
} catch (error) {
break exceptionLanding31;
}
try {
Reflect.apply(onClose, require, []);
} catch (error) {
break exceptionLanding31;
}
}
}
function* _fun124253() { // fn#124253, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16298:1971, offset: 0x025ad673, size: 84 bytes, params: 1, frame: 12
var r1;
var onDelete;
var value3;
var value5;
var value6;
var value7;
var onClose;
var error;
if (true) {
value = environment.__proto__.__proto__;
try {
} catch (error) {
return undefined;
}
try {
onDelete = require.onDelete;
} catch (error) {
return undefined;
}
try {
value3 = onDelete == null;
} catch (error) {
return undefined;
}
if (value3) {
yield undefined;
try {
value6 = undefined;
value7 = false;
} catch (error) {
return undefined;
}
if (value7) {
return value6;
}
try {
} catch (error) {
return undefined;
}
try {
onClose = require.onClose;
} catch (error) {
return undefined;
}
try {
Reflect.apply(onClose, require, []);
} catch (error) {
}
} else {
try {
} catch (error) {
return undefined;
}
try {
onDelete = require.onDelete;
} catch (error) {
return undefined;
}
try {
value5 = Reflect.apply(onDelete, require, []);
r1 = value5;
} catch (error) {
return undefined;
}
yield r1;
try {
value6 = undefined;
value7 = false;
} catch (error) {
return undefined;
}
if (value7) {
return value6;
}
try {
} catch (error) {
return undefined;
}
try {
onClose = require.onClose;
} catch (error) {
return undefined;
}
try {
Reflect.apply(onClose, require, []);
} catch (error) {
}
}
}
}
@@ -0,0 +1,150 @@
/* Metro module 16089; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitEditorModalStateStore.tsx; dependencies: [685, 690, 3769, 2] */
function _fun124218(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124218, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:6, offset: 0x025ac600, size: 256 bytes, params: 8, frame: 19
const env0_0 = require;
let Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
Object = global.Object;
const env0_2 = Object.freeze({name: '', emojiId: undefined, emojiName: undefined, description: undefined,
refId: undefined});
const env0_3 = (require(685) /* metro dependency 685 */).createWithEqualityFn(_fun124219);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitEditorModalStateStore.tsx');
exports.resetImperatively = resetImperatively_124232;
exports.initializeImperatively = initializeImperatively;
exports.useDescriptionState = useDescriptionState;
exports.useEmojiIdState = useEmojiIdState;
exports.useEmojiNameState = useEmojiNameState;
exports.useNameState = useNameState;
exports.useRefIdState = useRefIdState;
}
function _fun124219(a0) { // fn#124219, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:219, offset: 0x025ac700, size: 123 bytes, params: 2, frame: 13
const env0_0 = a0;
const object2 = {};
copyDataProperties(object2, env0_2, undefined);
object2['setEmojiId'] = setEmojiId;
object2['setEmojiName'] = setEmojiName;
object2['setName'] = setName_124224;
object2['setDescription'] = setDescription;
object2['setRefId'] = setRefId;
object2['reset'] = reset_124230;
return object2;
}
function resetImperatively_124232() { // fn#124232, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:725, offset: 0x025ac962, size: 31 bytes, params: 1, frame: 9
env0_3.getState().reset();
}
function initializeImperatively(a0) { // fn#124233, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:801, offset: 0x025ac981, size: 138 bytes, params: 2, frame: 17
const state = env0_3.getState();
const setDescription = state.setDescription;
const setEmojiId = state.setEmojiId;
const setEmojiName = state.setEmojiName;
const setName = state.setName;
const setRefId = state.setRefId;
state.reset();
if (a0.description != null) {
setDescription(a0.description);
}
setEmojiId(a0.emoji_id);
setEmojiName(a0.emoji_name);
setName(a0.name);
if (a0.ref_id != null) {
setRefId(a0.ref_id);
}
}
function useDescriptionState() { // fn#124234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:1074, offset: 0x025aca0b, size: 52 bytes, params: 1, frame: 13
return env0_3(function({description, setDescription}) {
return [description, setDescription];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useEmojiIdState() { // fn#124236, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:1194, offset: 0x025aca5b, size: 52 bytes, params: 1, frame: 13
return env0_3(function({emojiId, setEmojiId}) {
return [emojiId, setEmojiId];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useEmojiNameState() { // fn#124238, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:1304, offset: 0x025acaac, size: 52 bytes, params: 1, frame: 13
return env0_3(function({emojiName, setEmojiName}) {
return [emojiName, setEmojiName];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useNameState() { // fn#124240, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:1415, offset: 0x025acafd, size: 52 bytes, params: 1, frame: 13
return env0_3(function({name, setName}) {
return [name, setName];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function useRefIdState() { // fn#124242, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:1512, offset: 0x025acb4d, size: 52 bytes, params: 1, frame: 13
return env0_3(function({refId, setRefId}) {
return [refId, setRefId];
}, (require(3769) /* metro dependency 3769 */).shallow);
}
function setEmojiId(a0) { // fn#124220, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:229, offset: 0x025ac77b, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124221);
}
function setEmojiName(a0) { // fn#124222, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:287, offset: 0x025ac7cf, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124223);
}
function setName_124224(a0) { // fn#124224, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:349, offset: 0x025ac823, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124225);
}
function setDescription(a0) { // fn#124226, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:401, offset: 0x025ac876, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124227);
}
function setRefId(a0) { // fn#124228, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:467, offset: 0x025ac8c9, size: 54 bytes, params: 2, frame: 12
var environment;
const env0_0 = a0;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124229);
}
function reset_124230() { // fn#124230, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:521, offset: 0x025ac91c, size: 47 bytes, params: 1, frame: 12
var environment;
const value = environment.__proto__;
(require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun124231);
}
function _fun124221() { // fn#124221, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:265, offset: 0x025ac7b1, size: 30 bytes, params: 1, frame: 11
return env1_0({emojiId: env0_0});
}
function _fun124223() { // fn#124223, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:325, offset: 0x025ac805, size: 30 bytes, params: 1, frame: 11
return env1_0({emojiName: env0_0});
}
function _fun124225() { // fn#124225, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:382, offset: 0x025ac859, size: 29 bytes, params: 1, frame: 11
return env1_0({name: env0_0});
}
function _fun124227() { // fn#124227, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:441, offset: 0x025ac8ac, size: 29 bytes, params: 1, frame: 11
return env1_0({description: env0_0});
}
function _fun124229() { // fn#124229, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:501, offset: 0x025ac8ff, size: 29 bytes, params: 1, frame: 11
return env1_0({refId: env0_0});
}
function _fun124231() { // fn#124231, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16297:551, offset: 0x025ac94b, size: 23 bytes, params: 1, frame: 11
return env1_0(env2_2);
}
@@ -0,0 +1,74 @@
/* Metro module 16093; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitModalHeader.tsx; dependencies: [57, 31, 27, 661, 33, 4501, 697, 6597, 13690, 6618, 8792, 4573, 1244, 1305, 2] */
function _fun124275(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124275, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16301:6, offset: 0x025ae61b, size: 554 bytes, params: 8, frame: 28
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
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 = {};
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object2.headerContainer = {'alignItems': 'center', 'backgroundColor': null, 'flexDirection': 'row',
'justifyContent': 'space-between', 'paddingBottom': 8, 'paddingHorizontal': 16,
backgroundColor: BACKGROUND_BASE_LOWEST};
object2.headerButtonContainer = {'flexDirection': 'row', 'alignSelf': 'center', 'minWidth': 60};
object2.headerButtonStart = {alignItems: 'flex-start'};
object2.headerButtonEnd = {alignItems: 'flex-end'};
const object3 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
let PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
copyDataProperties(object3, textStyles(PRIMARY_MEDIUM, INTERACTIVE_TEXT_ACTIVE, 16), undefined);
object2.headerButton = object3;
const object4 = {};
const value3 = textStyles;
PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const TEXT_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_MUTED;
copyDataProperties(object4, value3(PRIMARY_MEDIUM, TEXT_MUTED, 16), undefined);
object2.disabledButton = object4;
object2.titleContainer = {'flex': 1, 'flexDirection': 'column'};
const object8 = {};
const value4 = textStyles;
const DISPLAY_EXTRABOLD = Fonts.DISPLAY_EXTRABOLD;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
copyDataProperties(object8, value4(DISPLAY_EXTRABOLD, MOBILE_TEXT_HEADING_PRIMARY, 18), undefined);
object8['textAlign'] = 'center';
object2.title = object8;
object2.subtitle = {textAlign: 'center'};
const env0_8 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitModalHeader.tsx');
exports.default = GuildRoleSubscriptionBenefitModalHeader;
}
function GuildRoleSubscriptionBenefitModalHeader({title, canSave, onSave, onClose, listingId}) { // fn#124276, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16301:1021, offset: 0x025ae845, size: 651 bytes, params: 2, frame: 34
const styles = useStyles();
const property = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useName(listingId),
1)[0];
const SafeAreaPaddingView = (require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView;
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const items3 = [styles.headerButtonContainer];
items3[1] = styles.headerButtonStart;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const items2 = [<TouchableHitBox style={items3} accessibilityRole="button" onPress={onClose}><Text style={styles.headerButton} variant="text-md/medium" color="interactive-text-active">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ETE/oC'])}</Text></TouchableHitBox>];
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
items2[1] = <View style={styles.titleContainer}><LegacyText style={styles.title} accessibilityRole="header">{title}</LegacyText><Text style={styles.subtitle} variant="text-xs/medium" color="text-default">{property}</Text></View>;
const defaultImport2 = TouchableHitBox;
const value6 = !canSave;
items2[2] = ((Component) => <Component style={[styles.headerButtonContainer,
styles.headerButtonEnd]} accessibilityRole="button" disabled={value6} onPress={onSave}><LegacyText style={[styles.headerButton,
canSave ? value6 : styles.disabledButton]}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+'])}</LegacyText></Component>)(defaultImport2);
return (
<SafeAreaPaddingView top style={styles.headerContainer}>
{items2}
</SafeAreaPaddingView>
);
}
@@ -0,0 +1,122 @@
/* Metro module 16097; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitPreview.tsx; dependencies: [31, 27, 13668, 33, 4501, 13703, 1305, 10787, 4573, 3797, 13696, 4805, 6647, 1244, 2] */
function _fun124298(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124298, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:6, offset: 0x025af91b, size: 416 bytes, params: 8, frame: 20
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 env0_4 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionBenefitTypes;
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({container: {'flexDirection': 'row',
'justifyContent': 'flex-start'}, emojiContainer: {'width': 24, 'height': 24, 'alignSelf': 'flex-start',
'alignItems': 'center', 'justifyContent': 'center', 'marginEnd': 16}, benefitColumn: {'flexDirection': 'column',
'flexGrow': 1, 'flex': 1, 'alignItems': 'flex-start', 'justifyContent': 'center'},
benefitDescription: {'flex': 1, 'marginTop': 2}, channelRow: {'flexDirection': 'row', 'alignItems': 'center',
'justifyContent': 'center'}, channelIcon: {'width': 16, 'height': 16, 'marginEnd': 8},
emojiRow: {'flexDirection': 'row', 'justifyContent': 'flex-start', 'alignItems': 'center'},
emojiColons: {paddingHorizontal: 2}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionBenefitPreview.tsx');
exports.GuildRoleSubscriptionBenefitPreview = GuildRoleSubscriptionBenefitPreview;
}
function BaseBenefitRow({emoji, children, contentStyle, guildId, isInteractive}) { // fn#124299, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:772, offset: 0x025afabb, size: 275 bytes, params: 2, frame: 27
isInteractive = isInteractive === undefined || isInteractive;
const styles = useStyles();
const items2 = [<View style={styles.emojiContainer}>{((Component) => <Component guildId={guildId} id={emoji} />)(importDefault(13703) /* metro dependency 13703: EmojiIcon */)}</View>];
items2[1] = <View style={[styles.benefitColumn, contentStyle]}>{children}</View>;
items2[2] = isInteractive === true && ((Icon) => <Icon source={importDefault(10787) /* metro dependency 10787 */} />)((require(1305) /* metro dependency 1305: native */).Icon);
return (
<View style={styles.container}>
{items2}
</View>
);
}
function DescriptiveBenefitRow({benefit, children, guildId, isInteractive}) { // fn#124300, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:1067, offset: 0x025afbce, size: 242 bytes, params: 2, frame: 22
var r1;
var r8;
var defaultImport;
const styles = useStyles();
const r5 = benefit.description != null ? ((Text) => <Text style={styles.benefitDescription} variant="text-sm/medium" color="interactive-text-default">{benefit.description}</Text>)((require(4573) /* metro dependency 4573: Text */).Text) : null;
const emoji_id = benefit.emoji_id;
if (emoji_id != null) {
r8 = emoji_id;
} else {
if (benefit.emoji_name != null) {
defaultImport = importDefault(3797) /* metro dependency 3797: UnicodeEmojis */;
r1 = defaultImport.convertSurrogateToName(benefit.emoji_name, false);
} else {
r1 = '';
}
r8 = r1;
}
return (
<BaseBenefitRow
emoji={r8}
guildId={guildId}
isInteractive={isInteractive}
>
{children}
{r5}
</BaseBenefitRow>
);
}
function ChannelBenefitRow_124301({benefit, guildId, isInteractive}) { // fn#124301, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:1484, offset: 0x025afcc0, size: 468 bytes, params: 2, frame: 26
var r0;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var intl;
var value;
const styles = useStyles();
const value2 = (require(13696) /* metro dependency 13696: GuildRoleSubscriptionTierTemplatesUtils */).useChannelWithTemplateFallback(benefit.ref_id);
if (value2 == null) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.bz1PZX);
value = <Text variant="text-md/semibold" color="mobile-text-heading-primary">{'[' + value + ']'}</Text>;
r0 = value;
} else {
r0 = <DescriptiveBenefitRow benefit={benefit} guildId={guildId} isInteractive={isInteractive}><View style={styles.channelRow}>{((Icon) => <Icon style={styles.channelIcon} size={(require(1305) /* metro dependency 1305: native */).Icon.Sizes.CUSTOM} source={value2 != null ? (require(6647) /* metro dependency 6647: ChannelUtils */).getChannelIcon(value2) : null} />)((require(1305) /* metro dependency 1305: native */).Icon)}<Text variant="text-md/semibold" color="mobile-text-heading-primary">{(importDefault(4805) /* metro dependency 4805: useChannelName */)(value2)}</Text></View></DescriptiveBenefitRow>;
}
return r0;
}
function IntangibleBenefitRow_124302({benefit, guildId, isInteractive}) { // fn#124302, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:2099, offset: 0x025afe94, size: 115 bytes, params: 2, frame: 17
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<DescriptiveBenefitRow
benefit={benefit}
guildId={guildId}
isInteractive={isInteractive}
>
<Text variant="text-md/semibold" color="mobile-text-heading-primary">
{benefit.name}
</Text>
</DescriptiveBenefitRow>
);
}
function EmojiBenefitRow({benefit, guildId, isInteractive}) { // fn#124303, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:2344, offset: 0x025aff07, size: 255 bytes, params: 2, frame: 23
const styles = useStyles();
const id = benefit.id;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text style={styles.emojiColons} variant="text-md/medium" color="text-muted">{':'}</Text>];
items2[1] = <Text variant="text-md/semibold" color="mobile-text-heading-primary">{benefit.name}</Text>;
items2[2] = <Text style={styles.emojiColons} variant="text-md/medium" color="text-muted">{':'}</Text>;
return (
<BaseBenefitRow
emoji={id}
guildId={guildId}
contentStyle={styles.emojiRow}
isInteractive={isInteractive}
>
{items2}
</BaseBenefitRow>
);
}
function GuildRoleSubscriptionBenefitPreview({benefit, guildId, isInteractive}) { // fn#124304, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16305:2967, offset: 0x025b0006, size: 156 bytes, params: 2, frame: 18
return 'roles' in benefit ? <EmojiBenefitRow benefit={benefit} guildId={guildId} isInteractive={isInteractive} /> : benefit.ref_type === GuildRoleSubscriptionBenefitTypes.CHANNEL ? <ChannelBenefitRow_124301 benefit={benefit} guildId={guildId} isInteractive={isInteractive} /> : <IntangibleBenefitRow_124302 benefit={benefit} guildId={guildId} isInteractive={isInteractive} />;
}
@@ -0,0 +1,252 @@
/* Metro module 16096; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionEmojiEditorModal.tsx; dependencies: [5, 57, 31, 27, 6541, 33, 4501, 697, 16087, 566, 5475, 1423, 16093, 1244, 4647, 4596, 7972, 16083, 4573, 2] */
function _fun124282(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124282, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:6, offset: 0x025aefac, size: 431 bytes, params: 8, frame: 23
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_6 = value.View;
const env0_7 = value.SectionList;
const subscriptionRoleStore = importDefault(6541) /* metro dependency 6541: SubscriptionRoleStore */;
value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.Fragment;
const env0_11 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object2.container = {'backgroundColor': null, 'display': 'flex', 'flexDirection': 'column',
'justifyContent': 'flex-start', 'height': '100%', backgroundColor: BACKGROUND_BASE_LOW};
const object4 = {'flexGrow': 0, 'marginVertical': 24, 'marginHorizontal': 16};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object4.backgroundColor = BACKGROUND_SURFACE_HIGH;
object2.emojiList = object4;
object2.row = {'alignItems': 'flex-start', 'paddingTop': 16, 'paddingBottom': 14};
object2.emojiImage = {'width': 24, 'height': 24, 'marginBottom': 2};
object2.emojiAlias = {marginBottom: 2};
const env0_12 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionEmojiEditorModal.tsx');
exports.default = GuildRoleSubscriptionEmojiEditorModal;
}
function GuildRoleSubscriptionEmojiEditorModal({guildId, subscriptionRoleId, initialTierEmojiIds, listingId, onClose, onSave}) { // fn#124283, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:807, offset: 0x025af15b, size: 528 bytes, params: 2, frame: 28
const styles = useStyles();
const env0_4 = styles;
const value2 = (importDefault(16087) /* metro dependency 16087: useRoleSubscriptionEmojis */)(guildId);
const env0_5 = value2;
const subscriptionRoles = (require(566) /* metro dependency 566: flux */).useStateFromStores([SubscriptionRoleStore],
function() {
return SubscriptionRoleStore.getSubscriptionRoles(guildId);
});
const binding = env0_5;
const [property, env0_8] = env0_4(binding.useState(initialTierEmojiIds), 2);
const env0_9 = binding.useMemo(_fun124285, [subscriptionRoles, value2, subscriptionRoleId, property]);
const env0_10 = _fun124289();
const GuildRoleSubscriptionBenefitModalHeader = importDefault(16093) /* metro dependency 16093: GuildRoleSubscriptionBenefitModalHeader */;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const W4XhnR = (require(1244) /* metro dependency 1244: indexNative */).t.W4XhnR;
const guildRoleSubscriptionBenefitModalHeader = <GuildRoleSubscriptionBenefitModalHeader title={Reflect.apply(string,
intl, [W4XhnR])} onClose={onClose} onSave={onSave} listingId={listingId} canSave />;
const sectionListBindingProps = {style: styles.emojiList, renderItem: renderItem_124294};
const object = {};
object.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['9Oq93m']);
object.data = value2;
sectionListBindingProps.sections = [object];
sectionListBindingProps.ItemSeparatorComponent = ItemSeparatorComponent;
sectionListBindingProps.keyboardShouldPersistTaps = 'always';
return (
<View style={styles.container}>
{guildRoleSubscriptionBenefitModalHeader}
<SectionList {...sectionListBindingProps} />
</View>
);
}
function _fun124285() { // fn#124285, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1083, offset: 0x025af386, size: 113 bytes, params: 1, frame: 12
var Set;
var set;
var value;
if (subscriptionRoleId == null) {
Set = global.Set;
value = Object.create(Set.prototype, {constructor: {value: Set}});
set = new Set();
return set instanceof Object ? set : value;
}
value = env0_5.filter(function(a0) {
var env0_0 = a0;
var property = a0.roles;
property = property.filter(_fun124287).length;
return property === 0;
});
Set = global.Set;
value = value.map(function(a0) {
return a0.id;
});
const value2 = Object.create(Set.prototype, {constructor: {value: Set}});
set = new Set();
return set instanceof Object ? set : value2;
}
function _fun124289() { // fn#124289, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1248, offset: 0x025af468, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_3(_fun124291);
return _fun124292;
}
function GuildRoleSubscriptionEmojiEditorModalOnSave() { // fn#124293, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1483, owner: GuildRoleSubscriptionEmojiEditorModal.onSave, offset: 0x025af4d1, size: 337 bytes, params: 1, frame: 23
var value2;
var defaultImport;
var show;
var object2;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
if (env0_9.size === 0) {
env0_10();
} else {
value2 = environment.__proto__;
defaultImport = importDefault(4647) /* metro dependency 4647: AlertActionCreators */;
show = defaultImport.show;
object2 = {};
object2.title = intl.string(t['30V0t5']);
object2.body = intl.formatToPlainString(t['o6j/wN'], {numberOfEmojiSlatedForDeletion: env0_9.size});
object2.cancelText = intl.string(t['ETE/oC']);
object2.confirmText = intl.string(t['cY+Oob']);
object2.onConfirm = env0_10;
object2.confirmColor = (importDefault(4596) /* metro dependency 4596: Alert */).Colors.RED;
Reflect.apply(show, defaultImport, [object2]);
}
}
function GuildRoleSubscriptionEmojiEditorModalRenderItem({item}) { // fn#124294, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1892, owner: GuildRoleSubscriptionEmojiEditorModal.renderItem, offset: 0x025af622, size: 280 bytes, params: 2, frame: 26
let binding = env0_7;
const value2 = binding.has(item.id);
binding = env0_9;
const env0_1 = binding.has(item.id);
const FormRow = (require(7972) /* metro dependency 7972: native */).FormRow;
const object2 = {};
const stylesBinding = styles;
object2.style = stylesBinding.row;
const fastImage = importDefault(5475) /* metro dependency 5475: FastImage */;
const emojiImage = stylesBinding.emojiImage;
const defaultImport = importDefault(1423) /* metro dependency 1423: AvatarUtils */;
const getEmojiURL = defaultImport.getEmojiURL;
object2.leading = ((Component) => <Component style={emojiImage} source={{uri: Reflect.apply(getEmojiURL,
defaultImport, [{id: item.id, animated: item.animated, size: 48}])}} />)(fastImage);
object2.label = label_124295;
object2.onPress = onPress_124296;
const FormRow2 = (require(7972) /* metro dependency 7972: native */).FormRow;
const Checkbox = FormRow2.Checkbox;
object2.trailing = <Checkbox selected={value2} />;
return <FormRow {...object2} />;
}
function GuildRoleSubscriptionEmojiEditorModalItemSeparatorComponent() { // fn#124297, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:2695, owner: GuildRoleSubscriptionEmojiEditorModal.ItemSeparatorComponent, offset: 0x025af8e7, size: 52 bytes, params: 1, frame: 14
const FormDivider = (require(7972) /* metro dependency 7972: native */).FormDivider;
return <FormDivider iconPush />;
}
function _fun124286(a0) { // fn#124286, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1130, offset: 0x025af3f7, size: 45 bytes, params: 2, frame: 11
const env0_0 = a0;
const roles = a0.roles;
return roles.filter(_fun124287).length === 0;
}
function* _fun124291() { // fn#124291, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1268, offset: 0x025af497, size: 58 bytes, params: 1, frame: 13
var binding;
var value3;
var value4;
var value5;
var error;
if (true) {
value = environment.__proto__.__proto__;
try {
binding = env2_3;
} catch (error) {
return undefined;
}
try {
} catch (error) {
return undefined;
}
try {
value3 = binding(SectionList);
} catch (error) {
return undefined;
}
yield value3;
try {
value4 = undefined;
value5 = false;
} catch (error) {
return undefined;
}
if (value5) {
return value4;
}
try {
} catch (error) {
return undefined;
}
try {
dependencyMap();
} catch (error) {
}
}
}
function renderItemLabel() { // fn#124295, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:2111, owner: GuildRoleSubscriptionEmojiEditorModal.renderItem.label, offset: 0x025af73a, size: 332 bytes, params: 1, frame: 28
var r5;
var jsxRuntimeEnv2_10Binding2;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var items2;
let value = environment.__proto__.__proto__;
const jsxRuntimeEnv2_10Binding = jsxRuntimeEnv2_10;
const value4 = ((Component) => <Component name={item.name} style={styles.emojiAlias} />)(importDefault(16083) /* metro dependency 16083: EmojiAlias */);
const binding = env0_1;
if (binding) {
jsxRuntimeEnv2_10Binding2 = jsxRuntimeEnv2_10;
string = intl.string;
value = <Text variant="text-sm/normal" color="interactive-text-active">{Reflect.apply(string, intl,
[t['1GlN06']])}</Text>;
items2 = [value];
string = intl.string;
items2[1] = <Text variant="text-sm/normal" color="text-feedback-critical">{Reflect.apply(string, intl,
[t.J0XdJ4])}</Text>;
value = <>{items2}</>;
r5 = value;
} else {
r5 = binding;
}
return (
<>
{value4}
{r5}
</>
);
}
function renderItemOnPress_124296() { // fn#124296, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:2465, owner: GuildRoleSubscriptionEmojiEditorModal.renderItem.onPress, offset: 0x025af886, size: 97 bytes, params: 1, frame: 13
const id = item.id;
const Set = global.Set;
const set = new Set(env1_7);
if (set.has(id)) {
set.delete(id);
} else {
set.add(id);
}
env1_8(set);
}
function _fun124287(a0) { // fn#124287, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16304:1153, offset: 0x025af424, size: 68 bytes, params: 2, frame: 14
const value = environment.__proto__.__proto__;
return !(a0 === subscriptionRoleId && !env2_7.has(env0_0.id)) && subscriptionRoles.has(a0);
}
@@ -0,0 +1,88 @@
/* Metro module 16065; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionGroupDetailsModal.tsx; dependencies: [57, 31, 27, 16066, 13668, 661, 33, 4501, 12672, 16061, 8127, 1244, 16067, 4573, 13680, 7972, 16070, 2] */
function _fun124017(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124017, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16273:6, offset: 0x025a4d2f, size: 353 bytes, params: 8, frame: 22
const env0_0 = require;
const closure = Content_124018;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
let value = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_6 = value.GuildRoleSubscriptionsTierScenes;
const env0_7 = value.MAX_SUBSCRIPTION_TIER_DESCRIPTION_LENGTH;
const env0_8 = (require(661) /* metro dependency 661: Constants */).UPLOAD_BANNER_SIZE;
value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
const env0_11 = value.Fragment;
const env0_12 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({coverPhoto: {'height': 114,
'width': '100%'}, coverDescription: {marginTop: 16}, paddedContainer: {paddingHorizontal: 16}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionGroupDetailsModal.tsx');
exports.default = GuildRoleSubscriptionTierDetailsModal;
exports.Content = closure;
}
function Content_124018({cover, setCover, description, setDescription}) { // fn#124018, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16273:436, offset: 0x025a4e90, size: 710 bytes, params: 2, frame: 35
const styles = useStyles();
const value2 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const value3 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const FormHeader = importDefault(8127) /* metro dependency 8127: FormHeader */;
const header = value2.header;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const items2 = [<FormHeader style={header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3S8gA7'])}</FormHeader>];
const ImagePickerIcon = (require(16067) /* metro dependency 16067: FormImagePicker */).ImagePickerIcon;
const width = UPLOAD_BANNER_SIZE.width;
const PreviewShape = (require(16067) /* metro dependency 16067: FormImagePicker */).PreviewShape;
const SQUIRCLE = PreviewShape.SQUIRCLE;
const imagePickerIcon = <ImagePickerIcon style={styles.coverPhoto} image={cover} imageUploadSize={width} previewShape={SQUIRCLE} setImage={setCover} disabled={value3} standalone size={114} />;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
items2[1] = <View style={styles.paddedContainer}>{imagePickerIcon}<Text style={styles.coverDescription} variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0ng4rB'])}</Text></View>;
items2[2] = ((Component) => <Component style={styles.paddedContainer} />)(importDefault(13680) /* metro dependency 13680: FormSeparator */);
items2[3] = <FormHeader style={value2.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['74JctW'])}</FormHeader>;
const FormInput = (require(7972) /* metro dependency 7972: native */).FormInput;
items2[4] = <FormInput style={value2.textInput} showTopContainer={false} multiline maxLength={MAX_SUBSCRIPTION_TIER_DESCRIPTION_LENGTH} numberOfLines={3} value={description} placeholder={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3YHwoG'])} onChange={setDescription} disabled={value3} />;
return (
<>
{items2}
</>
);
}
function GuildRoleSubscriptionTierDetailsModal(a0) { // fn#124019, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16273:1481, offset: 0x025a5156, size: 332 bytes, params: 2, frame: 26
const value2 = RoleTierEditStore.useGroupCoverState();
const binding = env0_3;
const value3 = binding(value2, 2);
const property = value3[0];
const property2 = value3[1];
const useGroupDescriptionState = RoleTierEditStore.useGroupDescriptionState;
const value4 = binding(Reflect.apply(useGroupDescriptionState, RoleTierEditStore, []), 2);
const property3 = value4[0];
const property4 = value4[1];
const r5 = property3.length > 0 && property != null;
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const EPOLQD = (require(1244) /* metro dependency 1244: indexNative */).t.EPOLQD;
object2.title = Reflect.apply(string, intl, [EPOLQD]);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.description = intl2.string((require(1244) /* metro dependency 1244: indexNative */).t['LeAm+L']);
object2.canProceedToNextStep = r5;
const DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
object2.nextStep = DETAILS;
copyDataProperties(object2, a0, intl);
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
<Content_124018
{...a0}
{...{['cover']: property}}
{...{['setCover']: property2}}
{...{['description']: property3}}
{...{['setDescription']: property4}}
/>
</GuildRoleSubscriptionTierEditStep>
);
}
@@ -0,0 +1,205 @@
/* Metro module 16109; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionGroupSetupModal.tsx; dependencies: [57, 5, 31, 16066, 13668, 661, 33, 13675, 13690, 3856, 1244, 480, 4863, 16078, 16061, 16079, 2] */
function _fun124356(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124356, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:6, offset: 0x025b3206, size: 280 bytes, params: 8, frame: 21
const env0_0 = require;
const closure = GuildRoleSubscriptionGroupSetupModal;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importDefault(5) /* metro dependency 5 */;
const env0_6 = importAll(31) /* metro dependency 31 */;
const env0_7 = (require(16066) /* metro dependency 16066: RoleTierEditStore */).useRoleTierEditStore;
const guildRoleSubscriptionsConstantsModule = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_8 = guildRoleSubscriptionsConstantsModule.GuildRoleSubscriptionsTierScenes;
const env0_9 = guildRoleSubscriptionsConstantsModule.GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY;
const env0_10 = (require(661) /* metro dependency 661: Constants */).AnalyticEvents;
const env0_11 = (require(33) /* metro dependency 33 */).jsx;
closure.modalConfig = {closable: false};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionGroupSetupModal.tsx');
exports.default = closure;
}
function _createGroupFromStore() { // fn#124357, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:287, offset: 0x025b331e, size: 50 bytes, params: 1, frame: 14
return env0_5(_fun124359).apply(this, arguments);
}
function GuildRoleSubscriptionGroupSetupModal(a0) { // fn#124360, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:571, offset: 0x025b33eb, size: 594 bytes, params: 2, frame: 27
const editStateId = a0.editStateId;
const value = Object.create(null);
value.editStateId = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const value3 = undefined;
const guildId = value2.guildId;
const [env0_2, env0_3] = env0_4(env0_6.useState(), 2);
const guildRoleSubscriptionsHooksModule = require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */;
const useCreateSubscriptionGroupListing = guildRoleSubscriptionsHooksModule.useCreateSubscriptionGroupListing;
var env0_4 = Reflect.apply(useCreateSubscriptionGroupListing, guildRoleSubscriptionsHooksModule,
[]).createSubscriptionGroupListing;
const value7 = guildRoleSubscriptionsHooksModule.useUpdateSubscriptionsSettings();
const env0_5 = value7.updateSubscriptionsSettings;
const error = value7.error;
const value9 = env0_4(env0_6.useState(editStateId), 2);
let property = value9[0];
var env0_6 = property;
const env0_7 = value9[1];
const value10 = (importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useCreateOrUpdateListingFromEditState();
const env0_8 = value10.handleCreateOrUpdateFromEditState;
const r1 = error ?? value10.error ?? value3;
const value11 = _fun124361();
env0_6.useEffect(_fun124367, [r1]);
const value12 = env0_6.useMemo(function() {
var GATING = GuildRoleSubscriptionsTierScenes.GATING;
return [GATING, GuildRoleSubscriptionsTierScenes.GROUP, GuildRoleSubscriptionsTierScenes.DETAILS,
GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS, GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS,
GuildRoleSubscriptionsTierScenes.DESIGN, {scene: GuildRoleSubscriptionsTierScenes.CONFIRMATION,
extraProps: {isForGroupSetupModal: true}}];
}, []);
const value13 = env0_6.useMemo(function() {
var object = {};
var property = GuildRoleSubscriptionsTierScenes.GATING;
var object2 = {};
object2.impressionName = require(dependencyMap[11]).ImpressionNames.ROLE_SUBSCRIPTION_INITIAL_SETUP_MODAL_LANDING;
object[property] = object2;
object[GuildRoleSubscriptionsTierScenes.DETAILS] = {impressionName: require(dependencyMap[11]).ImpressionNames.ROLE_SUBSCRIPTION_INITIAL_SETUP_MODAL_TIER_STEP};
return object;
}, []);
const value14 = env0_6.useCallback(_fun124370, [value12]);
const EditStateContextProvider = (require(16078) /* metro dependency 16078: EditStateContextProvider */).EditStateContextProvider;
const RoleSubscriptionSettingsDisabledContextProvider = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).RoleSubscriptionSettingsDisabledContextProvider;
return (
<EditStateContextProvider
guildId={guildId}
editStateId={property}
groupListingId={null}
>
<RoleSubscriptionSettingsDisabledContextProvider guildId={guildId}>
{((Component) => <Component {...value2} {...{['modalKey']: GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY}} {...{['onDone']: value11}} {...{['steps']: value12}} {...{['onClose']: value14}} {...{['stepScreenPropsMap']: value13}} />)(importDefault(16079) /* metro dependency 16079: RoleTierEditScenesModal */)}
</RoleSubscriptionSettingsDisabledContextProvider>
</EditStateContextProvider>
);
}
function* _fun124359(a0, a1, a2, a3) { // fn#124359, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:352, offset: 0x025b335b, size: 144 bytes, params: 5, frame: 17
if (true) {
value = environment.__proto__.__proto__;
value = env2_7.getState();
var groupCover = value.groupCover;
var groupDescription = value.groupDescription;
if (groupCover != null) {
yield a1(a0, {description: groupDescription});
value = undefined;
if (false) {
return value;
}
if (value != null) {
yield a2(a0, {cover_image: groupCover.uri, description: groupDescription});
if (false) {
return undefined;
}
a3(value);
return value.id;
}
}
}
}
function _fun124361() { // fn#124361, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:1029, offset: 0x025b363d, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_5(_fun124363);
return _fun124366;
}
function _fun124367() { // fn#124367, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:1501, offset: 0x025b37c7, size: 126 bytes, params: 1, frame: 17
var r0;
var value2;
var moduleValue;
var presentError;
var intl;
var anyErrorMessage;
if (env0_9 != null) {
value2 = environment.__proto__;
moduleValue = require(3856) /* metro dependency 3856: ToastUtils */;
presentError = moduleValue.presentError;
anyErrorMessage = env0_9.getAnyErrorMessage();
if (anyErrorMessage != null) {
r0 = anyErrorMessage;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.R0RpRX);
}
Reflect.apply(presentError, moduleValue, [r0]);
}
}
function _fun124370(a0) { // fn#124370, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:2034, offset: 0x025b392f, size: 99 bytes, params: 2, frame: 16
const env0_0 = a0;
const index = env0_10.findIndex(_fun124371);
const defaultImport = importDefault(4863) /* metro dependency 4863: AppAnalyticsUtils */;
const trackWithMetadata = defaultImport.trackWithMetadata;
const GUILD_ROLE_SUBSCRIPTION_SETUP_MODAL_CLOSED = AnalyticEvents.GUILD_ROLE_SUBSCRIPTION_SETUP_MODAL_CLOSED;
Reflect.apply(trackWithMetadata, defaultImport, [GUILD_ROLE_SUBSCRIPTION_SETUP_MODAL_CLOSED,
{setup_modal_step: index + 1}]);
}
function* _fun124363() { // fn#124363, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:1049, offset: 0x025b366c, size: 293 bytes, params: 1, frame: 24
var environment;
var r6;
var r1;
var binding;
var value6;
var value7;
var presentError;
var anyErrorMessage;
var binding3;
var intl;
var value10;
if (false) {
return undefined;
}
value = environment.__proto__.__proto__;
const value3 = undefined;
const id = importAll == null ? value3 : importAll.id;
if (id != null) {
r6 = id;
} else {
yield createGroupFromStore(importDefault, env2_4, env2_5, dependencyMap);
var value4 = undefined;
if (false) {
return value4;
}
r6 = value4;
}
if (r6 != null) {
if (GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY != null) {
value6 = environment.__proto__.__proto__.__proto__;
binding = env3_0;
value7 = binding(env3_3[9]);
presentError = value7.presentError;
anyErrorMessage = GUILD_ROLE_SUBSCRIPTION_GROUP_SETUP_KEY.getAnyErrorMessage();
if (anyErrorMessage != null) {
r1 = anyErrorMessage;
} else {
binding = env3_0;
binding3 = env3_3;
intl = binding(binding3[10]).intl;
r1 = intl.string(binding(binding3[10]).t.ZUEGFn);
}
Reflect.apply(presentError, value7, [r1]);
}
yield GuildRoleSubscriptionsTierScenes({guildId: importDefault, editStateId: env2_6, groupListingId: r6,
onBeforeDispatchNewListing: function(a0) {
return useRoleTierEditStore(a0.id);
}});
value10 = undefined;
if (false) {
return value10;
}
if (value10) {
require.onClose();
}
}
return value3;
}
function createGroupFromStore() { // fn#124364, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16317:1107, offset: 0x025b3791, size: 30 bytes, params: 1, frame: 13
return env4_12.apply(this, arguments);
}
@@ -0,0 +1,234 @@
/* Metro module 16102; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionListingPreview.tsx; dependencies: [57, 31, 27, 33, 4501, 697, 4573, 5137, 1244, 13694, 13690, 5475, 16103, 16097, 16076, 13701, 2] */
function _fun124316(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124316, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:6, offset: 0x025b0b3e, size: 642 bytes, params: 8, frame: 27
var object2;
const env0_0 = require;
const closure = BenefitsSection;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
let value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
const env0_8 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.container = {padding: 16};
const BACKGROUND_BASE_LOWEST = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOWEST;
object2.header = {'backgroundColor': null, 'borderTopStartRadius': 8, 'borderTopEndRadius': 8, 'display': 'flex',
'flexDirection': 'column', 'alignItems': 'center', 'padding': 16, backgroundColor: BACKGROUND_BASE_LOWEST};
object2.image = {'width': 80, 'height': 80, 'borderRadius': 40, 'marginTop': 16};
object2.priceGroup = {'marginTop': 16, 'alignItems': 'center'};
object2.priceInterval = {marginTop: 4};
object2.content = {paddingHorizontal: 16};
let BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.contentWithBackground = {backgroundColor: BACKGROUND_SURFACE_HIGH};
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
object2.separator = {'width': '100%', 'height': 1, 'marginTop': 16, backgroundColor: BORDER_SUBTLE};
object2.sectionLabel = {paddingVertical: 16};
object2.benefitSpacing = {marginTop: 16};
const object3 = {};
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object3.backgroundColor = BACKGROUND_SURFACE_HIGH;
object3.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.lg;
object3.padding = 16;
object2.roundedBenefitsContainer = object3;
object2.footer = {'borderBottomStartRadius': 8, 'borderBottomEndRadius': 8, 'height': 16};
const env0_9 = Reflect.apply(createStyles, value, [object2]);
closure.Looks = {FLAT: 0, [0]: 'FLAT', ROUNDED: 1, [1]: 'ROUNDED'};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionListingPreview.tsx');
exports.BenefitsSection = closure;
exports.GuildRoleSubscriptionListingPreview = GuildRoleSubscriptionListingPreview;
}
function PriceTier(a0) { // fn#124317, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:991, offset: 0x025b0dc0, size: 312 bytes, params: 2, frame: 27
const price = a0.price;
const currency = a0.currency;
let value = Object.create(null);
value.price = 0;
value.currency = 0;
value = copyDataProperties({}, a0, value, price);
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text variant="heading-xl/extrabold" color="mobile-text-heading-primary">{(require(5137) /* metro dependency 5137: PriceUtils */).formatPrice(price,
currency)}</Text>;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const format = intl.format;
const isLGyX = (require(1244) /* metro dependency 1244: indexNative */).t.isLGyX;
const object = {};
object.period = (require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */).formatPlanInterval(value);
return (
<View style={styles.priceGroup}>
{text}
<Text
style={styles.priceInterval}
variant="eyebrow"
color="text-default"
>
{Reflect.apply(format, intl, [isLGyX, object])}
</Text>
</View>
);
}
function Header_124318({listingId, onSubscribePress}) { // fn#124318, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:1375, offset: 0x025b0ef8, size: 458 bytes, params: 2, frame: 26
const styles = useStyles();
const property = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useSubscriptionPlan(listingId),
1)[0];
const property2 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useName(listingId),
1)[0];
const property3 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useImage(listingId),
1)[0];
const property4 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useDescription(listingId),
1)[0];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text variant="heading-md/semibold" color="interactive-text-active">{property2}</Text>];
items2[1] = ((Component) => <Component style={styles.image} source={{uri: property3 ?? ''}} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
items2[2] = <PriceTier {...property} />;
const GuildPremiumRoleSubscribeButton = (require(16103) /* metro dependency 16103: GuildPremiumRoleSubscribeButton */).GuildPremiumRoleSubscribeButton;
items2[3] = <GuildPremiumRoleSubscribeButton onPress={onSubscribePress} />;
items2[4] = <Text variant="text-sm/medium">{property4}</Text>;
return (
<View style={styles.header}>
{items2}
</View>
);
}
function Content_124319({children, noBackground, style}) { // fn#124319, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:1907, offset: 0x025b10c2, size: 94 bytes, params: 2, frame: 19
const styles = useStyles();
return (
<View style={[styles.content, noBackground !== true && styles.contentWithBackground, style]}>
{children}
</View>
);
}
function SectionLabel(a0) { // fn#124320, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:2048, offset: 0x025b1120, size: 143 bytes, params: 2, frame: 20
const label = a0.label;
const value = Object.create(null);
value.label = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const styles = useStyles();
const content_124319BindingProps = {...value2};
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<Content_124319 {...content_124319BindingProps}>
<Text
style={styles.sectionLabel}
variant="eyebrow"
color="text-default"
>
{label}
</Text>
</Content_124319>
);
}
function LabeledSection(a0) { // fn#124321, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:2219, offset: 0x025b11af, size: 149 bytes, params: 2, frame: 21
const label = a0.label;
const children = a0.children;
const value = Object.create(null);
value.label = 0;
value.children = 0;
const value2 = copyDataProperties({}, a0, value, label);
return (
<>
<SectionLabel {...value2} {...{['label']: label}} />
<Content_124319 {...value2}>
{children}
</Content_124319>
</>
);
}
function Separator_124322() { // fn#124322, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:2355, offset: 0x025b1244, size: 57 bytes, params: 1, frame: 16
const styles = useStyles();
return (
<Content_124319>
<View style={styles.separator} />
</Content_124319>
);
}
function BenefitsSection({guildId, label, benefits, look = env0_10.FLAT, listingId}) { // fn#124323, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:2519, offset: 0x025b127d, size: 267 bytes, params: 2, frame: 21
const styles = useStyles();
if (benefits.length === 0) {
return null;
}
const r4 = typeof label === 'string' ? label : (require(1244) /* metro dependency 1244: indexNative */).intl.formatToPlainString(label,
{count: benefits.length});
const value3 = benefits.map(_fun124324);
const ROUNDED = env0_10.ROUNDED;
const FLAT = env0_10.FLAT;
return (
<LabeledSection noBackground={look === ROUNDED} label={r4}>
{look === FLAT ? value3 : <View style={styles.roundedBenefitsContainer}>{value3}</View>}
</LabeledSection>
);
}
function GuildRoleSubscriptionListingPreview(a0) { // fn#124325, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:3289, offset: 0x025b1433, size: 599 bytes, params: 2, frame: 31
var r6;
var jsxRuntimeEnv0_8Binding;
var items2;
var items3;
const styles = useStyles();
const guildId = a0.guildId;
const listingId = a0.listingId;
const property = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useChannelBenefits(listingId),
1)[0];
const property2 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useIntangibleBenefits(listingId),
1)[0];
const value5 = (importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useRole(listingId,
guildId);
const items4 = [<Header_124318 {...a0} />];
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const FJZmYx = (require(1244) /* metro dependency 1244: indexNative */).t.FJZmYx;
const GuildRoleSubscriptionMemberPreview = (require(13701) /* metro dependency 13701: GuildRoleSubscriptionMemberPreview */).GuildRoleSubscriptionMemberPreview;
items4[1] = <LabeledSection label={Reflect.apply(string, intl,
[FJZmYx])}><GuildRoleSubscriptionMemberPreview role={value5} /></LabeledSection>;
const value7 = property.length > 0;
if (value7) {
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
items2 = [<Separator_124322 />];
items2[1] = <BenefitsSection guildId={guildId} benefits={property} label={(require(1244) /* metro dependency 1244: indexNative */).t.sqjII9} listingId={listingId} />;
r6 = <>{items2}</>;
} else {
r6 = value7;
}
items4[2] = r6;
const value10 = property2.length > 0;
if (value10) {
jsxRuntimeEnv0_8Binding = jsxRuntimeEnv0_8;
items3 = [<Separator_124322 />];
items3[1] = <BenefitsSection guildId={guildId} benefits={property2} label={(require(1244) /* metro dependency 1244: indexNative */).t.aBE7f9} listingId={listingId} />;
r6 = <>{items3}</>;
} else {
r6 = value10;
}
items4[3] = r6;
items4[4] = <Content_124319 style={styles.footer} />;
return (
<View style={styles.container}>
{items4}
</View>
);
}
function _fun124324(a0, a1) { // fn#124324, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16310:2729, offset: 0x025b1388, size: 171 bytes, params: 3, frame: 22
let value = environment.__proto__;
const viewProps = {style: a1 > 0 && styles.benefitSpacing};
const GuildRoleSubscriptionBenefitPreview = (require(16097) /* metro dependency 16097: GuildRoleSubscriptionBenefitPreview */).GuildRoleSubscriptionBenefitPreview;
const guildIdBinding = guildId;
const listingIdBinding = listingId;
const NEW_LISTING_EDIT_STATE_ID = (require(16076) /* metro dependency 16076: GuildRoleSubscriptionsActionCreatorExtrasNative */).NEW_LISTING_EDIT_STATE_ID;
viewProps.children = <GuildRoleSubscriptionBenefitPreview guildId={guildIdBinding} benefit={a0} isInteractive={!(listingIdBinding === NEW_LISTING_EDIT_STATE_ID)} />;
value = require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */;
const getBenefitKey = value.getBenefitKey;
return <View {...viewProps} key={Reflect.apply(getBenefitKey, value, [a0])} />;
}
@@ -0,0 +1,503 @@
/* Metro module 16081; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierBenefitsModal.tsx; dependencies: [57, 31, 27, 13691, 16066, 13668, 33, 4501, 697, 8792, 5475, 16082, 4573, 1244, 1423, 16083, 12672, 13695, 44, 16061, 7972, 8127, 16084, 16085, 16078, 13675, 16057, 13690, 16087, 16088, 16097, 13694, 16098, 16070, 2] */
function _fun124159(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124159, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:6, offset: 0x025aa28b, size: 984 bytes, params: 8, frame: 27
var object2;
const env0_0 = require;
const closure = GuildRoleSubscriptionTierBenefitsTab;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_6 = value.SectionList;
const env0_7 = value.View;
const env0_8 = (require(13691) /* metro dependency 13691: GuildRoleSubscriptionEditStore */).AllChannelAccessOptions;
const env0_9 = (require(16066) /* metro dependency 16066: RoleTierEditStore */).useGroupIsFullGateState;
value = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_10 = value.GuildRoleSubscriptionBenefitTypes;
const env0_11 = value.GuildRoleSubscriptionsTierScenes;
value = require(33) /* metro dependency 33 */;
const env0_12 = value.jsx;
const env0_13 = value.jsxs;
const env0_14 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.listContainer = {paddingBottom: 16};
const object7 = {'backgroundColor': null, 'borderRadius': null, 'alignSelf': 'stretch', 'flexDirection': 'row',
'alignItems': 'center', 'justifyContent': 'flex-start', 'padding': 16, 'marginHorizontal': 16};
let BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object7.backgroundColor = BACKGROUND_SURFACE_HIGH;
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object2.card = object7;
const object8 = {'backgroundColor': null, 'alignSelf': 'stretch', 'flexDirection': 'row', 'alignItems': 'center',
'justifyContent': 'flex-start', 'padding': 16, 'marginHorizontal': 16};
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object8.backgroundColor = BACKGROUND_SURFACE_HIGH;
object8.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.none;
object2.item = object8;
const object9 = {};
object9.borderTopLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object9.borderTopRightRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object2.itemFirst = object9;
const object10 = {};
object10.borderBottomLeftRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object10.borderBottomRightRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object2.itemLast = object10;
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.itemSeparatorContainer = {'backgroundColor': null, 'alignSelf': 'stretch', 'marginHorizontal': 16,
backgroundColor: BACKGROUND_SURFACE_HIGH};
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
object2.itemSeparator = {'backgroundColor': null, 'alignSelf': 'stretch', 'marginStart': 54, 'height': 1,
backgroundColor: BORDER_SUBTLE};
object2.listFooterText = {marginHorizontal: 16};
object2.listFooterSubtitle = {marginTop: 8};
object2.listFooterSectionDescription = {marginBottom: 16};
object2.listFooterContainer = {marginVertical: 24};
object2.disabledSection = {opacity: 0.5};
object2.allChannelsSwitch = {'marginHorizontal': 16, 'marginTop': 24};
object2.addBenefitLabel = {marginStart: 16};
object2.separator = {height: 8};
object2.emojiImage = {'width': 24, 'height': 24, 'marginRight': 16};
object2.disabled = {opacity: 0.5};
const env0_15 = Reflect.apply(createStyles, value, [object2]);
object2 = {CHANNEL: 1};
object2[1] = 'CHANNEL';
object2.INTANGIBLE = 2;
object2[2] = 'INTANGIBLE';
object2.EMOJI = 3;
object2[3] = 'EMOJI';
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierBenefitsModal.tsx');
exports.GuildRoleSubscriptionTierBenefitsTab = closure;
exports.GuildRoleSubscriptionTierChannelBenefitsModal = GuildRoleSubscriptionTierChannelBenefitsModal;
exports.GuildRoleSubscriptionTierIntangibleBenefitsModal = GuildRoleSubscriptionTierIntangibleBenefitsModal;
}
function AddBenefitButton({label, onPress, disabled}) { // fn#124160, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:1713, offset: 0x025aa663, size: 256 bytes, params: 2, frame: 22
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
const TouchableHitBox = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
const items2 = [styles.card];
items2[1] = disabled && styles.disabled;
const object = {disabled: disabled};
const value2 = ((Component) => <Component source={importDefault(16082) /* metro dependency 16082 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<TouchableHitBox
style={items2}
accessibilityRole="button"
accessibilityState={object}
onPress={onPress}
disabled={disabled}
>
{value2}
<Text
style={styles.addBenefitLabel}
variant="text-md/medium"
color="mobile-text-heading-primary"
>
{label}
</Text>
</TouchableHitBox>
);
}
function getSectionLabel_124161(a0) { // fn#124161, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2072, offset: 0x025aa763, size: 238 bytes, params: 2, frame: 15
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const CHANNEL = env0_16.CHANNEL;
if (CHANNEL === a0) {
return intl.string(t.LtfhAj);
}
const INTANGIBLE = env0_16.INTANGIBLE;
if (INTANGIBLE === a0) {
return intl.string(t['8oxWpO']);
}
const EMOJI = env0_16.EMOJI;
if (EMOJI === a0) {
return intl.string(t.XBkDoA);
}
}
function getAddItemLabel(a0) { // fn#124162, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2301, offset: 0x025aa851, size: 238 bytes, params: 2, frame: 15
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
const CHANNEL = env0_16.CHANNEL;
if (CHANNEL === a0) {
return intl.string(t.WEg7PK);
}
const INTANGIBLE = env0_16.INTANGIBLE;
if (INTANGIBLE === a0) {
return intl.string(t.VinNZr);
}
const EMOJI = env0_16.EMOJI;
if (EMOJI === a0) {
return intl.string(t['0t1aNC']);
}
}
function Separator_124163() { // fn#124163, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2530, offset: 0x025aa93f, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <View style={styles.separator} />;
}
function ItemSeparator_124164() { // fn#124164, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2593, offset: 0x025aa968, size: 71 bytes, params: 1, frame: 17
const styles = useStyles();
return (
<View style={styles.itemSeparatorContainer}>
<View style={styles.itemSeparator} />
</View>
);
}
function EmojiRowLabel({emoji}) { // fn#124165, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2711, offset: 0x025aa9af, size: 193 bytes, params: 2, frame: 25
const styles = useStyles();
const jsxRuntimeEnv0_14Binding = jsxRuntimeEnv0_14;
const FastImage = importDefault(5475) /* metro dependency 5475: FastImage */;
const defaultImport2 = importDefault(1423) /* metro dependency 1423: AvatarUtils */;
const getEmojiURL = defaultImport2.getEmojiURL;
return (
<>
<FastImage
style={styles.emojiImage}
source={{uri: Reflect.apply(getEmojiURL, defaultImport2, [{id: emoji.id, animated: emoji.animated,
size: 48}])}}
/>
{((Component) => <Component name={emoji.name} />)(importDefault(16083) /* metro dependency 16083: EmojiAlias */)}
</>
);
}
function ListFooterSection({interval, onChangeTrialInterval, trialActiveUserLimit, onChangeTrialActiveUserLimit}) { // fn#124166, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:2915, offset: 0x025aaa70, size: 1017 bytes, params: 2, frame: 40
const styles = useStyles();
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const {options,
selectedOption} = (importDefault(13695) /* metro dependency 13695: useTrialIntervalOptions */)(interval);
const value5 = env0_5.useCallback(function(a0) {
var value2 = options.find(_fun124168);
var defaultImport = importDefault(dependencyMap[18]);
var value4 = null;
defaultImport(value4 != value2, 'Missing default trial duartion option');
onChangeTrialInterval(a0 ? value2.value : value4);
}, [onChangeTrialInterval, options]);
const value6 = selectedOption != null;
const value7 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const FormSwitchRow = (require(7972) /* metro dependency 7972: native */).FormSwitchRow;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const formSwitchRow = <FormSwitchRow label={Reflect.apply(string, intl,
[(require(1244) /* metro dependency 1244: indexNative */).t['+hTmdb']])} value={value6} onValueChange={value5} disabled={value7} />;
const disabledSection = value6 ? value7 ? styles.disabledSection : undefined : styles.disabledSection;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items3 = [<Text style={[styles.listFooterText,
styles.listFooterSubtitle]} variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.urVijS)}</Text>];
items3[1] = ((Component) => <Component style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.m1KuWd)}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */);
const items4 = [styles.listFooterSectionDescription];
items4[1] = styles.listFooterText;
string = intl.string;
const NB9NLF = (require(1244) /* metro dependency 1244: indexNative */).t.NB9NLF;
items3[2] = <Text style={items4} variant="text-sm/medium" color="text-default">{Reflect.apply(string, intl,
[NB9NLF])}</Text>;
const FormTrialIntervalPicker = importDefault(16084) /* metro dependency 16084: FormTrialIntervalPicker */;
const value10 = !value6;
items3[3] = <FormTrialIntervalPicker interval={selectedOption} onChange={onChangeTrialInterval} trialIntervalOptions={options} disabled={value6 ? value7 : value10} />;
items3[4] = ((Component) => <Component style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['/JD9oe'])}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */);
const items5 = [styles.listFooterSectionDescription];
items5[1] = styles.listFooterText;
string = intl.string;
const Cg5eBm = (require(1244) /* metro dependency 1244: indexNative */).t.Cg5eBm;
items3[5] = <Text style={items5} variant="text-sm/medium" color="text-default">{Reflect.apply(string, intl,
[Cg5eBm])}</Text>;
items3[6] = ((Component) => <Component activeTrialUserlimit={trialActiveUserLimit} onChange={onChangeTrialActiveUserLimit} disabled={value6 ? value7 : value10} />)(importDefault(16085) /* metro dependency 16085: FormTrialActiveUserLimitPicker */);
return (
<View style={styles.listFooterContainer}>
{formSwitchRow}
<View style={disabledSection}>
{items3}
</View>
</View>
);
}
function Content_124169({onlyChannels, onlyIntangible}) { // fn#124169, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:4321, offset: 0x025aaed0, size: 963 bytes, params: 2, frame: 35
const styles = useStyles();
const value3 = onlyIntangible === true;
const value4 = onlyChannels === true;
const r21 = value3 || value4;
const value5 = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const editStateId = value5.editStateId;
const env0_4 = editStateId;
const guildId = value5.guildId;
const env0_5 = guildId;
const env0_6 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListing(editStateId)?.role_id ?? null;
const isFullServerGating = (importDefault(16057) /* metro dependency 16057: useRoleSubscriptionFormat */)(guildId).isFullServerGating;
const property = env0_4(useGroupIsFullGateState(), 1)[0];
const value11 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useChannelBenefits(editStateId),
2);
const property2 = value11[0];
const env0_8 = value11[1];
const value13 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useIntangibleBenefits(editStateId),
2);
const property3 = value13[0];
const env0_10 = value13[1];
const value15 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useTierEmojiIds(editStateId,
guildId), 2);
const property4 = value15[0];
const env0_12 = value15[1];
const value17 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useTrialInterval(editStateId),
2);
const property5 = value17[0];
const property6 = value17[1];
const value19 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useTrialLimit(editStateId),
2);
const property7 = value19[0];
const property8 = value19[1];
const value21 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useChannelAccessFormat(editStateId,
guildId), 2);
const property9 = value21[0];
const property10 = value21[1];
const ALL_CHANNELS_ACCESS = AllChannelAccessOptions.ALL_CHANNELS_ACCESS;
const value22 = property9 === ALL_CHANNELS_ACCESS;
const value23 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const value25 = env0_5.useMemo(_fun124174, [property4,
(importDefault(16087) /* metro dependency 16087: useRoleSubscriptionEmojis */)(guildId), value3, value22,
value4, r21, property2, property3]);
const r4 = value3 || value4 ? null : <ListFooterSection interval={property5} onChangeTrialInterval={property6} trialActiveUserLimit={property7} onChangeTrialActiveUserLimit={property8} />;
const sectionListBindingProps = {sections: value25, contentContainerStyle: styles.listContainer,
renderItem: renderItem_124187};
const getBenefitKey = (require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */).getBenefitKey;
sectionListBindingProps.keyExtractor = getBenefitKey;
sectionListBindingProps.ListHeaderComponent = value3 ? null : isFullServerGating || property ? ((Component) => <Component style={styles.allChannelsSwitch} channelAccessFormat={property9} setChannelAccessFormat={property10} disabled={value23} />)(importDefault(16098) /* metro dependency 16098: AllChannelsSwitch */) : null;
sectionListBindingProps.renderSectionHeader = renderSectionHeader_124189;
sectionListBindingProps.stickySectionHeadersEnabled = false;
sectionListBindingProps.renderSectionFooter = renderSectionFooter_124190;
sectionListBindingProps.ItemSeparatorComponent = ItemSeparator_124164;
sectionListBindingProps.SectionSeparatorComponent = Separator_124163;
sectionListBindingProps.ListFooterComponent = r4;
return <SectionList {...sectionListBindingProps} />;
}
function GuildRoleSubscriptionTierBenefitsTab({onlyChannels, onlyIntangible}) { // fn#124192, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:7204, offset: 0x025ab884, size: 48 bytes, params: 2, frame: 14
return <Content_124169 onlyChannels={onlyChannels} onlyIntangible={onlyIntangible} />;
}
function GuildRoleSubscriptionTierChannelBenefitsModal(a0) { // fn#124193, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:7589, offset: 0x025ab8b4, size: 219 bytes, params: 2, frame: 20
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['0eV/GY']);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.description = intl2.string((require(1244) /* metro dependency 1244: indexNative */).t.iMSIWp);
object2.canProceedToNextStep = true;
const INTANGIBLE_BENEFITS = GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS;
object2.nextStep = INTANGIBLE_BENEFITS;
copyDataProperties(object2, a0, intl);
object2['scrollable'] = false;
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
<GuildRoleSubscriptionTierBenefitsTab onlyChannels />
</GuildRoleSubscriptionTierEditStep>
);
}
function GuildRoleSubscriptionTierIntangibleBenefitsModal(a0) { // fn#124194, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:7963, offset: 0x025ab98f, size: 219 bytes, params: 2, frame: 20
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['+h9nJG']);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.description = intl2.string((require(1244) /* metro dependency 1244: indexNative */).t.oGS4tC);
object2.canProceedToNextStep = true;
const DESIGN = GuildRoleSubscriptionsTierScenes.DESIGN;
object2.nextStep = DESIGN;
copyDataProperties(object2, a0, intl);
object2['scrollable'] = false;
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
<GuildRoleSubscriptionTierBenefitsTab onlyIntangible />
</GuildRoleSubscriptionTierEditStep>
);
}
function _fun124167(a0) { // fn#124167, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:3121, offset: 0x025aae69, size: 92 bytes, params: 2, frame: 16
const value2 = options.find(function(a0) {
return a0.isDefault;
});
const defaultImport = importDefault(44) /* metro dependency 44 */;
const value4 = null;
defaultImport(value4 != value2, 'Missing default trial duartion option');
onChangeTrialInterval(a0 ? value2.value : value4);
}
function GuildRoleSubscriptionTierBenefitsModalHeader({type}) { // fn#124170, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5657, owner: Content_124169.GuildRoleSubscriptionTierBenefitsModalHeader, offset: 0x025ab293, size: 85 bytes, params: 2, frame: 17
return ((Component) => <Component style={(importDefault(12672) /* metro dependency 12672: FormStyles */)().header}>{getSectionLabel_124161(type)}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */);
}
function addBenefit(a0) { // fn#124171, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5042, owner: Content_124169.addBenefit, offset: 0x025ab2e8, size: 80 bytes, params: 2, frame: 12
const env0_0 = a0;
const ref_type = a0.ref_type;
const CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
if (ref_type === CHANNEL) {
env0_8(_fun124172);
} else {
env0_10(_fun124173);
}
}
function _fun124174() { // fn#124174, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5134, offset: 0x025ab338, size: 167 bytes, params: 1, frame: 14
var environment;
var push;
var value3;
var value4;
const value2 = env0_16.filter(_fun124175);
const items2 = [];
if (!(result || env0_13)) {
push = items2.push;
value3 = environment.__proto__;
Reflect.apply(push, items2, [{type: env1_16.CHANNEL, data: env0_7}]);
}
if (!result_2) {
push = items2.push;
value4 = environment.__proto__;
Reflect.apply(push, items2, [{type: env1_16.INTANGIBLE, data: env0_9}]);
}
if (!env0_3) {
push = items2.push;
value = environment.__proto__;
Reflect.apply(push, items2, [{type: env1_16.EMOJI, data: value2}]);
}
return items2;
}
function handleEditBenefit(a0, a1) { // fn#124176, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5338, owner: Content_124169.handleEditBenefit, offset: 0x025ab3fa, size: 105 bytes, params: 3, frame: 16
var environment;
const env0_0 = a0;
const env0_1 = a1;
const value = environment.__proto__;
(importAll(16088) /* metro dependency 16088: GuildRoleSubscriptionsModalActionCreatorsNative */).showEditBenefitModal({guildId: guildId,
benefit: a0, onDelete: onDelete_124177, onSave: function(a0) {
_fun124184(a0, require);
}, listingId: editStateId});
}
function Content_124169RenderItem(a0) { // fn#124187, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:6016, owner: Content_124169.renderItem, offset: 0x025ab5a9, size: 365 bytes, params: 2, frame: 21
var r0;
const item = a0.item;
const index = a0.index;
let value = index === a0.section.data.length - 1;
const items = [styles.item];
items[1] = index === 0 && styles.itemFirst;
items[2] = value && styles.itemLast;
value = 'roles' in item;
if (value) {
r0 = <View style={[items, env0_14 && styles.disabled]}><EmojiRowLabel emoji={item} /></View>;
} else {
value = importDefault(8792) /* metro dependency 8792: TouchableHitBox */;
value = ((Component) => <Component style={[items,
env0_14 && styles.disabled]} accessibilityRole="button" accessibilityState={{disabled: env0_14}} onPress={function() {
return handleEditBenefit(item, index);
}} disabled={env0_14}>{((GuildRoleSubscriptionBenefitPreview) => <GuildRoleSubscriptionBenefitPreview guildId={guildId} benefit={item} />)((require(16097) /* metro dependency 16097: GuildRoleSubscriptionBenefitPreview */).GuildRoleSubscriptionBenefitPreview)}</Component>)(value);
r0 = value;
}
return r0;
}
function Content_124169RenderSectionHeader(a0) { // fn#124189, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:6621, owner: Content_124169.renderSectionHeader, offset: 0x025ab732, size: 44 bytes, params: 2, frame: 13
return <GuildRoleSubscriptionTierBenefitsModalHeader type={a0.section.type} />;
}
function Content_124169RenderSectionFooter(a0) { // fn#124190, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:6751, owner: Content_124169.renderSectionFooter, offset: 0x025ab75e, size: 78 bytes, params: 2, frame: 16
return (
<AddBenefitButton
label={getAddItemLabel(a0.section.type)}
onPress={onPress_124191}
disabled={env0_14}
/>
);
}
function _fun124175({id}) { // fn#124175, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5156, offset: 0x025ab3df, size: 27 bytes, params: 2, frame: 11
return env1_11.has(id);
}
function handleEditBenefitOnDelete() { // fn#124177, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5406, owner: Content_124169.handleEditBenefit.onDelete, offset: 0x025ab463, size: 36 bytes, params: 1, frame: 13
_fun124178(env0_0.ref_type, require);
}
function handleEditBenefitOnSave(a0) { // fn#124183, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5522, owner: Content_124169.handleEditBenefit.onSave, offset: 0x025ab514, size: 29 bytes, params: 2, frame: 13
_fun124184(a0, require);
}
function renderSectionFooterOnPress() { // fn#124191, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:6826, owner: Content_124169.renderSectionFooter.onPress, offset: 0x025ab7ac, size: 216 bytes, params: 1, frame: 15
var r5;
var showCreateBenefitModal;
var value2;
var showEditEmojisModal;
var value3;
const typeBinding = type;
let value = environment.__proto__.__proto__;
const EMOJI = env2_16.EMOJI;
if (typeBinding === EMOJI) {
value = importAll(16088) /* metro dependency 16088: GuildRoleSubscriptionsModalActionCreatorsNative */;
showEditEmojisModal = value.showEditEmojisModal;
value3 = environment.__proto__;
Reflect.apply(showEditEmojisModal, value, [{guildId: guildId, subscriptionRoleId: env1_6,
initialTierEmojiIds: env1_11, onSave: env1_12, listingId: editStateId}]);
} else {
r5 = typeBinding === env2_16.CHANNEL ? GuildRoleSubscriptionBenefitTypes.CHANNEL : GuildRoleSubscriptionBenefitTypes.INTANGIBLE;
value = importAll(16088) /* metro dependency 16088: GuildRoleSubscriptionsModalActionCreatorsNative */;
showCreateBenefitModal = value.showCreateBenefitModal;
value2 = environment.__proto__;
Reflect.apply(showCreateBenefitModal, value, [{guildId: guildId, type: r5, onSave: addBenefit,
listingId: editStateId}]);
}
}
function _fun124178(a0, a1) { // fn#124178, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5411, offset: 0x025ab487, size: 77 bytes, params: 3, frame: 12
var environment;
const env0_0 = a1;
const CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
if (a0 === CHANNEL) {
value = environment.__proto__.__proto__;
env2_8(function(a0) {
return a0.filter(_fun124180);
});
} else {
value = environment.__proto__.__proto__;
env2_10(_fun124181);
}
}
function _fun124184(a0, a1) { // fn#124184, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5526, offset: 0x025ab531, size: 87 bytes, params: 3, frame: 12
var environment;
const env0_0 = a0;
const env0_1 = a1;
const ref_type = a0.ref_type;
const CHANNEL = GuildRoleSubscriptionBenefitTypes.CHANNEL;
if (ref_type === CHANNEL) {
value = environment.__proto__.__proto__;
env2_8(_fun124185);
} else {
value = environment.__proto__.__proto__;
env2_10(_fun124186);
}
}
function _fun124179(a0) { // fn#124179, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5436, offset: 0x025ab4d4, size: 24 bytes, params: 2, frame: 11
return a0.filter(function(a0, a1) {
return a1 !== require;
});
}
function _fun124181(a0) { // fn#124181, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5469, offset: 0x025ab4fc, size: 24 bytes, params: 2, frame: 11
return a0.filter(function(a0, a1) {
return a1 !== require;
});
}
function _fun124185(a0) { // fn#124185, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16289:5560, offset: 0x025ab588, size: 33 bytes, params: 2, frame: 13
const items2 = [];
arraySpread(items2, a0, 0, undefined);
items2[require] = env0_0;
return items2;
}
@@ -0,0 +1,100 @@
/* Metro module 16101; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierConfirmationModal.tsx; dependencies: [5, 57, 31, 27, 16066, 33, 4501, 697, 12672, 16078, 16070, 1244, 8127, 5475, 4573, 16102, 2] */
function _fun124312(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124312, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16309:6, offset: 0x025b067a, size: 328 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(5) /* metro dependency 5 */;
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(27) /* metro dependency 27 */).View;
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
let value = require(33) /* metro dependency 33 */;
const env0_8 = value.jsx;
const env0_9 = value.Fragment;
const env0_10 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object = {'height': 114, 'width': '100%', 'borderRadius': null, 'overflow': 'hidden'};
object.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
const env0_11 = Reflect.apply(createStyles, value, [{description: {paddingHorizontal: 16},
coverPhotoContainer: {marginHorizontal: 16}, coverPhoto: object}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierConfirmationModal.tsx');
exports.default = GuildRoleSubscriptionTierConfirmationModal;
}
function GuildRoleSubscriptionTierConfirmationModal(a0) { // fn#124313, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16309:521, offset: 0x025b07c2, size: 881 bytes, params: 2, frame: 39
var object2;
var r12;
var r6;
var jsxRuntimeEnv0_9Binding;
var jsxRuntimeEnv0_9Binding2;
var items3;
var items2;
const onDone = a0.onDone;
let isForGroupSetupModal = a0.isForGroupSetupModal;
isForGroupSetupModal = !(isForGroupSetupModal === undefined) && isForGroupSetupModal;
let value = Object.create(null);
value.onDone = 0;
value.isForGroupSetupModal = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const styles = useStyles();
const value4 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const {guildId,
editStateId} = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const binding = env0_5;
const value6 = binding.useState(false);
const binding2 = env0_4;
const value7 = binding2(value6, 2);
const property = value7[0];
const property2 = value7[1];
const useGroupCoverState = RoleTierEditStore.useGroupCoverState;
const property3 = binding2(Reflect.apply(useGroupCoverState, RoleTierEditStore, []), 1)[0];
const useGroupDescriptionState = RoleTierEditStore.useGroupDescriptionState;
const property4 = binding2(Reflect.apply(useGroupDescriptionState, RoleTierEditStore, []), 1)[0];
const value9 = binding.useCallback(env0_3(_fun124315), [property2, onDone]);
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const T0lZnZ = (require(1244) /* metro dependency 1244: indexNative */).t.T0lZnZ;
object2.title = Reflect.apply(string, intl, [T0lZnZ]);
object2.description = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ltfNIq);
object2.canProceedToNextStep = !property;
object2.nextStep = null;
object2.onProceed = value9;
object2.submitting = property;
copyDataProperties(object2, value2, value);
if (isForGroupSetupModal) {
jsxRuntimeEnv0_9Binding = jsxRuntimeEnv0_9;
value = property3 != null;
if (value) {
jsxRuntimeEnv0_9Binding2 = jsxRuntimeEnv0_9;
value = importDefault(8127) /* metro dependency 8127: FormHeader */;
value = ((Component) => <Component style={value4.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3S8gA7'])}</Component>)(value);
items3 = [value];
var viewBindingProps = {style: styles.coverPhotoContainer};
value = importDefault(5475) /* metro dependency 5475: FastImage */;
items3[1] = <View {...viewBindingProps}>{((Component) => <Component style={styles.coverPhoto} resizeMode="cover" source={property3} />)(value)}</View>;
value = <>{items3}</>;
r12 = value;
} else {
r12 = value;
}
items2 = [r12];
value = importDefault(8127) /* metro dependency 8127: FormHeader */;
items2[1] = ((Component) => <Component style={value4.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['74JctW'])}</Component>)(value);
items2[2] = ((Text) => <Text style={styles.description} variant="text-md/medium" color="interactive-text-active">{property4}</Text>)((require(4573) /* metro dependency 4573: Text */).Text);
value = <>{items2}</>;
r6 = value;
} else {
r6 = isForGroupSetupModal;
}
const GuildRoleSubscriptionListingPreview = (require(16102) /* metro dependency 16102: GuildRoleSubscriptionListingPreview */).GuildRoleSubscriptionListingPreview;
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
{r6}
<GuildRoleSubscriptionListingPreview guildId={guildId} listingId={editStateId} />
</GuildRoleSubscriptionTierEditStep>
);
}
@@ -0,0 +1,97 @@
/* Metro module 16077; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierCreationModal.tsx; dependencies: [5, 57, 31, 16066, 13668, 33, 13690, 3856, 1244, 16078, 16061, 16079, 2] */
function _fun124118(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124118, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:6, offset: 0x025a8fb9, size: 226 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(5) /* metro dependency 5 */;
const env0_5 = importDefault(57) /* metro dependency 57 */;
const env0_6 = importAll(31) /* metro dependency 31 */;
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
const guildRoleSubscriptionsConstantsModule = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_8 = guildRoleSubscriptionsConstantsModule.GuildRoleSubscriptionsTierScenes;
const env0_9 = guildRoleSubscriptionsConstantsModule.GUILD_ROLE_SUBSCRIPTION_TIER_CREATION_KEY;
const env0_10 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierCreationModal.tsx');
exports.default = GuildRoleSubscriptionTierCreationModal;
}
function GuildRoleSubscriptionTierCreationModal({guildId, groupListingId, editStateId, onClose, onAfterTierCreation}) { // fn#124119, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:381, offset: 0x025a909b, size: 347 bytes, params: 2, frame: 22
const binding = env0_6;
const [property, env0_5] = env0_5Binding(binding.useState(editStateId), 2);
const value4 = (importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useCreateOrUpdateListingFromEditState();
var env0_6 = value4.handleCreateOrUpdateFromEditState;
const error = value4.error;
const value5 = _fun124120();
binding.useLayoutEffect(_fun124125, [error]);
const value6 = binding.useMemo(function() {
var DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
return [DETAILS, GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS,
GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS, GuildRoleSubscriptionsTierScenes.DESIGN,
GuildRoleSubscriptionsTierScenes.CONFIRMATION];
}, []);
const EditStateContextProvider = (require(16078) /* metro dependency 16078: EditStateContextProvider */).EditStateContextProvider;
const RoleSubscriptionSettingsDisabledContextProvider = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).RoleSubscriptionSettingsDisabledContextProvider;
return (
<EditStateContextProvider
guildId={guildId}
editStateId={property}
groupListingId={groupListingId}
>
<RoleSubscriptionSettingsDisabledContextProvider guildId={guildId}>
{((Component) => <Component guildId={guildId} modalKey={GUILD_ROLE_SUBSCRIPTION_TIER_CREATION_KEY} onDone={value5} steps={value6} />)(importDefault(16079) /* metro dependency 16079: RoleTierEditScenesModal */)}
</RoleSubscriptionSettingsDisabledContextProvider>
</EditStateContextProvider>
);
}
function _fun124120() { // fn#124120, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:648, offset: 0x025a91f6, size: 36 bytes, params: 1, frame: 12
const env0_0 = env1_4(_fun124122);
return _fun124124;
}
function _fun124125() { // fn#124125, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:880, offset: 0x025a92b3, size: 126 bytes, params: 1, frame: 17
var r0;
var value2;
var moduleValue;
var presentError;
var intl;
var anyErrorMessage;
if (error != null) {
value2 = environment.__proto__;
moduleValue = require(3856) /* metro dependency 3856: ToastUtils */;
presentError = moduleValue.presentError;
anyErrorMessage = error.getAnyErrorMessage();
if (anyErrorMessage != null) {
r0 = anyErrorMessage;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.R0RpRX);
}
Reflect.apply(presentError, moduleValue, [r0]);
}
}
function* _fun124122() { // fn#124122, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:668, offset: 0x025a9225, size: 118 bytes, params: 1, frame: 14
var environment;
var value5;
if (true) {
value = environment.__proto__.__proto__;
yield env2_6({guildId: require, editStateId: env2_4, groupListingId: importDefault,
onBeforeDispatchNewListing: onBeforeDispatchNewListing_124123});
var value3 = undefined;
if (false) {
return value3;
}
if (value3) {
value5 = environment.__proto__.__proto__.__proto__;
env3_7.resetImperatively();
importAll();
dependencyMap();
}
}
}
function onBeforeDispatchNewListing_124123({id}) { // fn#124123, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16285:758, offset: 0x025a929b, size: 24 bytes, params: 2, frame: 11
return env3_5(id);
}
@@ -0,0 +1,146 @@
/* Metro module 16104; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierDesignModal.tsx; dependencies: [57, 31, 27, 13668, 661, 33, 4501, 697, 3860, 13701, 12672, 16078, 13690, 6794, 16061, 8127, 1244, 16067, 16105, 16070, 2] */
function _fun124328(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124328, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:6, offset: 0x025b17bc, size: 439 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const env0_6 = (require(27) /* metro dependency 27 */).View;
const env0_7 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionsTierScenes;
const env0_8 = (require(661) /* metro dependency 661: Constants */).UPLOAD_SMALL_SIZE;
let value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
const env0_11 = value.Fragment;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object = {'padding': 16, 'borderRadius': null, 'borderWidth': 0, 'borderLeftWidth': 1, 'borderRightWidth': 1};
object.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.none;
const BORDER_STRONG = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_STRONG;
object.borderColor = BORDER_STRONG;
const env0_12 = Reflect.apply(createStyles, value, [{memberPreviews: {'paddingHorizontal': 16, 'paddingTop': 26},
member: object, memberLight: {'borderTopLeftRadius': 8, 'borderTopRightRadius': 8, 'borderTopWidth': 1},
memberDark: {'borderBottomLeftRadius': 8, 'borderBottomRightRadius': 8, 'borderBottomWidth': 1}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierDesignModal.tsx');
exports.default = GuildRoleSubscriptionTierDesignModal;
exports.GuildRoleSubscriptionTierDesignTab = GuildRoleSubscriptionTierDesignTab;
}
function MemberPreviews({role}) { // fn#124329, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:624, offset: 0x025b1973, size: 493 bytes, params: 2, frame: 28
const styles = useStyles();
const useTokenModule = require(3860) /* metro dependency 3860: useToken */;
let useToken = useTokenModule.useToken;
let BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
let DARK = (importDefault(697) /* metro dependency 697: native */).themes.DARK;
const value2 = Reflect.apply(useToken, useTokenModule, [BACKGROUND_BASE_LOW, DARK]);
const moduleValue2 = useTokenModule;
useToken = moduleValue2.useToken;
BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
let LIGHT = (importDefault(697) /* metro dependency 697: native */).themes.LIGHT;
const value3 = Reflect.apply(useToken, moduleValue2, [BACKGROUND_BASE_LOW, LIGHT]);
const moduleValue3 = useTokenModule;
useToken = moduleValue3.useToken;
let TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
DARK = (importDefault(697) /* metro dependency 697: native */).themes.DARK;
const value4 = Reflect.apply(useToken, moduleValue3, [TEXT_DEFAULT, DARK]);
const moduleValue4 = useTokenModule;
useToken = moduleValue4.useToken;
TEXT_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_DEFAULT;
LIGHT = (importDefault(697) /* metro dependency 697: native */).themes.LIGHT;
const value5 = Reflect.apply(useToken, moduleValue4, [TEXT_DEFAULT, LIGHT]);
const GuildRoleSubscriptionMemberPreview = (require(13701) /* metro dependency 13701: GuildRoleSubscriptionMemberPreview */).GuildRoleSubscriptionMemberPreview;
return (
<View style={styles.memberPreviews}>
<GuildRoleSubscriptionMemberPreview
style={[styles.member, styles.memberLight, {backgroundColor: value3}]}
textStyle={{color: value5}}
role={role}
/>
<GuildRoleSubscriptionMemberPreview
style={[styles.member, styles.memberDark, {backgroundColor: value2}]}
textStyle={{color: value4}}
role={role}
/>
</View>
);
}
function Content_124330() { // fn#124330, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:1255, offset: 0x025b1b60, size: 685 bytes, params: 1, frame: 33
const value2 = undefined;
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const {editStateId,
guildId} = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const value6 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useRoleColor(editStateId,
guildId), 2);
const property = value6[0];
const property2 = value6[1];
const env0_0 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useRoleIcon(editStateId,
guildId), 2)[1];
const value8 = (importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useRole(editStateId,
guildId);
const binding = env0_5;
const useMemo = binding.useMemo;
const customIconSrc = Reflect.apply(useMemo, binding, [_fun124331, [value8]]).customIconSrc;
const r20 = customIconSrc != null ? {uri: customIconSrc} : value2;
const value9 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const jsxRuntimeEnv0_11Binding = jsxRuntimeEnv0_11;
const items2 = [<MemberPreviews role={value8} />];
const FormHeader = importDefault(8127) /* metro dependency 8127: FormHeader */;
const header = value3.header;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
items2[1] = <FormHeader style={header}>{Reflect.apply(string, intl,
[(require(1244) /* metro dependency 1244: indexNative */).t.sEr1zr])}</FormHeader>;
const FormImagePicker = importDefault(16067) /* metro dependency 16067: FormImagePicker */;
string = intl.string;
const Glqj9m = (require(1244) /* metro dependency 1244: indexNative */).t.Glqj9m;
const PreviewShape = (require(16067) /* metro dependency 16067: FormImagePicker */).PreviewShape;
const SQUIRCLE = PreviewShape.SQUIRCLE;
items2[2] = <FormImagePicker description={Reflect.apply(string, intl,
[Glqj9m])} image={r20} imageUploadSize={UPLOAD_SMALL_SIZE} previewShape={SQUIRCLE} previewResizeMode="cover" setImage={setImage_124332} disabled={value9} />;
items2[3] = <FormHeader style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['W7hH+z'])}</FormHeader>;
items2[4] = ((Component) => <Component color={property} onChange={property2} disabled={value9} />)(importDefault(16105) /* metro dependency 16105: FormRoleColorPicker */);
return (
<>
{items2}
</>
);
}
function GuildRoleSubscriptionTierDesignModal(a0) { // fn#124333, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:2253, offset: 0x025b1e65, size: 203 bytes, params: 2, frame: 20
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const AbcgTx = (require(1244) /* metro dependency 1244: indexNative */).t.AbcgTx;
object2.title = Reflect.apply(string, intl, [AbcgTx]);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
string = intl2.string;
const YAUjGn = (require(1244) /* metro dependency 1244: indexNative */).t.YAUjGn;
object2.description = Reflect.apply(string, intl2, [YAUjGn]);
object2.canProceedToNextStep = true;
const CONFIRMATION = GuildRoleSubscriptionsTierScenes.CONFIRMATION;
object2.nextStep = CONFIRMATION;
copyDataProperties(object2, a0, intl);
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
<Content_124330 />
</GuildRoleSubscriptionTierEditStep>
);
}
function GuildRoleSubscriptionTierDesignTab() { // fn#124334, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:2535, offset: 0x025b1f30, size: 23 bytes, params: 1, frame: 13
return <Content_124330 />;
}
function _fun124331() { // fn#124331, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:1481, offset: 0x025b1e0d, size: 53 bytes, params: 1, frame: 11
let value = environment.__proto__;
value = require(6794) /* metro dependency 6794: RoleIconUtils */;
value = value.getRoleIconData(env0_1);
return value ?? ({});
}
function Content_124330SetImage({uri}) { // fn#124332, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16312:1933, owner: Content_124330.setImage, offset: 0x025b1e42, size: 35 bytes, params: 2, frame: 12
return env0_0({icon: uri, unicodeEmoji: undefined});
}
@@ -0,0 +1,124 @@
/* Metro module 16106; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierDetailsModal.tsx; dependencies: [57, 31, 13668, 661, 33, 12672, 16078, 13690, 13675, 16061, 8127, 1244, 16067, 7972, 1305, 16107, 16070, 2] */
function _fun124338(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124338, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16314:6, offset: 0x025b20ec, size: 279 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
let value = importAll(31) /* metro dependency 31 */;
const guildRoleSubscriptionsConstantsModule = require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */;
const env0_5 = guildRoleSubscriptionsConstantsModule.GuildRoleSubscriptionsTierScenes;
const env0_6 = guildRoleSubscriptionsConstantsModule.MAX_SUBSCRIPTION_TIER_DESCRIPTION_LENGTH;
const env0_7 = guildRoleSubscriptionsConstantsModule.MAX_SUBSCRIPTION_TIER_NAME_LENGTH;
const env0_8 = (require(661) /* metro dependency 661: Constants */).UPLOAD_MEDIUM_SIZE;
const value3 = require(33) /* metro dependency 33 */;
const env0_9 = value3.jsx;
const env0_10 = value3.Fragment;
const env0_11 = value3.jsxs;
value = value.memo(_fun124341);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierDetailsModal.tsx');
exports.default = GuildRoleSubscriptionTierDetailsModal_124342;
exports.GuildRoleSubscriptionTierDetailsTab = value;
}
function Content_124339() { // fn#124339, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16314:315, offset: 0x025b2203, size: 1201 bytes, params: 1, frame: 41
const value2 = undefined;
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const {guildId,
editStateId} = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const value6 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useName(editStateId),
2);
const property = value6[0];
const property2 = value6[1];
const value8 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useImage(editStateId),
2);
const property3 = value8[0];
const env0_0 = value8[1];
const value10 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).usePriceTier(editStateId),
2);
const property4 = value10[0];
const property5 = value10[1];
const value12 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useDescription(editStateId),
2);
const property6 = value12[0];
const property7 = value12[1];
const value13 = null;
const r28 = value13 != property3 ? {uri: property3} : value13;
const value14 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListing(editStateId);
const value15 = (value13 == value14 ? value2 : value14.published) === true;
const value16 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const jsxRuntimeEnv0_10Binding = jsxRuntimeEnv0_10;
const FormHeader = importDefault(8127) /* metro dependency 8127: FormHeader */;
let header = value3.header;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const items2 = [<FormHeader style={header}>{Reflect.apply(string, intl,
[(require(1244) /* metro dependency 1244: indexNative */).t['6XpbbR']])}</FormHeader>];
const FormImagePicker = importDefault(16067) /* metro dependency 16067: FormImagePicker */;
string = intl.string;
const pNZfgG = (require(1244) /* metro dependency 1244: indexNative */).t.pNZfgG;
const PreviewShape = (require(16067) /* metro dependency 16067: FormImagePicker */).PreviewShape;
const CIRCLE = PreviewShape.CIRCLE;
items2[1] = <FormImagePicker description={Reflect.apply(string, intl,
[pNZfgG])} image={r28} imageUploadSize={UPLOAD_MEDIUM_SIZE} previewShape={CIRCLE} setImage={setImage_124340} disabled={value16} />;
items2[2] = <FormHeader style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.rJ6Oad)}</FormHeader>;
const FormInput = (require(7972) /* metro dependency 7972: native */).FormInput;
const formInputProps = {'style': null, 'showTopContainer': false, 'multiline': false, style: value3.textInput,
maxLength: MAX_SUBSCRIPTION_TIER_NAME_LENGTH, value: property,
placeholder: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['i4/g+E']),
onChange: property2, autoFocus: true};
const ClearButtonVisibility = (require(1305) /* metro dependency 1305: native */).ClearButtonVisibility;
const WITH_CONTENT = ClearButtonVisibility.WITH_CONTENT;
formInputProps.clearButtonVisibility = WITH_CONTENT;
formInputProps.disabled = value16;
items2[3] = <FormInput {...formInputProps} />;
items2[4] = <FormHeader style={value3.header}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['74JctW'])}</FormHeader>;
items2[5] = <FormInput style={value3.textInput} showTopContainer={false} multiline maxLength={MAX_SUBSCRIPTION_TIER_DESCRIPTION_LENGTH} numberOfLines={3} value={property6} placeholder={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3YHwoG'])} onChange={property7} disabled={value16} />;
const defaultImport5 = FormHeader;
header = value3.header;
string = intl.string;
const CrRVAx = (require(1244) /* metro dependency 1244: indexNative */).t.CrRVAx;
items2[6] = ((Component) => <Component style={header}>{Reflect.apply(string, intl,
[CrRVAx])}</Component>)(defaultImport5);
items2[7] = ((Component) => <Component disabled={value15 || value16} guildId={guildId} price={value13 != property4 ? property4 : value13} onChange={property5} />)(importDefault(16107) /* metro dependency 16107: FormPriceTier */);
return (
<>
{items2}
</>
);
}
function _fun124341() { // fn#124341, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16314:1778, offset: 0x025b26cc, size: 23 bytes, params: 1, frame: 13
return <Content_124339 />;
}
function GuildRoleSubscriptionTierDetailsModal_124342(a0) { // fn#124342, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16314:1950, offset: 0x025b26e3, size: 431 bytes, params: 2, frame: 21
const editStateContextProviderModule = require(16078) /* metro dependency 16078: EditStateContextProvider */;
const useEditStateContext = editStateContextProviderModule.useEditStateContext;
const editStateId = Reflect.apply(useEditStateContext, editStateContextProviderModule, []).editStateId;
const r5 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useName(editStateId),
1)[0].length > 0 && env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).usePriceTier(editStateId),
1)[0] != null && env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useDescription(editStateId),
1)[0].length > 0 && env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useImage(editStateId),
1)[0] != null;
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.title = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.o3pHas);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.description = intl2.string((require(1244) /* metro dependency 1244: indexNative */).t.oOOME5);
object2.canProceedToNextStep = r5;
const CHANNEL_BENEFITS = GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS;
object2.nextStep = CHANNEL_BENEFITS;
object2.scrollable = false;
copyDataProperties(object2, a0, intl);
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
{((Component) => <Component />)(env0_12)}
</GuildRoleSubscriptionTierEditStep>
);
}
function Content_124339SetImage({uri}) { // fn#124340, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16314:986, owner: Content_124339.setImage, offset: 0x025b26b4, size: 24 bytes, params: 2, frame: 11
return env0_0(uri);
}
@@ -0,0 +1,104 @@
/* Metro module 16070; source: modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierEditStep.tsx; dependencies: [31, 27, 33, 4501, 697, 6618, 4573, 13680, 1244, 1585, 4578, 1484, 2] */
function _fun124067(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124067, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16278:6, offset: 0x025a64f9, size: 372 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_4 = value.View;
const env0_5 = value.ScrollView;
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;
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
const env0_8 = Reflect.apply(createStyles, value, [{container: {backgroundColor: BACKGROUND_BASE_LOW,
height: '100%'}, scrollContainer: {flexGrow: 1}, headerContainer: {'position': 'relative', 'paddingTop': 48,
'paddingBottom': 8, 'paddingHorizontal': 16, 'alignItems': 'center'}, title: {'marginTop': 12,
'textAlign': 'center'}, subtitle: {'marginTop': 8, 'textAlign': 'center'}, separator: {marginTop: 24},
footerContainer: {'width': '100%', 'padding': 16}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/GuildRoleSubscriptionTierEditStep.tsx');
exports.default = GuildRoleSubscriptionTierEditStep;
}
function Header_124068({description, title}) { // fn#124068, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16278:557, offset: 0x025a666d, size: 250 bytes, params: 2, frame: 24
const styles = useStyles();
const SafeAreaPaddingView = (require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text style={styles.title} accessibilityRole="header" variant="heading-xl/extrabold" color="mobile-text-heading-primary">{title}</Text>];
items2[1] = <Text style={styles.subtitle} variant="text-sm/medium" color="text-default">{description}</Text>;
items2[2] = ((Component) => <Component style={styles.separator} />)(importDefault(13680) /* metro dependency 13680: FormSeparator */);
return (
<SafeAreaPaddingView top style={styles.headerContainer}>
{items2}
</SafeAreaPaddingView>
);
}
function Footer_124069({canProceedToNextStep, nextStep, onProceed, submitting}) { // fn#124069, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16278:950, offset: 0x025a6767, size: 295 bytes, params: 2, frame: 22
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
const r8 = nextStep == null ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t['4cAsqe']) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['bm6P5/']);
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const items2 = [styles.footerContainer];
items2[1] = {paddingBottom: bottom};
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
return (
<View style={items2}>
<Button
loading={submitting}
disabled={!canProceedToNextStep}
text={r8}
onPress={onProceed}
/>
</View>
);
}
function GuildRoleSubscriptionTierEditStep(a0) { // fn#124070, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16278:1409, offset: 0x025a688e, size: 415 bytes, params: 2, frame: 24
var r0;
var items3;
var items2;
const scrollable = a0.scrollable;
const value = Object.create(null);
value.scrollable = 0;
const value2 = copyDataProperties({}, a0, value, undefined);
const styles = useStyles();
const value4 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const nextStep = value2.nextStep;
const onProceed = value2.onProceed;
const binding = env0_3;
const useCallback = binding.useCallback;
let object = [value4, nextStep, onProceed];
const value5 = Reflect.apply(useCallback, binding, [_fun124071, object]);
if (scrollable !== false) {
object = {};
object.style = styles.container;
items2 = [<Header_124068 {...value2} />];
items2[1] = <ScrollView keyboardShouldPersistTaps="handled" showsVerticalScrollIndicator={false} alwaysBounceVertical={false} contentContainerStyle={[styles.scrollContainer]}>{value2.children}</ScrollView>;
items2[2] = <Footer_124069 {...value2} {...{['onProceed']: value5}} />;
object.children = items2;
r0 = object;
} else {
object = {};
object.style = styles.container;
items3 = [<Header_124068 {...value2} />];
items3[1] = value2.children;
items3[2] = <Footer_124069 {...value2} {...{['onProceed']: value5}} />;
object.children = items3;
r0 = object;
}
return <View {...r0} />;
}
function _fun124071() { // fn#124071, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16278:1554, offset: 0x025a6a2d, size: 55 bytes, params: 1, frame: 12
var binding;
if (onProceed != null) {
onProceed();
} else if (nextStep != null) {
binding = env0_0;
binding.push(nextStep);
}
}
@@ -0,0 +1,55 @@
/* Metro module 13683; source: modules/guild_role_subscriptions/native/components/LabeledDataBlock.tsx; dependencies: [31, 27, 661, 33, 4501, 697, 6597, 4573, 5278, 1305, 2] */
function _fun104516(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104516, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13880:6, offset: 0x02298a68, size: 374 bytes, params: 8, frame: 24
var object3;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_2 = (require(27) /* metro dependency 27 */).View;
const Fonts = (require(661) /* metro dependency 661: Constants */).Fonts;
let value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object3 = {};
const object5 = {'backgroundColor': null, 'borderRadius': null, 'flexBasis': 'auto', 'flexGrow': 1, 'padding': 16};
const BACKGROUND_MOD_NORMAL = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_NORMAL;
object5.backgroundColor = BACKGROUND_MOD_NORMAL;
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object3.container = object5;
object3.title = {marginRight: 4};
const object6 = {};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
const PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
copyDataProperties(object6, textStyles(PRIMARY_MEDIUM, MOBILE_TEXT_HEADING_PRIMARY, 24), undefined);
object3.data = object6;
object3.titleSection = {'flexDirection': 'row', 'alignItems': 'center', 'marginBottom': 16};
const env0_5 = Reflect.apply(createStyles, value, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/LabeledDataBlock.tsx');
exports.default = LabeledDataBlock;
}
function LabeledDataBlock({children, title, style, icon, onPressIcon}) { // fn#104517, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13880:613, offset: 0x02298bde, size: 382 bytes, params: 2, frame: 28
const styles = useStyles();
const items2 = [styles.container, style];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<View style={items2}>
<View style={styles.titleSection}>
<Text
style={styles.title}
accessibilityRole="header"
variant="text-sm/medium"
color="interactive-text-default"
>
{title}
</Text>
{icon != null && ((PressableOpacity) => <PressableOpacity accessibilityRole="button" onPress={onPressIcon}>{((Icon) => <Icon size={(require(1305) /* metro dependency 1305: native */).Icon.Sizes.SMALL} source={icon} />)((require(1305) /* metro dependency 1305: native */).Icon)}</PressableOpacity>)((require(5278) /* metro dependency 5278: Pressables */).PressableOpacity)}
</View>
{typeof children !== 'string' ? children : ((LegacyText) => <LegacyText style={styles.data}>{children}</LegacyText>)((require(1305) /* metro dependency 1305: native */).LegacyText)}
</View>
);
}
@@ -0,0 +1,43 @@
/* Metro module 8649; source: modules/guild_role_subscriptions/native/components/LayoutUtils.tsx; dependencies: [31, 33, 1305, 2] */
function _fun68162(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#68162, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8834:6, offset: 0x01c41be4, size: 154 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_2 = importAll(31) /* metro dependency 31 */;
const value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.Fragment;
const env0_5 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/LayoutUtils.tsx');
exports.GappedList = GappedList;
}
function GappedList({children, gap, renderGap}) { // fn#68163, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8834:260, offset: 0x01c41c7e, size: 133 bytes, params: 2, frame: 17
if (gap !== undefined) {
}
const binding = undefined;
let Children = binding.Children;
const value3 = Children.toArray(children).filter(function(a0) {
return a0 != null;
});
const jsxRuntimeEnv0_4Binding = jsxRuntimeEnv0_4;
Children = binding.Children;
return (
<>
{Children.map(value3, _fun68165)}
</>
);
}
function _fun68165(a0, a1) { // fn#68165, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8834:402, offset: 0x01c41d03, size: 144 bytes, params: 3, frame: 20
const value = environment.__proto__;
const jsxRuntimeEnv1_4Binding = jsxRuntimeEnv1_4;
const items2 = [a0];
items2[1] = a1 !== env0_2.length - 1 && (renderGap != null ? renderGap() : ((Spacer) => <Spacer size={gap} />)((require(1305) /* metro dependency 1305: native */).Spacer));
return (
<>
{items2}
</>
);
}
@@ -0,0 +1,17 @@
/* Metro module 13678; source: modules/guild_role_subscriptions/native/components/LoadingIndicator.tsx; dependencies: [31, 27, 33, 4501, 2] */
function _fun104490(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104490, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13875:6, offset: 0x022971a9, size: 188 bytes, params: 8, frame: 20
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_0 = (require(27) /* metro dependency 27 */).ActivityIndicator;
const env0_1 = (require(33) /* metro dependency 33 */).jsx;
const env0_2 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({indicator: {margin: 16}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/LoadingIndicator.tsx');
exports.default = LoadingIndicator;
}
function LoadingIndicator() { // fn#104491, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13875:309, offset: 0x02297265, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <ActivityIndicator style={styles.indicator} />;
}
@@ -0,0 +1,81 @@
/* Metro module 11745; source: modules/guild_role_subscriptions/native/components/MessageBlock.tsx; dependencies: [31, 27, 33, 697, 4501, 1305, 2] */
function _fun90023(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#90023, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11931:6, offset: 0x02026ed3, size: 254 bytes, params: 8, frame: 19
var object2;
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 env0_4 = (require(33) /* metro dependency 33 */).jsx;
object2 = {RED: 0};
object2[0] = 'RED';
object2.YELLOW = 1;
object2[1] = 'YELLOW';
const env0_6 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun90026);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/MessageBlock.tsx');
exports.default = MessageBlock;
exports.MessageBlockColors = object2;
}
function getContainerStyles(a0) { // fn#90024, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11931:201, offset: 0x02026fd1, size: 170 bytes, params: 2, frame: 15
var object2;
var colors;
const RED = env0_5.RED;
if (RED === a0) {
object2 = {};
colors = (importDefault(697) /* metro dependency 697: native */).colors;
object2.backgroundColor = colors.BACKGROUND_FEEDBACK_CRITICAL;
colors = (importDefault(697) /* metro dependency 697: native */).colors;
object2.borderColor = colors.BORDER_FEEDBACK_CRITICAL;
return object2;
}
const YELLOW = env0_5.YELLOW;
if (YELLOW === a0) {
object2 = {};
colors = (importDefault(697) /* metro dependency 697: native */).colors;
object2.backgroundColor = colors.BACKGROUND_FEEDBACK_WARNING;
colors = (importDefault(697) /* metro dependency 697: native */).colors;
object2.borderColor = colors.STATUS_WARNING;
return object2;
}
}
function getTextColor_90025(a0) { // fn#90025, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11931:497, offset: 0x0202707b, size: 108 bytes, params: 2, frame: 12
const RED = env0_5.RED;
if (RED === a0) {
return (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_CRITICAL;
}
const YELLOW = env0_5.YELLOW;
if (YELLOW === a0) {
return (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_WARNING;
}
}
function _fun90026(a0) { // fn#90026, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11931:675, offset: 0x020270e7, size: 149 bytes, params: 2, frame: 18
const object4 = {};
const object5 = {};
copyDataProperties(object5, getContainerStyles(a0), undefined);
object5['alignItems'] = 'center';
object5['borderRadius'] = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object5['borderWidth'] = 1;
object5['padding'] = 8;
object5['width'] = '100%';
object4.container = object5;
const object6 = {textAlign: 'center'};
object6.color = getTextColor_90025(a0);
object4.text = object6;
return object4;
}
function MessageBlock({color, children}) { // fn#90027, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11931:967, offset: 0x0202717c, size: 105 bytes, params: 2, frame: 18
const styles = useStyles(color);
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
return (
<View style={styles.container}>
<LegacyText style={styles.text}>
{children}
</LegacyText>
</View>
);
}
@@ -0,0 +1,32 @@
/* Metro module 13684; source: modules/guild_role_subscriptions/native/components/NavigateForwardButton.tsx; dependencies: [31, 33, 4501, 697, 5278, 4573, 1305, 13685, 2] */
function _fun104518(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104518, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13881:6, offset: 0x02298d5c, size: 233 bytes, params: 8, frame: 22
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
let value = require(33) /* metro dependency 33 */;
const env0_3 = value.jsx;
const env0_4 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const BACKGROUND_MOD_NORMAL = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_NORMAL;
const env0_5 = Reflect.apply(createStyles, value, [{container: {'alignItems': 'center', 'backgroundColor': null,
'flexDirection': 'row', 'padding': 16, backgroundColor: BACKGROUND_MOD_NORMAL}, text: {flexGrow: 1}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/NavigateForwardButton.tsx');
exports.default = NavigateForwardButton;
}
function NavigateForwardButton({onPress, text}) { // fn#104519, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13881:411, offset: 0x02298e45, size: 196 bytes, params: 2, frame: 21
const styles = useStyles();
const PressableHighlight = (require(5278) /* metro dependency 5278: Pressables */).PressableHighlight;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text2 = <Text style={styles.text} variant="text-md/semibold" color="interactive-text-active">{text}</Text>;
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
return (
<PressableHighlight style={styles.container} onPress={onPress}>
{text2}
<Icon source={importDefault(13685) /* metro dependency 13685 */} />
</PressableHighlight>
);
}
@@ -0,0 +1,17 @@
/* Metro module 16017; source: modules/guild_role_subscriptions/native/components/Placeholder.tsx; dependencies: [31, 27, 33, 4501, 2] */
function _fun123818(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123818, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16225:6, offset: 0x0259c8dd, size: 187 bytes, params: 8, frame: 20
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_0 = (require(27) /* metro dependency 27 */).ActivityIndicator;
const env0_1 = (require(33) /* metro dependency 33 */).jsx;
const env0_2 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({spinner: {marginTop: 12}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/Placeholder.tsx');
exports.default = Placeholder_123819;
}
function Placeholder_123819() { // fn#123819, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16225:305, offset: 0x0259c998, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <ActivityIndicator style={styles.spinner} />;
}
@@ -0,0 +1,381 @@
/* Metro module 16079; source: modules/guild_role_subscriptions/native/components/RoleTierEditScenesModal.tsx; dependencies: [57, 31, 16066, 13668, 33, 4501, 44, 5277, 8160, 1244, 16080, 16065, 16081, 16101, 16104, 16106, 1585, 5080, 6518, 5280, 16108, 2] */
function _fun124130(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124130, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:6, offset: 0x025a9491, size: 344 bytes, params: 8, frame: 19
let env0_0 = require;
const getScreenPropsForScene = function(a0, a1) {
if (a1 == null) {
return {};
}
return a1[a0] ?? ({});
};
const getHeaderRight = function(a0, a1) {
var env0_0 = a0;
var env0_1 = a1;
return _fun124134;
};
const orderify = function(a0, a1) {
var r0;
var object;
var value = a1 + 1;
if (typeof a0 === 'string') {
r0 = {stepNumber: value, scene: a0};
} else {
object = {};
copyDataProperties(object, a0, value);
object['stepNumber'] = value;
r0 = object;
}
return r0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
let value = require(16066) /* metro dependency 16066: RoleTierEditStore */;
const env0_5 = value.useCurrentTierEditScene;
const env0_6 = value.useResetTierEditState;
const env0_7 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionsTierScenes;
value = require(33) /* metro dependency 33 */;
const env0_8 = value.jsx;
const env0_9 = value.Fragment;
const env0_10 = value.jsxs;
const env0_11 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({stepsIndicator: {'position': 'absolute',
'alignSelf': 'center', 'height': 48}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/RoleTierEditScenesModal.tsx');
exports.default = RoleTierEditScenesModal;
}
function getComponentPropsForScreen(a0, a1, a2) { // fn#124131, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:357, offset: 0x025a95e9, size: 158 bytes, params: 4, frame: 17
const property = a1[a0];
const value = undefined;
(importDefault(44) /* metro dependency 44 */)(property != null, 'Props not provided in screen map for scene ' + a0);
const getRuntimeProps = property.getRuntimeProps;
let r3 = getRuntimeProps == null ? value : property.getRuntimeProps();
r3 = r3 ?? ({});
const object2 = {};
copyDataProperties(object2, a2, a0);
copyDataProperties(object2, property, a0);
copyDataProperties(object2, r3, a0);
copyDataProperties(object2, property.extraProps ?? [], a0);
return object2;
}
function getHeaderRight(a0, a1) { // fn#124133, offset: 0x025a96a3, size: 25 bytes, params: 3, frame: 2
const env0_0 = a0;
const env0_1 = a1;
return _fun124134;
}
function buildInitialRouteStack(a0, a1) { // fn#124136, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:858, offset: 0x025a973d, size: 136 bytes, params: 3, frame: 18
var r4;
var property;
let value = importDefault(44) /* metro dependency 44 */;
let length = a0.length;
const value2 = 0;
value(length > value2, 'At least one step must be provided to RoleTierEditScenesModal');
if (a1 == null) {
return [{name: a0[value2]}];
}
const items = [];
length = a0.length;
if (value2 < length) {
r4 = value2;
while (true) {
property = a0[r4];
items.push({name: property});
if (property === a1) {
break;
}
value = typeof r4 === 'bigint' ? r4 + 1n : +r4 + 1;
length = a0.length;
if (value < length) {
r4 = value;
continue;
}
break;
}
}
return items;
}
function buildScreenMap(a0, a1) { // fn#124138, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:1197, offset: 0x025a9805, size: 257 bytes, params: 3, frame: 28
var r6;
var scene;
var r15;
var scene2;
var property;
var value9;
var object3;
var value10;
const steps = a0.steps;
const stepScreenPropsMap = a0.stepScreenPropsMap;
const value = null;
const value2 = Object.create(value);
const value3 = 0;
value2.steps = value3;
value2.stepScreenPropsMap = value3;
const value4 = copyDataProperties({}, a0, value2, undefined);
const object4 = {};
const value6 = steps.map(orderify);
const Math = global.Math;
const max = Math.max;
const value7 = value6.map(function(a0) {
return a0.stepNumber;
});
const items2 = [];
arraySpread(items2, value7, value3, undefined);
const value8 = apply(max, items2, Math, undefined);
let length = steps.length;
if (value3 < length) {
r6 = value3;
while (true) {
scene2 = value6[r6].scene;
property = value6[r6 + 1];
value9 = undefined;
scene = value == property ? value9 : property.scene;
if (value != scene) {
r15 = scene;
continue;
}
r15 = value;
continue;
object3 = {};
copyDataProperties(object3, value6[r6], Math);
object3['nextStep'] = r15;
object3['stepsCount'] = value8;
object4[scene2] = object3;
value10 = typeof r6 === 'bigint' ? r6 + 1n : +r6 + 1;
length = steps.length;
if (value10 < length) {
r6 = value10;
continue;
}
break;
}
}
return buildScreenMapGetScreens(object4, value4, a1, stepScreenPropsMap);
}
function RoleTierEditScenesModal(a0) { // fn#124149, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3148, offset: 0x025a9dc8, size: 486 bytes, params: 2, frame: 28
const env0_0 = a0;
const styles = useStyles();
const modalKey = a0.modalKey;
const steps = a0.steps;
const env0_3 = a0.onClose;
const value2 = useCurrentTierEditScene();
const binding = env0_3;
const value3 = binding(value2, 2);
const env0_4 = value3[0];
const env0_5 = value3[1];
const env0_6 = useResetTierEditState();
const binding2 = env0_4;
const useState = binding2.useState;
const value4 = binding(Reflect.apply(useState, binding2, [0]), 2);
const property = value4[0];
const env0_7 = value4[1];
const top = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().top;
const env0_8 = binding2.useCallback(_fun124150, [modalKey]);
const value5 = binding2.useMemo(function() {
return steps.map(_fun124153);
}, [steps]);
const {screens, initialStack} = (importDefault(6518) /* metro dependency 6518: useInitialValue */)(_fun124154);
const jsxRuntimeEnv0_9Binding = jsxRuntimeEnv0_9;
const Navigator = (require(5280) /* metro dependency 5280: NavigatorNative */).Navigator;
const object = {screens: screens, initialRouteStack: initialStack, onWillFocus: onWillFocus};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.headerBackTitle = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['13/7kX']);
return (
<>
<Navigator {...object} />
{((Component) => <Component style={[styles.stepsIndicator,
{top: top}]} current={property + 1} total={value5.length} />)(importDefault(16108) /* metro dependency 16108: StepsIndicator */)}
</>
);
}
function _fun124134() { // fn#124134, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:732, offset: 0x025a96bc, size: 129 bytes, params: 1, frame: 18
const HeaderActionButton = (require(5277) /* metro dependency 5277: HeaderActionButtonNative */).HeaderActionButton;
const headerActionButtonProps = {source: importDefault(8160) /* metro dependency 8160 */, onPress: onPress_124135};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
headerActionButtonProps.accessibilityLabel = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.cpT0Cq);
return <HeaderActionButton {...headerActionButtonProps} />;
}
function buildScreenMapGetScreens(a0, a1, a2, a3) { // fn#124140, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:1473, owner: buildScreenMap.getScreens, offset: 0x025a9911, size: 649 bytes, params: 5, frame: 23
const env0_0 = a0;
const env0_1 = a1;
const object10 = {fullscreen: true, headerTitle: function() {
return null;
}};
const object11 = {};
const GATING = GuildRoleSubscriptionsTierScenes.GATING;
const object12 = {};
copyDataProperties(object12, object10, undefined);
const getHeaderRightBinding = getHeaderRight;
const GATING2 = GuildRoleSubscriptionsTierScenes.GATING;
object12['headerRight'] = getHeaderRightBinding(GATING2, a2);
const getScreenPropsForSceneBinding = getScreenPropsForScene;
const GATING3 = GuildRoleSubscriptionsTierScenes.GATING;
copyDataProperties(object12, getScreenPropsForSceneBinding(GATING3, a3), undefined);
let closure = getScreensRender_124142;
object12['render'] = closure;
object11[GATING] = object12;
const GROUP = GuildRoleSubscriptionsTierScenes.GROUP;
const object13 = {};
copyDataProperties(object13, object10, closure);
const GROUP2 = GuildRoleSubscriptionsTierScenes.GROUP;
object13['headerRight'] = getHeaderRightBinding(GROUP2, a2);
const GROUP3 = GuildRoleSubscriptionsTierScenes.GROUP;
copyDataProperties(object13, getScreenPropsForSceneBinding(GROUP3, a3), GROUP3);
closure = getScreensRender_124143;
object13['render'] = closure;
object11[GROUP] = object13;
const CHANNEL_BENEFITS = GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS;
const object14 = {};
copyDataProperties(object14, object10, closure);
const CHANNEL_BENEFITS2 = GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS;
object14['headerRight'] = getHeaderRightBinding(CHANNEL_BENEFITS2, a2);
const CHANNEL_BENEFITS3 = GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS;
copyDataProperties(object14, getScreenPropsForSceneBinding(CHANNEL_BENEFITS3, a3), CHANNEL_BENEFITS3);
closure = getScreensRender_124144;
object14['render'] = closure;
object11[CHANNEL_BENEFITS] = object14;
const INTANGIBLE_BENEFITS = GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS;
const object15 = {};
copyDataProperties(object15, object10, closure);
const INTANGIBLE_BENEFITS2 = GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS;
object15['headerRight'] = getHeaderRightBinding(INTANGIBLE_BENEFITS2, a2);
const INTANGIBLE_BENEFITS3 = GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS;
copyDataProperties(object15, getScreenPropsForSceneBinding(INTANGIBLE_BENEFITS3, a3), INTANGIBLE_BENEFITS3);
closure = getScreensRender_124145;
object15['render'] = closure;
object11[INTANGIBLE_BENEFITS] = object15;
const CONFIRMATION = GuildRoleSubscriptionsTierScenes.CONFIRMATION;
const object16 = {};
copyDataProperties(object16, object10, closure);
const CONFIRMATION2 = GuildRoleSubscriptionsTierScenes.CONFIRMATION;
object16['headerRight'] = getHeaderRightBinding(CONFIRMATION2, a2);
const CONFIRMATION3 = GuildRoleSubscriptionsTierScenes.CONFIRMATION;
copyDataProperties(object16, getScreenPropsForSceneBinding(CONFIRMATION3, a3), CONFIRMATION3);
closure = getScreensRender_124146;
object16['render'] = closure;
object11[CONFIRMATION] = object16;
const DESIGN = GuildRoleSubscriptionsTierScenes.DESIGN;
const object17 = {};
copyDataProperties(object17, object10, closure);
const DESIGN2 = GuildRoleSubscriptionsTierScenes.DESIGN;
object17['headerRight'] = getHeaderRightBinding(DESIGN2, a2);
const DESIGN3 = GuildRoleSubscriptionsTierScenes.DESIGN;
copyDataProperties(object17, getScreenPropsForSceneBinding(DESIGN3, a3), DESIGN3);
closure = getScreensRender_124147;
object17['render'] = closure;
object11[DESIGN] = object17;
const DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
const object18 = {};
copyDataProperties(object18, object10, closure);
const DETAILS2 = GuildRoleSubscriptionsTierScenes.DETAILS;
object18['headerRight'] = getHeaderRightBinding(DETAILS2, a2);
const DETAILS3 = GuildRoleSubscriptionsTierScenes.DETAILS;
copyDataProperties(object18, getScreenPropsForSceneBinding(DETAILS3, a3), closure);
object18['render'] = getScreensRender_124148;
object11[DETAILS] = object18;
return object11;
}
function _fun124150() { // fn#124150, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3338, offset: 0x025a9fae, size: 45 bytes, params: 1, frame: 12
let value = environment.__proto__;
value = importDefault(5080) /* metro dependency 5080: ModalActionCreators */;
value.popWithKey(modalKey);
}
function RoleTierEditScenesModalHandleClose(a0) { // fn#124151, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3386, owner: RoleTierEditScenesModal.handleClose, offset: 0x025a9fdb, size: 47 bytes, params: 2, frame: 12
if (onClose != null) {
onClose(a0);
}
env0_8();
env0_6();
}
function _fun124152() { // fn#124152, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3426, offset: 0x025aa00a, size: 28 bytes, params: 1, frame: 11
return steps.map(function(a0) {
var value = a0;
return typeof value === 'string' ? value : value.scene;
});
}
function _fun124154() { // fn#124154, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3490, offset: 0x025aa03f, size: 58 bytes, params: 1, frame: 16
const object2 = {};
object2.screens = buildScreenMap(env0_0, RoleTierEditScenesModalHandleClose);
object2.initialStack = buildInitialRouteStack(env0_10, env0_4);
return object2;
}
function onWillFocus({route}) { // fn#124155, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:3694, owner: RoleTierEditScenesModal.onWillFocus, offset: 0x025aa079, size: 81 bytes, params: 2, frame: 13
var index;
const name = route.name;
if (name != null) {
env0_5(name);
index = env0_10.findIndex(function(a0) {
return a0 === name;
});
if (index >= 0) {
env0_7(index);
}
}
}
function getScreensRender_124142() { // fn#124142, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:1646, owner: buildScreenMap.getScreens.render, offset: 0x025a9b9a, size: 78 bytes, params: 1, frame: 16
const value = environment.__proto__.__proto__;
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const GATING = GuildRoleSubscriptionsTierScenes.GATING;
return ((Component) => <Component {...getComponentPropsForScreenBinding(GATING, env0_0,
require)} />)(importDefault(16080) /* metro dependency 16080: GuildRoleSubscriptionGroupGatingModal */);
}
function getScreensRender_124143() { // fn#124143, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:1822, owner: buildScreenMap.getScreens.render, offset: 0x025a9be8, size: 78 bytes, params: 1, frame: 16
const value = environment.__proto__.__proto__;
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const GROUP = GuildRoleSubscriptionsTierScenes.GROUP;
return ((Component) => <Component {...getComponentPropsForScreenBinding(GROUP, env0_0,
require)} />)(importDefault(16065) /* metro dependency 16065: GuildRoleSubscriptionGroupDetailsModal */);
}
function getScreensRender_124144() { // fn#124144, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:2030, owner: buildScreenMap.getScreens.render, offset: 0x025a9c36, size: 84 bytes, params: 1, frame: 16
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const CHANNEL_BENEFITS = GuildRoleSubscriptionsTierScenes.CHANNEL_BENEFITS;
const componentPropsForScreenBinding = getComponentPropsForScreenBinding(CHANNEL_BENEFITS, env0_0, require);
const GuildRoleSubscriptionTierChannelBenefitsModal = (require(16081) /* metro dependency 16081: GuildRoleSubscriptionTierBenefitsModal */).GuildRoleSubscriptionTierChannelBenefitsModal;
return <GuildRoleSubscriptionTierChannelBenefitsModal {...componentPropsForScreenBinding} />;
}
function getScreensRender_124145() { // fn#124145, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:2303, owner: buildScreenMap.getScreens.render, offset: 0x025a9c8a, size: 84 bytes, params: 1, frame: 16
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const INTANGIBLE_BENEFITS = GuildRoleSubscriptionsTierScenes.INTANGIBLE_BENEFITS;
const componentPropsForScreenBinding = getComponentPropsForScreenBinding(INTANGIBLE_BENEFITS, env0_0, require);
const GuildRoleSubscriptionTierIntangibleBenefitsModal = (require(16081) /* metro dependency 16081: GuildRoleSubscriptionTierBenefitsModal */).GuildRoleSubscriptionTierIntangibleBenefitsModal;
return <GuildRoleSubscriptionTierIntangibleBenefitsModal {...componentPropsForScreenBinding} />;
}
function getScreensRender_124146() { // fn#124146, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:2561, owner: buildScreenMap.getScreens.render, offset: 0x025a9cde, size: 78 bytes, params: 1, frame: 16
const value = environment.__proto__.__proto__;
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const CONFIRMATION = GuildRoleSubscriptionsTierScenes.CONFIRMATION;
return ((Component) => <Component {...getComponentPropsForScreenBinding(CONFIRMATION, env0_0,
require)} />)(importDefault(16101) /* metro dependency 16101: GuildRoleSubscriptionTierConfirmationModal */);
}
function getScreensRender_124147() { // fn#124147, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:2746, owner: buildScreenMap.getScreens.render, offset: 0x025a9d2c, size: 78 bytes, params: 1, frame: 16
const value = environment.__proto__.__proto__;
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const DESIGN = GuildRoleSubscriptionsTierScenes.DESIGN;
return ((Component) => <Component {...getComponentPropsForScreenBinding(DESIGN, env0_0,
require)} />)(importDefault(16104) /* metro dependency 16104: GuildRoleSubscriptionTierDesignModal */);
}
function getScreensRender_124148() { // fn#124148, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16287:2928, owner: buildScreenMap.getScreens.render, offset: 0x025a9d7a, size: 78 bytes, params: 1, frame: 16
const value = environment.__proto__.__proto__;
const getComponentPropsForScreenBinding = getComponentPropsForScreen;
const DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
return ((Component) => <Component {...getComponentPropsForScreenBinding(DETAILS, env0_0,
require)} />)(importDefault(16106) /* metro dependency 16106: GuildRoleSubscriptionTierDetailsModal */);
}
@@ -0,0 +1,55 @@
/* Metro module 8591; source: modules/guild_role_subscriptions/native/components/ShinyButton.tsx; dependencies: [31, 33, 4501, 697, 4579, 1305, 8592, 2] */
function _fun67906(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67906, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8776:6, offset: 0x01c377c4, size: 283 bytes, params: 8, frame: 22
var object3;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object3 = {};
const object4 = {};
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
const CONTROL_PRIMARY_BACKGROUND_DEFAULT = (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_PRIMARY_BACKGROUND_DEFAULT;
object4.backgroundColor = CONTROL_PRIMARY_BACKGROUND_DEFAULT;
object3.container = object4;
const WHITE = (importDefault(697) /* metro dependency 697: native */).colors.WHITE;
object3.sparkleIcon = {marginRight: 4, tintColor: WHITE};
object3.disabled = {opacity: 0.5};
const env0_4 = Reflect.apply(createStyles, createStylesModule, [object3]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/ShinyButton.tsx');
exports.default = ShinyButton;
}
function ShinyButton(a0) { // fn#67907, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8776:443, offset: 0x01c378df, size: 296 bytes, params: 2, frame: 25
var Icon;
const style = a0.style;
const loading = a0.loading;
let disabled = a0.disabled;
const onPress = a0.onPress;
const value = undefined;
let r5 = onPress !== value ? onPress : function() {
};
const object2 = {'style': 0, 'loading': 0, 'disabled': 0, 'onPress': 0};
silentSetPrototypeOf(object2, null, undefined);
const value2 = copyDataProperties({}, a0, object2, undefined);
const styles = useStyles();
const BaseTextButton = (require(4579) /* metro dependency 4579: BaseTextButtonNative */).BaseTextButton;
const baseTextButtonProps = {onPress: r5, pillStyle: [styles.container, style], loading: loading,
disabled: disabled};
if (loading) {
r5 = value;
} else {
Icon = (require(1305) /* metro dependency 1305: native */).Icon;
var iconProps = {size: (require(1305) /* metro dependency 1305: native */).Icon.Sizes.REFRESH_SMALL_16,
source: importDefault(8592) /* metro dependency 8592 */};
disabled = disabled && styles.disabled;
iconProps.style = [styles.sparkleIcon, disabled];
r5 = <Icon {...iconProps} />;
}
baseTextButtonProps.icon = r5;
copyDataProperties(baseTextButtonProps, value2, object2);
return <BaseTextButton {...baseTextButtonProps} />;
}
@@ -0,0 +1,122 @@
/* Metro module 16108; source: modules/guild_role_subscriptions/native/components/StepsIndicator.tsx; dependencies: [31, 27, 4502, 33, 4501, 697, 4017, 4504, 4573, 566, 2] */
function _fun124349(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124349, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:6, offset: 0x025b2c79, size: 350 bytes, params: 8, frame: 23
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 */;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
const createStylesModule = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = createStylesModule.createStyles;
object2 = {container: {'flexDirection': 'row', 'alignItems': 'center', 'justifyContent': 'center'},
node: {'width': 20, 'height': 20, 'borderRadius': 10, 'marginHorizontal': -2}};
const BACKGROUND_BRAND = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BRAND;
object2.filledNode = {'backgroundColor': null, 'alignItems': 'center', 'justifyContent': 'center',
backgroundColor: BACKGROUND_BRAND};
const BACKGROUND_MOD_NORMAL = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_NORMAL;
object2.emptyNode = {backgroundColor: BACKGROUND_MOD_NORMAL};
const env0_7 = Reflect.apply(createStyles, createStylesModule, [object2]);
object2 = {code: 'function StepsIndicatorTsx1(){const{interpolate,state,withTiming,duration,Easing}=this.__closure;const rawScale=interpolate(state.get(),[0,1],[8/20,1]);const scale=withTiming(rawScale,{duration:duration,easing:Easing.out(Easing.ease)});const rawMargin=interpolate(state.get(),[0,1],[-2,6]);const marginHorizontal=withTiming(rawMargin,{duration:duration,easing:Easing.out(Easing.ease)});return{marginHorizontal:marginHorizontal,transform:[{scale:scale}]};}'};
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/StepsIndicator.tsx');
exports.default = StepsIndicator_124353;
}
function StepNode({label, isCurrent, isDone, useReducedMotion}) { // fn#124350, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:950, offset: 0x025b2dd7, size: 422 bytes, params: 2, frame: 26
const styles = useStyles();
const value4 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).useSharedValue(isCurrent ? 1 : 0);
const r15 = useReducedMotion ? 0 : 180;
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle;
const closure = StepNodeP;
const object2 = {};
object2.interpolate = reanimatedRexportModule.interpolate;
object2.state = value4;
object2.withTiming = (require(4504) /* metro dependency 4504: timing */).withTiming;
object2.duration = r15;
const Easing = reanimatedRexportModule.Easing;
object2.Easing = Easing;
closure.__closure = object2;
closure.__workletHash = 4051275727555;
closure.__initData = env0_8;
const value6 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]);
env0_3.useEffect(_fun124352, [value4, isCurrent]);
const r7 = isDone || isCurrent ? styles.filledNode : styles.emptyNode;
const View = (importDefault(4017) /* metro dependency 4017: ReanimatedRexport */).View;
return (
<View style={[styles.node, value6, r7]}>
{isCurrent && ((Text) => <Text variant="heading-deprecated-12/extrabold" color="interactive-text-active">{label}</Text>)((require(4573) /* metro dependency 4573: Text */).Text)}
</View>
);
}
function StepsIndicator_124353({current, style, total}) { // fn#124353, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:1936, offset: 0x025b30ea, size: 177 bytes, params: 2, frame: 20
const styles = useStyles();
const useReducedMotion = (require(566) /* metro dependency 566: flux */).useStateFromStores([AccessibilityStore],
function() {
return AccessibilityStore.useReducedMotion;
});
return (
<View style={[styles.container, style]}>
{env0_3.useMemo(_fun124355, [current, total, useReducedMotion])}
</View>
);
}
function StepNodeP() { // fn#124351, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:1104, owner: StepNode.p, offset: 0x025b2f7d, size: 332 bytes, params: 1, frame: 23
var object3;
let value = environment.__proto__;
value = Reflect.apply((require(4017) /* metro dependency 4017: ReanimatedRexport */).interpolate, value,
[env0_1.get(), [0, 1], [0.4, 1]]);
const timingModule = require(4504) /* metro dependency 4504: timing */;
let withTiming = timingModule.withTiming;
object3 = {duration: env0_2};
const Easing = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
let out = Easing.out;
const Easing2 = (require(4017) /* metro dependency 4017: ReanimatedRexport */).Easing;
object3.easing = Reflect.apply(out, Easing, [Easing2.ease]);
value = Reflect.apply(withTiming, timingModule, [value, object3]);
const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */;
const value5 = reanimatedRexportModule.interpolate(env0_1.get(), [0, 1], [-2, 6]);
const moduleValue3 = timingModule;
withTiming = moduleValue3.withTiming;
const object4 = {duration: env0_2};
out = Easing.out;
const Easing3 = reanimatedRexportModule.Easing;
object4.easing = Reflect.apply(out, Easing, [Easing3.ease]);
return {marginHorizontal: Reflect.apply(withTiming, moduleValue3, [value5, object4]), transform: [{scale: value}]};
}
function _fun124352() { // fn#124352, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:1599, offset: 0x025b30c9, size: 33 bytes, params: 1, frame: 12
const binding = env0_1;
binding.set(isCurrent ? 1 : 0);
}
function _fun124355() { // fn#124355, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16316:2071, offset: 0x025b319b, size: 107 bytes, params: 1, frame: 23
var r5;
var value4;
var push;
var jsxRuntimeEnv1_6Binding;
var currentBinding;
var value5;
const items2 = [];
const totalBinding = total;
const value2 = 0;
if (value2 < totalBinding) {
for (r5 = value2; true; r5 = value5) {
value4 = r5 + 1;
push = items2.push;
jsxRuntimeEnv1_6Binding = jsxRuntimeEnv1_6;
currentBinding = current;
Reflect.apply(push, items2,
[<StepNode useReducedMotion={useReducedMotion} isCurrent={value4 === currentBinding} isDone={value4 < currentBinding} label={value4} key={r5} />]);
value5 = typeof r5 === 'bigint' ? r5 + 1n : +r5 + 1;
if (!(value5 < total)) {
break;
}
}
}
return items2;
}
@@ -0,0 +1,46 @@
/* Metro module 14961; source: modules/guild_role_subscriptions/native/components/UnavailableNotice.tsx; dependencies: [31, 27, 33, 4501, 697, 5475, 14712, 4573, 2] */
function _fun113156(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#113156, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15158:6, offset: 0x023ebb96, size: 332 bytes, params: 8, frame: 22
var object2;
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;
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 BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object2.container = {flex: 1, backgroundColor: BACKGROUND_BASE_LOW};
const MOBILE_TEXT_HEADING_PRIMARY = (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_TEXT_HEADING_PRIMARY;
object2.brightTitle = {color: MOBILE_TEXT_HEADING_PRIMARY};
object2.unavailableContainer = {justifyContent: 'center'};
object2.unavailableInfo = {'alignItems': 'center', 'justifyContent': 'center'};
object2.unavailableDescription = {'marginTop': 8, 'marginHorizontal': 16, 'textAlign': 'center'};
object2.joinCtaTitle = {'alignSelf': 'center', 'marginTop': 16, 'paddingHorizontal': 24, 'textAlign': 'center'};
const env0_6 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/UnavailableNotice.tsx');
exports.default = UnavailableNotice;
}
function UnavailableNotice({title, description, brightTitle}) { // fn#113157, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15158:693, offset: 0x023ebce2, size: 305 bytes, params: 2, frame: 26
const styles = useStyles();
const items3 = [styles.container];
items3[1] = styles.unavailableContainer;
const items2 = [((Component) => <Component source={importDefault(14712) /* metro dependency 14712 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
brightTitle = brightTitle && styles.brightTitle;
items2[1] = <Text variant="heading-lg/extrabold" color="text-default" style={[styles.joinCtaTitle,
brightTitle]}>{title}</Text>;
items2[2] = <Text style={styles.unavailableDescription} variant="text-sm/medium" color="text-default">{description}</Text>;
return (
<View style={items3}>
<View style={styles.unavailableInfo}>
{items2}
</View>
</View>
);
}
@@ -0,0 +1,58 @@
/* Metro module 16020; source: modules/guild_role_subscriptions/native/components/WarningNotice.tsx; dependencies: [31, 27, 33, 4501, 697, 5475, 8947, 4573, 4578, 2] */
function _fun123837(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123837, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16228:6, offset: 0x0259dd3d, size: 405 bytes, params: 8, frame: 22
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;
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;
object4 = {};
const object5 = {'borderRadius': null, 'borderWidth': 1, 'padding': 12};
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
object4.container = object5;
object4.horizontalContainer = {'flexDirection': 'row', 'alignItems': 'center'};
object4.message = {'flex': 1, 'marginStart': 10, 'textAlignVertical': 'center'};
object4.actionButtonWrapper = {'marginTop': 24, 'alignSelf': 'center', 'width': '100%'};
const object6 = {};
const BACKGROUND_FEEDBACK_WARNING = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_FEEDBACK_WARNING;
object6.backgroundColor = BACKGROUND_FEEDBACK_WARNING;
const STATUS_WARNING = (importDefault(697) /* metro dependency 697: native */).colors.STATUS_WARNING;
object6.borderColor = STATUS_WARNING;
object4.containerYellow = object6;
const TEXT_FEEDBACK_WARNING = (importDefault(697) /* metro dependency 697: native */).colors.TEXT_FEEDBACK_WARNING;
object4.textYellow = {color: TEXT_FEEDBACK_WARNING};
object4.alertIcon = {'alignSelf': 'flex-start', 'width': 20, 'height': 20};
const env0_6 = Reflect.apply(createStyles, value, [object4]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/WarningNotice.tsx');
exports.default = WarningNotice;
}
function WarningNotice({style, notice, ctaLabel, onClick, submitting, disabled}) { // fn#123838, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16228:768, offset: 0x0259ded2, size: 384 bytes, params: 2, frame: 27
const styles = useStyles();
const items2 = [style];
items2[1] = styles.container;
items2[2] = styles.containerYellow;
const value2 = ((Component) => <Component style={styles.alertIcon} source={importDefault(8947) /* metro dependency 8947 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<View style={items2}>
<View style={styles.horizontalContainer}>
{value2}
<Text
style={[styles.message, styles.textYellow]}
variant="text-sm/medium"
color="interactive-text-active"
>
{notice}
</Text>
</View>
{onClick != null && ctaLabel != null && <View style={styles.actionButtonWrapper}>{((Button) => <Button onPress={onClick} disabled={disabled} loading={submitting} text={ctaLabel} grow />)((require(4578) /* metro dependency 4578: ButtonNative */).Button)}</View>}
</View>
);
}
@@ -0,0 +1,79 @@
/* Metro module 13705; source: modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionBenefitRow.tsx; dependencies: [31, 27, 1379, 33, 4501, 3797, 13703, 1305, 4573, 566, 4805, 1244, 6647, 2] */
function _fun104733(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104733, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13902:6, offset: 0x0229f247, size: 332 bytes, params: 8, frame: 20
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 channelStore = importDefault(1379) /* metro dependency 1379: ChannelStore */;
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({container: {'flexDirection': 'row',
'justifyContent': 'flex-start'}, textContainer: {'flex': 1, 'justifyContent': 'center'},
description: {marginTop: 2}, channelTitle: {'flexDirection': 'row', 'alignItems': 'center'},
channelIcon: {'width': 16, 'height': 16, 'marginEnd': 8}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionBenefitRow.tsx');
exports.ChannelBenefitRow = ChannelBenefitRow;
exports.IntangibleBenefitRow = IntangibleBenefitRow;
}
function getEmojiId(a0) { // fn#104734, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13902:415, offset: 0x0229f393, size: 87 bytes, params: 2, frame: 15
var r0;
var emoji_name;
var value;
if (a0.emoji_id != null) {
r0 = a0.emoji_id;
} else {
emoji_name = a0.emoji_name;
value = '';
if (emoji_name == null) {
r0 = value;
} else {
value = importDefault(3797) /* metro dependency 3797: UnicodeEmojis */;
value = value.convertSurrogateToName(a0.emoji_name, false);
r0 = value;
}
}
return r0;
}
function BenefitRow({emojiId, guildId, title, description}) { // fn#104735, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13902:543, offset: 0x0229f3ea, size: 295 bytes, params: 2, frame: 25
const styles = useStyles();
const items2 = [((Component) => <Component guildId={guildId} id={emojiId} size={22} fontSize={18} />)(importDefault(13703) /* metro dependency 13703: EmojiIcon */)];
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
items2[1] = <Spacer size={16} />;
items2[2] = <View style={styles.textContainer}>{title}{description != null ? ((Text) => <Text style={styles.description} variant="text-sm/normal" color="interactive-text-default">{description}</Text>)((require(4573) /* metro dependency 4573: Text */).Text) : null}</View>;
return (
<View style={styles.container}>
{items2}
</View>
);
}
function ChannelBenefitRow({benefit, guildId}) { // fn#104736, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13902:1057, offset: 0x0229f511, size: 480 bytes, params: 2, frame: 28
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const styles = useStyles();
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([ChannelStore], function() {
return ChannelStore.getChannel(benefit.ref_id);
}, [benefit.ref_id]);
const value3 = (importDefault(4805) /* metro dependency 4805: useChannelName */)(value2);
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<BenefitRow
emojiId={getEmojiId(benefit)}
guildId={guildId}
title={value2 == null ? <Text variant="text-md/semibold" color="mobile-text-heading-primary">{'[' + intl.string((require(1244) /* metro dependency 1244: indexNative */).t.bz1PZX) + ']'}</Text> : <View style={styles.channelTitle}>{((Icon) => <Icon style={styles.channelIcon} size={(require(1305) /* metro dependency 1305: native */).Icon.Sizes.CUSTOM} source={(require(6647) /* metro dependency 6647: ChannelUtils */).getChannelIcon(value2)} />)((require(1305) /* metro dependency 1305: native */).Icon)}<Text variant="text-md/medium" color="mobile-text-heading-primary">{value3}</Text></View>}
description={benefit.description}
/>
);
}
function IntangibleBenefitRow({benefit, guildId}) { // fn#104738, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13902:1702, offset: 0x0229f711, size: 126 bytes, params: 2, frame: 18
const benefitRowBindingProps = {emojiId: getEmojiId(benefit), guildId: guildId};
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
benefitRowBindingProps.title = <Text variant="text-md/medium" color="mobile-text-heading-primary">{benefit.name}</Text>;
benefitRowBindingProps.description = benefit.description;
return <BenefitRow {...benefitRowBindingProps} />;
}
@@ -0,0 +1,130 @@
/* Metro module 13700; source: modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionCard.tsx; dependencies: [57, 31, 27, 33, 4501, 697, 4573, 13690, 8649, 1244, 1305, 13701, 13702, 13705, 2] */
function _fun104714(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104714, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:6, offset: 0x0229e1ca, size: 324 bytes, params: 8, frame: 23
const env0_0 = require;
const closure = SectionTitle;
const closure2 = Separator_104716;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
let value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.Fragment;
const env0_8 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
const env0_9 = Reflect.apply(createStyles, value, [{sectionTitle: {textTransform: 'uppercase'},
separator: {'width': '100%', 'height': 1, 'backgroundColor': null, 'marginVertical': 24,
backgroundColor: BORDER_SUBTLE}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionCard.tsx');
exports.SectionTitle = closure;
exports.Separator = closure2;
exports.Content = Content_104717;
}
function SectionTitle({children}) { // fn#104715, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:338, offset: 0x0229e30e, size: 86 bytes, params: 2, frame: 16
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
return (
<Text
variant="text-xs/bold"
color="text-default"
style={styles.sectionTitle}
>
{children}
</Text>
);
}
function Separator_104716() { // fn#104716, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:485, offset: 0x0229e364, size: 41 bytes, params: 1, frame: 14
const styles = useStyles();
return <View style={styles.separator} />;
}
function Content_104717({listingId, guildId}) { // fn#104717, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:740, offset: 0x0229e38d, size: 1072 bytes, params: 2, frame: 42
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
const GappedList = (require(8649) /* metro dependency 8649: LayoutUtils */).GappedList;
var r7;
var format;
var oDeFmv;
var items3;
var GuildRoleSubscriptionEmojiGallery;
var items4;
const value2 = (importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useTierEmojiIds(listingId,
guildId);
const binding = env0_4;
const property = binding(value2, 1)[0];
const guildRoleSubscriptionListingEditStateUtilsModule = importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */;
const useChannelBenefits = guildRoleSubscriptionListingEditStateUtilsModule.useChannelBenefits;
const property2 = binding(Reflect.apply(useChannelBenefits, guildRoleSubscriptionListingEditStateUtilsModule,
[listingId]), 1)[0];
const moduleValue3 = guildRoleSubscriptionListingEditStateUtilsModule;
const useIntangibleBenefits = moduleValue3.useIntangibleBenefits;
const property3 = binding(Reflect.apply(useIntangibleBenefits, moduleValue3, [listingId]), 1)[0];
const value4 = guildRoleSubscriptionListingEditStateUtilsModule.useRole(listingId, guildId);
const length = property2.length;
const length2 = property3.length;
let size = property.size;
const object2 = {renderGap: renderGap};
let jsxRuntimeEnv0_7Binding = jsxRuntimeEnv0_7;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const items5 = [<SectionTitle>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['DJ+bGu'])}</SectionTitle>];
items5[1] = <Spacer size={8} />;
const GuildRoleSubscriptionMemberPreview = (require(13701) /* metro dependency 13701: GuildRoleSubscriptionMemberPreview */).GuildRoleSubscriptionMemberPreview;
items5[2] = <GuildRoleSubscriptionMemberPreview guildId={guildId} role={value4} />;
const items2 = [<>{items5}</>];
if (size > 0) {
jsxRuntimeEnv0_7Binding = jsxRuntimeEnv0_7;
format = intl.format;
oDeFmv = (require(1244) /* metro dependency 1244: indexNative */).t.oDeFmv;
size = property.size;
items3 = [<SectionTitle>{Reflect.apply(format, intl, [oDeFmv, {numEmojis: size}])}</SectionTitle>];
items3[1] = <Spacer size={14} />;
GuildRoleSubscriptionEmojiGallery = importDefault(13702) /* metro dependency 13702: GuildRoleSubscriptionEmojiGallery */;
items4 = [];
arraySpread(items4, property, 0, size);
items3[2] = <GuildRoleSubscriptionEmojiGallery emojiIds={items4} guildId={guildId} />;
r7 = <>{items3}</>;
} else {
r7 = null;
}
items2[1] = r7;
items2[2] = length > 0 ? <><SectionTitle>{intl.format((require(1244) /* metro dependency 1244: indexNative */).t.l40GUu,
{numChannels: length})}</SectionTitle><Spacer size={14} /><GappedList gap={14}>{property2.map(_fun104719)}</GappedList></> : null;
items2[3] = length2 > 0 ? <><SectionTitle>{intl.format((require(1244) /* metro dependency 1244: indexNative */).t['4V/Mfi'],
{numIntangibles: length2})}</SectionTitle><Spacer size={14} /><GappedList gap={14}>{property3.map(_fun104720)}</GappedList></> : null;
return (
<GappedList {...object2}>
{items2}
</GappedList>
);
}
function Content_104717RenderGap() { // fn#104718, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:1013, owner: Content_104717.renderGap, offset: 0x0229e7bd, size: 23 bytes, params: 1, frame: 13
return <Separator_104716 />;
}
function _fun104719(a0) { // fn#104719, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:1578, offset: 0x0229e7d4, size: 71 bytes, params: 2, frame: 16
const ChannelBenefitRow = (require(13705) /* metro dependency 13705: GuildRoleSubscriptionBenefitRow */).ChannelBenefitRow;
return (
<ChannelBenefitRow
benefit={a0}
guildId={guildId}
key={a0.ref_id}
/>
);
}
function _fun104720(a0, a1) { // fn#104720, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13897:1834, offset: 0x0229e81b, size: 68 bytes, params: 3, frame: 15
const IntangibleBenefitRow = (require(13705) /* metro dependency 13705: GuildRoleSubscriptionBenefitRow */).IntangibleBenefitRow;
return (
<IntangibleBenefitRow
benefit={a0}
guildId={guildId}
key={a1}
/>
);
}
@@ -0,0 +1,41 @@
/* Metro module 13702; source: modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionEmojiGallery.tsx; dependencies: [31, 27, 33, 8646, 8649, 13703, 2] */
function _fun104724(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104724, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13899:6, offset: 0x0229ed32, size: 159 bytes, params: 8, frame: 18
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 env0_4 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionEmojiGallery.tsx');
exports.default = EmojiGallery;
}
function EmojiGallery({emojiIds, guildId, maxPerRow}) { // fn#104725, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13899:283, offset: 0x0229edd1, size: 144 bytes, params: 2, frame: 18
maxPerRow = maxPerRow === undefined ? 9 : maxPerRow;
const value2 = (importDefault(8646) /* metro dependency 8646 */)(emojiIds, maxPerRow);
const GappedList = (require(8649) /* metro dependency 8649: LayoutUtils */).GappedList;
return (
<View>
<GappedList gap={8}>
{value2.map(_fun104726)}
</GappedList>
</View>
);
}
function _fun104726(a0, a1) { // fn#104726, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13899:428, offset: 0x0229ee61, size: 112 bytes, params: 3, frame: 19
const GappedList = (require(8649) /* metro dependency 8649: LayoutUtils */).GappedList;
return (
<View style={{flexDirection: 'row'}} key={a1}>
<GappedList gap={16}>
{a0.map(_fun104727)}
</GappedList>
</View>
);
}
function _fun104727(a0) { // fn#104727, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13899:522, offset: 0x0229eed1, size: 70 bytes, params: 2, frame: 16
const value = environment.__proto__.__proto__;
return ((Component) => <Component size={22} fontSize={18} guildId={guildId} id={a0} key={a0} />)(importDefault(13703) /* metro dependency 13703: EmojiIcon */);
}
@@ -0,0 +1,91 @@
/* Metro module 13701; source: modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionMemberPreview.tsx; dependencies: [31, 27, 1878, 33, 4501, 697, 1244, 566, 4617, 1423, 6794, 5475, 4573, 673, 1305, 6795, 2] */
function _fun104721(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#104721, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13898:6, offset: 0x0229e85f, size: 371 bytes, params: 8, frame: 23
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_4 = (require(27) /* metro dependency 27 */).View;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
let value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.Fragment;
const env0_8 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const object = {'flexDirection': 'row', 'padding': 16, 'borderRadius': null, 'borderWidth': 1};
object.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs;
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
object.borderColor = BORDER_SUBTLE;
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object.backgroundColor = BACKGROUND_BASE_LOW;
const env0_9 = Reflect.apply(createStyles, value, [{container: object, avatar: {'width': 40, 'height': 40,
'borderRadius': 20}, content: {marginStart: 16}, contextRow: {'flexDirection': 'row', 'alignItems': 'center'}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionMemberPreview.tsx');
exports.GuildRoleSubscriptionMemberPreview = GuildRoleSubscriptionMemberPreview;
}
function GuildRoleSubscriptionMemberPreview({content, guildId, style, textStyle, role}) { // fn#104722, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:13898:674, offset: 0x0229e9d2, size: 864 bytes, params: 2, frame: 37
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
var r11;
var r9;
var intl;
var jsxRuntimeEnv0_7Binding;
var items4;
if (content !== undefined) {
r11 = content;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r11 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t['6OSasb']);
}
const styles = useStyles();
const currentUser = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return UserStore.getCurrentUser();
});
const value6 = (importDefault(4617) /* metro dependency 4617: NicknameUtils */).useName(guildId, null, currentUser);
if (role == null) {
return null;
}
const defaultImport2 = importDefault(1423) /* metro dependency 1423: AvatarUtils */;
const makeSource = defaultImport2.makeSource;
let r1 = currentUser?.getAvatarURL(guildId, 40);
r1 = r1 ?? defaultImport2.getDefaultAvatarURL(undefined, undefined);
const source = Reflect.apply(makeSource, defaultImport2, [r1]);
const roleIconData = (require(6794) /* metro dependency 6794: RoleIconUtils */).getRoleIconData(role, 16);
const color = role.color;
const items2 = [styles.container, style];
const value10 = ((Component) => <Component style={styles.avatar} source={source} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
content = styles.content;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const object = {};
object.color = (importAll(673) /* metro dependency 673: ColorUtils */).int2hex(color);
const items3 = [<Text variant="text-md/semibold" color="interactive-text-active" style={object}>{value6}</Text>];
if (roleIconData != null) {
jsxRuntimeEnv0_7Binding = jsxRuntimeEnv0_7;
items4 = [<Spacer size={4} />];
items4[1] = ((Component) => <Component name={role.name} source={roleIconData.customIconSrc != null ? {uri: roleIconData.customIconSrc} : undefined} unicodeEmoji={roleIconData.unicodeEmoji} size={16} />)(importDefault(6795) /* metro dependency 6795: RoleIcon */);
r9 = <>{items4}</>;
} else {
r9 = null;
}
items3[1] = r9;
items3[2] = <Spacer size={8} />;
items3[3] = <Text variant="text-xs/medium" color="text-muted">{'4:20 PM'}</Text>;
return (
<View style={items2}>
{value10}
<View style={content}>
<View style={styles.contextRow}>
{items3}
</View>
<Text
variant="text-md/normal"
color="text-default"
style={textStyle}
>
{r11}
</Text>
</View>
</View>
);
}
@@ -0,0 +1,24 @@
/* Metro module 14967; source: modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionSettingsUtils.tsx; dependencies: [3778, 4141, 2] */
function _fun113187(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#113187, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15164:6, offset: 0x023ed5b7, size: 114 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const guildRoleSubscriptionsStore = importDefault(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/components/listing_elements/GuildRoleSubscriptionSettingsUtils.tsx');
exports.getCoverImageURI = getCoverImageURI;
}
function getCoverImageURI(a0) { // fn#113188, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:15164:265, offset: 0x023ed629, size: 109 bytes, params: 2, frame: 16
var r1;
var value;
const applicationIdForGuild = GuildRoleSubscriptionsStore.getApplicationIdForGuild(a0.guild_id);
if (applicationIdForGuild != null && a0.cover_image_asset != null) {
value = require(4141) /* metro dependency 4141: StoreUtils */;
value = value.getAssetURL(applicationIdForGuild, a0.cover_image_asset, 1024);
r1 = value;
} else {
r1 = '';
}
return {uri: r1};
}
@@ -0,0 +1,75 @@
/* Metro module 8589; source: modules/guild_role_subscriptions/native/emoji_upsell/RoleSubscriptionEmojiUpsellAlert.tsx; dependencies: [31, 1867, 1386, 33, 7883, 1244, 1478, 566, 6593, 4596, 8590, 7901, 2] */
function _fun67898(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#67898, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8774:6, offset: 0x01c372df, size: 180 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 guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const env0_5 = (require(1386) /* metro dependency 1386: ChannelConstants */).StaticChannelRoute;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/emoji_upsell/RoleSubscriptionEmojiUpsellAlert.tsx');
exports.default = RoleSubscriptionEmojiUpsellAlert;
}
function RoleSubscriptionEmojiUpsellAlert({guildId, onClose}) { // fn#67899, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8774:293, offset: 0x01c37393, size: 384 bytes, params: 2, frame: 22
var object2;
let env0_3 = undefined;
const {width, height} = (importDefault(1478) /* metro dependency 1478: useWindowDimensionsNative */)();
const Math = global.Math;
const min = Math.min;
const Math2 = global.Math;
const value6 = Reflect.apply(min, Math, [0.9 * Math2.min(width, height), 500]) - 32;
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
const value8 = env0_3.useMemo(_fun67901, [Reflect.apply(useStateFromStores, fluxModule, [[GuildStore],
_fun67900])?.name]);
env0_3 = function() {
importDefault(dependencyMap[8]).transitionToGuildSync(guildId, undefined,
StaticChannelRoute.ROLE_SUBSCRIPTIONS);
if (onClose != null) {
onClose();
}
};
const Alert = importDefault(4596) /* metro dependency 4596: Alert */;
object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.cancelText = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.cpT0Cq);
object2.onClose = onClose;
object2.renderConfirmButton = renderConfirmButton;
const PremiumUpsellItem = (require(7901) /* metro dependency 7901: PremiumUpsellAlert */).PremiumUpsellItem;
return (
<Alert {...object2}>
<PremiumUpsellItem alertWidth={value6} upsellItem={value8} />
</Alert>
);
}
function _fun67900() { // fn#67900, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8774:465, offset: 0x01c37513, size: 40 bytes, params: 1, frame: 12
const guildIdBinding = guildId;
const value2 = null;
return value2 == guildIdBinding ? value2 : GuildStore.getGuild(guildId);
}
function _fun67901() { // fn#67901, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8774:511, offset: 0x01c3753b, size: 176 bytes, params: 1, frame: 18
const name = env0_2?.name;
const object2 = {};
object2.image = importDefault(7883) /* metro dependency 7883 */;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
object2.title = Reflect.apply(string, intl, [t.cBjkcx]);
object2.description = intl.formatToPlainString(t['h0u/Hi'], {serverName: name});
return object2;
}
function RoleSubscriptionEmojiUpsellAlertRenderConfirmButton() { // fn#67903, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8774:912, owner: RoleSubscriptionEmojiUpsellAlert.renderConfirmButton, offset: 0x01c37636, size: 109 bytes, params: 1, frame: 18
const CreatorRevenueButton = (require(8590) /* metro dependency 8590: CreatorRevenueButton */).CreatorRevenueButton;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<CreatorRevenueButton
onPress={RoleSubscriptionEmojiUpsellAlertHandleConfirm}
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.p8FG1D)}
/>
);
}
@@ -0,0 +1,52 @@
/* Metro module 14716; source: modules/guild_role_subscriptions/native/feature_education/CreatorMonetizationOnboardingV2UpsellActionSheet.tsx; dependencies: [31, 27, 661, 1376, 33, 4501, 6275, 4573, 1244, 5475, 14717, 4578, 9112, 2] */
function _fun110998(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#110998, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14913:6, offset: 0x0238f38e, size: 314 bytes, params: 8, frame: 22
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 env0_4 = (require(661) /* metro dependency 661: Constants */).GuildSettingsSections;
const env0_5 = (require(1376) /* metro dependency 1376: DismissibleContentConstants */).ContentDismissActionType;
const value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
const env0_8 = (require(4501) /* metro dependency 4501: createStyles */).createStyles({container: {'paddingLeft': 24,
'paddingRight': 24, 'paddingTop': 24}, title: {marginBottom: 6}, description: {marginBottom: 24},
image: {'marginBottom': 24, 'width': '100%'}, dismissButton: {marginTop: 4}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/feature_education/CreatorMonetizationOnboardingV2UpsellActionSheet.tsx');
exports.default = CreatorMonetizationOnboardingV2UpsellActionSheet;
}
function CreatorMonetizationOnboardingV2UpsellActionSheet({guildId, markAsDismissed}) { // fn#110999, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14913:569, offset: 0x0238f4c8, size: 602 bytes, params: 2, frame: 28
const styles = useStyles();
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const items2 = [<Text style={styles.title} accessibilityRole="header" variant="heading-lg/extrabold" color="mobile-text-heading-primary">{Reflect.apply(string,
intl, [(require(1244) /* metro dependency 1244: indexNative */).t['v+Jm6X']])}</Text>];
items2[1] = <Text style={styles.description} accessibilityRole="text" variant="text-sm/medium" color="text-default">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.kUUFbG)}</Text>;
items2[2] = ((Component) => <Component style={styles.image} resizeMode="contain" source={importDefault(14717) /* metro dependency 14717 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */);
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
string = intl.string;
const OgQQbG = (require(1244) /* metro dependency 1244: indexNative */).t.OgQQbG;
items2[3] = <Button onPress={function() {
markAsDismissed(ContentDismissActionType.UNKNOWN);
importDefault(dependencyMap[12]).open(guildId, GuildSettingsSections.ROLE_SUBSCRIPTIONS);
}} text={Reflect.apply(string, intl, [OgQQbG])} />;
string = intl.string;
const WAI6xu = (require(1244) /* metro dependency 1244: indexNative */).t.WAI6xu;
items2[4] = <View style={styles.dismissButton}><Button onPress={function() {
return markAsDismissed(ContentDismissActionType.UNKNOWN);
}} text={Reflect.apply(string, intl, [WAI6xu])} variant="secondary" /></View>;
return (
<BottomSheet startExpanded onDismiss={function() {
return markAsDismissed(ContentDismissActionType.UNKNOWN);
}}>
<View style={styles.container}>
{items2}
</View>
</BottomSheet>
);
}
@@ -0,0 +1,57 @@
/* Metro module 14714; source: modules/guild_role_subscriptions/native/feature_education/GenericUpsellActionSheet.tsx; dependencies: [31, 27, 1376, 33, 4501, 697, 7326, 6275, 5475, 6515, 4573, 1305, 4578, 2] */
function _fun110994(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#110994, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14911:6, offset: 0x0238f025, size: 323 bytes, params: 8, frame: 23
var object2;
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 env0_4 = (require(1376) /* metro dependency 1376: DismissibleContentConstants */).ContentDismissActionType;
let value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.image = {width: '100%'};
const object4 = {};
let PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object4.paddingHorizontal = PX_16;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object4.marginBottom = PX_16;
object2.content = object4;
PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object2.description = {marginBottom: PX_16, flex: 1};
const env0_7 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/feature_education/GenericUpsellActionSheet.tsx');
exports.default = GenericUpsellActionSheet;
}
function GenericUpsellActionSheet({markAsDismissed, imageSource, header, body, onCTAPress, cta}) { // fn#110995, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14911:494, offset: 0x0238f168, size: 480 bytes, params: 2, frame: 28
const styles = useStyles();
const {bottomSheetRef,
bottomSheetClose} = (require(7326) /* metro dependency 7326: useBottomSheetRef */).useBottomSheetRef();
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const object2 = {ref: bottomSheetRef, startExpanded: true, onDismiss: function() {
return markAsDismissed(ContentDismissActionType.UNKNOWN);
}, handleDisabled: true};
let value = importDefault(5475) /* metro dependency 5475: FastImage */;
value = ((Component) => <Component source={imageSource} style={styles.image} />)(value);
const ActionSheetHeaderBar = (require(6515) /* metro dependency 6515: ActionSheetHeaderBarNative */).ActionSheetHeaderBar;
object2.header = <View>{value}<ActionSheetHeaderBar variant="floating" onPress={bottomSheetClose} /></View>;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text accessibilityRole="header" variant="heading-xl/medium" color="mobile-text-heading-primary">{header}</Text>];
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
items2[1] = <Spacer size={12} />;
items2[2] = <Text style={styles.description} variant="text-sm/medium" color="text-default">{body}</Text>;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
items2[3] = <Button variant="primary" grow onPress={onCTAPress} text={cta} />;
return (
<BottomSheet {...object2}>
<View style={styles.content}>
{items2}
</View>
</BottomSheet>
);
}
@@ -0,0 +1,32 @@
/* Metro module 14713; source: modules/guild_role_subscriptions/native/feature_education/IAPUpsellActionSheet.tsx; dependencies: [31, 661, 1386, 1376, 33, 14714, 14715, 1244, 1230, 2] */
function _fun110991(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#110991, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14910:6, offset: 0x0238ee02, size: 204 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(661) /* metro dependency 661: Constants */).Routes;
const env0_4 = (require(1386) /* metro dependency 1386: ChannelConstants */).StaticChannelRoute;
const env0_5 = (require(1376) /* metro dependency 1376: DismissibleContentConstants */).ContentDismissActionType;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/feature_education/IAPUpsellActionSheet.tsx');
exports.default = IAPUpsellActionSheet;
}
function IAPUpsellActionSheet({guildId, markAsDismissed}) { // fn#110992, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14910:325, offset: 0x0238eece, size: 253 bytes, params: 2, frame: 21
const GenericUpsellActionSheet = importDefault(14714) /* metro dependency 14714: GenericUpsellActionSheet */;
const object2 = {imageSource: importDefault(14715) /* metro dependency 14715 */};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.header = Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t.rBw4cE]);
object2.body = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.mKHibc);
string = intl.string;
const RzWDqY = (require(1244) /* metro dependency 1244: indexNative */).t.RzWDqY;
object2.cta = Reflect.apply(string, intl, [RzWDqY]);
object2.onCTAPress = function() {
require(dependencyMap[8]).transitionTo(Routes.CHANNEL(guildId, StaticChannelRoute.ROLE_SUBSCRIPTIONS));
markAsDismissed(ContentDismissActionType.UNKNOWN);
};
object2.markAsDismissed = markAsDismissed;
return <GenericUpsellActionSheet {...object2} />;
}
@@ -0,0 +1,39 @@
/* Metro module 16080; source: modules/guild_role_subscriptions/native/guild_settings/GuildRoleSubscriptionGroupGatingModal.tsx; dependencies: [57, 31, 16066, 13668, 33, 16070, 1244, 16060, 2] */
function _fun124157(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124157, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16288:6, offset: 0x025aa0ca, size: 192 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
importAll(31) /* metro dependency 31 */;
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
const env0_5 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionsTierScenes;
const env0_6 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildRoleSubscriptionGroupGatingModal.tsx');
exports.default = GuildRoleSubscriptionGroupGatingModal;
}
function GuildRoleSubscriptionGroupGatingModal(a0) { // fn#124158, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16288:323, offset: 0x025aa18a, size: 257 bytes, params: 2, frame: 23
const value3 = env0_3(RoleTierEditStore.useGroupIsFullGateState(), 2);
const property = value3[0];
const property2 = value3[1];
const GuildRoleSubscriptionTierEditStep = importDefault(16070) /* metro dependency 16070: GuildRoleSubscriptionTierEditStep */;
const object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const string = intl.string;
const N38nNP = (require(1244) /* metro dependency 1244: indexNative */).t.N38nNP;
object2.title = Reflect.apply(string, intl, [N38nNP]);
const intl2 = (require(1244) /* metro dependency 1244: indexNative */).intl;
object2.description = intl2.string((require(1244) /* metro dependency 1244: indexNative */).t.csJWVI);
object2.canProceedToNextStep = true;
const GROUP = GuildRoleSubscriptionsTierScenes.GROUP;
object2.nextStep = GROUP;
copyDataProperties(object2, a0, intl);
let value = importDefault(16060) /* metro dependency 16060: FormGuildGatingModeSelector */;
value = ((Component) => <Component isFullServerGating={property} onChange={property2} />)(value);
return (
<GuildRoleSubscriptionTierEditStep {...object2}>
{value}
</GuildRoleSubscriptionTierEditStep>
);
}
@@ -0,0 +1,54 @@
/* Metro module 16073; source: modules/guild_role_subscriptions/native/guild_settings/GuildRoleSubscriptionTierArchiveOrDeleteActionSheet.tsx; dependencies: [31, 27, 33, 4501, 697, 1585, 44, 16074, 6275, 6277, 4573, 1305, 4578, 4080, 1244, 2] */
function _fun124102(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124102, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16281:6, offset: 0x025a8269, size: 262 bytes, params: 8, frame: 21
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_3 = value.TouchableOpacity;
const env0_4 = value.View;
value = require(33) /* metro dependency 33 */;
const env0_5 = value.jsx;
const env0_6 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
const env0_7 = Reflect.apply(createStyles, value, [{container: {backgroundColor: BACKGROUND_SURFACE_HIGH,
padding: 24}, cancel: {alignSelf: 'center'}}]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildRoleSubscriptionTierArchiveOrDeleteActionSheet.tsx');
exports.default = GuildRoleSubscriptionTierArchiveOrDeleteActionSheet;
}
function GuildRoleSubscriptionTierArchiveOrDeleteActionSheet({editStateId, guildId, groupListingId}) { // fn#124103, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16281:309, offset: 0x025a836f, size: 679 bytes, params: 2, frame: 35
const styles = useStyles();
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
(importDefault(44) /* metro dependency 44 */)(groupListingId != null, 'group listing id cannot be null');
const {headerText, buttonText, descriptionText, handleArchiveOrDelete, deleting,
archiving} = (importDefault(16074) /* metro dependency 16074: useArchiveOrDelete */)(guildId, groupListingId,
editStateId);
const BottomSheet = (require(6275) /* metro dependency 6275: BottomSheetNative */).BottomSheet;
const BottomSheetScrollView = (require(6277) /* metro dependency 6277 */).BottomSheetScrollView;
const object = {paddingBottom: bottom};
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const items2 = [<Text variant="heading-lg/semibold" color="mobile-text-heading-primary">{headerText}</Text>];
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
items2[1] = <Spacer size={12} />;
items2[2] = <Text variant="text-sm/normal" color="text-default">{descriptionText}</Text>;
items2[3] = <Spacer size={24} />;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
items2[4] = <Button text={buttonText} variant="destructive" grow onPress={handleArchiveOrDelete} disabled={deleting || archiving} />;
items2[5] = <Spacer size={24} />;
const touchableOpacityBindingProps = {onPress: onPress_124104, style: styles.cancel, activeOpacity: 0.5};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
items2[6] = <TouchableOpacity {...touchableOpacityBindingProps}><Text variant="text-sm/semibold" color="interactive-text-active">{intl.string((require(1244) /* metro dependency 1244: indexNative */).t['ETE/oC'])}</Text></TouchableOpacity>;
return (
<BottomSheet backdropOpacity={0.8}>
<View style={styles.container}>
<BottomSheetScrollView contentContainerStyle={object}>
{items2}
</BottomSheetScrollView>
</View>
</BottomSheet>
);
}
@@ -0,0 +1,80 @@
/* Metro module 16071; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionContainer.tsx; dependencies: [31, 27, 1867, 661, 33, 4501, 566, 16047, 11744, 16020, 1244, 13676, 16061, 2] */
function _fun124072(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124072, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16279:6, offset: 0x025a6a64, size: 309 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_3 = value.ActivityIndicator;
const env0_4 = value.View;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const env0_6 = (require(661) /* metro dependency 661: Constants */).GuildFeatures;
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({container: {flex: 1},
warningBlockContainer: {'marginHorizontal': 16, 'marginTop': 16}, spinner: {marginTop: 12}});
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionContainer.tsx');
exports.default = GuildSettingsRoleSubscriptionContainer;
}
function ApplicationRejectedNotice({guildId}) { // fn#124073, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16279:331, offset: 0x025a6b99, size: 768 bytes, params: 2, frame: 27
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var WarningNotice;
const styles = useStyles();
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
const items = [GuildStore];
const guild = Reflect.apply(useStateFromStores, fluxModule, [items, function() {
return GuildStore.getGuild(guildId);
}]);
const r3 = guild == null ? undefined : guild.features.has(GuildFeatures.CREATOR_MONETIZABLE_RESTRICTED);
let r5 = guild == null ? undefined : guild.features.has(GuildFeatures.CREATOR_MONETIZABLE_PENDING_NEW_OWNER_ONBOARDING);
const {resubmittingEnableRequest, resubmissionError, createEnableRequest, resubmittedRequest,
requestRejectedNoticeText,
reapplyNoticeText} = (importDefault(16047) /* metro dependency 16047: useOnboardingMonetizationEnableFlow */)(guild);
if (resubmissionError != null) {
r5 = ((Component) => <Component>{resubmissionError.getAnyErrorMessage()}</Component>)(importDefault(11744) /* metro dependency 11744: ErrorBlock */);
} else if (requestRejectedNoticeText != null) {
r5 = ((Component) => <Component notice={requestRejectedNoticeText} />)(importDefault(16020) /* metro dependency 16020: WarningNotice */);
} else if (resubmittedRequest) {
r5 = ((Component) => <Component notice={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.MyJpJT)} />)(importDefault(16020) /* metro dependency 16020: WarningNotice */);
} else if (reapplyNoticeText != null) {
WarningNotice = importDefault(16020) /* metro dependency 16020: WarningNotice */;
r5 = <WarningNotice notice={reapplyNoticeText} ctaLabel={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['YKw/NQ'])} onClick={createEnableRequest} submitting={resubmittingEnableRequest} />;
} else {
r5 = r5 === true ? ((Component) => <Component notice={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.e2g9sW)} />)(importDefault(16020) /* metro dependency 16020: WarningNotice */) : r3 !== true ? null : ((Component) => <Component notice={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.rxI9sl)} />)(importDefault(16020) /* metro dependency 16020: WarningNotice */);
}
return r5 != null ? <View style={styles.warningBlockContainer}>{r5}</View> : null;
}
function GuildSettingsRoleSubscription({guildId, children}) { // fn#124075, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16279:1235, offset: 0x025a6e99, size: 170 bytes, params: 2, frame: 20
var r0;
var value;
const styles = useStyles();
const groupListingsFetchContextModule = require(13676) /* metro dependency 13676: GroupListingsFetchContext */;
const useGroupListingsFetchContext = groupListingsFetchContextModule.useGroupListingsFetchContext;
if (Reflect.apply(useGroupListingsFetchContext, groupListingsFetchContextModule, [])) {
var viewBindingProps = {style: styles.container};
value = <ApplicationRejectedNotice guildId={guildId} />;
value = <View {...viewBindingProps}>{value}{children}</View>;
r0 = value;
} else {
r0 = <View style={styles.spinner}><ActivityIndicator /></View>;
}
return r0;
}
function GuildSettingsRoleSubscriptionContainer(a0) { // fn#124076, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16279:1616, offset: 0x025a6f43, size: 137 bytes, params: 2, frame: 20
const GroupListingsFetchContextProvider = (require(13676) /* metro dependency 13676: GroupListingsFetchContext */).GroupListingsFetchContextProvider;
const groupListingsFetchContextProviderProps = {guildId: a0.guildId, refetchOnMount: true};
const RoleSubscriptionSettingsDisabledContextProvider = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).RoleSubscriptionSettingsDisabledContextProvider;
return (
<GroupListingsFetchContextProvider {...groupListingsFetchContextProviderProps}>
<RoleSubscriptionSettingsDisabledContextProvider guildId={a0.guildId}>
<GuildSettingsRoleSubscription {...a0} />
</RoleSubscriptionSettingsDisabledContextProvider>
</GroupListingsFetchContextProvider>
);
}
@@ -0,0 +1,361 @@
/* Metro module 16111; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionTierEdit.tsx; dependencies: [57, 31, 27, 3778, 16066, 13668, 661, 1376, 33, 4501, 697, 1484, 16078, 16074, 6843, 8127, 4573, 4578, 1305, 16112, 6618, 16106, 16104, 16081, 13675, 16061, 11744, 16113, 1244, 13690, 3856, 5282, 5277, 8853, 1365, 16114, 1962, 10357, 11088, 9221, 2] */
function _fun124373(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124373, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:6, offset: 0x025b39d8, size: 624 bytes, params: 8, frame: 25
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
const forwardRef = (require(31) /* metro dependency 31 */).forwardRef;
let value = require(27) /* metro dependency 27 */;
const env0_6 = value.View;
const env0_7 = value.ScrollView;
const guildRoleSubscriptionsStore = importDefault(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */;
const env0_9 = (require(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */).FetchState;
const roleTierEditStoreModule = importAll(16066) /* metro dependency 16066: RoleTierEditStore */;
const GuildRoleSubscriptionsTierScenes = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).GuildRoleSubscriptionsTierScenes;
const env0_12 = (require(661) /* metro dependency 661: Constants */).GuildSettingsSections;
const env0_13 = (require(1376) /* metro dependency 1376: DismissibleContentConstants */).ContentDismissActionType;
value = require(33) /* metro dependency 33 */;
const env0_14 = value.jsx;
const env0_15 = value.Fragment;
const env0_16 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.container = {flex: 1};
const BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.tabsContainer = {backgroundColor: BACKGROUND_SURFACE_HIGH, padding: 16};
object2.tabsContainerWithDraft = {paddingBottom: 0};
object2.actionButton = {'alignSelf': 'stretch', 'margin': 16, 'marginTop': 0};
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object2.tabContent = {backgroundColor: BACKGROUND_BASE_LOW};
object2.actionHeader = {'marginTop': 24, 'paddingStart': 16};
object2.actionDescription = {'marginBottom': 16, 'marginLeft': 16};
const env0_17 = Reflect.apply(createStyles, value, [object2]);
const DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
const DESIGN = GuildRoleSubscriptionsTierScenes.DESIGN;
const BENEFITS = GuildRoleSubscriptionsTierScenes.BENEFITS;
const env0_19 = [DETAILS, DESIGN, BENEFITS].reduce(function(a0, a1, a2) {
a0[a1] = a2;
return a0;
}, {});
const env0_20 = forwardRef(_fun124377);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionTierEdit.tsx');
exports.default = GuildSettingsRoleSubscriptionTierEdit;
}
function ArchiveOrDeleteTierSection() { // fn#124374, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:818, offset: 0x025b3c48, size: 483 bytes, params: 1, frame: 35
const styles = useStyles();
const value2 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const {guildId, groupListingId,
editStateId} = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const {buttonText, descriptionText, handleArchiveOrDelete, deleting,
archiving} = (importDefault(16074) /* metro dependency 16074: useArchiveOrDelete */)(guildId, groupListingId,
editStateId, value2);
const creatorMonetizationRestrictionsHooksModule = require(6843) /* metro dependency 6843: CreatorMonetizationRestrictionsHooks */;
const useShouldRestrictUpdatingCreatorMonetizationSettings = creatorMonetizationRestrictionsHooksModule.useShouldRestrictUpdatingCreatorMonetizationSettings;
const allowSelfRemoveMonetization = Reflect.apply(useShouldRestrictUpdatingCreatorMonetizationSettings,
creatorMonetizationRestrictionsHooksModule, [guildId]).allowSelfRemoveMonetization;
const jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15;
const items2 = [((Component) => <Component style={styles.actionHeader}>{buttonText}</Component>)(importDefault(8127) /* metro dependency 8127: FormHeader */)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
items2[1] = <Text style={styles.actionDescription} variant="text-sm/medium" color="text-default">{descriptionText}</Text>;
const Button = (require(4578) /* metro dependency 4578: ButtonNative */).Button;
const object = {'variant': 'destructive', 'grow': true};
const Icon = (require(1305) /* metro dependency 1305: native */).Icon;
const Icon2 = (require(1305) /* metro dependency 1305: native */).Icon;
const Sizes = Icon2.Sizes;
const SMALL = Sizes.SMALL;
object.icon = <Icon size={SMALL} disableColor source={importDefault(16112) /* metro dependency 16112 */} />;
object.onPress = handleArchiveOrDelete;
let r12 = allowSelfRemoveMonetization ? deleting : !allowSelfRemoveMonetization;
r12 = !r12 ? archiving : r12;
object.disabled = r12;
object.text = buttonText;
items2[2] = <View style={styles.actionButton}><Button {...object} /></View>;
return (
<>
{items2}
</>
);
}
function TabContent({selectedTab}) { // fn#124375, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:1559, offset: 0x025b3e2b, size: 407 bytes, params: 2, frame: 22
const styles = useStyles();
const DETAILS = GuildRoleSubscriptionsTierScenes.DETAILS;
if (DETAILS === selectedTab) {
return (
<ScrollView style={styles.tabContent}>
{((SafeAreaPaddingView) => <SafeAreaPaddingView bottom>{((GuildRoleSubscriptionTierDetailsTab) => <GuildRoleSubscriptionTierDetailsTab />)((require(16106) /* metro dependency 16106: GuildRoleSubscriptionTierDetailsModal */).GuildRoleSubscriptionTierDetailsTab)}<ArchiveOrDeleteTierSection /></SafeAreaPaddingView>)((require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView)}
</ScrollView>
);
}
const DESIGN = GuildRoleSubscriptionsTierScenes.DESIGN;
if (DESIGN === selectedTab) {
return (
<ScrollView style={styles.tabContent}>
{((SafeAreaPaddingView) => <SafeAreaPaddingView bottom>{((GuildRoleSubscriptionTierDesignTab) => <GuildRoleSubscriptionTierDesignTab />)((require(16104) /* metro dependency 16104: GuildRoleSubscriptionTierDesignModal */).GuildRoleSubscriptionTierDesignTab)}</SafeAreaPaddingView>)((require(6618) /* metro dependency 6618: SafeAreaView */).SafeAreaPaddingView)}
</ScrollView>
);
}
const BENEFITS = GuildRoleSubscriptionsTierScenes.BENEFITS;
if (BENEFITS === selectedTab) {
const GuildRoleSubscriptionTierBenefitsTab = (require(16081) /* metro dependency 16081: GuildRoleSubscriptionTierBenefitsModal */).GuildRoleSubscriptionTierBenefitsTab;
return <GuildRoleSubscriptionTierBenefitsTab />;
}
const Error = global.Error;
const value = 'Unsupported scene: ' + selectedTab;
const value2 = Object.create(Error.prototype, {constructor: {value: Error}});
const error = new Error(value);
throw error instanceof Object ? error : value2;
}
function _fun124377(a0, a1) { // fn#124377, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:2098, offset: 0x025b3fc2, size: 559 bytes, params: 3, frame: 26
var r1;
var r0;
var ActionableNotice;
var object;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var jsxRuntimeEnv0_15Binding;
const Spacer = (require(1305) /* metro dependency 1305: native */).Spacer;
var items2;
const value2 = (require(16078) /* metro dependency 16078: EditStateContextProvider */).useEditStateContext();
const env0_0 = value2.guildId;
const groupListingId = value2.groupListingId;
const editStateId = value2.editStateId;
const value3 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).usePublishSubscriptionListing();
const error = value3.error;
const submitting = value3.submitting;
const env0_2 = value3.publishSubscriptionListing;
const env0_3 = value3.clearError;
const value4 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListing(editStateId);
const value5 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
env0_5.useImperativeHandle(a1, function() {
return {dismissError: clearError};
});
const value6 = null;
if (value6 == groupListingId) {
r0 = value6;
} else if (value6 == value4) {
r0 = value6;
} else if (value4.published) {
r0 = value6;
} else {
if (value6 != error) {
jsxRuntimeEnv0_15Binding = jsxRuntimeEnv0_15;
items2 = [<Spacer size={16} />];
items2[1] = ((Component) => <Component>{error.getAnyErrorMessage()}</Component>)(importDefault(11744) /* metro dependency 11744: ErrorBlock */);
items2[2] = <Spacer size={16} />;
r1 = <>{items2}</>;
} else {
ActionableNotice = importDefault(16113) /* metro dependency 16113: ActionableNotice */;
r1 = <ActionableNotice message={intl.string(t.V5mSpz)} ctaMessage={intl.string(t.Lj6R5m)} onClick={onClick_124379} submitting={submitting} disabled={value5} />;
}
r0 = r1;
}
return r0;
}
function GuildSettingsRoleSubscriptionTierEdit({guildId, initialEditStateId, groupListingId, onBeforeDispatchNewListing}) { // fn#124380, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:2958, offset: 0x025b4232, size: 1234 bytes, params: 2, frame: 36
var object2;
const styles = useStyles();
let binding = env0_5;
const value3 = binding.useState(initialEditStateId);
binding = env0_4;
const value4 = binding(value3, 2);
const property = value4[0];
var env0_4 = value4[1];
const value5 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
var env0_5 = value5;
const value6 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListing(property);
const guildRoleSubscriptionListingEditStateUtilsModule = importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */;
const useName = guildRoleSubscriptionListingEditStateUtilsModule.useName;
const property2 = binding(Reflect.apply(useName, guildRoleSubscriptionListingEditStateUtilsModule, [property]),
1)[0];
const published = value6?.published;
const r22 = published != null && published;
const moduleValue4 = guildRoleSubscriptionListingEditStateUtilsModule;
const useEditStateIds = moduleValue4.useEditStateIds;
const removeEditStateId = Reflect.apply(useEditStateIds, moduleValue4, [groupListingId, guildId]).removeEditStateId;
binding = env0_5;
const value9 = binding.useRef(null);
const value10 = guildRoleSubscriptionListingEditStateUtilsModule.useHasChanges(property);
const {loading, handleCreateOrUpdateFromEditState,
error} = guildRoleSubscriptionListingEditStateUtilsModule.useCreateOrUpdateListingFromEditState();
const value12 = binding.useCallback(_fun124381, [guildId, handleCreateOrUpdateFromEditState, property,
groupListingId, onBeforeDispatchNewListing, removeEditStateId]);
binding.useLayoutEffect(_fun124383, [error]);
const value14 = env0_4(RoleTierEditStore.useRoleTierEditStore(function(a0) {
return [a0.currentScene ?? GuildRoleSubscriptionsTierScenes.DETAILS, a0.setScene];
}), 2);
const property3 = value14[0];
const env0_14 = value14[1];
binding.useLayoutEffect(_fun124385, [value5, value10, property2, loading, value12]);
binding.useLayoutEffect(_fun124389, [value5, property, guildId]);
const segmentedControlStateNativeModule = require(8853) /* metro dependency 8853: SegmentedControlStateNative */;
const useSegmentedControlState = segmentedControlStateNativeModule.useSegmentedControlState;
object2 = {pageWidth: 0, defaultIndex: env0_19[property3], onSetActiveIndex: onSetActiveIndex_124390};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
const items2 = [Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t.f7rGug])];
string = intl.string;
const YCpDtS = (require(1244) /* metro dependency 1244: indexNative */).t.YCpDtS;
items2[1] = Reflect.apply(string, intl, [YCpDtS]);
string = intl.string;
const MpDNxN = (require(1244) /* metro dependency 1244: indexNative */).t.MpDNxN;
items2[2] = Reflect.apply(string, intl, [MpDNxN]);
object2.items = items2.map(function(a0) {
return {id: a0, label: a0, page: null};
});
const value16 = Reflect.apply(useSegmentedControlState, segmentedControlStateNativeModule, [object2]);
if (property == null) {
return null;
}
const r17 = value6 === undefined ? [(require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent.GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATES] : [];
const EditStateContextProvider = (require(16078) /* metro dependency 16078: EditStateContextProvider */).EditStateContextProvider;
const RoleSubscriptionSettingsDisabledContextProvider = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).RoleSubscriptionSettingsDisabledContextProvider;
const value17 = ((Component) => <Component contentTypes={r17}>{children_124393}</Component>)(importDefault(10357) /* metro dependency 10357: SelectedDismissibleContent */);
const items3 = [styles.tabsContainer];
items3[1] = r22 ? null : styles.tabsContainerWithDraft;
const SegmentedControl = (require(9221) /* metro dependency 9221: SegmentedControlNative */).SegmentedControl;
return (
<EditStateContextProvider
guildId={guildId}
editStateId={property}
groupListingId={groupListingId}
>
<RoleSubscriptionSettingsDisabledContextProvider guildId={guildId}>
<View style={styles.container}>
{value17}
<View style={items3}>
<SegmentedControl state={value16} />
{((Component) => <Component ref={value9} />)(env0_20)}
</View>
<TabContent selectedTab={property3} />
</View>
</RoleSubscriptionSettingsDisabledContextProvider>
</EditStateContextProvider>
);
}
function onClick_124379() { // fn#124379, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:2737, offset: 0x025b4201, size: 49 bytes, params: 1, frame: 12
return publishSubscriptionListing({guildId: guildId, groupListingId: groupListingId, listingId: env0_4.id});
}
function _fun124381() { // fn#124381, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:3512, offset: 0x025b4704, size: 67 bytes, params: 1, frame: 12
return handleCreateOrUpdateFromEditState({guildId: guildId, editStateId: env0_3, groupListingId: groupListingId,
onBeforeDispatchNewListing: onBeforeDispatchNewListing, onAfterDispatchNewListing: onAfterDispatchNewListing});
}
function _fun124383() { // fn#124383, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:3670, offset: 0x025b476c, size: 126 bytes, params: 1, frame: 17
var r0;
var value2;
var moduleValue;
var presentError;
var intl;
var anyErrorMessage;
if (error != null) {
value2 = environment.__proto__;
moduleValue = require(3856) /* metro dependency 3856: ToastUtils */;
presentError = moduleValue.presentError;
anyErrorMessage = error.getAnyErrorMessage();
if (anyErrorMessage != null) {
r0 = anyErrorMessage;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.R0RpRX);
}
Reflect.apply(presentError, moduleValue, [r0]);
}
}
function _fun124385() { // fn#124385, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:3936, offset: 0x025b481a, size: 66 bytes, params: 1, frame: 14
env0_5.setOptions({headerRight: loading ? _fun124386 : _fun124387, headerTitle: headerTitle_124388});
}
function _fun124389() { // fn#124389, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:4260, offset: 0x025b496d, size: 143 bytes, params: 1, frame: 15
var binding;
var routes;
var property;
var value2;
if (env0_3 == null) {
binding = env0_5;
routes = binding.getState().routes;
property = routes[routes.length - 1];
value2 = environment.__proto__;
if (!(property?.name !== GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIER_EDIT || GuildRoleSubscriptionsStore.getSubscriptionGroupListingsForGuildFetchState(guildId) === FetchState.FETCHING)) {
env0_5.pop();
}
}
}
function GuildSettingsRoleSubscriptionTierEditOnSetActiveIndex(a0) { // fn#124390, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:4555, owner: GuildSettingsRoleSubscriptionTierEdit.onSetActiveIndex, offset: 0x025b49fc, size: 61 bytes, params: 2, frame: 13
var current;
const property = env1_18[a0];
if (property != null) {
env0_14(property);
current = env0_8.current;
if (current != null) {
current.dismissError();
}
}
}
function GuildRoleSubscriptionsTierTemplateSelectedActionSheetImporter() { // fn#124392, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:4959, owner: GuildSettingsRoleSubscriptionTierEdit.GuildRoleSubscriptionsTierTemplateSelectedActionSheetImporter, offset: 0x025b4a39, size: 45 bytes, params: 1, frame: 13
const value = environment.__proto__;
return require(dependencyMap[36])(dependencyMap[35], dependencyMap.paths);
}
function GuildSettingsRoleSubscriptionTierEditChildren({visibleContent, markAsDismissed}) { // fn#124393, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:5229, owner: GuildSettingsRoleSubscriptionTierEdit.children, offset: 0x025b4a66, size: 139 bytes, params: 2, frame: 16
var environment;
const value = environment.__proto__;
const DismissibleContent = (require(1365) /* metro dependency 1365: dismissible_content */).DismissibleContent;
const GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATES = DismissibleContent.GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATES;
if (visibleContent !== GUILD_ROLE_SUBSCRIPTION_TIER_TEMPLATES) {
return null;
} else {
const DismissibleActionSheet = (require(11088) /* metro dependency 11088: DismissibleActionSheet */).DismissibleActionSheet;
return (
<DismissibleActionSheet
markAsDismissed={function() {
return markAsDismissed(ContentDismissActionType.UNKNOWN);
}}
actionSheetKey="TierTemplateSelected"
importer={GuildRoleSubscriptionsTierTemplateSelectedActionSheetImporter}
/>
);
}
}
function onAfterDispatchNewListing({id}) { // fn#124382, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:3615, offset: 0x025b4747, size: 37 bytes, params: 2, frame: 12
env1_4(id);
removeEditStateId(env1_3);
}
function _fun124386() { // fn#124386, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:3969, offset: 0x025b485c, size: 45 bytes, params: 1, frame: 13
const HeaderSubmittingIndicator = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).HeaderSubmittingIndicator;
return <HeaderSubmittingIndicator />;
}
function _fun124387() { // fn#124387, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:4014, offset: 0x025b4889, size: 118 bytes, params: 1, frame: 18
const HeaderActionButton = (require(5277) /* metro dependency 5277: HeaderActionButtonNative */).HeaderActionButton;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<HeaderActionButton
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+'])}
onPress={env1_13}
disabled={!env1_9}
/>
);
}
function headerTitle_124388() { // fn#124388, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16319:4133, offset: 0x025b48ff, size: 110 bytes, params: 1, frame: 18
const NavigatorHeader = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).NavigatorHeader;
const navigatorHeaderProps = {title: env1_6};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
navigatorHeaderProps.subtitle = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.t94EHg);
return <NavigatorHeader {...navigatorHeaderProps} />;
}
@@ -0,0 +1,382 @@
/* Metro module 16072; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionTiers.tsx; dependencies: [57, 31, 27, 9113, 1867, 3778, 13668, 661, 1880, 33, 4501, 697, 4080, 16073, 1962, 1244, 5137, 13694, 4573, 8792, 632, 13690, 5475, 9646, 1585, 12672, 1484, 13676, 16061, 12667, 13675, 22, 5282, 16075, 16076, 44, 8127, 16110, 16071, 2] */
function _fun124077(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124077, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:6, offset: 0x025a6fcc, size: 931 bytes, params: 8, frame: 25
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(57) /* metro dependency 57 */;
const env0_5 = importAll(31) /* metro dependency 31 */;
let value = require(27) /* metro dependency 27 */;
const env0_6 = value.ActivityIndicator;
const env0_7 = value.View;
const env0_8 = value.ScrollView;
const guildSettingsStore = importDefault(9113) /* metro dependency 9113: GuildSettingsStore */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const guildRoleSubscriptionsStore = importDefault(3778) /* metro dependency 3778: GuildRoleSubscriptionsStore */;
const env0_12 = (require(13668) /* metro dependency 13668: GuildRoleSubscriptionsConstants */).MAX_SUBSCRIPTION_TIERS;
value = require(661) /* metro dependency 661: Constants */;
const env0_13 = value.CurrencyCodes;
const env0_14 = value.GuildSettingsSections;
const env0_15 = value.GuildSettingsSubsections;
const env0_16 = (require(1880) /* metro dependency 1880: PremiumConstants */).SubscriptionIntervalTypes;
value = require(33) /* metro dependency 33 */;
const env0_17 = value.jsx;
const env0_18 = value.jsxs;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
object2.container = {height: '100%'};
object2.tierManagementDescription = {'marginBottom': 16, 'paddingHorizontal': 16};
const object4 = {'backgroundColor': null, 'borderRadius': null, 'flexDirection': 'row', 'alignItems': 'center',
'alignSelf': 'stretch', 'justifyContent': 'flex-start', 'height': 72, 'padding': 16, 'marginHorizontal': 16,
'marginBottom': 8};
let BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object4.backgroundColor = BACKGROUND_SURFACE_HIGH;
object4.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object2.tierManagementButton = object4;
object2.tierColumn = {'flexDirection': 'column', 'justifyContent': 'center', 'alignItems': 'flex-start', 'flex': 1};
BACKGROUND_SURFACE_HIGH = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH;
object2.tierIcon = {'backgroundColor': null, 'borderRadius': 20, 'marginEnd': 12, 'height': 40, 'width': 40,
backgroundColor: BACKGROUND_SURFACE_HIGH};
object2.tierPrice = {marginStart: 6};
const object5 = {};
const YELLOW_300 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.YELLOW_300;
object5.backgroundColor = YELLOW_300;
object5.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object5.paddingHorizontal = 4;
object2.draftBadge = object5;
const PRIMARY_860 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_860;
object2.draftBadgeLabel = {color: PRIMARY_860, textTransform: 'uppercase'};
const object7 = {};
const PRIMARY_500 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.PRIMARY_500;
object7.backgroundColor = PRIMARY_500;
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object7.paddingHorizontal = 4;
object2.archiveBadge = object7;
object2.archiveBadgeLabel = {textTransform: 'uppercase'};
const object9 = {};
const BACKGROUND_MOD_MUTED = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_MOD_MUTED;
object9.backgroundColor = BACKGROUND_MOD_MUTED;
object9.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.sm;
object9.paddingHorizontal = 4;
object2.unsavedBadge = object9;
object2.unsavedBadgeLabel = {textTransform: 'uppercase'};
object2.detailsRow = {'flexDirection': 'row', 'alignItems': 'center', 'marginTop': 3};
object2.createTierLabel = {marginStart: 12};
object2.spinner = {marginTop: 12};
object2.disabled = {opacity: 0.5};
const env0_19 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionTiers.tsx');
exports.default = GuildSettingsRoleSubscriptionsTiers;
}
function DraftBadge() { // fn#124078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:1664, offset: 0x025a736f, size: 155 bytes, params: 1, frame: 21
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<View style={styles.draftBadge}>
<Text style={styles.draftBadgeLabel} variant="text-xs/semibold">
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.vosPk5)}
</Text>
</View>
);
}
function ArchivedBadge() { // fn#124079, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:1857, offset: 0x025a740a, size: 159 bytes, params: 1, frame: 21
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<View style={styles.archiveBadge}>
<Text
style={styles.archiveBadgeLabel}
variant="text-xs/semibold"
color="always-white"
>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.nhbtEl)}
</Text>
</View>
);
}
function UnsavedBadge() { // fn#124080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:2078, offset: 0x025a74a9, size: 159 bytes, params: 1, frame: 21
const styles = useStyles();
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<View style={styles.unsavedBadge}>
<Text
style={styles.unsavedBadgeLabel}
variant="text-xs/semibold"
color="always-white"
>
{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.aiwXeq)}
</Text>
</View>
);
}
function Row_124081({children, onPress, onLongPress, disabled}) { // fn#124081, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:2298, offset: 0x025a7548, size: 135 bytes, params: 2, frame: 21
disabled = !(disabled === undefined) && disabled;
const styles = useStyles();
return ((Component) => <Component style={[styles.tierManagementButton,
disabled && styles.disabled]} accessibilityRole="button" onPress={onPress} onLongPress={onLongPress} disabled={disabled}>{children}</Component>)(importDefault(8792) /* metro dependency 8792: TouchableHitBox */);
}
function EditListingButton({editStateId, guildId, groupListingId, onPress}) { // fn#124082, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:2512, offset: 0x025a75cf, size: 1037 bytes, params: 2, frame: 34
var r0;
var r22;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var formatToPlainString;
var CgmBaG;
var moduleValue5;
var moduleValue7;
const styles = useStyles();
const useStateFromStoresModule = require(632) /* metro dependency 632: useStateFromStores */;
const useStateFromStores = useStateFromStoresModule.useStateFromStores;
let object = [GuildRoleSubscriptionsStore];
const subscriptionListing = Reflect.apply(useStateFromStores, useStateFromStoresModule, [object, function() {
return GuildRoleSubscriptionsStore.getSubscriptionListing(editStateId);
}]);
const published = subscriptionListing?.published;
const r1 = published != null && published;
const archived = subscriptionListing?.archived;
let r11 = archived != null && archived;
let r20 = !r11 && !r1 && subscriptionListing !== undefined;
const value8 = subscriptionListing === undefined;
const property = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useName(editStateId),
1)[0];
const property2 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).usePriceTier(editStateId),
1)[0];
const property3 = env0_4((importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */).useImage(editStateId,
250), 1)[0];
const r14 = subscriptionListing == null ? undefined : subscriptionListing.subscription_plans[0];
if (property2 === undefined) {
r22 = '';
} else {
if (r14 != null) {
formatToPlainString = intl.formatToPlainString;
CgmBaG = (require(1244) /* metro dependency 1244: indexNative */).t.CgmBaG;
object = {};
moduleValue7 = require(5137) /* metro dependency 5137: PriceUtils */;
object.price = moduleValue7.formatPrice(property2, r14.currency);
object.interval = (require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */).formatPlanInterval(r14);
r0 = Reflect.apply(formatToPlainString, intl, [CgmBaG, object]);
} else {
formatToPlainString = intl.formatToPlainString;
CgmBaG = (require(1244) /* metro dependency 1244: indexNative */).t.CgmBaG;
object = {};
moduleValue5 = require(5137) /* metro dependency 5137: PriceUtils */;
object.price = moduleValue5.formatPrice(property2, CurrencyCodes.USD);
object.interval = (require(13694) /* metro dependency 13694: GuildRoleSubscriptionTypeUtils */).formatPlanInterval({interval: SubscriptionIntervalTypes.MONTH,
interval_count: 1});
r0 = Reflect.apply(formatToPlainString, intl, [CgmBaG, object]);
}
r22 = r0;
}
const object2 = {onPress: onPress, onLongPress: onLongPress_124084};
const items2 = [property3 != null && ((Component) => <Component style={styles.tierIcon} resizeMode="cover" source={{uri: property3}} />)(importDefault(5475) /* metro dependency 5475: FastImage */)];
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text variant="text-md/semibold" color="mobile-text-heading-primary">{property}</Text>;
r20 = r20 && <DraftBadge />;
r11 = r11 && <ArchivedBadge />;
items2[1] = <View style={styles.tierColumn}>{text}<View style={styles.detailsRow}>{r20}{r11}{value8 && <UnsavedBadge />}<Text style={styles.tierPrice} variant="text-sm/medium" color="interactive-text-default">{r22}</Text></View></View>;
const PencilIcon = (require(9646) /* metro dependency 9646: PencilIcon */).PencilIcon;
items2[2] = <PencilIcon />;
return (
<View>
<Row_124081 {...object2}>
{items2}
</Row_124081>
</View>
);
}
function GuildSettingsRoleSubscriptionsTiersInner({guildId}) { // fn#124085, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:3973, offset: 0x025a7a66, size: 1110 bytes, params: 2, frame: 36
var r8;
var FormHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
var string;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var items3;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
var object;
var items2;
const styles = useStyles();
const bottom = (importDefault(1585) /* metro dependency 1585: useSafeAreaInsetsNative */)().bottom;
const value3 = (importDefault(12672) /* metro dependency 12672: FormStyles */)();
const value4 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const value5 = (require(13676) /* metro dependency 13676: GroupListingsFetchContext */).useGroupListingsFetchContext();
const value6 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const value7 = (require(12667) /* metro dependency 12667: GuildRoleSubscriptionsExperimentUtils */).useGuildEligibleForTierTemplates(guildId);
const value8 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useGroupListingsForGuild(guildId);
const property = value8[0];
const property2 = value8.map(function(a0) {
return a0.id;
})[0];
const env0_4 = property2;
const guildRoleSubscriptionListingEditStateUtilsModule = importAll(13690) /* metro dependency 13690: GuildRoleSubscriptionListingEditStateUtils */;
const useEditStateIds = guildRoleSubscriptionListingEditStateUtilsModule.useEditStateIds;
const editStateIds = Reflect.apply(useEditStateIds, guildRoleSubscriptionListingEditStateUtilsModule, [property2,
guildId, {includeSoftDeleted: true}]).editStateIds;
const env0_5 = editStateIds;
const [property3, env0_7] = env0_4(env0_5.useState({}), 2);
const value11 = env0_5.useMemo(_fun124087, [editStateIds, property3]);
env0_5.useLayoutEffect(_fun124089);
const value12 = env0_5.useCallback(_fun124091, [value7, guildId, value4, property?.id]);
env0_5.useEffect(_fun124094,
[(require(632) /* metro dependency 632: useStateFromStores */).useStateFromStores([GuildSettingsStore],
function() {
return GuildSettingsStore.getProps().subsection;
}), value12]);
if (value5) {
r8 = value11?.map(_fun124099);
var scrollViewBindingProps = {style: styles.container};
var viewBindingProps = {style: {paddingBottom: bottom}};
FormHeader = importDefault(8127) /* metro dependency 8127: FormHeader */;
string = intl.string;
items3 = [<FormHeader style={value3.header}>{Reflect.apply(string, intl, [t['7iBIoO']])}</FormHeader>];
items3[1] = <Text style={styles.tierManagementDescription} variant="text-sm/medium" color="text-default">{intl.format(t.nHRSvM,
{maxTiers: MAX_SUBSCRIPTION_TIERS})}</Text>;
items3[2] = r8;
object = {onPress: value12, disabled: value6};
items2 = [((Component) => <Component source={importDefault(16110) /* metro dependency 16110 */} />)(importDefault(5475) /* metro dependency 5475: FastImage */)];
string = intl.string;
items2[1] = <Text style={styles.createTierLabel} variant="text-md/medium" color="mobile-text-heading-primary">{Reflect.apply(string,
intl, [t.PiFnny])}</Text>;
items3[3] = <Row_124081 {...object}>{items2}</Row_124081>;
return (
<ScrollView {...scrollViewBindingProps}>
<View {...viewBindingProps}>
{items3}
</View>
</ScrollView>
);
}
return (
<View style={styles.spinner}>
<ActivityIndicator />
</View>
);
}
function GuildSettingsRoleSubscriptionsTiers({guildId}) { // fn#124101, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:6259, offset: 0x025a821e, size: 75 bytes, params: 2, frame: 17
return ((Component) => <Component guildId={guildId}><GuildSettingsRoleSubscriptionsTiersInner guildId={guildId} /></Component>)(importDefault(16071) /* metro dependency 16071: GuildSettingsRoleSubscriptionContainer */);
}
function EditListingButtonOnLongPress() { // fn#124084, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:3357, owner: EditListingButton.onLongPress, offset: 0x025a79f7, size: 111 bytes, params: 1, frame: 19
const editStateIdBinding = editStateId;
const guildIdBinding = guildId;
const groupListingIdBinding = groupListingId;
let value = environment.__proto__;
const defaultImport = importDefault(dependencyMap[12]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[14]);
value = value(dependencyMap[13], dependencyMap.paths);
Reflect.apply(openLazy, defaultImport, [value, 'TierArchiveOrDelete', {editStateId: editStateIdBinding,
guildId: guildIdBinding, groupListingId: groupListingIdBinding}]);
}
function _fun124087() { // fn#124087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4434, offset: 0x025a7ebc, size: 64 bytes, params: 1, frame: 12
return (require(22) /* metro dependency 22 */).uniq(editStateIds.map(_fun124088));
}
function _fun124089() { // fn#124089, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4543, offset: 0x025a7f15, size: 38 bytes, params: 1, frame: 12
const binding = env0_1;
binding.setOptions({headerTitle: headerTitle_124090});
}
function _fun124091() { // fn#124091, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4732, offset: 0x025a7fcc, size: 170 bytes, params: 1, frame: 18
var value4;
var moduleValue2;
if (env0_2) {
value4 = undefined;
moduleValue2 = importAll(16075) /* metro dependency 16075: GuildRoleSettingsActionCreators */;
moduleValue2.pushTierTemplateSelectionScene(env0_1, {guildId: guildId,
groupListingId: env0_3 == null ? value4 : env0_3.id});
} else {
(importAll(16076) /* metro dependency 16076: GuildRoleSubscriptionsActionCreatorExtrasNative */).openTierCreationModal({guildId: guildId,
groupListingId: env0_3?.id, onAfterTierCreation: onAfterTierCreation});
}
}
function _fun124094() { // fn#124094, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5085, offset: 0x025a80b2, size: 38 bytes, params: 1, frame: 10
const subsectionBinding = subsection;
const ROLE_SUBSCRIPTION_TIER_TEMPLATE = GuildSettingsSubsections.ROLE_SUBSCRIPTION_TIER_TEMPLATE;
if (subsectionBinding === ROLE_SUBSCRIPTION_TIER_TEMPLATE) {
env0_8();
}
}
function handleEditListing(a0) { // fn#124095, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5214, owner: GuildSettingsRoleSubscriptionsTiersInner.handleEditListing, offset: 0x025a80d8, size: 154 bytes, params: 2, frame: 19
var environment;
const env0_0 = a0;
let value = environment.__proto__;
const guild = GuildStore.getGuild(guildId);
const value4 = undefined;
(importDefault(44) /* metro dependency 44 */)(guild != null, 'guild must not be null');
value = importAll(16075) /* metro dependency 16075: GuildRoleSettingsActionCreators */;
value.pushTierEditScene(env0_1, {groupListingId: env0_3 == null ? value4 : env0_3.id, initialEditStateId: a0,
onBeforeDispatchNewListing: onBeforeDispatchNewListing});
return value4;
}
function _fun124099(a0) { // fn#124099, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5466, offset: 0x025a81d9, size: 69 bytes, params: 2, frame: 17
const env0_0 = a0;
return (
<EditListingButton
editStateId={a0}
guildId={guildId}
groupListingId={env0_4}
onPress={onPress_124100}
key={a0}
/>
);
}
function _fun124088(a0) { // fn#124088, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4452, offset: 0x025a7efc, size: 25 bytes, params: 2, frame: 3
const value = a0;
return env1_6[value] ?? value;
}
function headerTitle_124090() { // fn#124090, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4574, offset: 0x025a7f3b, size: 145 bytes, params: 1, frame: 19
const NavigatorHeader = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).NavigatorHeader;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<NavigatorHeader
title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.pXbGYc)}
subtitle={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['KzCF/6'])}
/>
);
}
function onAfterTierCreation() { // fn#124092, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:4926, offset: 0x025a8076, size: 35 bytes, params: 1, frame: 11
const binding = env1_1;
const navigate = binding.navigate;
const ROLE_SUBSCRIPTIONS_TIERS = GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIERS;
Reflect.apply(navigate, binding, [ROLE_SUBSCRIPTIONS_TIERS]);
}
function onBeforeDispatchNewListing({id}) { // fn#124096, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5394, owner: GuildSettingsRoleSubscriptionsTiersInner.handleEditListing.onBeforeDispatchNewListing, offset: 0x025a8172, size: 34 bytes, params: 2, frame: 13
_fun124097(id, env0_0);
}
function _fun124097(a0, a1) { // fn#124097, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5398, offset: 0x025a8194, size: 39 bytes, params: 3, frame: 11
const env0_0 = a0;
const env0_1 = a1;
env2_7(_fun124098);
}
function _fun124098(a0) { // fn#124098, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16280:5409, offset: 0x025a81bb, size: 30 bytes, params: 2, frame: 12
const object2 = {};
copyDataProperties(object2, a0, undefined);
object2[require] = env0_0;
return object2;
}
@@ -0,0 +1,79 @@
/* Metro module 16015; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsEmpty.tsx; dependencies: [31, 1867, 661, 4238, 33, 1484, 16016, 16017, 16018, 566, 2] */
function _fun123808(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123808, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16223:6, offset: 0x0259c374, size: 219 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const constantsModule = require(661) /* metro dependency 661: Constants */;
const env0_4 = constantsModule.GuildFeatures;
const env0_5 = constantsModule.GuildSettingsSections;
const env0_6 = (require(4238) /* metro dependency 4238: ApplicationConstants */).ApplicationTypes;
const env0_7 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsEmpty.tsx');
exports.default = GuildSettingsRoleSubscriptionsEmpty;
}
function GuildSettingsRoleSubscriptionsEmptyContent({guild}) { // fn#123809, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16223:209, offset: 0x0259c44f, size: 281 bytes, params: 2, frame: 18
var r0;
var features;
var value4;
var value;
const value2 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const defaultImport = importDefault(16016) /* metro dependency 16016: useGuildApplication */;
const id = guild.id;
const GUILD_ROLE_SUBSCRIPTIONS = ApplicationTypes.GUILD_ROLE_SUBSCRIPTIONS;
const value3 = defaultImport(id, GUILD_ROLE_SUBSCRIPTIONS);
const application = value3.application;
if (value3.loading) {
value = importDefault(16017) /* metro dependency 16017: Placeholder */;
value = ((Component) => <Component />)(value);
r0 = value;
} else {
features = guild.features;
if (features.has(GuildFeatures.CREATOR_MONETIZABLE)) {
value4 = null;
if (value4 == application) {
value2.replace(GuildSettingsSections.ROLE_SUBSCRIPTIONS_ENABLE_MONETIZATION);
r0 = value4;
} else {
value2.replace(GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIERS);
r0 = value4;
}
} else {
features = guild.features;
if (features.has(GuildFeatures.CREATOR_MONETIZABLE_PROVISIONAL)) {
value4 = null;
if (value4 == application) {
value2.replace(GuildSettingsSections.ROLE_SUBSCRIPTIONS_ENABLE_MONETIZATION);
r0 = value4;
} else {
value2.replace(GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIERS);
r0 = value4;
}
} else {
value = importDefault(16018) /* metro dependency 16018: GuildSettingsRoleSubscriptionWelcomeView */;
value = ((Component) => <Component guild={guild} />)(value);
r0 = value;
}
}
}
return r0;
}
function GuildSettingsRoleSubscriptionsEmpty({guildId}) { // fn#123810, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16223:746, offset: 0x0259c568, size: 131 bytes, params: 2, frame: 16
var r0;
var value;
const guild = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], function() {
return GuildStore.getGuild(guildId);
});
if (guild == null) {
value = importDefault(16017) /* metro dependency 16017: Placeholder */;
value = ((Component) => <Component />)(value);
r0 = value;
} else {
r0 = <GuildSettingsRoleSubscriptionsEmptyContent guild={guild} />;
}
return r0;
}
@@ -0,0 +1,34 @@
/* Metro module 16055; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsEnableMonetization.tsx; dependencies: [31, 1867, 33, 566, 16017, 14961, 1244, 2] */
function _fun123985(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123985, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16263:6, offset: 0x025a3741, size: 154 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const env0_4 = (require(33) /* metro dependency 33 */).jsx;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsEnableMonetization.tsx');
exports.default = GuildSubscriptionEnableMonetization;
}
function GuildSubscriptionEnableMonetization({guildId}) { // fn#123986, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16263:279, offset: 0x025a37db, size: 260 bytes, params: 2, frame: 20
var r0;
var UnavailableNotice;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const t = (require(1244) /* metro dependency 1244: indexNative */).t;
var value;
const fluxModule = require(566) /* metro dependency 566: flux */;
const useStateFromStores = fluxModule.useStateFromStores;
const items = [GuildStore];
if (Reflect.apply(useStateFromStores, fluxModule, [items, function() {
return GuildStore.getGuild(guildId);
}]) == null) {
value = importDefault(16017) /* metro dependency 16017: Placeholder */;
value = ((Component) => <Component />)(value);
r0 = value;
} else {
UnavailableNotice = importDefault(14961) /* metro dependency 14961: UnavailableNotice */;
r0 = <UnavailableNotice brightTitle title={intl.string(t.KeeWp0)} description={intl.string(t['tJLG+L'])} />;
}
return r0;
}
@@ -0,0 +1,149 @@
/* Metro module 16056; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsGroupEdit.tsx; dependencies: [5, 57, 31, 27, 4238, 33, 1484, 13675, 16057, 16016, 5463, 16058, 22, 5282, 5277, 1244, 3856, 697, 16060, 16065, 16071, 2] */
function _fun123988(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#123988, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:6, offset: 0x025a38df, size: 242 bytes, params: 8, frame: 20
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_4 = importDefault(5) /* metro dependency 5 */;
const env0_5 = importDefault(57) /* metro dependency 57 */;
const env0_6 = importAll(31) /* metro dependency 31 */;
const env0_7 = (require(27) /* metro dependency 27 */).ScrollView;
const env0_8 = (require(4238) /* metro dependency 4238: ApplicationConstants */).ApplicationTypes;
const value = require(33) /* metro dependency 33 */;
const env0_9 = value.jsx;
const env0_10 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsGroupEdit.tsx');
exports.default = GuildSettingsRoleSubscriptionsGroupEdit;
}
function GuildSettingsRoleSubscriptionsGroupEditInner({guildId}) { // fn#123989, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:201, offset: 0x025a39d1, size: 907 bytes, params: 2, frame: 34
var r1;
var r18;
let env0_6 = undefined;
const value3 = (require(1484) /* metro dependency 1484: useNavigationNative */).useNavigation();
const value4 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionsSettings(guildId);
const isFullServerGating = (importDefault(16057) /* metro dependency 16057: useRoleSubscriptionFormat */)(guildId).isFullServerGating;
const defaultImport = importDefault(16016) /* metro dependency 16016: useGuildApplication */;
const GUILD_ROLE_SUBSCRIPTIONS = ApplicationTypes.GUILD_ROLE_SUBSCRIPTIONS;
const application = defaultImport(guildId, GUILD_ROLE_SUBSCRIPTIONS).application;
let binding = env0_6;
let useState = binding.useState;
const value7 = env0_5(Reflect.apply(useState, binding, [null]), 2);
const property = value7[0];
const env0_4 = property;
const property2 = value7[1];
var env0_5 = property2;
binding = env0_6;
useState = binding.useState;
const value9 = env0_5(Reflect.apply(useState, binding, [value4?.description ?? undefined]), 2);
const property3 = value9[0];
env0_6 = property3;
const property4 = value9[1];
const [property5, property6] = env0_5(env0_6.useState(isFullServerGating), 2);
const {loading, updateSubscriptionsSettings,
error} = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useUpdateSubscriptionsSettings();
const insets = (importDefault(5463) /* metro dependency 5463: useSafeAreaInsetsKeyboardAwareNative */)({}).insets;
const value13 = property != null;
if (value13) {
r18 = value13;
} else {
r1 = property3 != null && property3 !== value4?.description;
r1 = r1 && property3.length !== 0;
r18 = r1;
}
r18 = !r18 ? isFullServerGating !== property5 : r18;
const r13 = property ?? (value4?.cover_image_asset != null && application != null ? (importAll(16058) /* metro dependency 16058: PreviewableListingImageUtil */).getSource({application_id: application.id,
image_asset: value4.cover_image_asset}) : null);
env0_6.useLayoutEffect(_fun123992, [value3, r18, loading, env0_6.useCallback(env0_4(_fun123991), [property3,
guildId, updateSubscriptionsSettings, value4, property, property5, isFullServerGating])]);
env0_6.useEffect(_fun123996, [error]);
const object = {};
const bottom = insets.bottom;
const PX_16 = (importDefault(697) /* metro dependency 697: native */).space.PX_16;
object.paddingBottom = bottom + PX_16;
const value21 = ((Component) => <Component isFullServerGating={property5} onChange={property6} />)(importDefault(16060) /* metro dependency 16060: FormGuildGatingModeSelector */);
const Content = (require(16065) /* metro dependency 16065: GuildRoleSubscriptionGroupDetailsModal */).Content;
return (
<ScrollView contentContainerStyle={object}>
{value21}
<Content
cover={r13}
setCover={property2}
description={property3 ?? value4?.description ?? ''}
setDescription={property4}
/>
</ScrollView>
);
}
function GuildSettingsRoleSubscriptionsGroupEdit({guildId}) { // fn#123997, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:1932, offset: 0x025a3f9e, size: 75 bytes, params: 2, frame: 17
return ((Component) => <Component guildId={guildId}><GuildSettingsRoleSubscriptionsGroupEditInner guildId={guildId} /></Component>)(importDefault(16071) /* metro dependency 16071: GuildSettingsRoleSubscriptionContainer */);
}
function* _fun123991() { // fn#123991, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:947, offset: 0x025a3d67, size: 219 bytes, params: 1, frame: 17
if (true) {
var object2 = {};
value = environment.__proto__;
if (env1_6 != null && env1_6 !== importAll?.description && env1_6.length !== 0) {
object2.description = env1_6;
}
if (env1_4 != null) {
object2.cover_image = env1_4.uri;
}
if (dependencyMap !== ScrollView) {
object2.full_server_gate = ScrollView;
}
var value8 = env2_1(env2_3[12]);
if (!value8.isEmpty(object2)) {
yield ((Component) => <Component {...object2} />)(require);
if (false) {
return undefined;
}
env1_5(null);
}
}
}
function _fun123992() { // fn#123992, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:1196, offset: 0x025a3e42, size: 70 bytes, params: 1, frame: 14
env0_1.setOptions({headerRight: loading ? _fun123993 : env0_11 ? _fun123994 : function() {
return null;
}});
}
function _fun123996() { // fn#123996, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:1408, offset: 0x025a3f20, size: 126 bytes, params: 1, frame: 17
var r0;
var value2;
var moduleValue;
var presentError;
var intl;
var anyErrorMessage;
if (error != null) {
value2 = environment.__proto__;
moduleValue = require(3856) /* metro dependency 3856: ToastUtils */;
presentError = moduleValue.presentError;
anyErrorMessage = error.getAnyErrorMessage();
if (anyErrorMessage != null) {
r0 = anyErrorMessage;
} else {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r0 = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.ZUEGFn);
}
Reflect.apply(presentError, moduleValue, [r0]);
}
}
function _fun123993() { // fn#123993, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:1229, offset: 0x025a3e88, size: 45 bytes, params: 1, frame: 13
const HeaderSubmittingIndicator = (require(5282) /* metro dependency 5282: NavigatorHeaderNative */).HeaderSubmittingIndicator;
return <HeaderSubmittingIndicator />;
}
function _fun123994() { // fn#123994, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16264:1276, offset: 0x025a3eb5, size: 107 bytes, params: 1, frame: 18
const HeaderActionButton = (require(5277) /* metro dependency 5277: HeaderActionButtonNative */).HeaderActionButton;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<HeaderActionButton
text={intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+'])}
onPress={env1_12}
/>
);
}
@@ -0,0 +1,24 @@
/* Metro module 16115; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsPayments.tsx; dependencies: [31, 33, 14961, 1244, 2] */
function _fun124402(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124402, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16323:6, offset: 0x025b508e, size: 149 bytes, params: 8, frame: 18
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = importAll(31) /* metro dependency 31 */;
const env0_3 = (require(33) /* metro dependency 33 */).jsx;
value = value.forwardRef(_fun124403);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsPayments.tsx');
exports.default = value;
}
function _fun124403() { // fn#124403, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16323:136, offset: 0x025b5123, size: 153 bytes, params: 1, frame: 19
const UnavailableNotice = importDefault(14961) /* metro dependency 14961: UnavailableNotice */;
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
return (
<UnavailableNotice
title={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.qAMb9K)}
description={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.pRuzXJ)}
brightTitle
/>
);
}
@@ -0,0 +1,71 @@
/* Metro module 15867; source: modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsSection.tsx; dependencies: [31, 1422, 1878, 661, 33, 566, 6231, 1244, 6238, 15868, 15869, 15870, 15871, 6850, 2] */
function _fun122100(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#122100, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16075:6, offset: 0x02559e47, size: 228 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const env0_3 = (require(1422) /* metro dependency 1422: GuildRecord */).isGuildOwner;
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
let value = require(661) /* metro dependency 661: Constants */;
const env0_5 = value.GuildFeatures;
const env0_6 = value.GuildSettingsSections;
value = require(33) /* metro dependency 33 */;
const env0_7 = value.jsx;
const env0_8 = value.jsxs;
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/GuildSettingsRoleSubscriptionsSection.tsx');
exports.default = GuildSettingsRoleSubscriptionsSection;
}
function HasCreatedListingsSection({guild, pushScreen}) { // fn#122101, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16075:218, offset: 0x02559f2b, size: 830 bytes, params: 2, frame: 30
var object2;
const value2 = (require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], function() {
return isGuildOwner(guild, UserStore.getCurrentUser());
});
const TableRowGroup = (require(6231) /* metro dependency 6231: TableRowGroupNative */).TableRowGroup;
object2 = {};
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
let string = intl.string;
object2.title = Reflect.apply(string, intl, [(require(1244) /* metro dependency 1244: indexNative */).t['KzCF/6']]);
object2.hasIcons = true;
const TableRow = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
const tableRowProps = {label: intl.string((require(1244) /* metro dependency 1244: indexNative */).t['/CfKoD']),
arrow: true};
const TableRow2 = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
let Icon = TableRow2.Icon;
tableRowProps.icon = <Icon source={importDefault(15868) /* metro dependency 15868 */} />;
tableRowProps.onPress = function() {
return pushScreen(GuildSettingsSections.ROLE_SUBSCRIPTIONS_BASIC);
};
const items2 = [<TableRow {...tableRowProps} key="guild-role-subscriptions-basic" />];
string = intl.string;
const pXbGYc = (require(1244) /* metro dependency 1244: indexNative */).t.pXbGYc;
const TableRow3 = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
Icon = TableRow3.Icon;
items2[1] = <TableRow label={Reflect.apply(string, intl,
[pXbGYc])} arrow icon={<Icon source={importDefault(15869) /* metro dependency 15869 */} />} onPress={function() {
return pushScreen(GuildSettingsSections.ROLE_SUBSCRIPTIONS_TIERS);
}} key="guild-role-subscriptions-tiers" />;
items2[2] = value2 && <TableRow label={intl.string((require(1244) /* metro dependency 1244: indexNative */).t.p2Rsdl)} arrow icon={((Icon) => <Icon source={importDefault(15870) /* metro dependency 15870 */} />)((require(6238) /* metro dependency 6238: TableRowNative */).TableRow.Icon)} onPress={function() {
var pushScreenBinding = pushScreen;
var ROLE_SUBSCRIPTIONS_PAYMENTS = GuildSettingsSections.ROLE_SUBSCRIPTIONS_PAYMENTS;
return pushScreenBinding(ROLE_SUBSCRIPTIONS_PAYMENTS, {guildId: guild.id});
}} key="guild-role-subscriptions-payments" />;
string = intl.string;
const C5Dbwn = (require(1244) /* metro dependency 1244: indexNative */).t.C5Dbwn;
const TableRow5 = (require(6238) /* metro dependency 6238: TableRowNative */).TableRow;
Icon = TableRow5.Icon;
items2[3] = <TableRow label={Reflect.apply(string, intl,
[C5Dbwn])} arrow icon={<Icon source={importDefault(15871) /* metro dependency 15871 */} />} onPress={function() {
return pushScreen(GuildSettingsSections.ROLE_SUBSCRIPTIONS_EMOJIS);
}} key="guild-role-subscriptions-emojis" />;
return (
<TableRowGroup {...object2}>
{items2}
</TableRowGroup>
);
}
function GuildSettingsRoleSubscriptionsSection({guild, pushScreen}) { // fn#122107, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16075:1427, offset: 0x0255a312, size: 113 bytes, params: 2, frame: 18
return (require(6850) /* metro dependency 6850: GuildRoleSubscriptionSettingUtils */).useCanSeeGuildRoleSubscriptionSettings(guild) && guild.features.has(GuildFeatures.ROLE_SUBSCRIPTIONS_ENABLED) ? <HasCreatedListingsSection pushScreen={pushScreen} guild={guild} /> : null;
}
@@ -0,0 +1,107 @@
/* Metro module 16116; source: modules/guild_role_subscriptions/native/guild_settings/emojis/GuildSettingsRoleSubscriptionEmojis.tsx; dependencies: [31, 1867, 33, 22, 6545, 15903, 16117, 1244, 16061, 566, 4080, 16118, 1962, 16071, 2] */
function _fun124404(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124404, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:6, offset: 0x025b51bc, size: 199 bytes, params: 8, frame: 19
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
importAll(31) /* metro dependency 31 */;
const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */;
const env0_4 = (require(33) /* metro dependency 33 */).jsx;
const env0_5 = (importDefault(22) /* metro dependency 22 */).memoize(_fun124411);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/emojis/GuildSettingsRoleSubscriptionEmojis.tsx');
exports.default = GuildSettingsRoleSubscriptionEmojis;
}
function GuildSettingsRoleSubscriptionEmojisInner({guildId}) { // fn#124405, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:395, offset: 0x025b5283, size: 260 bytes, params: 2, frame: 23
let value2 = (require(16061) /* metro dependency 16061: RoleSubscriptionSettingsDisabledContext */).useRoleSubscriptionSettingsDisabled();
const guild = (require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], function() {
return GuildStore.getGuild(guildId);
});
if (guild == null) {
return null;
}
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const formatToPlainString = intl.formatToPlainString;
const H9Jxp6 = (require(1244) /* metro dependency 1244: indexNative */).t.H9Jxp6;
const value3 = Reflect.apply(formatToPlainString, intl, [H9Jxp6,
{maxSlots: (importDefault(16117) /* metro dependency 16117: getMaxRoleSubscriptionEmojiSlots */)(guild)}]);
const ManageEmojisModal = (require(15903) /* metro dependency 15903: GuildSettingsModalEmoji */).ManageEmojisModal;
return (
<ManageEmojisModal
guild={guild}
headerDescription={value3}
computeEmojiItems={env0_5}
onSelectRolesForEmoji={function(a0) {
var env0_0 = a0;
var Promise = global.Promise;
var value = Object.create(Promise.prototype, {constructor: {value: Promise}});
var value2 = new Promise(_fun124408);
return value2 instanceof Object ? value2 : value;
}}
disabled={value2}
/>
);
}
function _fun124411(a0, a1) { // fn#124411, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:147, offset: 0x025b54e9, size: 218 bytes, params: 3, frame: 20
const env0_0 = a1;
let value = a0.filter(_fun124412);
if (value.length === 0) {
return [];
}
value = value.map(require(dependencyMap[5]).computeEmojiItem);
value = value.reverse();
const value3 = importDefault(dependencyMap[6])(a1);
const moduleValue = require(dependencyMap[5]);
const computeSectionItem = moduleValue.computeSectionItem;
const intl = require(dependencyMap[7]).intl;
const items2 = [Reflect.apply(computeSectionItem, moduleValue, [intl.string(require(dependencyMap[7]).t.sMOuuS),
value.length, value3])];
arraySpread(items2, value, 1, dependencyMap);
return items2;
}
function GuildSettingsRoleSubscriptionEmojis({guildId}) { // fn#124413, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:1175, offset: 0x025b55f9, size: 75 bytes, params: 2, frame: 17
return ((Component) => <Component guildId={guildId}><GuildSettingsRoleSubscriptionEmojisInner guildId={guildId} /></Component>)(importDefault(16071) /* metro dependency 16071: GuildSettingsRoleSubscriptionContainer */);
}
function onSelectRolesForEmoji(a0) { // fn#124407, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:772, owner: GuildSettingsRoleSubscriptionEmojisInner.onSelectRolesForEmoji, offset: 0x025b5387, size: 46 bytes, params: 2, frame: 11
const env0_0 = a0;
const Promise = global.Promise;
const value = Object.create(Promise.prototype, {constructor: {value: Promise}});
const promise = new Promise(_fun124408);
return promise instanceof Object ? promise : value;
}
function _fun124412(a0) { // fn#124412, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:171, offset: 0x025b55c3, size: 54 bytes, params: 2, frame: 13
let value = environment.__proto__;
value = require(6545) /* metro dependency 6545: RoleSubscriptionEmojiUtils */;
return value.isRoleSubscriptionEmoji(a0, require.id);
}
function _fun124408(a0, a1) { // fn#124408, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:788, offset: 0x025b53b5, size: 173 bytes, params: 3, frame: 19
var environment;
const env0_0 = a0;
const env0_1 = a1;
let value = environment.__proto__.__proto__;
const defaultImport = importDefault(dependencyMap[10]);
const openLazy = defaultImport.openLazy;
value = require(dependencyMap[12]);
value = value(dependencyMap[11], dependencyMap.paths);
const guildBinding = guild;
Reflect.apply(openLazy, defaultImport, [value, 'role-subscription-emoji-' + guildBinding.id,
{guildId: guildBinding.id, emoji: env0_0, onSave: onSave, onCancel: onCancel_124410}]);
}
function onSave(a0) { // fn#124409, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:901, offset: 0x025b5462, size: 52 bytes, params: 2, frame: 11
const value = environment.__proto__.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
env0_0(a0);
}
function onCancel_124410() { // fn#124410, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16324:947, offset: 0x025b5496, size: 83 bytes, params: 1, frame: 13
const value = environment.__proto__.__proto__.__proto__;
(importDefault(4080) /* metro dependency 4080: ActionSheetActionCreators */).hideActionSheet();
const Error = global.Error;
require(new Error('User cancelled'));
}
@@ -0,0 +1,160 @@
/* Metro module 16118; source: modules/guild_role_subscriptions/native/guild_settings/emojis/SelectEmojiRolesActionSheet.tsx; dependencies: [57, 31, 27, 1309, 482, 33, 4501, 697, 6597, 13675, 5278, 1305, 1244, 6758, 6805, 8140, 7972, 4573, 2] */
function _fun124416(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#124416, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:6, offset: 0x025b56a0, size: 645 bytes, params: 8, frame: 30
var object2;
const env0_0 = require;
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
const env0_3 = importDefault(57) /* metro dependency 57 */;
const env0_4 = importAll(31) /* metro dependency 31 */;
const env0_5 = (require(27) /* metro dependency 27 */).View;
const FORM_ROW_VERTICAL_PADDING = (require(1309) /* metro dependency 1309: FormConstants */).FORM_ROW_VERTICAL_PADDING;
const Fonts = (require(482) /* metro dependency 482: Constants */).Fonts;
let value = require(33) /* metro dependency 33 */;
const env0_6 = value.jsx;
const env0_7 = value.jsxs;
const env0_8 = value.Fragment;
const env0_9 = FORM_ROW_VERTICAL_PADDING + 22;
value = require(4501) /* metro dependency 4501: createStyles */;
const createStyles = value.createStyles;
object2 = {};
const BACKGROUND_BASE_LOW = (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BASE_LOW;
object2.list = {flex: 1, backgroundColor: BACKGROUND_BASE_LOW};
object2.label = {'flex': 1, 'flexDirection': 'row', 'alignItems': 'center'};
const object6 = {flexShrink: 1};
const textStyles = importDefault(6597) /* metro dependency 6597: TextStyles */;
const PRIMARY_MEDIUM = Fonts.PRIMARY_MEDIUM;
const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE;
copyDataProperties(object6, textStyles(PRIMARY_MEDIUM, INTERACTIVE_TEXT_ACTIVE, 16), undefined);
object2.roleName = object6;
const object7 = {'borderRadius': null, 'backgroundColor': null, 'marginLeft': 8, 'paddingHorizontal': 4,
'height': 16};
object7.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.round;
const RED_400 = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.RED_400;
object7.backgroundColor = RED_400;
object2.archivedBadge = object7;
const object9 = {};
const value3 = textStyles;
const PRIMARY_BOLD = Fonts.PRIMARY_BOLD;
const WHITE = (importDefault(697) /* metro dependency 697: native */).unsafe_rawColors.WHITE;
copyDataProperties(object9, value3(PRIMARY_BOLD, WHITE, 12, {uppercase: true}), 12);
object2.archivedBadgeText = object9;
const BORDER_SUBTLE = (importDefault(697) /* metro dependency 697: native */).colors.BORDER_SUBTLE;
object2.divider = {backgroundColor: BORDER_SUBTLE};
const object10 = {};
const value4 = textStyles;
const PRIMARY_SEMIBOLD = Fonts.PRIMARY_SEMIBOLD;
const CONTROL_BRAND_FOREGROUND = (importDefault(697) /* metro dependency 697: native */).colors.CONTROL_BRAND_FOREGROUND;
copyDataProperties(object10, value4(PRIMARY_SEMIBOLD, CONTROL_BRAND_FOREGROUND, 16), 12);
object2.saveButton = object10;
object2.saveButtonDisabled = {opacity: 0.3};
const env0_10 = Reflect.apply(createStyles, value, [object2]);
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_role_subscriptions/native/guild_settings/emojis/SelectEmojiRolesActionSheet.tsx');
exports.default = SelectEmojiRolesActionSheet;
}
function SelectEmojiRolesActionSheet({guildId, onSave, emoji, onCancel}) { // fn#124417, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:1020, offset: 0x025b5925, size: 688 bytes, params: 2, frame: 27
const intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
const styles = useStyles();
const [property, env0_4] = env0_3(env0_4Binding.useState(_fun124418), 2);
const value4 = property.size > 0;
const value5 = (require(13675) /* metro dependency 13675: GuildRoleSubscriptionsHooks */).useSubscriptionListingsForGuild(guildId,
{'includeSoftDeleted': true, 'sortDeletedListingsLast': true});
const PressableOpacity = (require(5278) /* metro dependency 5278: Pressables */).PressableOpacity;
let object2 = {onPress: onPress_124419};
const value6 = !value4;
object2.disabled = value6;
object2.accessibilityRole = 'button';
const LegacyText = (require(1305) /* metro dependency 1305: native */).LegacyText;
const pressableOpacity = <PressableOpacity {...object2}><LegacyText style={[styles.saveButton,
value4 ? value6 : styles.saveButtonDisabled]}>{emoji == null ? intl.string((require(1244) /* metro dependency 1244: indexNative */).t['3UB9ad']) : intl.string((require(1244) /* metro dependency 1244: indexNative */).t['R3BPH+'])}</LegacyText></PressableOpacity>;
const BottomSheetTitleHeader = (require(6758) /* metro dependency 6758: BottomSheetTitleHeaderNative */).BottomSheetTitleHeader;
object2 = {};
let string = intl.string;
const JPU0EF = (require(1244) /* metro dependency 1244: indexNative */).t.JPU0EF;
object2.title = Reflect.apply(string, intl, [JPU0EF]);
string = intl.string;
const MZusPv = (require(1244) /* metro dependency 1244: indexNative */).t.MZusPv;
object2.subtitle = Reflect.apply(string, intl, [MZusPv]);
object2.trailing = pressableOpacity;
const bottomSheetTitleHeader = <BottomSheetTitleHeader {...object2} />;
const ActionSheet = (require(6805) /* metro dependency 6805: ActionSheetNative */).ActionSheet;
return (
<ActionSheet
scrollable
header={bottomSheetTitleHeader}
startExpanded
onDismiss={onCancel}
>
{((Component) => <Component inActionSheet style={styles.list} itemSize={env0_9} sections={[value5.length]} renderItem={renderItem_124420} />)(importDefault(8140) /* metro dependency 8140: FastList */)}
</ActionSheet>
);
}
function _fun124418() { // fn#124418, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:1122, offset: 0x025b5bd5, size: 69 bytes, params: 1, frame: 13
const Set = global.Set;
const r0 = emoji?.roles ?? [];
const value = Object.create(Set.prototype, {constructor: {value: Set}});
const set = new Set(r0);
return set instanceof Object ? set : value;
}
function SelectEmojiRolesActionSheetOnPress() { // fn#124419, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:1359, owner: SelectEmojiRolesActionSheet.onPress, offset: 0x025b5c1a, size: 38 bytes, params: 1, frame: 12
const onSaveBinding = onSave;
const Array = global.Array;
onSaveBinding(Array.from(env0_3));
}
function SelectEmojiRolesActionSheetRenderItem(a0, a1) { // fn#124420, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:1927, owner: SelectEmojiRolesActionSheet.renderItem, offset: 0x025b5c40, size: 506 bytes, params: 3, frame: 36
var r16;
var object;
var intl;
let binding = env0_5;
const property = binding[a1];
const value2 = a1 === binding.length - 1;
const jsxRuntimeEnv1_8Binding = jsxRuntimeEnv1_8;
const FormRow = (require(7972) /* metro dependency 7972: native */).FormRow;
const object3 = {};
let stylesBinding = styles;
const label = stylesBinding.label;
const Text = (require(4573) /* metro dependency 4573: Text */).Text;
const text = <Text style={stylesBinding.roleName} lineClamp={1} variant="text-md/medium" color="interactive-text-active">{property.name}</Text>;
const archived = property.archived;
if (archived) {
object = {};
stylesBinding = styles;
object.style = stylesBinding.archivedBadge;
var textProps = {'style': null, 'variant': 'text-xs/bold', 'color': 'always-white',
style: stylesBinding.archivedBadgeText};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
r16 = <View {...object}><Text {...textProps}>{intl.string((require(1244) /* metro dependency 1244: indexNative */).t.HRtfn9)}</Text></View>;
} else {
r16 = archived;
}
object3.label = <View style={label}>{text}{r16}</View>;
object3.onPress = onPress_124421;
const FormRow2 = (require(7972) /* metro dependency 7972: native */).FormRow;
const Checkbox = FormRow2.Checkbox;
binding = env0_3;
object3.trailing = <Checkbox selected={binding.has(property.role_id)} />;
return (
<>
<FormRow {...object3} />
{!value2 && ((FormDivider) => <FormDivider style={styles.divider} />)((require(7972) /* metro dependency 7972: native */).FormDivider)}
</>
);
}
function renderItemOnPress_124421() { // fn#124421, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16326:2360, owner: SelectEmojiRolesActionSheet.renderItem.onPress, offset: 0x025b5e3a, size: 42 bytes, params: 1, frame: 11
const env0_0Binding = env0_0.role_id;
return env1_4(function(a0) {
var Set = global.Set;
var value2 = new Set(a0);
if (a0.has(role_id)) {
value2.delete(role_id);
} else {
value2.add(role_id);
}
return value2;
});
}
Loaded 100 of 16065 files, more files were not shown because too many files have changed in this diff. Show more